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; } 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; string name = 2; string path = 3; bool show = 4; bool can_use = 5; uint64 expires_at = 6; } 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; string name = 3; string path = 4; bool show = 5; bool can_use = 6; uint64 expires_at = 7; } 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; }