Skip to content

Gno.land public RPC

Nodely runs a public archive RPC for gno.land mainnet. No account, no keys.

Network Chain ID RPC Websocket
gno.land mainnet gnoland-1 https://gno.nodely.dev wss://gno.nodely.dev/websocket
  • Full archive nodes synced from genesis.
  • Requests are routed to the closest region (Europe or US West) with automatic failover.
  • Both URI (GET) and JSON-RPC (POST) requests work, including JSON-RPC batches.
  • Transaction search, GraphQL and live subscriptions are on the same host: see indexer & GraphQL.

Standard Tendermint2 RPC routes are enabled:

  • Chain: status, health, net_info, genesis, blockchain, block, block_results, commit, tx
  • Consensus: validators, consensus_params, consensus_state, dump_consensus_state
  • Mempool: unconfirmed_txs, num_unconfirmed_txs
  • Transactions: broadcast_tx_sync, broadcast_tx_async, broadcast_tx_commit
  • Application: abci_query, abci_info

Unsafe (admin) routes are disabled. The node keeps no transaction index, so tx_search is not available: use the indexer & GraphQL instead.

The websocket at wss://gno.nodely.dev/websocket accepts the same JSON-RPC calls as HTTP, request/response only. It saves connection overhead when you make many calls.

  • gno.land’s Tendermint2 has no event subscriptions, so subscribe returns “Method not found”. Poll status or block over HTTP, or use the indexer’s subscriptions to follow new blocks.
  • Over the websocket, status expects one parameter: send "params": [null] instead of an empty list.
Terminal window
curl https://gno.nodely.dev/status
curl https://gno.nodely.dev \
-d '{"jsonrpc":"2.0","id":1,"method":"abci_info","params":[]}'
  • 50 requests per second per IP (burst 100); excess requests get HTTP 429. The indexer has its own limits.
  • 1 MB maximum request body
  • broadcast_tx_commit waits up to 10 seconds

Need more? Talk to us about dedicated or whitelabel endpoints.

  • A gno.land block explorer