APIs
Zilliqa 2 APIs
The APIs implemented in Zilliqa 2 aim to provide the greatest possible compatibility with applications running on other EVM chains, as well as with applications developed for Zilliqa 1. Expand the menu on the left to navigate through the detailed documentation of the supported API methods.
Supported APIs
Zilliqa 2 supports APIs from a number of sources:
-
erigon_
andots_
APIs are provided for compatibility with Zilliqa's fork of otterscan. These APIs are intended to be compatible with the otterscan json-rpc API spec. -
Ethereum APIs (generally prefixed with
eth_
) are specified by the Ethereum JSON-RPC spec and intended to be compatible with Zilliqa 1, geth and erigon. Some reference material is also taken from QuickNode, Infura and Alchemy. -
Zilliqa legacy APIs are intended, as far as possible, to be compatible with existing Zilliqa 1 applications. There are various differences due to the different construction of Zilliqa 2 which are noted on the individual API pages.
Zilliqa address checksums
Prior to ZIP-1, Zilliqa's original addressing format featured Ethereum-style hex addresses with a checksum procedure:
- Lowercase the hex address given to give
Lower(Address)
- Compute
SHA256(BytesFromHex(Lower(Address)))
- Count through the hex digits of
Lower(Address)
, from left to right, starting at 0, with indexi
. - If the
(255-(6*i))
th bit is set and thei
th hex digit is a letter, uppercase it.
This is essentially the same procedure as ERC-55 but with a shift of 6 instead of 4.
List of entry points
If an API is not mentioned in this table, support for it is not planned. Please open an issue or PR for APIs that you think should be included.
🟢 = Fully supported
🟠= Partially implemented, full support planned
🔴 = Not yet implemented, full support planned
🔵 = Inapplicable to Zilliqa 2; we have no plans to implement it.
🟣 = Implemented, but not yet documented.
Method | Status |
---|---|
admin_generateCheckpoint |
🟣 |
debug_traceBlockByNumber |
🟢 |
erigon_getHeaderByNumber |
🟢 |
eth_accounts |
🟢 |
eth_blockNumber |
🟢 |
eth_call |
🟢 |
eth_chainId |
🟢 |
eth_estimateGas |
🟢 |
eth_gasPrice |
🟣 |
eth_getBalance |
🟢 |
eth_getBlockByHash |
🟢 |
eth_getBlockByNumber |
🟢 |
eth_getBlockReceipts |
🟣 |
eth_getBlockTransactionCountByHash |
🟢 |
eth_getBlockTransactionCountByNumber |
🟢 |
eth_getCode |
🟢 |
eth_getGasPrice |
🔴 |
eth_getLogs |
🟢 |
eth_getStorageAt |
🟢 |
eth_getTransactionByBlockHashAndIndex |
🟢 |
eth_getTransactionByBlockNumberAndIndex |
🟢 |
eth_getTransactionByHash |
🟢 |
eth_getTransactionCount |
🟢 |
eth_getTransactionReceipt |
🟢 |
eth_getUncleByBlockHashAndIndex |
🟢 |
eth_getUncleByBlockNumberAndIndex |
🟣 |
eth_getUncleCountByBlockHash |
🟢 |
eth_getUncleCountByBlockNumber |
🟢 |
eth_mining |
🟢 |
eth_protocolVerrsion |
🔴 |
eth_protocolVersion |
🟣 |
eth_sendRawTransaction |
🟢 |
eth_subscribe |
🟣 |
eth_syncing |
🟣 |
eth_unsubscribe |
🟣 |
net_listening |
🟢 |
net_peerCount |
🟢 |
net_version |
🟣 |
ots_getApiLevel |
🟢 |
ots_getBlockDetails |
🟢 |
ots_getBlockDetailsByHash |
🟢 |
ots_getBlockTransactions |
🟣 |
ots_getContractCreator |
🟣 |
ots_getInternalOperations |
🟣 |
ots_getTransactionBySenderAndNonce |
🟣 |
ots_getTransactionError |
🟣 |
ots_hasCode |
🟣 |
ots_searchTransactionsAfter |
🟣 |
ots_searchTransactionsBefore |
🟣 |
ots_traceTransaction |
🟣 |
trace_replayTransaction |
🟣 |
txpool_content |
🟢 |
web3_clientVersion |
🟣 |
web3_sha3 |
🟣 |
CreateTransaction |
🟢 |
DSBlockListing |
🟠|
GetBalance |
🟢 |
GetBlockchainInfo |
🟢 |
GetContractAddressFromTransactionID |
🟢 |
GetCurrentDSComm |
🟠|
GetCurrentDSEpoch |
🟠|
GetCurrentMiniEpoch |
🟢 |
GetDSBlock |
🟠|
GetDSBlockRate |
🟠|
GetDSBlockVerbose |
🟠|
GetLatestDSBlock |
🟠|
GetLatestTxBlock |
🟢 |
GetMinerInfo |
🟠|
GetMinimumGasPrice |
🟢 |
GetNetworkId |
🟢 |
GetNodeType |
🟠|
GetNumDSBlocks |
🟠|
GetNumPeers |
🟠|
GetNumTransactions |
🟢 |
GetNumTxBlocks |
🟢 |
GetNumTxnsDSEpoch |
🟠|
GetNumTxnsTXEpoch |
🟣 |
GetNumTxnsTxEpoch |
🔴 |
GetPrevDSDifficulty |
🟠|
GetPrevDifficulty |
🟠|
GetRecentTransactions |
🟢 |
GetShardingStructure |
🔵 |
GetSmartContractCode |
🟢 |
GetSmartContractInit |
🟢 |
GetSmartContractState |
🟢 |
GetSmartContractSubState |
🟢 |
GetSmartContracts |
🟢 |
GetSoftConfirmedTransaction |
🟢 |
GetStateProof |
🟠|
GetTotalCoinSupply |
🟢 |
GetTotalCoinSupplyAsInt |
🟢 |
GetTransaction |
🟢 |
GetTransactionRate |
🟢 |
GetTransactionStatus |
🟢 |
GetTransactionsForTxBlock |
🟢 |
GetTransactionsForTxBlockEx |
🟢 |
GetTxBlock |
🟢 |
GetTxBlockRate |
🟢 |
GetTxBlockVerbose |
🟠|
GetTxnBodiesForTxBlock |
🟣 |
GetTxnBodiesForTxBlockEx |
🟢 |
GetVersion |
🟢 |
TxBlockListing |
🟢 |