01 RPC connectivity

One endpoint, routed to a healthy node

Nodrel watches the health and response time of every node behind your endpoint. Each request goes to the best one available at that moment.

Think of it as a GPS

A GPS checks traffic before it picks a road. When a road closes, it sends you another way and you still arrive. Nodrel does the same for your RPC requests.

Nodrel is in development. This page describes how the service is designed to work.

Select a node to take it offline, then select it again to bring it back.
Your appNodrelNode A38 msNode BOfflineNode C64 msRerouting around Node BgetAccountInfo via Node C, 61 ms8 delivered

GPS for requests. Traffic takes the quickest open road and steers around closures.

A single node fails at the worst time

Many Solana apps depend on one RPC URL. When that node slows down or drops out, balances stop loading and transactions fail to send.

Users see an outage even though the network itself is running fine.

How it works

  1. 1

    Your app sends a request

    Use the standard Solana JSON-RPC methods. Existing clients only need a new URL.

  2. 2

    Nodrel checks the pool

    Health and response time are measured for every node, all the time.

  3. 3

    The request is routed

    It goes to the fastest node that is healthy and keeping up with the latest slot.

  4. 4

    Failures are retried

    If a node errors or times out, the request moves to another node.

What you get

Standard JSON-RPC

Works with @solana/web3.js and other clients you already use.

Health checks

Nodes that fall behind the tip of the chain are taken out of rotation.

Automatic failover

Traffic shifts away from a failing node without a change on your side.

Usage by method

See which calls your app makes most and where errors come from.

TypeScript
import { Connection } from "@solana/web3.js";

// Point your existing client at the Nodrel endpoint.
const connection = new Connection(process.env.NODREL_RPC_URL!, "confirmed");

const slot = await connection.getSlot();
const balance = await connection.getBalance(walletPublicKey);

The endpoint follows the standard Solana JSON-RPC interface.

Who it is for

Wallets

Balances and history need to load every time a user opens the app.

Trading platforms

A failed send at the wrong moment costs your users money.

Backends and bots

Services that run around the clock cannot depend on a single node.

Get early access to rpc connectivity

Leave your email and tell us what you are building. We will reach out when the first version is ready.