Skip to main content

Overview

Receives a user-signed transaction from /launch, adds the protocol’s signature, and submits the complete transaction to the Solana blockchain to finalize the token launch.
curl -X POST https://api.zcombinator.io/confirm-launch \
  -H "Content-Type: application/json" \
  -d '{
    "signedTransaction": "4MzR7dxJNJRVP1Q6k7Y3j8X...",
    "baseMint": "EPjFWdd5AufqSSqeM2qN1xzybapC8G4wEGGkZwyTDt1v",
    "metadataUrl": "https://gateway.pinata.cloud/ipfs/QmX7Y3j8...",
    "name": "My Token",
    "symbol": "MTK",
    "payerPublicKey": "9WzDXwBbmkg8ZTbNMqUxvQRAyrZzDsGYdLVL9zYtAWWM"
  }'

Request Parameters

signedTransaction
string
required
Base58 encoded transaction signed by the user’s wallet
baseMint
string
required
Token mint address returned from /launch
name
string
required
Token name (must match the value used in /launch)
symbol
string
required
Token symbol (must match the value used in /launch)
payerPublicKey
string
required
Public key of the transaction payer (must match the value used in /launch)
metadataUrl
string
Metadata URL returned from /launch (optional but recommended)

Response

success
boolean
Indicates if the operation was successful
transactionSignature
string
The Solana transaction signature/hash
baseMint
string
The confirmed token mint address
metadataUrl
string
The metadata URL for the token
confirmation
object
Blockchain confirmation details

Success Response

{
  "success": true,
  "transactionSignature": "5VfYiDvQMBSWxKJLa9NLPQ1x3...",
  "baseMint": "EPjFWdd5AufqSSqeM2qN1xzybapC8G4wEGGkZwyTDt1v",
  "metadataUrl": "https://gateway.pinata.cloud/ipfs/QmX7Y3j8...",
  "confirmation": {
    "slot": 123456789,
    "confirmationStatus": "confirmed"
  }
}

Error Responses

{
  "error": "Missing required fields"
}
{
  "error": "Token keypair not found. Please call /launch first."
}
This occurs when:
  • Too much time has passed since calling /launch
  • Invalid baseMint provided
{
  "error": "Failed to confirm launch"
}
This can occur due to:
  • Network congestion
  • Insufficient funds for transaction fees
  • Invalid transaction signature
  • Blockchain errors

Process Flow

This endpoint completes the two-phase token launch process:
1

Retrieve Keypair

Fetches the stored token keypair using the provided baseMint
2

Deserialize Transaction

Converts the Base58 signed transaction back to a Solana Transaction object
3

Add Protocol Signature

Signs the transaction with the protocol’s token keypair (mint authority)
4

Submit to Blockchain

Sends the fully signed transaction to the Solana network
5

Wait for Confirmation

Monitors the transaction until it’s confirmed on-chain
6

Record Launch

Stores the successful launch for the claims system
7

Cleanup

Removes the temporary keypair after successful launch

Rate Limiting

This endpoint is subject to rate limiting:
  • 8 requests per IP per 2-minute window
  • Returns HTTP 429 when limit exceeded

Security Notes

Important Security Considerations:
  • The transaction must be signed by the same wallet used in /launch
  • Protocol adds the final signature but users maintain control of their funds
  • Token keypairs are automatically cleaned up after successful launch
  • All launches are recorded for audit trails

After Launch

Once your token is successfully launched:
  1. Verify Creation: Use /verify-token to confirm
  2. Check Claims: View eligibility with /claims/:tokenAddress
  3. Monitor Health: Use /health for system status

Transaction Signature

The returned transactionSignature can be used to:
  • View the transaction on Solana explorers
  • Verify the token creation on-chain
  • Track the transaction status
  • Provide proof of launch to users
Example Solana Explorer URL:
https://explorer.solana.com/tx/${transactionSignature}
I