Skip to main content

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#

FieldTypeDescription
resultstringNode 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#

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.