diff --git a/api/v3/api_proto/projects_pb2.py b/api/v3/api_proto/projects_pb2.py
index 4c02744..f981a13 100644
--- a/api/v3/api_proto/projects_pb2.py
+++ b/api/v3/api_proto/projects_pb2.py
@@ -2,9 +2,9 @@
 # Generated by the protocol buffer compiler.  DO NOT EDIT!
 # source: api/v3/api_proto/projects.proto
 """Generated protocol buffer code."""
+from google.protobuf.internal import builder as _builder
 from google.protobuf import descriptor as _descriptor
-from google.protobuf import message as _message
-from google.protobuf import reflection as _reflection
+from google.protobuf import descriptor_pool as _descriptor_pool
 from google.protobuf import symbol_database as _symbol_database
 # @@protoc_insertion_point(imports)
 
@@ -17,589 +17,50 @@
 from api.v3.api_proto import project_objects_pb2 as api_dot_v3_dot_api__proto_dot_project__objects__pb2
 
 
-DESCRIPTOR = _descriptor.FileDescriptor(
-  name='api/v3/api_proto/projects.proto',
-  package='monorail.v3',
-  syntax='proto3',
-  serialized_options=b'Z!infra/monorailv2/api/v3/api_proto',
-  create_key=_descriptor._internal_create_key,
-  serialized_pb=b'\n\x1f\x61pi/v3/api_proto/projects.proto\x12\x0bmonorail.v3\x1a\x1bgoogle/protobuf/empty.proto\x1a\x1fgoogle/api/field_behavior.proto\x1a\x19google/api/resource.proto\x1a&api/v3/api_proto/project_objects.proto\"t\n\x15\x43reateFieldDefRequest\x12-\n\x06parent\x18\x01 \x01(\tB\x1d\xe0\x41\x02\xfa\x41\x17\n\x15\x61pi.crbug.com/Project\x12,\n\x08\x66ielddef\x18\x02 \x01(\x0b\x32\x15.monorail.v3.FieldDefB\x03\xe0\x41\x02\"J\n\x16GetComponentDefRequest\x12\x30\n\x04name\x18\x01 \x01(\tB\"\xfa\x41\x1c\n\x1a\x61pi.crbug.com/ComponentDef\xe0\x41\x02\"\x81\x01\n\x19\x43reateComponentDefRequest\x12-\n\x06parent\x18\x01 \x01(\tB\x1d\xe0\x41\x02\xfa\x41\x17\n\x15\x61pi.crbug.com/Project\x12\x35\n\rcomponent_def\x18\x02 \x01(\x0b\x32\x19.monorail.v3.ComponentDefB\x03\xe0\x41\x02\"M\n\x19\x44\x65leteComponentDefRequest\x12\x30\n\x04name\x18\x01 \x01(\tB\"\xe0\x41\x02\xfa\x41\x1c\n\x1a\x61pi.crbug.com/ComponentDef\"q\n\x19ListIssueTemplatesRequest\x12-\n\x06parent\x18\x01 \x01(\tB\x1d\xfa\x41\x17\n\x15\x61pi.crbug.com/Project\xe0\x41\x02\x12\x11\n\tpage_size\x18\x02 \x01(\x05\x12\x12\n\npage_token\x18\x03 \x01(\t\"d\n\x1aListIssueTemplatesResponse\x12-\n\ttemplates\x18\x01 \x03(\x0b\x32\x1a.monorail.v3.IssueTemplate\x12\x17\n\x0fnext_page_token\x18\x02 \x01(\t\"p\n\x18ListComponentDefsRequest\x12-\n\x06parent\x18\x01 \x01(\tB\x1d\xfa\x41\x17\n\x15\x61pi.crbug.com/Project\xe0\x41\x02\x12\x11\n\tpage_size\x18\x02 \x01(\x05\x12\x12\n\npage_token\x18\x03 \x01(\t\"g\n\x19ListComponentDefsResponse\x12\x31\n\x0e\x63omponent_defs\x18\x01 \x03(\x0b\x32\x19.monorail.v3.ComponentDef\x12\x17\n\x0fnext_page_token\x18\x02 \x01(\t\"<\n\x13ListProjectsRequest\x12\x11\n\tpage_size\x18\x01 \x01(\x05\x12\x12\n\npage_token\x18\x02 \x01(\t\"W\n\x14ListProjectsResponse\x12&\n\x08projects\x18\x01 \x03(\x0b\x32\x14.monorail.v3.Project\x12\x17\n\x0fnext_page_token\x18\x02 \x01(\t2\x87\x05\n\x08Projects\x12M\n\x0e\x43reateFieldDef\x12\".monorail.v3.CreateFieldDefRequest\x1a\x15.monorail.v3.FieldDef\"\x00\x12S\n\x0fGetComponentDef\x12#.monorail.v3.GetComponentDefRequest\x1a\x19.monorail.v3.ComponentDef\"\x00\x12Y\n\x12\x43reateComponentDef\x12&.monorail.v3.CreateComponentDefRequest\x1a\x19.monorail.v3.ComponentDef\"\x00\x12V\n\x12\x44\x65leteComponentDef\x12&.monorail.v3.DeleteComponentDefRequest\x1a\x16.google.protobuf.Empty\"\x00\x12g\n\x12ListIssueTemplates\x12&.monorail.v3.ListIssueTemplatesRequest\x1a\'.monorail.v3.ListIssueTemplatesResponse\"\x00\x12\x64\n\x11ListComponentDefs\x12%.monorail.v3.ListComponentDefsRequest\x1a&.monorail.v3.ListComponentDefsResponse\"\x00\x12U\n\x0cListProjects\x12 .monorail.v3.ListProjectsRequest\x1a!.monorail.v3.ListProjectsResponse\"\x00\x42#Z!infra/monorailv2/api/v3/api_protob\x06proto3'
-  ,
-  dependencies=[google_dot_protobuf_dot_empty__pb2.DESCRIPTOR,google_dot_api_dot_field__behavior__pb2.DESCRIPTOR,google_dot_api_dot_resource__pb2.DESCRIPTOR,api_dot_v3_dot_api__proto_dot_project__objects__pb2.DESCRIPTOR,])
+DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n\x1f\x61pi/v3/api_proto/projects.proto\x12\x0bmonorail.v3\x1a\x1bgoogle/protobuf/empty.proto\x1a\x1fgoogle/api/field_behavior.proto\x1a\x19google/api/resource.proto\x1a&api/v3/api_proto/project_objects.proto\"t\n\x15\x43reateFieldDefRequest\x12-\n\x06parent\x18\x01 \x01(\tB\x1d\xe0\x41\x02\xfa\x41\x17\n\x15\x61pi.crbug.com/Project\x12,\n\x08\x66ielddef\x18\x02 \x01(\x0b\x32\x15.monorail.v3.FieldDefB\x03\xe0\x41\x02\"J\n\x16GetComponentDefRequest\x12\x30\n\x04name\x18\x01 \x01(\tB\"\xfa\x41\x1c\n\x1a\x61pi.crbug.com/ComponentDef\xe0\x41\x02\"\x81\x01\n\x19\x43reateComponentDefRequest\x12-\n\x06parent\x18\x01 \x01(\tB\x1d\xe0\x41\x02\xfa\x41\x17\n\x15\x61pi.crbug.com/Project\x12\x35\n\rcomponent_def\x18\x02 \x01(\x0b\x32\x19.monorail.v3.ComponentDefB\x03\xe0\x41\x02\"M\n\x19\x44\x65leteComponentDefRequest\x12\x30\n\x04name\x18\x01 \x01(\tB\"\xe0\x41\x02\xfa\x41\x1c\n\x1a\x61pi.crbug.com/ComponentDef\"q\n\x19ListIssueTemplatesRequest\x12-\n\x06parent\x18\x01 \x01(\tB\x1d\xfa\x41\x17\n\x15\x61pi.crbug.com/Project\xe0\x41\x02\x12\x11\n\tpage_size\x18\x02 \x01(\x05\x12\x12\n\npage_token\x18\x03 \x01(\t\"d\n\x1aListIssueTemplatesResponse\x12-\n\ttemplates\x18\x01 \x03(\x0b\x32\x1a.monorail.v3.IssueTemplate\x12\x17\n\x0fnext_page_token\x18\x02 \x01(\t\"p\n\x18ListComponentDefsRequest\x12-\n\x06parent\x18\x01 \x01(\tB\x1d\xfa\x41\x17\n\x15\x61pi.crbug.com/Project\xe0\x41\x02\x12\x11\n\tpage_size\x18\x02 \x01(\x05\x12\x12\n\npage_token\x18\x03 \x01(\t\"g\n\x19ListComponentDefsResponse\x12\x31\n\x0e\x63omponent_defs\x18\x01 \x03(\x0b\x32\x19.monorail.v3.ComponentDef\x12\x17\n\x0fnext_page_token\x18\x02 \x01(\t\"<\n\x13ListProjectsRequest\x12\x11\n\tpage_size\x18\x01 \x01(\x05\x12\x12\n\npage_token\x18\x02 \x01(\t\"W\n\x14ListProjectsResponse\x12&\n\x08projects\x18\x01 \x03(\x0b\x32\x14.monorail.v3.Project\x12\x17\n\x0fnext_page_token\x18\x02 \x01(\t2\x87\x05\n\x08Projects\x12M\n\x0e\x43reateFieldDef\x12\".monorail.v3.CreateFieldDefRequest\x1a\x15.monorail.v3.FieldDef\"\x00\x12S\n\x0fGetComponentDef\x12#.monorail.v3.GetComponentDefRequest\x1a\x19.monorail.v3.ComponentDef\"\x00\x12Y\n\x12\x43reateComponentDef\x12&.monorail.v3.CreateComponentDefRequest\x1a\x19.monorail.v3.ComponentDef\"\x00\x12V\n\x12\x44\x65leteComponentDef\x12&.monorail.v3.DeleteComponentDefRequest\x1a\x16.google.protobuf.Empty\"\x00\x12g\n\x12ListIssueTemplates\x12&.monorail.v3.ListIssueTemplatesRequest\x1a\'.monorail.v3.ListIssueTemplatesResponse\"\x00\x12\x64\n\x11ListComponentDefs\x12%.monorail.v3.ListComponentDefsRequest\x1a&.monorail.v3.ListComponentDefsResponse\"\x00\x12U\n\x0cListProjects\x12 .monorail.v3.ListProjectsRequest\x1a!.monorail.v3.ListProjectsResponse\"\x00\x42#Z!infra/monorailv2/api/v3/api_protob\x06proto3')
 
