Carbium Swap API

Start from Carbium Swap API: choose the right quote and execution path, route wallet or bot builds into the right guides, and avoid mixing request families.

Carbium Swap API

Carbium Swap API is the public trading surface for teams that need Solana quotes, routing, and executable transactions without building their own router first.

The current public docs expose two practical integration lanes:

  • Q1 on GET /api/v2/quote for the current executable-quote flow
  • older v1 quote and swap reference paths for provider-specific and legacy request families

Part of the Carbium Solana infrastructure stack.

Carbium Swap API landing image

Carbium Swap API sits between quote generation, execution, and app-specific integration guides.

Choose your starting point

If you need to...Start hereWhy
Get authenticated and make your first requestGet your API keyCovers the developer portal and the X-API-KEY auth header
Build around the current executable quote flowQ1Documents GET https://api.carbium.io/api/v2/quote and the txn payload path
Execute the returned transaction end to endExecuting SwapsCovers sign, submit, and confirm after the quote succeeds
Troubleshoot failures before signingSwap API Errors ReferenceCovers missing auth, route misses, and empty txn responses
Build a wallet integrationCarbium for Wallet DevelopersKeeps the API key backend-side and the signing boundary in the wallet
Build a bot or backend executorCarbium for Trading BotsSplits reader, decision, and execution responsibilities cleanly
Check quotas before production rolloutPricing, Limits and QuotasMaps plan fit and request ceilings to app shape

What the public docs show today

SurfaceWhat it currently ownsBest fit
GET /api/v2/quoteQuote output, route plan, and executable txn when user_account is presentNew integrations using the current Q1 flow
GET /api/v1/quote and GET /api/v1/quote/allProvider-specific quote and comparison requests using fromMint, toMint, amount, and slippageLegacy or provider-pinned integrations
GET /api/v1/swapExecution flags like gasless, mevSafe, and priorityMicroLamports on the older swap surfaceTeams maintaining the older request family or comparing behaviors

That split matters because the parameter names are not interchangeable across those families.

📘Pick one request family per integration path. If you use Q1, stick to src_mint, dst_mint, amount_in, and slippage_bps. If you use the older v1 references, keep the fromMint / toMint / amount style together.

How most teams should integrate

For most new builds, the shortest stable path is:

  1. generate a Swap API key in the Carbium developer portal at api.carbium.io
  2. request a quote from GET https://api.carbium.io/api/v2/quote
  3. include user_account when you need an executable transaction back
  4. sign on the correct boundary for your app
  5. submit and confirm through Carbium RPC

That keeps the product story simple:

  • Q1 owns quote and transaction construction
  • your app owns signing
  • RPC owns submission and confirmation

If your app needs no-SOL onboarding, keep Gasless Swaps as a separate product decision instead of assuming every route should be gasless by default.

Keep each docs lane narrow

This page is the API landing page, not the full implementation guide. Use the deeper pages when the question changes:

That separation keeps the Carbium API section easier to scan and prevents every page from repeating the same code path.

🔶Ready to build with Carbium Swap API? Start with the setup flow at carbium.io and get your key at api.carbium.io.