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#
- Python
- JavaScript
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(())
}
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());
Operational Guidance#
- Track version strings during rolling upgrades to ensure all collators advertise the expected release (e.g.,
v0.21.1). - Combine with
state_getRuntimeVersionto confirm the runtime spec and transaction versions align with network expectations.