Get Data Product Results
Retrieve the result rows of a data product as JSON. Each row maps schema field names to extracted values and links back to its source run and document.
Retrieve the result rows for a data product as JSON. The endpoint reads the stored results of every run listed in the product's run_ids and returns one row per processed document, newest first. Each row carries the run_id and document_id it came from plus a values map of schema field names to extracted values, so every data point is traceable to its source.
This is the programmatic read path for downstream integration: poll it after your runs complete, or fetch on demand when a consumer needs the current dataset. The response is a flat page — pass limit to bound the page size. For a complete snapshot of a large product in a single request, prefer the CSV export endpoints (links.export_plain and links.export_audit on the product), which stream the whole dataset as a file.
Rows are visibility-filtered through Sources IAM: if access rules hide a document from the user who minted your API key, that document's row is omitted from the response entirely. Internal diagnostic fields — keys prefixed with __, such as assembly diagnostics — are never part of values; they are excluded from the product grid, CSV exports, and delivery payloads alike.
/v1/data-products/{id}/resultsPath parameters
Query parameters
20Response
Response fields
curl
curl -s "https://api.talonic.com/v1/data-products/d1a2b3c4-e5f6-7890-abcd-ef1234567890/results?limit=10" \
-H "Authorization: Bearer tlnc_your_api_key"Response
{
"data": [
{
"id": "0f1e2d3c-4b5a-6978-8796-a5b4c3d2e1f0",
"run_id": "r1a2b3c4-e5f6-7890-abcd-ef1234567890",
"document_id": "doc-a1b2c3d4-e5f6-7890-abcd-ef1234567890",
"values": {
"invoice_number": "INV-2026-0042",
"vendor_name": "Acme Corp",
"total_amount": "1250.00",
"currency": "USD",
"invoice_date": "2026-05-15"
},
"created_at": "2026-06-01T14:25:00.000Z"
}
],
"total": 1
}run_ids array — for example one backed by a pipeline rather than runs — returns { "data": [], "total": 0 } here; read pipeline output through the pipeline results endpoints instead.When a product assembles several runs, rows from all of them interleave in one newest-first stream, and the run_id on each row tells you which run produced it. Duplicate documents across runs are not merged on this surface — a document processed by two linked runs yields two rows — so deduplicate on document_id client-side when your consumer expects one row per document.
Errors
Error responses