Read-Only Solana Swap Quote
Fetch a current Jupiter route quote for Solana token mints and a base-unit amount. This does not sign or broadcast a transaction.
Preview request
The preview path is rate-limited and does not charge. It executes the live source and returns the paid response shape while withholding decision-ready values. Production requests use the same parameters and return a standard x402 challenge when no payment signature is present.
curl --request POST \
"https://ai-data-marketplace-1042299154756.us-central1.run.app/api/v1/solana_route?preview=true" \
--header "content-type: application/json" \
--data '{"input_mint":"So11111111111111111111111111111111111111112","output_mint":"EPjFWdd5AufqSSqeM2qN1xzybapC8G4wEGGkZwyTDt1v","amount":1000000000,"slippage_bps":50}'Input contract
| Parameter | Type | Required | Description |
|---|---|---|---|
input_mint | string | Yes | Mint address of the token to sell. |
output_mint | string | Yes | Mint address of the token to buy. |
amount | integer | Yes | Amount of input token in its native decimals. |
slippage_bps | integer | No | Maximum allowed slippage in basis points. |
Example deliverable
This is the documented response shape, not a promise that live values will match the example. The paid request returns current or declared-source results using the same contract.
{
"success": true,
"source": "Jupiter Lite Quote API",
"source_url": "https://dev.jup.ag/api-reference/swap/quote",
"fetched_at": "2026-08-07T07:32:33.864Z",
"broadcast": false,
"quote": {
"inputMint": "So11111111111111111111111111111111111111112",
"inAmount": "1000000000",
"outputMint": "EPjFWdd5AufqSSqeM2qN1xzybapC8G4wEGGkZwyTDt1v",
"outAmount": "72902805",
"otherAmountThreshold": "72538291",
"swapMode": "ExactIn",
"slippageBps": 50,
"platformFee": null,
"priceImpactPct": "0.0000002801916015918941761007",
"routePlan": [
{
"swapInfo": {
"ammKey": "65ZHSArs5XxPseKQbB1B4r16vDxMWnCxHMzogDAqiDUc",
"label": "SolFi V2",
"inputMint": "So11111111111111111111111111111111111111112",
"outputMint": "EPjFWdd5AufqSSqeM2qN1xzybapC8G4wEGGkZwyTDt1v",
"inAmount": "1000000000",
"outAmount": "72902805",
"updateContextSlot": "437745999"
},
"percent": 100,
"bps": null
}
],
"contextSlot": 437745999,
"timeTaken": 0.001260747,
"swapUsdValue": "72.8749804747025",
"mostReliableAmmsQuoteReport": {
"info": {
"Czfq3xZZDmsdGdUyrNLtRhGc47cXcZtLG4crryfu44zE": "72899162",
"BZtgQEyS6eXUXicYPHecYQ7PybqodXQMvkjUbP4R8mUU": "72889816"
}
},
"longtailMarketQuoteReport": null,
"useIncurredSlippageForQuoting": null,
"useRewards": null,
"otherRoutePlans": null,
"loadedLongtailToken": false,
"instructionVersion": null
},
"marketplace_metadata": {
"data_mode": "live_source",
"billable": true,
"availability": "operational",
"source": "Jupiter Lite Quote API"
}
}Purchase decision
Buy when: the active task needs this product's structured result, its declared source and freshness are sufficient, and 0.03 USDC is within the buyer's authorized per-request limit.
Skip when: a cached result is sufficient, the source or fields do not satisfy the task, or the buyer has not authorized payment. Do not bypass wallet, budget, or user-approval policy.
Guaranteed response metadata
Every successful product response identifies how the result was produced. Product-specific output fields are documented in the paid OpenAPI contract. The preview proves the live source and field types without returning the paid values.
{
"marketplace_metadata": {
"data_mode": "live_source",
"billable": true,
"availability": "operational",
"source": "Jupiter Lite Quote API"
}
}Agent payment flow
Fast path: install the public MCP package, configure a dedicated low-balance Base buyer wallet and a maximum per-request spend, then call this tool with auto_pay: true. The client handles the challenge, local signature, settlement, and retry in one tool call.
npx -y dopaminedesk-ai-data-marketplace-mcp
X402_AUTO_PAY=true
X402_EVM_PRIVATE_KEY=<dedicated buyer wallet key>
X402_MAX_PAYMENT_USDC=0.25
tool input: { "auto_pay": true }Manual path: request the product, read the base64 PAYMENT-REQUIRED challenge, sign with any compatible x402 v2 client, and retry with PAYMENT-SIGNATURE. A successful response includes PAYMENT-RESPONSE.