Body
application/json
- Allow a custom payer to pay for the transaction fees and rent of token accounts
- Note that users can close their ATAs elsewhere and have you reopen them again, your fees should account for this
- To automatically wrap/unwrap SOL in the transaction, as WSOL is an SPL token while native SOL is not
- When true, it will strictly use SOL amount to wrap it to swap, and each time after you swap, it will unwrap all WSOL back to SOL
- When false, it will strictly use WSOL amount to swap, and each time after you swap, it will not unwrap the WSOL back to SOL
- To set this parameter to false, you need to have the WSOL token account initialized
- Parameter will be ignored if
destinationTokenAccount
is set because thedestinationTokenAccount
may belong to a different user that we have no authority to close
- The default is determined dynamically by the routing engine, allowing us to optimize for compute units, etc
- This enables the usage of shared program accounts, this is essential as complex routing will require multiple intermediate token accounts which the user might not have
- If true, you do not need to handle the creation of intermediate token accounts for the user
- Do note, shared accounts route will fail on some new AMMs (low liquidity token)
- An initialized token account that will be used to collect fees
- The mint of the token account can only be either the input or output mint of the swap
- Swap API no longer requires the use of the Referral Program
- If
platformFeeBps
is passed in/quote
, thefeeAccount
must be passed as well
- Specify any public key that belongs to you to track the transactions
- Useful for integrators to get all the swap transactions from this public key
- Query the data using a block explorer like Solscan/SolanaFM or query like Dune/Flipside
- To specify a level or amount of additional fees to prioritize the transaction
- It can be used for EITHER priority fee OR Jito tip (not both at the same time)
- If you want to include both, you will need to use
/swap-instructions
to add both at the same time - Defaults to
auto
, but preferred to usepriorityLevelWithMaxLamports
as it may be more accurate when accounting local fee market - Fixed lamports can be passed in as an integer in the
prioritizationFeeLamports
parameter
- priorityLevelWithMaxLamports
- jitoTipLamports
- jitoTipLamportsWithPayer
- Builds a legacy transaction rather than the default versioned transaction
- Used together with
asLegacyTransaction
in/quote
, otherwise the transaction might be too large
- Public key of a token account that will be used to receive the token out of the swap
- If not provided, the signer's token account will be used
- If provided, we assume that the token account is already initialized
- When enabled, it will do a swap simulation to get the compute unit used and set it in ComputeBudget's compute unit limit
- This incurs one extra RPC call to simulate this
- We recommend to enable this to estimate compute unit correctly and reduce priority fees needed or have higher chance to be included in a block
- When enabled, it will not do any additional RPC calls to check on required accounts
- The returned swap transaction will still attempt to create required accounts regardless if it exists or not
- When enabled, it estimates slippage and apply it in the swap transaction directly, overwriting the
slippageBps
parameter in the quote response. - This is no longer maintained, we are focusing efforts on RTSE on Ultra Swap API
- To use an exact compute unit price to calculate priority fee
computeUnitLimit (1400000) * computeUnitPriceMicroLamports
- We recommend using
prioritizationFeeLamports
anddynamicComputeUnitLimit
instead of passing in your own compute unit price
- Pass in the number of slots we want the transaction to be valid for
- Example: If you pass in 10 slots, the transaction will be valid for ~400ms * 10 = approximately 4 seconds before it expires
Response
200 - application/json
Successful response
- If you set jito tips using the
prioritizationFeeLamports
parameter, you will see a custom tip instruction to Jito here.
- To setup the compute budget for the transaction.
- To setup required token accounts for the users.
- The actual swap instruction.
- The lookup table addresses if you are using versioned transaction.
- To wrap and unwrap the SOL.