Skip to main content
The Swap API lets your users exchange tokens within and across chains. Get a quote, review the rate and fees, then execute when ready. Quotes are time-limited, so execute promptly after receiving one.

Get Swappable Assets

GET /swap/assets Returns all tokens that can be used as swap sources or destinations.
cURL
Response

Get Available Routes

GET /swap/routes Returns all valid swap routes — which chain/token pairs can be swapped into which other pairs.
cURL

Get a Quote

POST /swap/quote Request a swap quote. Returns the expected output amount, exchange rate, slippage, and fees.
string
required
The source chain (e.g., ethereum).
string
required
The token to swap from (e.g., USDC).
string
required
The destination chain (e.g., solana).
string
required
The token to swap to (e.g., USDC_SOL).
string
required
Amount to swap, as a decimal string.
string
required
The sender’s address on the source chain.
string
required
The recipient’s address on the destination chain.
Response
Quotes expire after a short window (typically a few minutes). Execute the swap before expires_at.

Execute a Swap

POST /swap/execute Executes a previously quoted swap.
string
required
The quote ID from the /swap/quote response.
string
required
The asset (wallet) ID to debit the source tokens from.
string
required
The destination address to receive the swapped tokens.
Response

Swap History

GET /swap/history Returns a list of past swaps.
number
Number of results to return. Defaults to 20.
number
Offset for pagination. Defaults to 0.
string
Filter by status: processing, completed, failed.
cURL
Response

Swap Statuses

Subscribe to ["*"] or the master_wallet.swap webhook event to get real-time notifications on swap status changes instead of polling the history endpoint.