---
title: "Get trading pairs"
method: GET
path: "/trading/pairs"
tags: ["Trading"]
---

# Get trading pairs

`GET /trading/pairs`

## Request

- Base URL: `https://api.fireblocks.io/v1`
- URL: `https://api.fireblocks.io/v1/trading/pairs`
- Auth: none declared
- TypeScript: <https://skmtc.dev/fireblocks/apis/fireblocks-api/docs/trading/pairs/get.ts> (a function with typed inputs; its response is checked against the schema)

Retrieve the base/quote trading pairs supported by the tenant's trading providers. All filters are optional and combined with AND.

A provider can return several rows for one pair, one per side and per connected account, each with its own `tradeClass`. Rows may use the wildcard `*` asset ID or the `BOTH` side and are returned unexpanded (see the `baseAsset`, `side` and `baseChain` filters for how they match).

**Examples**
  - Which providers support ETH/USDC: `?baseAsset=ETH&quoteAsset=USDC`. Add `providerId` to check one provider; an empty `data` array means it does not support the pair.
  - All pairs of one account: `?providerId=ACME&accountId=<ACCOUNT_ID>`. Page through large results with `pageSize` and `pageCursor`.
  - Everything you can buy with euro: `?baseAsset=EUR&tradeClass=ON_RAMP`.

**Endpoint Permission:** Owner, Admin, Non-Signing Admin, Signer, Approver, Editor, Viewer.

