ListOwnedObjects gRPC Method
매개변수
소유자
문자열
필수
로딩 중...
page_size
정수
로딩 중...
page_token
문자열
로딩 중...
read_mask
객체
로딩 중...
object_type
문자열
로딩 중...
반품
objects
배열
로딩 중...
objectId
문자열
로딩 중...
버전
문자열
로딩 중...
digest
문자열
로딩 중...
objectType
문자열
로딩 중...
소유자
객체
로딩 중...
hasPublicTransfer
부울
로딩 중...
contents
객체
로딩 중...
bcs
객체
로딩 중...
nextPageToken
문자열
로딩 중...
요청
1grpcurl -proto ./sui/rpc/v2/state_service.proto -H "x-token: abcde123456789" -d '{2"owner": "0x27c4fdb3b846aa3ae4a65ef5127a309aa3c1f466671471a806d8912a18b253e8"3}' docs-demo.sui-mainnet.quiknode.pro:9000 sui.rpc.v2.StateService/ListOwnedObjects4
1grpcurl -proto ./sui/rpc/v2/state_service.proto -H "x-token: abcde123456789" -d '{2"owner": "0x27c4fdb3b846aa3ae4a65ef5127a309aa3c1f466671471a806d8912a18b253e8"3}' docs-demo.sui-mainnet.quiknode.pro:9000 sui.rpc.v2.StateService/ListOwnedObjects4
1패키지 main23가져오기 (4"문맥"5"crypto/tls"6"encoding/json"7"fmt"8"로그"9"시간"1011"google.golang.grpc"12"google.golang.grpc"13"google.golang.org/protobuf/encoding/protojson"14"google.golang.org/protobuf/types/known/fieldmaskpb"1516pb "sui-grpc/sui/rpc/v2" // Your Generated .pb.go files path17)1819// Quicknode endpoints consist of two crucial components: the endpoint name and the corresponding token20// For eg: QN Endpoint: https://docs-demo.sui-mainnet.quiknode.pro/abcde12345678921// endpoint will be: docs-demo.sui-mainnet.quiknode.pro:9000 {9000 is the port number for Sui gRPC}22// token will be : abcde1234567892324var (25token = "YOUR_TOKEN_NUMBER"26endpoint = "YOUR_QN_ENDPOINT:9000"27)2829// Auth structure for x-token30유형 auth struct {31토큰 문자열32}3334func (a *auth) GetRequestMetadata(ctx 컨텍스트.Context, uri ...문자열) (map[문자열]문자열, error) {35return map[string]string{"x-token": a.token}, nil36}37func (a *auth) RequireTransportSecurity() bool {38return true39}4041func main() {42creds := credentials.NewTLS(&tls.Config{})43opts := []grpc.DialOption{44grpc.WithTransportCredentials(creds),45grpc.WithPerRPCCredentials(&auth{token}),46}4748conn, err := grpc.Dial(endpoint, opts...)49만약 err != nil {50log.Fatalf("Failed to connect: %v", err)51}52이연 conn.닫기()5354client := pb.NewStateServiceClient(conn)5556owner := "0x27c4fdb3b846aa3ae4a65ef5127a309aa3c1f466671471a806d8912a18b253e8"5758// Build request with field mask59req := &pb.ListOwnedObjectsRequest{60Owner: &owner,61ReadMask: &fieldmaskpb.FieldMask{62Paths: []string{63"object_id",64"version",65"digest",66"object_type",67"owner",68},69},70}7172ctx, 취소 := context.WithTimeout(컨텍스트.Background(), 10*시간.두 번째)73연기 연기()7475resp, err := client.ListOwnedObjects(ctx, req)76만약 err != nil {77log.Fatalf("ListOwnedObjects failed: %v", err)78}7980// Pretty print the response81marshaler := protojson.MarshalOptions{82UseProtoNames: true,83EmitUnpopulated: true,84Indent: " ",85}8687jsonBytes, err := marshaler.Marshal(resp)88만약 err != nil {89log.Fatalf("Failed to marshal: %v", err)90}9192var pretty map[string]interface{}93if err := json.Unmarshal(jsonBytes, &pretty); err != nil {94log.Fatalf("Failed to parse JSON: %v", err)95}9697out, _ := json.MarshalIndent(pretty, "", " ")98fmt.Println(string(out))99}100
1패키지 main23가져오기 (4"문맥"5"crypto/tls"6"encoding/json"7"fmt"8"로그"9"시간"1011"google.golang.grpc"12"google.golang.grpc"13"google.golang.org/protobuf/encoding/protojson"14"google.golang.org/protobuf/types/known/fieldmaskpb"1516pb "sui-grpc/sui/rpc/v2" // Your Generated .pb.go files path17)1819// Quicknode endpoints consist of two crucial components: the endpoint name and the corresponding token20// For eg: QN Endpoint: https://docs-demo.sui-mainnet.quiknode.pro/abcde12345678921// endpoint will be: docs-demo.sui-mainnet.quiknode.pro:9000 {9000 is the port number for Sui gRPC}22// token will be : abcde1234567892324var (25token = "YOUR_TOKEN_NUMBER"26endpoint = "YOUR_QN_ENDPOINT:9000"27)2829// Auth structure for x-token30유형 auth struct {31토큰 문자열32}3334func (a *auth) GetRequestMetadata(ctx 컨텍스트.Context, uri ...문자열) (map[문자열]문자열, error) {35return map[string]string{"x-token": a.token}, nil36}37func (a *auth) RequireTransportSecurity() bool {38return true39}4041func main() {42creds := credentials.NewTLS(&tls.Config{})43opts := []grpc.DialOption{44grpc.WithTransportCredentials(creds),45grpc.WithPerRPCCredentials(&auth{token}),46}4748conn, err := grpc.Dial(endpoint, opts...)49만약 err != nil {50log.Fatalf("Failed to connect: %v", err)51}52이연 conn.닫기()5354client := pb.NewStateServiceClient(conn)5556owner := "0x27c4fdb3b846aa3ae4a65ef5127a309aa3c1f466671471a806d8912a18b253e8"5758// Build request with field mask59req := &pb.ListOwnedObjectsRequest{60Owner: &owner,61ReadMask: &fieldmaskpb.FieldMask{62Paths: []string{63"object_id",64"version",65"digest",66"object_type",67"owner",68},69},70}7172ctx, 취소 := context.WithTimeout(컨텍스트.Background(), 10*시간.두 번째)73연기 연기()7475resp, err := client.ListOwnedObjects(ctx, req)76만약 err != nil {77log.Fatalf("ListOwnedObjects failed: %v", err)78}7980// Pretty print the response81marshaler := protojson.MarshalOptions{82UseProtoNames: true,83EmitUnpopulated: true,84Indent: " ",85}8687jsonBytes, err := marshaler.Marshal(resp)88만약 err != nil {89log.Fatalf("Failed to marshal: %v", err)90}9192var pretty map[string]interface{}93if err := json.Unmarshal(jsonBytes, &pretty); err != nil {94log.Fatalf("Failed to parse JSON: %v", err)95}9697out, _ := json.MarshalIndent(pretty, "", " ")98fmt.Println(string(out))99}100
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: '0x27c4fdb3b846aa3ae4a65ef5127a309aa3c1f466671471a806d8912a18b253e8',39};4041// Perform gRPC call42client.ListOwnedObjects(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('ListOwnedObjects 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: '0x27c4fdb3b846aa3ae4a65ef5127a309aa3c1f466671471a806d8912a18b253e8',39};4041// Perform gRPC call42client.ListOwnedObjects(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('ListOwnedObjects 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_owned_objects():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 = "0x27c4fdb3b846aa3ae4a65ef5127a309aa3c1f466671471a806d8912a18b253e8"2122request = state_service_pb2.ListOwnedObjectsRequest(23owner=owner24)2526metadata = [("x-token", token)]2728return stub.ListOwnedObjects(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_owned_objects()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_owned_objects():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 = "0x27c4fdb3b846aa3ae4a65ef5127a309aa3c1f466671471a806d8912a18b253e8"2122request = state_service_pb2.ListOwnedObjectsRequest(23owner=owner24)2526metadata = [("x-token", token)]2728return stub.ListOwnedObjects(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_owned_objects()41print(parse_response_to_json(response))42except grpc.RpcError as e:43print(f"{e.code().name}: {e.details()}")444546if __name__ == "__main__":47main()48