# Retrieves swap transaction plan Retrieves a swap transaction plan containing the required transactions that must be signed by the wallet to complete the swap. The wallet must sign each transaction in the order it is returned in the response. For example, the list of transactions may include a first a token approval transaction, and then a swap transaction. Endpoint: POST /public/{address}/swap Version: 1.0.0 ## Path parameters: - `address` (string, required) The wallet address initiating the swap ## Query parameters: - `fromChain` (string) The source token chain. Must be one of the supported chains (Bitcoin, Ethereum, Polygon, Base or Solana) - `fromToken` (string) The source token contract address or ticker symbol. Contract address recommended. - `fromTokenAmount` (string) The desired swap amount, specified in token currency. A value in fromTokenAmount is prioritized over fromTokenAmountUsd. - `fromTokenAmountUsd` (string) The desired swap amount, specified in US Dollars. A value in fromTokenAmount is prioritized over fromTokenAmountUsd. - `toChain` (string) The destination token chain. Must be one of the supported chains (Bitcoin, Ethereum, Polygon, Base or Solana) - `toToken` (string) The destination token contract address or ticker symbol. Contract address recommended. - `toWalletAddress` (string) (Optional) The destination wallet address for the swap funds. Defaults to source address if empty. ## Request fields (application/json): - `duration` (number) - `gas` (string) - `quote` (object) - `quote.integration` (string) - `quote.type` (string) - `quote.bridgeFee` (string) - `quote.bridgeFeeInNativeToken` (string) - `quote.amount` (string) - `quote.decimals` (number) - `quote.amountUSD` (string) - `quote.bridgeFeeUSD` (string) - `quote.bridgeFeeInNativeTokenUSD` (string) - `quote.priceImpact` (string) - `route` (array) - `route.bridge` (string) - `gasUsd` (string) ## Response 200 fields (application/json): - `id` (string) - `type` (string) - `transaction` (object) - `transaction.chainId` (number) - `transaction.to` (string) - `transaction.data` (string) - `transaction.value` (string) - `transaction.gasLimit` (string) ## Response 400 fields