Bitcoin Blocks API
The Blocks API returns block-level data on Bitcoin: height, difficulty, size, transaction count, and timestamp. Use it to drive explorer front-ends, monitor chain progression, or pull historical block context for mining and network analytics.
Bitcoin GraphQL queries are served at https://graphql.bitquery.io.
Get the 10 most recent Bitcoin blocks
Returns blocks ordered by height descending, with the timestamp formatted for display. Add a date filter to constrain the window.
query {
bitcoin(network: bitcoin) {
blocks(options: {desc: "height", limit: 10}, date: {after: "2023-10-10"}) {
timestamp {
time(format: "%Y-%m-%d %H:%M:%S")
}
height
difficulty
transactionCount
blockSizeBigInt
}
}
}
Use height: {is: N} to look up a single block, or height: {in: [N1, N2, ...]} for several at once. The same query shape works on other UTXO networks supported here by swapping network: bitcoin for litecoin, dogecoin, and others.
Find the busiest Bitcoin blocks by transaction count
Sort blocks by transactionCount descending to surface the busiest blocks on-chain — useful for network congestion studies and block utilization analysis.
query {
bitcoin(network: bitcoin) {
blocks(options: {limit: 10, desc: "transactionCount"}) {
timestamp {
time(format: "%Y-%m-%d %H:%M:%S")
}
difficulty
maximum(of: transaction_count, get: transaction_count)
transactionCount
}
}
}
Swap the sort to desc: "difficulty" or desc: "blockSizeBigInt" for different angles. Add date: {since: ..., till: ...} to search inside a specific window, or use average(of: transaction_count) for average transactions per block.
Related resources
- Bitcoin Transactions API — per-block transaction details and fees
- Bitcoin Inputs and Outputs API — UTXO data and miner rewards
- Bitcoin Kafka stream — real-time block and transaction delivery