Skip to main content

Documentation Index

Fetch the complete documentation index at: https://docs.ryvo.network/llms.txt

Use this file to discover all available pages before exploring further.

Solana RPC routes proxy standard JSON-RPC methods to Alchemy or Helius and are gated with x402 exact payment on Solana mainnet.

Conventions

All Solana RPC routes share the same shape:
  • Path template: POST /v1/x402/solana/{cluster}/{provider}/rpc/{method}
    • clustermainnet, devnet
    • provideralchemy, helius
  • Access mode: exact (paid per call)
  • Alternate methods accepted on the path: GET, HEAD (used for the 402 discovery probe)
  • Content-Type: application/json
  • Request body: { "params": [...] } - positional JSON-RPC params forwarded directly to the upstream provider
  • Success body: { ok: true, provider, cluster, surface: "rpc", method, priceUsd, result }
  • Payment network: solana:5eykt4UsFv8P8NJdTREpY1vzqKqZKvdp (mainnet)
  • Payment asset: USDC mainnet mint EPjFWdd5AufqSSqeM2qN1xzybapC8G4wEGGkZwyTDt1v (6 decimals)
  • Rate limit: 50 rps per provider:cluster:rpc scope
The first six RPC methods (getBalance, getAccountInfo, getTransaction, getSignaturesForAddress, getTokenAccountsByOwner, getProgramAccounts) are supported on every cluster × provider cell. getTransactionsForAddress is an enhanced Helius-only RPC method, so it only exists on the helius provider cells. Prices come from the upstream PAYG schedules:
  • Alchemy - $0.45 / 1 000 000 CU
  • Helius - $5 / 1 000 000 credits
Both are rounded up to the nearest micro-USDC. Authoritative values are always reported by GET /v1/catalog and by the 402 challenge envelope.

getBalance

Fetch the lamport balance for an account.
PathProviderClusterPrice (USD)Cost unit
POST /v1/x402/solana/mainnet/alchemy/rpc/getBalancealchemymainnet$0.00000510 CU
POST /v1/x402/solana/devnet/alchemy/rpc/getBalancealchemydevnet$0.00000510 CU
POST /v1/x402/solana/mainnet/helius/rpc/getBalanceheliusmainnet$0.0000051 credit
POST /v1/x402/solana/devnet/helius/rpc/getBalanceheliusdevnet$0.0000051 credit
Params
IndexTypeRequiredNotes
params[0]stringyesAccount public key (base58).
params[1]objectnoStandard JSON-RPC config object.
Example
curl -X POST https://gateway.Ryvo.network/v1/x402/solana/mainnet/helius/rpc/getBalance \
  -H "Content-Type: application/json" \
  -H "PAYMENT-SIGNATURE: <base64 x402 exact payment>" \
  -d '{"params":["86xCnPeV69n6t3DnyGvkKobf9FdN2H9oiVDdaMpo2MMY"]}'

getAccountInfo

Fetch account metadata and raw account data.
PathProviderClusterPrice (USD)Cost unit
POST /v1/x402/solana/mainnet/alchemy/rpc/getAccountInfoalchemymainnet$0.00000510 CU
POST /v1/x402/solana/devnet/alchemy/rpc/getAccountInfoalchemydevnet$0.00000510 CU
POST /v1/x402/solana/mainnet/helius/rpc/getAccountInfoheliusmainnet$0.0000051 credit
POST /v1/x402/solana/devnet/helius/rpc/getAccountInfoheliusdevnet$0.0000051 credit
Params
IndexTypeRequiredNotes
params[0]stringyesAccount public key (base58).
params[1]objectnoConfig object. If dataSlice is provided, length <= 1024.
Example
curl -X POST https://gateway.Ryvo.network/v1/x402/solana/mainnet/alchemy/rpc/getAccountInfo \
  -H "Content-Type: application/json" \
  -H "PAYMENT-SIGNATURE: <base64 x402 exact payment>" \
  -d '{"params":["86xCnPeV69n6t3DnyGvkKobf9FdN2H9oiVDdaMpo2MMY",{"encoding":"base64"}]}'

getTransaction

Fetch a confirmed transaction by signature.
PathProviderClusterPrice (USD)Cost unit
POST /v1/x402/solana/mainnet/alchemy/rpc/getTransactionalchemymainnet$0.00001840 CU
POST /v1/x402/solana/devnet/alchemy/rpc/getTransactionalchemydevnet$0.00001840 CU
POST /v1/x402/solana/mainnet/helius/rpc/getTransactionheliusmainnet$0.0000051 credit
POST /v1/x402/solana/devnet/helius/rpc/getTransactionheliusdevnet$0.0000051 credit
Params
IndexTypeRequiredNotes
params[0]stringyesTransaction signature (base58).
params[1]objectnoStandard JSON-RPC config object.
Example
curl -X POST https://gateway.Ryvo.network/v1/x402/solana/mainnet/helius/rpc/getTransaction \
  -H "Content-Type: application/json" \
  -H "PAYMENT-SIGNATURE: <base64 x402 exact payment>" \
  -d '{"params":["<signature>",{"maxSupportedTransactionVersion":0}]}'

getSignaturesForAddress

