Limit Order Book Snapshot 50
Fifty-level order book snapshots derived from the full limit order book, recording the top 50 bid and ask levels at one-minute intervals.
Limit Order Book Snapshot 50
Overview
The Limit Order Book Snapshot 50 (T-LIMITBOOK_SNAPSHOT_50) data type provides periodic snapshots of the top 50 bid and ask price levels derived from the full limit order book (T-LIMITBOOK_FULL). Snapshots are emitted at one-minute intervals from the incremental book stream and are available as per-symbol CSV files and per-exchange Parquet artifacts.
File Organization
Limit Order Book Snapshot 50 data is organized in the coinapi bucket using the structure below.
T-LIMITBOOK_SNAPSHOT_50/
└── D-{YYYYMMDD | YYYYMMDDHH}/
└── E-[EXCHANGE]/
└── IDDI-[IDENTIFIER]+SC-[COINAPI_SYMBOL_ID]+S-[EXCHANGE_SYMBOL].csv.gzExample:
T-LIMITBOOK_SNAPSHOT_50/D-2026032400/E-COINBASE/IDDI-12345+SC-COINBASE_SPOT_BTC_USD+S-BTC__002DUSD.csv.gz
Where:
T-LIMITBOOK_SNAPSHOT_50: Indicates the data type (50-level order book snapshots)D-{YYYYMMDD | YYYYMMDDHH}defines the time partition:YYYYMMDDincoinapi→ legacy daily partitions published before 2026-06-09YYYYMMDDHHincoinapi→ hourly partitions for data published on or after 2026-06-09
E-[EXCHANGE]: Exchange identifierIDDI-[IDENTIFIER]: CoinAPI internal identifierSC-[COINAPI_SYMBOL_ID]: CoinAPI symbol identifierS-[EXCHANGE_SYMBOL]: Symbol as identified by the exchange
A Parquet artifact (one file per exchange per date or hour) is also available at:
T-LIMITBOOK_SNAPSHOT_50/D-{YYYYMMDD | YYYYMMDDHH}/E-[EXCHANGE].parquet
[!NOTE]
This dataset is available only in the
coinapibucket. It is not included incoinapi-daily-tail.
File Format
CSV files are comma-separated and compressed with gzip. Each row represents one snapshot of the order book at a point in time, with up to 50 levels on each side.
Data Fields
| Column Name | Type | Nullable | Description |
|---|---|---|---|
exchange_id | string | No | Exchange identifier extracted from the object path. |
symbol_exchange_id | string | No | Exchange-native symbol identifier. |
symbol_id | string | No | CoinAPI symbol identifier. |
symbol_id_int | integer | No | Numeric CoinAPI symbol identifier used by downstream systems. |
date_str | string | No | Date token from the path (YYYYMMDD or YYYYMMDDHH). |
time_exchange | string | No | Exchange event time-of-day for the snapshot row. |
time_coinapi | string | No | CoinAPI receive time-of-day for the snapshot row. |
asks[0..49].price | decimal | Yes | Ask prices from the best ask outward, one column per level (50 columns total). |
asks[0..49].size | decimal | Yes | Ask sizes corresponding to each ask price level (50 columns total). |
bids[0..49].price | decimal | Yes | Bid prices from the best bid outward, one column per level (50 columns total). |
bids[0..49].size | decimal | Yes | Bid sizes corresponding to each bid price level (50 columns total). |
[!NOTE]
Level columns are zero-indexed:
asks[0].priceis the best ask,asks[1].priceis the next best ask, and so on throughasks[49].price. Levels that are not present at snapshot time are empty.
Example Data
exchange_id,symbol_exchange_id,symbol_id,symbol_id_int,date_str,time_exchange,time_coinapi,asks[0].price,asks[0].size,...,bids[0].price,bids[0].size,...
COINBASE,BTC-USD,COINBASE_SPOT_BTC_USD,12345,20260324,13:15:00.0000000,13:15:00.0020000,67234.50,1.245,...,67234.10,0.983,...Data Collection Process
- We maintain a real-time connection to each supported exchange and build an incremental order book from
T-LIMITBOOK_FULLdata. - Every minute, the current top 50 bid and ask levels are captured and written as a snapshot row per symbol.
- Data is uploaded to the
coinapibucket as hourly partitions for data published on or after 2026-06-09. Legacy daily partitions published before that date remain incoinapi.
Corner Cases and Special Considerations
- Missing levels: If the exchange order book has fewer than 50 levels on a side at snapshot time, the corresponding level columns will be empty.
- Derived data: Snapshots are derived from
T-LIMITBOOK_FULL. Exchanges not covered by full limit order book data are not included. - Snapshot interval: Snapshots are recorded at one-minute intervals from the incremental stream, not necessarily aligned to wall-clock minutes.
Snowflake Access
This dataset is also available via Snowflake under:
APIBRICKS_COINAPI_SHARED.LIMITBOOK_SNAPSHOT_50.LIMITBOOK_SNAPSHOT_50
The Snowflake table uses the same column schema as the Parquet artifact, enriched with exchange and symbol metadata.
Hyperliquid L4 Book
The Hyperliquid L4 Book data type provides order-by-order order book snapshots and updates with user attribution on the Hyperliquid L4 exchange.
Limit Order Book Depth Bands
Cumulative order book size aggregated into configurable basis-point bands around the midpoint, emitted at one-second intervals.