Docs
Supported ChainsAsset HubSubstrate APIChain Methods

chain_getBlock - Asset Hub RPC Method

Retrieve block data by hash on Asset Hub. Essential for accessing block headers and extrinsics on Polkadot's system parachain managing $4.5B+ in DOT tokens, native USDC/USDT, and NFTs.

Retrieves complete block information from Asset Hub, including the block header, extrinsics, and justifications.

Why Asset Hub? Build on Polkadot's system parachain managing $4.5B+ in DOT tokens, native USDC/USDT, and NFTs with 50-90% lower fees than Relay Chain, fee payment in any supported asset, 1.5M+ accounts migrated, and trustless Ethereum bridge access.

Use Cases

The chain_getBlock method is essential for:

  • Block explorers - Display complete block information
  • Chain analysis - Analyze block production patterns
  • Transaction verification - Confirm extrinsic inclusion for native stablecoin transfers (USDC, USDT), DOT staking and governance, and cross-chain asset management via XCM
  • Data indexing - Build historical blockchain databases

Request Parameters

Request
blockHashString

Hex-encoded block hash. If omitted, returns latest block

Response Body

Response
blockObject

Complete block data

block.headerObject

Block header information

block.header.parentHashString

Hash of the parent block

block.header.numberString

Block number (hex-encoded)

block.header.stateRootString

Root of the state trie

block.header.extrinsicsRootString

Root of the extrinsics trie

block.extrinsicsArray

Array of extrinsics in the block

justificationsArray

Block justifications (if available)

Code Examples

Bash
# Get latest block
curl https://api-asset-hub-polkadot.n.dwellir.com/<YOUR_API_KEY>/YOUR_API_KEY \
  -X POST \
  -H "Content-Type: application/json" \
  -d '{
    "jsonrpc": "2.0",
    "method": "chain_getBlock",
    "params": [],
    "id": 1
  }'

# Get specific block
curl https://api-asset-hub-polkadot.n.dwellir.com/<YOUR_API_KEY>/YOUR_API_KEY \
  -X POST \
  -H "Content-Type: application/json" \
  -d '{
    "jsonrpc": "2.0",
    "method": "chain_getBlock",
    "params": ["0x91b171bb158e2d3848fa23a9f1c25182fb8e20313b2c1eb49219da7a70ce90c3"],
    "id": 1
  }'
JavaScript
import { ApiPromise, WsProvider } from '@polkadot/api';

const provider = new WsProvider('wss://api-asset-hub-polkadot.n.dwellir.com/YOUR_API_KEY');
const api = await ApiPromise.create({ provider });

// Get latest block
const latestHash = await api.rpc.chain.getBlockHash();
const latestBlock = await api.rpc.chain.getBlock(latestHash);

console.log('Latest block:', {
  number: latestBlock.block.header.number.toNumber(),
  hash: latestHash.toHex(),
  extrinsicsCount: latestBlock.block.extrinsics.length
});

// Get specific block
const blockHash = '0x91b171bb158e2d3848fa23a9f1c25182fb8e20313b2c1eb49219da7a70ce90c3';
const block = await api.rpc.chain.getBlock(blockHash);
console.log('Block extrinsics:', block.block.extrinsics.length);

await api.disconnect();
Python
import requests
import json

def get_block(block_hash=None):
    url = 'https://api-asset-hub-polkadot.n.dwellir.com/<YOUR_API_KEY>/YOUR_API_KEY'
    params = [block_hash] if block_hash else []

    payload = {
        'jsonrpc': '2.0',
        'method': 'chain_getBlock',
        'params': params,
        'id': 1
    }

    response = requests.post(url, json=payload)
    data = response.json()

    if 'error' in data:
        raise Exception(f"RPC Error: {data['error']}")

    return data['result']

# Get latest block
latest_block = get_block()
block_number = int(latest_block['block']['header']['number'], 16)
print(f'Latest block number: {block_number}')

# Get specific block
specific_block = get_block('0x91b171bb158e2d3848fa23a9f1c25182fb8e20313b2c1eb49219da7a70ce90c3')
print(f"Extrinsics count: {len(specific_block['block']['extrinsics'])}")

On this page