Project import generated by Copybara.
GitOrigin-RevId: d9e9e3fb4e31372ec1fb43b178994ca78fa8fe70
diff --git a/proto/api_clients_config.proto b/proto/api_clients_config.proto
new file mode 100644
index 0000000..d17d704
--- /dev/null
+++ b/proto/api_clients_config.proto
@@ -0,0 +1,41 @@
+// Copyright 2016 The Chromium Authors. All Rights Reserved.
+// Use of this source code is governed by the Apache v2.0 license that can be
+// found in the LICENSE file.
+
+// Schemas for monorail api client configs.
+// Command to generate api_clients_config_pb2.py: in monorail/ directory:
+// protoc ./proto/api_clients_config.proto --proto_path=./proto/ --python_out=./proto
+
+
+syntax = "proto2";
+
+package monorail;
+
+message ProjectPermission {
+ enum Role {
+ committer = 1;
+ contributor = 2;
+ }
+
+ optional string project = 1;
+ optional Role role = 2 [default = contributor];
+ repeated string extra_permissions = 3;
+}
+
+// Next available tag: 11
+message Client {
+ optional string client_email = 1;
+ optional string display_name = 2;
+ optional string client_id = 3;
+ repeated string allowed_origins = 10;
+ optional string description = 4;
+ repeated ProjectPermission project_permissions = 5;
+ optional int32 period_limit = 6 [default = 100000];
+ optional int32 lifetime_limit = 7 [default = 1000000];
+ repeated string contacts = 8;
+ optional int32 qpm_limit = 9 [default = 100];
+}
+
+message ClientCfg {
+ repeated Client clients = 1;
+}