---
title: "Exchange Trading Pairs"
method: GET
path: "/gateway/v1/exchange/markets"
tags: ["Exchange"]
---

# Exchange Trading Pairs

`GET /gateway/v1/exchange/markets`

Returns trading pairs available on an exchange.

**Filters:** `type` (`spot`, `swap`, `future`, `option`) or free-text `search`.

**Included fields:** pair name, base/quote currencies, market type, active status, and default fee rates.

Use the returned `pair` values as the `pair` parameter in other exchange endpoints.

## Query parameters

- `exchange` 'binance' | 'okx' | 'bybit' | 'bitget' | 'coinbase' | 'kraken' | 'gate' | 'htx' | 'kucoin' | 'mexc' | 'upbit' | 'bitfinex' | 'bitstamp' | 'deribit' | 'bitmex' | 'bithumb' | 'hyperliquid' — Exchange identifier. When omitted, searches across all supported exchanges.
- `type` 'spot' | 'swap' | 'future' | 'option' | 'perpetual' | 'perp' — Market type filter. Use perpetual or perp for perpetual contracts (alias for swap).
- `base` string — Filter by base currency
- `quote` string — Filter by quote currency
- `search` string — Fuzzy search in pair/base/quote
- `limit` integer — Max results

## Response `200`

OK

- SimpleListResponseExchangeMarketItem
  - `$schema` string, uri — A URL to the JSON Schema for this object.
  - `data` ExchangeMarketItem[], nullable, required
    - `active` boolean, nullable, required — Whether the market is active
    - `base` string, nullable, required — Base currency
    - `exchange` string, required — Exchange identifier
    - `maker_fee` number, double, nullable, required — Default maker fee rate
    - `pair` string, required — Trading pair like BTC/USDT
    - `quote` string, nullable, required — Quote currency
    - `taker_fee` number, double, nullable, required — Default taker fee rate
    - `type` string, nullable, required — Market type: spot, swap, future, option
  - `meta` ObjectResponseMeta, required
    - `cached` boolean, required — Whether this response was served from cache
    - `credits_used` integer, required — Credits deducted for this request
    - `empty_reason` string — Hint explaining why the data array is empty, when applicable

## Other responses

- `default` — Error

---

[API](https://skmtc.dev/asksurf/apis/asksurf-public-rest-api.md) · [All operations](https://skmtc.dev/asksurf/apis/asksurf-public-rest-api/llms.txt) · [OpenAPI document](https://skmtc-service-production.skmtc.workers.dev/v1/apis/asksurf/asksurf-public-rest-api/revisions/498f461e81c4/schema)
