GetCheckpoint gRPC Method
पैरामीटर
sequence_number
डोरी
लोड हो रहा है...
digest
डोरी
लोड हो रहा है...
read_mask
वस्तु
लोड हो रहा है...
paths
सरणी
लोड हो रहा है...
रिटर्न
checkpoint
वस्तु
लोड हो रहा है...
sequenceNumber
डोरी
लोड हो रहा है...
digest
डोरी
लोड हो रहा है...
अनुरोध
1grpcurl \2-import-path . \3-proto sui/rpc/v2/ledger_service.proto \4-H "x-token: YOUR_TOKEN_VALUE" \5-डी '{6"sequence_number": "1000",7"read_mask": {8"paths": [9"sequence_number",10"digest"11]12}13}' \14docs-demo.sui-mainnet.quiknode.pro:9000 \15sui.rpc.v2.LedgerService/GetCheckpoint16
1grpcurl \2-import-path . \3-proto sui/rpc/v2/ledger_service.proto \4-H "x-token: YOUR_TOKEN_VALUE" \5-डी '{6"sequence_number": "1000",7"read_mask": {8"paths": [9"sequence_number",10"digest"11]12}13}' \14docs-demo.sui-mainnet.quiknode.pro:9000 \15sui.rpc.v2.LedgerService/GetCheckpoint16
1पैकेज मुख्य23आयात (4"प्रसंग"5"क्रिप्टो/टीएलएस"6"एनकोडिंग/जेसन"7"एफएमटी"8"लकड़ी का लट्ठा"9"समय"1011"google.golang.org/ grpc "12"google.golang.org/ 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टाइप ऑथ स्ट्रक्चर {31टोकन स्ट्रिंग32}3334समारोह ( a * auth ) GetRequestMetadata ( ctx context . Context , uri ... string ) ( मैप [ स्ट्रिंग ] स्ट्रिंग , गलती ) {35वापस करना मानचित्र [ स्ट्रिंग ] स्ट्रिंग {36"x-टोकन" : एक . टोकन ,37} , शून्य38}3940समारोह ( a * auth ) परिवहन सुरक्षा की आवश्यकता है ( ) बूल {41return true42}4344समारोह मुख्य ( ) {45// TLS credentials46creds := credentials.NewTLS(&tls.Config{})47opts := []grpc.DialOption{48grpc.WithTransportCredentials(creds),49grpc ( & auth { token } ) ,50}5152conn , err := grpc . Dial ( endpoint , opts ... )53यदि त्रुटि != शून्य {54log.Fatalf("Failed to connect: %v", err)55}56कनेक्शन स्थगित करें । बंद करें ( )5758client := pb.NewLedgerServiceClient(conn)5960// Request for checkpoint with sequence_number = 100061seq := uint64(1000)62req := &pb.GetCheckpointRequest{63CheckpointId: &pb.GetCheckpointRequest_SequenceNumber{64SequenceNumber: seq,65},66ReadMask: &fieldmaskpb.FieldMask{67Paths: []string{"sequence_number", "digest"},68},69}7071ctx , रद्द करें : = संदर्भ . WithTimeout ( संदर्भ.पृष्ठभूमि ( ) , 10 * समय . सेकंड )72आस्थगित करें रद्द करना ( )7374resp, err := client.GetCheckpoint(ctx, req)75यदि त्रुटि != शून्य {76log.Fatalf("GetCheckpoint failed: %v", err)77}7879marshaler := protojson.MarshalOptions{80UseProtoNames: true,81EmitUnpopulated: true,82Indent: " ",83}8485jsonBytes, err := marshaler.Marshal(resp)86यदि त्रुटि != शून्य {87log.Fatalf("Failed to marshal: %v", err)88}8990var pretty map[string]interface{}91if err := json.Unmarshal(jsonBytes, &pretty); err != nil {92log.Fatalf("Failed to unmarshal: %v", err)93}9495formatted, _ := json.MarshalIndent(pretty, "", " ")96fmt.Println(string(formatted))97}98
1पैकेज मुख्य23आयात (4"प्रसंग"5"क्रिप्टो/टीएलएस"6"एनकोडिंग/जेसन"7"एफएमटी"8"लकड़ी का लट्ठा"9"समय"1011"google.golang.org/ grpc "12"google.golang.org/ 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टाइप ऑथ स्ट्रक्चर {31टोकन स्ट्रिंग32}3334समारोह ( a * auth ) GetRequestMetadata ( ctx context . Context , uri ... string ) ( मैप [ स्ट्रिंग ] स्ट्रिंग , गलती ) {35वापस करना मानचित्र [ स्ट्रिंग ] स्ट्रिंग {36"x-टोकन" : एक . टोकन ,37} , शून्य38}3940समारोह ( a * auth ) परिवहन सुरक्षा की आवश्यकता है ( ) बूल {41return true42}4344समारोह मुख्य ( ) {45// TLS credentials46creds := credentials.NewTLS(&tls.Config{})47opts := []grpc.DialOption{48grpc.WithTransportCredentials(creds),49grpc ( & auth { token } ) ,50}5152conn , err := grpc . Dial ( endpoint , opts ... )53यदि त्रुटि != शून्य {54log.Fatalf("Failed to connect: %v", err)55}56कनेक्शन स्थगित करें । बंद करें ( )5758client := pb.NewLedgerServiceClient(conn)5960// Request for checkpoint with sequence_number = 100061seq := uint64(1000)62req := &pb.GetCheckpointRequest{63CheckpointId: &pb.GetCheckpointRequest_SequenceNumber{64SequenceNumber: seq,65},66ReadMask: &fieldmaskpb.FieldMask{67Paths: []string{"sequence_number", "digest"},68},69}7071ctx , रद्द करें : = संदर्भ . WithTimeout ( संदर्भ.पृष्ठभूमि ( ) , 10 * समय . सेकंड )72आस्थगित करें रद्द करना ( )7374resp, err := client.GetCheckpoint(ctx, req)75यदि त्रुटि != शून्य {76log.Fatalf("GetCheckpoint failed: %v", err)77}7879marshaler := protojson.MarshalOptions{80UseProtoNames: true,81EmitUnpopulated: true,82Indent: " ",83}8485jsonBytes, err := marshaler.Marshal(resp)86यदि त्रुटि != शून्य {87log.Fatalf("Failed to marshal: %v", err)88}8990var pretty map[string]interface{}91if err := json.Unmarshal(jsonBytes, &pretty); err != nil {92log.Fatalf("Failed to unmarshal: %v", err)93}9495formatted, _ := json.MarshalIndent(pretty, "", " ")96fmt.Println(string(formatted))97}98
1import * as grpc from '@grpc/grpc-js';2import * as protoLoader from '@grpc/proto-loader';3import * as path from 'path';45const PROTO_PATH = path.join(__dirname, 'protos/proto/sui/rpc/v2/ledger_service.proto');67// Quicknode endpoints consist of two crucial components: the endpoint name and the corresponding token8// For eg: QN Endpoint: https://docs-demo.sui-mainnet.quiknode.pro/abcde1234567899// endpoint will be: docs-demo.sui-mainnet.quiknode.pro:9000 {9000 is the port number for Sui gRPC}10// token will be : abcde1234567891112const endpoint = 'docs-demo.sui-mainnet.quiknode.pro:9000';13const token = 'abcde123456789';1415// Load protobuf definitions16const packageDefinition = protoLoader.loadSync(PROTO_PATH, {17keepCase: true,18longs: String,19enums: String,20defaults: true,21oneofs: true,22includeDirs: [path.join(__dirname, 'protos/proto')],23} ) ;24const proto = grpc.loadPackageDefinition(packageDefinition) as any;25const LedgerService = proto.sui.rpc.v2.LedgerService;2627// Create secure client28const client = new LedgerService(endpoint, grpc.credentials.createSsl());2930// Metadata for authentication31const metadata = new grpc.Metadata();32metadata.add('x-token', token);3334const request = {35sequence_number: 1000, // Replace as needed36read_mask: {37paths: ['sequence_number', 'digest'],38} ,39} ;4041client.GetCheckpoint(request, metadata, (err: grpc.ServiceError | null, response: any) => {42if (err) {43console.error('gRPC Error:', {44code: err.code,45message: err.message,46details: err.details,47});48} else {49console.log('Checkpoint Response:');50console.log(JSON.stringify(response, null, 2));51}52} ) ;53
1import * as grpc from '@grpc/grpc-js';2import * as protoLoader from '@grpc/proto-loader';3import * as path from 'path';45const PROTO_PATH = path.join(__dirname, 'protos/proto/sui/rpc/v2/ledger_service.proto');67// Quicknode endpoints consist of two crucial components: the endpoint name and the corresponding token8// For eg: QN Endpoint: https://docs-demo.sui-mainnet.quiknode.pro/abcde1234567899// endpoint will be: docs-demo.sui-mainnet.quiknode.pro:9000 {9000 is the port number for Sui gRPC}10// token will be : abcde1234567891112const endpoint = 'docs-demo.sui-mainnet.quiknode.pro:9000';13const token = 'abcde123456789';1415// Load protobuf definitions16const packageDefinition = protoLoader.loadSync(PROTO_PATH, {17keepCase: true,18longs: String,19enums: String,20defaults: true,21oneofs: true,22includeDirs: [path.join(__dirname, 'protos/proto')],23} ) ;24const proto = grpc.loadPackageDefinition(packageDefinition) as any;25const LedgerService = proto.sui.rpc.v2.LedgerService;2627// Create secure client28const client = new LedgerService(endpoint, grpc.credentials.createSsl());2930// Metadata for authentication31const metadata = new grpc.Metadata();32metadata.add('x-token', token);3334const request = {35sequence_number: 1000, // Replace as needed36read_mask: {37paths: ['sequence_number', 'digest'],38} ,39} ;4041client.GetCheckpoint(request, metadata, (err: grpc.ServiceError | null, response: any) => {42if (err) {43console.error('gRPC Error:', {44code: err.code,45message: err.message,46details: err.details,47});48} else {49console.log('Checkpoint Response:');50console.log(JSON.stringify(response, null, 2));51}52} ) ;53
1import grpc2आयात करें json3from google.protobuf.field_mask_pb2 import FieldMask4from google.protobuf.json_format import MessageToDict5from sui.rpc.v2 import ledger_service_pb2, ledger_service_pb2_grpc678def get_checkpoint():9# 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 = ledger_service_pb2_grpc.LedgerServiceStub(channel)1920# You can specify a checkpoint by sequence_number or digest21# Using sequence_number here as an example22sequence_number = 1000 # Replace with the actual checkpoint sequence number you want to retrieve2324# Create a field mask to specify which fields to include in the response25read_mask = FieldMask(paths=[26"sequence_number",27"digest"28])2930# Prepare the GetCheckpointRequest31request = ledger_service_pb2.GetCheckpointRequest(32sequence_number=sequence_number,33read_mask=read_mask34)3536metadata = [("x-token", token)]3738return stub.GetCheckpoint(request, metadata=metadata)394041def parse_response_to_json(response):42return json.dumps(43MessageToDict(response, preserving_proto_field_name=True),44indent=245)464748def main():49try:50response = get_checkpoint()51print(parse_response_to_json(response))52except grpc.RpcError as e:53print(f"{e.code().name}: {e.details()}")545556if __name__ == "__main__":57main()58
1import grpc2आयात करें json3from google.protobuf.field_mask_pb2 import FieldMask4from google.protobuf.json_format import MessageToDict5from sui.rpc.v2 import ledger_service_pb2, ledger_service_pb2_grpc678def get_checkpoint():9# 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 = ledger_service_pb2_grpc.LedgerServiceStub(channel)1920# You can specify a checkpoint by sequence_number or digest21# Using sequence_number here as an example22sequence_number = 1000 # Replace with the actual checkpoint sequence number you want to retrieve2324# Create a field mask to specify which fields to include in the response25read_mask = FieldMask(paths=[26"sequence_number",27"digest"28])2930# Prepare the GetCheckpointRequest31request = ledger_service_pb2.GetCheckpointRequest(32sequence_number=sequence_number,33read_mask=read_mask34)3536metadata = [("x-token", token)]3738return stub.GetCheckpoint(request, metadata=metadata)394041def parse_response_to_json(response):42return json.dumps(43MessageToDict(response, preserving_proto_field_name=True),44indent=245)464748def main():49try:50response = get_checkpoint()51print(parse_response_to_json(response))52except grpc.RpcError as e:53print(f"{e.code().name}: {e.details()}")545556if __name__ == "__main__":57main()58
अब तक कोई खाता नहीं है?
अपना बनाएँ Quicknode endpoint कुछ ही सेकंड में निर्माण शुरू करें
मुफ़्त में शुरुआत करें