ERPC Sui RPC エンドポイント ドキュメント

Sui RPC エンドポイント ドキュメント

ERPC を Sui RPC エンドポイントとして、unary gRPC-web リクエストにご利用いただけます。Sui RPC は、Global Edge Blockchain Infrastructure における ERPC の RPC APIs の一部であり、API key は ERPC Web Dashboard から管理できます。
Solana、Ethereum、Avalanche と同じ RPC キーを利用できます。
API key は Authorization: Bearer <YOUR_API_KEY> として送信してください。Sui SDK はベース URL にサービスのパスを付け足すため、キーは api-key クエリパラメータではなくヘッダーで渡します。

エンドポイント

次のどちらかのベース URL を、gRPC-web トランスポートの baseUrl に指定します。
text
https://edge.erpc.global/sui
text
https://sui.erpc.global
リクエストは /sui.rpc.v2.<Service>/<Method> へのバイナリ gRPC-web(application/grpc-web+proto)の POST で、unary 呼び出し 1 件につき非圧縮の protobuf フレームを 1 つ送ります。

使用例

トランスポート設定の例です。
typescript
import { GrpcWebFetchTransport } from '@protobuf-ts/grpcweb-transport'

const transport = new GrpcWebFetchTransport({
  baseUrl: 'https://sui.erpc.global', // or https://edge.erpc.global/sui
  format: 'binary',
  meta: { Authorization: 'Bearer <YOUR_API_KEY>' },
})
このトランスポートを、Sui gRPC API 用に生成した unary サービスクライアントに渡します。
API key は ERPC Web Dashboard 上にて取得、確認いただけます: ERPC Web Dashboard

バッチリクエスト

Sui にはバッチリクエストはありません。1 回の HTTP リクエストで送れる unary 呼び出しは 1 件で、1 回の呼び出しとして計測されます。リクエストボディの上限は 1 MiB です。

利用量の計測

利用量は token として計測され、token レートはメソッドによって異なる場合があります。unary 呼び出しは 1 件ごとに 1 回の呼び出しとして計測されます。

Free プランの制限

Free プランでは、お使いのアカウントから送信できるのは 10 秒に 1 リクエストまでです。この制限はエンドポイントごとではなくアカウントごとに数えられるため、別のチェーンへのリクエストも数えられることがあります。それより早く送ったリクエストには HTTP 429 が返され、retry-after ヘッダーに待機する秒数が示されます。

対応メソッド

本エンドポイントは、次の 19 個の unary gRPC-web メソッドを提供します。いずれも /sui.rpc.v2.<Service>/<Method> で呼び出し、大文字・小文字は正確に一致させる必要があります。
  • LedgerService (5): GetServiceInfo, GetCheckpoint, GetObject, GetTransaction, GetEpoch
  • MovePackageService (4): GetPackage, GetDatatype, GetFunction, ListPackageVersions
  • NameService (2): LookupName, ReverseLookupName
  • SignatureVerificationService (1): VerifySignature
  • StateService (5): GetCoinInfo, GetBalance, ListBalances, ListDynamicFields, ListOwnedObjects
  • TransactionExecutionService (2): ExecuteTransaction, SimulateTransaction
一覧にないパスには HTTP 400 が返されます。ネイティブ gRPC、テキスト形式の gRPC-web、ストリーミング、BatchGet* 呼び出しには対応していません。

レスポンスステータスコード

HTTP ステータス意味
200unary 呼び出しが成功しました。レスポンスボディの形式は application/grpc-web+proto です
400「対応メソッド」にないパス、非圧縮のバイナリ gRPC-web フレーム 1 つになっていないリクエストボディ、または 1 MiB を超えるリクエストボディ
401API key が未指定または無効、もしくはキーに設定された IP・Origin の制限を満たしていません
405POST 以外のリクエストメソッド
426WebSocket Upgrade が要求されました。このエンドポイントは HTTP 専用です
429レート制限。Free プランの制限(10 秒に 1 リクエスト)も対象です。retry-after ヘッダーがある場合は、示された秒数だけ待機してください
502アップストリームへの呼び出しを完了できませんでした(アップストリームの応答が失敗した、応答が 8 MiB を超えた、30 秒以内に応答がなかった、または grpc-status が 0 以外だった)
503サービスが一時的に利用できません

Sui RPC メソッドとドキュメント

標準メソッド、パラメータ、仕様の全一覧については、公式ドキュメントをご参照ください。