Skip to main content
POST
/
v1
/
uniswap
/
liquidity_provision
/
withdraw
Python (SDK)
from compass_api_sdk import CompassAPI, models


with CompassAPI(
    api_key_auth="<YOUR_API_KEY_HERE>",
) as compass_api:

    res = compass_api.uniswap_v3.uniswap_liquidity_provision_withdraw(token_id=821299, percentage_for_withdrawal="25", chain=models.UniswapWithdrawLiquidityProvisionRequestChain.BASE, sender="0x29F20a192328eF1aD35e1564aBFf4Be9C5ce5f7B", estimate_gas=True)

    # Handle response
    print(res)
{
  "transaction": {
    "chainId": "<string>",
    "data": "<string>",
    "from": "<string>",
    "gas": "<string>",
    "to": "<string>",
    "value": "<string>",
    "nonce": "<string>",
    "maxFeePerGas": "<string>",
    "maxPriorityFeePerGas": "<string>"
  }
}

Authorizations

x-api-key
string
header
required

Your Compass API Key. Get your key here.

Body

application/json
token_id
integer
required

Token ID of the NFT representing the liquidity provisioned position.

percentage_for_withdrawal
required

How much liquidity to take out in percentage.

Required range: 0 < x <= 100
Examples:

"25"

"50"

"75"

"100"

chain
enum<string>
required
Available options:
arbitrum,
base,
ethereum
sender
string
required

The address of the transaction sender.

Examples:

"0x29F20a192328eF1aD35e1564aBFf4Be9C5ce5f7B"

action_type
string
default:UNISWAP_WITHDRAW_LIQUIDITY_PROVISION
Allowed value: "UNISWAP_WITHDRAW_LIQUIDITY_PROVISION"
estimate_gas
boolean
default:true

Determines whether to estimate gas costs for transactions, also verifying that the transaction can be successfully executed.

Response

Successful Response

transaction
object
required

The unsigned transaction data. User must sign and broadcast to network.

  • UnsignedTransaction
  • UserOperationResponse