curl --request GET \
--url https://public-api.birdeye.so/defi/v3/liquidity/ohlc/pair \
--header 'X-API-KEY: <api-key>'import requests
url = "https://public-api.birdeye.so/defi/v3/liquidity/ohlc/pair"
headers = {"X-API-KEY": "<api-key>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {'X-API-KEY': '<api-key>'}};
fetch('https://public-api.birdeye.so/defi/v3/liquidity/ohlc/pair', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));{
"success": true,
"data": {
"items": [
{
"pair_address": "DyoDLq79qKTia7Q2aSEbrsjpvzjbZi1YhxjrEhctWPLQ",
"base_mint": "So11111111111111111111111111111111111111112",
"quote_mint": "EPjFWdd5AufqSSqeM2qN1xzybapC8G4wEGGkZwyTDt1v",
"timestamp": "2025-06-26T15:14:00Z",
"unix_time": 1750950840,
"open_liquidity_usd": 35.54838054600674,
"high_liquidity_usd": 70.98678138336354,
"low_liquidity_usd": 2.86407480456388e-7,
"close_liquidity_usd": 2.86407480456388e-7,
"open_base_balance": 247500003,
"high_base_balance": 247500003,
"low_base_balance": 1,
"close_base_balance": 1,
"open_quote_balance": 11,
"high_quote_balance": 222979861711,
"low_quote_balance": 11,
"close_quote_balance": 222979861711,
"open_base_amount_ui": 0.247500003,
"high_base_amount_ui": 0.247500003,
"low_base_amount_ui": 1e-9,
"close_base_amount_ui": 1e-9,
"open_quote_amount_ui": 0.000011,
"high_quote_amount_ui": 222979.861711,
"low_quote_amount_ui": 0.000011,
"close_quote_amount_ui": 222979.861711,
"base_open_price": 143.2943958969169,
"base_high_price": 143.4076374200358,
"base_low_price": 143.20374022819402,
"base_close_price": 143.20374022819402,
"quote_open_price": 7547.011966964857,
"quote_high_price": 160566.25292547484,
"quote_low_price": 400.6525017637174,
"quote_close_price": 400.6525017637174
}
],
"direction": "next",
"limit": 100,
"next_cursor": 1750950900,
"prev_cursor": 1750950780,
"has_more": true
}
}{
"success": false,
"message": "Bad request"
}{
"success": false,
"message": "Unauthorized"
}{
"success": false,
"message": "Access Denied"
}{
"success": false,
"message": "Too many requests"
}{
"success": false,
"message": "Internal Server Error"
}Liquidity OHLC - Pair
A historical liquidity time-series API for Solana pools, converting raw on-chain pool states into OHLC data for TVL, token balances, and USD-denominated liquidity. It enables TradingView-style liquidity charting, deep liquidity analytics, pool-level liquidity provider tracking, abnormal liquidity event detection, manipulation and rug-risk surveillance, and quantitative backtesting of liquidity-driven strategies. Unlike traditional APIs limited to current snapshots or price/volume data, this dataset reveals the full historical evolution of pool liquidity structure over time, unlocking a new analytical layer for DeFi market intelligence and risk modeling. Maximum 100 records.
curl --request GET \
--url https://public-api.birdeye.so/defi/v3/liquidity/ohlc/pair \
--header 'X-API-KEY: <api-key>'import requests
url = "https://public-api.birdeye.so/defi/v3/liquidity/ohlc/pair"
headers = {"X-API-KEY": "<api-key>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {'X-API-KEY': '<api-key>'}};
fetch('https://public-api.birdeye.so/defi/v3/liquidity/ohlc/pair', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));{
"success": true,
"data": {
"items": [
{
"pair_address": "DyoDLq79qKTia7Q2aSEbrsjpvzjbZi1YhxjrEhctWPLQ",
"base_mint": "So11111111111111111111111111111111111111112",
"quote_mint": "EPjFWdd5AufqSSqeM2qN1xzybapC8G4wEGGkZwyTDt1v",
"timestamp": "2025-06-26T15:14:00Z",
"unix_time": 1750950840,
"open_liquidity_usd": 35.54838054600674,
"high_liquidity_usd": 70.98678138336354,
"low_liquidity_usd": 2.86407480456388e-7,
"close_liquidity_usd": 2.86407480456388e-7,
"open_base_balance": 247500003,
"high_base_balance": 247500003,
"low_base_balance": 1,
"close_base_balance": 1,
"open_quote_balance": 11,
"high_quote_balance": 222979861711,
"low_quote_balance": 11,
"close_quote_balance": 222979861711,
"open_base_amount_ui": 0.247500003,
"high_base_amount_ui": 0.247500003,
"low_base_amount_ui": 1e-9,
"close_base_amount_ui": 1e-9,
"open_quote_amount_ui": 0.000011,
"high_quote_amount_ui": 222979.861711,
"low_quote_amount_ui": 0.000011,
"close_quote_amount_ui": 222979.861711,
"base_open_price": 143.2943958969169,
"base_high_price": 143.4076374200358,
"base_low_price": 143.20374022819402,
"base_close_price": 143.20374022819402,
"quote_open_price": 7547.011966964857,
"quote_high_price": 160566.25292547484,
"quote_low_price": 400.6525017637174,
"quote_close_price": 400.6525017637174
}
],
"direction": "next",
"limit": 100,
"next_cursor": 1750950900,
"prev_cursor": 1750950780,
"has_more": true
}
}{
"success": false,
"message": "Bad request"
}{
"success": false,
"message": "Unauthorized"
}{
"success": false,
"message": "Access Denied"
}{
"success": false,
"message": "Too many requests"
}{
"success": false,
"message": "Internal Server Error"
}- Usage Note
- Accessibility
- Chain Supported
Historical liquidity candles for one Solana pool.
- Pass a pool address and optionally anchor the query with
time,direction, andcount. directioncontrols whether you page backward or forward from the anchor time.- Maximum
countis100records per request. - Historical liquidity data is available from January 1, 2024 onward.
- Lite
- Starter
- Premium
- Business
- Enterprise
Solana
Compute Unit ⚙️
Compute Unit ⚙️
- CU is dynamic by resolution: base
20 CUfor1m, with depth and lookback multipliers applied.
Use Cases 💡
Use Cases 💡
- Chart how pool liquidity evolved around launches, migrations, or withdrawals.
- Detect liquidity shocks, LP exits, or abrupt depth collapses.
- Support pool-level risk dashboards and rug-surveillance workflows.
- Study whether price moves were supported by real liquidity or happened into thin books.
How to Use 🛠️
How to Use 🛠️
- Set
x-chain=solana. - Pass the pool address in
address. - Use
timeas the anchor point,directionto page backward or forward, andcountup to100. - Pair this endpoint with pair OHLCV when you want to compare price action and depth evolution side by side.
Best Practices ✅
Best Practices ✅
- Start from the event timestamp and page outward instead of pulling random windows.
- Keep liquidity and price charts aligned to the same analysis window for easier diagnosis.
- Use this on suspicious pools first, then expand to broader monitoring if the pattern proves useful.
Limitations ⚠️
Limitations ⚠️
- Solana only.
Authorizations
API key for authentication
Headers
Solana network only.
solana Query Parameters
The address of a pair contract
Unix timestamp in seconds used as the anchor time for the liquidity candle window. Defaults to the latest available candle.
0 <= x <= 10000000000Direction to query candles from the anchor time. Use back for older candles and forward for newer candles.
back, forward Maximum number of liquidity candles returned. Defaults to 100 and is capped at 100.
1 <= x <= 100Was this page helpful?

