Agentic Portal

Sui JSON-RPC

blockchain
Serving

Read-only JSON-RPC access to Sui mainnet, served by the Pocket Network decentralised supplier set. Pay per request in USDC; no account, no API key.

Endpoint
POST https://agent.pocket.network/v1/sui
Price per call
$0.005 USD
Networks payable on
Base (eip155:8453)
Protocol
jsonrpc

Calling it

The first call returns 402 Payment Required with the terms. Sign for those terms and retry the same request with the payment attached.

Example request

Derived from the published request schema.

curl -X POST https://agent.pocket.network/v1/sui \
  -H 'content-type: application/json' \
  -d '{"method":"rpc.discover","params":null}'
Example response

Derived from the published response schema.

{
  "jsonrpc": "2.0",
  "id": 1,
  "result": "35834a8a"
}

Try it

Make one real paid call from your own wallet — about $0.005 on Base (eip155:8453). The wallet signs; nothing here holds a key. You'll see exactly what the service answers.

No browser wallet found. Install MetaMask, Rabby, or Coinbase Wallet to try a call here.

Supported methods

Methods the registry lists for this service. The portal forwards any call as sent; the supplier decides what it answers, and a delivered answer is settled.

Methods Sui JSON-RPC accepts, and whether each reads or writes.
MethodEffect
rpc.discoverread
sui_devInspectTransactionBlockread
sui_dryRunTransactionBlockread
sui_getChainIdentifierread
sui_getCheckpointread
sui_getCheckpointsread
sui_getEventsread
sui_getLatestCheckpointSequenceNumberread
sui_getMoveFunctionArgTypesread
sui_getNormalizedMoveFunctionread
sui_getNormalizedMoveModuleread
sui_getNormalizedMoveModulesByPackageread
sui_getNormalizedMoveStructread
sui_getObjectread
sui_getProtocolConfigread
sui_getTotalTransactionBlocksread
sui_getTransactionBlockread
sui_multiGetObjectsread
sui_multiGetTransactionBlocksread
sui_tryGetPastObjectread
sui_tryMultiGetPastObjectsread
suix_getAllBalancesread
suix_getAllCoinsread
suix_getBalanceread
suix_getCoinMetadataread
suix_getCoinsread
suix_getCommitteeInforead
suix_getDynamicFieldObjectread
suix_getDynamicFieldsread
suix_getLatestSuiSystemStateread
suix_getOwnedObjectsread
suix_getReferenceGasPriceread
suix_getStakesread
suix_getStakesByIdsread
suix_getTotalSupplyread
suix_getValidatorsApyread
suix_queryEventsread
suix_queryTransactionBlocksread
suix_resolveNameServiceAddressread
suix_resolveNameServiceNamesread

Schemas

Published by the service itself. The example above is generated from these.

Request schema
{
  "type": "object",
  "properties": {
    "method": {
      "type": "string",
      "description": "JSON-RPC read method, e.g. sui_getObject",
      "examples": [
        "rpc.discover",
        "sui_devInspectTransactionBlock",
        "sui_dryRunTransactionBlock",
        "sui_getChainIdentifier",
        "sui_getCheckpoint",
        "sui_getCheckpoints",
        "sui_getEvents",
        "sui_getLatestCheckpointSequenceNumber",
        "sui_getMoveFunctionArgTypes",
        "sui_getNormalizedMoveFunction",
        "sui_getNormalizedMoveModule",
        "sui_getNormalizedMoveModulesByPackage",
        "sui_getNormalizedMoveStruct",
        "sui_getObject",
        "sui_getProtocolConfig",
        "sui_getTotalTransactionBlocks",
        "sui_getTransactionBlock",
        "sui_multiGetObjects",
        "sui_multiGetTransactionBlocks",
        "sui_tryGetPastObject",
        "sui_tryMultiGetPastObjects",
        "suix_getAllBalances",
        "suix_getAllCoins",
        "suix_getBalance",
        "suix_getCoinMetadata",
        "suix_getCoins",
        "suix_getCommitteeInfo",
        "suix_getDynamicFieldObject",
        "suix_getDynamicFields",
        "suix_getLatestSuiSystemState",
        "suix_getOwnedObjects",
        "suix_getReferenceGasPrice",
        "suix_getStakes",
        "suix_getStakesByIds",
        "suix_getTotalSupply",
        "suix_getValidatorsApy",
        "suix_queryEvents",
        "suix_queryTransactionBlocks",
        "suix_resolveNameServiceAddress",
        "suix_resolveNameServiceNames"
      ]
    },
    "params": {
      "description": "Parameters per the Sui JSON-RPC spec"
    }
  },
  "required": [
    "method"
  ]
}
Response schema
{
  "type": "object",
  "description": "JSON-RPC 2.0 response envelope. Exactly one of `result` or `error` is present. `result` takes the shape the called method defines per the Sui JSON-RPC specification; object and transaction reads return `data` with the fields the request's options asked for.",
  "properties": {
    "jsonrpc": {
      "type": "string",
      "description": "The protocol version, always \"2.0\""
    },
    "id": {
      "type": [
        "string",
        "number",
        "null"
      ],
      "description": "The request id, echoed back"
    },
    "result": {
      "description": "The method's result, in the shape the called method defines. Present when the call succeeded; absent when `error` is."
    },
    "error": {
      "type": "object",
      "description": "Present instead of `result` when the call failed",
      "properties": {
        "code": {
          "type": "integer",
          "description": "A JSON-RPC 2.0 error code"
        },
        "message": {
          "type": "string"
        },
        "data": {
          "description": "Method-specific detail, when the node supplies it"
        }
      }
    }
  },
  "examples": [
    {
      "jsonrpc": "2.0",
      "id": 1,
      "result": "35834a8a"
    }
  ]
}

Request body used in the example: { "method": "rpc.discover", "params": null }