Please note: For this RPC method, the block range defined by the start and end slots is limited to a maximum of 5 slots for a free trial account and 1,005 slots for paid accounts.
Parameters
- start_slotstringREQUIRED
The start slot encoded as an u64 integer
- end_slotstring
The end slot encoded as an u64 integer
- objectobject
The configuration object with the following fields:
- commitmentstring
The level of commitment required for the query. It can be one of:
- finalizedstring
The node will query the most recent block the cluster has recognized as finalized
- confirmedstring
The node will query the most recent block that has been voted on by supermajority of the cluster
Returns
- result
An array of u64 integers representing confirmed blocks within the specified start_slot to end_slot range.
Request
1curl https://docs-demo.solana-mainnet.quiknode.pro/ \2-X POST \3-H "Content-Type: application/json" \4-d '{5"jsonrpc": "2.0",6"id":1,7"method":"getBlocks",8"params":[335819351, 335819361]9}'
1curl https://docs-demo.solana-mainnet.quiknode.pro/ \2-X POST \3-H "Content-Type: application/json" \4-d '{5"jsonrpc": "2.0",6"id":1,7"method":"getBlocks",8"params":[335819351, 335819361]9}'
1require "uri"2require "json"3require "net/http"45url = URI("https://docs-demo.solana-mainnet.quiknode.pro/")67https = Net::HTTP.new(url.host, url.port)8https.use_ssl = true910request = Net::HTTP::Post.new(url)11request["Content-Type"] = "application/json"12request.body = JSON.dump({13"jsonrpc": "2.0",14"id": 1,15"method": "getBlocks",16"params": [175,181019]20})2122response = https.request(request)23puts response.read_body24
1require "uri"2require "json"3require "net/http"45url = URI("https://docs-demo.solana-mainnet.quiknode.pro/")67https = Net::HTTP.new(url.host, url.port)8https.use_ssl = true910request = Net::HTTP::Post.new(url)11request["Content-Type"] = "application/json"12request.body = JSON.dump({13"jsonrpc": "2.0",14"id": 1,15"method": "getBlocks",16"params": [175,181019]20})2122response = https.request(request)23puts response.read_body24
1const web3 = require("@solana/web3.js");2(async () => {3const solana = new web3.Connection("https://docs-demo.solana-mainnet.quiknode.pro/");4console.log(await solana.getBlocks(5, 10));5})();6
1const web3 = require("@solana/web3.js");2(async () => {3const solana = new web3.Connection("https://docs-demo.solana-mainnet.quiknode.pro/");4console.log(await solana.getBlocks(5, 10));5})();6
1import { createSolanaRpc } from "@solana/kit";23(async () => {4const solanaRpc = createSolanaRpc("https://docs-demo.solana-mainnet.quiknode.pro/");56try {7const blocks = await solanaRpc.getBlocks(BigInt(5), BigInt(10)).send();8console.log("Blocks:", blocks);9} catch (error) {10console.error("Error fetching blocks:", error);11}12})();
1import { createSolanaRpc } from "@solana/kit";23(async () => {4const solanaRpc = createSolanaRpc("https://docs-demo.solana-mainnet.quiknode.pro/");56try {7const blocks = await solanaRpc.getBlocks(BigInt(5), BigInt(10)).send();8console.log("Blocks:", blocks);9} catch (error) {10console.error("Error fetching blocks:", error);11}12})();
1from solana.rpc.api import Client2solana_client = Client("https://docs-demo.solana-mainnet.quiknode.pro/")3print(solana_client.get_blocks(5, 10))
1from solana.rpc.api import Client2solana_client = Client("https://docs-demo.solana-mainnet.quiknode.pro/")3print(solana_client.get_blocks(5, 10))
1use reqwest::header;2use reqwest::Client;3use std::error::Error;45#[tokio::main]6async fn main() -> Result<(), Box<dyn Error>> {7let mut headers = header::HeaderMap::new();8headers.insert("Content-Type", "application/json".parse().unwrap());910let client = Client::new();11let json_data = r#"12{13"jsonrpc": "2.0",14"id": 1,15"method": "getBlocks",16"params": [175,181019]20}21"#;22let response = client23.post("https://docs-demo.solana-mainnet.quiknode.pro/")24.headers(headers)25.body(json_data)26.send()27.await?;2829let body = response.text().await?;30println!("{}", body);3132Ok(())33}34
1use reqwest::header;2use reqwest::Client;3use std::error::Error;45#[tokio::main]6async fn main() -> Result<(), Box<dyn Error>> {7let mut headers = header::HeaderMap::new();8headers.insert("Content-Type", "application/json".parse().unwrap());910let client = Client::new();11let json_data = r#"12{13"jsonrpc": "2.0",14"id": 1,15"method": "getBlocks",16"params": [175,181019]20}21"#;22let response = client23.post("https://docs-demo.solana-mainnet.quiknode.pro/")24.headers(headers)25.body(json_data)26.send()27.await?;2829let body = response.text().await?;30println!("{}", body);3132Ok(())33}34
1import { QuicknodeSdk } from '@quicknode/sdk'23const qn = new QuicknodeSdk({})45const result = await qn.rpc.call(6'getBlocks',7[8335819351,933581936110],11undefined,12'https://docs-demo.solana-mainnet.quiknode.pro/'13)1415console.log(result)
1import { QuicknodeSdk } from '@quicknode/sdk'23const qn = new QuicknodeSdk({})45const result = await qn.rpc.call(6'getBlocks',7[8335819351,933581936110],11undefined,12'https://docs-demo.solana-mainnet.quiknode.pro/'13)1415console.log(result)
1import asyncio2from quicknode_sdk import QuicknodeSdk, SdkFullConfig34async def main():5qn = QuicknodeSdk(SdkFullConfig(api_key=None))6result = await qn.rpc.call(7"getBlocks",8[9335819351,1033581936111],12endpoint_url="https://docs-demo.solana-mainnet.quiknode.pro/",13)14print(result)1516asyncio.run(main())
1import asyncio2from quicknode_sdk import QuicknodeSdk, SdkFullConfig34async def main():5qn = QuicknodeSdk(SdkFullConfig(api_key=None))6result = await qn.rpc.call(7"getBlocks",8[9335819351,1033581936111],12endpoint_url="https://docs-demo.solana-mainnet.quiknode.pro/",13)14print(result)1516asyncio.run(main())
1require "quicknode_sdk"23qn = QuicknodeSdk::SDK.from_config(api_key: nil)45result = qn.rpc.call(6method: "getBlocks",7params: [8335819351,933581936110],11endpoint_url: "https://docs-demo.solana-mainnet.quiknode.pro/"12)1314puts result
1require "quicknode_sdk"23qn = QuicknodeSdk::SDK.from_config(api_key: nil)45result = qn.rpc.call(6method: "getBlocks",7params: [8335819351,933581936110],11endpoint_url: "https://docs-demo.solana-mainnet.quiknode.pro/"12)1314puts result
1use quicknode_sdk::{QuicknodeSdk, SdkFullConfig};23#[tokio::main]4async fn main() -> Result<(), Box<dyn std::error::Error>> {5let qn = QuicknodeSdk::new(&SdkFullConfig::keyless())?;6let result = qn7.rpc8.call(9"getBlocks",10Some(serde_json::json!([11335819351,1233581936113])),14None,15Some("https://docs-demo.solana-mainnet.quiknode.pro/".into()),16)17.await?;1819println!("{result}");20Ok(())21}
1use quicknode_sdk::{QuicknodeSdk, SdkFullConfig};23#[tokio::main]4async fn main() -> Result<(), Box<dyn std::error::Error>> {5let qn = QuicknodeSdk::new(&SdkFullConfig::keyless())?;6let result = qn7.rpc8.call(9"getBlocks",10Some(serde_json::json!([11335819351,1233581936113])),14None,15Some("https://docs-demo.solana-mainnet.quiknode.pro/".into()),16)17.await?;1819println!("{result}");20Ok(())21}
Response
1{2"jsonrpc": "2.0",3"result": [45,56,67,78,89,91010],11"id": 112}
1{2"jsonrpc": "2.0",3"result": [45,56,67,78,89,91010],11"id": 112}
Don't have an account yet?
Create your Quicknode endpoint in seconds and start building
Get started for free