Documentação do Sui RPC endpoint | ERPC

Documentação do Sui RPC endpoint

Use a ERPC como seu Sui RPC endpoint para requisições gRPC-web unárias. O Sui RPC faz parte das RPC APIs da ERPC dentro da nossa Global Edge Blockchain Infrastructure, e a API key pode ser gerenciada no ERPC Web Dashboard.
Você pode usar a mesma RPC key da Solana, do Ethereum e da Avalanche.
Envie sua API key como Authorization: Bearer <YOUR_API_KEY>. O SDK da Sui acrescenta o caminho do serviço à URL base, então a key vai no cabeçalho e não no parâmetro de query api-key.

Endpoints

Use qualquer uma das duas URLs base como baseUrl do seu transporte gRPC-web:
text
https://edge.erpc.global/sui
text
https://sui.erpc.global
As requisições são POSTs gRPC-web binários (application/grpc-web+proto) para /sui.rpc.v2.<Service>/<Method>, com um frame protobuf não comprimido por chamada unária.

Exemplos

Aqui está um exemplo de configuração do transporte.
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>' },
})
Passe o transporte para o cliente de serviço unário gerado para a API gRPC da Sui.
Você pode obter e verificar sua API key no ERPC Web Dashboard: ERPC Web Dashboard

Requisições em lote

A Sui não tem requisições em lote. Cada requisição HTTP leva uma chamada unária e é medida como uma chamada. O corpo da requisição pode ter até 1 MiB.

Medição de uso

O uso é medido em tokens, e a taxa de tokens pode variar conforme o método. Cada chamada unária é medida como uma chamada.

Limites do Plano Free

No Plano Free, sua conta pode enviar uma requisição a cada 10 segundos. O limite é contado por conta, e não por endpoint, então uma requisição a outra chain também pode contar para ele. Uma requisição enviada antes disso é respondida com HTTP 429, e o cabeçalho retry-after informa a espera em segundos.

Métodos suportados

O endpoint atende estes 19 métodos gRPC-web unários. Cada um é chamado em /sui.rpc.v2.<Service>/<Method>, e as letras maiúsculas e minúsculas devem corresponder exatamente.
  • 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
Um caminho que não esteja listado é respondido com HTTP 400. Não são suportados gRPC nativo, gRPC-web em formato de texto, streaming nem chamadas BatchGet*.

Códigos de status de resposta

HTTP statusSignificado
200Chamada unária bem-sucedida. O corpo é application/grpc-web+proto.
400Um caminho fora da lista de métodos suportados, um corpo que não seja um único frame gRPC-web binário não comprimido, ou um corpo acima de 1 MiB.
401API key ausente ou inválida, ou uma restrição de IP ou de Origin definida na key não foi atendida.
405Um método de requisição diferente de POST.
426Foi solicitado um WebSocket Upgrade. O endpoint atende apenas HTTP.
429Limitado por taxa, incluindo o limite do Plano Free de uma requisição a cada 10 segundos. Se houver um cabeçalho retry-after, aguarde o número de segundos indicado.
502A chamada upstream não pôde ser concluída: uma resposta upstream com falha, uma resposta acima de 8 MiB, nenhuma resposta em até 30 segundos, ou um grpc-status diferente de 0.
503O serviço está temporariamente indisponível.

Métodos e Documentação Sui RPC

Para a lista completa de métodos padrão, parâmetros e especificações, consulte a documentação oficial.