---
title: "Get job status"
method: GET
path: "/jobs/{jobId}"
tags: ["Jobs"]
---

# Get job status

`GET /jobs/{jobId}`

## Request

- Base URL: `https://api.markcopy.ai/api/v1`
- URL: `https://api.markcopy.ai/api/v1/jobs/{jobId}`
- Auth: API key in header `X-API-Key`

Check the processing status of a document upload job. Jobs are retained for 90 days.

## Path parameters

- `jobId` string, required

## Response `200`

Job details.

- Job
  - `jobId` string: Unique job ID (prefixed with `job_`).
  - `batchId` string, nullable: Batch ID if this job was part of a batch upload.
  - `type` string: The type of job.
  - `status` 'queued' | 'processing' | 'completed' | 'failed': Current processing status.
  - `input` object: The original input provided when creating the job.
    - `url` string
    - `text` string
    - `name` string
    - `tags` string[]
  - `result` object, nullable: Result details. Contains `documentId` on success, or `errorCode` and `errorMessage` on failure.
    - `documentId` string
    - `errorCode` string
    - `errorMessage` string
  - `createdAt` string, date-time
  - `updatedAt` string, date-time

## Other responses

- `404`: Job not found.

---

[API](https://skmtc.dev/markcopy/apis/mark-api.md) - [All operations](https://skmtc.dev/markcopy/apis/mark-api/llms.txt) - [OpenAPI document](https://skmtc.dev/markcopy/apis/mark-api/revisions/93323d1697ae?raw)
