Skip to main content
POST
/
tx
/
pro
/
remove-liquidity
Withdraw Liquidity
curl --request POST \
  --url https://tx.api.heaven.xyz/tx/pro/remove-liquidity \
  --header 'Content-Type: application/json' \
  --data '
{
  "payer": "<string>",
  "mint": "<string>",
  "config_version": 1,
  "program_id": "<string>",
  "lp_tokens_to_burn": 1,
  "min_token_a": 1,
  "min_token_b": 1,
  "pool": "<string>",
  "compute_unit_limit": 1,
  "compute_unit_price": 1
}
'
{
  "tx": "<string>"
}

Body

application/json

Withdraw liquidity from a pro pool by burning LP tokens. You receive token A and SOL proportional to your share of the pool.

payer
string
required

Public key of the wallet that will sign and pay for the transaction.

mint
string
required

Mint address of the SPL token (token A) in the pool.

config_version
integer<int32>
required

Protocol config version. Use 1 for community tokens, 2 for creator tokens, 3 for pro pools.

Required range: x >= 0
program_id
string
required

Program ID of the Heaven DEX program. Use HEAVENoP2qxoeuF8Dj2oT1GHEnu49U5mJYkdeC8BAX2o for mainnet.

lp_tokens_to_burn
integer<int64>
required

Amount of LP tokens to burn. You will receive token A and SOL proportional to your pool share.

Required range: x >= 0
min_token_a
integer<int64>
required

Minimum amount of token A to receive. Protects against slippage.

Required range: x >= 0
min_token_b
integer<int64>
required

Minimum amount of SOL (lamports) to receive. Protects against slippage.

Required range: x >= 0
pool
string
required

On-chain address of the pro pool state account. Returned in the response when creating a pool.

compute_unit_limit
integer<int32> | null

Maximum compute units for the transaction. Higher values allow more complex operations but cost more. Defaults to a sensible value if omitted.

Required range: x >= 0
compute_unit_price
integer<int64> | null

Priority fee in micro-lamports per compute unit. Higher values increase transaction priority. Defaults to a sensible value if omitted.

Required range: x >= 0

Response

200 - application/json
tx
string
required

Base64 encoded versioned transaction. Decode, sign, and submit.