Reclaim rent from empty token accounts and close eligible Pump.fun/PumpSwap accumulators in one call. This is the recommended non-destructive cleanup path for wallet integrations.
Core burn, close, batch, and transaction relay endpoints require x-api-key (or Authorization bearer). Public routes include GET /, POST /api-keys/generate, and discovery/docs endpoints like /openapi.json. MCP OAuth metadata/endpoints are also public (/.well-known/oauth-*, /register, /oauth/authorize, /oauth/token).
Required Header
http
x-api-key: YOUR_API_KEY
Burn Endpoints
Burn tokens and NFTs. Supports SPL tokens, Token-2022, Metaplex NFTs, editions, pNFTs, and MPL Core assets.
POST/burn
Build a serialized burn transaction for the user to sign and send.
Parameter
Type
Required
Default
Description
userPublicKey
string (base58)
Yes
-
The wallet public key of the user initiating the action.
assetId
string (base58)
Yes
-
Mint address or token account address. For mint input, the API resolves to exactly one owned token account when required.
feePayer
string (base58)
No
userPublicKey
Public key of the account that pays transaction fees. Defaults to the userPublicKey when omitted.
autoCloseTokenAccounts
boolean
No
true
When true, automatically closes eligible associated token accounts after burning or selling, reclaiming their rent.
priorityFeeMicroLamports
integer
No
auto-estimated
Priority fee in micro-lamports to include with the transaction. When omitted the API auto-estimates an appropriate value.
asLegacyTransaction
boolean
No
false
When true, returns a legacy transaction instead of a versioned (v0) transaction.
burnAmount
string | number
No
all tokens
The amount of tokens to burn. When omitted, the entire token balance is burned.
partnerFeeAccount
string (base58)
No
-
Public key of the partner account that receives a share of the reclaimed SOL. Must be provided together with partnerFeeBps.
partnerFeeBps
integer (0-9800)
No
-
Fee share in basis points (0-9800) directed to the partnerFeeAccount. Must be provided together with partnerFeeAccount.
referralCode
string
No
-
2-20 lowercase alphanumeric characters. Accepted on all core burn/sell/close POST endpoints (including preview/summary where available). Referrers receive 20% of future protocol fees from referred wallets for life. If a wallet already used another referral code, the API will not reassign it. Create and claim rewards at https://sol-incinerator.com/rewards. Mutually exclusive with partnerFeeAccount/partnerFeeBps.
Serialized transaction for the user to sign and send.
lamportsReclaimed
integer
Lamports reclaimed from closed token accounts.
solanaReclaimed
number
SOL equivalent of lamportsReclaimed.
transactionType
string
Operation type: TOKEN_BURN, METAPLEX_BURN, TOKEN_2022_BURN, METAPLEX_CORE_BURN, etc.
isDestructiveAction
boolean
True if the operation destroys an asset with potential market value.
POST/burn/preview
Preview fees, reclaim amounts, and asset info before signing a burn transaction.
Parameter
Type
Required
Default
Description
userPublicKey
string (base58)
Yes
-
The wallet public key of the user initiating the action.
assetId
string (base58)
Yes
-
Mint address or token account address. For mint input, the API resolves to exactly one owned token account when required.
feePayer
string (base58)
No
userPublicKey
Public key of the account that pays transaction fees. Defaults to the userPublicKey when omitted.
autoCloseTokenAccounts
boolean
No
true
When true, automatically closes eligible associated token accounts after burning or selling, reclaiming their rent.
priorityFeeMicroLamports
integer
No
auto-estimated
Priority fee in micro-lamports to include with the transaction. When omitted the API auto-estimates an appropriate value.
asLegacyTransaction
boolean
No
false
When true, returns a legacy transaction instead of a versioned (v0) transaction.
burnAmount
string | number
No
all tokens
The amount of tokens to burn. When omitted, the entire token balance is burned.
partnerFeeAccount
string (base58)
No
-
Public key of the partner account that receives a share of the reclaimed SOL. Must be provided together with partnerFeeBps.
partnerFeeBps
integer (0-9800)
No
-
Fee share in basis points (0-9800) directed to the partnerFeeAccount. Must be provided together with partnerFeeAccount.
referralCode
string
No
-
2-20 lowercase alphanumeric characters. Accepted on all core burn/sell/close POST endpoints (including preview/summary where available). Referrers receive 20% of future protocol fees from referred wallets for life. If a wallet already used another referral code, the API will not reassign it. Create and claim rewards at https://sol-incinerator.com/rewards. Mutually exclusive with partnerFeeAccount/partnerFeeBps.
Operation type: METAPLEX_BURN, TOKEN_BURN, TOKEN_2022_BURN, etc.
lamportsReclaimed
integer
Estimated lamports to reclaim.
solanaReclaimed
number
SOL equivalent of lamportsReclaimed.
isDestructiveAction
boolean
True if the operation would destroy an asset with potential value.
assetInfo
object
Asset details including tokenAccount, mintAddress, programId, isMetaplexNFT, isProgrammableNFT, tokenStandard, frozen, and tokenBalance.
feeBreakdown
object
Breakdown of fees: totalFee, optional partnerFee, and rentReclaimed per account type (tokenAccount, metadata, edition, tokenRecord).
POST/burn-instructions
Return serialized instruction payloads without building a full transaction.
Parameter
Type
Required
Default
Description
userPublicKey
string (base58)
Yes
-
The wallet public key of the user initiating the action.
assetId
string (base58)
Yes
-
Mint address or token account address. For mint input, the API resolves to exactly one owned token account when required.
autoCloseTokenAccounts
boolean
No
true
When true, automatically closes eligible associated token accounts after burning or selling, reclaiming their rent.
burnAmount
string | number
No
all tokens
The amount of tokens to burn. When omitted, the entire token balance is burned.
partnerFeeAccount
string (base58)
No
-
Public key of the partner account that receives a share of the reclaimed SOL. Must be provided together with partnerFeeBps.
partnerFeeBps
integer (0-9800)
No
-
Fee share in basis points (0-9800) directed to the partnerFeeAccount. Must be provided together with partnerFeeAccount.
referralCode
string
No
-
2-20 lowercase alphanumeric characters. Accepted on all core burn/sell/close POST endpoints (including preview/summary where available). Referrers receive 20% of future protocol fees from referred wallets for life. If a wallet already used another referral code, the API will not reassign it. Create and claim rewards at https://sol-incinerator.com/rewards. Mutually exclusive with partnerFeeAccount/partnerFeeBps.
Serialized instructions to add to your own transaction.
lamportsReclaimed
integer
Lamports reclaimed from closed accounts.
solanaReclaimed
number
SOL equivalent of lamportsReclaimed.
instructionType
string
Operation type: METAPLEX_BURN, TOKEN_BURN, TOKEN_2022_BURN, etc.
isDestructiveAction
boolean
True if the operation destroys an asset with potential value.
computeUnitsRequired
integer
Estimated compute units needed for the instructions.
Sell Endpoints
Permanently sell illiquid tokens and NFTs for one lamport each. Only canonical associated token accounts are accepted. Eligible source accounts close after transfer, returning rent less the 2% protocol fee and any optional partner fee. The user funds missing destination ATAs and programmable token records up front; source rent offsets that cost later in the transaction. The response reports setup rent and net change before network fees.
POST/sell/batch
Permanently sell tokens or NFTs for one lamport each and close eligible source accounts atomically by default. Recovered source rent pays the 2% protocol fee and any optional partner fee. Missing destination ATAs and programmable token records use the user as rent payer.
Parameter
Type
Required
Default
Description
userPublicKey
string (base58)
Yes
-
The wallet public key of the user initiating the action.
assetIds
string[] (base58)
Yes
-
One to 50 mint or token-account addresses. Source accounts must resolve to the wallet owner's canonical associated token account.
autoCloseTokenAccounts
boolean
No
true
When true, automatically closes eligible associated token accounts after burning or selling, reclaiming their rent.
priorityFeeMicroLamports
integer
No
auto-estimated
Priority fee in micro-lamports to include with the transaction. When omitted the API auto-estimates an appropriate value.
partnerFeeAccount
string (base58)
No
-
Public key of the partner account that receives a share of the reclaimed SOL. Must be provided together with partnerFeeBps.
partnerFeeBps
integer (0-9800)
No
-
Fee share in basis points (0-9800) directed to the partnerFeeAccount. Must be provided together with partnerFeeAccount.
referralCode
string
No
-
2-20 lowercase alphanumeric characters. Accepted on all core burn/sell/close POST endpoints (including preview/summary where available). Referrers receive 20% of future protocol fees from referred wallets for life. If a wallet already used another referral code, the API will not reassign it. Create and claim rewards at https://sol-incinerator.com/rewards. Mutually exclusive with partnerFeeAccount/partnerFeeBps.
Per-transaction assets and exact sale/rent/fee/setup/net economics, aligned with transactions[].
rejectedAssets
object[]
Assets that cannot be sold, including the rejection reason.
unclosedSourceAccounts
object[]
Successfully sold assets whose source token account remains open, including the reason.
assetsProcessed
integer
Number of assets represented by returned transactions.
lamportsReceived
integer
Compatibility alias for saleProceedsLamports.
saleProceedsLamports
integer
One-lamport sellcinerator payout per processed asset.
sourceAccountRentLamports
integer
Gross rent in source token accounts that will close.
sourceAccountRentReclaimedLamports
integer
Source rent returned after protocol and partner fees.
protocolFeeLamports
integer
2% protocol fee on recovered source-account rent.
partnerFeeLamports
integer
Optional partner fee on recovered source-account rent.
feeLamports
integer
Protocol plus partner fee, excluding network fees.
destinationAccountRentLamports
integer
Expected rent for missing destination ATAs/token records at build time.
netLamportsChange
integer
Expected lamport change before transaction and priority fees; may be negative.
sourceAccountsClosed
integer
Number of source token accounts closed.
destinationAccountsCreated
integer
Number of destination ATAs/token records expected to be created.
Close Endpoints
Close empty or zero-balance token accounts to reclaim rent.
POST/close
Build a close-account transaction to reclaim rent from an empty token account.
Parameter
Type
Required
Default
Description
userPublicKey
string (base58)
Yes
-
The wallet public key of the user initiating the action.
assetId
string (base58)
Yes
-
Token account (preferred) or mint address that resolves to exactly one owned token account.
feePayer
string (base58)
No
userPublicKey
Public key of the account that pays transaction fees. Defaults to the userPublicKey when omitted.
priorityFeeMicroLamports
integer
No
auto-estimated
Priority fee in micro-lamports to include with the transaction. When omitted the API auto-estimates an appropriate value.
asLegacyTransaction
boolean
No
false
When true, returns a legacy transaction instead of a versioned (v0) transaction.
partnerFeeAccount
string (base58)
No
-
Public key of the partner account that receives a share of the reclaimed SOL. Must be provided together with partnerFeeBps.
partnerFeeBps
integer (0-9800)
No
-
Fee share in basis points (0-9800) directed to the partnerFeeAccount. Must be provided together with partnerFeeAccount.
referralCode
string
No
-
2-20 lowercase alphanumeric characters. Accepted on all core burn/sell/close POST endpoints (including preview/summary where available). Referrers receive 20% of future protocol fees from referred wallets for life. If a wallet already used another referral code, the API will not reassign it. Create and claim rewards at https://sol-incinerator.com/rewards. Mutually exclusive with partnerFeeAccount/partnerFeeBps.
Serialized transaction for the user to sign and send.
lamportsReclaimed
integer
Rent reclaimed from the closed token account.
solanaReclaimed
number
SOL equivalent of lamportsReclaimed.
transactionType
string
TOKEN_CLOSE or TOKEN_2022_CLOSE depending on the token program.
isDestructiveAction
boolean
Always false for close operations.
POST/close/preview
Preview close outcome and fee split before signing.
Parameter
Type
Required
Default
Description
userPublicKey
string (base58)
Yes
-
The wallet public key of the user initiating the action.
assetId
string (base58)
Yes
-
Token account (preferred) or mint address that resolves to exactly one owned token account.
feePayer
string (base58)
No
userPublicKey
Public key of the account that pays transaction fees. Defaults to the userPublicKey when omitted.
priorityFeeMicroLamports
integer
No
auto-estimated
Priority fee in micro-lamports to include with the transaction. When omitted the API auto-estimates an appropriate value.
asLegacyTransaction
boolean
No
false
When true, returns a legacy transaction instead of a versioned (v0) transaction.
partnerFeeAccount
string (base58)
No
-
Public key of the partner account that receives a share of the reclaimed SOL. Must be provided together with partnerFeeBps.
partnerFeeBps
integer (0-9800)
No
-
Fee share in basis points (0-9800) directed to the partnerFeeAccount. Must be provided together with partnerFeeAccount.
referralCode
string
No
-
2-20 lowercase alphanumeric characters. Accepted on all core burn/sell/close POST endpoints (including preview/summary where available). Referrers receive 20% of future protocol fees from referred wallets for life. If a wallet already used another referral code, the API will not reassign it. Create and claim rewards at https://sol-incinerator.com/rewards. Mutually exclusive with partnerFeeAccount/partnerFeeBps.
Breakdown of fees: totalFee, optional partnerFee, and rentReclaimed.tokenAccount.
POST/close-instructions
Return serialized close-instruction payloads without building a full transaction.
Parameter
Type
Required
Default
Description
userPublicKey
string (base58)
Yes
-
The wallet public key of the user initiating the action.
assetId
string (base58)
Yes
-
Token account (preferred) or mint address that resolves to exactly one owned token account.
partnerFeeAccount
string (base58)
No
-
Public key of the partner account that receives a share of the reclaimed SOL. Must be provided together with partnerFeeBps.
partnerFeeBps
integer (0-9800)
No
-
Fee share in basis points (0-9800) directed to the partnerFeeAccount. Must be provided together with partnerFeeAccount.
referralCode
string
No
-
2-20 lowercase alphanumeric characters. Accepted on all core burn/sell/close POST endpoints (including preview/summary where available). Referrers receive 20% of future protocol fees from referred wallets for life. If a wallet already used another referral code, the API will not reassign it. Create and claim rewards at https://sol-incinerator.com/rewards. Mutually exclusive with partnerFeeAccount/partnerFeeBps.
Serialized close instructions to add to your own transaction.
lamportsReclaimed
integer
Rent reclaimed from the closed account.
solanaReclaimed
number
SOL equivalent of lamportsReclaimed.
instructionType
string
TOKEN_CLOSE or TOKEN_2022_CLOSE depending on the token program.
isDestructiveAction
boolean
Always false for close operations.
computeUnitsRequired
integer
Estimated compute units needed.
Batch Endpoints
Close all empty accounts for a wallet in one call. Supports pagination via offset/limit.
POST/batch/close-all
Close empty token accounts for a wallet. Returns one or more base58 transactions (or an empty array for preview-only API keys).
Parameter
Type
Required
Default
Description
userPublicKey
string (base58)
Yes
-
The wallet public key of the user initiating the action.
offset
integer (>= 0)
No
0
Number of token accounts to skip before processing. Used for pagination.
limit
integer (1-5000)
No
500
Maximum number of token accounts to include in a single batch. Range: 1-5000.
feePayer
string (base58)
No
userPublicKey
Public key of the account that pays transaction fees. Defaults to the userPublicKey when omitted.
priorityFeeMicroLamports
integer
No
auto-estimated
Priority fee in micro-lamports to include with the transaction. When omitted the API auto-estimates an appropriate value.
asLegacyTransaction
boolean
No
false
When true, returns a legacy transaction instead of a versioned (v0) transaction.
partnerFeeAccount
string (base58)
No
-
Public key of the partner account that receives a share of the reclaimed SOL. Must be provided together with partnerFeeBps.
partnerFeeBps
integer (0-9800)
No
-
Fee share in basis points (0-9800) directed to the partnerFeeAccount. Must be provided together with partnerFeeAccount.
referralCode
string
No
-
2-20 lowercase alphanumeric characters. Accepted on all core burn/sell/close POST endpoints (including preview/summary where available). Referrers receive 20% of future protocol fees from referred wallets for life. If a wallet already used another referral code, the API will not reassign it. Create and claim rewards at https://sol-incinerator.com/rewards. Mutually exclusive with partnerFeeAccount/partnerFeeBps.
Array of base58-serialized transactions for the user to sign and send.
accountsClosed
integer
Number of token accounts closed in this batch.
totalLamportsReclaimed
integer
Total lamports reclaimed across all accounts.
totalSolanaReclaimed
number
SOL equivalent of totalLamportsReclaimed.
hasDestructiveActions
boolean
Always false for close-account operations.
totalAccountsFound
integer
Total empty accounts discovered for this wallet.
truncated
boolean
True if results were limited by the limit parameter.
nextOffset
integer
Offset to use for the next page when truncated is true. Omitted when not truncated.
POST/batch/close-all/preview
Preview the outcome of a batch close-all operation before signing.
Parameter
Type
Required
Default
Description
userPublicKey
string (base58)
Yes
-
The wallet public key of the user initiating the action.
offset
integer (>= 0)
No
0
Number of token accounts to skip before processing. Used for pagination.
limit
integer (1-1000)
No
500
Maximum number of token accounts to preview. Range: 1-1000.
feePayer
string (base58)
No
userPublicKey
Public key of the account that pays transaction fees. Defaults to the userPublicKey when omitted.
priorityFeeMicroLamports
integer
No
auto-estimated
Priority fee in micro-lamports to include with the transaction. When omitted the API auto-estimates an appropriate value.
asLegacyTransaction
boolean
No
false
When true, returns a legacy transaction instead of a versioned (v0) transaction.
partnerFeeAccount
string (base58)
No
-
Public key of the partner account that receives a share of the reclaimed SOL. Must be provided together with partnerFeeBps.
partnerFeeBps
integer (0-9800)
No
-
Fee share in basis points (0-9800) directed to the partnerFeeAccount. Must be provided together with partnerFeeAccount.
referralCode
string
No
-
2-20 lowercase alphanumeric characters. Accepted on all core burn/sell/close POST endpoints (including preview/summary where available). Referrers receive 20% of future protocol fees from referred wallets for life. If a wallet already used another referral code, the API will not reassign it. Create and claim rewards at https://sol-incinerator.com/rewards. Mutually exclusive with partnerFeeAccount/partnerFeeBps.
Per-account preview with assetId, transactionType, lamports/SOL reclaimed, and destruction flag.
accountsPreviewed
integer
Number of accounts included in the preview.
accountsToClose
integer
Number of accounts included in this preview page.
totalAccountsFound
integer
Total empty accounts discovered for this wallet.
totalLamportsReclaimed
integer
Total lamports reclaimable across all previewed accounts.
totalSolanaReclaimed
number
SOL equivalent of totalLamportsReclaimed.
estimatedTransactions
integer
Estimated number of transactions needed for the accounts returned in this preview page.
hasDestructiveActions
boolean
Always false for close-account operations.
summary
object
Breakdown by account type: standardTokenAccounts and token2022Accounts.
truncated
boolean
True if results were limited by the limit parameter.
nextOffset
integer
Offset to use for the next page when truncated is true. Omitted when not truncated.
POST/batch/close-all/summary
Fast count of closeable accounts and total reclaimable SOL without building transactions. Scans all empty accounts regardless of limit.
Parameter
Type
Required
Default
Description
userPublicKey
string (base58)
Yes
-
The wallet public key of the user initiating the action.
partnerFeeAccount
string (base58)
No
-
Public key of the partner account that receives a share of the reclaimed SOL. Must be provided together with partnerFeeBps.
partnerFeeBps
integer (0-9800)
No
-
Fee share in basis points (0-9800) directed to the partnerFeeAccount. Must be provided together with partnerFeeAccount.
referralCode
string
No
-
2-20 lowercase alphanumeric characters. Accepted on all core burn/sell/close POST endpoints (including preview/summary where available). Referrers receive 20% of future protocol fees from referred wallets for life. If a wallet already used another referral code, the API will not reassign it. Create and claim rewards at https://sol-incinerator.com/rewards. Mutually exclusive with partnerFeeAccount/partnerFeeBps.
Total lamports reclaimable across all empty accounts.
totalSolanaReclaimable
number
SOL equivalent of totalLamportsReclaimable.
summary
object
Breakdown by account type (standardTokenAccounts, token2022Accounts).
POST/batch/close-all-instructions
Return raw serialized instructions for a batch close-all operation.
Parameter
Type
Required
Default
Description
userPublicKey
string (base58)
Yes
-
The wallet public key of the user initiating the action.
offset
integer (>= 0)
No
0
Number of token accounts to skip before processing. Used for pagination.
limit
integer (1-5000)
No
500
Maximum number of token accounts to include in a single batch. Range: 1-5000.
partnerFeeAccount
string (base58)
No
-
Public key of the partner account that receives a share of the reclaimed SOL. Must be provided together with partnerFeeBps.
partnerFeeBps
integer (0-9800)
No
-
Fee share in basis points (0-9800) directed to the partnerFeeAccount. Must be provided together with partnerFeeAccount.
referralCode
string
No
-
2-20 lowercase alphanumeric characters. Accepted on all core burn/sell/close POST endpoints (including preview/summary where available). Referrers receive 20% of future protocol fees from referred wallets for life. If a wallet already used another referral code, the API will not reassign it. Create and claim rewards at https://sol-incinerator.com/rewards. Mutually exclusive with partnerFeeAccount/partnerFeeBps.
{"sentCount":2,"failedCount":1,"results":[{"index":0,"sent":true,"signature":"2v9..."},{"index":1,"sent":true,"signature":"9Qa..."},{"index":2,"sent":false,"error":"blockhash not found"}]}
Field
Type
Description
sentCount
integer
How many transactions were accepted by RPC.
failedCount
integer
How many transactions failed to submit.
results
array
Per-index send result with signature or error details.
POST/transactions/status
Lookup confirmation status and errors for a transaction signature.
Parameter
Type
Required
Default
Description
signature
string
Yes
-
Transaction signature to look up.
searchTransactionHistory
boolean
No
true
Whether to include rooted history in signature status lookup.
User receives2,039,280 − 40,785 − 30,589 = 1,967,906
Referral Code System
Use referralCodeon burn/close requests to apply a referral code. Referrers earn 20% of a referred wallet's future protocol fees for life. Create a code and claim rewards on https://sol-incinerator.com/rewards.
Send referralCode in burn/close requests to count activity toward that referral code. Referrers receive 20% of future protocol fees from referred wallets for life. If a wallet already used a different referral code, the API will not reassign it to your code. Rewards are managed at https://sol-incinerator.com/rewards.
Referral + Partner Parameters
These two monetization approaches are mutually exclusive. The API rejects requests that include both partnerFeeAccount/partnerFeeBps and referralCode with a 400 error.
Partner Fees
Direct cut of reclaimable rent at a rate you control. Funds go to your partner account on-chain in the same transaction.
Referral Codes
Use referralCode to apply a referral code and earn 20% of future protocol fees for life. Existing referred wallets are not reassigned to a new code. Create and claim rewards on sol-incinerator.com/rewards.
Errors & Rate Limits
HTTP status codes and rate limiting behavior.
Status
Meaning
400
Invalid payload or unsupported parameter combination
401
Missing or invalid API key / bearer token / session token
403
Admin role required or missing token scope
409
One-key policy conflict
429
Rate limit exceeded
Standard Endpoints
240 requests/minute per route + identity
Heavy Endpoints
60 requests/minute for /batch/close-all, /batch/close-all/preview, /batch/close-all/summary, and /batch/close-all-instructions, /cleanup/all, /cleanup/all/summary, /pump/summary, /pump/close-all, and /pump/close-all-instructions
claude mcp add -s user -t http solincinerator "https://v2.api.sol-incinerator.com/mcp"
Execution tools only relay signed payloads. The wallet owner must sign transactions locally with their private key/keypair before using send_transaction or send_transaction_batch.
Start with signing_requirements to get the expected signer flow and a known-good Node snippet (including correct bs58 import shape).