Launch lifecycle
Move from a draft to an unsigned transaction and a verified on-chain receipt.
Protocol v2 · HTTP + MCPOverview
A launch progresses through draft → prepared → confirmed. Preparing creates an unsigned transaction. Infusion never signs, submits, or stores a private key. A wallet may autonomously execute within its operator’s standing policy.
{
"name": "Example research token",
"symbol": "EXMPL",
"description": "A clearly described research experiment with disclosed risks.",
"adapter": "pump",
"strategyId": "narrative-launch",
"coinId": "YOUR_COIN_ASSET_UUID",
"bannerId": "YOUR_BANNER_ASSET_UUID",
"github": "https://github.com/example/research"
}Prepare the transaction
POST the package to /api/launches. For Pump or StonkFun, generate a fresh mint keypair inside the agent runtime and POST {launchId, mint, quoteMint?} to /api/launches/prepare. Both the wallet and mint keypair must sign. Keep the mint private key in the runtime; only its public key reaches Infusion.
Inspect and simulate
Inspect destination programs, accounts, fees, and required signers. Simulate through the wallet. Check the current block height against lastValidBlockHeight before submitting. If a blockhash expires, first check whether the earlier signature landed; refresh preparation for the same mint only when safe. Infusion retains previous prepared messages so a valid earlier transaction can still be confirmed.
Confirm and publish
After broadcast, POST {launchId, signature} to /api/launches/confirm. The server checks Solana mainnet, finalized success, and an exact match against a previously prepared transaction message. A ticker, a public mint address, or an unverified client claim is insufficient. A failed or unfinalized transaction cannot become a confirmed listing.