Skip to main content
POST
getAgGenesisCert
Requires Agave v4.3 or later. Earlier versions do not recognize the method and return Method not found (-32601).

Detecting the migration

Use this method to check whether a cluster runs Alpenglow consensus. The response takes three forms:
  • A certificate object. The cluster has migrated. result.block.slot is the first slot produced under Alpenglow.
  • null. The node runs Agave v4.3 or later, and the cluster has not migrated.
  • Error -32601. The node predates v4.3. The cluster’s consensus is unknown.
Treat -32601 as unknown rather than as “not migrated”. A node that cannot answer the question says nothing about the cluster. The certificate does not change once a cluster migrates. Cache it after the first successful response instead of polling.

Reading the certificate

block identifies the certified block. slot is its slot number. blockId is a 32-byte array, not the base-58 string used elsewhere in the RPC API. signature holds the aggregate BLS signature of every validator that signed the certificate. bitmap records which validators those were, indexed by stake rank. Reading the bitmap requires the same stake-ordered validator list the cluster used. blockId is always 32 bytes and signature always 192, both shown at full length in the example. bitmap has no fixed size: it carries one bit per validator, so it grows with the validator set, and the example shows a short one. The Solana CLI returns the same data as solana alpenglow-genesis-info.

Authorizations

api-key
string
query
required

Your Helius API key. You can get one for free in the dashboard.

Body

application/json
jsonrpc
enum<string>
default:2.0

The JSON-RPC protocol version.

Available options:
2.0
Example:

"2.0"

id
string
default:1

A unique identifier for the request.

Example:

"1"

method
enum<string>
default:getAgGenesisCert

The name of the RPC method to invoke.

Available options:
getAgGenesisCert
Example:

"getAgGenesisCert"

Response

Successfully retrieved the Alpenglow genesis certificate, or null if the cluster has not migrated.

jsonrpc
enum<string>

The JSON-RPC protocol version.

Available options:
2.0
Example:

"2.0"

id
string

Identifier matching the request.

Example:

"1"

result
object | null

The Alpenglow genesis certificate, or null when the cluster is still running TowerBFT.