Retrieve Job
GET /api/v1/jobs/{id}/
Retrieve an extraction job by ID. When the job has completed, the response includes the full extraction result with canonical payroll output.
Authentication
Requires an API key with jobs:read scope. Pass via the X-API-Key header.
Path Parameters
| Parameter | Type | Description |
|---|---|---|
id | string (UUID) | The extraction job ID. |
Status Lifecycle
Extraction jobs progress through the following statuses:
pending → processing → completed
↘ failed| Status | Description |
|---|---|
pending | Job has been created and is queued for processing. |
processing | Job is actively being processed by the extraction pipeline. |
completed | Extraction finished successfully. The result field contains the output. |
failed | Extraction encountered an error. Use Resubmit Job to retry. |
Poll this endpoint to track job progress. The result field is only present when status is completed.
Response
Status: 200 OK
Pending / Processing
{
"id": "b2c3d4e5-f6a7-8901-bcde-f12345678901",
"status": "processing",
"document_id": "a1b2c3d4-e5f6-7890-abcd-ef1234567890",
"result": null,
"created_at": "2026-03-16T12:00:00Z",
"updated_at": "2026-03-16T12:01:00Z"
}Completed
{
"id": "b2c3d4e5-f6a7-8901-bcde-f12345678901",
"status": "completed",
"document_id": "a1b2c3d4-e5f6-7890-abcd-ef1234567890",
"result": {
"id": "c3d4e5f6-a7b8-9012-cdef-123456789012",
"confidence_score": 0.97,
"canonical_output": {
"pay_period": {
"start": "2024-01-01",
"end": "2024-01-15"
},
"employees": [
{
"employee_id": "E001",
"name": "Jane Doe",
"gross_pay": 5000.00,
"net_pay": 3750.00,
"deductions": [],
"taxes": []
}
]
},
"created_at": "2024-01-16T10:00:00Z"
},
"created_at": "2024-01-16T09:55:00Z",
"updated_at": "2024-01-16T10:00:00Z"
}Response Fields
| Field | Type | Description |
|---|---|---|
id | string (UUID) | Unique identifier for the extraction job. |
status | string | Current job status. |
document_id | string (UUID) | The document being processed. |
result | object | null | Extraction result. Present only when status is completed. |
result.id | string (UUID) | Unique identifier for the extraction result. |
result.confidence_score | number | Model confidence score between 0 and 1. |
result.canonical_output | object | Normalized payroll data in the Parsify canonical schema. |
result.canonical_output.pay_period | object | Pay period with start and end dates. |
result.canonical_output.employees | array | List of employee payroll records. |
result.created_at | string (ISO 8601) | Timestamp when the result was generated. |
created_at | string (ISO 8601) | Timestamp when the job was created. |
updated_at | string (ISO 8601) | Timestamp when the job was last updated. |
Errors
| Status | Description |
|---|---|
401 | Missing or invalid API key. |
403 | API key does not have jobs:read scope. |
404 | Job not found in your organization. |
Code Examples
curl https://api.parsifyhq.com/api/v1/jobs/b2c3d4e5-f6a7-8901-bcde-f12345678901/ \
-H "X-API-Key: YOUR_API_KEY"