syntax = "proto3"; package bet.beteran.c2se.backend.site; import "protobuf/rpc/error.proto"; import "protobuf/pagination/pagination.proto"; import "protobuf/pagination/search.proto"; import "protobuf/pagination/sort.proto"; import "models/domain/site.proto"; // subject = bet.beteran.c2se.backend.site.ListSites message ListSitesRequest { optional bet.protobuf.pagination.Pagination pagination = 1; repeated bet.protobuf.pagination.Search searches = 2; repeated bet.protobuf.pagination.Sort sorts = 3; optional string url_like = 4; optional string name_like = 5; optional string path_like = 6; optional bool show = 7; optional bool can_use = 8; optional string memo_like = 9; } message ListSitesResponse { message Result { repeated bet.beteran.domain.Site sites = 1; } optional bet.protobuf.rpc.Error error = 1; optional Result result = 2; } // subject = bet.beteran.c2se.backend.site.CreateSite message CreateSiteRequest { string url = 1; optional string name = 2; optional string path = 3; bool show = 4; bool can_use = 5; optional string memo = 6; optional uint64 expires_at = 7; } message CreateSiteResponse { message Result { bet.beteran.domain.Site site = 1; } optional bet.protobuf.rpc.Error error = 1; optional Result result = 2; } // subject = bet.beteran.c2se.backend.site.UpdateSite message UpdateSiteRequest { string id = 1; string url = 2; optional string name = 3; optional string path = 4; bool show = 5; bool can_use = 6; optional string memo = 7; optional uint64 expires_at = 8; } message UpdateSiteResponse { message Result { bet.beteran.domain.Site site = 1; } optional bet.protobuf.rpc.Error error = 1; optional Result result = 2; } // subject = bet.beteran.c2se.backend.site.DeleteSite message DeleteSiteRequest { string id = 1; } message DeleteSiteResponse { message Result { } optional bet.protobuf.rpc.Error error = 1; optional Result result = 2; }