NetZero Chain

JSON-RPC: nzc_* and agent_*

All standard eth_*, net_*, web3_* and txpool_* methods work as in go-ethereum. This page lists what NetZero adds and what differs.

nzc namespace (public)

nzc_status()

{
  "signer": "0x…",            // local signing address (zero if not a validator)
  "seat": 3,                  // -1 when this node holds no seat
  "lastVoted": "0x1f4",
  "head": "0x1f5",
  "finalized": "0x1f4",
  "finalityLag": "0x1"
}

nzc_validators(blockNumber?)

The ten seat addresses, in seat order, that govern the given height (default: next block).

nzc_finalized()

{ number, hash, known } for the highest final block this node knows.

nzc_votes(blockHash)

Votes collected for a block: [{ number, hash, seat, sig }].

nzc_config()

The engine parameters from the genesis configuration (period, epoch, seats, quorum, decay schedule, fee split, incentive, addresses).

nzc_shareTarget()

What a miner needs: {active, startBlock, head, anchor, anchorHash, difficulty, target, minAge, maxAge, maxPerBlock, pendingShares, domain}. Mine on anchor/anchorHash; a share is valid while the anchor is 4–12 blocks old.

nzc_submitShare({anchor, anchorHash, miner, nonce}) → true

Submits a share found externally. Errors: share hash above target, share anchor outside the allowed age window, share already included or known.

nzc_shares(blockNumber?) → {number, hash, shares: [{anchor, miner, nonce}], perShareWei, miners}

The shares a block paid and the payout per share (perShareWei is known on nodes that processed the block).

nzc_miningStatus()

The local node's share miner, same shape as agent_getMiningStatus. See Mining Shares.

agent namespace (loopback only)

See the Agent API Reference. Methods: agent_createWallet, agent_listWallets, agent_getBalance, agent_send, agent_sendTransaction, agent_deployContract, agent_callContract, agent_getTransactionReceipt, agent_startMining, agent_stopMining, agent_getMiningStatus, agent_shutdown.

Standard methods that behave differently

MethodDifference
eth_getBlockByNumber("finalized"), ("safe")Supported; return the block finalised by validator votes, about one block behind head
eth_getBlockByNumber → minerAlways the fee sink 0x…1006; the proposer seat is in extraData
eth_getBlockByNumber → difficulty1 or 2 (out-of-turn / in-turn), not a work measure
eth_gasPrice, eth_feeHistoryBase fee never below 1,000 gwei USDn
eth_sendRawTransactionLegacy (with chain ID), EIP-2930 and EIP-1559 transactions accepted; unprotected legacy transactions rejected
eth_sendPrivateRawTransactionSubmits a transaction only to this node's block builder, never gossiped (only useful on a validator)

Batch limits and safety

Batches are capped at 1,000 requests. Header queries are bounded. Public RPC operators should serve eth,net,web3,nzc only; the node enforces this for the sensitive namespaces.