system_version
Description
Returns the node implementation string, including the binary name, semantic version, and commit hash. Monitor this after runtime upgrades or when validating collator fleets.
Parameters
This method does not require parameters.
Returns
Field | Type | Description |
---|---|---|
result | string | Node implementation identifier |
Request Example
{
"jsonrpc": "2.0",
"method": "system_version",
"params": [],
"id": 1
}
Response Example
{
"jsonrpc": "2.0",
"result": "bifrost-node/v0.21.1-78b9700/x86_64-linux-gnu (Polkadot API 1.3.0)",
"id": 1
}
Code Examples
JavaScript
const provider = new WsProvider('wss://api-bifrost-polkadot.n.dwellir.com/YOUR_API_KEY');
const api = await ApiPromise.create({ provider });
const version = await api.rpc.system.version();
console.log('Node version:', version.toString());
Python
import requests
import json
payload = {
"jsonrpc": "2.0",
"method": "system_version",
"params": [],
"id": 1
}
resp = requests.post(
"https://api-bifrost-polkadot.n.dwellir.com/YOUR_API_KEY",
headers={"Content-Type": "application/json"},
data=json.dumps(payload)
)
print(resp.json()["result"])
Rust
use subxt::{config::substrate::SubstrateConfig, OnlineClient};
#[tokio::main]
async fn main() -> Result<(), Box<dyn std::error::Error>> {
let api = OnlineClient::<SubstrateConfig>::from_url("wss://api-bifrost-polkadot.n.dwellir.com/YOUR_API_KEY").await?;
let version = api.rpc().system_version().await?;
println!("Bifrost node version: {}", version);
Ok(())
}
Operational Guidance
- Track version strings during rolling upgrades to ensure all collators advertise the expected release (e.g.,
v0.21.1
). - Combine with
state_getRuntimeVersion
to confirm the runtime spec and transaction versions align with network expectations.