x402 で、RPC を 1 リクエストごとに払って使う

x402.erpc.global では、16 のチェーンの RPC を、リクエストのたびに払って使えます。リクエストを送ると料金が返り、USDC か EURC で払うと結果が届きます。ERPC のアカウントも、RPC キーも、プランの契約も要りません。
bash
curl -i https://x402.erpc.global/v1/solana-mainnet \
  --header 'Content-Type: application/json' \
  --data '{"jsonrpc":"2.0","id":1,"method":"getSlot"}'

x402 でできること

  • 16 のチェーンを、同じホストのチェーンごとのパスで呼べます。
  • どのチェーンの料金も、ウォレットにある 1 種類のステーブルコインで払えます。使えるのは Solana 上の USDC、Base 上の USDC と EURC です。ネットワーク手数料のための SOL や ETH は要りません。
  • 払う前に料金が分かります。402 のレスポンスに料金が入り、/pricing ではチェーンごとのメソッドの料金を無料で確認できます。
  • 受け付けないリクエストには、料金はかかりません。x402.erpc.global は、メソッド、リクエストボディ、バッチの件数を、支払いを求める前に確かめます。
  • 払ったリクエストごとに、決済結果を受け取れます。決済結果は X-Payment-Response ヘッダーに入ります。

支払いの流れ

  1. RPC のリクエストを、いつもどおり送ります。x402.erpc.global は 402 Payment Required を返し、料金と支払い方法を伝えます。
  2. x402 のクライアント(402 のレスポンスを読み、ウォレットで支払いに署名するソフトウェア)が、その料金の支払いに署名します。署名するのは、Solana なら USDC で払うトランザクション、Base なら USDC か EURC を 1 回分だけ払う許可(EIP-3009)です。
  3. 署名した支払いペイロードを X-Payment ヘッダーに入れて、同じリクエストをもう一度送ります。
  4. 支払いの検証と決済が済むと、x402.erpc.global はリクエストをチェーンへ送り、RPC の結果に決済結果を付けて返します。決済結果は X-Payment-Response ヘッダーに入ります。
どのチェーンを呼んでも、決済は Solana か Base で行います。

チェーンとパス

どのパスも、https://x402.erpc.global への HTTP POST で受け付けます。JSON-RPC のパスは、1 件の呼び出しも、100 件までのバッチも受け付けます。
チェーンパス受け付けるリクエスト
Solana/v1/solana-mainnetJSON-RPC
Ethereum/v1/eth-mainnetJSON-RPC
Avalanche/v1/ava-mainnetJSON-RPC(バッチは C-Chain の呼び出しだけ)と、/v1/ava-mainnet/ext/… で AvalancheGo の API
Arbitrum/v1/arbitrum-mainnetJSON-RPC
Base/v1/base-mainnetJSON-RPC
Bitcoin/v1/bitcoin-mainnetJSON-RPC
Hyperliquid/v1/hyperliquid-mainnetJSON-RPC(/v1/hyperliquid-mainnet/evm と …/nanoreth でも可)
Kaia/v1/kaia-mainnetJSON-RPC
Monad/v1/monad-mainnetJSON-RPC
NEAR/v1/near-mainnetJSON-RPC
Optimism/v1/optimism-mainnetJSON-RPC
Polygon/v1/polygon-mainnetJSON-RPC
Robinhood Chain/v1/robinhood-mainnetJSON-RPC
Soneium/v1/soneium-mainnetJSON-RPC
Sui/v1/sui-mainnet/sui.rpc.v2.<Service>/<Method>gRPC-web の unary 呼び出し(1 リクエストに 1 つ)
TRON/v1/tron-mainnetJSON-RPC(/jsonrpc でも可)と、/wallet/<method> と /walletsolidity/<method> の HTTP API(1 リクエストに 1 つ)
eth_subscribe などの WebSocket の購読は、x402 では提供していません。

支払いに使えるステーブルコイン

ステーブルコインネットワークコントラクト(ミント)のアドレス
USDCSolanaEPjFWdd5AufqSSqeM2qN1xzybapC8G4wEGGkZwyTDt1v
USDCBase0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913
EURCBase0x60a3E35Cc302bFA44Cb288Bc5a4F316Fdb1adb42
402 のレスポンスには howToPay も入ります。そのリクエストで使えるステーブルコインとコントラクトのアドレスが書かれているので、エージェントはレスポンスだけを読んで支払えます。

無料のエンドポイント

エンドポイント返す内容
GET /pricingすべてのチェーンの、メソッドごとの料金
GET /.well-known/x402x402 のクライアント向けの、パスと支払い方法
GET /docすべてのパスの OpenAPI ドキュメント
GET /scalar同じ内容を、ブラウザで読めるリファレンスにしたもの

利用範囲について

このページで紹介した有料のエンドポイントは、ERPC の RPC の利用料を x402 で支払うためのものです。暗号資産の交換、仲介、カストディ、ウォレットサービスを提供するものではありません。