LP position health check for any Uniswap-v3-compatible position NFT on 11 chains (Ethereum
LP position health check for any Uniswap-v3-compatible position NFT on 11 chains (Ethereum, Base, Arbitrum, Polygon, BNB, HyperEVM, Monad, Robinhood Chain and more): in-range status, position through the band, distance to each edge in price terms. On GigaDex (Robinhood Chain, the default) also pending fees and campaign points from the indexer. Cheap monitoring poll. Analytics only.
50000 (raw units)
price
1
calls / 30d
1
unique payers
2026-08-23
updated
Provider
airdroppulse.theaslangroupllc.com · discovered, not yet claimed by its owner
Payment (x402 accepts[])
[
{
"scheme": "exact",
"network": "eip155:8453",
"payTo": "0x50ab2018c06c6E4eAA9BA52057Eb55eD284912fc",
"asset": "0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913",
"amount": "50000",
"maxTimeoutSeconds": 300
},
{
"scheme": "exact",
"network": "eip155:8453",
"payTo": "0x50ab2018c06c6E4eAA9BA52057Eb55eD284912fc",
"asset": "0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913",
"amount": "50000",
"maxTimeoutSeconds": 604900
},
{
"scheme": "exact",
"network": "solana:5eykt4UsFv8P8NJdTREpY1vzqKqZKvdp",
"payTo": "985iFjbnGQ3dJcwXnfRCMSrH4Jnc3kW1N6msR64B5KX1",
"asset": "EPjFWdd5AufqSSqeM2qN1xzybapC8G4wEGGkZwyTDt1v",
"amount": "50000",
"maxTimeoutSeconds": 300
},
{
"scheme": "exact",
"network": "eip155:4663",
"payTo": "0x50ab2018c06c6E4eAA9BA52057Eb55eD284912fc",
"asset": "0x5fc5360D0400a0Fd4f2af552ADD042D716F1d168",
"amount": "50000",
"maxTimeoutSeconds": 300
},
{
"scheme": "exact",
"network": "eip155:137",
"payTo": "0x50ab2018c06c6E4eAA9BA52057Eb55eD284912fc",
"asset": "0x3c499c542cEF5E3811e1192ce70d8cC03d5c3359",
"amount": "50000",
"maxTimeoutSeconds": 300
},
{
"scheme": "exact",
"network": "eip155:42161",
"payTo": "0x50ab2018c06c6E4eAA9BA52057Eb55eD284912fc",
"asset": "0xaf88d065e77c8cC2239327C5EDb3A432268e5831",
"amount": "50000",
"maxTimeoutSeconds": 300
},
{
"scheme": "exact",
"network": "eip155:480",
"payTo": "0x50ab2018c06c6E4eAA9BA52057Eb55eD284912fc",
"asset": "0x79A02482A880bCe3F13E09da970dC34dB4cD24D1",
"amount": "50000",
"maxTimeoutSeconds": 300
},
{
"scheme": "exact",
"network": "eip155:143",
"payTo": "0x50ab2018c06c6E4eAA9BA52057Eb55eD284912fc",
"asset": "0x754704Bc059F8C67012fEd69BC8A327a5aafb603",
"amount": "50000",
"maxTimeoutSeconds": 300
},
{
"scheme": "exact",
"network": "eip155:196",
"payTo": "0x50ab2018c06c6E4eAA9BA52057Eb55eD284912fc",
"asset": "0x779ded0c9e1022225f8e0630b35a9b54be713736",
"amount": "50000",
"maxTimeoutSeconds": 300
},
{
"scheme": "exact",
"network": "eip155:999",
"payTo": "0x50ab2018c06c6E4eAA9BA52057Eb55eD284912fc",
"asset": "0xb88339CB7199b77E23DB6E890353E22632Ba630f",
"amount": "50000",
"maxTimeoutSeconds": 300
},
{
"scheme": "exact",
"network": "algorand:wGHE2Pwdvd7S12BL5FaOP20EGYesN73k",
"payTo": "62A253YPATFNJCPRKID3FKD77MYJFNTVRYRP4B4JWG36EGLPY7UXFWGI7I",
"asset": "31566704",
"amount": "50000",
"maxTimeoutSeconds": 300
},
{
"scheme": "exact",
"network": "xrpl:0",
"payTo": "rMnHeutYALco8RYFVcmuU4BCgSzBpPEh32",
"asset": "XRP",
"amount": "50000",
"maxTimeoutSeconds": 300
},
{
"scheme": "exact",
"network": "xrpl:0",
"payTo": "rMnHeutYALco8RYFVcmuU4BCgSzBpPEh32",
"asset": "524C555344000000000000000000000000000000",
"amount": "0.05",
"maxTimeoutSeconds": 300
},
{
"scheme": "exact",
"network": "eip155:56",
"payTo": "0x50ab2018c06c6E4eAA9BA52057Eb55eD284912fc",
"asset": "0x8d0D000Ee44948FC98c9B98A4FA4921476f08B0d",
"amount": "50000000000000000",
"maxTimeoutSeconds": 300
}
]Output schema
{
"bazaar": {
"info": {
"input": {
"method": "GET",
"queryParams": {
"token_id": "position NFT token id"
},
"type": "http"
},
"output": {
"example": {
"current_tick": 107697,
"deposited": true,
"disclaimer": "Educational analytics… not investment advice.",
"distance_to_lower_edge_pct": 2.6,
"distance_to_upper_edge_pct": 2.4,
"fee_pending_0": 0.0021,
"fee_pending_1": 4.1,
"fee_tier": 3000,
"in_range": true,
"liquidity": "184028481028",
"method": "Fresh RPC slot0 tick where available, falling back to the indexer pool tick; edge distances in price terms via 1.0001^Δtick.",
"owner": "0xabc…",
"pair": "WETH/PONS",
"pct_through_band": 0.52,
"points": 812.4,
"pool": "0x50e4…",
"tick_lower": 104960,
"tick_upper": 110400,
"token_id": "4821"
},
"type": "json"
}
},
"schema": {
"$schema": "https://json-schema.org/draft/2020-12/schema",
"properties": {
"input": {
"additionalProperties": false,
"properties": {
"method": {
"enum": [
"GET",
"HEAD",
"DELETE"
],
"type": "string"
},
"queryParams": {
"properties": {
"chain": {
"description": "eip155 chain id (optional; default 4663 GigaDex/Robinhood). Supported: 1, 10, 56, 137, 143, 480, 999, 4663, 8453, 42161, 43114",
"type": "string"
},
"manager": {
"description": "NonfungiblePositionManager address override for uncataloged v3 forks (optional)",
"type": "string"
},
"pool": {
"description": "v3 pool address for live-tick band health on generic chains (optional)",
"type": "string"
},
"token_id": {
"description": "required",
"type": "string"
}
},
"type": "object"
},
"type": {
"const": "http",
"type": "string"
}
},
"required": [
"type",
"method"
],
"type": "object"
},
"output": {
"properties": {
"example": {
"type": "object"
},
"type": {
"type": "string"
}
},
"required": [
"type"
],
"type": "object"
}
},
"required": [
"input"
],
"type": "object"
}
},
"builder-code": {
"info": {
"a": "bc_gxy6qn5p"
},
"schema": {
"$schema": "https://json-schema.org/draft/2020-12/schema",
"additionalProperties": false,
"properties": {
"a": {
"description": "App builder code",
"pattern": "^[a-z0-9_]{1,32}$",
"type": "string"
},
"s": {
"description": "Service builder codes",
"items": {
"pattern": "^[a-z0-9_]{1,32}$",
"type": "string"
},
"type": "array"
},
"w": {
"description": "Wallet builder code",
"pattern": "^[a-z0-9_]{1,32}$",
"type": "string"
}
},
"type": "object"
}
}
}Use it
curl
curl "https://airdroppulse.theaslangroupllc.com/api/lp/position-health" # -> 402 Payment Required, accepts[] lists how to pay # retry with a PAYMENT-SIGNATURE (or PAYMENT header) once paid
JavaScript
const res = await fetch("https://airdroppulse.theaslangroupllc.com/api/lp/position-health");
if (res.status === 402) {
const { accepts } = await res.json();
// pay one of accepts[] via an x402 client, then retry with the payment header
}Python
import httpx
res = httpx.get("https://airdroppulse.theaslangroupllc.com/api/lp/position-health")
if res.status_code == 402:
accepts = res.json()["accepts"]
# pay one of accepts[] via an x402 client, then retry with the payment headerMachine-readable
Everything on this page is also available as clean JSON at /resources/5544.json, and this resource appears in /discovery/resources and /discovery/search.