getBlockCommitment

Returns the commitment information for a particular block identified by slot. This includes the amount of cluster stake that has voted on the block and the total active stake for the epoch. It is useful for applications that need to assess the level of consensus a block has achieved before acting on its data.

Parameters

#TypeRequiredDescription
1u64YesSlot number of the block to query

Response

Returns an object:

FieldTypeDescription
commitment`arraynull`
totalStakeu64Total active stake in lamports for the current epoch

Code Examples

cURL

1curl http://[IP_ADDRESS]:[PORT] -X POST -H "Content-Type: application/json" -d '{
2  "jsonrpc": "2.0",
3  "id": 1,
4  "method": "getBlockCommitment",
5  "params": [
6    166974442
7  ]
8}'

TypeScript

1const response = await fetch("http://[IP_ADDRESS]:[PORT]", {
2  method: "POST",
3  headers: { "Content-Type": "application/json" },
4  body: JSON.stringify({
5    jsonrpc: "2.0",
6    id: 1,
7    method: "getBlockCommitment",
8    params: [
9      166974442
10    ]
11  }),
12});
13const { result } = await response.json();
14console.log("Total stake:", result.totalStake);

Python

1import requests
2
3response = requests.post("http://[IP_ADDRESS]:[PORT]", json={
4    "jsonrpc": "2.0",
5    "id": 1,
6    "method": "getBlockCommitment",
7    "params": [
8        166974442
9    ]
10})
11result = response.json()["result"]
12print(f"Total stake: {result['totalStake']}")

Rust

1use reqwest::Client;
2use serde_json::json;
3
4#[tokio::main]
5async fn main() -> Result<(), Box<dyn std::error::Error>> {
6    let client = Client::new();
7    let res = client.post("http://[IP_ADDRESS]:[PORT]")
8        .json(&json!({
9            "jsonrpc": "2.0",
10            "id": 1,
11            "method": "getBlockCommitment",
12            "params": [
13                166974442_u64
14            ]
15        }))
16        .send().await?
17        .text().await?;
18    println!("{}", res);
19    Ok(())
20}

Example Response

1{
2  "jsonrpc": "2.0",
3  "result": {
4    "commitment": [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 497717120],
5    "totalStake": 497717120
6  },
7  "id": 1
8}