api: add initial gRPC service definition

This commit is contained in:
Eric Chiang 2016-10-03 22:15:04 -07:00
parent ea3a42938d
commit 0ea891b2f1
1 changed files with 46 additions and 0 deletions

46
api/api.proto Normal file
View File

@ -0,0 +1,46 @@
syntax = "proto3";
package api;
// Client represents an OAuth2 client.
message Client {
string id = 1;
string secret = 2;
repeated string redirect_uris = 3;
repeated string trusted_peers = 4;
bool public = 5;
string name = 6;
string logo_url = 7;
}
// CreateClientReq is a request to make a client.
message CreateClientReq {
Client client = 1;
}
// CreateClientResp returns the response from creating a client.
message CreateClientResp {
bool already_exists = 1;
Client client = 2;
}
// DeleteClientReq is a request to delete a client.
message DeleteClientReq {
// The ID of the client.
string id = 1;
}
// DeleteClientResp determines if the.
message DeleteClientResp {
bool not_found = 1;
}
// TODO(ericchiang): expand this.
// Dex represents the dex gRPC service.
service Dex {
// CreateClient attempts to create the client.
rpc CreateClient(CreateClientReq) returns (CreateClientResp) {};
// DeleteClient attempts to delete the provided client.
rpc DeleteClient(DeleteClientReq) returns (DeleteClientResp) {};
}