Skip to main content
POST
Prepare a launch and get its unsigned transactions

Body

application/json

The request fields in exactly this key order, plus signatureBase64 (optional: ed25519 over the message described in the Launch a coin guide; a signature that is sent must be valid) and unsigned options.

deploymentId
string
required
owner
string
required

Base58 Solana address.

Pattern: ^[1-9A-HJ-NP-Za-km-z]{32,44}$
Example:

"So11111111111111111111111111111111111111112"

baseMint
string
required

Public key of a mint keypair the client generates and keeps.

Pattern: ^[1-9A-HJ-NP-Za-km-z]{32,44}$
Example:

"So11111111111111111111111111111111111111112"

quoteMint
string
required

Base58 Solana address.

Pattern: ^[1-9A-HJ-NP-Za-km-z]{32,44}$
Example:

"So11111111111111111111111111111111111111112"

config
string
required

Public key of a config keypair the client generates; it signs only when no shared config exists.

Pattern: ^[1-9A-HJ-NP-Za-km-z]{32,44}$
Example:

"So11111111111111111111111111111111111111112"

mode
enum<string>
required

standard coins are paired with SOL only (quoteMint So11111111111111111111111111111111111111112); rewards coins may use any supported pair token.

Available options:
standard,
rewards
metadataId
string
required
Pattern: ^[a-f0-9]{64}$
metadataNamespace
string
required
Pattern: ^[a-f0-9]{24}$
firstBuy
string
required

Creator's initial buy in quote-token atoms; "0" for none.

Pattern: ^[0-9]{1,20}$
Example:

"1000000"

issuedAt
integer
required
signatureBase64
string

Optional wallet signature over the preparation message.

options
object

Response

Prepared launch.

status
any
required
deploymentId
string
required
owner
string
required

Base58 Solana address.

Pattern: ^[1-9A-HJ-NP-Za-km-z]{32,44}$
Example:

"So11111111111111111111111111111111111111112"

baseMint
string
required

Base58 Solana address.

Pattern: ^[1-9A-HJ-NP-Za-km-z]{32,44}$
Example:

"So11111111111111111111111111111111111111112"

quoteMint
string
required

Base58 Solana address.

Pattern: ^[1-9A-HJ-NP-Za-km-z]{32,44}$
Example:

"So11111111111111111111111111111111111111112"

mode
enum<string>
required
Available options:
standard,
rewards
config
string
required

Base58 Solana address.

Pattern: ^[1-9A-HJ-NP-Za-km-z]{32,44}$
Example:

"So11111111111111111111111111111111111111112"

configSource
enum<string>
required
Available options:
shared,
creator
pool
string
required

Base58 Solana address.

Pattern: ^[1-9A-HJ-NP-Za-km-z]{32,44}$
Example:

"So11111111111111111111111111111111111111112"

firstBuy
string
required

Integer token amount in atoms (the token's smallest unit), as a decimal string. One whole token is 10^decimals atoms.

Pattern: ^[0-9]{1,20}$
Example:

"1000000"

metadata
object
required
configInstructionBase64
string
required
transactionCount
enum<integer>
required
Available options:
1,
2
costs
object
required

Rent the creator locks when the launch lands, in lamports (network and priority fees are separate). configRent is "0" when a shared config already exists. firstBuyRent is the token account an initial buy creates: included in poolRent and totalRent only when the launch has an initial buy (prepare knows its firstBuy; an estimate does not, so add firstBuyRent to an estimate for a launch with an initial buy). Every coin is a Token-2022 mint with its metadata in the mint: no metadata account or metadata fee. Rent uses the network's current rate.

transactions
object | null
required
configCreationSignature
string | null

For a shared config: the transaction that created it (informational). Verify a shared config by comparing its account with a simulation of the expected config instruction.

Pattern: ^[1-9A-HJ-NP-Za-km-z]{64,88}$
quoteTokenProgram
string

Base58 Solana address.

Pattern: ^[1-9A-HJ-NP-Za-km-z]{32,44}$
Example:

"So11111111111111111111111111111111111111112"

tokenBadge
string | null

Base58 Solana address.

Pattern: ^[1-9A-HJ-NP-Za-km-z]{32,44}$
Example:

"So11111111111111111111111111111111111111112"

serverTime
integer
validUntil
integer

Server time until which this prepared draft can be signed and submitted: 120 seconds after this prepare call (earlier only if the stored pair-token price would become too old). Preparing again is free and returns the same terms until the weekly price refresh.

economics
object

The launch terms the config encodes.

firstBuyQuote
object | null