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

Bifrost Liquid Staking Parachain RPC Guide

Bifrost RPC
With Dwellir, you get access to our global Bifrost network which always routes your API requests to the nearest available location, ensuring low latency and the fastest speeds.

Get your API key β†’

Why Build on Bifrost?​

Bifrost is Polkadot's liquid staking hub, issuing omni-chain vTokens that unlock staking liquidity while keeping rewards flowing. Builders target Bifrost because it delivers:

πŸŒ‰ Omni-Chain Liquidity Routing​

  • Staking Liquidity Protocol (SLP) mints yield-bearing vTokens (vDOT, vKSM, vETH, vFIL) that stay composable across parachains and EVM networks.
  • Slot Auction Liquidity Protocol (SALP) releases DOT/KSM crowdloan positions into tradable derivatives, letting users support auctions without sacrificing liquidity.
  • Liquid staking primitives integrate with major DeFi venues (Pendle, Loop Stake, Talisman, etc.) to optimize leverage and hedging strategies.

βš™οΈ Protocol-Neutral Architecture​

  • Dedicated pallets for cross-chain execution (ISMP, CrossInOut, Hyperbridge) make it easy to bridge liquidity between Polkadot, Kusama, and external EVMs.
  • Governance and fee-share pallets align collators, liquidity providers, and derivative users through on-chain revenue distribution.
  • Runtime upgrades (v0.21.1 / specVersion 21001) focus on async backing, Hyperbridge routes, and tokenomics 2.0 for sustained reward flows.

πŸ“ˆ Battle-Tested Operations​

  • Active collator set with ~6 s block time keeps derivatives in sync with relay-chain finality.
  • Proven SALP campaigns unlock DOT crowdloans while maintaining reward accrual.
  • Continuous grant support and ecosystem partnerships accelerate tooling and collateral adoption.

Quick Start with Bifrost​

Connect to mainnet or the Kusama canary network in seconds using Dwellir-managed infrastructure.

πŸ”— RPC Endpoints

Mainnet
Mainnet
WSS
wss://api-bifrost-polkadot.n.dwellir.com/YOUR_API_KEY
βœ“ Archive Nodeβœ“ Trace APIβœ“ Debug APIβœ“ WebSocket

Quick Connect:

curl -X POST https://api-bifrost-polkadot.n.dwellir.com/YOUR_API_KEY \
-H "Content-Type: application/json" \
-d '{"jsonrpc":"2.0","method":"eth_blockNumber","params":[],"id":1}'
Canary Environment

The Kusama deployment (Para ID 2001) runs identical pallets ahead of Polkadot releases. Use it for SALP dry-runs, Hyperbridge testing, and upgrade rehearsals before promoting to mainnet Para ID 2030.

Installation & Setup​

curl https://api-bifrost-polkadot.n.dwellir.com/YOUR_API_KEY \
-H "Content-Type: application/json" \
-d '{
"jsonrpc": "2.0",
"id": 1,
"method": "chain_getHeader",
"params": []
}'

Expected output (captured 2025-10-03):

{
"jsonrpc": "2.0",
"result": {
"number": "0x9055f2",
"hash": "0xd4b3a0e3b88b7c25215926bbf7c733f5c31e69c0c8c4b4a86d6ec3f3f086e95d",
"parentHash": "0x65b246e9b69a61f842104a15307ae906013c56a8bb6c942555b1a71424b4bab3",
"stateRoot": "0x220ea5bd35df99176268d8cbcee287a8a81a2e8addfa764661f71af591db0329",
"extrinsicsRoot": "0x388e5e2bb951b1dfac3f6a3f0c1d5de1ace6e413008efe48f1a54228dcd049db"
},
"id": 1
}

Substrate JSON-RPC API Reference​

Core Method Shortlist​

GroupPurposeKey Methods
system_*Node health, metadata, peer statussystem_health, system_version, system_properties
chain_*Headers, blocks, finality trackingchain_getHeader, chain_getBlock, chain_subscribeNewHeads
state_*Storage queries and runtime metadatastate_getStorage, state_getKeysPaged, state_getMetadata
author_*Extrinsic submission pipelineauthor_submitExtrinsic, author_pendingExtrinsics
grandpa_*Finality gadget insightsgrandpa_roundState
rpc_methodsDiscover supported namespacesrpc_methods

Network Information​

ParameterBifrost (Polkadot Mainnet)Bifrost (Kusama Canary)
Relay ChainPolkadotKusama
Parachain ID20302001
Genesis Hash0x262e1b2ad728475fd6fe88e62d34c200abe6fd693931ddad144059b1eb884e5b0x9f28c6a68e0fc9646eff64935684f6eeeece527e37bbe1f213d22caa1d9d6bed
Runtime (2025-10-03)specVersion 21001, transactionVersion 1specVersion 19000, transactionVersion 1
Unit SymbolBNCBNC
Decimals1212
SS58 Prefix66
Explorerbifrost.subscan.iobifrost-kusama.subscan.io
Average Block Time~6 seconds~6 seconds

Additional facts:

  • Collator rotation maintains >16 active authors with refTime utilization under 0.5% per block.
  • The runtime exposes specialized pallets including Hyperbridge, FlexibleFee, Farming, and Ismp for cross-ecosystem liquidity orchestration.

