Cryptocurrency Trading Pairs on Six Asian Exchanges | Surf
Check supported exchange markets and their historical data coverage. Returns supported markets, base/quote currencies, status and available ticker or candle freshness fields. 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
Cryptocurrency Trading Pairs on Six Asian Exchanges | Surf
Check supported exchange markets and their historical data coverage. Returns supported markets, base/quote currencies, status and available ticker or candle freshness fields. 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 supported markets, base/quote currencies, status and available ticker or candle freshness fields. Regional market coverage differs from the live pair-search endpoint. Preserve data_status and data_actionability when deciding whether stored data is usable.
Start with your task
Check whether [Upbit] has a market for [Bitcoin] priced in [Korean won], and tell me what market information is available.
Inputs & outputs
Inspect the current inputs, availability, and maximum charge before starting.
Input schema
Input schema
Field / Path
Type
Requirement
Meaning
queryParamsqueryParams
object
Optional
qqueryParams.q
string
Optional
Free-text search over pair, base currency, or quote currency. Example: BTC.
Minimum length
1
typequeryParams.type
string
Optional
Market type. Example: spot. Defaults to "spot".
Default
spot
Options
spot
limitqueryParams.limit
integer
Optional
Results per page. Example: 20. Defaults to 20.
Default
20
Minimum
1
Maximum
100
orderqueryParams.order
string
Optional
Sort order. Example: asc. Defaults to "asc".
Default
asc
Options
asc, desc
quotequeryParams.quote
string
Optional
Quote currency filter. Example: KRW.
Minimum length
1
offsetqueryParams.offset
integer
Optional
Pagination offset. Example: 0. Defaults to 0.
Default
0
Minimum
0
Maximum
9007199254740991
statusqueryParams.status
string
Optional
Market status filter. Example: active.
Options
active, inactive
sort_byqueryParams.sort_by
string
Optional
Sort field. Example: pair. Defaults to "pair".
Default
pair
Options
pair, price, change_24h, volume_24h, technical_score, latest_candle_at, status
exchangequeryParams.exchange
string
Optional
Exchange identifier. When omitted, returns all supported exchanges. Example: bithumb.
queryParams.offset (Optional): Pagination offset. Example: 0. Defaults to 0.
queryParams.status (Optional): Market status filter. Example: active.
queryParams.sort_by (Optional): Sort field. Example: pair. Defaults to "pair".
queryParams.exchange (Optional): Exchange identifier. When omitted, returns all supported exchanges. Example: bithumb.
queryParams.data_status (Optional): Market data coverage status filter. Example: covered.
What this Tool returns
Returns supported markets, base/quote currencies, status and available ticker or candle freshness fields.
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.[].active
boolean; Required within parent
Whether the market is active
data.[].base
string; Required within parent
Base currency
data.[].change_24h_abs
number; Optional within parent; format: double
24h signed price change amount in quote currency
data.[].change_24h_pct
number; Optional within parent; format: double
24h signed price change percentage. Example: -2.68 means -2.68%
data.[].data_actionability
string; Optional within parent
Whether the current data status needs pipeline attention
data.[].data_status
string; Optional within parent
Current market data coverage status
data.[].exchange
string; Required within parent
Exchange identifier
data.[].high_24h
number; Optional within parent; format: double
24h high price
data.[].latest_4h_candle_at
integer; Optional within parent; format: int64
Latest 4h candle open time in Unix seconds
data.[].latest_5m_candle_at
integer; Optional within parent; format: int64
Latest 5m candle open time in Unix seconds
data.[].latest_candle_at
integer; Optional within parent; format: int64
Latest available candle open time in Unix seconds
data.[].latest_price
number; Optional within parent; format: double
Latest observed trade price
data.[].latest_ticker_at
integer; Optional within parent; format: int64
Latest ticker observation time in Unix seconds
data.[].latest_weekly_candle_at
integer; Optional within parent; format: int64
Latest weekly candle open time in Unix seconds
data.[].listing_date
integer; Optional within parent; format: int64
Earliest known exchange listing or first-trading date for this market, in Unix seconds when available.
data.[].low_24h
number; Optional within parent; format: double
24h low price
data.[].open_24h
number; Optional within parent; format: double
24h opening price
data.[].pair
string; Required within parent
Trading pair like BTC/KRW
data.[].prev_close
number; Optional within parent; format: double
Previous closing price
data.[].quote
string; Required within parent
Quote currency
data.[].region
string; Required within parent
Exchange market region
data.[].status
string; Required within parent
Market status
data.[].technical_score
number; Optional within parent; format: double
Latest OHLCV-derived technical score
data.[].technical_score_at
integer; Optional within parent; format: int64
Technical score generation time in Unix seconds
data.[].technical_score_label
string; Optional within parent
Technical score label
data.[].type
string; Required within parent
Market type
data.[].volume_24h_base
number; Optional within parent; format: double
24h trading volume in base currency units
data.[].volume_24h_quote
number; Optional within parent; format: double
24h quote-currency trading volume
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
meta.has_more
boolean; Optional within parent
Whether more items may exist beyond this response. For offset-paged endpoints, continue with a larger offset. For time-series endpoints without offset/cursor controls, true means the requested time range hit an upstream cap; narrow from/to to continue. Omitted when exhaustion cannot be proven.
meta.limit
integer; Required within parent; format: int64
Maximum number of items returned in this response
meta.offset
integer; Required within parent; format: int64
Number of items skipped (pagination offset)
meta.total
integer; Optional within parent; format: int64
Total number of matching items (before pagination). Omitted when total is unknown.
meta.watermark
integer; Optional within parent; format: int64
Warehouse watermark (Unix seconds) this response was computed at, on warehouse-backed endpoints (e.g. Hyperliquid /trades/aggregate) — rows up to this time come from the warehouse, newer rows from the live tail. Omitted elsewhere.
Coverage, units and freshness
Regional market coverage differs from the live pair-search endpoint. Preserve data_status and data_actionability when deciding whether stored data is usable.
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.
Search by coin and currency
Example request: Check whether [Upbit] has a market for [Bitcoin] priced in [Korean won].
You can name a coin and the money you want it priced in, such as [Bitcoin] in [Korean won], and optionally name one exchange: [Bithumb], [Upbit], [HashKey], [bitFlyer], [Coinone] or [Korbit]. If you leave the exchange out, the search checks across the supported exchanges. This Tool checks regular buy/sell markets only; it does not place trades. To narrow a broad search, name a coin, currency or exchange.
Returns supported markets, base/quote currencies, status and available ticker or candle freshness fields.
Regional market coverage differs from the live pair-search endpoint. Preserve data_status and data_actionability when deciding whether stored data is usable.
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 Check supported exchange markets and their historical data coverage. 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.