curl --request GET \
--url https://ndi-api.nace.ai/v1/jobs \
--header 'X-API-Key: <api-key>'{
"items": [
{
"created_at": "2023-11-07T05:31:56Z",
"job_id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"kind": "parse",
"status": "queued",
"deleted_at": "2023-11-07T05:31:56Z",
"effort": "<string>",
"error": {
"code": "invalid_request",
"message": "<string>",
"request_id": "<string>",
"retryable": true,
"detail": {}
},
"finished_at": "2023-11-07T05:31:56Z",
"force": true,
"idempotency_key": "<string>",
"name": "<string>",
"payload_expires_at": "2023-11-07T05:31:56Z",
"progress": {
"items_done": 0,
"items_failed": 0,
"items_total": 123,
"stage": "<string>",
"units_done": 0,
"units_total": 123
},
"project_id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"query": "<string>",
"query_scope": {
"type": "workspace"
},
"result": {
"document": {
"page_count": 123,
"blocks": [
{
"content": "<string>",
"id": "<string>",
"type": "<string>",
"confidence": 123,
"image_url": "<string>",
"location": {
"page": 2,
"kind": "page_region",
"polygons": [
[
[
123,
123
]
]
]
}
}
],
"chunks": [
{
"content": "<string>",
"id": "<string>",
"location": {
"page": 2,
"kind": "page_region",
"polygons": [
[
[
123,
123
]
]
]
}
}
],
"markdown": "<string>",
"ocr": {
"lines": [
{
"bbox": {
"height": 123,
"left": 123,
"original_page": 123,
"page": 123,
"top": 123,
"width": 123
},
"confidence": 123,
"text": "<string>",
"chunk_index": 123,
"rotation": 0
}
],
"words": [
{
"bbox": {
"height": 123,
"left": 123,
"original_page": 123,
"page": 123,
"top": 123,
"width": 123
},
"confidence": 123,
"text": "<string>",
"chunk_index": 123,
"rotation": 0
}
]
},
"spreadsheet": {
"sheets": [
{
"cell_map_url": "<string>",
"sheet_name": "<string>"
}
]
},
"text": "<string>"
},
"file_name": "<string>",
"lane": "<string>",
"ocr_applied": true,
"units": 123,
"converted_pdf_url": "<string>",
"result_type": "parse"
},
"result_state": "available",
"source": {
"upload_id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"type": "upload"
},
"started_at": "2023-11-07T05:31:56Z",
"units": 0,
"workspace_id": "3c90c3cc-0d44-4b50-8888-8dd25736052a"
}
],
"total_count": 123,
"next_cursor": "<string>"
}{
"error": {
"code": "invalid_request",
"detail": null,
"message": "Request body has extra fields that this operation does not accept.",
"request_id": "req-01j9k2n3p4q5r6s7t8v9",
"retryable": false
}
}{
"error": {
"code": "invalid_request",
"detail": null,
"message": "Request body has extra fields that this operation does not accept.",
"request_id": "req-01j9k2n3p4q5r6s7t8v9",
"retryable": false
}
}list_jobs
List jobs for the authenticated tenant, newest first. Cost class: fast.
workspace_id narrows to workspace-scoped jobs; omitting it returns
document-operation jobs too. kind is the idiomatic way to list all
ingestion runs without a dedicated resource.
Pagination is keyset on (created_at, id) — OFFSET would silently miss
or duplicate rows when new jobs arrive between pages.
curl --request GET \
--url https://ndi-api.nace.ai/v1/jobs \
--header 'X-API-Key: <api-key>'{
"items": [
{
"created_at": "2023-11-07T05:31:56Z",
"job_id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"kind": "parse",
"status": "queued",
"deleted_at": "2023-11-07T05:31:56Z",
"effort": "<string>",
"error": {
"code": "invalid_request",
"message": "<string>",
"request_id": "<string>",
"retryable": true,
"detail": {}
},
"finished_at": "2023-11-07T05:31:56Z",
"force": true,
"idempotency_key": "<string>",
"name": "<string>",
"payload_expires_at": "2023-11-07T05:31:56Z",
"progress": {
"items_done": 0,
"items_failed": 0,
"items_total": 123,
"stage": "<string>",
"units_done": 0,
"units_total": 123
},
"project_id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"query": "<string>",
"query_scope": {
"type": "workspace"
},
"result": {
"document": {
"page_count": 123,
"blocks": [
{
"content": "<string>",
"id": "<string>",
"type": "<string>",
"confidence": 123,
"image_url": "<string>",
"location": {
"page": 2,
"kind": "page_region",
"polygons": [
[
[
123,
123
]
]
]
}
}
],
"chunks": [
{
"content": "<string>",
"id": "<string>",
"location": {
"page": 2,
"kind": "page_region",
"polygons": [
[
[
123,
123
]
]
]
}
}
],
"markdown": "<string>",
"ocr": {
"lines": [
{
"bbox": {
"height": 123,
"left": 123,
"original_page": 123,
"page": 123,
"top": 123,
"width": 123
},
"confidence": 123,
"text": "<string>",
"chunk_index": 123,
"rotation": 0
}
],
"words": [
{
"bbox": {
"height": 123,
"left": 123,
"original_page": 123,
"page": 123,
"top": 123,
"width": 123
},
"confidence": 123,
"text": "<string>",
"chunk_index": 123,
"rotation": 0
}
]
},
"spreadsheet": {
"sheets": [
{
"cell_map_url": "<string>",
"sheet_name": "<string>"
}
]
},
"text": "<string>"
},
"file_name": "<string>",
"lane": "<string>",
"ocr_applied": true,
"units": 123,
"converted_pdf_url": "<string>",
"result_type": "parse"
},
"result_state": "available",
"source": {
"upload_id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"type": "upload"
},
"started_at": "2023-11-07T05:31:56Z",
"units": 0,
"workspace_id": "3c90c3cc-0d44-4b50-8888-8dd25736052a"
}
],
"total_count": 123,
"next_cursor": "<string>"
}{
"error": {
"code": "invalid_request",
"detail": null,
"message": "Request body has extra fields that this operation does not accept.",
"request_id": "req-01j9k2n3p4q5r6s7t8v9",
"retryable": false
}
}{
"error": {
"code": "invalid_request",
"detail": null,
"message": "Request body has extra fields that this operation does not accept.",
"request_id": "req-01j9k2n3p4q5r6s7t8v9",
"retryable": false
}
}Authorizations
Query Parameters
Restrict to workspace jobs. Omit to also include document-operation jobs.
Filter by job kind. Filtering by kind makes a separate 'ingestion runs' resource unnecessary.
What a job is doing. Open enum — a new member is additive.
parse, split, classify, categorize, extract, ground, ingestion, reconciliation, kg_build, file_upload, file_replace, upload_session_complete, file_delete, workspace_delete, intelligent_search, qa_file, qa_tables, filtered_search, je_testing, deep_search_v2 Filter by job status.
cancelled is a first-class terminal status, not a failed variant.
Conflating them makes error-rate metrics lie and forces every client to string-match an error code.
queued, running, succeeded, failed, cancelled Restrict to jobs created strictly after this timestamp (UTC).
Restrict to jobs sharing this caller-minted project id (the console's grouped runs).
Opaque cursor from a previous page's next_cursor. Omit for the first page.
Rows per page.
1 <= x <= 200