Network
The RPC API enables you to query status information for nodes and validators.
Node Status
Returns general status of a given node (sync status, nearcore node version, protocol version, etc.), and the current set of validators.
- method:
status
- params:
[]
Example:
- JSON
- JavaScript
- HTTPie
- Lantstool
{
"jsonrpc": "2.0",
"id": "dontcare",
"method": "status",
"params": []
}
const response = await near.connection.provider.status();
http POST https://rpc.testnet.near.org \
jsonrpc=2.0 \
id=dontcare \
method=status \
params:='[]'
Try it out on Lantstool
Loading...
Example response:
{
"jsonrpc": "2.0",
"result": {
"chain_id": "testnet",
"genesis_hash": "FWJ9kR6KFWoyMoNjpLXXGHeuiy7tEY6GmoFeCA5yuc6b",
"latest_protocol_version": 73,
"node_key": null,
"node_public_key": "ed25519:DC7DbfZq4dkPqUKaKpWNimgtRBxnD9rja2KcZRs4e3DL",
"protocol_version": 73,
"rpc_addr": "0.0.0.0:3030",
"sync_info": {
"earliest_block_hash": "uz2gwgYxpx8dHsjgiPQefbwAhWk41CCvEmHU7ktYE2C",
"earliest_block_height": 187251995,
"earliest_block_time": "2025-02-10T13:54:22.616904144Z",
"epoch_id": "94jeudySZcxGBSVgKXn3xPT3P5iFF6YcnxC43F15QtkQ",
"epoch_start_height": 187443633,
"latest_block_hash": "EfL8Rc1EH13UxgbJB4skt8xSF8vojNQPcAX1opf6RFab",
"latest_block_height": 187456272,
"latest_block_time": "2025-02-12T22:10:10.530341781Z",
"latest_state_root": "3Vpebx4DuKAYmMjL96XMmLqWYUfuS2raZWoAbxFxeqBm",
"syncing": false
},
"uptime_sec": 6020117,
"validator_account_id": null,
"validator_public_key": null,
"validators": [
{
"account_id": "kiln.pool.f863973.m0",
"is_slashed": false
},
{
"account_id": "node2",
"is_slashed": false
},
{
"account_id": "node3",
"is_slashed": false
},
{
"account_id": "node0",
"is_slashed": false
},
{
"account_id": "node1",
"is_slashed": false
},
{
"account_id": "legends.pool.f863973.m0",
"is_slashed": false
},
{
"account_id": "aurora.pool.f863973.m0",
"is_slashed": false
},
{
"account_id": "01node.pool.f863973.m0",
"is_slashed": false
},
{
"account_id": "stakely_v2.pool.f863973.m0",
"is_slashed": false
},
{
"account_id": "chorusone.pool.f863973.m0",
"is_slashed": false
},
{
"account_id": "ni.pool.f863973.m0",
"is_slashed": false
},
{
"account_id": "foundryusa.pool.f863973.m0",
"is_slashed": false
},
{
"account_id": "chorus-one.pool.f863973.m0",
"is_slashed": false
},
{
"account_id": "lunanova2.pool.f863973.m0",
"is_slashed": false
},
{
"account_id": "everstake.pool.f863973.m0",
"is_slashed": false
},
{
"account_id": "fastnear.testnet",
"is_slashed": false
},
{
"account_id": "pionear-0.pool.f863973.m0",
"is_slashed": false
},
{
"account_id": "stakesstone.pool.f863973.m0",
"is_slashed": false
},
{
"account_id": "stakeway.pool.f863973.m0",
"is_slashed": false
},
{
"account_id": "bisontrails.pool.f863973.m0",
"is_slashed": false
}
],
"version": {
"build": "2.4.0-rc.1",
"rustc_version": "1.82.0",
"version": "2.4.0-rc.1"
}
},
"id": "dontcare"
}
What could go wrong?
When API request fails, RPC server returns a structured error response with a limited number of well-defined error variants, so client code can exhaustively handle all the possible error cases. Our JSON-RPC errors follow verror convention for structuring the error response:
{
"error": {
"name": <ERROR_TYPE>,
"cause": {
"info": {..},
"name": <ERROR_CAUSE>
},
"code": -32000,
"data": String,
"message": "Server error"
},
"id": "dontcare",
"jsonrpc": "2.0"
}
Heads up
The fields
code
,data
, andmessage
in the structure above are considered legacy ones and might be deprecated in the future. Please, don't rely on them.
Here is the exhaustive list of the error variants that can be returned by status
method:
ERROR_TYPE error.name | ERROR_CAUSE error.cause.name | Status Code | Reason | Solution |
---|---|---|---|---|
INTERNAL_ERROR | INTERNAL_ERROR | 500 | Something went wrong with the node itself or overloaded |
|
Network Info
Returns the current state of node network connections (active peers, transmitted data, etc.)
- method:
network_info
- params: none
Example:
- JSON
- HTTPie
- Lantstool
{
"jsonrpc": "2.0",
"id": "dontcare",
"method": "network_info",
"params": []
}
http POST https://rpc.testnet.near.org \
jsonrpc=2.0 \
id=dontcare \
method=network_info \
params:='[]'
Try it out on Lantstool
Loading...
Example response:
{
"jsonrpc": "2.0",
"result": {
"active_peers": [
{
"id": "ed25519:GkDv7nSMS3xcqA45cpMvFmfV1o4fRF6zYo1JRR6mNqg5",
"addr": "35.193.24.121:24567",
"account_id": null
}
],
"num_active_peers": 34,
"peer_max_count": 40,
"sent_bytes_per_sec": 17754754,
"received_bytes_per_sec": 492116,
"known_producers": [
{
"account_id": "node0",
"addr": null,
"peer_id": "ed25519:7PGseFbWxvYVgZ89K1uTJKYoKetWs7BJtbyXDzfbAcqX"
}
]
},
"id": "dontcare"
}
What could go wrong?
When API request fails, RPC server returns a structured error response with a limited number of well-defined error variants, so client code can exhaustively handle all the possible error cases. Our JSON-RPC errors follow verror convention for structuring the error response:
{
"error": {
"name": <ERROR_TYPE>,
"cause": {
"info": {..},
"name": <ERROR_CAUSE>
},
"code": -32000,
"data": String,
"message": "Server error"
},
"id": "dontcare",
"jsonrpc": "2.0"
}
Heads up
The fields
code
,data
, andmessage
in the structure above are considered legacy ones and might be deprecated in the future. Please, don't rely on them.
Here is the exhaustive list of the error variants that can be returned by network_info
method:
ERROR_TYPE error.name | ERROR_CAUSE error.cause.name | Status Code | Reason | Solution |
---|---|---|---|---|
INTERNAL_ERROR | INTERNAL_ERROR | 500 | Something went wrong with the node itself or overloaded |
|
Validation Status
Queries active validators on the network returning details and the state of validation on the blockchain.
- method:
validators
- params:
epoch_id
OR[null]
Note:
You can obtain the epoch_id
from a block that belongs to a specific epoch.
If you want to retrieve the current list of validators, pass null
as the parameter.
Additionally, you can query validators for past epochs by providing the epoch_id
of the desired past epoch.
null
example:
- JSON
- HTTPie
- Lantstool
{
"jsonrpc": "2.0",
"id": "dontcare",
"method": "validators",
"params": [null]
}
http POST https://rpc.testnet.near.org \
jsonrpc=2.0 \
id=dontcare \
method=validators \
params:='[null]'
Try it out on Lantstool
Loading...
epoch_id
example:
- JSON
- HTTPie
- Lantstool
{
"jsonrpc": "2.0",
"id": "dontcare",
"method": "validators",
"params": {
"epoch_id": "94jeudySZcxGBSVgKXn3xPT3P5iFF6YcnxC43F15QtkQ"
}
}
http POST https://rpc.testnet.near.org \
jsonrpc=2.0 \
id=dontcare \
method=validators \
params:='{
"epoch_id": "94jeudySZcxGBSVgKXn3xPT3P5iFF6YcnxC43F15QtkQ"
}'
Try it out on Lantstool
Loading...
Example response:
{
"jsonrpc": "2.0",
"result": {
"current_fishermen": [],
"current_proposals": [
{
"account_id": "01node.pool.f863973.m0",
"public_key": "ed25519:3iNqnvBgxJPXCxu6hNdvJso1PEAc1miAD35KQMBCA3aL",
"stake": "14508308808748255650142126217547",
"validator_stake_struct_version": "V1"
},
{
"account_id": "aurora.pool.f863973.m0",
"public_key": "ed25519:9c7mczZpNzJz98V1sDeGybfD4gMybP4JKHotH8RrrHTm",
"stake": "17826847625047324847852411794769",
"validator_stake_struct_version": "V1"
},
{
"account_id": "bee1stake.pool.f863973.m0",
"public_key": "ed25519:B7Mwy3sCCJ6GZzEojsKFXMjLQfVXPDC4Q1LjuHoZcyM6",
"stake": "471694761517302606589435816113",
"validator_stake_struct_version": "V1"
},
{
"account_id": "bg-1.pool.f863973.m0",
"public_key": "ed25519:BWaBJ1hYmZsarajYwt8VdKineUWza5fSd2mnoMdMSZAP",
"stake": "193323957787516169318606113781",
"validator_stake_struct_version": "V1"
},
{
"account_id": "bisontrails.pool.f863973.m0",
"public_key": "ed25519:8g4P5EXyp2b2pfVMHY1QLfkRcY59hjPfWrFCKUWX3RmR",
"stake": "865214562736652423187753081175",
"validator_stake_struct_version": "V1"
},
{
"account_id": "colossus.pool.f863973.m0",
"public_key": "ed25519:FFoMFmpBb7Z4jJE6xivyBRRFP3CDmkWeMrQ7W3jqVBAJ",
"stake": "131506697068344803997879646937",
"validator_stake_struct_version": "V1"
},
{
"account_id": "everstake.pool.f863973.m0",
"public_key": "ed25519:4LDN8tZUTRRc4siGmYCPA67tRyxStACDchdGDZYKdFsw",
"stake": "3162752192329673966382166073862",
"validator_stake_struct_version": "V1"
},
{
"account_id": "lavenderfive.pool.f863973.m0",
"public_key": "ed25519:AzwAiLDqprZKpDjhsH7dfyvFdfSasmPTjuJUAHfX1Pg4",
"stake": "31016698022520444934810183598",
"validator_stake_struct_version": "V1"
},
{
"account_id": "pionear-0.pool.f863973.m0",
"public_key": "ed25519:315y78D1DURpek1qZgp2vZSEkvWaLpgCmNj3YyVRBupW",
"stake": "2458138661861406384369486851832",
"validator_stake_struct_version": "V1"
},
{
"account_id": "pool01b.carlo01.testnet",
"public_key": "ed25519:GNiQR9xKfwqQLckbfuHo2yRnMnbdCapxK74LTBQxB3DP",
"stake": "5625085084130210554951106454",
"validator_stake_struct_version": "V1"
},
{
"account_id": "stakely_v2.pool.f863973.m0",
"public_key": "ed25519:7BanKZKGvFjK5Yy83gfJ71vPhqRwsDDyVHrV2FMJCUWr",
"stake": "12258015381474151302438412883474",
"validator_stake_struct_version": "V1"
},
{
"account_id": "stakeway.pool.f863973.m0",
"public_key": "ed25519:CUzUvC55STwBYCM9rCjPXVC9P9n771QsexigcaV9FzQE",
"stake": "2323231977216618436691170859463",
"validator_stake_struct_version": "V1"
}
],
"current_validators": [
{
"account_id": "kiln.pool.f863973.m0",
"is_slashed": false,
"num_expected_blocks": 2622,
"num_expected_chunks": 9298,
"num_expected_chunks_per_shard": [9298],
"num_expected_endorsements": 79788,
"num_expected_endorsements_per_shard": [13298],
"num_produced_blocks": 2622,
"num_produced_chunks": 9288,
"num_produced_chunks_per_shard": [9288],
"num_produced_endorsements": 79625,
"num_produced_endorsements_per_shard": [13274],
"public_key": "ed25519:Bq8fe1eUgDRexX2CYDMhMMQBiN13j8vTAVFyTNhEfh1W",
"shards": [0],
"stake": "92891729926051855086331836750992"
},
{
"account_id": "node2",
"is_slashed": false,
"num_expected_blocks": 2043,
"num_expected_chunks": 12205,
"num_expected_chunks_per_shard": [12205],
"num_expected_endorsements": 79788,
"num_expected_endorsements_per_shard": [13298],
"num_produced_blocks": 2043,
"num_produced_chunks": 12201,
"num_produced_chunks_per_shard": [12201],
"num_produced_endorsements": 79726,
"num_produced_endorsements_per_shard": [13292],
"public_key": "ed25519:GkDv7nSMS3xcqA45cpMvFmfV1o4fRF6zYo1JRR6mNqg5",
"shards": [2],
"stake": "70078722808826224703158216890648"
},
{
"account_id": "node3",
"is_slashed": false,
"num_expected_blocks": 2021,
"num_expected_chunks": 6701,
"num_expected_chunks_per_shard": [6701],
"num_expected_endorsements": 79786,
"num_expected_endorsements_per_shard": [13298],
"num_produced_blocks": 2021,
"num_produced_chunks": 6699,
"num_produced_chunks_per_shard": [6699],
"num_produced_endorsements": 79694,
"num_produced_endorsements_per_shard": [13291],
"public_key": "ed25519:ydgzeXHJ5Xyt7M1gXLxqLBW1Ejx6scNV5Nx2pxFM8su",
"shards": [3],
"stake": "69920729382306083222333791762346"
},
{
"account_id": "node0",
"is_slashed": false,
"num_expected_blocks": 1865,
"num_expected_chunks": 6227,
"num_expected_chunks_per_shard": [6227],
"num_expected_endorsements": 79787,
"num_expected_endorsements_per_shard": [13298],
"num_produced_blocks": 1865,
"num_produced_chunks": 6226,
"num_produced_chunks_per_shard": [6226],
"num_produced_endorsements": 79704,
"num_produced_endorsements_per_shard": [13292],
"public_key": "ed25519:7PGseFbWxvYVgZ89K1uTJKYoKetWs7BJtbyXDzfbAcqX",
"shards": [3],
"stake": "65137754608752835889247541026299"
},
{
"account_id": "node1",
"is_slashed": false,
"num_expected_blocks": 1815,
"num_expected_chunks": 11080,
"num_expected_chunks_per_shard": [11080],
"num_expected_endorsements": 79788,
"num_expected_endorsements_per_shard": [13298],
"num_produced_blocks": 1815,
"num_produced_chunks": 11075,
"num_produced_chunks_per_shard": [11075],
"num_produced_endorsements": 79730,
"num_produced_endorsements_per_shard": [13291],
"public_key": "ed25519:6DSjZ8mvsRZDvFqFxo8tCKePG96omXW7eVYVSySmDk8e",
"shards": [1],
"stake": "63263814354522829877199449732381"
},
{
"account_id": "legends.pool.f863973.m0",
"is_slashed": false,
"num_expected_blocks": 658,
"num_expected_chunks": 2226,
"num_expected_chunks_per_shard": [2226],
"num_expected_endorsements": 77942,
"num_expected_endorsements_per_shard": [12991],
"num_produced_blocks": 658,
"num_produced_chunks": 2224,
"num_produced_chunks_per_shard": [2224],
"num_produced_endorsements": 77796,
"num_produced_endorsements_per_shard": [12963],
"public_key": "ed25519:AhQ6sUifJYgjqarXSAzdDZU9ZixpUesP9JEH1Vr7NbaF",
"shards": [0],
"stake": "21699960146196584008369593130963"
},
{
"account_id": "aurora.pool.f863973.m0",
"is_slashed": false,
"num_expected_blocks": 526,
"num_expected_chunks": 7605,
"num_expected_chunks_per_shard": [7605],
"num_expected_endorsements": 76454,
"num_expected_endorsements_per_shard": [12737],
"num_produced_blocks": 526,
"num_produced_chunks": 7603,
"num_produced_chunks_per_shard": [7603],
"num_produced_endorsements": 76389,
"num_produced_endorsements_per_shard": [12728],
"public_key": "ed25519:9c7mczZpNzJz98V1sDeGybfD4gMybP4JKHotH8RrrHTm",
"shards": [4],
"stake": "17821019225873468551948241890887"
},
{
"account_id": "01node.pool.f863973.m0",
"is_slashed": false,
"num_expected_blocks": 423,
"num_expected_chunks": 1503,
"num_expected_chunks_per_shard": [1503],
"num_expected_endorsements": 73729,
"num_expected_endorsements_per_shard": [12329],
"num_produced_blocks": 423,
"num_produced_chunks": 1502,
"num_produced_chunks_per_shard": [1502],
"num_produced_endorsements": 73577,
"num_produced_endorsements_per_shard": [12301],
"public_key": "ed25519:3iNqnvBgxJPXCxu6hNdvJso1PEAc1miAD35KQMBCA3aL",
"shards": [0],
"stake": "14503585729080627951824567828719"
},
{
"account_id": "stakely_v2.pool.f863973.m0",
"is_slashed": false,
"num_expected_blocks": 334,
"num_expected_chunks": 5337,
"num_expected_chunks_per_shard": [5337],
"num_expected_endorsements": 70936,
"num_expected_endorsements_per_shard": [11814],
"num_produced_blocks": 334,
"num_produced_chunks": 5331,
"num_produced_chunks_per_shard": [5331],
"num_produced_endorsements": 70854,
"num_produced_endorsements_per_shard": [11797],
"public_key": "ed25519:7BanKZKGvFjK5Yy83gfJ71vPhqRwsDDyVHrV2FMJCUWr",
"shards": [4],
"stake": "12254024869278462134131091911403"
},
{
"account_id": "chorusone.pool.f863973.m0",
"is_slashed": false,
"num_expected_blocks": 164,
"num_expected_chunks": 871,
"num_expected_chunks_per_shard": [871],
"num_expected_endorsements": 47978,
"num_expected_endorsements_per_shard": [7926],
"num_produced_blocks": 164,
"num_produced_chunks": 871,
"num_produced_chunks_per_shard": [871],
"num_produced_endorsements": 47915,
"num_produced_endorsements_per_shard": [7913],
"public_key": "ed25519:3TkUuDpzrq75KtJhkuLfNNJBPHR5QEWpDxrter3znwto",
"shards": [1],
"stake": "5021605065953771080058901060214"
},
{
"account_id": "ni.pool.f863973.m0",
"is_slashed": false,
"num_expected_blocks": 130,
"num_expected_chunks": 700,
"num_expected_chunks_per_shard": [700],
"num_expected_endorsements": 41432,
"num_expected_endorsements_per_shard": [6864],
"num_produced_blocks": 130,
"num_produced_chunks": 700,
"num_produced_chunks_per_shard": [700],
"num_produced_endorsements": 41317,
"num_produced_endorsements_per_shard": [6843],
"public_key": "ed25519:GfCfFkLk2twbAWdsS3tr7C2eaiHN3znSfbshS5e8NqBS",
"shards": [2],
"stake": "4171300662937553143029051488796"
},
{
"account_id": "foundryusa.pool.f863973.m0",
"is_slashed": false,
"num_expected_blocks": 129,
"num_expected_chunks": 727,
"num_expected_chunks_per_shard": [727],
"num_expected_endorsements": 41314,
"num_expected_endorsements_per_shard": [6832],
"num_produced_blocks": 129,
"num_produced_chunks": 727,
"num_produced_chunks_per_shard": [727],
"num_produced_endorsements": 38980,
"num_produced_endorsements_per_shard": [6705],
"public_key": "ed25519:ABGnMW8c87ZKWxvZLLWgvrNe72HN7UoSf4cTBxCHbEE5",
"shards": [1],
"stake": "4002828237905742589189924266507"
},
{
"account_id": "chorus-one.pool.f863973.m0",
"is_slashed": false,
"num_expected_blocks": 99,
"num_expected_chunks": 370,
"num_expected_chunks_per_shard": [370],
"num_expected_endorsements": 41252,
"num_expected_endorsements_per_shard": [6869],
"num_produced_blocks": 99,
"num_produced_chunks": 370,
"num_produced_chunks_per_shard": [370],
"num_produced_endorsements": 41189,
"num_produced_endorsements_per_shard": [6858],
"public_key": "ed25519:6LFwyEEsqhuDxorWfsKcPPs324zLWTaoqk4o6RDXN7Qc",
"shards": [3],
"stake": "3540207403371800913697591351067"
},
{
"account_id": "lunanova2.pool.f863973.m0",
"is_slashed": false,
"num_expected_blocks": 88,
"num_expected_chunks": 620,
"num_expected_chunks_per_shard": [620],
"num_expected_endorsements": 41311,
"num_expected_endorsements_per_shard": [6932],
"num_produced_blocks": 88,
"num_produced_chunks": 620,
"num_produced_chunks_per_shard": [620],
"num_produced_endorsements": 41267,
"num_produced_endorsements_per_shard": [6926],
"public_key": "ed25519:9Jv6e9Kye4wM9EL1XJvXY8CYsLi1HLdRKnTzXBQY44w9",
"shards": [1],
"stake": "3482601242374916990980148061500"
},
{
"account_id": "everstake.pool.f863973.m0",
"is_slashed": false,
"num_expected_blocks": 86,
"num_expected_chunks": 5154,
"num_expected_chunks_per_shard": [5154],
"num_expected_endorsements": 33613,
"num_expected_endorsements_per_shard": [5662],
"num_produced_blocks": 86,
"num_produced_chunks": 5152,
"num_produced_chunks_per_shard": [5152],
"num_produced_endorsements": 33576,
"num_produced_endorsements_per_shard": [5652],
"public_key": "ed25519:4LDN8tZUTRRc4siGmYCPA67tRyxStACDchdGDZYKdFsw",
"shards": [5],
"stake": "3161722580047357404436371465448"
},
{
"account_id": "fastnear.testnet",
"is_slashed": false,
"num_expected_blocks": 69,
"num_expected_chunks": 4219,
"num_expected_chunks_per_shard": [4219],
"num_expected_endorsements": 33662,
"num_expected_endorsements_per_shard": [5583],
"num_produced_blocks": 69,
"num_produced_chunks": 4216,
"num_produced_chunks_per_shard": [4216],
"num_produced_endorsements": 33275,
"num_produced_endorsements_per_shard": [5534],
"public_key": "ed25519:FUSbEhRG22AiQEUr8PgRJJjdYqnsBbzTmquLchZ3EuaJ",
"shards": [5],
"stake": "2537831618716734010878317070489"
},
{
"account_id": "pionear-0.pool.f863973.m0",
"is_slashed": false,
"num_expected_blocks": 64,
"num_expected_chunks": 271,
"num_expected_chunks_per_shard": [271],
"num_expected_endorsements": 33604,
"num_expected_endorsements_per_shard": [5575],
"num_produced_blocks": 64,
"num_produced_chunks": 271,
"num_produced_chunks_per_shard": [271],
"num_produced_endorsements": 33552,
"num_produced_endorsements_per_shard": [5567],
"public_key": "ed25519:315y78D1DURpek1qZgp2vZSEkvWaLpgCmNj3YyVRBupW",
"shards": [0],
"stake": "2457338431580190425147558948590"
},
{
"account_id": "stakesstone.pool.f863973.m0",
"is_slashed": false,
"num_expected_blocks": 67,
"num_expected_chunks": 3925,
"num_expected_chunks_per_shard": [3925],
"num_expected_endorsements": 33622,
"num_expected_endorsements_per_shard": [5604],
"num_produced_blocks": 67,
"num_produced_chunks": 3924,
"num_produced_chunks_per_shard": [3924],
"num_produced_endorsements": 33575,
"num_produced_endorsements_per_shard": [5595],
"public_key": "ed25519:3aAdsKUuzZbjW9hHnmLWFRKwXjmcxsnLNLfNL4gP1wJ8",
"shards": [5],
"stake": "2392729489880088390499500312797"
},
{
"account_id": "stakeway.pool.f863973.m0",
"is_slashed": false,
"num_expected_blocks": 72,
"num_expected_chunks": 393,
"num_expected_chunks_per_shard": [393],
"num_expected_endorsements": 33705,
"num_expected_endorsements_per_shard": [5701],
"num_produced_blocks": 72,
"num_produced_chunks": 393,
"num_produced_chunks_per_shard": [393],
"num_produced_endorsements": 32290,
"num_produced_endorsements_per_shard": [5686],
"public_key": "ed25519:CUzUvC55STwBYCM9rCjPXVC9P9n771QsexigcaV9FzQE",
"shards": [2],
"stake": "2322475664929977341656713227424"
},
{
"account_id": "bisontrails.pool.f863973.m0",
"is_slashed": false,
"num_expected_blocks": 23,
"num_expected_chunks": 356,
"num_expected_chunks_per_shard": [356],
"num_expected_endorsements": 13298,
"num_expected_endorsements_per_shard": [2206],
"num_produced_blocks": 23,
"num_produced_chunks": 356,
"num_produced_chunks_per_shard": [356],
"num_produced_endorsements": 12619,
"num_produced_endorsements_per_shard": [2177],
"public_key": "ed25519:8g4P5EXyp2b2pfVMHY1QLfkRcY59hjPfWrFCKUWX3RmR",
"shards": [4],
"stake": "864932897923367748455848113029"
},
{
"account_id": "bee1stake.pool.f863973.m0",
"is_slashed": false,
"num_expected_blocks": 0,
"num_expected_chunks": 0,
"num_expected_chunks_per_shard": [],
"num_expected_endorsements": 13298,
"num_produced_blocks": 0,
"num_produced_chunks": 0,
"num_produced_chunks_per_shard": [],
"num_produced_endorsements": 12590,
"public_key": "ed25519:B7Mwy3sCCJ6GZzEojsKFXMjLQfVXPDC4Q1LjuHoZcyM6",
"shards": [],
"stake": "471541204349192086717416391804"
},
{
"account_id": "bg-1.pool.f863973.m0",
"is_slashed": false,
"num_expected_blocks": 0,
"num_expected_chunks": 0,
"num_expected_chunks_per_shard": [],
"num_expected_endorsements": 13298,
"num_produced_blocks": 0,
"num_produced_chunks": 0,
"num_produced_chunks_per_shard": [],
"num_produced_endorsements": 13059,
"public_key": "ed25519:BWaBJ1hYmZsarajYwt8VdKineUWza5fSd2mnoMdMSZAP",
"shards": [],
"stake": "193261022264150168446871422383"
},
{
"account_id": "bdcnear.pool.f863973.m0",
"is_slashed": false,
"num_expected_blocks": 0,
"num_expected_chunks": 0,
"num_expected_chunks_per_shard": [],
"num_expected_endorsements": 13298,
"num_produced_blocks": 0,
"num_produced_chunks": 0,
"num_produced_chunks_per_shard": [],
"num_produced_endorsements": 11657,
"public_key": "ed25519:38XzZgGzXkVU1WGPmAebVgKUS7TNoTQ4BbwYmSaJtB5E",
"shards": [],
"stake": "152253956367503132443302137897"
},
{
"account_id": "colossus.pool.f863973.m0",
"is_slashed": false,
"num_expected_blocks": 0,
"num_expected_chunks": 0,
"num_expected_chunks_per_shard": [],
"num_expected_endorsements": 13298,
"num_produced_blocks": 0,
"num_produced_chunks": 0,
"num_produced_chunks_per_shard": [],
"num_produced_endorsements": 12525,
"public_key": "ed25519:FFoMFmpBb7Z4jJE6xivyBRRFP3CDmkWeMrQ7W3jqVBAJ",
"shards": [],
"stake": "131463885701606478224024595560"
},
{
"account_id": "do0k13.pool.f863973.m0",
"is_slashed": false,
"num_expected_blocks": 0,
"num_expected_chunks": 0,
"num_expected_chunks_per_shard": [],
"num_expected_endorsements": 13298,
"num_produced_blocks": 0,
"num_produced_chunks": 0,
"num_produced_chunks_per_shard": [],
"public_key": "ed25519:BNZEVQLfRVQ6kRDtSiehn5VCdsDfvnmPP6PFEfEF4Kyc",
"shards": [],
"stake": "20052755347209554047688885272"
},
{
"account_id": "m340i.pool.f863973.m0",
"is_slashed": false,
"num_expected_blocks": 0,
"num_expected_chunks": 0,
"num_expected_chunks_per_shard": [],
"num_expected_endorsements": 13298,
"num_produced_blocks": 0,
"num_produced_chunks": 0,
"num_produced_chunks_per_shard": [],
"num_produced_endorsements": 12171,
"public_key": "ed25519:AAmV17bBMV1AwigkfRXJjZeW45bncxg6Mh3wDD312CxS",
"shards": [],
"stake": "12791380004559238408090666856"
},
{
"account_id": "smcvalidator.pool.f863973.m0",
"is_slashed": false,
"num_expected_blocks": 0,
"num_expected_chunks": 0,
"num_expected_chunks_per_shard": [],
"num_expected_endorsements": 13298,
"num_produced_blocks": 0,
"num_produced_chunks": 0,
"num_produced_chunks_per_shard": [],
"public_key": "ed25519:pG4LYsyoAa8yWYG9nsTQ5yBcwke51i3VqeRcMVbE9Q7",
"shards": [],
"stake": "11572234249650586892415305619"
}
],
"epoch_height": 3358,
"epoch_start_height": 187443633,
"next_fishermen": [],
"next_validators": [
{
"account_id": "kiln.pool.f863973.m0",
"public_key": "ed25519:Bq8fe1eUgDRexX2CYDMhMMQBiN13j8vTAVFyTNhEfh1W",
"shards": [0],
"stake": "92921980033422214461941381687070"
},
{
"account_id": "node2",
"public_key": "ed25519:GkDv7nSMS3xcqA45cpMvFmfV1o4fRF6zYo1JRR6mNqg5",
"shards": [2],
"stake": "70101543880843059439753643153179"
},
{
"account_id": "node3",
"public_key": "ed25519:ydgzeXHJ5Xyt7M1gXLxqLBW1Ejx6scNV5Nx2pxFM8su",
"shards": [3],
"stake": "69943499004029400432138935046376"
},
{
"account_id": "node0",
"public_key": "ed25519:7PGseFbWxvYVgZ89K1uTJKYoKetWs7BJtbyXDzfbAcqX",
"shards": [3],
"stake": "65158966659105429729981574314821"
},
{
"account_id": "node1",
"public_key": "ed25519:6DSjZ8mvsRZDvFqFxo8tCKePG96omXW7eVYVSySmDk8e",
"shards": [1],
"stake": "63284416157941533583511983074616"
},
{
"account_id": "legends.pool.f863973.m0",
"public_key": "ed25519:AhQ6sUifJYgjqarXSAzdDZU9ZixpUesP9JEH1Vr7NbaF",
"shards": [0],
"stake": "21707026718417797003552971028171"
},
{
"account_id": "aurora.pool.f863973.m0",
"public_key": "ed25519:9c7mczZpNzJz98V1sDeGybfD4gMybP4JKHotH8RrrHTm",
"shards": [4],
"stake": "17826847624645549774838011794769"
},
{
"account_id": "01node.pool.f863973.m0",
"public_key": "ed25519:3iNqnvBgxJPXCxu6hNdvJso1PEAc1miAD35KQMBCA3aL",
"shards": [0],
"stake": "14508308808643776172456926217547"
},
{
"account_id": "stakely_v2.pool.f863973.m0",
"public_key": "ed25519:7BanKZKGvFjK5Yy83gfJ71vPhqRwsDDyVHrV2FMJCUWr",
"shards": [4],
"stake": "12258015381384133457889212883474"
},
{
"account_id": "chorusone.pool.f863973.m0",
"public_key": "ed25519:3TkUuDpzrq75KtJhkuLfNNJBPHR5QEWpDxrter3znwto",
"shards": [1],
"stake": "5023240357275531194839534425974"
},
{
"account_id": "ni.pool.f863973.m0",
"public_key": "ed25519:GfCfFkLk2twbAWdsS3tr7C2eaiHN3znSfbshS5e8NqBS",
"shards": [2],
"stake": "4172659043272273212430060733803"
},
{
"account_id": "foundryusa.pool.f863973.m0",
"public_key": "ed25519:ABGnMW8c87ZKWxvZLLWgvrNe72HN7UoSf4cTBxCHbEE5",
"shards": [1],
"stake": "4004136212576286646267651480193"
},
{
"account_id": "chorus-one.pool.f863973.m0",
"public_key": "ed25519:6LFwyEEsqhuDxorWfsKcPPs324zLWTaoqk4o6RDXN7Qc",
"shards": [3],
"stake": "3541360268682365851956864933197"
},
{
"account_id": "lunanova2.pool.f863973.m0",
"public_key": "ed25519:9Jv6e9Kye4wM9EL1XJvXY8CYsLi1HLdRKnTzXBQY44w9",
"shards": [1],
"stake": "3483735348291753982514724379044"
},
{
"account_id": "everstake.pool.f863973.m0",
"public_key": "ed25519:4LDN8tZUTRRc4siGmYCPA67tRyxStACDchdGDZYKdFsw",
"shards": [5],
"stake": "3162752192225120518455066073862"
},
{
"account_id": "fastnear.testnet",
"public_key": "ed25519:FUSbEhRG22AiQEUr8PgRJJjdYqnsBbzTmquLchZ3EuaJ",
"shards": [5],
"stake": "2538658061267693395333896919744"
},
{
"account_id": "pionear-0.pool.f863973.m0",
"public_key": "ed25519:315y78D1DURpek1qZgp2vZSEkvWaLpgCmNj3YyVRBupW",
"shards": [0],
"stake": "2458138661730825288726186851832"
},
{
"account_id": "stakesstone.pool.f863973.m0",
"public_key": "ed25519:3aAdsKUuzZbjW9hHnmLWFRKwXjmcxsnLNLfNL4gP1wJ8",
"shards": [5],
"stake": "2393508680167151178654927962933"
},
{
"account_id": "stakeway.pool.f863973.m0",
"public_key": "ed25519:CUzUvC55STwBYCM9rCjPXVC9P9n771QsexigcaV9FzQE",
"shards": [2],
"stake": "2323231977126165123038870859463"
},
{
"account_id": "bisontrails.pool.f863973.m0",
"public_key": "ed25519:8g4P5EXyp2b2pfVMHY1QLfkRcY59hjPfWrFCKUWX3RmR",
"shards": [4],
"stake": "865214562646576811861753081175"
},
{
"account_id": "bee1stake.pool.f863973.m0",
"public_key": "ed25519:B7Mwy3sCCJ6GZzEojsKFXMjLQfVXPDC4Q1LjuHoZcyM6",
"shards": [],
"stake": "471694761414887680568035816113"
},
{
"account_id": "bg-1.pool.f863973.m0",
"public_key": "ed25519:BWaBJ1hYmZsarajYwt8VdKineUWza5fSd2mnoMdMSZAP",
"shards": [],
"stake": "193323957663594316022106113781"
},
{
"account_id": "bdcnear.pool.f863973.m0",
"public_key": "ed25519:38XzZgGzXkVU1WGPmAebVgKUS7TNoTQ4BbwYmSaJtB5E",
"shards": [],
"stake": "152303537729468030960543152051"
},
{
"account_id": "colossus.pool.f863973.m0",
"public_key": "ed25519:FFoMFmpBb7Z4jJE6xivyBRRFP3CDmkWeMrQ7W3jqVBAJ",
"shards": [],
"stake": "131506696932997797323679646937"
},
{
"account_id": "lavenderfive.pool.f863973.m0",
"public_key": "ed25519:AzwAiLDqprZKpDjhsH7dfyvFdfSasmPTjuJUAHfX1Pg4",
"shards": [],
"stake": "31016697830847968307510183598"
},
{
"account_id": "do0k13.pool.f863973.m0",
"public_key": "ed25519:BNZEVQLfRVQ6kRDtSiehn5VCdsDfvnmPP6PFEfEF4Kyc",
"shards": [],
"stake": "20052755432372793140688885272"
},
{
"account_id": "m340i.pool.f863973.m0",
"public_key": "ed25519:AAmV17bBMV1AwigkfRXJjZeW45bncxg6Mh3wDD312CxS",
"shards": [],
"stake": "12795545505786070882425535528"
}
],
"prev_epoch_kickout": [
{
"account_id": "smcvalidator.pool.f863973.m0",
"reason": {
"NotEnoughChunkEndorsements": {
"expected": 43196,
"produced": 0
}
}
}
]
},
"id": "dontcare"
}
What could go wrong?
When API request fails, RPC server returns a structured error response with a limited number of well-defined error variants, so client code can exhaustively handle all the possible error cases. Our JSON-RPC errors follow verror convention for structuring the error response:
{
"error": {
"name": <ERROR_TYPE>,
"cause": {
"info": {..},
"name": <ERROR_CAUSE>
},
"code": -32000,
"data": String,
"message": "Server error"
},
"id": "dontcare",
"jsonrpc": "2.0"
}
Heads up
The fields
code
,data
, andmessage
in the structure above are considered legacy ones and might be deprecated in the future. Please, don't rely on them.
Here is the exhaustive list of the error variants that can be returned by validators
method:
ERROR_TYPE error.name | ERROR_CAUSE error.cause.name | Status Code | Reason | Solution |
---|---|---|---|---|
HANDLER_ERROR | UNKNOWN_EPOCH | 200 | An epoch for the provided block can't be found in a database |
|
REQUEST_VALIDATION_ERROR | PARSE_ERROR | 400 | Passed arguments can't be parsed by JSON RPC server (missing arguments, wrong format, etc.) |
|
INTERNAL_ERROR | INTERNAL_ERROR | 500 | Something went wrong with the node itself or overloaded |
|