Types de Réponse RPC
Schémas JSON détaillés pour tous les objets de réponse RPC.
BlockResponse
Retourné par chain_getBlock, chain_getBlockByNumber, chain_getBlockByHash, chain_getLatestBlock.
{
"hash": "0a1b2c...",
"height": 42,
"timestamp": 1710000000,
"parent_hash": "ff0011...",
"state_root": "abc123...",
"tx_root": "def456...",
"proposer": "aabbcc...",
"version": 1,
"transaction_count": 15
}
| Champ | Type | Description |
|---|---|---|
hash | string | Hash du bloc (hex, 128 caractères = 64 octets SHA-512) |
height | u64 | Numéro de bloc |
timestamp | u64 | Horodatage Unix (secondes) |
parent_hash | string | Hash du bloc parent (hex) |
state_root | string | Hash de la racine d'état (hex, 64 caractères) |
tx_root | string | Hash de la racine des transactions (hex, 64 caractères) |
proposer | string | Clé publique du proposant (hex, 64 caractères) |
version | u32 | Version du format de bloc |
transaction_count | u64 | Nombre de transactions dans le bloc |
AccountResponse
Retourné par account_getAccount, account_getBalance, account_getNonce.
{
"address": "aabbcc...",
"balance": "1000000000000000000",
"nonce": 5
}
| Champ | Type | Description |
|---|---|---|
address | string | Adresse du compte (hex, 64 caractères = clé publique ed25519 de 32 octets) |
balance | string | Solde en plus petite unité (u128 comme chaîne décimale, 18 décimales) |
nonce | u64 | Nonce de transaction actuel |
TransactionResponse
Retourné par tx_getTransaction.
{
"hash": "aabbcc...",
"from": "112233...",
"to": "445566...",
"amount": 1000,
"nonce": 1,
"fee": 1000000000000000,
"timestamp": 1710000000,
"block_height": 42
}
| Champ | Type | Description |
|---|---|---|
hash | string | Hash de la transaction (hex) |
from | string | Adresse de l'expéditeur (hex) |
to | string | Adresse du destinataire (hex) |
amount | u64 | Montant du transfert |
nonce | u64 | Nonce de l'expéditeur au moment de la soumission |
fee | u128? | Frais de transaction (optionnel) |
timestamp | u64? | Horodatage du bloc si confirmé |
block_height | u64? | Hauteur de bloc si confirmé |
TransactionReceiptResponse
Retourné par tx_getTransactionReceipt.
{
"hash": "aabbcc...",
"from": "112233...",
"to": "445566...",
"amount": 1000,
"fee": 1000000000000000,
"block_height": 42,
"block_hash": "ff0011...",
"timestamp": 1710000000,
"status": "confirmed"
}
Valeurs de statut : "confirmed", "pending", "not_found".
HealthResponse
Retourné par savitri_health.
{
"status": "ok",
"service": "savitri-rpc",
"mode": "lightnode"
}
Valeurs de mode : "lightnode", "masternode", "unknown".
PouLocalResponse
Retourné par pou_getConsensusState / savitri_pouLocal.
{
"local_score": 750,
"leader": "12Dxyz...",
"leader_score": 920,
"epoch": 15,
"local_is_leader": false,
"election_ready": true
}
| Champ | Type | Description |
|---|---|---|
local_score | u16? | Score PoU de ce nœud (0-1000) |
leader | string? | ID du pair leader actuel |
leader_score | u16? | Score PoU du leader |
epoch | u64? | Numéro d'époque actuel |
local_is_leader | bool | Indique si ce nœud est le leader actuel |
election_ready | bool | Indique si une élection peut être lancée |
PouPeersResponse
Retourné par savitri_pouPeers.
{
"peers": {
"12D3KooW...abc": 750,
"12D3KooW...def": 820
}
}
NodeInfoResponse
Retourné par net_nodeInfo.
{
"node_id": "12D3KooW...",
"protocol_version": "1.0.0",
"network": "savitri-testnet",
"listening": true,
"peer_count": 14,
"block_height": 42,
"syncing": false,
"mode": "lightnode"
}
MempoolSizeResponse
Retourné par mempool_getSize.
{
"pending": 150,
"queued": 30
}
TokenInfoResponse
Retourné par token_getTokenInfo.
{
"token_id": "savt",
"name": "Savitri Test Token",
"symbol": "TEST",
"decimals": 18,
"total_supply": "100000000000000000000000000"
}
FaucetClaimResponse
Retourné par savitri_faucetClaim.
{
"tx_hash": "0xabc...",
"amount": "5000000000000000000"
}
Le montant est de 5 SAVT (5 * 10^18 plus petites unités).
SyncingResponse
Retourné par savitri_syncing.
{
"syncing": true,
"current_block": 100,
"highest_block": 500
}
MonolithInfoResponse
Retourné par savitri_getMonolithHead.
{
"exec_height": 1000,
"window_start": 900,
"epoch_id": 5,
"block_count": 100,
"size_bytes": 524288,
"monolith_id": "mono_1000",
"produced_at_ms": 1710000000000,
"cosignature_count": 3
}