Inspect bid and ask price levels in an exchange order-book snapshot. Returns bid and ask levels, depth, midpoint and spread for a supported exchange trading pair. Use one Toolmu account and a shared prepaid balance across available Tools. Pay per use; no separate supplier subscription is required. The current execution ceiling for this Tool is 0.0072 Toolmu credits per call. This is a maximum, not the settled charge. Before execution, get the current Tool contract and check availability, the latest maximumCredits, your balance and budget. Supplier response credits_used, when present, describes supplier API credits and is not the Toolmu customer charge.
Up to 0.0072 credits / call
The final charge is based on confirmed usage. Unused reserved credits return to your available balance.
Surf
Crypto Order Book Depth by Exchange · Surf
Inspect bid and ask price levels in an exchange order-book snapshot. Returns bid and ask levels, depth, midpoint and spread for a supported exchange trading pair. Use one Toolmu account and a shared prepaid balance across available Tools. Pay per use; no separate supplier subscription is required. The current execution ceiling for this Tool is 0.0072 Toolmu credits per call. This is a maximum, not the settled charge. Before execution, get the current Tool contract and check availability, the latest maximumCredits, your balance and budget. Supplier response credits_used, when present, describes supplier API credits and is not the Toolmu customer charge.
You receive
Returns bid and ask levels, depth, midpoint and spread for a supported exchange trading pair. The order book is a snapshot. Price and spread use the quote currency, depth uses its documented asset unit, and liquidity can change after capture.
Start with your task
Show the available buy and sell prices for [Bitcoin] in [Tether] on [Binance], and compare how much is offered at each price.
Inputs & outputs
Inspect the current inputs, availability, and maximum charge before starting.
Input schema
Input schema
Field / Path
Type
Requirement
Meaning
queryParamsqueryParams
object
Required
Required fields
pair
pairqueryParams.pair
string
Required
Trading pair (e.g. BTC/USDT). Example: BTC/USDT.
Minimum length
1
typequeryParams.type
string
Optional
Market type: spot for spot trading, swap/perpetual/perp for perpetual contracts. Example: spot. Defaults to "spot".
Default
spot
Options
spot, swap, perpetual, perp
limitqueryParams.limit
integer
Optional
Number of price levels (1-100). Example: 20. Defaults to 20.
Default
20
Minimum
1
Maximum
100
exchangequeryParams.exchange
string
Optional
Exchange identifier. Note: hyperliquid uses USDC-settled perps (e.g. BTC/USDC:USDC); pass USDC-quoted pairs when querying hyperliquid. Example: binance. Defaults to "binance".
Returns bid and ask levels, depth, midpoint and spread for a supported exchange trading pair.
Response fields and how to read them
The table follows the official response contract, including nested fields and useful response metadata. [] denotes an array item. Required means required within its parent object, not that a conditional parent always exists. A nullable type permits null; an optional field can be absent. Use the documented conditions below to distinguish missing, empty and zero values. Units and reporting windows apply only where explicitly documented.
Field, type and presence
Meaning and conditions
data.[].ask_depth
number | null; Required within parent; format: double
Total ask-side depth in base currency units
data.[].asks
array | null; Required within parent
Sell orders, price ascending
data.[].asks.[].amount
number; Required within parent; format: double
Amount at this level
data.[].asks.[].price
number; Required within parent; format: double
Price level
data.[].bid_depth
number | null; Required within parent; format: double
Total bid-side depth in base currency units
data.[].bids
array | null; Required within parent
Buy orders, price descending
data.[].bids.[].amount
number; Required within parent; format: double
Amount at this level
data.[].bids.[].price
number; Required within parent; format: double
Price level
data.[].exchange
string; Required within parent
Exchange identifier
data.[].mid_price
number | null; Required within parent; format: double
(best_bid + best_ask) / 2
data.[].pair
string; Required within parent
Trading pair like BTC/USDT
data.[].spread
number | null; Required within parent; format: double
Best ask - best bid
data.[].spread_pct
number | null; Required within parent; format: double
Spread as percent of mid price
meta.cached
boolean; Required within parent
Whether this response was served from cache
meta.credits_used
integer; Required within parent; format: int64
Credits deducted for this request
meta.empty_reason
string; Optional within parent
Hint explaining why the data array is empty, when applicable
Coverage, units and freshness
The order book is a snapshot. Price and spread use the quote currency, depth uses its documented asset unit, and liquidity can change after capture.
Inspect any returned observation time, cache status, watermark, pagination and errors using their documented meanings. A successful request alone does not establish complete coverage. Where no freshness or completeness guarantee is documented, treat it as unknown. Saved Examples are historical and viewing them does not refresh data or execute a new call.
Data source and references
Surf supplies this endpoint through its Data API. Response contract and deployed Tool inputs reviewed on 2026-10-03 against official OpenAPI v0.2.102. This is a contract review date, not a data observation time. Coverage depends on the selected endpoint and request.
Use one Toolmu account and a shared prepaid balance across available Tools. Pay per use; no separate supplier subscription is required. The current execution ceiling for this Tool is 0.0072 Toolmu credits per call. This is a maximum, not the settled charge. Before execution, get the current Tool contract and check availability, the latest maximumCredits, your balance and budget. Supplier response credits_used, when present, describes supplier API credits and is not the Toolmu customer charge.
Compare Bitcoin buy and sell offers
Example request: Show buy and sell offers for [Bitcoin] priced in [Tether] on [Binance].
Name the coin and currency you want prices in, such as [Bitcoin] priced in [Tether]. You can name an exchange; if you do not, [Binance] is used. Regular buy/sell markets are checked by default. If you mean [perpetual contracts], say so. The result is a snapshot of listed buy and sell offers, not a trade; prices and amounts can change quickly. You do not need to enter a market code. If a name is unclear, I will ask before searching.
Returns bid and ask levels, depth, midpoint and spread for a supported exchange trading pair.
The order book is a snapshot. Price and spread use the quote currency, depth uses its documented asset unit, and liquidity can change after capture.
Use one Toolmu account and a shared prepaid balance across available Tools. Pay per use; no separate supplier subscription is required. The current execution ceiling for this Tool is 0.0072 Toolmu credits per call. This is a maximum, not the settled charge. Before execution, get the current Tool contract and check availability, the latest maximumCredits, your balance and budget. Supplier response credits_used, when present, describes supplier API credits and is not the Toolmu customer charge.
Ask your agent to Inspect bid and ask price levels in an exchange order-book snapshot. Provide the required inputs above. If Toolmu is already connected, reuse that connection; otherwise use the setup instructions on this page. Before a paid execution, the agent must read the current Tool contract and check availability, the credit ceiling, balance, budget and your authorization. It should then execute the Tool and explain the returned fields and limitations.
Inspect any returned observation time, cache status, watermark, pagination and errors using their documented meanings. A successful request alone does not establish complete coverage. Where no freshness or completeness guarantee is documented, treat it as unknown. Saved Examples are historical and viewing them does not refresh data or execute a new call.