ListBalances gRPC Method
Paramètres
owner
chaîne de caractères
OBLIGATOIRE
Chargement en cours...
taille_de_page
entier
Chargement en cours...
page_token
chaîne de caractères
Chargement en cours...
Retours
balances
tableau
Chargement en cours...
coinType
chaîne de caractères
Chargement en cours...
solde
chaîne de caractères
Chargement en cours...
nextPageToken
chaîne de caractères
Chargement en cours...
Demande
1grpcurl -proto ./sui/rpc/v2/state_service.proto -H "x-token: abcde123456789" -d '{2"owner": "0xac5bceec1b789ff840d7d4e6ce4ce61c90d190a7f8c4f4ddf0bff6ee2413c33c"3}' docs-demo.sui-mainnet.quiknode.pro:9000 sui.rpc.v2.StateService/ListBalances4
1grpcurl -proto ./sui/rpc/v2/state_service.proto -H "x-token: abcde123456789" -d '{2"owner": "0xac5bceec1b789ff840d7d4e6ce4ce61c90d190a7f8c4f4ddf0bff6ee2413c33c"3}' docs-demo.sui-mainnet.quiknode.pro:9000 sui.rpc.v2.StateService/ListBalances4
1paquet principal23import (4« contexte »5« crypto/tls »6« encoding/json »7« fmt »8« journal »9« temps »1011« google.golang.grpc »12« google.golang.grpc »13"google.golang.org/protobuf/encoding/protojson"1415pb "sui-grpc/sui/rpc/v2" // Your Generated .pb.go files path16)1718// Quicknode endpoints consist of two crucial components: the endpoint name and the corresponding token19// For eg: QN Endpoint: https://docs-demo.sui-mainnet.quiknode.pro/abcde12345678920// endpoint will be: docs-demo.sui-mainnet.quiknode.pro:9000 {9000 is the port number for Sui gRPC}21// token will be : abcde1234567892223var (24token = "YOUR_TOKEN_NUMBER"25endpoint = "YOUR_QN_ENDPOINT:9000"26)2728// Auth structure for x-token29type auth struct {30jeton chaîne de caractères31}3233func (a *auth) GetRequestMetadata(ctx contexte.Context, uri ...chaîne) (carte[chaîne]chaîne, erreur) {34return map[string]string{"x-token": a.token}, nil35}36func (a *auth) RequireTransportSecurity() bool {37return true38}3940func main() {41creds := credentials.NewTLS(&tls.Config{})42opts := []grpc.DialOption{43grpc.WithTransportCredentials(creds),44grpc.Avec les identifiants RPCC(&auth{token}),45}4647conn, err := grpc.Composer(endpoint, opts...)48si err != nil {49log.Fatalf("Failed to connect: %v", err)50}51reporter conn.Fermer()5253client := pb.NewStateServiceClient(conn)5455owner := "0xac5bceec1b789ff840d7d4e6ce4ce61c90d190a7f8c4f4ddf0bff6ee2413c33c"5657// Build request with field mask58req := &pb.ListBalancesRequest{59Owner: &owner,60}6162ctx, annuler := context.WithTimeout(contexte.Arrière-plan(), 10*temps.Deuxième)63reporter annuler()6465resp, err := client.ListBalances(ctx, req)66si err != nil {67log.Fatalf("ListBalances failed: %v", err)68}6970// Pretty print the response71marshaler := protojson.MarshalOptions{72UseProtoNames: true,73EmitUnpopulated: true,74Indent: " ",75}7677jsonBytes, err := marshaler.Marshal(resp)78si err != nil {79log.Fatalf("Failed to marshal: %v", err)80}8182var pretty map[string]interface{}83if err := json.Unmarshal(jsonBytes, &pretty); err != nil {84log.Fatalf("Failed to parse JSON: %v", err)85}8687out, _ := json.MarshalIndent(pretty, "", " ")88fmt.Println(string(out))89}90
1paquet principal23import (4« contexte »5« crypto/tls »6« encoding/json »7« fmt »8« journal »9« temps »1011« google.golang.grpc »12« google.golang.grpc »13"google.golang.org/protobuf/encoding/protojson"1415pb "sui-grpc/sui/rpc/v2" // Your Generated .pb.go files path16)1718// Quicknode endpoints consist of two crucial components: the endpoint name and the corresponding token19// For eg: QN Endpoint: https://docs-demo.sui-mainnet.quiknode.pro/abcde12345678920// endpoint will be: docs-demo.sui-mainnet.quiknode.pro:9000 {9000 is the port number for Sui gRPC}21// token will be : abcde1234567892223var (24token = "YOUR_TOKEN_NUMBER"25endpoint = "YOUR_QN_ENDPOINT:9000"26)2728// Auth structure for x-token29type auth struct {30jeton chaîne de caractères31}3233func (a *auth) GetRequestMetadata(ctx contexte.Context, uri ...chaîne) (carte[chaîne]chaîne, erreur) {34return map[string]string{"x-token": a.token}, nil35}36func (a *auth) RequireTransportSecurity() bool {37return true38}3940func main() {41creds := credentials.NewTLS(&tls.Config{})42opts := []grpc.DialOption{43grpc.WithTransportCredentials(creds),44grpc.Avec les identifiants RPCC(&auth{token}),45}4647conn, err := grpc.Composer(endpoint, opts...)48si err != nil {49log.Fatalf("Failed to connect: %v", err)50}51reporter conn.Fermer()5253client := pb.NewStateServiceClient(conn)5455owner := "0xac5bceec1b789ff840d7d4e6ce4ce61c90d190a7f8c4f4ddf0bff6ee2413c33c"5657// Build request with field mask58req := &pb.ListBalancesRequest{59Owner: &owner,60}6162ctx, annuler := context.WithTimeout(contexte.Arrière-plan(), 10*temps.Deuxième)63reporter annuler()6465resp, err := client.ListBalances(ctx, req)66si err != nil {67log.Fatalf("ListBalances failed: %v", err)68}6970// Pretty print the response71marshaler := protojson.MarshalOptions{72UseProtoNames: true,73EmitUnpopulated: true,74Indent: " ",75}7677jsonBytes, err := marshaler.Marshal(resp)78si err != nil {79log.Fatalf("Failed to marshal: %v", err)80}8182var pretty map[string]interface{}83if err := json.Unmarshal(jsonBytes, &pretty); err != nil {84log.Fatalf("Failed to parse JSON: %v", err)85}8687out, _ := json.MarshalIndent(pretty, "", " ")88fmt.Println(string(out))89}90
1import * as grpc from '@grpc/grpc-js';2import * as protoLoader from '@grpc/proto-loader';3import * as path from 'path';45// Configuration6const PROTO_PATH = path.join(__dirname, 'protos/proto/sui/rpc/v2/state_service.proto');78// Quicknode endpoints consist of two crucial components: the endpoint name and the corresponding token9// For eg: QN Endpoint: https://docs-demo.sui-mainnet.quiknode.pro/abcde12345678910// endpoint will be: docs-demo.sui-mainnet.quiknode.pro:9000 {9000 is the port number for Sui gRPC}11// token will be : abcde1234567891213const endpoint = 'docs-demo.sui-mainnet.quiknode.pro:9000';14const token = 'abcde123456789';1516// Load protobuf definitions17const packageDefinition = protoLoader.loadSync(PROTO_PATH, {18keepCase: true,19longs: String,20enums: String,21defaults: true,22oneofs: true,23includeDirs: [path.join(__dirname, 'protos/proto')],24});2526const proto = grpc.loadPackageDefinition(packageDefinition) as any;27const StateService = proto.sui.rpc.v2.StateService;2829// Create secure client30const client = new StateService(endpoint, grpc.credentials.createSsl());3132// Add token metadata33const metadata = new grpc.Metadata();34metadata.add('x-token', token);3536// Request payload37const request = {38owner: '0xac5bceec1b789ff840d7d4e6ce4ce61c90d190a7f8c4f4ddf0bff6ee2413c33c',39};4041// Perform gRPC call42client.ListBalances(request, metadata, (err: grpc.ServiceError | null, response: any) => {43if (err) {44console.error('gRPC Error:', {45code: err.code,46message: err.message,47details: err.details,48});49} else {50console.log('ListBalances Response:');51console.log(JSON.stringify(response, null, 2));52}53});54
1import * as grpc from '@grpc/grpc-js';2import * as protoLoader from '@grpc/proto-loader';3import * as path from 'path';45// Configuration6const PROTO_PATH = path.join(__dirname, 'protos/proto/sui/rpc/v2/state_service.proto');78// Quicknode endpoints consist of two crucial components: the endpoint name and the corresponding token9// For eg: QN Endpoint: https://docs-demo.sui-mainnet.quiknode.pro/abcde12345678910// endpoint will be: docs-demo.sui-mainnet.quiknode.pro:9000 {9000 is the port number for Sui gRPC}11// token will be : abcde1234567891213const endpoint = 'docs-demo.sui-mainnet.quiknode.pro:9000';14const token = 'abcde123456789';1516// Load protobuf definitions17const packageDefinition = protoLoader.loadSync(PROTO_PATH, {18keepCase: true,19longs: String,20enums: String,21defaults: true,22oneofs: true,23includeDirs: [path.join(__dirname, 'protos/proto')],24});2526const proto = grpc.loadPackageDefinition(packageDefinition) as any;27const StateService = proto.sui.rpc.v2.StateService;2829// Create secure client30const client = new StateService(endpoint, grpc.credentials.createSsl());3132// Add token metadata33const metadata = new grpc.Metadata();34metadata.add('x-token', token);3536// Request payload37const request = {38owner: '0xac5bceec1b789ff840d7d4e6ce4ce61c90d190a7f8c4f4ddf0bff6ee2413c33c',39};4041// Perform gRPC call42client.ListBalances(request, metadata, (err: grpc.ServiceError | null, response: any) => {43if (err) {44console.error('gRPC Error:', {45code: err.code,46message: err.message,47details: err.details,48});49} else {50console.log('ListBalances Response:');51console.log(JSON.stringify(response, null, 2));52}53});54
1import grpc2import json3from google.protobuf.json_format import MessageToDict4from sui.rpc.v2 import state_service_pb2, state_service_pb2_grpc567def list_balances():89# Quicknode endpoints consist of two crucial components: the endpoint name and the corresponding token10# For eg: QN Endpoint: https://docs-demo.sui-mainnet.quiknode.pro/abcde12345678911# endpoint will be: docs-demo.sui-mainnet.quiknode.pro:9000 {9000 is the port number for Sui gRPC}12# token will be : abcde1234567891314endpoint = 'docs-demo.sui-mainnet.quiknode.pro:9000';15token = 'abcde123456789';1617channel = grpc.secure_channel(endpoint, grpc.ssl_channel_credentials())18stub = state_service_pb2_grpc.StateServiceStub(channel)1920owner = "0xac5bceec1b789ff840d7d4e6ce4ce61c90d190a7f8c4f4ddf0bff6ee2413c33c"2122request = state_service_pb2.ListBalancesRequest(23owner=owner24)2526metadata = [("x-token", token)]2728return stub.ListBalances(request, metadata=metadata)293031def parse_response_to_json(response):32return json.dumps(33MessageToDict(response, preserving_proto_field_name=True),34indent=235)363738def main():39try:40response = list_balances()41print(parse_response_to_json(response))42except grpc.RpcError as e:43print(f"{e.code().name}: {e.details()}")444546if __name__ == "__main__":47main()48
1import grpc2import json3from google.protobuf.json_format import MessageToDict4from sui.rpc.v2 import state_service_pb2, state_service_pb2_grpc567def list_balances():89# Quicknode endpoints consist of two crucial components: the endpoint name and the corresponding token10# For eg: QN Endpoint: https://docs-demo.sui-mainnet.quiknode.pro/abcde12345678911# endpoint will be: docs-demo.sui-mainnet.quiknode.pro:9000 {9000 is the port number for Sui gRPC}12# token will be : abcde1234567891314endpoint = 'docs-demo.sui-mainnet.quiknode.pro:9000';15token = 'abcde123456789';1617channel = grpc.secure_channel(endpoint, grpc.ssl_channel_credentials())18stub = state_service_pb2_grpc.StateServiceStub(channel)1920owner = "0xac5bceec1b789ff840d7d4e6ce4ce61c90d190a7f8c4f4ddf0bff6ee2413c33c"2122request = state_service_pb2.ListBalancesRequest(23owner=owner24)2526metadata = [("x-token", token)]2728return stub.ListBalances(request, metadata=metadata)293031def parse_response_to_json(response):32return json.dumps(33MessageToDict(response, preserving_proto_field_name=True),34indent=235)363738def main():39try:40response = list_balances()41print(parse_response_to_json(response))42except grpc.RpcError as e:43print(f"{e.code().name}: {e.details()}")444546if __name__ == "__main__":47main()48
Vous n'avez pas encore de compte ?
Créez votreendpoint Quicknode endpoint quelques secondes et commencez à développer
Commencez gratuitement