Files
sonr/proto/did/v1/query.proto
T

101 lines
2.8 KiB
Protocol Buffer
Raw Normal View History

2024-07-05 22:20:13 -04:00
syntax = "proto3";
package did.v1;
import "did/v1/genesis.proto";
2024-08-31 12:49:44 -04:00
import "did/v1/models.proto";
2024-09-05 01:24:57 -04:00
import "google/api/annotations.proto";
2024-07-05 22:20:13 -04:00
2024-09-05 01:24:57 -04:00
option go_package = "github.com/onsonr/sonr/x/did/types";
2024-07-05 22:20:13 -04:00
// Query provides defines the gRPC querier service.
service Query {
2024-09-05 01:24:57 -04:00
// Params queries all parameters of the module.
2024-09-14 12:47:25 -04:00
rpc Params(QueryRequest) returns (QueryParamsResponse) {
option (google.api.http).get = "/params";
}
// ParamsAssets queries all parameters of the module.
2024-09-14 14:46:09 -04:00
rpc ParamsAssets(QueryRequest) returns (QueryParamsAssetsResponse) {
2024-09-14 12:47:25 -04:00
option (google.api.http).get = "/params/assets";
}
// Params queries all parameters of the module.
2024-09-14 14:46:09 -04:00
rpc ParamsByAsset(QueryRequest) returns (QueryParamsByAssetResponse) {
2024-09-14 12:47:25 -04:00
option (google.api.http).get = "/params/assets/{asset}";
}
// ParamsKeys queries all parameters of the module.
2024-09-14 14:46:09 -04:00
rpc ParamsKeys(QueryRequest) returns (QueryParamsKeysResponse) {
2024-09-14 12:47:25 -04:00
option (google.api.http).get = "/params/keys";
}
// Params queries all parameters of the module.
2024-09-14 14:46:09 -04:00
rpc ParamsByKey(QueryRequest) returns (QueryParamsByKeyResponse) {
2024-09-14 12:47:25 -04:00
option (google.api.http).get = "/params/keys/{key}";
}
2024-09-05 01:24:57 -04:00
// Resolve queries the DID document by its id.
2024-09-14 14:46:09 -04:00
rpc Resolve(QueryRequest) returns (QueryResolveResponse) {
2024-09-05 01:24:57 -04:00
option (google.api.http).get = "/did/{did}";
}
// Service returns associated ServiceInfo for a given Origin
2024-09-11 15:10:54 -04:00
// if the servie is not found, a fingerprint is generated to be used
// as a TXT record in DNS. v=sonr, o=origin, p=protocol
2024-09-14 14:46:09 -04:00
rpc Service(QueryRequest) returns (QueryServiceResponse) {
2024-09-05 01:24:57 -04:00
option (google.api.http).get = "/service/{origin}";
}
2024-07-05 22:20:13 -04:00
}
2024-09-05 01:24:57 -04:00
// Queryequest is the request type for the Query/Params RPC method.
message QueryRequest {
string did = 1;
string origin = 2;
2024-09-14 12:47:25 -04:00
string key = 3;
string asset = 4;
2024-07-05 22:20:13 -04:00
}
// QueryResolveResponse is the response type for the Query/Resolve RPC method.
2024-09-11 15:10:54 -04:00
message QueryResponse {
2024-09-05 01:24:57 -04:00
bool success = 1;
2024-09-11 15:10:54 -04:00
string query = 2;
Document document = 3;
2024-09-07 18:12:58 -04:00
Params params = 5;
2024-09-05 01:24:57 -04:00
}
2024-09-14 12:47:25 -04:00
// QueryParamsResponse is the response type for the Query/Params RPC method.
message QueryParamsResponse {
2024-09-14 14:46:09 -04:00
// params defines the parameters of the module.
2024-09-14 12:47:25 -04:00
Params params = 1;
}
message QueryParamsAssetsResponse {
repeated AssetInfo assets = 1;
2024-07-05 22:20:13 -04:00
}
2024-09-14 14:46:09 -04:00
message QueryParamsByAssetResponse {
AssetInfo asset = 1;
2024-09-14 12:47:25 -04:00
}
message QueryParamsKeysResponse {
map<string, KeyInfo> keys = 1;
}
message QueryParamsByKeyResponse {
KeyInfo key = 1;
}
2024-09-14 14:46:09 -04:00
// QueryResolveResponse is the response type for the Query/Resolve RPC method.
message QueryResolveResponse {
// document is the DID document
Document document = 1;
2024-09-14 12:47:25 -04:00
}
2024-09-14 14:46:09 -04:00
// QueryLoginOptionsResponse is the response type for the Query/LoginOptions RPC method.
message QueryServiceResponse {
// options is the PublicKeyCredentialAttestationOptions
bool existing = 1;
ServiceInfo service = 2;
string txt_record = 3;
2024-09-14 12:47:25 -04:00
}