// Copyright (C) 2023 The Licensing Authors // SPDX-License-Identifier: MIT // // This file attempts to follow common styles and design patterns described by // Google Cloud based on their extensive use of protocol buffers. // // - See here for more: https://cloud.google.com/apis/design/design_patterns // syntax = "proto3"; package tokens.v1; import "google/api/annotations.proto"; message AuthenticateRequest {} message AuthenticateResponse {} message ListRequest {} message ListResponse {} message CreateRequest {} message CreateResponse {} message DeleteRequest { string token_id = 1; } message DeleteResponse {} service TokenService { rpc Authenticate(AuthenticateRequest) returns (AuthenticateResponse) { option (google.api.http) = { post: "/v1/token" body: "*" }; }; rpc List(ListRequest) returns (ListResponse) { option (google.api.http) = { get: "/v1/tokens" }; }; rpc Create(CreateRequest) returns (CreateResponse) { option (google.api.http) = { post: "/v1/tokens" body: "*" }; }; rpc Delete(DeleteRequest) returns (DeleteResponse) { option (google.api.http) = { delete: "/v1/tokens/{token_id}" }; }; }