Skip to main content
POST
/
v1
/
uniswap
/
liquidity_provision
/
mint
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_mint(token0="WETH", token1="WETH", fee=models.FeeEnum.ZERO_DOT_01, tick_lower=-1000, tick_upper=1000, amount0_desired="1.5", amount1_desired="1.7", amount0_min="1.4", amount1_min="1.6", chain=models.UniswapMintLiquidityProvisionRequestChain.BASE, sender="0x29F20a192328eF1aD35e1564aBFf4Be9C5ce5f7B", recipient="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

Request model for minting a new liquidity position.

token0
string
required

The symbol or address of the first token in the pair.

Examples:

"WETH"

token1
string
required

The symbol or address of the second token in the pair.

Examples:

"WETH"

fee
enum<string>
required

The swap fee of the pool

Available options:
0.01,
0.05,
0.3,
1.0
tick_lower
integer
required

The lower tick of the range to mint the position in

Required range: -887272 <= x <= 887272
Examples:

-1000

tick_upper
integer
required

The upper tick of the range to mint the position in

Required range: -887272 <= x <= 887272
Examples:

1000

amount0_desired
required

The desired amount of the first token to deposit

Required range: x >= 0
Examples:

"1.5"

amount1_desired
required

The desired amount of the second token to deposit

Required range: x >= 0
Examples:

"1.7"

amount0_min
required

The minimum amount of the first token to deposit

Required range: x >= 0
Examples:

"1.4"

amount1_min
required

The minimum amount of the second token to deposit

Required range: x >= 0
Examples:

"1.6"

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_MINT_LIQUIDITY_PROVISION
Allowed value: "UNISWAP_MINT_LIQUIDITY_PROVISION"
recipient
string | null

The address that will receive the LP tokens

Examples:

"0x29F20a192328eF1aD35e1564aBFf4Be9C5ce5f7B"

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