Dataset sync
Read the cited dataset incrementally — cursors, updated_since, per-cell citations
GET /v1/blueprints/{blueprint_id}/entities/{entity_key} is the canonical
read: the cross-run, canonical rows of one entity, with citations. Entity
keys come from GET /v1/blueprints/{blueprint_id}, and the ids from
GET /v1/blueprints (discover, don't
guess).
curl -s "$BASE_URL/v1/blueprints/$BP/entities/companies?limit=50&receipts=true" \
-H "Authorization: Bearer $DEEPSIEVE_API_KEY"{"data": [{"id": "…", "updated_at": "2026-08-03T11:02:44+00:00",
"name": "Acme KK", "hq_city": "Osaka",
"citations": {"hq_city": {"value": "Osaka", "confidence": 0.93,
"evidence_id": "…",
"source_urls": ["https://…"],
"retrieved_at": "2026-08-01T…"}}}],
"has_more": true, "next_cursor": "MjAyNi0wOC0wMy4uLg",
"entity": {"key": "companies", "columns": [{"name": "name", "type": "text"}]},
"blueprint": {"domain_name": "…", "entities": ["companies"]}}Parameters:
limit(≤200) +cursor— keyset pagination ordered by(updated_at, id)ascending. Stable while rows are inserted.updated_since=<iso-timestamp>— the sync primitive: only rows changed since your last sync. Store your high-water mark (or the final cursor) and poll on your own schedule — or let thedataset.updatedwebhook tell you when.fields=name,hq_city— column subset.receipts=true— nest per-cell citations. This is the differentiator; use it.
Reading a citation honestly
Each cell carries the same verdict the app shows, not just a number:
| Field | Meaning |
|---|---|
verdict | supported · leans-supported · uncertain · corrected · contradicted · unverifiable · not checked |
confidence | 0–1 float, or null when the cell was never graded |
cited | false when the cell has no source URL — never present it as sourced |
verdict_note | the QA agent's short justification |
source_urls, evidence_id, retrieved_at | provenance |
A contradicted or cited: false cell is a signal to surface to a human, not
a fact to act on.
Preview caps (unsubscribed workspaces)
Free-preview workspaces receive only the first 10 rows per entity. The response
says so explicitly — "truncated": true, "preview_row_cap": 10, plus
has_more: true — and paging past the cap requires a subscription. Never
report a truncated preview as the complete dataset.
Bulk export
GET /v1/export?format=ndjson|json|csv[&entity=][&workspace_id=] — NDJSON is
the agent default: line 1 is a metadata record with the Blueprint schema, then
one record per line with citations. CSV is per-entity and drops citations.
workspace_id exports a specific Blueprint by id (leaves the active workspace
unchanged); omitted, it exports the active one.
Free-preview (unsubscribed) workspaces are capped to the first rows of each
table on both surfaces — flagged by truncated + preview_row_cap.