This interface will help you play around with gRPC protocol interface and it's properties with some mock data. We have provided the PROTO definition for the gRPC interface which will give you clear idea about the request & response data formats as well as supported interfaces.
Endpoint: grpc.techunits.com:9111
Secured Endpoint: grpc.techunits.com:9112
In order to use the secured gRPC interface, you need following ceritifcate to be used with your gRPC client preferably sConnector.
https://letsencrypt.org/certs/isrgrootx1.pem
syntax = "proto3";
package SamplePackage;
message Empty {
}
message PingRequest {
}
message PingResponse {
string id = 1;
string field_01 = 2;
string field_02 = 3;
string field_03 = 4;
string field_04 = 5;
string status = 6;
int32 created_on = 7;
}
message EntryCreateRequest {
string title = 1;
string code = 2;
string description = 3;
}
message EntryUpdateRequest {
string entry_id = 1;
string title = 2;
string code = 3;
string description = 4;
}
message EntryFileUploadRequest {
oneof data {
string entry_id = 1;
bytes chunk = 2;
};
}
message EntryResponse {
string id = 1;
string title = 2;
string code = 3;
string description = 4;
string file_url = 5;
int32 created_on = 6;
int32 modified_on = 7;
}
message EntryListRequest {
int32 limit = 1;
int32 page = 2;
enum Status {
PUBLISHED = 0;
DRAFT = 1;
}
Status status = 3;
}
message EntryListResponse {
repeated EntryResponse entries = 1;
}
message EntryDetailRequest {
string entry_id = 1;
}
service SampleService {
rpc ping(PingRequest) returns (PingResponse) {}
rpc createEntry(EntryCreateRequest) returns (EntryResponse) {}
rpc createBulkEntries(stream EntryCreateRequest) returns (stream EntryResponse) {}
rpc updateEntry(EntryUpdateRequest) returns (EntryResponse) {}
rpc uploadEntryFile(stream EntryFileUploadRequest) returns (EntryResponse) {}
rpc listEntries(EntryListRequest) returns (EntryListResponse) {}
rpc streamEntries(EntryListRequest) returns (stream EntryResponse) {}
rpc getEntryInfo(EntryDetailRequest) returns (EntryResponse) {}
rpc deleteEntry(EntryDetailRequest) returns (EntryResponse) {}
rpc notDefinedSample(Empty) returns (Empty) {}
}
gRPC is designed to be fast and high performance. It's designed to overcome performance issues caused by REST communications between different dependent microservices.
Learn MoreProtobuf are language & platform neutral extensible method of serializing structured data, which is used as core data transmission mechanism for gRPC interfaces.
Learn MoregRPC has been built on top of HTTP/2 protocol standards, which enables Binary data transmission, Multiplexed streams, Header compression for fastest possible experience & performance.
Learn MoresConnector is an interactive visual gRPC client that will help developers to test any gRPC interface without writing any code, also it would produce sample code for developers to kick start immediately.