Omni Terminal provides Hyperliquid price structure with bounded OHLCV candles, current…
Omni Terminal provides Hyperliquid price structure with bounded OHLCV candles, current funding/carry, and an optional mark-anchored all-level liquidation and margin-stress overlay.
by omniterminal.app · discovered, not yet claimed by its owner · updated 2026-10-07
Mirrored from Coinbase's public x402 Bazaar. The description is the provider's own text and has not been reviewed here; the payment requirements are copied as published.
What it does
Omni Terminal provides Hyperliquid price structure with bounded OHLCV candles, current funding/carry, and an optional mark-anchored all-level liquidation and margin-stress overlay.
Tags: omni-terminal · trading · market-data · hyperliquid · market-snapshot · bazaar · builder-code
Call contract
- Method
- GET
- Input
- query parameters
- Output
- json
- Last paid call
- 2026-10-07
{
"include_liquidations": true,
"interval": "1h",
"limit": 120,
"scope": "aggregate"
}{
"candles": [
{
"close": 117640,
"close_time": 1784630799999,
"high": 117900,
"low": 116850,
"open": 117200,
"open_time": 1784627200000,
"trades": 4210,
"volume": 1824.5
}
],
"data_as_of": "2026-07-21T12:00:00.000Z",
"freshness": {
"age_seconds": 0,
"data_as_of": "2026-07-21T12:00:00.000Z",
"max_age_seconds": 7200,
"status": "fresh"
},
"funding": {
"canonical_symbol": "hyperliquid:BTC:USDC:perp",
"carry": {
"annualization_method": "simple_current_hourly_rate_x_8760",
"funding_annualized_pct": 10.95,
"funding_apr_pct": 10.95,
"funding_direction": "longs_pay_shorts",
"funding_rate_1d": 0.0003,
"funding_rate_8h": 0.0001,
"funding_rate_per_hour": 0.0000125,
"premium": -0.0002979165,
"projection_basis": "current_hourly_rate_mechanical_projection",
"settlement_interval": "1h"
},
"data_as_of": "2026-07-28T11:59:55.000Z",
"dex": "main",
"freshness": {
"age_seconds": 5,
"data_as_of": "2026-07-28T11:59:55.000Z",
"max_age_seconds": 120,
"status": "fresh"
},
"generated_at": "2026-07-28T12:00:00.000Z",
"market_type": "perp",
"positioning": {
"day_base_volume": 35060.91552,
"day_notional_volume_usd": 2255876954.93,
"open_interest_base": 36639.5983,
"open_interest_usd": 2324264117.62
},
"prices": {
"mark": 63440.5,
"mark_oracle_basis_bps": 0,
"midpoint": 63440.5,
"oracle": 63440.5,
"previous_day": 65087,
"price_change_24h_pct": -2.5297
},
"product_version": "v1",
"quote": "USDC",
"schema": "hyperliquid_market_carry.v1",
"service": "omni.hyperliquid_market_carry",
"symbol": "BTC",
"usage": {
"current_snapshot_only": true,
"historical_series_included": false
},
"venue": "hyperliquid"
},
"generated_at": "2026-07-21T12:00:00.000Z",
"interval": "1h",
"liquidation_overlay": {
"data_as_of": 1784116800000,
"freshness": {
"age_seconds": 0,
"data_as_of": "2026-07-15T12:00:00.000Z",
"max_age_seconds": 300,
"status": "fresh"
},
"generated_at": "2026-07-15T12:00:00.000Z",
"levels": {
"available_buy_count": 2,
"available_sell_count": 2,
"buy": [
{
"absolute_distance_from_reference_pct": 3.902439,
"distance_from_reference_bps": -390.2439,
"distance_from_reference_pct": -3.902439,
"distance_from_reference_usd": -4000,
"liquidation_flow": "sell",
"liquidation_price": 98500,
"position_count": 18,
"position_side": "long",
"reference_price": 102500,
"reference_price_source": "hyperliquid_mark_px",
"relative_to_reference": "below",
"size": 120.5,
"value": 12350000
},
{
"absolute_distance_from_reference_pct": 5.121951,
"distance_from_reference_bps": -512.1951,
"distance_from_reference_pct": -5.121951,
"distance_from_reference_usd": -5250,
"liquidation_flow": "sell",
"liquidation_price": 97250,
"position_count": 14,
"position_side": "long",
"reference_price": 102500,
"reference_price_source": "hyperliquid_mark_px",
"relative_to_reference": "below",
"size": 88.25,
"value": 9045625
}
],
"complete": true,
"order": "strongest",
"published_buy_count": 2,
"published_sell_count": 2,
"sell": [
{
"absolute_distance_from_reference_pct": 4.390244,
"distance_from_reference_bps": 439.0244,
"distance_from_reference_pct": 4.390244,
"distance_from_reference_usd": 4500,
"liquidation_flow": "buy",
"liquidation_price": 107000,
"position_count": 11,
"position_side": "short",
"reference_price": 102500,
"reference_price_source": "hyperliquid_mark_px",
"relative_to_reference": "above",
"size": 95.25,
"value": 9763125
},
{
"absolute_distance_from_reference_pct": 6.829268,
"distance_from_reference_bps": 682.9268,
"distance_from_reference_pct": 6.829268,
"distance_from_reference_usd": 7000,
"liquidation_flow": "buy",
"liquidation_price": 109500,
"position_count": 8,
"position_side": "short",
"reference_price": 102500,
"reference_price_source": "hyperliquid_mark_px",
"relative_to_reference": "above",
"size": 76.5,
"value": 7841250
}
],
"side_meaning": {
"buy": "legacy_key_for_long_position_liquidation_levels",
"sell": "legacy_key_for_short_position_liquidation_levels"
},
"side_semantics": {
"buy": {
"liquidation_flow": "sell",
"position_side": "long"
},
"sell": {
"liquidation_flow": "buy",
"position_side": "short"
}
}
},
"margin_stress": {
"interpretation": "Public market liquidation exposure estimate; not an account margin requirement or liquidation guarantee.",
"method": "liquidation_buckets_crossed_from_reference_price",
"reference_price": 102500,
"reference_price_source": "hyperliquid_mark_px",
"scenarios": [
{
"crossed_bucket_count": 18,
"estimated_liquidation_notional_usd": 21395625,
"estimated_liquidation_size": 208.75,
"estimated_position_count": 32,
"liquidated_side": "long",
"move_pct": -5,
"target_price": 97375
},
{
"crossed_bucket_count": 9,
"estimated_liquidation_notional_usd": 9763125,
"estimated_liquidation_size": 95.25,
"estimated_position_count": 11,
"liquidated_side": "short",
"move_pct": 5,
"target_price": 107625
}
],
"trigger_basis": "hyperliquid_mark_price"
},
"market_reference": {
"mark": 102500,
"midpoint": 102510,
"oracle": 102480,
"price": 102500,
"source": "hyperliquid_mark_px",
"trigger_basis": "hyperliquid_mark_price"
},
"product_version": "v1",
"schema": "hyperliquid_liquidation_map.v1",
"scope": "current",
"service": "omni.hyperliquid_liquidation_map",
"summary": {
"buy_lvwap_by_value": 86100,
"legacy_liquidation_distribution_mid_proxy": 101250,
"positions_with_liquidation_price": 24410,
"reference_price": 102500,
"reference_price_source": "hyperliquid_mark_px",
"sell_lvwap_by_value": 119400,
"total_positions": 27875,
"total_size": 15240.25,
"total_value": 1562125625
},
"symbol": "BTC",
"usage": {
"item_limit": 20,
"published_level_count": 4,
"published_levels_complete": true
},
"view": "clusters"
},
"product_version": "v1",
"schema": "hyperliquid_market_snapshot.v1",
"scope": "aggregate",
"service": "omni.hyperliquid_market_snapshot",
"symbol": "BTC",
"usage": {
"candle_count": 1,
"candle_limit": 120,
"funding_included": true,
"liquidation_overlay_included": true
}
}Use with an agent
- Discover. Agents find this listing with
GET https://bazaar.saylorinnovations.com/discovery/search?query=…, the MCP toolsearch_resources, or/discovery/resources. - Inspect. Fetch
/resources/26337.jsonfor the price and payment options. - Pay. Call
GET https://omniterminal.app/api/x402/v1/market-snapshot/:symbol. The provider answers402with its payment requirements. An x402 client signs one of the options below and retries withPAYMENT-SIGNATURE. - Execute. The provider returns
200with the data. Agent Bazaar is not in the request path and never sees your payment.
For humans
You don't need an account or an API key; you need a wallet holding a small amount of USDC on Base Sepolia, Base, and an x402-capable client (see the examples below). Call the endpoint unpaid first to see exactly what it asks for.
Pricing & payment
- Price
- $0.005 / request
- Protocol
- x402 v2
- Auth
- No account or API key. Pay per request.
- Networks
- Base Sepolia, Base
- Demand
- 2 calls · 2 unique payers in 30d (public x402 Bazaar data)
x402 payment requirements
| Scheme | Network | Asset | Amount | Pay to | Timeout |
|---|---|---|---|---|---|
| exact | Base Sepolia eip155:84532 | USDC | 5000 | 0x733f40A4FA0cd13d59aBADE04b9eD2e9acAc6457 | 300s |
| exact | Base eip155:8453 | USDC | $0.005 | 0x733f40A4FA0cd13d59aBADE04b9eD2e9acAc6457 | 300s |
accepts[] (raw JSON)
[
{
"scheme": "exact",
"network": "eip155:84532",
"payTo": "0x733f40A4FA0cd13d59aBADE04b9eD2e9acAc6457",
"asset": "0x036CbD53842c5426634e7929541eC2318f3dCF7e",
"amount": "5000",
"maxTimeoutSeconds": 300
},
{
"scheme": "exact",
"network": "eip155:8453",
"payTo": "0x733f40A4FA0cd13d59aBADE04b9eD2e9acAc6457",
"asset": "0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913",
"amount": "5000",
"amountUsd": 0.005,
"maxTimeoutSeconds": 300
}
]Schemas
Output schema (JSON Schema)
{
"properties": {
"example": {
"type": "object"
},
"type": {
"type": "string"
}
},
"required": [
"type"
],
"type": "object"
}Example shape — generated from the schema, not a captured live response
{
"example": {},
"type": "string"
}Examples
curl "https://omniterminal.app/api/x402/v1/market-snapshot/:symbol"
# -> 402 Payment Required, accepts[] lists how to pay
# retry with a PAYMENT-SIGNATURE (or PAYMENT header) once paidconst res = await fetch("https://omniterminal.app/api/x402/v1/market-snapshot/:symbol");
if (res.status === 402) {
const { accepts } = await res.json();
// pay one of accepts[] via an x402 client, then retry with the payment header
}import httpx
res = httpx.get("https://omniterminal.app/api/x402/v1/market-snapshot/:symbol")
if res.status_code == 402:
accepts = res.json()["accepts"]
# pay one of accepts[] via an x402 client, then retry with the payment headerDetails
- Provider
- omniterminal.app
- Endpoint
- https://omniterminal.app/api/x402/v1/market-snapshot/:symbol
- Machine-readable
/resources/26337.json