Documentation Index
Fetch the complete documentation index at: https://docs.blockdb.io/llms.txt
Use this file to discover all available pages before exploring further.
Overview
- Dataset ID:
0301 - Liquidity Pool Reserves
- Description: Retrieves time-series snapshots of AMM pool reserves, covering both even-distribution (constant-product, weighted, stable) and concentrated/bin liquidity models.
- CSV Sample (reserves): Download
- CSV Sample (details): Download
- JSON Sample (reserves): Download
- JSON Sample (details): Download
Parameters
Target EVM network. See the Chain enumeration for supported values.
Range Filters (mutually exclusive)
Starting block number (inclusive) for the query. Use with to_block.
Ending block number (inclusive) for the query. Use with from_block.
Starting timestamp (ISO-8601). If it falls between blocks, the next block after this timestamp is used. Use with to_timestamp.
Ending timestamp (ISO-8601). If it falls between blocks, the last block before this timestamp is used. Use with from_timestamp.
Validation rule:
You must provide either a block range, a time range, or at least one direct selector.
Providing more than one option results in HTTP 400.
Providing none results in HTTP 400.
Pool Selectors
Filter snapshots by exchange IDs. See the DigitalExchange enumeration for supported values.
Filter by BlockDB pool identifiers (uid from /evm/entities/pools).
Filter by pool contract addresses (hex string, 20 bytes, no 0x prefix).
Filter by protocol-specific pool identifiers (e.g., Uniswap V4 pool_id).
Filter snapshots by pool archetype. See the PoolType enumeration for supported values.
Recommended default 250; maximum 1000 to stay under ~10 MB responses.
Pagination cursor from a prior call.
Response Fields
Echo of request metadata applied to the response.
EVM chain ID echoed from the request.
Block/timestamp bounds derived from the request.
Filters echoed from the request (e.g., exchange IDs, pool identifiers, pool types).
Data
Array of reserve snapshot objects.
BlockDB pool identifier (uid from /evm/entities/pools).
Exchange identifier associated with the pool.
Block height where the reserve change was observed.
Block timestamp when the event occurred.
Zero-based index of the parent transaction within the block.
Position of the log within the transaction.
Current reserves per token for even-style pools (raw units, integer strings). null when not applicable.
Current tick for concentrated-liquidity pools. null when not applicable.
Q64.96 sqrt price as an integer string. null when not applicable.
Current bin id for bin-style AMMs. null when not applicable.
Present when include_details = true. Each object conveys liquidity concentrated around a tick/bin/range.
Tick range coverage: Detail rows cover a ±1% range around the current price tick by default. If you need a wider tick range or full tick coverage, contact us.
Single-tick locator (v3-style). null when representing a range.
data.details[].lower_tick
Range lower bound.
data.details[].upper_tick
Range upper bound.
Engine-native liquidity metric (e.g., Uniswap v3 (L)) as an integer string.
Token0 raw amount at locator (integer string).
Token1 raw amount at locator (integer string).
Row-level lineage hash for the snapshot.
Lineage references of immediate parents.
Record creation timestamp.
Record last update timestamp.
Envelope Fields
Cursor token for pagination.
Number of records returned in data.
curl -X POST "https://api.blockdb.io/v1/evm/entities/reserves" \
-H "Authorization: Bearer $BLOCKDB_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"chain_id": 1,
"from_block": 12345678,
"to_block": 12345999,
"from_timestamp": "2025-10-29T00:00:00Z",
"to_timestamp": "2025-11-11T00:00:00Z",
"exchange_ids": [
2,
3
],
"pool_uids": [
"88e6a0c2ddd26feeb64f039a2c41296fcb3f5640000000000000000000000000"
],
"pool_addresses": [
"1234567890abcdef1234567890abcdef12345678"
],
"pool_ids": [
"8aa4e11cbdf30eedc92100f4c8a31ff748e201d44712cc8c90d189edaa8e4e47"
],
"pool_type_ids": [
201,
302,
3303
]
}'
{
"meta": {
"chain_id": 1,
"request_window": {
"from_block": 12345678,
"to_block": 12345999,
"from_timestamp": "2025-10-29T00:00:00Z",
"to_timestamp": "2025-11-11T00:00:00Z"
},
"filters": {
"exchange_ids": [
1,
2
],
"pool_uids": [
"88e6a0c2ddd26feeb64f039a2c41296fcb3f5640000000000000000000000000"
],
"pool_addresses": [
"1234567890abcdef1234567890abcdef12345678"
],
"pool_ids": [
"1234"
],
"pool_type_ids": [
2
]
}
},
"data": [
{
"pool_uid": "88e6a0c2ddd26feeb64f039a2c41296fcb3f5640000000000000000000000000",
"exchange_id": 1,
"type_id": 201,
"block_number": 18934567,
"block_time": "2025-11-11T18:42:15.123Z",
"tx_index": 4,
"log_index": 2,
"reserves": [
"169649594140000000000000",
"60446403492000000000"
],
"current_tick": 210130,
"current_sqrt_price": "14614467034852101032872730522039888223787",
"current_bin": null,
"details": [
{
"tick": 210130,
"lower_tick": 210120,
"upper_tick": 210140,
"bin_id": null,
"liquidity": "123456789000000000000000000000000",
"amount0": "1000000000000000000",
"amount1": "2500000000"
},
...
],
"_tracing_id": "0301000000000000000000000000000000000000",
"_parent_tracing_ids": [
"0203000000000000000000000000000000000000"
],
"_created_at": "2025-11-11T18:42:15.123Z",
"_updated_at": "2025-11-11T18:42:15.123Z"
},
...
],
"cursor": null,
"count": 1
}