Bitquery provides historical and real-time indexed data for over 40 blockchains through GraphQL APIs, Websockets, SQL, and cloud providers.
Bitquery provides historical and real-time indexed data for over 40 blockchains through GraphQL APIs, Websockets, SQL, and cloud providers. On Nagent, Bitquery is exposed as a fully-configurable analytics integration that any agent can call — 10 actions, and API key authentication. No code is required to wire Bitquery into your workflow — connect it once via the External Integrations panel and reuse it across every agent you build.
Agent builders use Bitquery to automate the kinds of tasks analytics teams previously handled manually. Concrete examples — each one is a single agent step in Nagent — include:
Every action and trigger is paired with a structured input/output schema (visible in the sections below), so when you wire Bitquery into Helix — our agentic agent builder — the editor knows exactly what each step expects and produces. Configure once, deploy anywhere across your Nagent agents.
Every operation an agent can call against Bitquery, with input parameters and output schema. Drop these into any step of an agent built in Helix.
BITQUERY_ARCHIVE_DATABASE_QUERYQuery the Bitquery Archive Database (V1 API) for historical blockchain data. The Archive Database provides complete historical blockchain data across 40+ blockchains including Bitcoin, Ethereum, BSC, Solana, and more. Data has a delay of tens of minutes to hours from real-time. For near-real-time data, use the Realtime Database Query instead. The V1 API uses blockchain-specific root types (bitcoin, ethereum, etc.) with fields like blocks, transactions, transfers, and trades. Queries support filtering, pagination with limit/offset, and sorting with orderBy. Example queries: - Bitcoin blocks: { bitcoin { blocks(limit: 5, orderBy: {descending: height}) { height } } } - Ethereum transactions: { ethereum { transactions(limit: 10) { hash value } } }
Input parameters
GraphQL query string to execute against the Bitquery Archive Database (V1 API). Use the V1 schema which includes blockchain-specific root types like 'bitcoin', 'ethereum', etc. For example: { bitcoin { blocks(limit: 5, orderBy: {descending: height}) { height } } }
Optional mapping of GraphQL variables for parameterized queries
Optional operation name if the query document contains multiple operations
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
BITQUERY_COMBINED_DATABASE_QUERYQuery Bitquery's Combined Database (v2 API) for blockchain data across 40+ networks. Use this tool to fetch real-time and historical blockchain data including: - Blocks, transactions, and events - Token transfers and balances - DEX trades and liquidity data - Smart contract interactions - NFT data and metadata Supported networks include: Ethereum (eth), BSC (bsc), Polygon (matic), Solana, Tron, and more. The v2 API uses a different schema than v1 - use EVM(network: eth) instead of ethereum root field.
Input parameters
The GraphQL query string to execute against Bitquery's Combined Database. Uses v2 API schema with network-specific root fields like EVM(network: eth), Solana, Tron, etc. Supports real-time and historical blockchain data. Always include explicit `limit: {count: N}` and time range filters (UTC timestamps) — omitting them causes timeouts and oversized payloads. Field names, dataset names, and filter structures must be exact; schema errors return empty results silently, not descriptive error messages. For large datasets, use cursor-based pagination instead of single bulk pulls.
Optional map of GraphQL variables for parameterized queries. Use to pass dynamic values like addresses, block numbers, or limits.
Optional operation name when the query document contains multiple named operations. Specifies which operation to execute.
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
BITQUERY_CONDITIONAL_METRICSGenerate a Bitquery GraphQL metric snippet with conditional logic using the 'if:' attribute. This tool builds metric aggregation snippets (count, sum, avg, min, max) that can be embedded in Bitquery GraphQL queries. The 'if:' filter allows applying conditions directly to metric calculations, enabling conditional aggregation like counting only successful transactions. Output format examples: - count(if: {Block: {GasUsed: {gt: "0"}}}) - sum(of: Block_GasUsed if: {Block: {Time: {after: "2024-01-01"}}}) - myAlias: avg(of: Transaction_Value if: {Transaction: {Success: true}})
Input parameters
Conditional filter to apply to the metric via the 'if:' attribute. Uses nested object structure matching Bitquery GraphQL filter syntax. Example: {'Block': {'GasUsed': {'gt': '0'}}} or {'Transaction': {'Success': true}}.
GraphQL alias to prefix the metric output. Example: 'totalGas' produces 'totalGas: sum(...)'.
The field to aggregate using 'of:' in GraphQL. Required for 'sum', 'avg', 'min', 'max' operations. For 'count' operation, this field is ignored unless using distinct_field. Example: 'Block_GasUsed', 'Transaction_Value'.
Type of metric operation to apply. Options: 'count' (count rows), 'sum' (sum values), 'avg' (average), 'min' (minimum), 'max' (maximum).
HAVING-style filter applied after aggregation via 'selectWhere:'. Useful for filtering aggregated results. Example: {'ge': '1000000'} to only include results >= 1000000.
Field name for counting distinct values (only valid for 'count' operation). When provided, generates 'distinct: <field>' in the output. Example: 'Block_Number' to count distinct blocks.
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
BITQUERY_DATABASE_SELECTIONTool to select the database (archive, realtime, combined) to query at the top level of a GraphQL request. Use after determining whether you need live, historical, or combined blockchain data.
Input parameters
Determines which Bitquery GraphQL dataset to use: realtime (latest blocks), archive (historical data), combined (merge both).
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
BITQUERY_EARLY_ACCESS_PROGRAM_QUERYExecute GraphQL queries against the Bitquery Early Access Program (EAP) Streaming API. This tool queries the EAP endpoint (streaming.bitquery.io/eap) for real-time blockchain data. The EAP provides access to streaming data across various blockchain networks including Solana, EVM chains (Ethereum, Polygon, etc.), and others for evaluation purposes. Key features: - Real-time blockchain data with minimal latency - Supports both queries and subscriptions - Networks: Solana, Ethereum, Polygon (Matic), and other EVM-compatible chains Note: EAP is limited to real-time data only. For historical data, use the Archive Database Query. Existing users can continue using EAP; new users should prefer the V2 endpoint for most use cases. Example queries: - Get latest ETH blocks: { EVM(network: eth) { Blocks(limit: {count: 5}) { Block { Number Time } } } } - Solana DEX trades: subscription { Solana { DEXTrades { Block { Time } Trade { Price } } } }
Input parameters
GraphQL query string for the Bitquery EAP Streaming API. Supports blockchain data queries for chains like Solana, EVM networks, etc. Example query: { EVM(network: eth) { Blocks(limit: {count: 10}) { Block { Number Time } } } } Example subscription: subscription { Solana { DEXTrades { Block { Time } Trade { Price } } } }
Optional GraphQL variables for parameterized queries. Pass as a dictionary mapping variable names to values. Example: {'network': 'eth', 'limit': 10}
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
BITQUERY_NETWORK_SELECTIONTool to select the blockchain network for GraphQL queries. Use before constructing dataset or metric queries to ensure the correct chain is targeted.
Input parameters
Blockchain network to query. If omitted, GraphQL defaults to eth. Supported networks: eth, bsc, bsc_testnet, goerli, rinkeby, ropsten, sepolia, classic, mordor, kotti, astor, polygon, arbitrum, avalanche, optimism, fantom, cronos, klaytn, fusion, huobi, moonbeam, celo, canto, aurora.
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
BITQUERY_OPTIONS_QUERYTool to fetch GraphQL dataset options via schema introspection. Use when you need to discover root-level query fields and their arguments before building queries. Dataset and token availability varies by Bitquery environment; verify available fields here before constructing complex queries that depend on specific datasets.
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
BITQUERY_PRICE_ASYMMETRY_METRICTool to generate GraphQL PriceAsymmetry filter snippet. Use when you need to filter trades based on price asymmetry metric.
Input parameters
Price asymmetry greater than or equal to this value.
Price asymmetry greater than this value.
Price asymmetry less than or equal to this value.
Price asymmetry less than this value.
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
BITQUERY_REALTIME_DATABASE_QUERYQuery the Bitquery Streaming (V2) API for realtime blockchain data. This tool accesses the Bitquery Streaming API at streaming.bitquery.io/graphql which provides real-time blockchain data with minimal latency. Use this for recent data (within minutes). For historical data, use the Archive Database Query. Supported query formats: - V2 EVM queries: { EVM(network: eth) { Blocks(limit: {count: 5}) { Block { Number Time } } } } - V2 Bitcoin queries: { bitcoin(network: bitcoin) { blocks(limit: {count: 5}) { height timestamp { time } } } } Note: Requires an active Bitquery subscription for streaming API access.
Input parameters
GraphQL query string to execute against the Bitquery Streaming (V2) API. Use EVM() for Ethereum-compatible chains or bitcoin() for Bitcoin data.
Optional mapping of GraphQL variables for parameterized queries
Optional operation name if the query document contains multiple operations
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
BITQUERY_SELECT_BY_METRICTool to generate a GraphQL metric snippet filtering by its value using selectWhere. Use when you need to include only metrics meeting specific value conditions (e.g., only positive sums).
Input parameters
The metric field to aggregate, e.g., 'BalanceUpdate_Amount'
Optional GraphQL alias for the metric snippet
Aggregation operation supporting selectWhere (e.g., sum, avg, min, max)
Filter expression for the metric values using selectWhere
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
No publicly available marketplace agent is found using this tool yet. There are 95 agents privately built on Nagent that already use Bitquery.
Build on Nagent
Connect Bitquery to any Nagent agent in minutes — no API key management, no boilerplate. Just configure and deploy.
The five questions agent builders ask before adopting a new integration.
Open the External Integrations panel inside Nagent (app.nagent.ai/externalIntegration), find Bitquery, and click "Connect Now." You'll authenticate with an API key — Nagent handles credential storage and refresh automatically. Once connected, Bitquery is available to any agent in your workspace.
No. Nagent provides no-code integration for every tool. Once Bitquery is connected, you configure its 10 actions directly in the agent builder UI — no API calls, no boilerplate, no schema management.
Helix — Nagent's agentic agent builder — lets you drop Bitquery steps into any workflow visually. Pick an action (e.g., one of those listed above), fill in the inputs (Helix knows the required vs. optional schema for each parameter), and connect it to upstream/downstream steps. Triggers run as the entry point of an agent, so when a Bitquery event fires, the agent kicks off automatically.
Every Bitquery action and trigger ships with a fully-typed schema — input parameters with name, type, required flag, and description, plus the output payload shape. The schemas are documented in the sections above. Helix uses these schemas to validate your configuration at build time and to type-check the data flowing between steps.
Yes. While Bitquery ships with 10 pre-built analytics actions, you can layer custom logic around them inside Helix — pre/post-processing steps, conditional branches, retries, or stitching Bitquery together with other connected tools. For deeper customization, talk to our team about Nagent's Agentic AI Lab — forward-deployed engineers who build Bitquery-based workflows tailored to your business.