beefy_getFinalizedHead - Bittensor RPC Method
Get the BEEFY finalized block hash on Bittensor. Bridge-optimized finality proofs for cross-chain communication and light client verification on the decentralized machine intelligence network built around subnets, TAO staking, and validator-miner coordination.
Returns the block hash of the latest BEEFY-finalized block on Bittensor. BEEFY (Bridge Efficiency Enabling Finality Yielder) provides additional finality proofs that are optimized for light clients and cross-chain bridges, using compact aggregated signatures instead of full GRANDPA justifications.
Why Bittensor? Build on the decentralized machine intelligence network built around subnets, TAO staking, and validator-miner coordination with Yuma Consensus, subnet-based specialization, dual Substrate and EVM surfaces, and onchain incentive coordination.
When to Use This Method
beefy_getFinalizedHead is not currently exposed on Dwellir's public Bittensor RPC. Use finalized-block signals from supported chain-RPC methods instead.
- Finalized head reads — Use
chain_getFinalizedHeadfor the current finalized block hash - Realtime finalized updates — Subscribe to
chain_subscribeFinalizedHeadsfor push updates
Response Body
ResponseCode Examples
Alternative Monitoring Patterns on Bittensor
Because Bittensor does not expose beefy_getFinalizedHead on this shared surface, use these finalized-block signals instead.
1. Check latest finalized hash directly
Use chain_getFinalizedHead for a simple on-demand read of finalized head:
import { ApiPromise, WsProvider } from '@polkadot/api';
const provider = new WsProvider('wss://...');
const api = await ApiPromise.create({ provider });
const finalizedHash = await api.rpc.chain.getFinalizedHead();
console.log('Finalized block:', finalizedHash.toHex());2. Stream finalized heads
Use chain_subscribeFinalizedHeads when you need push-based finalized updates for downstream systems.
const unsubscribe = await api.rpc.chain.subscribeFinalizedHeads((header) => {
console.log(`Finalized block #${header.number.toString()}: ${header.hash.toHex()}`);
});BEEFY vs GRANDPA Finality
| Aspect | GRANDPA | BEEFY |
|---|---|---|
| Purpose | Primary chain finality | Bridge-optimized finality |
| Proof Size | Larger (full validator set signatures) | Compact (aggregated BLS signatures) |
| Latency | Immediate after supermajority | Slightly delayed behind GRANDPA |
| Verification Cost | Higher on external chains | Lower — designed for on-chain verification |
| Use Case | On-chain consensus finality | Cross-chain bridges and light clients |
Availability
BEEFY is enabled on Polkadot and Kusama relay chains and some parachains. If BEEFY is not active on the chain you are querying, this method will return an error. Check chain documentation or try calling the method to confirm availability.
Error Handling
| Error Code | Description | Solution |
|---|---|---|
| -32603 | Internal error / BEEFY not enabled | Verify BEEFY is active on this chain |
| -32601 | Method not found | Chain runtime may not include BEEFY pallet |
| -32005 | Rate limit exceeded | Implement client-side rate limiting |
Related Methods
chain_getFinalizedHead— Get GRANDPA finalized headgrandpa_roundState— Monitor GRANDPA consensus statechain_subscribeFinalizedHeads— Subscribe to GRANDPA finalized blocks
grandpa_roundState
Get the current GRANDPA finality round state on Bittensor. Monitor consensus progress, validator voting participation, and finality health across the the decentralized machine intelligence network built around subnets, TAO staking, and validator-miner coordination network.
rpc_methods
List all available RPC methods on Bittensor. Essential for API discovery, capability detection, and building dynamic tooling for Substrate-based chains.