Skip to content

JSON-RPC Gateway ​

Drop-in replacement for Sui RPC nodes, powered by Inodra-managed infrastructure.

📌 JSON-RPC stays available on Inodra

Sui has deprecated JSON-RPC in favor of gRPC and GraphQL, and the public fullnodes no longer serve it. Inodra keeps serving the Sui JSON-RPC API on mainnet and testnet, with history back to genesis, as a service we run and maintain ourselves. Any change to its availability will be announced well in advance. New integrations may prefer gRPC or GraphQL, Sui's current interfaces. Background: Sui JSON-RPC is deprecated, Inodra still serves it.

Overview ​

Every read, query and transaction method in the official Sui JSON-RPC specification, with the responses the Sui fullnode returned. Subscriptions (suix_subscribeEvent, suix_subscribeTransaction) are not served, use Warp streams for real-time data. Replace your Sui node URL with Inodra's endpoint and add your API key.

Endpoints: https://mainnet-api.inodra.com/v1/jsonrpc and https://testnet-api.inodra.com/v1/jsonrpc. The API key belongs to a project, and a project is tied to one network.

Quick Start ​

1. Update Your Client (SDK 2.0) ​

typescript
import { SuiJsonRpcClient, JsonRpcHTTPTransport } from '@mysten/sui/jsonRpc'

// Create transport with Inodra endpoint and API key
const transport = new JsonRpcHTTPTransport({
  url: 'https://mainnet-api.inodra.com/v1/jsonrpc',
  rpc: {
    headers: { 'x-api-key': 'YOUR_API_KEY' }
  }
})

const client = new SuiJsonRpcClient({
  transport,
  network: 'mainnet'
})

2. Test Connection ​

typescript
// All JSON-RPC methods available
const checkpoint = await client.getLatestCheckpointSequenceNumber()
const balance = await client.getBalance({ owner: '0x123...' })

The deprecation, in short ​

Sui deprecated JSON-RPC in favor of gRPC and GraphQL. The public Sui Foundation fullnodes stopped serving it in July 2026, and the JSON-RPC code is being removed from the Sui node software, so running your own node no longer keeps it. Legacy nodes that still answer can return incomplete data for anything older than their retention window, because the archival services they relied on are being retired.

What Inodra does:

  • Serves every read, query and transaction method on mainnet and testnet
  • Serves full history back to genesis
  • Announces any change to JSON-RPC availability well in advance

If you want to migrate ​

JSON-RPC keeps working here, so a migration is your call and on your schedule:

  1. Keep your RPC calls in one service layer, so a later switch touches one place
  2. Read the migration guide when you are ready; it maps each JSON-RPC method to its gRPC equivalent

🚀 Ready to try it?

Get your free API key and start making requests in under 2 minutes. The same key works for JSON-RPC, gRPC, and GraphQL.

The full-stack Sui data layer.