List recent transaction signatures for an address.
PathProviderClusterPrice (USD)Cost unit
POST /v1/x402/solana/mainnet/alchemy/rpc/getSignaturesForAddressalchemymainnet$0.00001840 CU
POST /v1/x402/solana/devnet/alchemy/rpc/getSignaturesForAddressalchemydevnet$0.00001840 CU
POST /v1/x402/solana/mainnet/helius/rpc/getSignaturesForAddressheliusmainnet$0.0000051 credit
POST /v1/x402/solana/devnet/helius/rpc/getSignaturesForAddressheliusdevnet$0.0000051 credit
Params
IndexTypeRequiredNotes
params[0]stringyesAddress (base58).
params[1]objectnoIf limit is provided it must be 1..100.
Example
curl -X POST https://gateway.Ryvo.network/v1/x402/solana/mainnet/alchemy/rpc/getSignaturesForAddress \
  -H "Content-Type: application/json" \
  -H "PAYMENT-SIGNATURE: <base64 x402 exact payment>" \
  -d '{"params":["86xCnPeV69n6t3DnyGvkKobf9FdN2H9oiVDdaMpo2MMY",{"limit":25}]}'

getTokenAccountsByOwner

List token accounts owned by an address.
PathProviderClusterPrice (USD)Cost unit
POST /v1/x402/solana/mainnet/alchemy/rpc/getTokenAccountsByOwneralchemymainnet$0.00000510 CU
POST /v1/x402/solana/devnet/alchemy/rpc/getTokenAccountsByOwneralchemydevnet$0.00000510 CU
POST /v1/x402/solana/mainnet/helius/rpc/getTokenAccountsByOwnerheliusmainnet$0.0000051 credit
POST /v1/x402/solana/devnet/helius/rpc/getTokenAccountsByOwnerheliusdevnet$0.0000051 credit
Params
IndexTypeRequiredNotes
params[0]stringyesOwner public key (base58).
params[1]objectyesFilter object - must specify exactly one of mint or programId.
params[2]objectnoStandard JSON-RPC config object.
Example
curl -X POST https://gateway.Ryvo.network/v1/x402/solana/mainnet/helius/rpc/getTokenAccountsByOwner \
  -H "Content-Type: application/json" \
  -H "PAYMENT-SIGNATURE: <base64 x402 exact payment>" \
  -d '{"params":["86xCnPeV69n6t3DnyGvkKobf9FdN2H9oiVDdaMpo2MMY",{"programId":"TokenkegQfeZyiNwAJbNbGKPFXCWuBvf9Ss623VQ5DA"},{"encoding":"jsonParsed"}]}'

getProgramAccounts

Query accounts owned by a program.
PathProviderClusterPrice (USD)Cost unit
POST /v1/x402/solana/mainnet/alchemy/rpc/getProgramAccountsalchemymainnet$0.00000920 CU
POST /v1/x402/solana/devnet/alchemy/rpc/getProgramAccountsalchemydevnet$0.00000920 CU
POST /v1/x402/solana/mainnet/helius/rpc/getProgramAccountsheliusmainnet$0.00005010 credits
POST /v1/x402/solana/devnet/helius/rpc/getProgramAccountsheliusdevnet$0.00005010 credits
Params
IndexTypeRequiredNotes
params[0]stringyesProgram id (base58).
params[1]objectyesConfig object with required filters and dataSlice.
params[1] constraints:
  • filters - 1 to 4 entries, each either { dataSize: number } or { memcmp: { offset, bytes } }.
  • memcmp.bytes - non-empty string, max 128 characters.
  • dataSlice - required. dataSlice.offset >= 0, dataSlice.length <= 256.
Example
curl -X POST https://gateway.Ryvo.network/v1/x402/solana/mainnet/helius/rpc/getProgramAccounts \
  -H "Content-Type: application/json" \
  -H "PAYMENT-SIGNATURE: <base64 x402 exact payment>" \
  -d '{
    "params":[
      "TokenkegQfeZyiNwAJbNbGKPFXCWuBvf9Ss623VQ5DA",
      {
        "filters":[{"dataSize":165}],
        "dataSlice":{"offset":0,"length":64}
      }
    ]
  }'

getTransactionsForAddress

Helius-only enhanced transaction history with filtering, sorting, and keyset pagination for any address. Unlike getSignaturesForAddress, this method returns either full parsed transactions or signature metadata, and supports server-side filters (slot, blockTime, signature, status, tokenAccounts) plus a paginationToken for deterministic cursoring in either asc or desc direction.
PathProviderClusterPrice (USD)Cost unit
POST /v1/x402/solana/mainnet/helius/rpc/getTransactionsForAddressheliusmainnet$0.00025050 credits
POST /v1/x402/solana/devnet/helius/rpc/getTransactionsForAddressheliusdevnet$0.00025050 credits
Params
IndexTypeRequiredNotes
params[0]stringyesAddress (base58).
params[1]objectnoConfig object (see below).
params[1] config fields (all optional):
  • transactionDetails - "signatures" (default) or "full".
  • sortOrder - "desc" (default) or "asc".
  • commitment - "confirmed" or "finalized".
  • minContextSlot - non-negative integer.
  • limit - 1..1000 when transactionDetails="signatures", 1..100 when transactionDetails="full".
  • paginationToken - opaque cursor returned from the previous response.
  • encoding - "json", "jsonParsed", "base58", "base64" (applies when transactionDetails="full").
  • maxSupportedTransactionVersion - non-negative integer.
  • filters - object supporting slot (gte/gt/lte/lt), blockTime (same plus eq), signature (lexicographic ranges), status (succeeded/failed/any), and tokenAccounts (none/balanceChanged/all).
Example
curl -X POST https://gateway.Ryvo.network/v1/x402/solana/mainnet/helius/rpc/getTransactionsForAddress \
  -H "Content-Type: application/json" \
  -H "PAYMENT-SIGNATURE: <base64 x402 exact payment>" \
  -d '{
    "params":[
      "86xCnPeV69n6t3DnyGvkKobf9FdN2H9oiVDdaMpo2MMY",
      {
        "transactionDetails":"signatures",
        "sortOrder":"desc",
        "limit":100,
        "filters":{"status":"succeeded"}
      }
    ]
  }'

See also