RPC documentation
Crouton Digital provides a consistent interface for accessing Ethereum Mainnet and Solana Mainnet. Both networks use JSON-RPC 2.0; subscriptions use WebSocket endpoints when enabled.
Request format
{
"jsonrpc": "2.0",
"id": 1,
"method": "eth_blockNumber",
"params": []
}
Endpoints
| Network | Public RPC endpoint |
|---|---|
| Ethereum Mainnet | https://rpc-ethereum.crouton.digital |
| Solana Mainnet | https://rpc-s.crouton.digital |
No API key is required and batch requests are supported. The Try it console on each network page calls these endpoints directly from the browser, so what you copy from a snippet is exactly what the console executed.
The Ethereum endpoint accepts requests from any origin. The Solana endpoint restricts CORS to https://docs.crouton.digital; server-side clients are unaffected by that.
Private endpoints
A dedicated Crouton node is addressed the same way, with a token attached in one of two forms.
Token in the URL — the whole endpoint is the credential, so nothing else has to be configured:
curl --request POST \
--url https://rpc-ethereum.crouton.digital/v1/YOUR_TOKEN \
--header 'content-type: application/json' \
--data '{"jsonrpc":"2.0","id":1,"method":"eth_blockNumber","params":[]}'
Token in a header — keeps the credential out of URLs, logs and browser history:
curl --request POST \
--url https://rpc-ethereum.crouton.digital \
--header 'content-type: application/json' \
--header 'Authorization: Bearer YOUR_TOKEN' \
--data '{"jsonrpc":"2.0","id":1,"method":"eth_blockNumber","params":[]}'
Both work with the Try it console: open Use a private endpoint under the endpoint field, paste the URL and, if needed, the header. The console then calls your node directly instead of the documentation gateway, and the token stays in that browser tab — it is never sent to Crouton and is cleared when the tab closes. The node must return CORS headers for the documentation origin, and a custom header additionally requires it in Access-Control-Allow-Headers, otherwise the browser blocks the request before it is sent. A token in the URL avoids that preflight entirely.
Never paste a private token into a shared or public machine, and prefer a header over a URL when the request path may end up in a proxy log.
Never expose privileged node namespaces (admin, personal, or Engine API) on a public gateway. The interactive console must only target an allowlisted proxy in production.