Skip to main content
POST
Manage pump.fun creator-fee sharing config

Authorizations

apiKey
string
query
required

Body

application/json

Manage pump.fun creator-fee sharing config. Supports action ∈ {status, setup, create, update, reset}; status is a read-only query.

action
enum<string>
required
Available options:
status,
setup,
create,
update,
reset
wallet
string
required
mint
string
required
pool
string
shareholders
object[]
currentShareholders
string[]
donationConfigIds
string[]

Charity fee-share (pump.fun / donate.gg). Each entry is a mint-agnostic donate.gg configId; the server prepends an idempotent create_donation_fee_pda leg for it before writing the sharing config.

The recipient you list in shareholders is not the configId — it is the per-mint escrow PDA derived from it, seeds ["donation-fee-pda", mint, configId] under the fee program pfeeUxB6jkeY1Hxd7CsFCAjcbHA9rWtchMGdZ6VojVZ. Listing the bare configId instead makes pump.fun render the recipient as a truncated wallet rather than the charity's name.

newAdmin
string
feeTipLamports
integer
tipWallet
string

Custom tip recipient wallet (defaults to the Raze relay tip wallet).

tipLamports
integer

Flat tip in lamports, floored at 100000. Takes precedence over feeTipLamports.

feeWallet
string

Custom fee recipient wallet. Only charged together with feeBps.

feeBps
integer

Percentage fee in basis points of the SOL volume this endpoint moves, sent to feeWallet. Endpoints with no SOL volume charge nothing.

encoding
enum<string>
Available options:
base64,
base58
simulate
boolean

Response

200 - application/json

Response envelope (currently always success: false)

Shared envelope for every /utils/sol/* write endpoint. Optional fields are omitted from the JSON when unset.

success
boolean
required
transactions
string[]

Serialized partially-signed transactions in submission order.

batches
object[]

For batch endpoints (transfer, burn): packing metadata. batches[i] describes transactions[i].

mint
string

Set by /utils/sol/launch — the mint of the launched token.

platform
string

Set by /utils/sol/launch and /utils/sol/fees/claim.

stages
object[]

Set by /utils/sol/launch when the launch needs preparatory transactions (today: creating an address lookup table for a many-wallet bundle). Submit each stage, in order, as its own bundle before transactions; a stage with waitForActivation: true must also be given a slot to activate (~10 s for a new lookup table) or the main bundle cannot resolve its addresses.

lookupTableAddress
string

Set by /utils/sol/launch when a lookup table was created for the bundle — the address the stage transaction provisions.

pool
string

Venue pool/curve address, returned by launches that derive one up front (bonk, bags). Absent on pumpfun, whose bonding curve is derivable from the mint alone.

config
string

Venue config account, when the venue keys its curve on one. Present on bags: the Meteora DBC PoolConfig the launch runs against. You need it to build any later swap of your own, it is not derivable from the mint — and on a provisioning response it is the feeShareConfigKey to pass on the follow-up call, together with the returned mint and metadataUri (the config belongs to that mint only — see feeShareConfigKey).

feeClaimer
string

bags launches: where the config sends the token's trading fees — the fee_claimer frozen in the on-chain PoolConfig. Echoed for your records; you do not have to police it, since the server only lets you launch against the config provisioned for your own mint (see feeShareConfigKey).

metadataUri
string

bags provisioning responses: the reserved mint's metadata URI. Pass it back as token.metadataUri (with mintPubkey = the returned mint) on the follow-up launch call.

isAdvancedMode
boolean

Set by /utils/sol/launch — true when the wallet count pushed the launch onto the multi-stage / lookup-table path.

status
object

Set by /utils/sol/fees/config for action=status reads.

simulations
object[]

Set when the request had simulate: true. One entry per built tx, in the same order as transactions. Each entry is the RPC simulateTransaction value object (logs / unitsConsumed / err).

error
string