Skip to content
Snippets Groups Projects
api.proto 1.03 KiB
Newer Older
  • Learn to ignore specific revisions
  • 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) {};
    }