Skip to main content
POST /launch/sol with platform, wallets, the amounts, token and rpcUrl. The transaction plan is the same on every platform.

Common fields

Unknown fields are ignored.

Pump.fun

platform: "pump" (the default).
  • Quote: quoteMint SOL (default), the USDC mint, or another mint pump.fun allows as a quote. Spell SOL exactly SOL; other tickers are refused.
  • Amounts: a wallet past the end of amounts buys amounts[0], and with no amounts at all every wallet buys 0.01 SOL. Send 0 for a wallet that must not buy. Every buyer after the creator spends a small random amount less than asked (up to 2%), so the buys do not look identical.
  • Slippage: each buy is an exact-token buy with a quote cap of slippageBps above its price (default 99%).
  • Mayhem Mode: mayhem: true (or mayhemMode, pumpType). Only with a SOL or USDC quote.
  • Holder rewards: holderReward: true creates a coin whose creator fee goes to holders (permanent).
  • Flat creator fee: creatorFeeBps, up to the maximum pump.fun’s program allows (300 bps at the time of writing).
  • Cashback coins are deprecated: cashBack: true is refused.
  • Display creator: offchainCreator sets the creator shown on pump.fun, only on a launch with no buy.
The answer carries mint, transactions and legs.

Raydium LaunchLab

platform: "raydium" (or letsbonk, launchlab) builds a LetsBonk coin quoted in SOL. Choose another platform config with bonkType: Or pass the config address as platformConfig. platform: "usd1" is the same builder quoted in USD1.
platform: "bonk" alone is refused with 400 unknown bonkType "bonk". Use raydium or letsbonk, with bonkType for the other platforms.
The service checks the curve against the launchpad’s live rules (minimum raise, sell rate, supply) and the creator’s SOL balance before building, and refuses with 502 and the reason. A buyer whose turn comes after the raise is full is refused too. A wallet with no amount simply does not buy. The answer adds pool, the LaunchLab pool of the new mint.

Meteora DBC through Bags

platform: "meteora" (or bags) launches through Bags, in two calls. The service needs a Bags API key in its environment (BAGS_API_KEY); a self-hosted service needs its own.
1

Provision

The first call (no feeShareConfigKey) reserves a …BAGS mint on Bags (irreversible) and answers mint, config, metadataUri and stages: the fee-share config transactions. Sign and land them.
2

Launch

Call again with feeShareConfigKey (the config from step 1), mintPubkey (the reserved mint) and token.metadataUri. The answer is the launch: Bags’ transaction first (v0, partly signed by Bags), then one v1 buy per other wallet.
  • SOL quote only. Every wallet after the creator must buy a non-zero amount.
  • feeClaimers: up to 15 { provider, username, bps } (providers twitter, tiktok, kick, github, instagram, onlyfans, solana) sharing the creator fee; the creator keeps the rest.
  • A Jito tip needs at least one buy transaction to ride on.