Skip to main content

List Data Products

List assembled data products with cursor-based pagination and lifecycle status filters (active, archived) to track every deliverable dataset in a workspace.

Data products are the platform's final deliverable: assembled, canonical datasets wrapped for handover. A product is fed by one or more completed runs and adds delivery concerns on top — quality thresholds, a password-protected share link, CSV export, and (for pipeline-backed products) per-cell review holdback. Use this endpoint to enumerate every product in your workspace.

Results are returned in reverse chronological order by default and support cursor-based pagination. Pass pagination.next_cursor from one page as the cursor parameter of the next until it comes back null. You can filter by lifecycle status: products are active while in use and archived once soft-deleted from the platform UI.

Each product row carries its run_ids — the completed job or resolution runs whose results it assembles — plus a links object with ready-made relative URLs for the detail, results, and CSV export endpoints. Follow the links rather than constructing paths by hand; they are stable across API versions and always point at the canonical route for that product.

GET/v1/data-products

Query parameters

statusstringFilter by product status: `active` or `archived`. Omit to list both.
limitintegerMaximum number of items to return (1-100). Default: 20
cursorstringOpaque pagination cursor from a previous response.
orderstringSort order by creation date (asc | desc). Default: desc

Response

Response fields

dataarrayArray of data product objects.
data[].idstringData product UUID.
data[].namestringHuman-readable product name.
data[].descriptionstring | nullOptional description of the data product.
data[].run_idsstring[]UUIDs of the completed job or resolution runs whose results the product assembles.
data[].statusstringLifecycle status: `active` or `archived`.
data[].created_atstringISO 8601 creation timestamp.
data[].updated_atstringISO 8601 last update timestamp.
data[].linksobjectRelative URLs: `self`, `results`, `export_plain`, `export_audit`.
pagination.totalintegerTotal number of products matching the filter.
pagination.limitintegerThe limit applied to this page.
pagination.has_morebooleanWhether more pages exist beyond this one.
pagination.next_cursorstring | nullCursor for the next page, or null if no more results.

curl

curl -s "https://api.talonic.com/v1/data-products?status=active&limit=10" \
  -H "Authorization: Bearer tlnc_your_api_key"

Response

{
  "data": [
    {
      "id": "d1a2b3c4-e5f6-7890-abcd-ef1234567890",
      "name": "Q4 Invoice Extract",
      "description": "Structured invoice data from Q4 batch",
      "run_ids": ["r1a2b3c4-e5f6-7890-abcd-ef1234567890"],
      "status": "active",
      "created_at": "2026-06-01T14:20:00.000Z",
      "updated_at": "2026-06-01T14:25:30.000Z",
      "links": {
        "self": "/v1/data-products/d1a2b3c4-e5f6-7890-abcd-ef1234567890",
        "results": "/v1/data-products/d1a2b3c4-e5f6-7890-abcd-ef1234567890/results",
        "export_plain": "/v1/data-products/d1a2b3c4-e5f6-7890-abcd-ef1234567890/export/plain",
        "export_audit": "/v1/data-products/d1a2b3c4-e5f6-7890-abcd-ef1234567890/export/audit"
      }
    }
  ],
  "pagination": {
    "total": 1,
    "limit": 10,
    "has_more": false,
    "next_cursor": null
  }
}
The list includes archived products unless you pass status=active. Archiving is a soft delete performed in the platform UI — an archived product keeps its rows and can still be inspected, but it no longer appears in the platform's product picker.

Errors

Error responses

401unauthorizedMissing or invalid API key.
429rate_limitedToo many requests. Retry after the period indicated in the Retry-After header.

Frequently asked questions

What is a data product?+
A data product is the final assembled dataset from the Talonic pipeline. It wraps the results of one or more completed runs into a canonical deliverable with quality thresholds, a share link, and CSV export. Each product lists its source runs in `run_ids`.
How do data product statuses work?+
A product is `active` while in use and `archived` once soft-deleted. Archiving hides the product from platform pickers but preserves its rows. Use the `status` query parameter to filter the list to one lifecycle state.
Can I filter data products by run or schema?+
The list endpoint filters by `status` only. To find products built from a specific run, list all products and filter client-side on the `run_ids` array, which every product row carries.
What are the links on each product for?+
The `links` object gives you relative URLs for the product detail (`self`), its result rows (`results`), and the two CSV exports (`export_plain`, `export_audit`). Prepend your API base URL and call them directly instead of assembling paths yourself.