Skip to content
Documentation
Uniswap V4
Positions

Uniswap V4 Positions

Return on-chain state for one or more Uniswap V4 (or PancakeSwap Infinity) positions, keyed by NFT token ID. Each entry includes the owning pool, range ticks, raw and decimal-adjusted token amounts, and the latest observed block.

ℹ️

Supported protocols: Uniswap V4 (uni) and PancakeSwap Infinity (pcs).

Get Position by NFT ID

Return data for one or more positions on a given chain and protocol.

curl -X GET \
  "https://api.misti.app/v1/univ4/position \
    ?chain_id=1 \
    &protocol=uni \
    &nft_ids=123456 \
    &nft_ids=789012" \
  -H "x-api-key: YOUR_API_KEY"

Query Parameters:
ParameterTypeRequiredDescription
chain_idnumberYesThe EVM chain ID (e.g., 1 for Ethereum mainnet). Table chain id
protocolstringYesProtocol discriminator: uni for Uniswap V4, pcs for PancakeSwap Infinity
nft_idsstringYesNFT token ID as a decimal string. Pass multiple nft_ids params for batch queries (max 20)

Headers:
HeaderDescription
x-api-keyYour API key (msk_…)

Response:
[
    {
        "chain_id": 1,
        "protocol": "uni",
        "manager_address": "0xbd216513d74c8cf14cf4747e6aaa6420ff64ee9e",
        "nft_id": "123456",
        "pool_id": "0x1234567890abcdef1234567890abcdef1234567890abcdef1234567890abcdef",
        "owner_address": "0x123456789abcdef123456789abcdef123456789a",
        "lower_tick": -54000,
        "upper_tick": -52000,
        "liquidity": "1234567890123456789",
        "amount0": "1000000000000000000",
        "amount0_d": "1.000000",
        "amount1": "2345678901234567890",
        "amount1_d": "2.345678",
        "core_total_usd": 4567.89,
        "ratio": 0.5234,
        "block_number": "18500000",
        "timestamp": "1697376645"
    },
    {
        "chain_id": 1,
        "protocol": "uni",
        "manager_address": "0xbd216513d74c8cf14cf4747e6aaa6420ff64ee9e",
        "nft_id": "789012",
        "pool_id": "0xfedcba0987654321fedcba0987654321fedcba0987654321fedcba0987654321",
        "owner_address": "0x987654321fedcba987654321fedcba987654321b",
        "lower_tick": -55000,
        "upper_tick": -51000,
        "liquidity": "987654321098765432",
        "amount0": "800000000000000000",
        "amount0_d": "0.800000",
        "amount1": "1876543210987654321",
        "amount1_d": "1.876543",
        "core_total_usd": 3654.21,
        "ratio": 0.4821,
        "block_number": "18500000",
        "timestamp": "1697376645"
    }
]

Position Fields:
FieldTypeDescription
chain_idnumberEVM chain ID
protocolstringProtocol discriminator (uni or pcs)
manager_addressstringAddress of the Position Manager contract that minted the NFT
nft_idstringNFT token ID (uint256 as decimal string)
pool_idstring32-byte Uniswap V4 pool ID the position belongs to
owner_addressstringCurrent owner of the position NFT
lower_ticknumberLower tick of the position's range
upper_ticknumberUpper tick of the position's range
liquiditystringPosition liquidity
amount0 / amount1stringUnderlying token amounts (raw units)
amount0_d / amount1_dstringUnderlying token amounts (decimal-adjusted)
core_total_usdnumberTotal value of the underlying tokens in USD
rationumberShare of position value held in token0 (0 to 1)
block_numberstringBlock number of the latest update
timestampstringUnix timestamp of the latest update