Skip to main content
POST
/
v1
/
exports
curl --request POST \
  --url https://api.ticksupply.com/v1/exports \
  --header 'Content-Type: application/json' \
  --header 'X-Api-Key: <api-key>' \
  --data '
{
  "datastream_id": 123,
  "start_time": 1703116800000000000,
  "end_time": 1703203200000000000
}
'
{
  "id": "exp_0194a1b2c3d4e5f6a7b8c9d0e1f2a3b4",
  "datastream_id": 123,
  "start_time": 1704067200000000000,
  "end_time": 1704153600000000000,
  "format": "csv",
  "status": "queued",
  "created_at": "2023-11-07T05:31:56Z",
  "reason": "<string>",
  "started_at": "2023-11-07T05:31:56Z",
  "finished_at": "2023-11-07T05:31:56Z"
}

Authorizations

X-Api-Key
string
header
required

Your API key. Get one from the dashboard at https://app.ticksupply.com/api-keys

Headers

Idempotency-Key
string

Unique key for idempotent requests. If you retry a request with the same key, you'll receive the original response without the operation being performed again.

Maximum string length: 128

Body

application/json
datastream_id
integer<int64>
required

Datastream ID to export

start_time
required

Start timestamp. Accepts multiple formats:

  • Nanoseconds since Unix epoch (integer): 1703116800000000000
  • Nanoseconds since Unix epoch (string): "1703116800000000000"
  • ISO 8601 datetime: "2024-01-15T10:00:00Z"
  • ISO 8601 with fractional seconds: "2024-01-15T10:00:00.123456789Z"
Example:

1703116800000000000

end_time
required

End timestamp. Same formats as start_time.

Example:

1703203200000000000

schema
default:raw

Export column schema. Controls which columns appear in the CSV output. Defaults to "raw" (collection_timestamp_ns + raw JSON data blob).

Accepts:

  • "raw" — default two-column output
  • A built-in schema name (e.g., "normalized_trades") — flat columns extracted from JSON
  • A schema ID (e.g., "sch_0194a1b2c3d4e5f6a7b8c9d0e1f2a3b4") — custom schema by ID
  • An inline object with columns array — ad-hoc column definitions
Example:

"normalized_trades"

Response

Export job accepted for processing

id
string
required

Prefixed export job ID (e.g., exp_0194a1b2c3d4e5f6a7b8c9d0e1f2a3b4)

Pattern: ^exp_[a-f0-9]{32}$
Example:

"exp_0194a1b2c3d4e5f6a7b8c9d0e1f2a3b4"

datastream_id
integer<int64>
required

Datastream ID being exported

Example:

123

start_time
integer<int64>
required

Start of data range (nanoseconds since Unix epoch)

Example:

1704067200000000000

end_time
integer<int64>
required

End of data range (nanoseconds since Unix epoch)

Example:

1704153600000000000

format
enum<string>
required

Export file format

Available options:
csv
Example:

"csv"

status
enum<string>
required

Export job status

Available options:
queued,
running,
succeeded,
failed,
canceled
created_at
string<date-time>
required

Creation timestamp

reason
string | null

Failure reason (only present when status is "failed")

started_at
string<date-time> | null

When processing started

finished_at
string<date-time> | null

When processing finished

Last modified on February 6, 2026