syntax = "proto3"; package kratos.api; import "google/protobuf/descriptor.proto"; import "google/api/annotations.proto"; option go_package = "github.com/go-kratos/kratos/v2/api/proto/kratos/api;metadata"; option java_multiple_files = true; option java_package = "com.github.kratos.api"; option objc_class_prefix = "KratosAPI"; // Metadata is api definition metadata service. service Metadata { // ListServices list the full name of all services. rpc ListServices (ListServicesRequest) returns (ListServicesReply) { option (google.api.http) = { get: "/services", }; } // GetServiceDesc get the full fileDescriptorSet of service. rpc GetServiceDesc (GetServiceDescRequest) returns (GetServiceDescReply) { option (google.api.http) = { get: "/services/{name}", }; } } message ListServicesRequest {} message ListServicesReply { repeated string services = 1; repeated string methods = 2; } message GetServiceDescRequest { string name = 1; } message GetServiceDescReply { google.protobuf.FileDescriptorSet file_desc_set = 1; }