Common Integration Patterns​

Real-Time Block Streaming​

import { ApiPromise, WsProvider } from '@polkadot/api';

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

api.rpc.chain.subscribeNewHeads((header) => {
console.log(`New Bifrost block #${header.number.toString()} (${header.hash.toHex()})`);
});

Query Staking Liquidity Positions​

# Read total issuance for vDOT (AssetRegistry + Tokens pallet)
curl https://api-bifrost-polkadot.n.dwellir.com/YOUR_API_KEY \
-H "Content-Type: application/json" \
-d '{
"jsonrpc":"2.0",
"id":42,
"method":"state_getStorage",
"params":[
"0x1bd4a27d04bdb9c3f135c3b09677626d26c37dd72647d0f2788a3341e9ac1371"
]
}'

Estimate Fees for SALP Transfers​

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

const tx = api.tx.crossInOut.swapExactAssetsForAssets(
/* asset_in */ { Xcm: { V3: { parents: 1, interior: 'Here' } } },
/* asset_out */ { Token: 'BNC' },
/* amount */ 1_000_000_000_000n,
/* min_receive */ 990_000_000_000n
);

const info = await api.rpc.payment.queryInfo(tx.toHex());
console.log(`Partial fee: ${info.partialFee.toHuman()}`);
console.log(`Weight: ${info.weight.refTime.toString()} refTime`);

Performance Best Practices​

  • Prefer WebSocket endpoints for subscriptions and long-lived queries; use HTTPS for bursty read-only workloads.
  • Cache runtime metadata and type registries keyed by specVersion (Polkadot 21001, Kusama 19000 as of 2025-10-03) to avoid repeated handshakes.
  • Use state_getKeysPaged with sized pages (<1024 keys) when scanning liquidity pools or reward ledgers.
  • Pin to finalized heads for settlement-critical reads; leverage chain_getFinalizedHead before fetching block data.
  • Implement jittered reconnect backoff (250 ms β†’ 8 s) to respect Dwellir rate limiting during failover events.

Troubleshooting​

SymptomLikely CauseResolution
1010: Invalid Transaction when submitting vToken extrinsicsRuntime upgrade bumped specVersion/transactionVersionRefresh metadata, rebuild the payload, and resubmit with the updated version info
Invalid SS58 address errorsUsing Polkadot prefix (0) for Bifrost accountsRe-derive addresses with SS58 prefix 6 before signing or decoding
TypeError: Cannot decode storageMissing custom pallets (Hyperbridge, FlexibleFee) in type registryExtend your type bundle with the latest Bifrost runtime metadata
Persistent WebSocket disconnectsIdle connection without keep-alivesSend periodic heartbeats (e.g., rpc_methods) or enable WsProvider autoConnect
Authoring not allowed for account on collator nodesRotate keys not submitted after upgradeCall author_rotateKeys and parachainStaking.setKeys on the canary network, then on mainnet

Smoke Tests​

Run these checks before pushing to production:

  1. Node health

    curl https://api-bifrost-polkadot.n.dwellir.com/YOUR_API_KEY \
    -H "Content-Type: application/json" \
    -d '{"jsonrpc":"2.0","id":1,"method":"system_health","params":[]}'

    Verify isSyncing is false and peer count stays above 8.

  2. Latest header increments

    curl https://api-bifrost-polkadot.n.dwellir.com/YOUR_API_KEY \
    -H "Content-Type: application/json" \
    -d '{"jsonrpc":"2.0","id":2,"method":"chain_getHeader","params":[]}'

    Confirm block numbers advance ~every 6 seconds (e.g., #9,053,714 at 2025-10-03 07:42:18 UTC).

  3. Account snapshot

    curl https://api-bifrost-polkadot.n.dwellir.com/YOUR_API_KEY \
    -H "Content-Type: application/json" \
    -d '{"jsonrpc":"2.0","id":3,"method":"state_getStorage","params":["0x26aa394eea5630e07c48ae0c9558cef7f0d3720dbb6f7b3bb82b41c16dbf8d0887f21b38c918a1962fa4273d0f3c2c23244cc25f029aba80a72f1ac277957bc4"]}'

    Decode the SCALE payload to check BNC balances (collator 15mYsj6…TEZ shows active staking reserves).

Migration Guide (Polkadot/Westend β†’ Bifrost)​

  • Endpoints: Swap legacy Polkadot URLs for https://api-bifrost-polkadot.n.dwellir.com/YOUR_API_KEY. Use the Kusama canary endpoint for staging.
  • Address encoding: Update wallets and services to SS58 prefix 6 for Bifrost accounts.
  • Metadata: Refresh runtime metadata whenever specVersion changes (currently 21001 on Polkadot, 19000 on Kusama). Update custom pallets (Hyperbridge, FlexibleFee, SALP) in your type registry.
  • Fee estimation: Run payment_queryInfo for vToken transfers; Bifrost’s flexible-fee pallet introduces dynamic surcharge multipliers.
  • Pallet coverage: Check rpc_methods after upgrades to discover new bifrost_* runtime APIs (e.g., omnipool analytics, Hyperbridge routing).

Resources & Tools​

Plan your integration, mint liquidity-backed vTokens, and rely on Dwellir’s globally distributed RPC edge to keep your Bifrost workloads online.