HTTP API · Discovery
List chains
Every chain SwapsPro can quote, with its CAIP-2 id and whether it can be sold from.
curl "https://www.swaps.pro/api/sdk/v1/chains"The list is static per deploy and cached for an hour at the edge. Read it once per session and build your pair selector from it; do not discover chains by getting errors back from /quote.
sellSupported: false means the chain can only be a destination. Solana is the only such chain today: SwapsPro has no SVM signer, so there is nothing to hand a caller that would let their user sell from it.
Parameters#
None. The response depends on nothing you send.
Responses#
Success is the body below. Every error is { "error": string, "code": string } with a matching HTTP status — never a 200 that says no.
When: always.
{
"chains": [
{
"id": "ETH",
"name": "Ethereum",
"nativeSymbol": "ETH",
"caip2": "eip155:1",
"type": "evm",
"sellSupported": true,
"chainId": 1
},
{
"id": "BTC",
"name": "Bitcoin",
"nativeSymbol": "BTC",
"caip2": "bip122:000000000019d6689c085ae165831e93",
"type": "utxo",
"sellSupported": true
},
{
"id": "BASE",
"name": "Base",
"nativeSymbol": "ETH",
"caip2": "eip155:8453",
"type": "evm",
"sellSupported": true,
"chainId": 8453
},
{
"id": "BSC",
"name": "BNB Smart Chain",
"nativeSymbol": "BNB",
"caip2": "eip155:56",
"type": "evm",
"sellSupported": true,
"chainId": 56
},
{
"id": "AVAX",
"name": "Avalanche",
"nativeSymbol": "AVAX",
"caip2": "eip155:43114",
"type": "evm",
"sellSupported": true,
"chainId": 43114
},
{
"id": "ARB",
"name": "Arbitrum",
"nativeSymbol": "ETH",
"caip2": "eip155:42161",
"type": "evm",
"sellSupported": true,
"chainId": 42161
},
{
"id": "RHD",
"name": "Robinhood Chain",
"nativeSymbol": "ETH",
"caip2": "eip155:4663",
"type": "evm",
"sellSupported": true,
"chainId": 4663
},
{
"id": "BCH",
"name": "Bitcoin Cash",
"nativeSymbol": "BCH",
"caip2": "bip122:000000000000000000651ef99cb9fcbe",
"type": "utxo",
"sellSupported": true
},
{
"id": "LTC",
"name": "Litecoin",
"nativeSymbol": "LTC",
"caip2": "bip122:12a765e31ffd4059bada1e25190f6e98",
"type": "utxo",
"sellSupported": true
},
{
"id": "DOGE",
"name": "Dogecoin",
"nativeSymbol": "DOGE",
"caip2": "bip122:1a91e3dace36e2be3bf030a65679fe82",
"type": "utxo",
"sellSupported": true
},
{
"id": "GAIA",
"name": "Cosmos",
"nativeSymbol": "ATOM",
"caip2": "cosmos:cosmoshub-4",
"type": "cosmos",
"sellSupported": true
},
{
"id": "THOR",
"name": "THORChain",
"nativeSymbol": "RUNE",
"caip2": "cosmos:thorchain-mainnet-v1",
"type": "cosmos",
"sellSupported": true
},
{
"id": "SOL",
"name": "Solana",
"nativeSymbol": "SOL",
"caip2": "solana:5eykt4UsFv8P8NJdTREpY1vzqKqZKvdp",
"type": "svm",
"sellSupported": false
},
{
"id": "HIVE",
"name": "Hive",
"nativeSymbol": "HIVE",
"caip2": "hive:mainnet",
"type": "hive",
"sellSupported": true
}
]
}Fields worth knowing#
| Field | Meaning |
|---|---|
id | SwapsPro chain symbol; accepted anywhere a chain is a parameter |
caip2 | CAIP-2 network id, e.g. eip155:8453 |
type | evm · utxo · cosmos · hive · svm |
chainId | numeric EIP-155 id; EVM chains only |
sellSupported | false when the chain can only be a destination |
For agents#
The brief below is what Copy for agents puts on the clipboard: the parameters, one example, the 200 body and the rules. It is Markdown, and it is short on purpose — everything in it is load-bearing.
- Use
id(e.g. BASE) orchainId(e.g. 8453) as the sellChain/buyChain value on /quote; both resolve. - A chain with
sellSupported: falsemay appear as buyChain only.
