Native JSON-RPC reference
The joltzu_ namespace exposes native head metadata, energy, proofs, retention and native-envelope submission. These methods use the same endpoint as Ethereum RPC. The node's shared-network gateway profile does not allowlist them; use a local or self-operated node for native methods.
Native proof context uses the certified Joltzu block identifier, not the Ethereum header hash. Quantities must be canonical lowercase hex where the method requires it.
joltzu_getHead
Parameters: [] for current head, or [height] for an exact committed historical head. height is canonical hex; strings like latest and numeric JSON values are rejected.
curl http://127.0.0.1:30400 \
-H 'Content-Type: application/json' \
--data '{"jsonrpc":"2.0","id":1,"method":"joltzu_getHead","params":[]}'
The result contains native chainId, number, timestamp, slot, hash, stateRoot and randomness. It is server metadata, not independently verified finality evidence. Slots use the reference 500 ms clock; execution timestamps remain whole Unix seconds.
joltzu_getFundEnergy
Parameters: [address, assetId]; JOLT is "0x0".
curl http://127.0.0.1:30400 \
-H 'Content-Type: application/json' \
--data '{"jsonrpc":"2.0","id":2,"method":"joltzu_getFundEnergy","params":["0xf39fd6e51aad88f6f4ce6ab8827279cfffb92266","0x0"]}'
| Result field | Meaning |
|---|---|
time | Committed-head protocol timestamp |
fullEnergySeconds | Configured duration, or null when disabled |
exempt | Whether the configured energy profile exempts this holder |
balance | Cash balance in base units |
available | Energy allowance, before other debit restrictions |
restricted | Balance minus energy allowance |
lots | Bounded credit lots with time, credited, debited, allowance and energizedAt |
nextIncrease | Next projected increase timestamp, or null |
Do not display available as an unconditional spending guarantee. Locks, obligations, permissions and outflow budgets apply independently.
Proof and history methods
| Method | Parameters / purpose |
|---|---|
joltzu_getStateProof | [canonicalStateKey, blockTag]; latest or exact canonical height |
joltzu_getTrieNodeProof | [path32, depth, blockTag]; canonical hashed-node path and depth 0–64 |
joltzu_getHistoricalRootsProof | Exact historical height; accumulated root witness |
joltzu_getBlockReceipts | Height and trusted native block hash; complete bounded native receipts |
joltzu_getReceiptChunkProof | Height, trusted hash, transaction ordinal, chunk index |
joltzu_getReceiptDescriptorProof | Same context; descriptor without payload availability claim |
joltzu_getTransactionIndex | Height, trusted hash, transaction hash; locator, not proof of presence/absence |
joltzu_getLogIndexProof | Height and trusted hash; complete bounded log-index witness |
joltzu_getLogRecordProof | Height, trusted hash, exact record key; inclusion/absence |
joltzu_getLogPageProof | Height, trusted hash, start and limit; authenticated page |
joltzu_getLogTrieNodeProof | Height, trusted hash, path and depth |
joltzu_getBlockLogs | Height, trusted hash, native filter |
joltzu_getLogs | Canonical range/filter object; resumable native logs |
Proof schemas are native encodings, not Ethereum account proofs. Canonical state keys and verifier inputs must match the deployed protocol version. See state proofs for the trust and retention requirements. Use the node's bounded verifier APIs with independently trusted context, not a root copied from the same response.
Retention methods
joltzu_getProofRetention takes [] and returns head plus state/log proof floors. joltzu_getProofLeases takes [] and returns configured local policy/bounds and active leases. joltzu_leaseProofHistory takes a canonical lease object and requires explicit node opt-in. These are local retention mechanisms, not a public archive SLA.
Submission and subscriptions
joltzu_sendRawTransaction takes one canonical signed native JZTX hex encoding and returns the admitted transaction hash. Ethereum bytes belong to eth_sendRawTransaction.
joltzu_subscribe / joltzu_unsubscribe are session-only and cover native heads, pending hashes and cursor-based native logs. Their payloads and identifiers differ from eth_subscribe. Persist and durably acknowledge replay progress; deduplicate repeated delivery.