Export status and download
Only the creating account and API key can access the export. download=true returns NDJSON when ready; before the export is ready it returns 409 export-not-ready. Status requests return JSON until the export expires; after that every request, status or download, returns 409 export-expired. Downloads contain one dataset row per NDJSON line, without the REST envelope, and expire one day after generation. Current authorization is rechecked throughout downloads.
/v1/exports/{id}- Required capability
- bulk.download
- Data timing
- As published by the source
- Credits
- Free.
Parameters
idstringrequired · path- Export ID returned by POST /v1/exports.
downloadbooleanoptional · query- Set true to download the NDJSON file instead of the JSON status.Default:
false
Response fields
Returns data as an object. All example values are illustrative.
idstring- id
statusstring- pending, running, ready or failed. expired is not reported: a request for an expired export returns 409 export-expired instead.
pendingrunningreadyfailedexpired bytesinteger · null- bytes
Response metadata
Responses include meta.timezone. Dataset responses include next_cursor; health and exports have their own metadata. Request tracing uses the X-Request-ID header.
When something goes wrong
An empty data: [] is a successful query with no matching records. Invalid symbols, permissions and malformed parameters produce an RFC 9457 problem with an actionable detail.
Plans
Requires bulk.download. Access, recency and history depth come from the plan definitions the API enforces.
| Plan | Access | Recency | History |
|---|---|---|---|
| Free | Not included | — | — |
| Developer | Not included | — | — |
| Pro | Not included | — | — |
| Commercial | Included | Same as the exported dataset | Not date-bounded |
| Scale | Included | Same as the exported dataset | Not date-bounded |
History is how far back a plan may request. How far records actually go for a symbol is history_from in dataset coverage. Nothing is real-time. Compare plans