blob: e9df1a195244c2d5bb5d048e2dafd427ff95e5a7 [file] [log] [blame]
// Copyright 2018 The Chromium Authors
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
syntax = "proto3";
package monorail;
option go_package = "infra/monorailv2/api/api_proto;monorail";
import "api/api_proto/common.proto";
import "api/api_proto/features_objects.proto";
service Features {
rpc ListHotlistsByUser (ListHotlistsByUserRequest) returns (ListHotlistsByUserResponse) {}
rpc ListHotlistsByIssue (ListHotlistsByIssueRequest) returns (ListHotlistsByIssueResponse) {}
rpc ListRecentlyVisitedHotlists (ListRecentlyVisitedHotlistsRequest) returns (ListRecentlyVisitedHotlistsResponse) {}
rpc ListStarredHotlists (ListStarredHotlistsRequest) returns (ListStarredHotlistsResponse) {}
rpc GetHotlistStarCount (GetHotlistStarCountRequest) returns (GetHotlistStarCountResponse) {}
rpc StarHotlist (StarHotlistRequest) returns (StarHotlistResponse) {}
rpc GetHotlist (GetHotlistRequest) returns (GetHotlistResponse) {}
rpc ListHotlistItems (ListHotlistItemsRequest) returns (ListHotlistItemsResponse) {}
rpc CreateHotlist (CreateHotlistRequest) returns (CreateHotlistResponse) {}
rpc CheckHotlistName (CheckHotlistNameRequest) returns (CheckHotlistNameResponse) {}
rpc RemoveIssuesFromHotlists (RemoveIssuesFromHotlistsRequest) returns (RemoveIssuesFromHotlistsResponse) {}
rpc AddIssuesToHotlists (AddIssuesToHotlistsRequest) returns (AddIssuesToHotlistsResponse) {}
rpc RerankHotlistIssues (RerankHotlistIssuesRequest) returns (RerankHotlistIssuesResponse) {}
rpc UpdateHotlistIssueNote (UpdateHotlistIssueNoteRequest) returns (UpdateHotlistIssueNoteResponse) {}
rpc DeleteHotlist (DeleteHotlistRequest) returns (DeleteHotlistResponse) {}
}
// Next available tag: 3
message ListHotlistsByUserRequest {
UserRef user = 2;
}
// Next available tag: 2
message ListHotlistsByUserResponse {
repeated Hotlist hotlists = 1;
}
// Next available tag: 3
message ListHotlistsByIssueRequest {
IssueRef issue = 2;
}
// Next available tag: 2
message ListHotlistsByIssueResponse {
repeated Hotlist hotlists = 1;
}
// Next available tag: 2
message ListRecentlyVisitedHotlistsRequest {
}
// Next available tag: 2
message ListRecentlyVisitedHotlistsResponse {
repeated Hotlist hotlists = 1;
}
// Next available tag: 2
message ListStarredHotlistsRequest {
}
// Next available tag: 2
message ListStarredHotlistsResponse {
repeated Hotlist hotlists = 1;
}
// Next available tag: 3
message GetHotlistStarCountRequest {
HotlistRef hotlist_ref = 2;
}
// Next available tag: 2
message GetHotlistStarCountResponse {
uint32 star_count = 1;
}
// Next available tag: 4
message StarHotlistRequest {
HotlistRef hotlist_ref = 2;
bool starred = 3;
}
// Next available tag: 2
message StarHotlistResponse {
uint32 star_count = 1;
}
// Next available tag: 2
message GetHotlistRequest {
HotlistRef hotlist_ref = 1;
}
// Next available tag: 2
message GetHotlistResponse {
Hotlist hotlist = 1;
}
// Next available tag: 7
message ListHotlistItemsRequest {
HotlistRef hotlist_ref = 2;
Pagination pagination = 3;
uint32 can = 4;
string sort_spec = 5;
string group_by_spec = 6;
}
// Next available tag: 2
message ListHotlistItemsResponse {
repeated HotlistItem items = 1;
}
// Next available tag: 7
message CreateHotlistRequest {
string name = 2;
string summary = 3;
string description = 4;
repeated UserRef editor_refs = 5;
repeated IssueRef issue_refs = 6;
bool is_private = 7;
}
// Next available tag: 1
message CreateHotlistResponse {
}
// Next available tag: 3
message CheckHotlistNameRequest {
string name = 2;
}
// Next available tag: 1
message CheckHotlistNameResponse {
string error = 1;
}
// Next available tag: 4
message RemoveIssuesFromHotlistsRequest {
repeated HotlistRef hotlist_refs = 2;
repeated IssueRef issue_refs = 3;
}
// Next available tag: 1
message RemoveIssuesFromHotlistsResponse {
}
// Next available tag: 5
message AddIssuesToHotlistsRequest {
repeated HotlistRef hotlist_refs = 2;
repeated IssueRef issue_refs = 3;
string note = 4;
}
// Next available tag: 1
message AddIssuesToHotlistsResponse {
}
// Next available tag: 5
message RerankHotlistIssuesRequest{
HotlistRef hotlist_ref = 1;
repeated IssueRef moved_refs = 2;
IssueRef target_ref = 3;
bool split_above = 4;
}
// Next available tag: 1
message RerankHotlistIssuesResponse{
}
// Next available tag: 5
message UpdateHotlistIssueNoteRequest {
HotlistRef hotlist_ref = 2;
IssueRef issue_ref = 3;
string note = 4;
}
// Next available tag: 1
message UpdateHotlistIssueNoteResponse {
}
// Next available tag: 2
message DeleteHotlistRequest {
HotlistRef hotlist_ref = 1;
}
// Next available tag: 1
message DeleteHotlistResponse {
}