screener.orionterminal.com APIscreener.orionterminal.com ↗
Access real-time open interest, funding rates, volume, and price data for crypto perpetual futures on Binance and Hyperliquid across 7 timeframes.
curl -X GET 'https://api.parse.bot/scraper/f11b55ec-7756-4afc-abb1-67bdedf60515/get_screener_data?limit=3&sort_by=oi&exchange=binance' \ -H 'X-API-Key: $PARSE_API_KEY'
Get all crypto perpetual futures data including open interest, volume, price, and funding rate. Returns all symbols with optional filtering by symbol, sorting by various metrics, and limiting result count.
| Param | Type | Description |
|---|---|---|
| limit | integer | Max number of results to return. 0 returns all results. |
| symbol | string | Filter by symbol(s), comma-separated (e.g. 'BTC,ETH,SOL'). Matches base asset or full symbol name. Omitting returns all symbols. |
| sort_by | string | Sort results by field. Accepted values: 'oi', 'price', 'funding_rate', 'volume_5m', 'volume_1h', 'volume_1d', 'oi_change_1h', 'oi_change_1d'. Omitting returns unsorted results. |
| exchange | string | Exchange to query. Accepted values: 'binance', 'hyperliquid', 'hl'. |
| sort_order | string | Sort order. Accepted values: 'desc', 'asc'. |
{
"type": "object",
"fields": {
"tickers": "array of ticker objects each containing symbol, base_asset, price, open_interest_usd, funding_rate, and timeframes with OI/volume/price metrics",
"exchange": "string, the exchange queried",
"last_update": "integer, unix timestamp in milliseconds of last data update",
"symbol_count": "integer, number of tickers returned",
"total_symbols": "integer, total symbols available on the exchange"
},
"sample": {
"data": {
"tickers": [
{
"price": 80587,
"symbol": "BTCUSDT",
"base_asset": "BTC",
"mark_price": 80587.1,
"timeframes": {
"tf5m": {
"trades": 5799,
"volume": 12519500.59,
"oi_change": -0.039,
"volatility": 0.029,
"volume_delta": -2047803.49,
"volume_change": -3.58,
"btc_correlation": 1,
"oi_change_dollar": -3394322.87,
"price_change_pct": 0.013,
"price_change_dollar": 10.5,
"volume_change_dollar": -823737.7
}
},
"index_price": 80642.07,
"funding_rate": -0.0000315,
"open_interest": 107724.677,
"next_funding_time": 1778860800000,
"open_interest_usd": 8684817322.08,
"relative_volume_5m": 0.235,
"relative_volume_15m": 0.235
}
],
"exchange": "binance",
"last_update": 1778843610246,
"symbol_count": 3,
"total_symbols": 604
},
"status": "success"
}
}About the screener.orionterminal.com API
The Orion Terminal Screener API exposes real-time perpetual futures data across Binance and Hyperliquid through 2 endpoints, returning per-symbol fields including open interest in USD, funding rate, volume deltas, and price changes across seven timeframes (5m through 1d). The get_screener_data endpoint supports filtering by symbol, sorting by metrics like oi or funding_rate, and limiting result count, making it suitable for programmatic screeners and alerting systems.
What the API Returns
Both endpoints return an array of ticker objects containing symbol, base_asset, price, open_interest_usd, funding_rate, and timeframe-level breakdowns from tf5m through tf1d. Each timeframe object includes OI changes, volume deltas, volatility, and BTC correlation for that period. The top-level response also includes exchange, last_update (Unix timestamp in milliseconds), symbol_count, and total_symbols so you know how many contracts are available on the queried exchange.
Filtering and Sorting with get_screener_data
The get_screener_data endpoint accepts four optional parameters. symbol takes a comma-separated list of base assets or full symbol names (e.g. BTC,ETH,SOL) to narrow results. sort_by accepts values including oi, price, funding_rate, volume_5m, volume_1h, and volume_1d. Pair it with sort_order (asc or desc) to rank contracts by any of those metrics. limit controls how many tickers come back; passing 0 returns the full set. The exchange parameter switches between binance and hyperliquid (alias hl).
Focused Lookups with get_symbol_data
get_symbol_data requires a symbol parameter and returns full timeframe detail for each matching ticker. Unlike the screener endpoint, it is optimized for single or small-batch lookups and always returns the complete set of timeframe fields without needing to configure sorting or pagination. The response includes symbols_found so you can confirm whether a requested symbol is listed on the chosen exchange.
Coverage and Freshness
Data covers perpetual futures only — no spot markets, options, or quarterly contracts. The last_update timestamp on every response lets you determine data age in milliseconds. Coverage is limited to Binance and Hyperliquid; the exchange field in each response confirms which exchange the data came from.
- Rank all Binance perpetual futures by open interest to identify the most actively held contracts at a given moment.
- Screen for contracts with extreme funding rates on Hyperliquid to find potential funding arbitrage setups.
- Monitor OI changes across multiple timeframes (5m, 1h, 4h) to detect unusual position buildup in real time.
- Filter and sort by
volume_1hto surface contracts with abnormal short-term trading activity relative to their baseline. - Build a BTC correlation heatmap using per-symbol correlation fields to group assets by market-beta regime.
- Set up automated alerts when a specific symbol's funding rate crosses a threshold using
get_symbol_dataon a polling schedule. - Compare OI and volume deltas across Binance and Hyperliquid for the same base asset to spot cross-exchange divergences.
| Tier | Price | Credits/month | Rate limit |
|---|---|---|---|
| Free | $0/mo | 100 | 5 req/min |
| Hobby | $30/mo | 1,000 | 20 req/min |
| Developer | $100/mo | 5,000 | 250 req/min |
One credit = one API call regardless of which marketplace API you call. Exceeding the rate limit returns a 429 response. Authenticate with the X-API-Key header.
Does Orion Terminal provide an official developer API?+
What does the `get_screener_data` endpoint return compared to `get_symbol_data`?+
get_screener_data returns the full list of perpetual futures on the selected exchange and accepts sort_by, sort_order, limit, and symbol filter parameters. get_symbol_data requires at least one symbol, skips sorting and pagination options, and always returns the complete set of timeframe fields for each matching ticker. Use get_screener_data for market-wide scanning and get_symbol_data for targeted lookups.How fresh is the data returned by these endpoints?+
last_update field expressed as a Unix timestamp in milliseconds. You can diff that value against the current time to determine data age. The API does not expose a guaranteed update interval, so checking last_update per response is the reliable way to confirm freshness.