Requirement
The PiperX APIs provide a way to query PiperX standard (v2) and concentrated pools (v3) status. The below examples demonstrated how to query them. Note that PiperX API implemented CORS Policy . Therefore, if you want to use PiperX APIs from your deployed site (https://example.xyz), you need to contact PiperX team first to add your site.
DEX Stats
Get TVL and Volume of PiperX
Example query
Copy curl https://piperxdb.piperxprotocol.workers.dev/api/piperxapi/tvl
Example output
Copy {
"dex": {
"id": "piperx",
"name": "PiperX",
"totalVolumeUSD": "49432841143971", // decimal 6 for USD
"totalVolumeNative": "15038256415533119426220899", // decimal 18 for native token
"tvlUSD": "6979210444605",
"tvlNative": "1034401251952740102208458"
}
}
Recent Transactions
Recent swap transactions on a list of pools
Example query
Copy curl -X POST \
-H "Content-Type: application/json"
-d '{"pairAddresses": ["0x4a170A20Dd1ff838C99d49Ac18b517a339206E83"]}'
https://piperxdb.piperxprotocol.workers.dev/api/piperxapi/recentSwaps
Example output
Copy {
"tokenSwaps": [
{
"timestamp": "1740996085000000",
"token0Amount": "29425453054133087415",
"token1Amount": "200000000",
"zeroForOne": false,
"amountUSD": "200000000", // decimal 6 for USD
"account": {
"id": "0xd49eeafa6bdbcc551f462c5a582959a9b7a2efdb"
}
},
{
"timestamp": "1740996059000000",
"token0Amount": "10005484788346883",
"token1Amount": "67988",
"zeroForOne": false,
"amountUSD": "67988",
"account": {
"id": "0x7e093ba1474b79481f9b87d66c99a819f25e82e2"
}
}]
}
Get All Tokens
Fetch all tokens and their price on PiperX V2 and V3 pool, including those tokens without transactions (price = 0)
Example query
Copy curl https://piperxdb.piperxprotocol.workers.dev/api/piperxapi/getAllTokens
Example output
Copy {
"tokens": [
{
"id": "0x0149d87e919967148b18b09f3ef6fd87ad55ad6f",
"name": "Test",
"symbol": "TESTT",
"decimals": 18,
"latestPriceUSD": "0", // token without any transactions
"latestPriceNative": "0"
},
{
"id": "0x1514000000000000000000000000000000000000",
"name": "Wrapped IP",
"symbol": "WIP",
"decimals": 18,
"latestPriceUSD": "6757786", // to convert to real price, use latestPriceUSD /1e(24-decimals), i.e., 1 IP = 6.7577 USD
"latestPriceNative": "1000000000000000000" // to convert to real price, use latestPriceNative /1e(36-decimals), i.e., 1 IP = 1 IP
}
}
Token Historical Prices
Fetch a list of tokens' historical price
Example query
Copy curl -X POST \
-H "Content-Type: application/json"
-d '{"addresses": ["0x1514000000000000000000000000000000000000"]}'
https://piperxdb.piperxprotocol.workers.dev/api/piperxapi/getAllTokenPrices
Example output
Copy {
"tokens": {
"0x1514000000000000000000000000000000000000": {
"symbol": "WIP",
"now": "6750764", // to convert to real price, use latestPriceUSD /1e(24-decimals), i.e., 1 IP = 6.7507 USD
"1h": "6791570",
"2h": "6550901",
"3h": "6486282",
"4h": "6383945",
"5h": "6633336",
"6h": "6615643",
"7h": "6405588",
"8h": "6318354",
"9h": "6235073",
"10h": "6025256",
"11h": "6211376",
"12h": "6141735",
"13h": "5987886",
"14h": "6007658",
"15h": "6231028",
"16h": "6081970",
"17h": "6185649",
"18h": "6038601",
"19h": "6071700",
"20h": "6223667",
"21h": "6296334",
"22h": "6224512",
"23h": "5875464",
"24h": "5743224",
"1d": "6211376",
"2d": "5172550",
"3d": "5522474",
"4d": "5647480",
"5d": "7037623",
"6d": "5719907",
"7d": "4506535"
}
},
"timestamp": 1740996939976
}