Correct Fields
Fix wrong extraction values with PATCH /v1/extractions/:id/data. Send a map of field names to corrected values; each field is locked at confidence 1.0.
The Correct Fields endpoint, PATCH /v1/extractions/:id/data, submits corrections to specific fields in a completed extraction. The request body is a flat JSON object mapping field names to their corrected values. Corrected fields are locked at confidence 1.0 and will not be overwritten by future re-extractions, so use this to fix extraction errors programmatically.
Only the fields you include in the body change; all other extracted values remain untouched. A field name that does not exist on the extraction is added as a new locked field rather than rejected — useful for filling in a value the extraction missed entirely, but it also means a typo in a field name silently creates a new field instead of correcting the intended one. Match the keys exactly as they appear in the data object of [GET /v1/extractions/:id](get-extraction).
The response returns the full updated extraction, so you can verify the applied values, the recalculated confidence, and the updated locked_fields array in one round trip. Each correction is timestamped internally, and value types are preserved: send 14500.00 as a JSON number to keep the field numeric, since a quoted "14500.00" stores a string. This endpoint requires write scope; POST /v1/extractions/:id/correct is an [exact alias](correct-extraction) — same body, same behavior, same response.
Corrections propagate to every subsequent read: the [data endpoint](get-extraction-fields) and its CSV export return the corrected values, and the recalculated confidence.overall reflects the 1.0 scores of the locked fields. This makes the endpoint a good target for a human-in-the-loop review UI — read the extraction, present low-confidence fields for review, and PATCH the confirmed values back so downstream consumers always see the vetted data.
/v1/extractions/:id/dataRequest body
{
"vendor_name": "Acme Corporation Ltd.",
"total_amount": 14500.00
}Body parameters
curl
curl -s -X PATCH https://api.talonic.com/v1/extractions/a1b2c3d4-e5f6-7890-abcd-ef1234567890/data \
-H "Authorization: Bearer tlnc_your_api_key" \
-H "Content-Type: application/json" \
-d '{ "total_amount": 14500.00 }'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": 14500.00,
"due_date": "2026-03-15"
},
"confidence": {
"overall": 0.97,
"fields": {
"vendor_name": 0.99,
"invoice_number": 0.98,
"total_amount": 1.0,
"due_date": 0.91
}
},
"locked_fields": ["total_amount"],
"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"
}
}Errors
Error responses