Skip to main content

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 fieldMeaning
timeCommitted-head protocol timestamp
fullEnergySecondsConfigured duration, or null when disabled
exemptWhether the configured energy profile exempts this holder
balanceCash balance in base units
availableEnergy allowance, before other debit restrictions
restrictedBalance minus energy allowance
lotsBounded credit lots with time, credited, debited, allowance and energizedAt
nextIncreaseNext 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​

MethodParameters / purpose
joltzu_getStateProof[canonicalStateKey, blockTag]; latest or exact canonical height
joltzu_getTrieNodeProof[path32, depth, blockTag]; canonical hashed-node path and depth 0–64
joltzu_getHistoricalRootsProofExact historical height; accumulated root witness
joltzu_getBlockReceiptsHeight and trusted native block hash; complete bounded native receipts
joltzu_getReceiptChunkProofHeight, trusted hash, transaction ordinal, chunk index
joltzu_getReceiptDescriptorProofSame context; descriptor without payload availability claim
joltzu_getTransactionIndexHeight, trusted hash, transaction hash; locator, not proof of presence/absence
joltzu_getLogIndexProofHeight and trusted hash; complete bounded log-index witness
joltzu_getLogRecordProofHeight, trusted hash, exact record key; inclusion/absence
joltzu_getLogPageProofHeight, trusted hash, start and limit; authenticated page
joltzu_getLogTrieNodeProofHeight, trusted hash, path and depth
joltzu_getBlockLogsHeight, trusted hash, native filter
joltzu_getLogsCanonical 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.