Atomic buy → sell round-trip
SOL → token → SOL on the same mint, both legs in one transaction.
The sell leg is chained onto the buy leg’s slippage floor, so it can never overdraw what the buy actually delivered; the two ATA creations are merged and the wSOL account is closed once at the end. Either the whole round-trip lands or nothing does — there is no state where the buy filled and the sell didn’t.
The platform feeBps (when set) is charged once, off-chain, on
buy_notional + sell_notional SOL volume: both CPI legs run at
fee_bps = 0, and when tip and fee go to the same wallet they collapse
into a single transfer instruction. Quote mint is SOL.
Errors answer HTTP 200 with success:false and an error string.
Headers
API key for authenticated access (alternative to Authorization header)
Bearer sk_... — alternative to X-API-Key
Body
SOL → token → SOL atomic round-trip on the SAME mint, both legs in one transaction. The sell leg is chained onto the buy leg's slippage floor, so it can never overdraw what the buy actually delivered.
1The mint bought and sold back.
Uniform SOL amount per wallet for the buy leg. Required if amounts not provided.
0.1
Per-wallet SOL amounts for the buy leg (takes precedence over solAmount).
0 <= x <= 10000Priority fee per transaction in lamports.
Tip in lamports. Public — min 0.001 SOL (1000000 lamports) enforced.
x >= 1000000Custom tip recipient wallet (auth only).
Custom tip amount in lamports (auth only).
Custom fee recipient wallet (auth only).
Custom fee in basis points (auth only). Charged ONCE, off-chain, on
buy_notional + sell_notional SOL volume — both CPI legs run at
fee_bps = 0, and tip + fee to the same wallet collapse into a
single transfer instruction.
Append the JITO_DONT_FRONT marker. Only safe for a single non-bundled tx.
1 <= x <= 3Only route through these DEXes (array or CSV). Applies to both legs.
Never route through these DEXes. Wins over includeDex.
base58, base64 Response
Transactions generated — or success:false with error when the
request is invalid or no route could be built.
true
Unsigned transactions ready to be signed and submitted
Per-tx built output amount (raw), index-aligned with transactions;
null where no route was found for that wallet. This is what the
transaction actually delivers (its on-chain min_return) — it can sit
below the amountOut a prior /quote returned when the best-priced
plan didn't fit the wire and a lower-output alternative was served.
