List Extractions
List extraction results across your workspace with GET /v1/extractions. Filter by document, status, or time range and page through results with cursors.
The List Extractions endpoint, GET /v1/extractions, returns the extraction results across your Talonic workspace. An extraction is the per-document result of the extraction process: the structured output produced from one document, its field values plus confidence scores. Extractions and documents are 1:1 — the extraction id is the document id, so id and document_id in each summary are the same UUID and you can pass either into the extraction or document reads. Re-extracting a document updates its extraction in place rather than creating a second one.
Use this endpoint to browse extraction results across your organization. Filter by document, status, or time range to find specific results; each extraction summary includes an overall confidence score and links to the full result and the source document. The list only contains documents that have produced extraction output — documents still in OCR that have no fields yet do not appear, which is why filtering by status=processing is not supported here (poll the document or the pipeline for in-flight state instead).
Pagination is cursor-based over (created_at, id): take pagination.next_cursor from one page and pass it as cursor on the next. Because it is a keyset cursor rather than an offset, pages stay consistent while new extractions arrive — you never see the same row twice mid-walk. pagination.total is computed over the whole filtered set before the cursor is applied, so it is stable across every page of the same query.
Visibility follows your Sources IAM rules: the list is filtered to the documents the API key's creator can see, and pagination.total counts only that visible set. A document hidden by an IAM rule is absent here and reads as 404 on the detail endpoints — indistinguishable from a document that does not exist.
created_at by default (pass order=asc for oldest-first). Use the after and before parameters to narrow results to a specific time window — both are exclusive comparisons./v1/extractionsQuery parameters
20desccurl
curl -s "https://api.talonic.com/v1/extractions?status=complete&limit=20" \
-H "Authorization: Bearer tlnc_your_api_key"Response
Response fields
Response
{
"data": [
{
"id": "a1b2c3d4-e5f6-7890-abcd-ef1234567890",
"status": "complete",
"document_id": "a1b2c3d4-e5f6-7890-abcd-ef1234567890",
"document_filename": "invoice-0847.pdf",
"confidence_overall": 0.94,
"created_at": "2026-07-14T10:33:12.000Z",
"links": {
"self": "/v1/extractions/a1b2c3d4-e5f6-7890-abcd-ef1234567890",
"document": "/v1/documents/a1b2c3d4-e5f6-7890-abcd-ef1234567890"
}
}
],
"pagination": {
"total": 89,
"limit": 20,
"has_more": true,
"next_cursor": "YTFiMmMzZDQtZTVmNi03ODkwLWFiY2QtZWYxMjM0NTY3ODkwfDIwMjYtMDctMTRUMTA6MzM6MTIuMDAwWg"
}
}curl — walk every page
CURSOR=""
while :; do
PAGE=$(curl -s "https://api.talonic.com/v1/extractions?limit=100&cursor=$CURSOR" \
-H "Authorization: Bearer tlnc_your_api_key")
echo "$PAGE" | jq -r '.data[] | [.id, .status, .confidence_overall] | @tsv'
CURSOR=$(echo "$PAGE" | jq -r '.pagination.next_cursor // empty')
[ -z "$CURSOR" ] && break
doneErrors
Error responses