Staking Operations
resource: staking — delegate, inspect, and list validators for native SOL staking
delegate (signing operation)
Delegates an already-initialized stake account to a validator's vote account.
Stake account must already be initialized: This operation delegates an existing
stake account — it does not create and initialize a new one. Stake account creation is on the
Roadmap.
| Field | Type | Required | Description |
|---|---|---|---|
stakeAccountAddress | text | ✓ Yes | Base58 address of the already-initialized stake account. |
voteAccountAddress | text | ✓ Yes | Base58 address of the validator's vote account to delegate to. |
cluster | select | No | See Clusters. |
credentialID | vault reference | ✓ Yes | CRYPTO_WALLET credential for the stake account's authority. |
Example response:
{
"signature": "6tR3...mno",
"stakeAccountAddress": "Stk1...pqr",
"voteAccountAddress": "Vote2...stu"
}
Validation: Missing
stakeAccountAddress → VAL_MISSING_STAKE_ACCOUNT. Missing voteAccountAddress → VAL_MISSING_VOTE_ACCOUNT.
getAccount
Reads a stake account's current delegation state. Read-only, no credential.
| Field | Type | Required | Description |
|---|---|---|---|
stakeAccountAddress | text | ✓ Yes | Base58 stake account address. |
cluster | select | No | See Clusters. |
Example response:
{
"stakeAccountAddress": "Stk1...pqr",
"state": "active",
"delegatedVoteAccount": "Vote2...stu",
"activationEpoch": "512",
"deactivationEpoch": "",
"lamports": 1000000000
}
Hand-decoded layout: This operation decodes the stake account's raw bytes against
the runtime's documented on-chain layout by hand — there is no Solnet-provided stake-account decoder.
state is one of uninitialized, initialized,
active, or deactivating/deactivated depending on the
activation/deactivation epoch relative to the current epoch.
getValidators
Lists the cluster's current validator set with stake and performance summary fields. No credential, no fields beyond cluster.
| Field | Type | Required | Description |
|---|---|---|---|
cluster | select | No | See Clusters. |
Example response (each item in the array):
{
"votePubkey": "Vote2...stu",
"activatedStake": 48213902100000,
"commission": 5,
"epochCredits": 394821
}
| Response Field | Meaning |
|---|---|
votePubkey | The validator's vote account address — the value you'd pass as voteAccountAddress to delegate. |
activatedStake | Total lamports currently delegated to this validator. |
commission | Percentage of staking rewards the validator keeps (0-100). |
epochCredits | Vote credits earned in the current epoch — a rough proxy for validator uptime/performance. |
The output also includes a count metadata field alongside the array with the number of validators returned.