+_builder.BuildMessageAndEnumDescriptors(DESCRIPTOR, globals())
+_builder.BuildTopDescriptorsAndMessages(DESCRIPTOR, 'api.v3.api_proto.projects_pb2', globals())
+if _descriptor._USE_C_DESCRIPTORS == False:
 
-
-
-_CREATEFIELDDEFREQUEST = _descriptor.Descriptor(
-  name='CreateFieldDefRequest',
-  full_name='monorail.v3.CreateFieldDefRequest',
-  filename=None,
-  file=DESCRIPTOR,
-  containing_type=None,
-  create_key=_descriptor._internal_create_key,
-  fields=[
-    _descriptor.FieldDescriptor(
-      name='parent', full_name='monorail.v3.CreateFieldDefRequest.parent', index=0,
-      number=1, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=b"".decode('utf-8'),
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=b'\340A\002\372A\027\n\025api.crbug.com/Project', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
-    _descriptor.FieldDescriptor(
-      name='fielddef', full_name='monorail.v3.CreateFieldDefRequest.fielddef', index=1,
-      number=2, type=11, cpp_type=10, label=1,
-      has_default_value=False, default_value=None,
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=b'\340A\002', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
-  ],
-  extensions=[
-  ],
-  nested_types=[],
-  enum_types=[
-  ],
-  serialized_options=None,
-  is_extendable=False,
-  syntax='proto3',
-  extension_ranges=[],
-  oneofs=[
-  ],
-  serialized_start=177,
-  serialized_end=293,
-)
-
-
-_GETCOMPONENTDEFREQUEST = _descriptor.Descriptor(
-  name='GetComponentDefRequest',
-  full_name='monorail.v3.GetComponentDefRequest',
-  filename=None,
-  file=DESCRIPTOR,
-  containing_type=None,
-  create_key=_descriptor._internal_create_key,
-  fields=[
-    _descriptor.FieldDescriptor(
-      name='name', full_name='monorail.v3.GetComponentDefRequest.name', index=0,
-      number=1, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=b"".decode('utf-8'),
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=b'\372A\034\n\032api.crbug.com/ComponentDef\340A\002', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
-  ],
-  extensions=[
-  ],
-  nested_types=[],
-  enum_types=[
-  ],
-  serialized_options=None,
-  is_extendable=False,
-  syntax='proto3',
-  extension_ranges=[],
-  oneofs=[
-  ],
-  serialized_start=295,
-  serialized_end=369,
-)
-
-
-_CREATECOMPONENTDEFREQUEST = _descriptor.Descriptor(
-  name='CreateComponentDefRequest',
-  full_name='monorail.v3.CreateComponentDefRequest',
-  filename=None,
-  file=DESCRIPTOR,
-  containing_type=None,
-  create_key=_descriptor._internal_create_key,
-  fields=[
-    _descriptor.FieldDescriptor(
-      name='parent', full_name='monorail.v3.CreateComponentDefRequest.parent', index=0,
-      number=1, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=b"".decode('utf-8'),
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=b'\340A\002\372A\027\n\025api.crbug.com/Project', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
-    _descriptor.FieldDescriptor(
-      name='component_def', full_name='monorail.v3.CreateComponentDefRequest.component_def', index=1,
-      number=2, type=11, cpp_type=10, label=1,
-      has_default_value=False, default_value=None,
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=b'\340A\002', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
-  ],
-  extensions=[
-  ],
-  nested_types=[],
-  enum_types=[
-  ],
-  serialized_options=None,
-  is_extendable=False,
-  syntax='proto3',
-  extension_ranges=[],
-  oneofs=[
-  ],
-  serialized_start=372,
-  serialized_end=501,
-)
-
-
-_DELETECOMPONENTDEFREQUEST = _descriptor.Descriptor(
-  name='DeleteComponentDefRequest',
-  full_name='monorail.v3.DeleteComponentDefRequest',
-  filename=None,
-  file=DESCRIPTOR,
-  containing_type=None,
-  create_key=_descriptor._internal_create_key,
-  fields=[
-    _descriptor.FieldDescriptor(
-      name='name', full_name='monorail.v3.DeleteComponentDefRequest.name', index=0,
-      number=1, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=b"".decode('utf-8'),
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=b'\340A\002\372A\034\n\032api.crbug.com/ComponentDef', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
-  ],
-  extensions=[
-  ],
-  nested_types=[],
-  enum_types=[
-  ],
-  serialized_options=None,
-  is_extendable=False,
-  syntax='proto3',
-  extension_ranges=[],
-  oneofs=[
-  ],
-  serialized_start=503,
-  serialized_end=580,
-)
-
-
-_LISTISSUETEMPLATESREQUEST = _descriptor.Descriptor(
-  name='ListIssueTemplatesRequest',
-  full_name='monorail.v3.ListIssueTemplatesRequest',
-  filename=None,
-  file=DESCRIPTOR,
-  containing_type=None,
-  create_key=_descriptor._internal_create_key,
-  fields=[
-    _descriptor.FieldDescriptor(
-      name='parent', full_name='monorail.v3.ListIssueTemplatesRequest.parent', index=0,
-      number=1, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=b"".decode('utf-8'),
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=b'\372A\027\n\025api.crbug.com/Project\340A\002', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
-    _descriptor.FieldDescriptor(
-      name='page_size', full_name='monorail.v3.ListIssueTemplatesRequest.page_size', index=1,
-      number=2, type=5, cpp_type=1, label=1,
-      has_default_value=False, default_value=0,
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
-    _descriptor.FieldDescriptor(
-      name='page_token', full_name='monorail.v3.ListIssueTemplatesRequest.page_token', index=2,
-      number=3, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=b"".decode('utf-8'),
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
-  ],
-  extensions=[
-  ],
-  nested_types=[],
-  enum_types=[
-  ],
-  serialized_options=None,
-  is_extendable=False,
-  syntax='proto3',
-  extension_ranges=[],
-  oneofs=[
-  ],
-  serialized_start=582,
-  serialized_end=695,
-)
-
-
-_LISTISSUETEMPLATESRESPONSE = _descriptor.Descriptor(
-  name='ListIssueTemplatesResponse',
-  full_name='monorail.v3.ListIssueTemplatesResponse',
-  filename=None,
-  file=DESCRIPTOR,
-  containing_type=None,
-  create_key=_descriptor._internal_create_key,
-  fields=[
-    _descriptor.FieldDescriptor(
-      name='templates', full_name='monorail.v3.ListIssueTemplatesResponse.templates', index=0,
-      number=1, type=11, cpp_type=10, label=3,
-      has_default_value=False, default_value=[],
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
-    _descriptor.FieldDescriptor(
-      name='next_page_token', full_name='monorail.v3.ListIssueTemplatesResponse.next_page_token', index=1,
-      number=2, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=b"".decode('utf-8'),
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
-  ],
-  extensions=[
-  ],
-  nested_types=[],
-  enum_types=[
-  ],
-  serialized_options=None,
-  is_extendable=False,
-  syntax='proto3',
-  extension_ranges=[],
-  oneofs=[
-  ],
-  serialized_start=697,
-  serialized_end=797,
-)
-
-
-_LISTCOMPONENTDEFSREQUEST = _descriptor.Descriptor(
-  name='ListComponentDefsRequest',
-  full_name='monorail.v3.ListComponentDefsRequest',
-  filename=None,
-  file=DESCRIPTOR,
-  containing_type=None,
-  create_key=_descriptor._internal_create_key,
-  fields=[
-    _descriptor.FieldDescriptor(
-      name='parent', full_name='monorail.v3.ListComponentDefsRequest.parent', index=0,
-      number=1, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=b"".decode('utf-8'),
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=b'\372A\027\n\025api.crbug.com/Project\340A\002', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
-    _descriptor.FieldDescriptor(
-      name='page_size', full_name='monorail.v3.ListComponentDefsRequest.page_size', index=1,
-      number=2, type=5, cpp_type=1, label=1,
-      has_default_value=False, default_value=0,
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
-    _descriptor.FieldDescriptor(
-      name='page_token', full_name='monorail.v3.ListComponentDefsRequest.page_token', index=2,
-      number=3, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=b"".decode('utf-8'),
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
-  ],
-  extensions=[
-  ],
-  nested_types=[],
-  enum_types=[
-  ],
-  serialized_options=None,
-  is_extendable=False,
-  syntax='proto3',
-  extension_ranges=[],
-  oneofs=[
-  ],
-  serialized_start=799,
-  serialized_end=911,
-)
-
-
-_LISTCOMPONENTDEFSRESPONSE = _descriptor.Descriptor(
-  name='ListComponentDefsResponse',
-  full_name='monorail.v3.ListComponentDefsResponse',
-  filename=None,
-  file=DESCRIPTOR,
-  containing_type=None,
-  create_key=_descriptor._internal_create_key,
-  fields=[
-    _descriptor.FieldDescriptor(
-      name='component_defs', full_name='monorail.v3.ListComponentDefsResponse.component_defs', index=0,
-      number=1, type=11, cpp_type=10, label=3,
-      has_default_value=False, default_value=[],
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
-    _descriptor.FieldDescriptor(
-      name='next_page_token', full_name='monorail.v3.ListComponentDefsResponse.next_page_token', index=1,
-      number=2, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=b"".decode('utf-8'),
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
-  ],
-  extensions=[
-  ],
-  nested_types=[],
-  enum_types=[
-  ],
-  serialized_options=None,
-  is_extendable=False,
-  syntax='proto3',
-  extension_ranges=[],
-  oneofs=[
-  ],
-  serialized_start=913,
-  serialized_end=1016,
-)
-
-
-_LISTPROJECTSREQUEST = _descriptor.Descriptor(
-  name='ListProjectsRequest',
-  full_name='monorail.v3.ListProjectsRequest',
-  filename=None,
-  file=DESCRIPTOR,
-  containing_type=None,
-  create_key=_descriptor._internal_create_key,
-  fields=[
-    _descriptor.FieldDescriptor(
-      name='page_size', full_name='monorail.v3.ListProjectsRequest.page_size', index=0,
-      number=1, type=5, cpp_type=1, label=1,
-      has_default_value=False, default_value=0,
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
-    _descriptor.FieldDescriptor(
-      name='page_token', full_name='monorail.v3.ListProjectsRequest.page_token', index=1,
-      number=2, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=b"".decode('utf-8'),
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
-  ],
-  extensions=[
-  ],
-  nested_types=[],
-  enum_types=[
-  ],
-  serialized_options=None,
-  is_extendable=False,
-  syntax='proto3',
-  extension_ranges=[],
-  oneofs=[
-  ],
-  serialized_start=1018,
-  serialized_end=1078,
-)
-
-
-_LISTPROJECTSRESPONSE = _descriptor.Descriptor(
-  name='ListProjectsResponse',
-  full_name='monorail.v3.ListProjectsResponse',
-  filename=None,
-  file=DESCRIPTOR,
-  containing_type=None,
-  create_key=_descriptor._internal_create_key,
-  fields=[
-    _descriptor.FieldDescriptor(
-      name='projects', full_name='monorail.v3.ListProjectsResponse.projects', index=0,
-      number=1, type=11, cpp_type=10, label=3,
-      has_default_value=False, default_value=[],
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
-    _descriptor.FieldDescriptor(
-      name='next_page_token', full_name='monorail.v3.ListProjectsResponse.next_page_token', index=1,
-      number=2, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=b"".decode('utf-8'),
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
-  ],
-  extensions=[
-  ],
-  nested_types=[],
-  enum_types=[
-  ],
-  serialized_options=None,
-  is_extendable=False,
-  syntax='proto3',
-  extension_ranges=[],
-  oneofs=[
-  ],
-  serialized_start=1080,
-  serialized_end=1167,
-)
-
-_CREATEFIELDDEFREQUEST.fields_by_name['fielddef'].message_type = api_dot_v3_dot_api__proto_dot_project__objects__pb2._FIELDDEF
-_CREATECOMPONENTDEFREQUEST.fields_by_name['component_def'].message_type = api_dot_v3_dot_api__proto_dot_project__objects__pb2._COMPONENTDEF
-_LISTISSUETEMPLATESRESPONSE.fields_by_name['templates'].message_type = api_dot_v3_dot_api__proto_dot_project__objects__pb2._ISSUETEMPLATE
-_LISTCOMPONENTDEFSRESPONSE.fields_by_name['component_defs'].message_type = api_dot_v3_dot_api__proto_dot_project__objects__pb2._COMPONENTDEF
-_LISTPROJECTSRESPONSE.fields_by_name['projects'].message_type = api_dot_v3_dot_api__proto_dot_project__objects__pb2._PROJECT
-DESCRIPTOR.message_types_by_name['CreateFieldDefRequest'] = _CREATEFIELDDEFREQUEST
-DESCRIPTOR.message_types_by_name['GetComponentDefRequest'] = _GETCOMPONENTDEFREQUEST
-DESCRIPTOR.message_types_by_name['CreateComponentDefRequest'] = _CREATECOMPONENTDEFREQUEST
-DESCRIPTOR.message_types_by_name['DeleteComponentDefRequest'] = _DELETECOMPONENTDEFREQUEST
-DESCRIPTOR.message_types_by_name['ListIssueTemplatesRequest'] = _LISTISSUETEMPLATESREQUEST
-DESCRIPTOR.message_types_by_name['ListIssueTemplatesResponse'] = _LISTISSUETEMPLATESRESPONSE
-DESCRIPTOR.message_types_by_name['ListComponentDefsRequest'] = _LISTCOMPONENTDEFSREQUEST
-DESCRIPTOR.message_types_by_name['ListComponentDefsResponse'] = _LISTCOMPONENTDEFSRESPONSE
-DESCRIPTOR.message_types_by_name['ListProjectsRequest'] = _LISTPROJECTSREQUEST
-DESCRIPTOR.message_types_by_name['ListProjectsResponse'] = _LISTPROJECTSRESPONSE
-_sym_db.RegisterFileDescriptor(DESCRIPTOR)
-
-CreateFieldDefRequest = _reflection.GeneratedProtocolMessageType('CreateFieldDefRequest', (_message.Message,), {
-  'DESCRIPTOR' : _CREATEFIELDDEFREQUEST,
-  '__module__' : 'api.v3.api_proto.projects_pb2'
-  # @@protoc_insertion_point(class_scope:monorail.v3.CreateFieldDefRequest)
-  })
-_sym_db.RegisterMessage(CreateFieldDefRequest)
-
-GetComponentDefRequest = _reflection.GeneratedProtocolMessageType('GetComponentDefRequest', (_message.Message,), {
-  'DESCRIPTOR' : _GETCOMPONENTDEFREQUEST,
-  '__module__' : 'api.v3.api_proto.projects_pb2'
-  # @@protoc_insertion_point(class_scope:monorail.v3.GetComponentDefRequest)
-  })
-_sym_db.RegisterMessage(GetComponentDefRequest)
-
-CreateComponentDefRequest = _reflection.GeneratedProtocolMessageType('CreateComponentDefRequest', (_message.Message,), {
-  'DESCRIPTOR' : _CREATECOMPONENTDEFREQUEST,
-  '__module__' : 'api.v3.api_proto.projects_pb2'
-  # @@protoc_insertion_point(class_scope:monorail.v3.CreateComponentDefRequest)
-  })
-_sym_db.RegisterMessage(CreateComponentDefRequest)
-
-DeleteComponentDefRequest = _reflection.GeneratedProtocolMessageType('DeleteComponentDefRequest', (_message.Message,), {
-  'DESCRIPTOR' : _DELETECOMPONENTDEFREQUEST,
-  '__module__' : 'api.v3.api_proto.projects_pb2'
-  # @@protoc_insertion_point(class_scope:monorail.v3.DeleteComponentDefRequest)
-  })
-_sym_db.RegisterMessage(DeleteComponentDefRequest)
-
-ListIssueTemplatesRequest = _reflection.GeneratedProtocolMessageType('ListIssueTemplatesRequest', (_message.Message,), {
-  'DESCRIPTOR' : _LISTISSUETEMPLATESREQUEST,
-  '__module__' : 'api.v3.api_proto.projects_pb2'
-  # @@protoc_insertion_point(class_scope:monorail.v3.ListIssueTemplatesRequest)
-  })
-_sym_db.RegisterMessage(ListIssueTemplatesRequest)
-
-ListIssueTemplatesResponse = _reflection.GeneratedProtocolMessageType('ListIssueTemplatesResponse', (_message.Message,), {
-  'DESCRIPTOR' : _LISTISSUETEMPLATESRESPONSE,
-  '__module__' : 'api.v3.api_proto.projects_pb2'
-  # @@protoc_insertion_point(class_scope:monorail.v3.ListIssueTemplatesResponse)
-  })
-_sym_db.RegisterMessage(ListIssueTemplatesResponse)
-
-ListComponentDefsRequest = _reflection.GeneratedProtocolMessageType('ListComponentDefsRequest', (_message.Message,), {
-  'DESCRIPTOR' : _LISTCOMPONENTDEFSREQUEST,
-  '__module__' : 'api.v3.api_proto.projects_pb2'
-  # @@protoc_insertion_point(class_scope:monorail.v3.ListComponentDefsRequest)
-  })
-_sym_db.RegisterMessage(ListComponentDefsRequest)
-
-ListComponentDefsResponse = _reflection.GeneratedProtocolMessageType('ListComponentDefsResponse', (_message.Message,), {
-  'DESCRIPTOR' : _LISTCOMPONENTDEFSRESPONSE,
-  '__module__' : 'api.v3.api_proto.projects_pb2'
-  # @@protoc_insertion_point(class_scope:monorail.v3.ListComponentDefsResponse)
-  })
-_sym_db.RegisterMessage(ListComponentDefsResponse)
-
-ListProjectsRequest = _reflection.GeneratedProtocolMessageType('ListProjectsRequest', (_message.Message,), {
-  'DESCRIPTOR' : _LISTPROJECTSREQUEST,
-  '__module__' : 'api.v3.api_proto.projects_pb2'
-  # @@protoc_insertion_point(class_scope:monorail.v3.ListProjectsRequest)
-  })
-_sym_db.RegisterMessage(ListProjectsRequest)
-
-ListProjectsResponse = _reflection.GeneratedProtocolMessageType('ListProjectsResponse', (_message.Message,), {
-  'DESCRIPTOR' : _LISTPROJECTSRESPONSE,
-  '__module__' : 'api.v3.api_proto.projects_pb2'
-  # @@protoc_insertion_point(class_scope:monorail.v3.ListProjectsResponse)
-  })
-_sym_db.RegisterMessage(ListProjectsResponse)
-
-
-DESCRIPTOR._options = None
-_CREATEFIELDDEFREQUEST.fields_by_name['parent']._options = None
-_CREATEFIELDDEFREQUEST.fields_by_name['fielddef']._options = None
-_GETCOMPONENTDEFREQUEST.fields_by_name['name']._options = None
-_CREATECOMPONENTDEFREQUEST.fields_by_name['parent']._options = None
-_CREATECOMPONENTDEFREQUEST.fields_by_name['component_def']._options = None
-_DELETECOMPONENTDEFREQUEST.fields_by_name['name']._options = None
-_LISTISSUETEMPLATESREQUEST.fields_by_name['parent']._options = None
-_LISTCOMPONENTDEFSREQUEST.fields_by_name['parent']._options = None
-
-_PROJECTS = _descriptor.ServiceDescriptor(
-  name='Projects',
-  full_name='monorail.v3.Projects',
-  file=DESCRIPTOR,
-  index=0,
-  serialized_options=None,
-  create_key=_descriptor._internal_create_key,
-  serialized_start=1170,
-  serialized_end=1817,
-  methods=[
-  _descriptor.MethodDescriptor(
-    name='CreateFieldDef',
-    full_name='monorail.v3.Projects.CreateFieldDef',
-    index=0,
-    containing_service=None,
-    input_type=_CREATEFIELDDEFREQUEST,
-    output_type=api_dot_v3_dot_api__proto_dot_project__objects__pb2._FIELDDEF,
-    serialized_options=None,
-    create_key=_descriptor._internal_create_key,
-  ),
-  _descriptor.MethodDescriptor(
-    name='GetComponentDef',
-    full_name='monorail.v3.Projects.GetComponentDef',
-    index=1,
-    containing_service=None,
-    input_type=_GETCOMPONENTDEFREQUEST,
-    output_type=api_dot_v3_dot_api__proto_dot_project__objects__pb2._COMPONENTDEF,
-    serialized_options=None,
-    create_key=_descriptor._internal_create_key,
-  ),
-  _descriptor.MethodDescriptor(
-    name='CreateComponentDef',
-    full_name='monorail.v3.Projects.CreateComponentDef',
-    index=2,
-    containing_service=None,
-    input_type=_CREATECOMPONENTDEFREQUEST,
-    output_type=api_dot_v3_dot_api__proto_dot_project__objects__pb2._COMPONENTDEF,
-    serialized_options=None,
-    create_key=_descriptor._internal_create_key,
-  ),
-  _descriptor.MethodDescriptor(
-    name='DeleteComponentDef',
-    full_name='monorail.v3.Projects.DeleteComponentDef',
-    index=3,
-    containing_service=None,
-    input_type=_DELETECOMPONENTDEFREQUEST,
-    output_type=google_dot_protobuf_dot_empty__pb2._EMPTY,
-    serialized_options=None,
-    create_key=_descriptor._internal_create_key,
-  ),
-  _descriptor.MethodDescriptor(
-    name='ListIssueTemplates',
-    full_name='monorail.v3.Projects.ListIssueTemplates',
-    index=4,
-    containing_service=None,
-    input_type=_LISTISSUETEMPLATESREQUEST,
-    output_type=_LISTISSUETEMPLATESRESPONSE,
-    serialized_options=None,
-    create_key=_descriptor._internal_create_key,
-  ),
-  _descriptor.MethodDescriptor(
-    name='ListComponentDefs',
-    full_name='monorail.v3.Projects.ListComponentDefs',
-    index=5,
-    containing_service=None,
-    input_type=_LISTCOMPONENTDEFSREQUEST,
-    output_type=_LISTCOMPONENTDEFSRESPONSE,
-    serialized_options=None,
-    create_key=_descriptor._internal_create_key,
-  ),
-  _descriptor.MethodDescriptor(
-    name='ListProjects',
-    full_name='monorail.v3.Projects.ListProjects',
-    index=6,
-    containing_service=None,
-    input_type=_LISTPROJECTSREQUEST,
-    output_type=_LISTPROJECTSRESPONSE,
-    serialized_options=None,
-    create_key=_descriptor._internal_create_key,
-  ),
-])
-_sym_db.RegisterServiceDescriptor(_PROJECTS)
-
-DESCRIPTOR.services_by_name['Projects'] = _PROJECTS
-
+  DESCRIPTOR._options = None
+  DESCRIPTOR._serialized_options = b'Z!infra/monorailv2/api/v3/api_proto'
+  _CREATEFIELDDEFREQUEST.fields_by_name['parent']._options = None
+  _CREATEFIELDDEFREQUEST.fields_by_name['parent']._serialized_options = b'\340A\002\372A\027\n\025api.crbug.com/Project'
+  _CREATEFIELDDEFREQUEST.fields_by_name['fielddef']._options = None
+  _CREATEFIELDDEFREQUEST.fields_by_name['fielddef']._serialized_options = b'\340A\002'
+  _GETCOMPONENTDEFREQUEST.fields_by_name['name']._options = None
+  _GETCOMPONENTDEFREQUEST.fields_by_name['name']._serialized_options = b'\372A\034\n\032api.crbug.com/ComponentDef\340A\002'
+  _CREATECOMPONENTDEFREQUEST.fields_by_name['parent']._options = None
+  _CREATECOMPONENTDEFREQUEST.fields_by_name['parent']._serialized_options = b'\340A\002\372A\027\n\025api.crbug.com/Project'
+  _CREATECOMPONENTDEFREQUEST.fields_by_name['component_def']._options = None
+  _CREATECOMPONENTDEFREQUEST.fields_by_name['component_def']._serialized_options = b'\340A\002'
+  _DELETECOMPONENTDEFREQUEST.fields_by_name['name']._options = None
+  _DELETECOMPONENTDEFREQUEST.fields_by_name['name']._serialized_options = b'\340A\002\372A\034\n\032api.crbug.com/ComponentDef'
+  _LISTISSUETEMPLATESREQUEST.fields_by_name['parent']._options = None
+  _LISTISSUETEMPLATESREQUEST.fields_by_name['parent']._serialized_options = b'\372A\027\n\025api.crbug.com/Project\340A\002'
+  _LISTCOMPONENTDEFSREQUEST.fields_by_name['parent']._options = None
+  _LISTCOMPONENTDEFSREQUEST.fields_by_name['parent']._serialized_options = b'\372A\027\n\025api.crbug.com/Project\340A\002'
+  _CREATEFIELDDEFREQUEST._serialized_start=177
+  _CREATEFIELDDEFREQUEST._serialized_end=293
+  _GETCOMPONENTDEFREQUEST._serialized_start=295
+  _GETCOMPONENTDEFREQUEST._serialized_end=369
+  _CREATECOMPONENTDEFREQUEST._serialized_start=372
+  _CREATECOMPONENTDEFREQUEST._serialized_end=501
+  _DELETECOMPONENTDEFREQUEST._serialized_start=503
+  _DELETECOMPONENTDEFREQUEST._serialized_end=580
+  _LISTISSUETEMPLATESREQUEST._serialized_start=582
+  _LISTISSUETEMPLATESREQUEST._serialized_end=695
+  _LISTISSUETEMPLATESRESPONSE._serialized_start=697
+  _LISTISSUETEMPLATESRESPONSE._serialized_end=797
+  _LISTCOMPONENTDEFSREQUEST._serialized_start=799
+  _LISTCOMPONENTDEFSREQUEST._serialized_end=911
+  _LISTCOMPONENTDEFSRESPONSE._serialized_start=913
+  _LISTCOMPONENTDEFSRESPONSE._serialized_end=1016
+  _LISTPROJECTSREQUEST._serialized_start=1018
+  _LISTPROJECTSREQUEST._serialized_end=1078
+  _LISTPROJECTSRESPONSE._serialized_start=1080
+  _LISTPROJECTSRESPONSE._serialized_end=1167
+  _PROJECTS._serialized_start=1170
+  _PROJECTS._serialized_end=1817
 # @@protoc_insertion_point(module_scope)
