Skip to content

API ReferenceLiquidity

Endpoints

Liquidity

Uniswap V3 / V4 positions: quote, add, remove and collect fees, simulated before you sign.

Base URLhttps://api.lane.markets/v1local instance: http://localhost:3000/v1

Known position managers (Uniswap V3 NonfungiblePositionManager, V4 PositionManager)

GET/v1/liquidity/managers

Responses

200Managers

  • managersobject[]

Request
curl "https://api.lane.markets/v1/liquidity/managers"

A wallet's V3/V4 positions with value, uncollected fees, time in range, APR estimate

GET/v1/liquidity/positions

Query parameters

  • owneraddressrequired

Responses

200Positions

  • positionsobject[]

  • positions[].managerstring

  • positions[].protocol"v3" | "v4"

  • positions[].tokenIduint string

  • positions[].poolstring | null

  • positions[].feeBpsnumber

  • positions[].tickLowerinteger

  • positions[].tickUpperinteger

  • positions[].priceLowernumber

  • positions[].priceUppernumber

  • positions[].currentPricenumber | null

  • positions[].liquidityuint string

  • positions[].amountsobject

  • positions[].valueUsdnumber | null

  • positions[].feesobject

  • positions[].inRangeboolean | null

  • positions[].inRangePct30dnumber | null

  • positions[].aprEstimatePctnumber | null

Request
curl "https://api.lane.markets/v1/liquidity/positions?owner=0xYourAddress"

Range preview (aligned ticks, prices, liquidity, the other amount)

GET/v1/liquidity/quote

Query parameters

  • poolstringrequired

  • tickLowerinteger

  • tickUpperinteger

  • priceLowernumber

    token1 per token0, human units

  • priceUppernumber

  • fullRange"true"

  • amount0uint string

    Unsigned integer as a decimal string

  • amount1uint string

    Unsigned integer as a decimal string

Responses

200Preview

Request
curl "https://api.lane.markets/v1/liquidity/quote?pool=…"

Build a new position (or add to tokenId)

GET/v1/liquidity/add

Query parameters

  • poolstringrequired

  • owneraddressrequired

  • tickLowerinteger

  • tickUpperinteger

  • priceLowernumber

    token1 per token0, human units

  • priceUppernumber

  • fullRange"true"

  • amount0uint string

    Unsigned integer as a decimal string

  • amount1uint string

    Unsigned integer as a decimal string

  • tokenIduint string

    Unsigned integer as a decimal string

  • native"true"

  • slippageBpsintegerdefault 50

Responses

200Transaction

  • approvalsobject[]

  • approvals[].tostring

  • approvals[].datastring

  • approvals[].descriptionstring

  • txobject

  • tx.fromaddress

  • tx.toaddress

  • tx.datastring

  • tx.valueuint string

  • tx.chainIdinteger

  • tx.warningstring

    Present when the simulation failed. Do not send.

  • simulationobject

  • simulation.okboolean

  • simulation.gasuint string

  • simulation.errorstring

Request
curl "https://api.lane.markets/v1/liquidity/add?pool=…&owner=0xYourAddress"

Remove a share of a position (and collect); 100% burns it

GET/v1/liquidity/remove

Query parameters

  • manageraddressrequired

  • tokenIduint stringrequired

    Unsigned integer as a decimal string

  • owneraddressrequired

  • percentintegerdefault 100

  • slippageBpsintegerdefault 50

Responses

200Transaction

  • approvalsobject[]

  • approvals[].tostring

  • approvals[].datastring

  • approvals[].descriptionstring

  • txobject

  • tx.fromaddress

  • tx.toaddress

  • tx.datastring

  • tx.valueuint string

  • tx.chainIdinteger

  • tx.warningstring

    Present when the simulation failed. Do not send.

  • simulationobject

  • simulation.okboolean

  • simulation.gasuint string

  • simulation.errorstring

Request
curl "https://api.lane.markets/v1/liquidity/remove?manager=…&tokenId=…&owner=0xYourAddress"

Collect a position's fees

GET/v1/liquidity/collect

Query parameters

  • manageraddressrequired

  • tokenIduint stringrequired

    Unsigned integer as a decimal string

  • owneraddressrequired

Responses

200Transaction

  • approvalsobject[]

  • approvals[].tostring

  • approvals[].datastring

  • approvals[].descriptionstring

  • txobject

  • tx.fromaddress

  • tx.toaddress

  • tx.datastring

  • tx.valueuint string

  • tx.chainIdinteger

  • tx.warningstring

    Present when the simulation failed. Do not send.

  • simulationobject

  • simulation.okboolean

  • simulation.gasuint string

  • simulation.errorstring

Request
curl "https://api.lane.markets/v1/liquidity/collect?manager=…&tokenId=…&owner=0xYourAddress"
lane.markets · Make the most of every move.