Services & URIs
Explorer, RPC, WebSocket, faucet, names, claims, governance/Agora, read-only IPFS evidence, validator self-join, nodes, liquidity, payment, staking, downloads, snapshots, torrent, bootnode, and NTP endpoints.
Public ROKO services
Use the values in network-manifest.json as the machine-readable source of truth. This page explains how to use them.
Service catalog
| Name | Purpose | Protocol |
|---|---|---|
explorer.roko.network | blocks, transactions, tokens, validators | HTTPS |
rpc.roko.network | safe chain and temporal queries | JSON-RPC over HTTPS/WSS |
faucet.roko.network | testnet ROKO for user-controlled wallets | HTTPS |
name.roko.network | register, resolve, and manage .roko names | HTTPS and wallet RPC |
claim.roko.network | Ethereum holder recognition claims | HTTPS and wallet RPC |
holders.roko.network | holder snapshots, analytics, and exports | HTTPS |
nodes.roko.network | guided node install and operator handoff | HTTPS |
agora.roko.network | participant UI for review, wallet actions, staking, and validator self-join | HTTPS and wallet RPC |
agora.roko.network/ipfs/<CID> | read-only configured-testnet governance evidence | HTTPS download |
governance.roko.network | wallet-free, read-only governance evidence | HTTPS |
clowder.roko.network | testnet pools, swaps, and liquidity view | HTTPS and wallet RPC |
payments.roko.network | non-custodial payment request builder | HTTPS and wallet RPC |
stake.roko.network | pwROKO lock, unlock, and staking portal | HTTPS and wallet RPC |
downloads.roko.network | native and offline-container releases | HTTPS |
snapshots.roko.network | verified full/archive bootstrap data | HTTPS and BitTorrent |
downloads.roko.network/torrent | public artifact seeding guide | HTTPS and BitTorrent |
boot.roko.network | initial peer discovery | ROKO libp2p multiaddress over TCP |
time.roko.network | public UTC time source | NTPv4 over UDP/123 |
The DNS names deliberately hide implementation details. Do not depend on a resolved address remaining fixed.
Explorer, faucet, and artifacts
- Browse the chain at explorer.roko.network.
- Add testnet funds at faucet.roko.network. The faucet requires a wallet-signed proof of address control; the signature does not authorize a transaction or fee.
- Register and manage ROKO-local names at name.roko.network.
.rokonames resolve in ROKO-aware applications; confirm the displayed address before signing. - Check Ethereum holder recognition at claim.roko.network. The active claim page links to the exact holder-intelligence snapshot used for eligibility.
- Browse published holder snapshots, analytics, source exports, and the ROKO testnet holder view at holders.roko.network.
- Launch or hand off a guided node setup at nodes.roko.network.
- Review governance without connecting a wallet at governance.roko.network, or use agora.roko.network for the participant experience and separately reviewed wallet actions. Read Governance and Agora for the capability and availability boundary before signing.
- Retrieve content-addressed governance evidence through the read-only
https://agora.roko.network/ipfs/<CID>path. The gateway accepts only CIDv1/raw/sha2-256 identifiers and forces responses to download. It has no public upload or administrative API and does not fetch unknown content from the public IPFS network. - Use clowder.roko.network for testnet liquidity and swap workflows.
- Create inspectable non-custodial payment requests at payments.roko.network.
- Manage pwROKO locking and unlocking at stake.roko.network.
- The current testnet validator walkthrough uses a 50-pwROKO self-bond. Follow Become a validator for claim, lock, bond, keys, candidacy, and activation checks; the live technical minimum is presently unset and must not be presented as a zero-bond recommendation.
- If your wallet is not configured yet, follow Wallets and faucet before claiming.
- Browse release artifacts at downloads.roko.network and verify the current release with SHA256SUMS.
- Bootstrap from a verified normal or archive snapshot at snapshots.roko.network.
- Use the peer-assisted download guide for the official torrent and magnet distribution guide.
- To help other operators download artifacts, follow BitTorrent seeding. Seeders only share public release and snapshot files; they do not need validator keys or source access.
The explorer-compatible Ethereum JSON-RPC endpoint is https://explorer.roko.network/api/eth-rpc. Prefer https://rpc.roko.network for native Substrate and temporal methods.
Bootnode
A hostname is not a complete libp2p address. A bootnode multiaddress also contains its transport, port, and stable peer ID:
/dns4/boot.roko.network/tcp/30333/ws/p2p/12D3KooWKSBZRtSiGKo8ueJtazCHT89LaBi6ZAtzgbeznf4NtVGj
Pass that entire value to --bootnodes. Allow outbound TCP/30333. A node that will accept inbound peers must also allow its configured P2P listen port and advertise a reachable public multiaddress.
This is libp2p traffic, not HTTPS JSON-RPC. An HTTP reverse proxy or ordinary Cloudflare Tunnel is not automatically a libp2p transport.
HTTPS JSON-RPC
Query basic health:
curl --fail --silent --show-error https://rpc.roko.network \
-H 'content-type: application/json' \
--data '{"jsonrpc":"2.0","id":1,"method":"system_health","params":[]}'
Verify chain identity:
curl --fail --silent --show-error https://rpc.roko.network \
-H 'content-type: application/json' \
--data '[
{"jsonrpc":"2.0","id":1,"method":"system_chain","params":[]},
{"jsonrpc":"2.0","id":2,"method":"chain_getBlockHash","params":[0]},
{"jsonrpc":"2.0","id":3,"method":"eth_chainId","params":[]}
]'
Compare the genesis hash and EVM chain ID to the manifest. A DNS name and TLS certificate are not enough to establish that an endpoint serves the intended chain.
Query mesh time:
curl --fail --silent --show-error https://rpc.roko.network \
-H 'content-type: application/json' \
--data '{"jsonrpc":"2.0","id":1,"method":"temporal_getConsensusTime","params":[]}'
The public endpoint is for safe methods. Never send a seed, secret URI, keystore operation, authoring/admin request, or unsigned transaction containing private material to it. Method discovery is not proof that a method is authorized.
Use timeouts, exponential backoff, and more than one provider for a production application. Run your own full/archive node for high volume, privacy, historical-state guarantees, or independence from public rate limits.
WebSocket
Use wss://rpc.roko.network for subscriptions. A Polkadot.js example:
import { ApiPromise, WsProvider } from "@polkadot/api";
const api = await ApiPromise.create({
provider: new WsProvider("wss://rpc.roko.network"),
});
const unsubscribe = await api.rpc.chain.subscribeFinalizedHeads((header) => {
console.log(header.number.toString(), header.hash.toHex());
});
process.on("SIGINT", async () => {
unsubscribe();
await api.disconnect();
});
Applications should act on finalized heads when a reorganization would be unsafe.
Public NTP
Use ROKO as one of several independent, permitted sources:
# /etc/chrony/sources.d/roko.sources
server time.roko.network iburst
pool pool.ntp.org iburst maxsources 3
Then reload and inspect:
sudo chronyc reload sources
chronyc sources -v
chronyc tracking
Do not add nts to the ROKO line until the manifest says ntsVerified: true. Do not mix leap-smeared and non-smeared sources. Respect server rate limiting and Kiss-o'-Death responses; aggressive polling harms the public service.
NTP transports time to a host. It does not prove an on-chain event timestamp; use temporal RPC for that.
Reporting a problem
Report the problem through the operator form, the ROKO Telegram, or the ROKO Discord. Include:
- the public DNS name and protocol;
- UTC observation time;
- client software/version;
- sanitized error and retry behavior; and
- the manifest genesis hash you expected.
Remove local addresses, peer lists, credentials, headers/tokens, and unrelated logs.