Tài liệu Sui RPC Endpoint | ERPC

Tài liệu Sui RPC Endpoint

ERPC có thể được dùng làm Sui RPC endpoint cho request gRPC-web unary. Sui RPC là một phần trong RPC APIs của ERPC, nằm trong Global Edge Blockchain Infrastructure của chúng tôi, và API key có thể được quản lý từ ERPC Web Dashboard.
Bạn có thể dùng cùng một RPC key như với Solana, Ethereum và Avalanche.
Gửi API key của bạn dưới dạng Authorization: Bearer <YOUR_API_KEY>. Sui SDK nối path của service vào base URL, nên key được đặt trong header thay vì tham số query api-key.

Endpoint

Dùng một trong hai base URL sau làm baseUrl cho gRPC-web transport của bạn:
text
https://edge.erpc.global/sui
text
https://sui.erpc.global
Request là các POST gRPC-web dạng binary (application/grpc-web+proto) tới /sui.rpc.v2.<Service>/<Method>, mỗi lệnh gọi unary là một frame protobuf không nén.

Ví dụ

Đây là ví dụ về cấu hình transport.
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>' },
})
Truyền transport này cho client dịch vụ unary được tạo cho Sui gRPC API.
Bạn có thể lấy và kiểm tra API key trên ERPC Web Dashboard: ERPC Web Dashboard

Batch Request

Sui không có batch request. Mỗi HTTP request mang một lệnh gọi unary và được tính là một lệnh gọi. Request body có kích thước tối đa 1 MiB.

Đo lường mức sử dụng

Mức sử dụng được đo bằng token, và tỷ lệ token có thể khác nhau tùy theo method. Mỗi lệnh gọi unary được tính là một lệnh gọi.

Giới hạn của Gói Free

Trên Gói Free, tài khoản của bạn có thể gửi một request mỗi 10 giây. Giới hạn được tính theo tài khoản, không phải theo endpoint, nên một request tới chain khác cũng có thể được tính vào giới hạn này. Request gửi sớm hơn sẽ nhận phản hồi HTTP 429, và header retry-after cho biết thời gian chờ tính bằng giây.

Phương thức được hỗ trợ

Endpoint này phục vụ 19 method gRPC-web unary sau đây. Mỗi method được gọi tại /sui.rpc.v2.<Service>/<Method> và phải viết hoa/viết thường chính xác.
  • 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
Path không có trong danh sách sẽ nhận phản hồi HTTP 400. Không hỗ trợ gRPC native, gRPC-web dạng text, streaming và các lệnh gọi BatchGet*.

Mã trạng thái phản hồi

HTTP statusÝ nghĩa
200Lệnh gọi unary thành công. Body có dạng application/grpc-web+proto.
400Path nằm ngoài danh sách Phương thức được hỗ trợ, body không phải là đúng một frame gRPC-web binary không nén, hoặc body vượt quá 1 MiB.
401Thiếu API key hoặc API key không hợp lệ, hoặc không đáp ứng giới hạn IP hoặc Origin đã đặt cho key.
405Phương thức request không phải POST.
426Đã yêu cầu WebSocket Upgrade. Endpoint này chỉ hỗ trợ HTTP.
429Bị giới hạn tốc độ, bao gồm giới hạn của Gói Free là một request mỗi 10 giây. Nếu có header retry-after, hãy chờ đúng số giây đó.
502Không thể hoàn tất lệnh gọi tới upstream: response từ upstream bị lỗi, response vượt quá 8 MiB, không có phản hồi trong vòng 30 giây, hoặc grpc-status khác 0.
503Dịch vụ tạm thời không khả dụng.

Phương thức Sui RPC và tài liệu

Để xem danh sách đầy đủ các phương thức chuẩn, tham số và đặc tả, hãy tham khảo tài liệu chính thức.