Skip to main content

Parquet Downloads

Every finished market is available as one Parquet file with all of its snapshots and full order books. Downloading a file is faster than paging through Get Snapshots, and the files are small: a 5-minute BTC market with around 2,600 snapshots is under 200 KB.
Parquet downloads are included with Pro, Suite, and Enterprise plans. You can download any market inside your plan’s data window.

When to use it

  • You want every snapshot of a market, not one page at a time
  • You’re building a dataset across many markets for backtesting or research
  • You work in pandas, Polars, DuckDB, Spark, or another tool that reads Parquet
For a market that’s still running or has only just ended, use Get Snapshots. Files are created after a market ends, usually within a day.

Getting files

Request a market’s file by slug with GET /v1/markets/{slug}/snapshots/download. To find slugs, use List Markets. The endpoint returns a download link (url) instead of the file itself. The link:
  • works without your API key, so don’t send the key to it
  • expires after 10 minutes; ask the endpoint again for a fresh link
  • doesn’t count against your rate limit
The response also has sha256 and size_bytes, so you can check the file arrived intact.

File contents

One file holds one market. There’s one row per snapshot, in time order (oldest first). Each row has the market’s details followed by the snapshot data, so the file makes sense on its own in any tool. Files are compressed with zstd.

Market columns

These are the same on every row of a file.

Snapshot columns

Order books are stored as JSON text, in the same shape as Get Snapshots returns them:
Decimal columns keep exact values. pandas reads them as Python Decimal objects; convert with .astype(float) if you prefer floats.

Reading files

pandas needs pyarrow installed (pip install pandas pyarrow). DuckDB is available with brew install duckdb or pip install duckdb. Timestamps are stored in UTC. DuckDB displays them in your computer’s time zone; run SET TimeZone = 'UTC'; first to see UTC.

Many files at once

DuckDB and Polars can query a whole folder of files as one table:

Converting to CSV

To open a file in Excel, Numbers, or Google Sheets, convert it to CSV:
CSV files are about 30 times larger than the Parquet file, mostly because of the order books.

Market details in the file metadata

The file’s Parquet metadata also stores the full market object as JSON under the key market. You don’t need it, since the market columns hold the same information, but it’s there if your tooling reads metadata: