Get Extraction
Retrieve a full extraction result by ID with GET /v1/extractions/:id — field values, per-field confidence, normalized numeric magnitudes, and metadata.
The Get Extraction endpoint, GET /v1/extractions/:id, retrieves the complete extraction result for a single document, including all extracted field values, per-field confidence scores, and processing metadata. This is the primary endpoint for consuming structured data produced by the extraction pipeline. The id is the document UUID — extractions are 1:1 with documents.
The response includes the source document summary, a data object with field values, and a confidence object with both an overall score (rounded to two decimals) and individual scores for each field. Fields that have been manually corrected appear in the locked_fields array with confidence 1.0. When the document was submitted with caller tags, the response also echoes batch_id and metadata — both are present only when they were set, so untagged documents serialize without the keys.
Numeric values additionally carry a normalization envelope in two parallel maps: normalized gives each numeric field's canonical base-unit magnitude, and units gives the detected reporting scale (units, thousands, millions, billions, trillions, lakhs, or crores), non-currency unit (currently percent), and ISO currency. A financial statement that prints 674,538 under an "(in thousands)" caption thus also reports normalized = 674538000, so you can aggregate and compare across documents without re-deriving each document's reporting scale. Only fields whose values are genuinely numeric appear in these maps; the raw data values are never modified, per-share amounts are never scaled, and percentages are a rate — never scaled.
Treat the confidence scores as your routing signal: a common integration auto-accepts fields above a threshold you choose and routes the rest to review or the [correction endpoints](correct-extraction). Note two derived values in the metadata: document.pages and processing.pages_processed are estimated from file size rather than counted, and processing.duration_ms sums the document's processing log.
/v1/extractions/:idcurl
curl -s https://api.talonic.com/v1/extractions/a1b2c3d4-e5f6-7890-abcd-ef1234567890 \
-H "Authorization: Bearer tlnc_your_api_key"Response
Response fields
Response
{
"id": "a1b2c3d4-e5f6-7890-abcd-ef1234567890",
"status": "complete",
"document": {
"id": "a1b2c3d4-e5f6-7890-abcd-ef1234567890",
"filename": "invoice-0847.pdf",
"pages": 2,
"type_detected": "invoice"
},
"data": {
"vendor_name": "Acme Corp",
"invoice_number": "INV-2026-0847",
"total_amount": 14250.00,
"vat_rate": 19,
"due_date": "2026-03-15"
},
"normalized": {
"total_amount": 14250,
"vat_rate": 19
},
"units": {
"total_amount": { "scale": "units", "unit": null, "currency": "EUR" },
"vat_rate": { "scale": "units", "unit": "percent", "currency": null }
},
"batch_id": "ERP-2026-07-14-001",
"metadata": { "source_system": "sap" },
"confidence": {
"overall": 0.94,
"fields": {
"vendor_name": 0.99,
"invoice_number": 0.98,
"total_amount": 0.96,
"vat_rate": 0.88,
"due_date": 0.91
}
},
"locked_fields": [],
"processing": {
"duration_ms": 3420,
"pages_processed": 2,
"region": "eu-west"
},
"created_at": "2026-07-14T10:33:12.000Z",
"links": {
"self": "/v1/extractions/a1b2c3d4-e5f6-7890-abcd-ef1234567890",
"data": "/v1/extractions/a1b2c3d4-e5f6-7890-abcd-ef1234567890/data",
"document": "/v1/documents/a1b2c3d4-e5f6-7890-abcd-ef1234567890",
"dashboard": "https://app.talonic.com/documents/a1b2c3d4-e5f6-7890-abcd-ef1234567890"
}
}normalized, display with data: normalized magnitudes are scale-corrected into base units (a value under an "in millions" header is multiplied out), while data preserves exactly what the document prints. Summing raw data values across documents with different reporting scales silently mixes units.Errors
Error responses