generated from VLADIMIR/template
826 lines
19 KiB
Protocol Buffer
826 lines
19 KiB
Protocol Buffer
syntax = "proto3";
|
||
|
||
package crabs.evening_detective_server;
|
||
|
||
import "google/api/annotations.proto";
|
||
import "google/protobuf/timestamp.proto";
|
||
import "protoc-gen-openapiv2/options/annotations.proto";
|
||
import "google/api/httpbody.proto";
|
||
|
||
option go_package = "pkg/proto";
|
||
|
||
option (grpc.gateway.protoc_gen_openapiv2.options.openapiv2_swagger) = {
|
||
info: {
|
||
title : "Документация сервиса \"Вечерний детектив\"";
|
||
version: "v0.1.0";
|
||
};
|
||
|
||
security_definitions: {
|
||
security: {
|
||
key : "BearerAuth";
|
||
value: {
|
||
type : TYPE_API_KEY;
|
||
in : IN_HEADER;
|
||
name : "Authorization";
|
||
description: "Authentication token, prefixed by Bearer: Bearer <token>";
|
||
}
|
||
}
|
||
}
|
||
security: {
|
||
security_requirement: {
|
||
key : "BearerAuth";
|
||
value: {};
|
||
}
|
||
}
|
||
};
|
||
|
||
service EveningDetectiveServer {
|
||
rpc Ping(PingReq) returns (PingRsp) {
|
||
option (google.api.http) = {
|
||
get: "/api/test/ping"
|
||
};
|
||
option (grpc.gateway.protoc_gen_openapiv2.options.openapiv2_operation) = {
|
||
security: {
|
||
security_requirement: {}
|
||
}
|
||
summary: "Проверить доступность";
|
||
};
|
||
}
|
||
|
||
rpc Echo(EchoReq) returns (EchoRsp) {
|
||
option (google.api.http) = {
|
||
post: "/api/test/echo"
|
||
};
|
||
option (grpc.gateway.protoc_gen_openapiv2.options.openapiv2_operation) = {
|
||
security: {
|
||
security_requirement: {}
|
||
}
|
||
summary: "Проверить обработку данных";
|
||
};
|
||
}
|
||
|
||
rpc Signup(SignupReq) returns (SignupRsp) {
|
||
option (google.api.http) = {
|
||
post: "/api/auth/signup"
|
||
body: "*"
|
||
};
|
||
option (grpc.gateway.protoc_gen_openapiv2.options.openapiv2_operation) = {
|
||
security: {
|
||
security_requirement: {}
|
||
}
|
||
tags : "Регистрация и вход";
|
||
summary: "Зарегистрироваться";
|
||
};
|
||
}
|
||
|
||
rpc RefreshPassword(RefreshPasswordReq) returns (RefreshPasswordRsp) {
|
||
option (google.api.http) = {
|
||
post: "/api/auth/refresh-password"
|
||
body: "*"
|
||
};
|
||
option (grpc.gateway.protoc_gen_openapiv2.options.openapiv2_operation) = {
|
||
security: {
|
||
security_requirement: {}
|
||
}
|
||
tags : "Регистрация и вход";
|
||
summary: "Обновить пароль";
|
||
};
|
||
}
|
||
|
||
rpc Login(LoginReq) returns (LoginRsp) {
|
||
option (google.api.http) = {
|
||
post: "/api/auth/login"
|
||
body: "*"
|
||
};
|
||
option (grpc.gateway.protoc_gen_openapiv2.options.openapiv2_operation) = {
|
||
security: {
|
||
security_requirement: {}
|
||
}
|
||
tags : "Регистрация и вход";
|
||
summary: "Войти и получить токена доступа";
|
||
};
|
||
}
|
||
|
||
rpc Refresh(RefreshReq) returns (RefreshRsp) {
|
||
option (google.api.http) = {
|
||
post: "/api/auth/refresh"
|
||
body: "*"
|
||
};
|
||
option (grpc.gateway.protoc_gen_openapiv2.options.openapiv2_operation) = {
|
||
security: {
|
||
security_requirement: {}
|
||
}
|
||
tags : "Регистрация и вход";
|
||
summary: "Обновить токена доступа";
|
||
};
|
||
}
|
||
|
||
rpc GetUsers(GetUsersReq) returns (GetUsersRsp) {
|
||
option (google.api.http) = {
|
||
get: "/api/users"
|
||
};
|
||
option (grpc.gateway.protoc_gen_openapiv2.options.openapiv2_operation) = {
|
||
tags : "Пользователи";
|
||
summary: "Получить всех пользователей";
|
||
};
|
||
}
|
||
|
||
rpc GetUserById(GetUserByIdReq) returns (GetUserByIdRsp) {
|
||
option (google.api.http) = {
|
||
get: "/api/users/{id}"
|
||
};
|
||
option (grpc.gateway.protoc_gen_openapiv2.options.openapiv2_operation) = {
|
||
tags : "Пользователи";
|
||
summary: "Получить пользователя по id";
|
||
};
|
||
}
|
||
|
||
rpc GetMe(GetMeReq) returns (GetMeRsp) {
|
||
option (google.api.http) = {
|
||
get: "/api/users/me"
|
||
};
|
||
option (grpc.gateway.protoc_gen_openapiv2.options.openapiv2_operation) = {
|
||
tags : "Пользователи";
|
||
summary: "Получить информацию о себе";
|
||
};
|
||
}
|
||
|
||
rpc AddUserRole(AddUserRoleReq) returns (AddUserRoleRsp) {
|
||
option (google.api.http) = {
|
||
post: "/api/users/{id}/role/add"
|
||
body: "*"
|
||
};
|
||
option (grpc.gateway.protoc_gen_openapiv2.options.openapiv2_operation) = {
|
||
tags : "Пользователи";
|
||
summary: "Добавить пользователю роль";
|
||
};
|
||
}
|
||
|
||
rpc DeleteUserRole(DeleteUserRoleReq) returns (DeleteUserRoleRsp) {
|
||
option (google.api.http) = {
|
||
post: "/api/users/{id}/role/delete"
|
||
body: "*"
|
||
};
|
||
option (grpc.gateway.protoc_gen_openapiv2.options.openapiv2_operation) = {
|
||
tags : "Пользователи";
|
||
summary: "Забрать у пользователя роль";
|
||
};
|
||
}
|
||
|
||
rpc GetPermissions(GetPermissionsReq) returns (GetPermissionsRsp) {
|
||
option (google.api.http) = {
|
||
get: "/api/ui/permissions"
|
||
};
|
||
option (grpc.gateway.protoc_gen_openapiv2.options.openapiv2_operation) = {
|
||
tags : "Доступы";
|
||
summary: "Получить список доступных элементов интерфейса";
|
||
};
|
||
}
|
||
|
||
rpc UploadFile(UploadFileReq) returns (UploadFileRsp) {
|
||
option (google.api.http) = {
|
||
post: "/api/files/upload"
|
||
body: "*"
|
||
};
|
||
option (grpc.gateway.protoc_gen_openapiv2.options.openapiv2_operation) = {
|
||
tags : "Файлы";
|
||
summary: "Загрузить файл";
|
||
};
|
||
}
|
||
|
||
rpc DownloadFile(DownloadFileReq) returns (google.api.HttpBody) {
|
||
option (google.api.http) = {
|
||
get: "/api/files/{filename}"
|
||
};
|
||
option (grpc.gateway.protoc_gen_openapiv2.options.openapiv2_operation) = {
|
||
tags : "Файлы";
|
||
summary: "Получить файл";
|
||
};
|
||
}
|
||
|
||
rpc AddScenario(AddScenarioReq) returns (AddScenarioRsp) {
|
||
option (google.api.http) = {
|
||
post: "/api/scenario"
|
||
body: "*"
|
||
};
|
||
option (grpc.gateway.protoc_gen_openapiv2.options.openapiv2_operation) = {
|
||
tags : "Сценарии";
|
||
summary: "Создать сценарий";
|
||
};
|
||
}
|
||
|
||
rpc GetMyScenarios(GetMyScenariosReq) returns (GetMyScenariosRsp) {
|
||
option (google.api.http) = {
|
||
get: "/api/my-scenarios"
|
||
};
|
||
option (grpc.gateway.protoc_gen_openapiv2.options.openapiv2_operation) = {
|
||
tags : "Сценарии";
|
||
summary: "Получить свои сценарии";
|
||
};
|
||
}
|
||
|
||
rpc GetScenariosCatalog(GetScenariosCatalogReq) returns (GetScenariosCatalogRsp) {
|
||
option (google.api.http) = {
|
||
get: "/api/catalog"
|
||
};
|
||
option (grpc.gateway.protoc_gen_openapiv2.options.openapiv2_operation) = {
|
||
tags : "Сценарии";
|
||
summary: "Получить каталог сценариев";
|
||
};
|
||
}
|
||
|
||
rpc GetFullScenario(GetScenarioReq) returns (GetScenarioRsp) {
|
||
option (google.api.http) = {
|
||
get: "/api/scenarios/{id}/full"
|
||
};
|
||
option (grpc.gateway.protoc_gen_openapiv2.options.openapiv2_operation) = {
|
||
tags : "Сценарии";
|
||
summary: "Получить сценарий со всеми деталями по id";
|
||
};
|
||
}
|
||
|
||
rpc GetScenario(GetScenarioReq) returns (GetScenarioRsp) {
|
||
option (google.api.http) = {
|
||
get: "/api/scenarios/{id}"
|
||
};
|
||
option (grpc.gateway.protoc_gen_openapiv2.options.openapiv2_operation) = {
|
||
tags : "Сценарии";
|
||
summary: "Получить сценарий по id";
|
||
};
|
||
}
|
||
|
||
rpc UpdateScenario(UpdateScenarioReq) returns (UpdateScenarioRsp) {
|
||
option (google.api.http) = {
|
||
put : "/api/scenarios/{id}"
|
||
body: "*"
|
||
};
|
||
option (grpc.gateway.protoc_gen_openapiv2.options.openapiv2_operation) = {
|
||
tags : "Сценарии";
|
||
summary: "Редактировать сценарий";
|
||
};
|
||
}
|
||
|
||
rpc PublicScenario(PublicScenarioReq) returns (PublicScenarioRsp) {
|
||
option (google.api.http) = {
|
||
put : "/api/scenarios/{id}/public"
|
||
body: "*"
|
||
};
|
||
option (grpc.gateway.protoc_gen_openapiv2.options.openapiv2_operation) = {
|
||
tags : "Сценарии";
|
||
summary: "Опубликовать сценарий";
|
||
};
|
||
}
|
||
|
||
rpc DraftScenario(DraftScenarioReq) returns (DraftScenarioRsp) {
|
||
option (google.api.http) = {
|
||
put : "/api/scenarios/{id}/draft"
|
||
body: "*"
|
||
};
|
||
option (grpc.gateway.protoc_gen_openapiv2.options.openapiv2_operation) = {
|
||
tags : "Сценарии";
|
||
summary: "Снять с публикации сценарий";
|
||
};
|
||
}
|
||
|
||
rpc DeleteScenario(DeleteScenarioReq) returns (DeleteScenarioRsp) {
|
||
option (google.api.http) = {
|
||
delete: "/api/scenarios/{id}"
|
||
};
|
||
option (grpc.gateway.protoc_gen_openapiv2.options.openapiv2_operation) = {
|
||
tags : "Сценарии";
|
||
summary: "Удалить сценарий";
|
||
};
|
||
}
|
||
|
||
rpc AddScenarioPlace(AddScenarioPlaceReq) returns (AddScenarioPlaceRsp) {
|
||
option (google.api.http) = {
|
||
post: "/api/scenarios/{id}/places"
|
||
body: "*"
|
||
};
|
||
option (grpc.gateway.protoc_gen_openapiv2.options.openapiv2_operation) = {
|
||
tags : "Точки сценария";
|
||
summary: "Создать точку сценария";
|
||
};
|
||
}
|
||
|
||
rpc UpdateScenarioPlace(UpdateScenarioPlaceReq) returns (UpdateScenarioPlaceRsp) {
|
||
option (google.api.http) = {
|
||
put : "/api/scenarios/{id}/places/{code}"
|
||
body: "*"
|
||
};
|
||
option (grpc.gateway.protoc_gen_openapiv2.options.openapiv2_operation) = {
|
||
tags : "Точки сценария";
|
||
summary: "Обновить точку сценария";
|
||
};
|
||
}
|
||
|
||
rpc DeleteScenarioPlace(DeleteScenarioPlaceReq) returns (DeleteScenarioPlaceRsp) {
|
||
option (google.api.http) = {
|
||
delete: "/api/scenarios/{id}/places/{code}"
|
||
};
|
||
option (grpc.gateway.protoc_gen_openapiv2.options.openapiv2_operation) = {
|
||
tags : "Точки сценария";
|
||
summary: "Удалить точку сценария";
|
||
};
|
||
}
|
||
|
||
rpc AddGame(AddGameReq) returns (AddGameRsp) {
|
||
option (google.api.http) = {
|
||
post: "/api/games"
|
||
body: "*"
|
||
};
|
||
option (grpc.gateway.protoc_gen_openapiv2.options.openapiv2_operation) = {
|
||
tags : "Игры";
|
||
summary: "Создать игру";
|
||
};
|
||
}
|
||
|
||
rpc GetGames(GetGamesReq) returns (GetGamesRsp) {
|
||
option (google.api.http) = {
|
||
get: "/api/games"
|
||
};
|
||
option (grpc.gateway.protoc_gen_openapiv2.options.openapiv2_operation) = {
|
||
tags : "Игры";
|
||
summary: "Получить игры";
|
||
};
|
||
}
|
||
|
||
rpc GetGame(GetGameReq) returns (GetGameRsp) {
|
||
option (google.api.http) = {
|
||
get: "/api/games/{id}"
|
||
};
|
||
option (grpc.gateway.protoc_gen_openapiv2.options.openapiv2_operation) = {
|
||
tags : "Игры";
|
||
summary: "Получить игру";
|
||
};
|
||
}
|
||
|
||
rpc UpdateGame(UpdateGameReq) returns (UpdateGameRsp) {
|
||
option (google.api.http) = {
|
||
put : "/api/games/{id}"
|
||
body: "*"
|
||
};
|
||
option (grpc.gateway.protoc_gen_openapiv2.options.openapiv2_operation) = {
|
||
tags : "Игры";
|
||
summary: "Обновить игру";
|
||
};
|
||
}
|
||
|
||
rpc DeleteGame(DeleteGameReq) returns (DeleteGameRsp) {
|
||
option (google.api.http) = {
|
||
delete: "/api/games/{id}"
|
||
};
|
||
option (grpc.gateway.protoc_gen_openapiv2.options.openapiv2_operation) = {
|
||
tags : "Игры";
|
||
summary: "Удалить игру";
|
||
};
|
||
}
|
||
|
||
rpc AddTeam(AddTeamReq) returns (AddTeamRsp) {
|
||
option (google.api.http) = {
|
||
post: "/api/teams",
|
||
body: "*"
|
||
};
|
||
option (grpc.gateway.protoc_gen_openapiv2.options.openapiv2_operation) = {
|
||
tags : "Команда";
|
||
summary: "Создать команду";
|
||
};
|
||
}
|
||
|
||
rpc UpdateTeam(UpdateTeamReq) returns (UpdateTeamRsp) {
|
||
option (google.api.http) = {
|
||
put : "/api/teams/{id}",
|
||
body: "*"
|
||
};
|
||
option (grpc.gateway.protoc_gen_openapiv2.options.openapiv2_operation) = {
|
||
tags : "Команда";
|
||
summary: "Обновить команду";
|
||
};
|
||
}
|
||
|
||
rpc DeleteTeam(DeleteTeamReq) returns (DeleteTeamRsp) {
|
||
option (google.api.http) = {
|
||
delete: "/api/teams/{id}"
|
||
};
|
||
option (grpc.gateway.protoc_gen_openapiv2.options.openapiv2_operation) = {
|
||
tags : "Команда";
|
||
summary: "Удалить команду";
|
||
};
|
||
}
|
||
|
||
rpc GiveTeamApplications(GiveTeamApplicationsReq) returns (GiveTeamApplicationsRsp) {
|
||
option (google.api.http) = {
|
||
post: "/api/teams/{id}/applications",
|
||
body: "*"
|
||
};
|
||
option (grpc.gateway.protoc_gen_openapiv2.options.openapiv2_operation) = {
|
||
tags : "Команда";
|
||
summary: "Выдать улику";
|
||
};
|
||
}
|
||
|
||
rpc GetTeamActions(GetTeamActionsReq) returns (GetTeamActionsRsp) {
|
||
option (google.api.http) = {
|
||
get: "/api/teams/{id}/actions"
|
||
};
|
||
option (grpc.gateway.protoc_gen_openapiv2.options.openapiv2_operation) = {
|
||
security: {
|
||
security_requirement: {}
|
||
}
|
||
tags : "Ходы";
|
||
summary: "Получить ходы";
|
||
};
|
||
}
|
||
|
||
rpc AddTeamAction(AddTeamActionReq) returns (AddTeamActionRsp) {
|
||
option (google.api.http) = {
|
||
post: "/api/teams/{id}/actions",
|
||
body: "*"
|
||
};
|
||
option (grpc.gateway.protoc_gen_openapiv2.options.openapiv2_operation) = {
|
||
security: {
|
||
security_requirement: {}
|
||
}
|
||
tags : "Ходы";
|
||
summary: "Сделать ход";
|
||
};
|
||
}
|
||
}
|
||
|
||
message PingReq {}
|
||
|
||
message PingRsp {}
|
||
|
||
message EchoReq {
|
||
string text = 1;
|
||
}
|
||
|
||
message EchoRsp {
|
||
string text = 1;
|
||
}
|
||
|
||
message SignupReq {
|
||
string username = 1;
|
||
string email = 2;
|
||
}
|
||
|
||
message SignupRsp {
|
||
string error = 1;
|
||
}
|
||
|
||
message RefreshPasswordReq {
|
||
string email = 1;
|
||
}
|
||
|
||
message RefreshPasswordRsp {
|
||
string error = 1;
|
||
}
|
||
|
||
message LoginReq {
|
||
string email = 1;
|
||
string password = 2;
|
||
}
|
||
|
||
message LoginRsp {
|
||
string error = 1;
|
||
string accessToken = 2;
|
||
string refreshToken = 3;
|
||
}
|
||
|
||
message RefreshReq {
|
||
string refreshToken = 1;
|
||
}
|
||
|
||
message RefreshRsp {
|
||
string error = 1;
|
||
string accessToken = 2;
|
||
string refreshToken = 3;
|
||
}
|
||
|
||
message GetUsersReq {}
|
||
|
||
message GetUsersRsp {
|
||
string error = 1;
|
||
repeated User users = 2;
|
||
}
|
||
|
||
message User {
|
||
int32 id = 1;
|
||
string username = 2;
|
||
string email = 3;
|
||
repeated string roles = 4;
|
||
bool is_active = 5;
|
||
google.protobuf.Timestamp created_at = 6;
|
||
}
|
||
|
||
message GetUserByIdReq {
|
||
int32 id = 1;
|
||
}
|
||
|
||
message GetUserByIdRsp {
|
||
string error = 1;
|
||
User user = 2;
|
||
}
|
||
|
||
message GetMeReq {}
|
||
|
||
message GetMeRsp {
|
||
string error = 1;
|
||
User user = 2;
|
||
}
|
||
|
||
message AddUserRoleReq {
|
||
int32 id = 1;
|
||
string role = 2;
|
||
}
|
||
|
||
message AddUserRoleRsp {
|
||
string error = 1;
|
||
}
|
||
|
||
message DeleteUserRoleReq {
|
||
int32 id = 1;
|
||
string role = 2;
|
||
}
|
||
|
||
message DeleteUserRoleRsp {
|
||
string error = 1;
|
||
}
|
||
|
||
message GetPermissionsReq {}
|
||
|
||
message GetPermissionsRsp {
|
||
string error = 1;
|
||
repeated string permissions = 2;
|
||
}
|
||
|
||
message UploadFileReq {
|
||
string filename = 1;
|
||
bytes data = 2;
|
||
}
|
||
|
||
message UploadFileRsp {
|
||
string error = 1;
|
||
string filename = 2;
|
||
}
|
||
|
||
message DownloadFileReq {
|
||
string filename = 1;
|
||
}
|
||
|
||
message AddScenarioReq {
|
||
string name = 1;
|
||
}
|
||
|
||
message AddScenarioRsp {
|
||
string error = 1;
|
||
int32 id = 2;
|
||
}
|
||
|
||
message GetMyScenariosReq {}
|
||
|
||
message GetMyScenariosRsp {
|
||
string error = 1;
|
||
repeated Scenario scenarios = 2;
|
||
}
|
||
|
||
message GetScenariosCatalogReq {}
|
||
|
||
message GetScenariosCatalogRsp {
|
||
string error = 1;
|
||
repeated Scenario scenarios = 2;
|
||
}
|
||
|
||
message GetScenarioReq {
|
||
int32 id = 1;
|
||
}
|
||
|
||
message GetScenarioRsp {
|
||
string error = 1;
|
||
Scenario scenario = 2;
|
||
}
|
||
|
||
message Scenario {
|
||
int32 id = 1;
|
||
string name = 2;
|
||
optional string description = 3;
|
||
optional string image = 4;
|
||
Story story = 5;
|
||
string status = 6;
|
||
User author = 7;
|
||
google.protobuf.Timestamp updated_at = 8;
|
||
google.protobuf.Timestamp created_at = 9;
|
||
google.protobuf.Timestamp published_at = 10;
|
||
}
|
||
|
||
message Story {
|
||
repeated Place places = 1;
|
||
}
|
||
|
||
message Place {
|
||
string code = 1;
|
||
string name = 2;
|
||
string text = 3;
|
||
string image = 4;
|
||
bool hidden = 5;
|
||
repeated Application applications = 6;
|
||
repeated Door doors = 7;
|
||
repeated Key keys = 8;
|
||
}
|
||
|
||
message Application {
|
||
string name = 1;
|
||
string image = 2;
|
||
}
|
||
|
||
message Door {
|
||
string code = 1;
|
||
string name = 2;
|
||
repeated Key keys = 3;
|
||
}
|
||
|
||
message Key {
|
||
string name = 1;
|
||
}
|
||
|
||
message UpdateScenarioReq {
|
||
int32 id = 1;
|
||
string name = 2;
|
||
string description = 3;
|
||
string image = 4;
|
||
}
|
||
|
||
message UpdateScenarioRsp {
|
||
string error = 1;
|
||
}
|
||
|
||
message PublicScenarioReq {
|
||
int32 id = 1;
|
||
}
|
||
|
||
message PublicScenarioRsp {
|
||
string error = 1;
|
||
}
|
||
|
||
message DraftScenarioReq {
|
||
int32 id = 1;
|
||
}
|
||
|
||
message DraftScenarioRsp {
|
||
string error = 1;
|
||
}
|
||
|
||
message DeleteScenarioReq {
|
||
int32 id = 1;
|
||
}
|
||
|
||
message DeleteScenarioRsp {
|
||
string error = 1;
|
||
}
|
||
|
||
message AddScenarioPlaceReq {
|
||
int32 id = 1;
|
||
Place place = 2;
|
||
}
|
||
|
||
message AddScenarioPlaceRsp {
|
||
string error = 1;
|
||
}
|
||
|
||
message UpdateScenarioPlaceReq {
|
||
int32 id = 1;
|
||
string code = 2;
|
||
Place place = 3;
|
||
}
|
||
|
||
message UpdateScenarioPlaceRsp {
|
||
string error = 1;
|
||
}
|
||
|
||
message DeleteScenarioPlaceReq {
|
||
int32 id = 1;
|
||
string code = 2;
|
||
}
|
||
|
||
message DeleteScenarioPlaceRsp {
|
||
string error = 1;
|
||
}
|
||
|
||
message AddGameReq {
|
||
string name = 1;
|
||
string description = 2;
|
||
google.protobuf.Timestamp start_at = 3;
|
||
int32 scenario_id = 4;
|
||
}
|
||
|
||
message AddGameRsp {
|
||
string error = 1;
|
||
int32 id = 2;
|
||
}
|
||
|
||
message GetGamesReq {}
|
||
|
||
message GetGamesRsp {
|
||
string error = 1;
|
||
repeated Game games = 2;
|
||
}
|
||
|
||
message Game {
|
||
int32 id = 1;
|
||
string name = 2;
|
||
string description = 3;
|
||
google.protobuf.Timestamp start_at = 4;
|
||
string status = 5;
|
||
Scenario scenario = 6;
|
||
repeated Team teams = 7;
|
||
}
|
||
|
||
message Team {
|
||
int32 id = 1;
|
||
string name = 2;
|
||
}
|
||
|
||
message GetGameReq {
|
||
int32 id = 1;
|
||
}
|
||
|
||
message GetGameRsp {
|
||
string error = 1;
|
||
Game game = 2;
|
||
}
|
||
|
||
message UpdateGameReq {
|
||
int32 id = 1;
|
||
string name = 2;
|
||
string description = 3;
|
||
google.protobuf.Timestamp start_at = 4;
|
||
int32 scenario_id = 5;
|
||
}
|
||
|
||
message UpdateGameRsp {
|
||
string error = 1;
|
||
}
|
||
|
||
message DeleteGameReq {
|
||
int32 id = 1;
|
||
}
|
||
|
||
message DeleteGameRsp {
|
||
string error = 1;
|
||
}
|
||
|
||
message AddTeamReq {
|
||
int32 game_id = 1;
|
||
string name = 2;
|
||
}
|
||
|
||
message AddTeamRsp {
|
||
string error = 1;
|
||
}
|
||
|
||
message UpdateTeamReq {
|
||
int32 id = 1;
|
||
string name = 2;
|
||
}
|
||
|
||
message UpdateTeamRsp {
|
||
string error = 1;
|
||
}
|
||
|
||
message DeleteTeamReq {
|
||
int64 id = 1;
|
||
}
|
||
|
||
message DeleteTeamRsp {
|
||
string error = 1;
|
||
}
|
||
|
||
message GiveTeamApplicationsReq {
|
||
int64 id = 1;
|
||
string name = 2;
|
||
}
|
||
|
||
message GiveTeamApplicationsRsp {
|
||
string error = 1;
|
||
}
|
||
|
||
message GetTeamActionsReq {
|
||
int64 id = 1;
|
||
string password = 2;
|
||
}
|
||
|
||
message GetTeamActionsRsp {
|
||
string error = 1;
|
||
repeated Place places = 2;
|
||
}
|
||
|
||
message AddTeamActionReq {
|
||
int64 id = 1;
|
||
string password = 2;
|
||
string code = 3;
|
||
}
|
||
|
||
message AddTeamActionRsp {
|
||
string error = 1;
|
||
}
|