The Graph
Query onchain data from 20 Subgraphs: Uniswap, Aave, Aerodrome, ENS, Curve, Lido and more. Each request costs $0.01 in USDC on Base over x402.
Per call
$0.01
Invoke this API
# Inspect the endpoint. curl does not complete x402 payment.curl --request POST 'https://gateway.thegraph.com/api/x402/subgraphs/id/5zvR82QoaXYFyDEKLZ9t6v9adgnptxYpKpSbxtgVENFV'
# Pay one request from a vapi-network wallet. Add --content-type and --body for the request input.vapi pay 'https://gateway.thegraph.com/api/x402/subgraphs/id/5zvR82QoaXYFyDEKLZ9t6v9adgnptxYpKpSbxtgVENFV' \ --method POST \ --expected-pay-to 0x79DC34E41B2b591078d3dE222C43EcaaBD52FcCB \ --max 0.10
call.pay {"url":"https://gateway.thegraph.com/api/x402/subgraphs/id/5zvR82QoaXYFyDEKLZ9t6v9adgnptxYpKpSbxtgVENFV","method":"POST","maxPriceUsd":"0.10","expectedPayTo":"0x79DC34E41B2b591078d3dE222C43EcaaBD52FcCB"}Try it
https://gateway.thegraph.com/api/x402/subgraphs/id/5zvR82QoaXYFyDEKLZ9t6v9adgnptxYpKpSbxtgVENFVRequest preview
This is the exact URL and payload used for the unpaid price check.
- Request
- POST https://gateway.thegraph.com/api/x402/subgraphs/id/5zvR82QoaXYFyDEKLZ9t6v9adgnptxYpKpSbxtgVENFV
- Content type
- application/json
- Body
{ "query": "{ pools(first: 5, orderBy: totalValueLockedUSD, orderDirection: desc) { id token0 { symbol } token1 { symbol } feeTier totalValueLockedUSD volumeUSD txCount } }" }
The browser refuses to sign if the live quote exceeds this amount.
Response
Technical details
More routes
- $0.01POST
/api/x402/subgraphs/id/96eJ9Go8gFjySRGnndG7EYxThaiwVDV8BYPp1TMDcoYh - $0.01POST
/api/x402/subgraphs/id/FQ6JYszEKApsBpAmiHesRsd9Ygc6mzmpNRANeVQFYoVX - $0.01POST
/api/x402/subgraphs/id/EgnS9YE1avupkvCNj9fHnJxppfEmNNywYJtghqiu2pd9 - $0.01POST
/api/x402/subgraphs/id/Cd2gEDVeqnjBn1hSeqFMitw8Q1iiyV9FYUZkLNRcL87g - $0.01POST
/api/x402/subgraphs/id/GQFbb95cE6d8mV989mL5figjaGaKCQB3xqYrr1bRyXqF - $0.01POST
/api/x402/subgraphs/id/5XqPmWe6gjyrJtFn9cLy237i4cWw2j9HcUJEXsP5qGtH - $0.01POST
/api/x402/subgraphs/id/AwoxEZbiWLvv6e3QdvdMZw4WDURdGbvPfHmZRc8Dpfz9 - $0.01POST
/api/x402/subgraphs/id/3fy93eAT56UJsRCEht8iFhfi6wjHWXtZ9dnnbQmvFopF - $0.01POST
/api/x402/subgraphs/id/C4ayEZP2yTXRAB8vSaTrgN4m9anTe9Mdm2ViyiAuV9TV - $0.01POST
/api/x402/subgraphs/id/Sxx812XgeKyzQPaBpR5YZWmGV5fZuBaPdh7DFhzSwiQ - $0.01POST
/api/x402/subgraphs/id/GyZ9MgVQkTWuXGMSd3LXESvpevE8S8aD3uktJh7kbVmc - $0.01POST
/api/x402/subgraphs/id/EGtoDJNnxouSwrBvf4HJMSWPCwbbo3XbTk4eA3LDeDUh - $0.01POST
/api/x402/subgraphs/id/7e2mrDKuzmoSpS9WPHZycL3Ab52RNjdMrPLRduXM9TGi - $0.01POST
/api/x402/subgraphs/id/GENunSHWLBXm59mBSgPzQ8metBEp9YDfdqwFr91Av1UM - $0.01POST
/api/x402/subgraphs/id/2hcXhs36pTBDVUmk5K2Zkr6N4UYGwaHuco2a6jyTsijo - $0.01POST
/api/x402/subgraphs/id/5P6vRdU8BQUKMSc9v5sVDMczBRvURyK7hnrQCKf24PXW - $0.01POST
/api/x402/subgraphs/id/GJBBemEfHQVbr5kwpYdGapkBF8DwPWzA6XUa2xo6ipYE - $0.01POST
/api/x402/subgraphs/id/HoaAeRNtfrL7h7CMKs7UQprDhQdo7DHsAe6TaeQD6Wh8 - $0.01POST
/api/x402/subgraphs/id/8f1XAvLcseuxGvme1EYCSCoRnpfDPa6D5jHB914gEM3L
About this API
The Graph's Subgraph Gateway accepts direct x402 payments for any Subgraph on The Graph Network. This listing curates 20 widely used Subgraphs: Uniswap v3 on Ethereum, Arbitrum and Optimism; Aave v3, ENS, Compound v3, Curve, Balancer v2, Lido and SushiSwap v2 on Ethereum; and on Base: Uniswap v2, v3 and v4, Aerodrome, Aave v3, Compound v3, Superfluid, SquadSwap, Thirdfy and CreatorBid. Pick a Subgraph, answer a few questions, and pay $0.01 in USDC on Base per query.
The browser checks the live x402 terms before every paid call. If CORS blocks a direct request, vAPI gives you the exact vapi-network handoff.
For agents
Prompt for AI
Paste this into any agent that can pay over x402. No API key needed.
I want to use the "The Graph" API listed on vAPI Call.
Query onchain data from 20 Subgraphs: Uniswap, Aave, Aerodrome, ENS, Curve, Lido and more. Each request costs $0.01 in USDC on Base over x402.
Endpoint: POST https://gateway.thegraph.com/api/x402/subgraphs/id/5zvR82QoaXYFyDEKLZ9t6v9adgnptxYpKpSbxtgVENFV
Price: $0.01 per call, pay per use via x402 (USDC on Base). No API key required.
Input schema: {
"type": "object",
"required": [
"query"
],
"properties": {
"query": {
"type": "string",
"example": "{ pools(first: 5, orderBy: totalValueLockedUSD, orderDirection: desc) { id token0 { symbol } token1 { symbol } feeTier totalValueLockedUSD volumeUSD txCount } }",
"description": "A GraphQL query against the Uniswap v3 Subgraph on Ethereum."
},
"variables": {
"type": "object",
"description": "Optional GraphQL variables."
}
}
}
What it does: Uniswap v3 liquidity pools on Ethereum, from The Graph.
Endpoint: POST https://gateway.thegraph.com/api/x402/subgraphs/id/96eJ9Go8gFjySRGnndG7EYxThaiwVDV8BYPp1TMDcoYh
Price: $0.01 per call, pay per use via x402 (USDC on Base). No API key required.
Input schema: {
"type": "object",
"required": [
"query"
],
"properties": {
"query": {
"type": "string",
"example": "{ pools(first: 5, orderBy: totalValueLockedUSD, orderDirection: desc) { id token0 { symbol } token1 { symbol } feeTier totalValueLockedUSD volumeUSD txCount } }",
"description": "A GraphQL query against the Uniswap v3 Subgraph on Base."
},
"variables": {
"type": "object",
"description": "Optional GraphQL variables."
}
}
}
What it does: Uniswap v3 liquidity pools on Base, from The Graph.
Endpoint: POST https://gateway.thegraph.com/api/x402/subgraphs/id/FQ6JYszEKApsBpAmiHesRsd9Ygc6mzmpNRANeVQFYoVX
Price: $0.01 per call, pay per use via x402 (USDC on Base). No API key required.
Input schema: {
"type": "object",
"required": [
"query"
],
"properties": {
"query": {
"type": "string",
"example": "{ liquidityPools(first: 5, orderBy: totalValueLockedUSD, orderDirection: desc) { id name symbol totalValueLockedUSD cumulativeVolumeUSD cumulativeTotalRevenueUSD } }",
"description": "A GraphQL query against the Uniswap v3 Subgraph on Arbitrum."
},
"variables": {
"type": "object",
"description": "Optional GraphQL variables."
}
}
}
What it does: Uniswap v3 liquidity pools on Arbitrum, from The Graph (Messari standardized Subgraph).
Endpoint: POST https://gateway.thegraph.com/api/x402/subgraphs/id/EgnS9YE1avupkvCNj9fHnJxppfEmNNywYJtghqiu2pd9
Price: $0.01 per call, pay per use via x402 (USDC on Base). No API key required.
Input schema: {
"type": "object",
"required": [
"query"
],
"properties": {
"query": {
"type": "string",
"example": "{ liquidityPools(first: 5, orderBy: totalValueLockedUSD, orderDirection: desc) { id name symbol totalValueLockedUSD cumulativeVolumeUSD cumulativeTotalRevenueUSD } }",
"description": "A GraphQL query against the Uniswap v3 Subgraph on Optimism."
},
"variables": {
"type": "object",
"description": "Optional GraphQL variables."
}
}
}
What it does: Uniswap v3 liquidity pools on Optimism, from The Graph (Messari standardized Subgraph).
Endpoint: POST https://gateway.thegraph.com/api/x402/subgraphs/id/Cd2gEDVeqnjBn1hSeqFMitw8Q1iiyV9FYUZkLNRcL87g
Price: $0.01 per call, pay per use via x402 (USDC on Base). No API key required.
Input schema: {
"type": "object",
"required": [
"query"
],
"properties": {
"query": {
"type": "string",
"example": "{ reserves(first: 5, orderBy: totalLiquidity, orderDirection: desc) { id symbol name decimals totalLiquidity availableLiquidity utilizationRate variableBorrowRate } }",
"description": "A GraphQL query against the Aave v3 Subgraph on Ethereum."
},
"variables": {
"type": "object",
"description": "Optional GraphQL variables."
}
}
}
What it does: Aave v3 lending reserves on Ethereum, from The Graph.
Endpoint: POST https://gateway.thegraph.com/api/x402/subgraphs/id/GQFbb95cE6d8mV989mL5figjaGaKCQB3xqYrr1bRyXqF
Price: $0.01 per call, pay per use via x402 (USDC on Base). No API key required.
Input schema: {
"type": "object",
"required": [
"query"
],
"properties": {
"query": {
"type": "string",
"example": "{ reserves(first: 5, orderBy: totalLiquidity, orderDirection: desc) { id symbol name decimals totalLiquidity availableLiquidity utilizationRate variableBorrowRate } }",
"description": "A GraphQL query against the Aave v3 Subgraph on Base."
},
"variables": {
"type": "object",
"description": "Optional GraphQL variables."
}
}
}
What it does: Aave v3 lending reserves on Base, from The Graph.
Endpoint: POST https://gateway.thegraph.com/api/x402/subgraphs/id/5XqPmWe6gjyrJtFn9cLy237i4cWw2j9HcUJEXsP5qGtH
Price: $0.01 per call, pay per use via x402 (USDC on Base). No API key required.
Input schema: {
"type": "object",
"required": [
"query"
],
"properties": {
"query": {
"type": "string",
"example": "{ domains(first: 5, orderBy: createdAt, orderDirection: desc) { id name labelName subdomainCount createdAt expiryDate owner { id } } }",
"description": "A GraphQL query against the ENS Subgraph on Ethereum."
},
"variables": {
"type": "object",
"description": "Optional GraphQL variables."
}
}
}
What it does: ENS domains on Ethereum, from The Graph.
Endpoint: POST https://gateway.thegraph.com/api/x402/subgraphs/id/AwoxEZbiWLvv6e3QdvdMZw4WDURdGbvPfHmZRc8Dpfz9
Price: $0.01 per call, pay per use via x402 (USDC on Base). No API key required.
Input schema: {
"type": "object",
"required": [
"query"
],
"properties": {
"query": {
"type": "string",
"example": "{ markets(first: 5, orderBy: totalValueLockedUSD, orderDirection: desc) { id name inputToken { symbol } totalValueLockedUSD totalDepositBalanceUSD totalBorrowBalanceUSD } }",
"description": "A GraphQL query against the Compound v3 Subgraph on Ethereum."
},
"variables": {
"type": "object",
"description": "Optional GraphQL variables."
}
}
}
What it does: Compound v3 lending markets on Ethereum, from The Graph (Messari standardized Subgraph).
Endpoint: POST https://gateway.thegraph.com/api/x402/subgraphs/id/3fy93eAT56UJsRCEht8iFhfi6wjHWXtZ9dnnbQmvFopF
Price: $0.01 per call, pay per use via x402 (USDC on Base). No API key required.
Input schema: {
"type": "object",
"required": [
"query"
],
"properties": {
"query": {
"type": "string",
"example": "{ liquidityPools(first: 5, orderBy: totalValueLockedUSD, orderDirection: desc) { id name symbol inputTokens { symbol } totalValueLockedUSD cumulativeVolumeUSD } }",
"description": "A GraphQL query against the Curve Subgraph on Ethereum."
},
"variables": {
"type": "object",
"description": "Optional GraphQL variables."
}
}
}
What it does: Curve liquidity pools on Ethereum, from The Graph (Messari standardized Subgraph).
Endpoint: POST https://gateway.thegraph.com/api/x402/subgraphs/id/C4ayEZP2yTXRAB8vSaTrgN4m9anTe9Mdm2ViyiAuV9TV
Price: $0.01 per call, pay per use via x402 (USDC on Base). No API key required.
Input schema: {
"type": "object",
"required": [
"query"
],
"properties": {
"query": {
"type": "string",
"example": "{ pools(first: 5, orderBy: totalShares, orderDirection: desc) { id symbol name poolType totalShares swapsCount holdersCount } }",
"description": "A GraphQL query against the Balancer v2 Subgraph on Ethereum."
},
"variables": {
"type": "object",
"description": "Optional GraphQL variables."
}
}
}
What it does: Balancer v2 liquidity pools on Ethereum, from The Graph.
Endpoint: POST https://gateway.thegraph.com/api/x402/subgraphs/id/Sxx812XgeKyzQPaBpR5YZWmGV5fZuBaPdh7DFhzSwiQ
Price: $0.01 per call, pay per use via x402 (USDC on Base). No API key required.
Input schema: {
"type": "object",
"required": [
"query"
],
"properties": {
"query": {
"type": "string",
"example": "{ totalRewards(first: 5, orderBy: blockTime, orderDirection: desc) { id totalRewards apr aprBeforeFees totalPooledEtherAfter blockTime } }",
"description": "A GraphQL query against the Lido Subgraph on Ethereum."
},
"variables": {
"type": "object",
"description": "Optional GraphQL variables."
}
}
}
What it does: Lido oracle reports on Ethereum, from The Graph.
Endpoint: POST https://gateway.thegraph.com/api/x402/subgraphs/id/GyZ9MgVQkTWuXGMSd3LXESvpevE8S8aD3uktJh7kbVmc
Price: $0.01 per call, pay per use via x402 (USDC on Base). No API key required.
Input schema: {
"type": "object",
"required": [
"query"
],
"properties": {
"query": {
"type": "string",
"example": "{ pairs(first: 5, orderBy: reserveUSD, orderDirection: desc) { id token0 { symbol } token1 { symbol } reserveUSD volumeUSD txCount } }",
"description": "A GraphQL query against the Sushiswap Subgraph on Ethereum."
},
"variables": {
"type": "object",
"description": "Optional GraphQL variables."
}
}
}
What it does: Sushiswap trading pairs on Ethereum, from The Graph.
Endpoint: POST https://gateway.thegraph.com/api/x402/subgraphs/id/EGtoDJNnxouSwrBvf4HJMSWPCwbbo3XbTk4eA3LDeDUh
Price: $0.01 per call, pay per use via x402 (USDC on Base). No API key required.
Input schema: {
"type": "object",
"required": [
"query"
],
"properties": {
"query": {
"type": "string",
"example": "{ pools(first: 5, orderBy: totalValueLockedUSD, orderDirection: desc) { id token0 { symbol } token1 { symbol } feeTier hooks totalValueLockedUSD volumeUSD txCount } }",
"description": "A GraphQL query against the Uniswap v4 Subgraph on Base."
},
"variables": {
"type": "object",
"description": "Optional GraphQL variables."
}
}
}
What it does: Uniswap v4 liquidity pools on Base, from The Graph.
Endpoint: POST https://gateway.thegraph.com/api/x402/subgraphs/id/7e2mrDKuzmoSpS9WPHZycL3Ab52RNjdMrPLRduXM9TGi
Price: $0.01 per call, pay per use via x402 (USDC on Base). No API key required.
Input schema: {
"type": "object",
"required": [
"query"
],
"properties": {
"query": {
"type": "string",
"example": "{ pairs(first: 5, orderBy: reserveUSD, orderDirection: desc) { id token0 { symbol } token1 { symbol } reserveUSD volumeUSD txCount } }",
"description": "A GraphQL query against the Uniswap v2 Subgraph on Base."
},
"variables": {
"type": "object",
"description": "Optional GraphQL variables."
}
}
}
What it does: Uniswap v2 trading pairs on Base, from The Graph.
Endpoint: POST https://gateway.thegraph.com/api/x402/subgraphs/id/GENunSHWLBXm59mBSgPzQ8metBEp9YDfdqwFr91Av1UM
Price: $0.01 per call, pay per use via x402 (USDC on Base). No API key required.
Input schema: {
"type": "object",
"required": [
"query"
],
"properties": {
"query": {
"type": "string",
"example": "{ pools(first: 5, where: { totalValueLockedUSD_gt: \"1000000\" }) { id token0 { symbol } token1 { symbol } feeTier totalValueLockedUSD volumeUSD feesUSD txCount } }",
"description": "A GraphQL query against the Aerodrome Subgraph on Base. Filter pools with `where` (for example `totalValueLockedUSD_gt`); sorting pools by a USD total times out at The Graph's indexers."
},
"variables": {
"type": "object",
"description": "Optional GraphQL variables."
}
}
}
What it does: Aerodrome liquidity pools on Base, from The Graph.
Endpoint: POST https://gateway.thegraph.com/api/x402/subgraphs/id/2hcXhs36pTBDVUmk5K2Zkr6N4UYGwaHuco2a6jyTsijo
Price: $0.01 per call, pay per use via x402 (USDC on Base). No API key required.
Input schema: {
"type": "object",
"required": [
"query"
],
"properties": {
"query": {
"type": "string",
"example": "{ marketAccountings(first: 5, orderBy: totalBaseSupplyUsd, orderDirection: desc) { id market { configuration { name symbol } } totalBaseSupplyUsd totalBaseBorrowUsd utilization netSupplyApr netBorrowApr } }",
"description": "A GraphQL query against the Compound v3 Subgraph on Base."
},
"variables": {
"type": "object",
"description": "Optional GraphQL variables."
}
}
}
What it does: Compound v3 lending markets on Base, from The Graph.
Endpoint: POST https://gateway.thegraph.com/api/x402/subgraphs/id/5P6vRdU8BQUKMSc9v5sVDMczBRvURyK7hnrQCKf24PXW
Price: $0.01 per call, pay per use via x402 (USDC on Base). No API key required.
Input schema: {
"type": "object",
"required": [
"query"
],
"properties": {
"query": {
"type": "string",
"example": "{ streams(first: 5, orderBy: currentFlowRate, orderDirection: desc) { id token { symbol } sender { id } receiver { id } currentFlowRate deposit updatedAtTimestamp } }",
"description": "A GraphQL query against the Superfluid Subgraph on Base."
},
"variables": {
"type": "object",
"description": "Optional GraphQL variables."
}
}
}
What it does: Superfluid token streams on Base, from The Graph.
Endpoint: POST https://gateway.thegraph.com/api/x402/subgraphs/id/GJBBemEfHQVbr5kwpYdGapkBF8DwPWzA6XUa2xo6ipYE
Price: $0.01 per call, pay per use via x402 (USDC on Base). No API key required.
Input schema: {
"type": "object",
"required": [
"query"
],
"properties": {
"query": {
"type": "string",
"example": "{ binPools(first: 5, orderBy: totalValueLockedUSD, orderDirection: desc) { id token0 { symbol } token1 { symbol } feeTier totalValueLockedUSD volumeUSD feesUSD txCount } }",
"description": "A GraphQL query against the SquadSwap Subgraph on Base."
},
"variables": {
"type": "object",
"description": "Optional GraphQL variables."
}
}
}
What it does: SquadSwap liquidity pools on Base, from The Graph.
Endpoint: POST https://gateway.thegraph.com/api/x402/subgraphs/id/HoaAeRNtfrL7h7CMKs7UQprDhQdo7DHsAe6TaeQD6Wh8
Price: $0.01 per call, pay per use via x402 (USDC on Base). No API key required.
Input schema: {
"type": "object",
"required": [
"query"
],
"properties": {
"query": {
"type": "string",
"example": "{ pools(first: 5, orderBy: totalValueLockedUSD, orderDirection: desc) { id token0 { symbol } token1 { symbol } fee totalValueLockedUSD volumeUSD feesUSD txCount } }",
"description": "A GraphQL query against the Thirdfy Subgraph on Base."
},
"variables": {
"type": "object",
"description": "Optional GraphQL variables."
}
}
}
What it does: Thirdfy liquidity pools on Base, from The Graph.
Endpoint: POST https://gateway.thegraph.com/api/x402/subgraphs/id/8f1XAvLcseuxGvme1EYCSCoRnpfDPa6D5jHB914gEM3L
Price: $0.01 per call, pay per use via x402 (USDC on Base). No API key required.
Input schema: {
"type": "object",
"required": [
"query"
],
"properties": {
"query": {
"type": "string",
"example": "{ agentKeys(first: 5, orderBy: createdAtBlockTimestamp, orderDirection: desc) { id name symbol creator totalSupply marketCap totalSubscribers launchAt createdAtBlockTimestamp } }",
"description": "A GraphQL query against the CreatorBid Subgraph on Base."
},
"variables": {
"type": "object",
"description": "Optional GraphQL variables."
}
}
}
What it does: CreatorBid Agent Keys on Base, from The Graph.
Important notes — read before calling:
- The live 402 challenge is authoritative: trust its price, recipient, and terms over this prompt.
- Send the POST request body as application/json.
- Send the POST request body as application/json.
- Send the POST request body as application/json.
- Send the POST request body as application/json.
- Send the POST request body as application/json.
- Send the POST request body as application/json.
- Send the POST request body as application/json.
- Send the POST request body as application/json.
- Send the POST request body as application/json.
- Send the POST request body as application/json.
- Send the POST request body as application/json.
- Send the POST request body as application/json.
- Send the POST request body as application/json.
- Send the POST request body as application/json.
- Send the POST request body as application/json.
- Send the POST request body as application/json.
- Send the POST request body as application/json.
- Send the POST request body as application/json.
- Send the POST request body as application/json.
- Send the POST request body as application/json.
- vAPI has verified this listing.
Call the endpoint over x402 (for example with the vapi-network MCP `call.pay` tool) and return the result. I will provide the inputs next.Need a wallet your agent can spend from? Set up vapi-network