For detailed information about error codes and troubleshooting, please refer to our [API Error Codes documentation](https://developers.fireblocks.com/reference/api-error-codes).

## Query parameters

- `baseAsset` string
- `quoteAsset` string
- `baseChain` string
- `quoteChain` string
- `baseRail` 'BLOCKCHAIN' | 'INTERNAL' | 'SWIFT' | 'IBAN' | 'US_WIRE' | 'ACH' | 'SEPA' | 'SPEI' | 'PIX' | 'LBT' | 'MOMO' | 'CHAPS' | 'PAYID' | 'INTERAC' | 'INTERNAL_TRANSFER' | 'CIPS' | 'NEQUI' | 'FPS_UK' | 'FPS_HK' | 'INSTA_PAY' | 'PESONET': Transfer rail: * **BLOCKCHAIN** - Transfer over the public blockchain * **INTERNAL** - Internal transfer within the same account (e.g. sub-accounts or same api key) * **SWIFT** - International wire transfer * **IBAN** - International Bank Account Number transfer * **US_WIRE** - Domestic wire transfer within the United States (e.g. FedWire) * **ACH** - Automated Clearing House transfer, typically takes longer but not as expensive as wire transfers * **SEPA** - Euro transfers within the SEPA zone * **SPEI** - Mexican interbank electronic payment system * **PIX** - Brazilian instant payment system * **LBT** - Local bank transfers * **MOMO** - Mobile money transfers (e.g. M-Pesa) * **CHAPS** - The Clearing House Automated Payment System (CHAPS) is a real-time gross settlement payment system used for transactions in the United Kingdom * **PAYID** - PayID payment identifier system (Australia) * **INTERAC** - Interac electronic funds transfer (Canada) * **INTERNAL_TRANSFER** - Internal transfer between accounts * **CIPS** - Cross-Border Interbank Payment System (China) * **NEQUI** - Nequi mobile payment (Colombia) * **FPS_UK** - UK Faster Payments (GBP) * **FPS_HK** - Hong Kong Faster Payment System (HKD) * **INSTA_PAY** - InstaPay instant payment (Philippines) * **PESONET** - PesoNet batch payment (Philippines)
- `quoteRail` 'BLOCKCHAIN' | 'INTERNAL' | 'SWIFT' | 'IBAN' | 'US_WIRE' | 'ACH' | 'SEPA' | 'SPEI' | 'PIX' | 'LBT' | 'MOMO' | 'CHAPS' | 'PAYID' | 'INTERAC' | 'INTERNAL_TRANSFER' | 'CIPS' | 'NEQUI' | 'FPS_UK' | 'FPS_HK' | 'INSTA_PAY' | 'PESONET': Transfer rail: * **BLOCKCHAIN** - Transfer over the public blockchain * **INTERNAL** - Internal transfer within the same account (e.g. sub-accounts or same api key) * **SWIFT** - International wire transfer * **IBAN** - International Bank Account Number transfer * **US_WIRE** - Domestic wire transfer within the United States (e.g. FedWire) * **ACH** - Automated Clearing House transfer, typically takes longer but not as expensive as wire transfers * **SEPA** - Euro transfers within the SEPA zone * **SPEI** - Mexican interbank electronic payment system * **PIX** - Brazilian instant payment system * **LBT** - Local bank transfers * **MOMO** - Mobile money transfers (e.g. M-Pesa) * **CHAPS** - The Clearing House Automated Payment System (CHAPS) is a real-time gross settlement payment system used for transactions in the United Kingdom * **PAYID** - PayID payment identifier system (Australia) * **INTERAC** - Interac electronic funds transfer (Canada) * **INTERNAL_TRANSFER** - Internal transfer between accounts * **CIPS** - Cross-Border Interbank Payment System (China) * **NEQUI** - Nequi mobile payment (Colombia) * **FPS_UK** - UK Faster Payments (GBP) * **FPS_HK** - Hong Kong Faster Payment System (HKD) * **INSTA_PAY** - InstaPay instant payment (Philippines) * **PESONET** - PesoNet batch payment (Philippines)
- `side` 'BUY' | 'SELL' | 'BOTH': Side of a trading pair. Same as `Side`, plus `BOTH`, meaning the pair applies to both BUY and SELL.
- `tradeClass` 'SWAP_DEFI' | 'SWAP_CEFI' | 'BRIDGE_DEFI' | 'BRIDGE_CEFI' | 'INTERNAL_LEDGER' | 'ON_RAMP' | 'OFF_RAMP' | 'FX' | 'OTC' | 'UNKNOWN': The class of trade a pair represents, derived from the asset class of each leg, the chains those assets settle on, where the trade executes, and the trading side: * **SWAP_DEFI** - Exchange between two crypto assets on the same chain, executed on-chain * **SWAP_CEFI** - Exchange between two crypto assets on the same chain, executed through a provider account * **BRIDGE_DEFI** - Exchange between two crypto assets on different chains, executed on-chain * **BRIDGE_CEFI** - Exchange between two crypto assets on different chains, executed through a provider account * **INTERNAL_LEDGER** - Exchange between two crypto assets settled on a provider's internal ledger, within a single provider account. Not split by chain, because neither leg settles on-chain while the trade executes * **ON_RAMP** - Buying a crypto asset with a fiat asset * **OFF_RAMP** - Selling a crypto asset for a fiat asset * **FX** - Exchange between two fiat assets * **OTC** - A pair quoted by an OTC desk: firm, short-lived RFQ commitments against a dealer, executed on credit rather than against an order book. Takes precedence over the asset-class values, so an OTC desk selling USDC for USD is `OTC`, not `OFF_RAMP` * **UNKNOWN** - The class could not be resolved, e.g. when the chain of an asset could not be determined. Callers should not route on a pair with this class
- `providerId` string[]
- `accountId` string[]
- `prefunded` boolean
- `min` string
- `max` string
- `pageSize` integer
- `pageCursor` string

## Response `200`

Trading pairs response

- TradingPairsListPage
  - `data` TradingPair[], required: List of trading pairs.
    - `providerId` string, required: The provider that supports this pair.
    - `accountId` string: The connected account the pair is scoped to. Absent for direct-access providers, and for provider-level pairs that describe what a provider supports before any account is connected. Its absence therefore does not imply the provider is direct-access.
    - `baseAssetId` string, required: Fireblocks asset ID of the base asset, or `*` for any asset on `baseChain`. A `*` value always comes with `baseChain` set.
    - `quoteAssetId` string, required: Fireblocks asset ID of the quote asset, or `*` for any asset on `quoteChain`. A `*` value always comes with `quoteChain` set.
    - `baseChain` string: Blockchain `legacyId` of the base asset (e.g. `ETH`, `BASECHAIN_ETH`, `ETH-AETH`, `SOL`). Set for leaf crypto assets; absent for fiat and virtual assets.
    - `quoteChain` string: Blockchain `legacyId` of the quote asset (e.g. `ETH`, `BASECHAIN_ETH`, `ETH-AETH`, `SOL`). Set for leaf crypto assets; absent for fiat and virtual assets.
    - `side` 'BUY' | 'SELL' | 'BOTH', required: Side of a trading pair. Same as `Side`, plus `BOTH`, meaning the pair applies to both BUY and SELL.
    - `tradeClass` 'SWAP_DEFI' | 'SWAP_CEFI' | 'BRIDGE_DEFI' | 'BRIDGE_CEFI' | 'INTERNAL_LEDGER' | 'ON_RAMP' | 'OFF_RAMP' | 'FX' | 'OTC' | 'UNKNOWN', required: The class of trade a pair represents, derived from the asset class of each leg, the chains those assets settle on, where the trade executes, and the trading side: * **SWAP_DEFI** - Exchange between two crypto assets on the same chain, executed on-chain * **SWAP_CEFI** - Exchange between two crypto assets on the same chain, executed through a provider account * **BRIDGE_DEFI** - Exchange between two crypto assets on different chains, executed on-chain * **BRIDGE_CEFI** - Exchange between two crypto assets on different chains, executed through a provider account * **INTERNAL_LEDGER** - Exchange between two crypto assets settled on a provider's internal ledger, within a single provider account. Not split by chain, because neither leg settles on-chain while the trade executes * **ON_RAMP** - Buying a crypto asset with a fiat asset * **OFF_RAMP** - Selling a crypto asset for a fiat asset * **FX** - Exchange between two fiat assets * **OTC** - A pair quoted by an OTC desk: firm, short-lived RFQ commitments against a dealer, executed on credit rather than against an order book. Takes precedence over the asset-class values, so an OTC desk selling USDC for USD is `OTC`, not `OFF_RAMP` * **UNKNOWN** - The class could not be resolved, e.g. when the chain of an asset could not be determined. Callers should not route on a pair with this class
    - `baseAssetRail` 'BLOCKCHAIN' | 'INTERNAL' | 'SWIFT' | 'IBAN' | 'US_WIRE' | 'ACH' | 'SEPA' | 'SPEI' | 'PIX' | 'LBT' | 'MOMO' | 'CHAPS' | 'PAYID' | 'INTERAC' | 'INTERNAL_TRANSFER' | 'CIPS' | 'NEQUI' | 'FPS_UK' | 'FPS_HK' | 'INSTA_PAY' | 'PESONET': Transfer rail: * **BLOCKCHAIN** - Transfer over the public blockchain * **INTERNAL** - Internal transfer within the same account (e.g. sub-accounts or same api key) * **SWIFT** - International wire transfer * **IBAN** - International Bank Account Number transfer * **US_WIRE** - Domestic wire transfer within the United States (e.g. FedWire) * **ACH** - Automated Clearing House transfer, typically takes longer but not as expensive as wire transfers * **SEPA** - Euro transfers within the SEPA zone * **SPEI** - Mexican interbank electronic payment system * **PIX** - Brazilian instant payment system * **LBT** - Local bank transfers * **MOMO** - Mobile money transfers (e.g. M-Pesa) * **CHAPS** - The Clearing House Automated Payment System (CHAPS) is a real-time gross settlement payment system used for transactions in the United Kingdom * **PAYID** - PayID payment identifier system (Australia) * **INTERAC** - Interac electronic funds transfer (Canada) * **INTERNAL_TRANSFER** - Internal transfer between accounts * **CIPS** - Cross-Border Interbank Payment System (China) * **NEQUI** - Nequi mobile payment (Colombia) * **FPS_UK** - UK Faster Payments (GBP) * **FPS_HK** - Hong Kong Faster Payment System (HKD) * **INSTA_PAY** - InstaPay instant payment (Philippines) * **PESONET** - PesoNet batch payment (Philippines)
    - `quoteAssetRail` 'BLOCKCHAIN' | 'INTERNAL' | 'SWIFT' | 'IBAN' | 'US_WIRE' | 'ACH' | 'SEPA' | 'SPEI' | 'PIX' | 'LBT' | 'MOMO' | 'CHAPS' | 'PAYID' | 'INTERAC' | 'INTERNAL_TRANSFER' | 'CIPS' | 'NEQUI' | 'FPS_UK' | 'FPS_HK' | 'INSTA_PAY' | 'PESONET': Transfer rail: * **BLOCKCHAIN** - Transfer over the public blockchain * **INTERNAL** - Internal transfer within the same account (e.g. sub-accounts or same api key) * **SWIFT** - International wire transfer * **IBAN** - International Bank Account Number transfer * **US_WIRE** - Domestic wire transfer within the United States (e.g. FedWire) * **ACH** - Automated Clearing House transfer, typically takes longer but not as expensive as wire transfers * **SEPA** - Euro transfers within the SEPA zone * **SPEI** - Mexican interbank electronic payment system * **PIX** - Brazilian instant payment system * **LBT** - Local bank transfers * **MOMO** - Mobile money transfers (e.g. M-Pesa) * **CHAPS** - The Clearing House Automated Payment System (CHAPS) is a real-time gross settlement payment system used for transactions in the United Kingdom * **PAYID** - PayID payment identifier system (Australia) * **INTERAC** - Interac electronic funds transfer (Canada) * **INTERNAL_TRANSFER** - Internal transfer between accounts * **CIPS** - Cross-Border Interbank Payment System (China) * **NEQUI** - Nequi mobile payment (Colombia) * **FPS_UK** - UK Faster Payments (GBP) * **FPS_HK** - Hong Kong Faster Payment System (HKD) * **INSTA_PAY** - InstaPay instant payment (Philippines) * **PESONET** - PesoNet batch payment (Philippines)
    - `prefunded` boolean: Whether the provider requires the funds to be prefunded on the provider account before the order can execute.
    - `min` string: Minimum amount of the base asset for this pair/side, as a decimal string.
    - `max` string: Maximum amount of the base asset for this pair/side, as a decimal string.
  - `total` integer: Total number of trading pairs matching the query. Best-effort count; may be absent when results are aggregated across multiple providers.
  - `next` string, nullable: A cursor for the next page of results, if available.

## Other responses

- `400`: Bad request: invalid input parameters, malformed request body, or validation failure.
- `401`: Unauthorized. Missing / invalid JWT token in Authorization header.
- `403`: Forbidden: insufficient permissions, disabled feature, or restricted access.
- `429`: Rate limit exceeded: slow down and retry later.
- `5XX`: Internal error while processing the request.
- `default`: Error Response

---

[API](https://skmtc.dev/fireblocks/apis/fireblocks-api.md) - [All operations](https://skmtc.dev/fireblocks/apis/fireblocks-api/llms.txt) - [OpenAPI document](https://skmtc.dev/fireblocks/apis/fireblocks-api/revisions/4eba9965659a?raw)
