A route defines a directional link between two tokens on two different chains: a source token (referred to as the ad token ) and a destination token (referred to as the order token ). When a Maker creates a liquidity ad, they select a route that determines which tokens they are providing liquidity for. When a Bridger creates a trade, they select an ad whose route matches their desired transfer.
Routes are read-only through the public API. Only administrators can register new routes.
Use routes to populate your token-pair selection UI. Filter by adChainId and orderChainId to show the routes available between two specific chains.
GET /v1/routes
List available cross-chain routes with optional filters. Returns a paginated list.
Query parameters
Filter by source token UUID. Returns only routes where the ad token matches.
Filter by destination token UUID. Returns only routes where the order token matches.
Filter by the source chain ID (e.g., "11155111" for Ethereum Sepolia, "1000001" for Stellar Testnet).
Filter by the destination chain ID (e.g., "11155111" for Ethereum Sepolia).
Filter by token symbol. Returns routes where either token matches the symbol (e.g., "USDC").
Pagination cursor from a previous response’s nextCursor field.
Number of results per page. Between 1 and 100.
Response fields
Cursor for the next page. null when you have reached the last page.
{
"data" : [
{
"id" : "123e4567-e89b-12d3-a456-426614174000" ,
"metadata" : {},
"createdAt" : "2026-01-10T00:00:00.000Z" ,
"updatedAt" : "2026-01-10T00:00:00.000Z" ,
"adToken" : {
"id" : "d290f1ee-6c54-4b01-90e6-d701748f0851" ,
"symbol" : "wETH" ,
"name" : "Wrapped ETH" ,
"address" : "CAXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX" ,
"decimals" : 18 ,
"kind" : "SEP41" ,
"chain" : {
"id" : "f47ac10b-58cc-4372-a567-0e02b2c3d479" ,
"name" : "Stellar Testnet" ,
"chainId" : "1000001"
}
},
"orderToken" : {
"id" : "d290f1ee-6c54-4b01-90e6-d701748f0852" ,
"symbol" : "ETH" ,
"name" : "Ethereum" ,
"address" : "0x0000000000000000000000000000000000000000" ,
"decimals" : 18 ,
"kind" : "NATIVE" ,
"chain" : {
"id" : "a3bb189e-8bf9-3888-9b8c-4c2e38a29afc" ,
"name" : "Ethereum Sepolia" ,
"chainId" : "11155111"
}
}
}
],
"nextCursor" : null
}
GET /v1/routes/:id
Retrieve full details for a single route by its UUID.
Path parameters
UUID of the route to retrieve.
Returns a single Route object .
{
"id" : "123e4567-e89b-12d3-a456-426614174000" ,
"metadata" : {},
"createdAt" : "2026-01-10T00:00:00.000Z" ,
"updatedAt" : "2026-01-10T00:00:00.000Z" ,
"adToken" : {
"id" : "d290f1ee-6c54-4b01-90e6-d701748f0851" ,
"symbol" : "wETH" ,
"name" : "Wrapped ETH" ,
"address" : "CAXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX" ,
"decimals" : 18 ,
"kind" : "SEP41" ,
"chain" : {
"id" : "f47ac10b-58cc-4372-a567-0e02b2c3d479" ,
"name" : "Stellar Testnet" ,
"chainId" : "0"
}
},
"orderToken" : {
"id" : "d290f1ee-6c54-4b01-90e6-d701748f0852" ,
"symbol" : "ETH" ,
"name" : "Ethereum" ,
"address" : "0x0000000000000000000000000000000000000000" ,
"decimals" : 18 ,
"kind" : "NATIVE" ,
"chain" : {
"id" : "a3bb189e-8bf9-3888-9b8c-4c2e38a29afc" ,
"name" : "Ethereum Sepolia" ,
"chainId" : "11155111"
}
}
}
Route object fields
Arbitrary metadata associated with the route (may be an empty object).
ISO 8601 timestamp of when the route was registered.
ISO 8601 timestamp of the last update.
The source token for this route. Token symbol (e.g., "USDC").
Full token name (e.g., "USD Coin").
Token contract address on its chain.
Number of decimal places (e.g., 6 for USDC, 18 for ETH).
Token standard: "ERC20", "NATIVE", "SAC", or "SEP41".
Chain information: id (UUID), name (display name), chainId (numeric chain ID string).
The destination token for this route. Same structure as adToken.