Creates a new LP position in a V3 or V4 pool (including full-range positions). You can create a position in an existing pool by providing existingPool parameters, or create a new pool by providing newPool parameters (fee, tick spacing, initial price, and optionally hooks for V4). The position’s price range is specified via either priceBounds or tickBounds. The server computes the dependent token amount. If simulateTransaction is set to true, the response will include the gas fee.
Creates a new liquidity position on Uniswap V3 or V4. This endpoint handles both creating a position in an existing pool and creating a new pool with an initial position. Supports any price range, including full-range positions. The caller specifies a price range (or tick range) and the amount of one token to deposit. The server computes the corresponding amount of the other token based on the current pool state and returns a fully-formed transaction to sign. For V2 positions, use theDocumentation Index
Fetch the complete documentation index at: https://api-docs.uniswap.org/llms.txt
Use this file to discover all available pages before exploring further.
/lp/create_classic endpoint.
existing_pool — For an existing pool: includes token_0_address, token_1_address, and the pool_reference (pool address for V3, pool ID for V4). The server fetches current pool state (liquidity, tick, sqrtRatio) to compute the dependent token amount.new_pool — For creating a new pool: includes token addresses, fee, tick_spacing, optional hooks (V4 only), and initial_price (as sqrtRatioX96 string). The server uses the initial price to compute the dependent amount.price_bounds — Decimal price strings (min_price, max_price). The server converts these to ticks, snaps to valid tick spacing boundaries, and returns the adjusted prices in the response. These are the human readable price bounds for the position not the decimal normalized price.tick_bounds — Raw tick values (tick_lower, tick_upper). Skips price-to-tick conversion. The server computes the corresponding prices for the response.independent_token — The token and amount the user wants to depositprotocol — V3 or V4slippage_tolerance — Optional slippage tolerance as a decimal (e.g., 0.5 for 0.5%)native_token_balance — For V4 native token pools, the user’s native token balance (used for slippage fitting)batch_permit_data / signature — For V4 permit-based approvalstoken_0, token_1), the snapped tick range (tick_lower, tick_upper), adjusted price bounds, and a fully-formed create transaction to sign. If simulate_transaction is true, also includes gas fee estimates.
^(0x)?[0-9a-fA-F]{40}$The protocol to use for the swap/order.
V2, V3, V4, UNISWAPX, UNISWAPX_V2, UNISWAPX_V3 The token whose amount you are specifying.
Parameters for an existing pool. Provide either existingPool or newPool, not both.
Parameters for creating a new pool. Provide either existingPool or newPool, not both.
The other token. The server computes the required amount. If provided, the amount is used as a maximum.
Price bounds for the position range. Provide either priceBounds or tickBounds, not both.
Tick bounds for the position range. Provide either priceBounds or tickBounds, not both.
Slippage tolerance as a decimal (e.g., 0.5 for 0.5%).
Unix timestamp after which the transaction will revert.
If true, the response will include the gas fee.
The urgency level for gas price estimation. Higher urgency results in higher gas price and faster transaction inclusion. Defaults to URGENT if not provided.
NORMAL, FAST, URGENT Batch permit data for V4 positions.
The signed permit.
The wallet's native token balance, used for wrapping calculations when one of the tokens is the native token.
Create V3/V4 position successful.
A unique ID for the request.
A token with its address and amount, used in LP operations.
A token with its address and amount, used in LP operations.
The actual minimum price after tick adjustment.
The actual maximum price after tick adjustment.
The adjusted lower tick.
The adjusted upper tick.
The total estimated gas cost of this transaction (eg. gasLimit multiplied by maxFeePerGas) in the base unit of the chain.