메인 콘텐츠로 건너뛰기

RPC 응답 유형

모든 RPC 응답 객체에 대한 상세 JSON 스키마입니다.

BlockResponse

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
}
필드유형설명
hashstring블록 해시 (16진수, 128자 = SHA-512 64바이트)
heightu64블록 번호
timestampu64Unix 타임스탬프 (초)
parent_hashstring부모 블록 해시 (16진수)
state_rootstring상태 루트 해시 (16진수, 64자)
tx_rootstring트랜잭션 루트 해시 (16진수, 64자)
proposerstring제안자 공개 키 (16진수, 64자)
versionu32블록 형식 버전
transaction_countu64블록 내 트랜잭션 수

AccountResponse

account_getAccount, account_getBalance, account_getNonce에서 반환됩니다.

{
"address": "aabbcc...",
"balance": "1000000000000000000",
"nonce": 5
}
필드유형설명
addressstring계정 주소 (16진수, 64자 = ed25519 32바이트 공개 키)
balancestring최소 단위 잔액 (10진수 문자열로 된 u128, 18 소수점)
nonceu64현재 트랜잭션 논스

TransactionResponse

tx_getTransaction에서 반환됩니다.

{
"hash": "aabbcc...",
"from": "112233...",
"to": "445566...",
"amount": 1000,
"nonce": 1,
"fee": 1000000000000000,
"timestamp": 1710000000,
"block_height": 42
}
필드유형설명
hashstring트랜잭션 해시 (16진수)
fromstring발신자 주소 (16진수)
tostring수신자 주소 (16진수)
amountu64전송 금액
nonceu64전송 시점의 발신자 논스
feeu128?트랜잭션 수수료 (선택적)
timestampu64?확인된 경우 블록 타임스탬프
block_heightu64?확인된 경우 블록 높이

TransactionReceiptResponse

tx_getTransactionReceipt에서 반환됩니다.

{
"hash": "aabbcc...",
"from": "112233...",
"to": "445566...",
"amount": 1000,
"fee": 1000000000000000,
"block_height": 42,
"block_hash": "ff0011...",
"timestamp": 1710000000,
"status": "confirmed"
}

상태 값: "confirmed", "pending", "not_found".

HealthResponse

savitri_health에서 반환됩니다.

{
"status": "ok",
"service": "savitri-rpc",
"mode": "lightnode"
}

모드 값: "lightnode", "masternode", "unknown".

PouLocalResponse

pou_getConsensusState / savitri_pouLocal에서 반환됩니다.

{
"local_score": 750,
"leader": "12Dxyz...",
"leader_score": 920,
"epoch": 15,
"local_is_leader": false,
"election_ready": true
}
필드유형설명
local_scoreu16?이 노드의 PoU 점수 (0-1000)
leaderstring?현재 리더의 피어 ID
leader_scoreu16?리더의 PoU 점수
epochu64?현재 에포크 번호
local_is_leaderbool이 노드가 현재 리더인지 여부
election_readybool선거 실행 가능 여부

PouPeersResponse

savitri_pouPeers에서 반환됩니다.

{
"peers": {
"12D3KooW...abc": 750,
"12D3KooW...def": 820
}
}

NodeInfoResponse

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

mempool_getSize에서 반환됩니다.

{
"pending": 150,
"queued": 30
}

TokenInfoResponse

token_getTokenInfo에서 반환됩니다.

{
"token_id": "savt",
"name": "Savitri Test Token",
"symbol": "TEST",
"decimals": 18,
"total_supply": "100000000000000000000000000"
}

FaucetClaimResponse

savitri_faucetClaim에서 반환됩니다.

{
"tx_hash": "0xabc...",
"amount": "5000000000000000000"
}

금액은 5 SAVT (5 * 10^18 최소 단위)입니다.

SyncingResponse

savitri_syncing에서 반환됩니다.

{
"syncing": true,
"current_block": 100,
"highest_block": 500
}

MonolithInfoResponse

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
}