Uniswap V3 position by NFT id on 5 chains
Uniswap V3 position by NFT id on 5 chains: owner, pool, price range, whether it is in range, token amounts, fee tier and uncollected fees.
Answeringour last check, 2026-10-21
1 of 1checks answered this week
280 msmedian answer time
$0.01listed price per call
$0.01price it asked us
Paid test badge: not yet. The checks above are free: we call the tool without paying and read the payment request it sends back. The Verified badge needs paid calls whose answers match the promised output, and nobody can buy a badge.
Endpoint
GET https://saylorinnovations.com/api/chain/uniswap-v3-position
| Category | Market data |
|---|---|
| Provider host | saylorinnovations.com |
| Networks | eip155:137, eip155:42161, eip155:8453, solana:5eykt4UsFv8P8NJdTREpY1vzqKqZKvdp |
| Payment schemes | exact |
| Self-reported calls, 30 days | 1 from 1 payers (the provider's figure, not ours) |
Our checks, last 30 days
| Day | Result | HTTP | Asked | Time |
|---|---|---|---|---|
| 2026-10-21 | valid payment request | 402 | $0.01 | 280 ms |
Example input (from the provider)
{
"method": "GET",
"queryParams": {
"chain": "ethereum",
"token_id": "1000"
},
"type": "http"
}
Promised output schema (from the provider)
{
"$schema": "https://json-schema.org/draft/2020-12/schema",
"properties": {
"input": {
"additionalProperties": false,
"properties": {
"method": {
"enum": [
"GET"
],
"type": "string"
},
"queryParams": {
"properties": {
"chain": {
"description": "ethereum, polygon, arbitrum, optimism or base (or chain id)",
"type": "string"
},
"token_id": {
"description": "the position NFT id",
"type": "string"
}
},
"required": [
"chain",
"token_id"
],
"type": "object"
},
"type": {
"const": "http",
"type": "string"
}
},
"required": [
"type",
"method"
],
"type": "object"
},
"output": {
"properties": {
"example": {
"properties": {
"amount0_approx": {
"description": "approximate token0 in the position",
"type": [
"number",
"null"
]
},
"amount1_approx": {
"description": "approximate token1 in the position",
"type": [
"number",
"null"
]
},
"chain": {
"description": "the chain name that was queried",
"type": "string"
},
"chain_id": {
"description": "EIP-155 chain id of that network",
"type": "number"
},
"closed": {
"description": "true when liquidity is zero",
"type": "boolean"
},
"current_price_token1_per_token0": {
"description": "current pool price",
"type": [
"number",
"null"
]
},
"current_tick": {
"description": "current pool tick",
"type": [
"number",
"null"
]
},
"fee_tier_pct": {
"description": "pool fee tier, percent",
"type": "number"
},
"in_range": {
"description": "true when the current tick is inside the range",
"type": [
"boolean",
"null"
]
},
"liquidity": {
"description": "position liquidity",
"type": "string"
},
"note": {
"description": "plain-language reading of the result, including units",
"type": "string"
},
"owner": {
"description": "current owner of the position NFT",
"type": [
"string",
"null"
]
},
"pool": {
"description": "pool the position is in",
"type": [
"string",
"null"
]
},
"price_lower_token1_per_token0": {
"description": "price at the lower bound",
"type": "number"
},
"price_upper_token1_per_token0": {
"description": "price at the upper bound",
"type": "number"
},
"source": {
"description": "where the data was read from",
"type": "string"
},
"tick_lower": {
"description": "lower tick of the range",
"type": "number"
},
"tick_upper": {
"description": "upper tick of the range",
"type": "number"
},
"token0": {
"description": "first token",
"properties": {
"address": {
"description": "token contract",
"type": [
"string",
"null"
]
},
"decimals": {
"description": "token decimals",
"type": [
"number",
"null"
]
},
"symbol": {
"description": "token symbol",
"type": [
"string",
"null"
]
}
},
"type": [
"object",
"null"
]
},
"token1": {
"description": "second token",
"properties": {
"address": {
"description": "token contract",
"type": [
"string",
"null"
]
},
"decimals": {
"description": "token decimals",
"type": [
"number",
"null"
]
},
"symbol": {
"description": "token symbol",
"type": [
"string",
"null"
]
}
},
"type": [
"object",
"null"
]
},
"token_id": {
"description": "position NFT id",
"type": "string"
},
"uncollected_fees_token0": {
"description": "recorded uncollected token0 fees",
"type": "string"
},
"uncollected_fees_token1": {
"description": "recorded uncollected token1 fees",
"type": "string"
}
},
"required": [