⚠️Blast API (blastapi.io) ends Oct 31. Migrate to Dwellir and skip Alchemy's expensive compute units.
Switch Today →
Skip to main content

chain_getBlock - JSON-RPC Method

Description

Returns the complete block contents for a given hash or, when no parameter is supplied, the most recent block on Enjin Matrix. The response includes the header, all extrinsics encoded in SCALE, and optional justifications. This method underpins block explorers, indexers, and archival tooling.

Parameters

ParameterTypeRequiredDescription
blockHashstringNoHex-encoded block hash. If omitted, the best block is returned

Returns

FieldTypeDescription
blockobjectBlock data, including header and extrinsics
block.headerobjectHeader metadata (parent hash, state root, extrinsics root, digest)
block.extrinsicsarrayExtrinsic payloads encoded in SCALE hex
justificationsarray | nullConsensus justifications when available

Request Example

{
"jsonrpc": "2.0",
"method": "chain_getBlock",
"params": [
"0x776f58000fb76b98f36ed750dba242f4f03ab040152c35a7b4c34f3c32e96dc3"
],
"id": 1
}

Response Example

{
"jsonrpc": "2.0",
"result": {
"block": {
"header": {
"parentHash": "0xf8557e8e44cdb4d9cb6632549d5cd641180603cb083cf772278fd8f06934ebb5",
"number": "0x677848",
"stateRoot": "0x4322a28dc510ee0d58c4f0fcb2df32bf24a44b490ba177efe807be47e6eaa469",
"extrinsicsRoot": "0xacebd0cee16a6670db6970f2754f75a60a746c100b3033dc2f3affb7029a0fbb",
"digest": {
"logs": [
"0x066175726120d4917a1100000000",
"0x045250535290129381a536fb2010aacff87fb5558c5d7dfde2ace0c7c5cc982cf8c076d4a870e218ed02"
]
}
},
"extrinsics": [
"0x71410401009103d08aae3f0e531e0f9df83f8ddba716bc079d777d48e3eafcc2d3b92572a528401ee19d0143acae35e2e5d4dda94b91e39d87529ff5e2f450967daedda276efb0bc03dcdacbbb9ba9...",
"0x280403000bc0d8b9a89901"
]
},
"justifications": null
},
"id": 1
}

💡 Extrinsics are abbreviated for readability. Use the actual response to replay or decode transactions in your tooling.

Code Examples

cURL

curl https://api-enjin-matrixchain.n.dwellir.com/YOUR_API_KEY \
-X POST \
-H "Content-Type: application/json" \
-d '{
"jsonrpc": "2.0",
"method": "chain_getBlock",
"params": ["0x776f58000fb76b98f36ed750dba242f4f03ab040152c35a7b4c34f3c32e96dc3"],
"id": 1
}'

JavaScript

async function getBlock(blockHash) {
const response = await fetch('https://api-enjin-matrixchain.n.dwellir.com/YOUR_API_KEY', {
method: 'POST',
headers: { 'Content-Type': 'application/json' },
body: JSON.stringify({
jsonrpc: '2.0',
method: 'chain_getBlock',
params: blockHash ? [blockHash] : [],
id: 1
})
});

const { result } = await response.json();
return result.block;
}

Python

import json
import requests

payload = {
"jsonrpc": "2.0",
"method": "chain_getBlock",
"params": [], # set to [hash] for a specific block
"id": 1,
}

block = requests.post(
"https://api-enjin-matrixchain.n.dwellir.com/YOUR_API_KEY",
headers={"Content-Type": "application/json"},
data=json.dumps(payload),
timeout=10,
).json()["result"]["block"]

print(block["header"]["number"])

Usage Notes

  • Decode extrinsics with @polkadot/api, subxt, or scale-codec tooling to inspect calls such as NFT minting or fuel tank operations.
  • Pair with chain_getBlockHash/chain_getHeader when iterating through block heights.
  • Archive services should store both the header and extrinsics array to reconstruct historical state transitions.