2024-07-05 22:20:13 -04:00
|
|
|
syntax = "proto3";
|
|
|
|
package did.v1;
|
|
|
|
|
|
|
|
import "google/api/annotations.proto";
|
|
|
|
import "did/v1/genesis.proto";
|
2024-08-10 18:27:11 -04:00
|
|
|
import "did/v1/types.proto";
|
2024-07-05 22:20:13 -04:00
|
|
|
|
|
|
|
option go_package = "github.com/onsonr/hway/x/did/types";
|
|
|
|
|
|
|
|
// Query provides defines the gRPC querier service.
|
|
|
|
service Query {
|
|
|
|
// Params queries all parameters of the module.
|
|
|
|
rpc Params(QueryParamsRequest) returns (QueryParamsResponse) {
|
|
|
|
option (google.api.http).get = "/did/params";
|
|
|
|
}
|
|
|
|
|
2024-08-10 18:27:11 -04:00
|
|
|
// Accounts returns associated wallet accounts with the DID.
|
|
|
|
rpc Accounts(QueryAccountsRequest) returns (QueryAccountsResponse) {
|
|
|
|
option (google.api.http).get = "/did/{did}/accounts";
|
|
|
|
}
|
|
|
|
|
|
|
|
// Credentials returns associated credentials with the DID and Service Origin.
|
|
|
|
rpc Credentials(QueryCredentialsRequest) returns (QueryCredentialsResponse) {
|
|
|
|
option (google.api.http).get = "/did/{did}/{origin}/credentials";
|
|
|
|
}
|
|
|
|
|
|
|
|
// Identities returns associated identity with the DID.
|
|
|
|
rpc Identities(QueryIdentitiesRequest) returns (QueryIdentitiesResponse) {
|
|
|
|
option (google.api.http).get = "/did/{did}/identities";
|
|
|
|
}
|
|
|
|
|
|
|
|
// Resolve queries the DID document by its id.
|
|
|
|
rpc Resolve(QueryResolveRequest) returns (QueryResolveResponse) {
|
|
|
|
option (google.api.http).get = "/did/resolve/{did}";
|
2024-07-05 22:20:13 -04:00
|
|
|
}
|
|
|
|
|
2024-08-10 18:27:11 -04:00
|
|
|
// Service returns associated ServiceInfo for a given Origin
|
|
|
|
rpc Service(QueryServiceRequest) returns (QueryServiceResponse) {
|
|
|
|
option (google.api.http).get = "/did/service/{origin}";
|
2024-07-05 22:20:13 -04:00
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
// QueryParamsRequest is the request type for the Query/Params RPC method.
|
|
|
|
message QueryParamsRequest {}
|
|
|
|
|
|
|
|
// QueryParamsResponse is the response type for the Query/Params RPC method.
|
|
|
|
message QueryParamsResponse {
|
|
|
|
// params defines the parameters of the module.
|
|
|
|
Params params = 1;
|
|
|
|
}
|
|
|
|
|
2024-08-10 18:27:11 -04:00
|
|
|
// QueryAccountsRequest is the request type for the Query/Exists RPC method.
|
|
|
|
message QueryAccountsRequest {
|
|
|
|
string did = 1;
|
2024-07-05 22:20:13 -04:00
|
|
|
}
|
|
|
|
|
2024-08-10 18:27:11 -04:00
|
|
|
// QueryAccountsResponse is the response type for the Query/Exists RPC method.
|
|
|
|
message QueryAccountsResponse {
|
2024-07-05 22:20:13 -04:00
|
|
|
bool exists = 1;
|
|
|
|
}
|
|
|
|
|
2024-08-10 18:27:11 -04:00
|
|
|
// QueryCredentialsRequest is the request type for the Query/Exists RPC method.
|
|
|
|
message QueryCredentialsRequest {
|
|
|
|
string did = 1;
|
|
|
|
string origin = 2;
|
|
|
|
}
|
|
|
|
|
|
|
|
// QueryCredentialsResponse is the response type for the Query/Exists RPC method.
|
|
|
|
message QueryCredentialsResponse {
|
|
|
|
map<string, bytes> credentials = 1;
|
|
|
|
}
|
|
|
|
|
|
|
|
// QueryIdentitiesRequest is the request type for the Query/Exists RPC method.
|
|
|
|
message QueryIdentitiesRequest {
|
|
|
|
string did = 1;
|
|
|
|
}
|
|
|
|
|
|
|
|
// QueryIdentitiesResponse is the response type for the Query/Exists RPC method.
|
|
|
|
message QueryIdentitiesResponse {
|
|
|
|
bool exists = 1;
|
|
|
|
repeated VerificationMethod verificationMethod = 2;
|
|
|
|
}
|
|
|
|
|
2024-07-05 22:20:13 -04:00
|
|
|
// QueryResolveRequest is the request type for the Query/Resolve RPC method.
|
|
|
|
message QueryResolveRequest {
|
2024-08-10 18:27:11 -04:00
|
|
|
string did = 1;
|
2024-07-05 22:20:13 -04:00
|
|
|
}
|
|
|
|
|
|
|
|
// QueryResolveResponse is the response type for the Query/Resolve RPC method.
|
|
|
|
message QueryResolveResponse {
|
|
|
|
// document is the DID document
|
2024-08-10 18:27:11 -04:00
|
|
|
Document document = 1;
|
2024-07-05 22:20:13 -04:00
|
|
|
}
|
|
|
|
|
2024-08-10 18:27:11 -04:00
|
|
|
// QueryServiceRequest is the request type for the Query/LoginOptions RPC method.
|
|
|
|
message QueryServiceRequest {
|
|
|
|
string origin = 1;
|
2024-07-05 22:20:13 -04:00
|
|
|
}
|
|
|
|
|
|
|
|
// QueryLoginOptionsResponse is the response type for the Query/LoginOptions RPC method.
|
2024-08-10 18:27:11 -04:00
|
|
|
message QueryServiceResponse {
|
2024-07-05 22:20:13 -04:00
|
|
|
// options is the PublicKeyCredentialAttestationOptions
|
|
|
|
string options = 1;
|
|
|
|
}
|
|
|
|
|