diff --git a/README.md b/README.md index aec5a3f..1976e0d 100644 --- a/README.md +++ b/README.md @@ -522,6 +522,10 @@ These attributes are added alongside standard OTLP resource attributes (`service * Contact Assignment * Contact Group * Contact Role +* Cooling Feed +* Cooling Intake +* Cooling Outflow +* Cooling Source * Custom Field * Custom Field Choice Set * Custom Link @@ -551,6 +555,7 @@ These attributes are added alongside standard OTLP resource attributes (`service * Manufacturer * Module * Module Bay +* Module Bay Type * Module Type * Module Type Profile * Owner diff --git a/docs/README.md b/docs/README.md index f06a55b..7e3c60f 100644 --- a/docs/README.md +++ b/docs/README.md @@ -1,7 +1,7 @@ # Diode Python SDK - Entity Examples -Source: NetBox v4.6.0 -Generated: 2026-07-03 00:59:24Z +Source: NetBox v4.7.0 +Generated: 2026-09-02 20:52:39Z ## Prerequisites @@ -127,7 +127,12 @@ Switch between patterns by uncommenting the desired function call in `main()`. ### Other - [CableBundle](examples/cable_bundle.py) +- [CoolingFeed](examples/cooling_feed.py) +- [CoolingIntake](examples/cooling_intake.py) +- [CoolingOutflow](examples/cooling_outflow.py) +- [CoolingSource](examples/cooling_source.py) - [DeviceConfig](examples/device_config.py) +- [ModuleBayType](examples/module_bay_type.py) - [RackGroup](examples/rack_group.py) - [ScriptModule](examples/script_module.py) - [VirtualMachineType](examples/virtual_machine_type.py) diff --git a/docs/examples/cooling_feed.py b/docs/examples/cooling_feed.py new file mode 100644 index 0000000..a69d332 --- /dev/null +++ b/docs/examples/cooling_feed.py @@ -0,0 +1,128 @@ +""" +CoolingFeed entity examples for the Diode Python SDK. + +This module demonstrates three patterns for ingesting CoolingFeed entities: +- cooling_feed_minimal: Required fields only +- cooling_feed_extended: Common optional fields +- cooling_feed_explicit: Fully nested objects with all fields +""" + +from netboxlabs.diode.sdk import DiodeClient +from netboxlabs.diode.sdk.ingester import ( + CoolingFeed, + CoolingSource, + Entity, + Owner, + OwnerGroup, + Rack, + Site, + Tag, + Tenant, +) + +TARGET = "grpc://localhost:8080/diode" +APP_NAME = "cooling_feed-example" +APP_VERSION = "1.0.0" +CLIENT_ID = "diode" +CLIENT_SECRET = "changeme" + + +def main(): + """Main execution - demonstrates ingesting a CoolingFeed entity.""" + with DiodeClient( + target=TARGET, + app_name=APP_NAME, + app_version=APP_VERSION, + client_id=CLIENT_ID, + client_secret=CLIENT_SECRET, + ) as client: + # Choose one of the three patterns: + cooling_feed = cooling_feed_minimal() + # cooling_feed = cooling_feed_extended() + # cooling_feed = cooling_feed_explicit() + + response = client.ingest(entities=[Entity(cooling_feed=cooling_feed)]) + if response.errors: + print(f"Errors: {response.errors}") + else: + print("CoolingFeed ingested successfully") + + +def cooling_feed_minimal() -> CoolingFeed: + """Create a CoolingFeed with only required fields using flat strings.""" + return CoolingFeed( + cooling_source="Example Cooling Source", # flat string -> CoolingSource + name="Example Name", + metadata={"source": "example"}, + ) + + +def cooling_feed_extended() -> CoolingFeed: + """Create a CoolingFeed with common optional fields.""" + return CoolingFeed( + cooling_source="Example Cooling Source", + name="Example Name", + metadata={"source": "example", "custom_key": "custom_value"}, + status="active", + description="Example description", + rack="Example Rack", + cooling_capacity=1.0, + max_flow=1.0, + max_flow_unit="gpm", + tenant="Example Tenant", + comments="Example comments", + ) + + +def cooling_feed_explicit() -> CoolingFeed: + """Create a CoolingFeed with fully nested objects and all common fields.""" + return CoolingFeed( + cooling_source=CoolingSource( + site=Site( + name="Example Name", + slug="example-slug", + status="active", + metadata={"source": "example"}, + ), + name="Example Name", + type="chiller", + status="active", + metadata={"source": "example"}, + ), + name="Example Name", + metadata={ + "source": "example", + "custom_key": "custom_value", + "collected_at": "2024-01-15T10:30:00Z", + }, + status="active", + description="Example description", + comments="Example comments", + cooling_capacity=1.0, + max_flow=1.0, + max_flow_unit="gpm", + rack=Rack( + name="Example Name", + site=Site( + name="Example Name", + slug="example-slug", + status="active", + metadata={"source": "example"}, + ), + status="active", + metadata={"source": "example"}, + ), + tenant=Tenant( + name="Example Name", slug="example-slug", metadata={"source": "example"} + ), + owner=Owner( + name="Example Name", + group=OwnerGroup(name="Example Name", metadata={"source": "example"}), + metadata={"source": "example"}, + ), + tags=[Tag(name="production")], + ) + + +if __name__ == "__main__": + main() diff --git a/docs/examples/cooling_intake.py b/docs/examples/cooling_intake.py new file mode 100644 index 0000000..a753a9e --- /dev/null +++ b/docs/examples/cooling_intake.py @@ -0,0 +1,232 @@ +""" +CoolingIntake entity examples for the Diode Python SDK. + +This module demonstrates three patterns for ingesting CoolingIntake entities: +- cooling_intake_minimal: Required fields only +- cooling_intake_extended: Common optional fields +- cooling_intake_explicit: Fully nested objects with all fields +""" + +from netboxlabs.diode.sdk import DiodeClient +from netboxlabs.diode.sdk.ingester import ( + CoolingIntake, + CoolingOutflow, + Device, + DeviceRole, + DeviceType, + Entity, + Manufacturer, + Module, + ModuleBay, + ModuleType, + Owner, + OwnerGroup, + Site, + Tag, +) + +TARGET = "grpc://localhost:8080/diode" +APP_NAME = "cooling_intake-example" +APP_VERSION = "1.0.0" +CLIENT_ID = "diode" +CLIENT_SECRET = "changeme" + + +def main(): + """Main execution - demonstrates ingesting a CoolingIntake entity.""" + with DiodeClient( + target=TARGET, + app_name=APP_NAME, + app_version=APP_VERSION, + client_id=CLIENT_ID, + client_secret=CLIENT_SECRET, + ) as client: + # Choose one of the three patterns: + cooling_intake = cooling_intake_minimal() + # cooling_intake = cooling_intake_extended() + # cooling_intake = cooling_intake_explicit() + + response = client.ingest(entities=[Entity(cooling_intake=cooling_intake)]) + if response.errors: + print(f"Errors: {response.errors}") + else: + print("CoolingIntake ingested successfully") + + +def cooling_intake_minimal() -> CoolingIntake: + """Create a CoolingIntake with only required fields using flat strings.""" + return CoolingIntake( + device="Example Device", # flat string -> Device + name="Example Name", + metadata={"source": "example"}, + ) + + +def cooling_intake_extended() -> CoolingIntake: + """Create a CoolingIntake with common optional fields.""" + return CoolingIntake( + device="Example Device", + name="Example Name", + metadata={"source": "example", "custom_key": "custom_value"}, + description="Example description", + label="Example Label", + type="bsp", + diameter=1.0, + diameter_unit="cm", + max_flow=1.0, + max_flow_unit="gpm", + ) + + +def cooling_intake_explicit() -> CoolingIntake: + """Create a CoolingIntake with fully nested objects and all common fields.""" + return CoolingIntake( + device=Device( + device_type=DeviceType( + manufacturer=Manufacturer( + name="Example Name", + slug="example-slug", + metadata={"source": "example"}, + ), + model="Model X", + slug="example-slug", + metadata={"source": "example"}, + ), + role=DeviceRole( + name="Example Name", + slug="example-slug", + color="0000ff", + metadata={"source": "example"}, + ), + site=Site( + name="Example Name", + slug="example-slug", + status="active", + metadata={"source": "example"}, + ), + status="active", + metadata={"source": "example"}, + ), + name="Example Name", + metadata={ + "source": "example", + "custom_key": "custom_value", + "collected_at": "2024-01-15T10:30:00Z", + }, + description="Example description", + label="Example Label", + type="bsp", + diameter=1.0, + diameter_unit="cm", + max_flow=1.0, + max_flow_unit="gpm", + module=Module( + device=Device( + device_type=DeviceType( + manufacturer=Manufacturer( + name="Example Name", + slug="example-slug", + metadata={"source": "example"}, + ), + model="Model X", + slug="example-slug", + metadata={"source": "example"}, + ), + role=DeviceRole( + name="Example Name", + slug="example-slug", + color="0000ff", + metadata={"source": "example"}, + ), + site=Site( + name="Example Name", + slug="example-slug", + status="active", + metadata={"source": "example"}, + ), + status="active", + metadata={"source": "example"}, + ), + module_bay=ModuleBay( + device=Device( + device_type=DeviceType( + manufacturer=Manufacturer( + name="Example Name", + slug="example-slug", + metadata={"source": "example"}, + ), + model="Model X", + slug="example-slug", + metadata={"source": "example"}, + ), + role=DeviceRole( + name="Example Name", + slug="example-slug", + color="0000ff", + metadata={"source": "example"}, + ), + site=Site( + name="Example Name", + slug="example-slug", + status="active", + metadata={"source": "example"}, + ), + status="active", + metadata={"source": "example"}, + ), + name="Example Name", + metadata={"source": "example"}, + ), + module_type=ModuleType( + manufacturer=Manufacturer( + name="Example Name", + slug="example-slug", + metadata={"source": "example"}, + ), + model="Model X", + metadata={"source": "example"}, + ), + status="active", + metadata={"source": "example"}, + ), + cooling_outflow=CoolingOutflow( + device=Device( + device_type=DeviceType( + manufacturer=Manufacturer( + name="Example Name", + slug="example-slug", + metadata={"source": "example"}, + ), + model="Model X", + slug="example-slug", + metadata={"source": "example"}, + ), + role=DeviceRole( + name="Example Name", + slug="example-slug", + color="0000ff", + metadata={"source": "example"}, + ), + site=Site( + name="Example Name", + slug="example-slug", + status="active", + metadata={"source": "example"}, + ), + status="active", + metadata={"source": "example"}, + ), + name="Example Name", + metadata={"source": "example"}, + ), + owner=Owner( + name="Example Name", + group=OwnerGroup(name="Example Name", metadata={"source": "example"}), + metadata={"source": "example"}, + ), + tags=[Tag(name="production")], + ) + + +if __name__ == "__main__": + main() diff --git a/docs/examples/cooling_outflow.py b/docs/examples/cooling_outflow.py new file mode 100644 index 0000000..cedc5da --- /dev/null +++ b/docs/examples/cooling_outflow.py @@ -0,0 +1,228 @@ +""" +CoolingOutflow entity examples for the Diode Python SDK. + +This module demonstrates three patterns for ingesting CoolingOutflow entities: +- cooling_outflow_minimal: Required fields only +- cooling_outflow_extended: Common optional fields +- cooling_outflow_explicit: Fully nested objects with all fields +""" + +from netboxlabs.diode.sdk import DiodeClient +from netboxlabs.diode.sdk.ingester import ( + CoolingIntake, + CoolingOutflow, + Device, + DeviceRole, + DeviceType, + Entity, + Manufacturer, + Module, + ModuleBay, + ModuleType, + Owner, + OwnerGroup, + Site, + Tag, +) + +TARGET = "grpc://localhost:8080/diode" +APP_NAME = "cooling_outflow-example" +APP_VERSION = "1.0.0" +CLIENT_ID = "diode" +CLIENT_SECRET = "changeme" + + +def main(): + """Main execution - demonstrates ingesting a CoolingOutflow entity.""" + with DiodeClient( + target=TARGET, + app_name=APP_NAME, + app_version=APP_VERSION, + client_id=CLIENT_ID, + client_secret=CLIENT_SECRET, + ) as client: + # Choose one of the three patterns: + cooling_outflow = cooling_outflow_minimal() + # cooling_outflow = cooling_outflow_extended() + # cooling_outflow = cooling_outflow_explicit() + + response = client.ingest(entities=[Entity(cooling_outflow=cooling_outflow)]) + if response.errors: + print(f"Errors: {response.errors}") + else: + print("CoolingOutflow ingested successfully") + + +def cooling_outflow_minimal() -> CoolingOutflow: + """Create a CoolingOutflow with only required fields using flat strings.""" + return CoolingOutflow( + device="Example Device", # flat string -> Device + name="Example Name", + metadata={"source": "example"}, + ) + + +def cooling_outflow_extended() -> CoolingOutflow: + """Create a CoolingOutflow with common optional fields.""" + return CoolingOutflow( + device="Example Device", + name="Example Name", + metadata={"source": "example", "custom_key": "custom_value"}, + description="Example description", + label="Example Label", + type="bsp", + diameter=1.0, + diameter_unit="cm", + ) + + +def cooling_outflow_explicit() -> CoolingOutflow: + """Create a CoolingOutflow with fully nested objects and all common fields.""" + return CoolingOutflow( + device=Device( + device_type=DeviceType( + manufacturer=Manufacturer( + name="Example Name", + slug="example-slug", + metadata={"source": "example"}, + ), + model="Model X", + slug="example-slug", + metadata={"source": "example"}, + ), + role=DeviceRole( + name="Example Name", + slug="example-slug", + color="0000ff", + metadata={"source": "example"}, + ), + site=Site( + name="Example Name", + slug="example-slug", + status="active", + metadata={"source": "example"}, + ), + status="active", + metadata={"source": "example"}, + ), + name="Example Name", + metadata={ + "source": "example", + "custom_key": "custom_value", + "collected_at": "2024-01-15T10:30:00Z", + }, + description="Example description", + label="Example Label", + type="bsp", + diameter=1.0, + diameter_unit="cm", + module=Module( + device=Device( + device_type=DeviceType( + manufacturer=Manufacturer( + name="Example Name", + slug="example-slug", + metadata={"source": "example"}, + ), + model="Model X", + slug="example-slug", + metadata={"source": "example"}, + ), + role=DeviceRole( + name="Example Name", + slug="example-slug", + color="0000ff", + metadata={"source": "example"}, + ), + site=Site( + name="Example Name", + slug="example-slug", + status="active", + metadata={"source": "example"}, + ), + status="active", + metadata={"source": "example"}, + ), + module_bay=ModuleBay( + device=Device( + device_type=DeviceType( + manufacturer=Manufacturer( + name="Example Name", + slug="example-slug", + metadata={"source": "example"}, + ), + model="Model X", + slug="example-slug", + metadata={"source": "example"}, + ), + role=DeviceRole( + name="Example Name", + slug="example-slug", + color="0000ff", + metadata={"source": "example"}, + ), + site=Site( + name="Example Name", + slug="example-slug", + status="active", + metadata={"source": "example"}, + ), + status="active", + metadata={"source": "example"}, + ), + name="Example Name", + metadata={"source": "example"}, + ), + module_type=ModuleType( + manufacturer=Manufacturer( + name="Example Name", + slug="example-slug", + metadata={"source": "example"}, + ), + model="Model X", + metadata={"source": "example"}, + ), + status="active", + metadata={"source": "example"}, + ), + cooling_intake=CoolingIntake( + device=Device( + device_type=DeviceType( + manufacturer=Manufacturer( + name="Example Name", + slug="example-slug", + metadata={"source": "example"}, + ), + model="Model X", + slug="example-slug", + metadata={"source": "example"}, + ), + role=DeviceRole( + name="Example Name", + slug="example-slug", + color="0000ff", + metadata={"source": "example"}, + ), + site=Site( + name="Example Name", + slug="example-slug", + status="active", + metadata={"source": "example"}, + ), + status="active", + metadata={"source": "example"}, + ), + name="Example Name", + metadata={"source": "example"}, + ), + owner=Owner( + name="Example Name", + group=OwnerGroup(name="Example Name", metadata={"source": "example"}), + metadata={"source": "example"}, + ), + tags=[Tag(name="production")], + ) + + +if __name__ == "__main__": + main() diff --git a/docs/examples/cooling_source.py b/docs/examples/cooling_source.py new file mode 100644 index 0000000..e4fd08a --- /dev/null +++ b/docs/examples/cooling_source.py @@ -0,0 +1,118 @@ +""" +CoolingSource entity examples for the Diode Python SDK. + +This module demonstrates three patterns for ingesting CoolingSource entities: +- cooling_source_minimal: Required fields only +- cooling_source_extended: Common optional fields +- cooling_source_explicit: Fully nested objects with all fields +""" + +from netboxlabs.diode.sdk import DiodeClient +from netboxlabs.diode.sdk.ingester import ( + CoolingSource, + Entity, + Location, + Owner, + OwnerGroup, + Site, + Tag, +) + +TARGET = "grpc://localhost:8080/diode" +APP_NAME = "cooling_source-example" +APP_VERSION = "1.0.0" +CLIENT_ID = "diode" +CLIENT_SECRET = "changeme" + + +def main(): + """Main execution - demonstrates ingesting a CoolingSource entity.""" + with DiodeClient( + target=TARGET, + app_name=APP_NAME, + app_version=APP_VERSION, + client_id=CLIENT_ID, + client_secret=CLIENT_SECRET, + ) as client: + # Choose one of the three patterns: + cooling_source = cooling_source_minimal() + # cooling_source = cooling_source_extended() + # cooling_source = cooling_source_explicit() + + response = client.ingest(entities=[Entity(cooling_source=cooling_source)]) + if response.errors: + print(f"Errors: {response.errors}") + else: + print("CoolingSource ingested successfully") + + +def cooling_source_minimal() -> CoolingSource: + """Create a CoolingSource with only required fields using flat strings.""" + return CoolingSource( + site="Example Site", # flat string -> Site + name="Example Name", + type="chiller", + metadata={"source": "example"}, + ) + + +def cooling_source_extended() -> CoolingSource: + """Create a CoolingSource with common optional fields.""" + return CoolingSource( + site="Example Site", + name="Example Name", + type="chiller", + metadata={"source": "example", "custom_key": "custom_value"}, + status="active", + description="Example description", + location="Example Location", + fluid_type="dielectric", + cooling_capacity=1.0, + comments="Example comments", + ) + + +def cooling_source_explicit() -> CoolingSource: + """Create a CoolingSource with fully nested objects and all common fields.""" + return CoolingSource( + site=Site( + name="Example Name", + slug="example-slug", + status="active", + metadata={"source": "example"}, + ), + name="Example Name", + type="chiller", + metadata={ + "source": "example", + "custom_key": "custom_value", + "collected_at": "2024-01-15T10:30:00Z", + }, + status="active", + description="Example description", + comments="Example comments", + fluid_type="dielectric", + cooling_capacity=1.0, + location=Location( + name="Example Name", + slug="example-slug", + site=Site( + name="Example Name", + slug="example-slug", + status="active", + metadata={"source": "example"}, + ), + status="active", + metadata={"source": "example"}, + ), + owner=Owner( + name="Example Name", + group=OwnerGroup(name="Example Name", metadata={"source": "example"}), + metadata={"source": "example"}, + ), + tags=[Tag(name="production")], + ) + + +if __name__ == "__main__": + main() diff --git a/docs/examples/custom_field.py b/docs/examples/custom_field.py index f40ae75..d73043a 100644 --- a/docs/examples/custom_field.py +++ b/docs/examples/custom_field.py @@ -78,6 +78,7 @@ def custom_field_extended() -> CustomField: validation_regex="Example Validation Regex", comments="Example comments", validation_schema="Example Validation Schema", + nulls_first=True, ) @@ -110,6 +111,7 @@ def custom_field_explicit() -> CustomField: validation_maximum=1.0, validation_regex="Example Validation Regex", validation_schema="Example Validation Schema", + nulls_first=True, choice_set=CustomFieldChoiceSet( name="Example Name", metadata={"source": "example"} ), diff --git a/docs/examples/device.py b/docs/examples/device.py index 93934bb..012415c 100644 --- a/docs/examples/device.py +++ b/docs/examples/device.py @@ -92,6 +92,7 @@ def device_extended() -> Device: vc_position=1, vc_priority=1, comments="Example comments", + cooling_method="air", ) @@ -136,6 +137,7 @@ def device_explicit() -> Device: airflow="bottom-to-top", vc_position=1, vc_priority=1, + cooling_method="air", tenant=Tenant( name="Example Name", slug="example-slug", metadata={"source": "example"} ), diff --git a/docs/examples/device_type.py b/docs/examples/device_type.py index 3d2352d..23a043c 100644 --- a/docs/examples/device_type.py +++ b/docs/examples/device_type.py @@ -73,6 +73,7 @@ def device_type_extended() -> DeviceType: weight=1.0, weight_unit="g", comments="Example comments", + cooling_method="air", ) @@ -99,6 +100,7 @@ def device_type_explicit() -> DeviceType: airflow="bottom-to-top", weight=1.0, weight_unit="g", + cooling_method="air", default_platform=Platform( name="Example Name", slug="example-slug", metadata={"source": "example"} ), diff --git a/docs/examples/interface_example.py b/docs/examples/interface_example.py index 60eba36..1342249 100644 --- a/docs/examples/interface_example.py +++ b/docs/examples/interface_example.py @@ -90,6 +90,8 @@ def interface_example_extended() -> Interface: rf_channel_width=1.0, tx_power=1, mark_connected=True, + channels=1, + mac_address="00:11:22:33:44:55", ) @@ -146,6 +148,8 @@ def interface_example_explicit() -> Interface: rf_channel_width=1.0, tx_power=1, mark_connected=True, + channels=1, + mac_address="00:11:22:33:44:55", module=Module( device=Device( device_type=DeviceType( diff --git a/docs/examples/inventory_item.py b/docs/examples/inventory_item.py index 1aafbf0..ba64a0b 100644 --- a/docs/examples/inventory_item.py +++ b/docs/examples/inventory_item.py @@ -11,6 +11,8 @@ from netboxlabs.diode.sdk.ingester import ( ConsolePort, ConsoleServerPort, + CoolingIntake, + CoolingOutflow, Device, DeviceRole, DeviceType, @@ -209,6 +211,8 @@ def inventory_item_explicit() -> InventoryItem: # component_power_outlet=PowerOutlet(device=Device(device_type=DeviceType(manufacturer=Manufacturer(name="Example Name", slug="example-slug", metadata={"source": "example"}), model="Model X", slug="example-slug", metadata={"source": "example"}), role=DeviceRole(name="Example Name", slug="example-slug", color="0000ff", metadata={"source": "example"}), site=Site(name="Example Name", slug="example-slug", status="active", metadata={"source": "example"}), status="active", metadata={"source": "example"}), name="Example Name", color="0000ff", status="disabled", metadata={"source": "example"}), # component_power_port=PowerPort(device=Device(device_type=DeviceType(manufacturer=Manufacturer(name="Example Name", slug="example-slug", metadata={"source": "example"}), model="Model X", slug="example-slug", metadata={"source": "example"}), role=DeviceRole(name="Example Name", slug="example-slug", color="0000ff", metadata={"source": "example"}), site=Site(name="Example Name", slug="example-slug", status="active", metadata={"source": "example"}), status="active", metadata={"source": "example"}), name="Example Name", metadata={"source": "example"}), # component_rear_port=RearPort(device=Device(device_type=DeviceType(manufacturer=Manufacturer(name="Example Name", slug="example-slug", metadata={"source": "example"}), model="Model X", slug="example-slug", metadata={"source": "example"}), role=DeviceRole(name="Example Name", slug="example-slug", color="0000ff", metadata={"source": "example"}), site=Site(name="Example Name", slug="example-slug", status="active", metadata={"source": "example"}), status="active", metadata={"source": "example"}), name="Example Name", type="110-punch", color="0000ff", metadata={"source": "example"}), + # component_cooling_intake=CoolingIntake(device=Device(device_type=DeviceType(manufacturer=Manufacturer(name="Example Name", slug="example-slug", metadata={"source": "example"}), model="Model X", slug="example-slug", metadata={"source": "example"}), role=DeviceRole(name="Example Name", slug="example-slug", color="0000ff", metadata={"source": "example"}), site=Site(name="Example Name", slug="example-slug", status="active", metadata={"source": "example"}), status="active", metadata={"source": "example"}), name="Example Name", metadata={"source": "example"}), + # component_cooling_outflow=CoolingOutflow(device=Device(device_type=DeviceType(manufacturer=Manufacturer(name="Example Name", slug="example-slug", metadata={"source": "example"}), model="Model X", slug="example-slug", metadata={"source": "example"}), role=DeviceRole(name="Example Name", slug="example-slug", color="0000ff", metadata={"source": "example"}), site=Site(name="Example Name", slug="example-slug", status="active", metadata={"source": "example"}), status="active", metadata={"source": "example"}), name="Example Name", metadata={"source": "example"}), tags=[Tag(name="production")], ) diff --git a/docs/examples/journal_entry.py b/docs/examples/journal_entry.py index 31c7519..f8ea65c 100644 --- a/docs/examples/journal_entry.py +++ b/docs/examples/journal_entry.py @@ -12,6 +12,7 @@ Entity, JournalEntry, Tag, + User, ) TARGET = "grpc://localhost:8080/diode" @@ -69,6 +70,7 @@ def journal_entry_explicit() -> JournalEntry: "collected_at": "2024-01-15T10:30:00Z", }, kind="danger", + created_by=User(username="Example Username", metadata={"source": "example"}), tags=[Tag(name="production")], ) diff --git a/docs/examples/module_bay_type.py b/docs/examples/module_bay_type.py new file mode 100644 index 0000000..83ae595 --- /dev/null +++ b/docs/examples/module_bay_type.py @@ -0,0 +1,96 @@ +""" +ModuleBayType entity examples for the Diode Python SDK. + +This module demonstrates three patterns for ingesting ModuleBayType entities: +- module_bay_type_minimal: Required fields only +- module_bay_type_extended: Common optional fields +- module_bay_type_explicit: Fully nested objects with all fields +""" + +from netboxlabs.diode.sdk import DiodeClient +from netboxlabs.diode.sdk.ingester import ( + Entity, + Manufacturer, + ModuleBayType, + Owner, + OwnerGroup, + Tag, +) + +TARGET = "grpc://localhost:8080/diode" +APP_NAME = "module_bay_type-example" +APP_VERSION = "1.0.0" +CLIENT_ID = "diode" +CLIENT_SECRET = "changeme" + + +def main(): + """Main execution - demonstrates ingesting a ModuleBayType entity.""" + with DiodeClient( + target=TARGET, + app_name=APP_NAME, + app_version=APP_VERSION, + client_id=CLIENT_ID, + client_secret=CLIENT_SECRET, + ) as client: + # Choose one of the three patterns: + module_bay_type = module_bay_type_minimal() + # module_bay_type = module_bay_type_extended() + # module_bay_type = module_bay_type_explicit() + + response = client.ingest(entities=[Entity(module_bay_type=module_bay_type)]) + if response.errors: + print(f"Errors: {response.errors}") + else: + print("ModuleBayType ingested successfully") + + +def module_bay_type_minimal() -> ModuleBayType: + """Create a ModuleBayType with only required fields using flat strings.""" + return ModuleBayType( + name="Example Name", + slug="example-slug", + metadata={"source": "example"}, + ) + + +def module_bay_type_extended() -> ModuleBayType: + """Create a ModuleBayType with common optional fields.""" + return ModuleBayType( + name="Example Name", + slug="example-slug", + metadata={"source": "example", "custom_key": "custom_value"}, + description="Example description", + color="0000ff", + manufacturer="Example Manufacturer", + comments="Example comments", + ) + + +def module_bay_type_explicit() -> ModuleBayType: + """Create a ModuleBayType with fully nested objects and all common fields.""" + return ModuleBayType( + name="Example Name", + slug="example-slug", + metadata={ + "source": "example", + "custom_key": "custom_value", + "collected_at": "2024-01-15T10:30:00Z", + }, + description="Example description", + color="0000ff", + comments="Example comments", + manufacturer=Manufacturer( + name="Example Name", slug="example-slug", metadata={"source": "example"} + ), + owner=Owner( + name="Example Name", + group=OwnerGroup(name="Example Name", metadata={"source": "example"}), + metadata={"source": "example"}, + ), + tags=[Tag(name="production")], + ) + + +if __name__ == "__main__": + main() diff --git a/docs/examples/module_type.py b/docs/examples/module_type.py index 285b312..ea9adc4 100644 --- a/docs/examples/module_type.py +++ b/docs/examples/module_type.py @@ -68,6 +68,7 @@ def module_type_extended() -> ModuleType: weight_unit="g", comments="Example comments", attributes="Example Attributes", + cooling_method="air", ) @@ -90,6 +91,7 @@ def module_type_explicit() -> ModuleType: weight=1.0, weight_unit="g", attributes="Example Attributes", + cooling_method="air", profile=ModuleTypeProfile(name="Example Name", metadata={"source": "example"}), owner=Owner( name="Example Name", diff --git a/docs/examples/rack.py b/docs/examples/rack.py index e4df201..ed16747 100644 --- a/docs/examples/rack.py +++ b/docs/examples/rack.py @@ -89,6 +89,8 @@ def rack_extended() -> Rack: airflow="front-to-rear", comments="Example comments", outer_height=1, + cooling_capability="air-only", + cooling_capacity=1.0, ) @@ -127,6 +129,8 @@ def rack_explicit() -> Rack: mounting_depth=1, airflow="front-to-rear", outer_height=1, + cooling_capability="air-only", + cooling_capacity=1.0, location=Location( name="Example Name", slug="example-slug", diff --git a/docs/examples/rack_type.py b/docs/examples/rack_type.py index 5ae26f6..d7848be 100644 --- a/docs/examples/rack_type.py +++ b/docs/examples/rack_type.py @@ -77,6 +77,8 @@ def rack_type_extended() -> RackType: mounting_depth=1, comments="Example comments", outer_height=1, + cooling_capability="air-only", + cooling_capacity=1.0, ) @@ -108,6 +110,8 @@ def rack_type_explicit() -> RackType: weight_unit="g", mounting_depth=1, outer_height=1, + cooling_capability="air-only", + cooling_capacity=1.0, owner=Owner( name="Example Name", group=OwnerGroup(name="Example Name", metadata={"source": "example"}), diff --git a/docs/examples/service.py b/docs/examples/service.py index b6e21b4..bbb9492 100644 --- a/docs/examples/service.py +++ b/docs/examples/service.py @@ -66,8 +66,8 @@ def service_extended() -> Service: metadata={"source": "example", "custom_key": "custom_value"}, description="Example description", device="Example Device", - protocol="sctp", comments="Example comments", + port_mappings=["tcp/80", "udp/53"], ) @@ -82,7 +82,7 @@ def service_explicit() -> Service: }, description="Example description", comments="Example comments", - protocol="sctp", + port_mappings=["tcp/80", "udp/53"], device=Device( device_type=DeviceType( manufacturer=Manufacturer( diff --git a/docs/examples/vm_interface.py b/docs/examples/vm_interface.py index c24c1a8..d57aa9e 100644 --- a/docs/examples/vm_interface.py +++ b/docs/examples/vm_interface.py @@ -68,6 +68,7 @@ def vm_interface_extended() -> VMInterface: enabled=True, mtu=1, mode="access", + mac_address="00:11:22:33:44:55", ) @@ -87,6 +88,7 @@ def vm_interface_explicit() -> VMInterface: enabled=True, mtu=1, mode="access", + mac_address="00:11:22:33:44:55", parent=VMInterface( virtual_machine=VirtualMachine( name="Example Name", status="active", metadata={"source": "example"} diff --git a/netboxlabs/diode/sdk/diode/v1/ingester_pb2.py b/netboxlabs/diode/sdk/diode/v1/ingester_pb2.py index 44e3030..2a8ed98 100644 --- a/netboxlabs/diode/sdk/diode/v1/ingester_pb2.py +++ b/netboxlabs/diode/sdk/diode/v1/ingester_pb2.py @@ -18,7 +18,7 @@ from netboxlabs.diode.sdk.validate import validate_pb2 as validate_dot_validate__pb2 -DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n\x17\x64iode/v1/ingester.proto\x12\x08\x64iode.v1\x1a google/protobuf/descriptor.proto\x1a\x1cgoogle/protobuf/struct.proto\x1a\x1fgoogle/protobuf/timestamp.proto\x1a\x17validate/validate.proto\"\xc1/\n\x06\x45ntity\x12\x44\n\ttimestamp\x18\x01 \x01(\x0b\x32\x1a.google.protobuf.TimestampB\n\xfa\x42\x07\xb2\x01\x04\x08\x01\x38\x01R\ttimestamp\x12!\n\x03\x61sn\x18\x02 \x01(\x0b\x32\r.diode.v1.ASNH\x00R\x03\x61sn\x12\x31\n\tasn_range\x18\x03 \x01(\x0b\x32\x12.diode.v1.ASNRangeH\x00R\x08\x61snRange\x12\x33\n\taggregate\x18\x04 \x01(\x0b\x32\x13.diode.v1.AggregateH\x00R\taggregate\x12\'\n\x05\x63\x61\x62le\x18\x05 \x01(\x0b\x32\x0f.diode.v1.CableH\x00R\x05\x63\x61\x62le\x12\x34\n\ncable_path\x18\x06 \x01(\x0b\x32\x13.diode.v1.CablePathH\x00R\tcablePath\x12M\n\x11\x63\x61\x62le_termination\x18\x07 \x01(\x0b\x32\x1a.diode.v1.CableTerminationB\x02\x18\x01H\x00R\x10\x63\x61\x62leTermination\x12-\n\x07\x63ircuit\x18\x08 \x01(\x0b\x32\x11.diode.v1.CircuitH\x00R\x07\x63ircuit\x12=\n\rcircuit_group\x18\t \x01(\x0b\x32\x16.diode.v1.CircuitGroupH\x00R\x0c\x63ircuitGroup\x12\\\n\x18\x63ircuit_group_assignment\x18\n \x01(\x0b\x32 .diode.v1.CircuitGroupAssignmentH\x00R\x16\x63ircuitGroupAssignment\x12O\n\x13\x63ircuit_termination\x18\x0b \x01(\x0b\x32\x1c.diode.v1.CircuitTerminationH\x00R\x12\x63ircuitTermination\x12:\n\x0c\x63ircuit_type\x18\x0c \x01(\x0b\x32\x15.diode.v1.CircuitTypeH\x00R\x0b\x63ircuitType\x12-\n\x07\x63luster\x18\r \x01(\x0b\x32\x11.diode.v1.ClusterH\x00R\x07\x63luster\x12=\n\rcluster_group\x18\x0e \x01(\x0b\x32\x16.diode.v1.ClusterGroupH\x00R\x0c\x63lusterGroup\x12:\n\x0c\x63luster_type\x18\x0f \x01(\x0b\x32\x15.diode.v1.ClusterTypeH\x00R\x0b\x63lusterType\x12:\n\x0c\x63onsole_port\x18\x10 \x01(\x0b\x32\x15.diode.v1.ConsolePortH\x00R\x0b\x63onsolePort\x12M\n\x13\x63onsole_server_port\x18\x11 \x01(\x0b\x32\x1b.diode.v1.ConsoleServerPortH\x00R\x11\x63onsoleServerPort\x12-\n\x07\x63ontact\x18\x12 \x01(\x0b\x32\x11.diode.v1.ContactH\x00R\x07\x63ontact\x12L\n\x12\x63ontact_assignment\x18\x13 \x01(\x0b\x32\x1b.diode.v1.ContactAssignmentH\x00R\x11\x63ontactAssignment\x12=\n\rcontact_group\x18\x14 \x01(\x0b\x32\x16.diode.v1.ContactGroupH\x00R\x0c\x63ontactGroup\x12:\n\x0c\x63ontact_role\x18\x15 \x01(\x0b\x32\x15.diode.v1.ContactRoleH\x00R\x0b\x63ontactRole\x12*\n\x06\x64\x65vice\x18\x16 \x01(\x0b\x32\x10.diode.v1.DeviceH\x00R\x06\x64\x65vice\x12\x34\n\ndevice_bay\x18\x17 \x01(\x0b\x32\x13.diode.v1.DeviceBayH\x00R\tdeviceBay\x12\x37\n\x0b\x64\x65vice_role\x18\x18 \x01(\x0b\x32\x14.diode.v1.DeviceRoleH\x00R\ndeviceRole\x12\x37\n\x0b\x64\x65vice_type\x18\x19 \x01(\x0b\x32\x14.diode.v1.DeviceTypeH\x00R\ndeviceType\x12\x34\n\nfhrp_group\x18\x1a \x01(\x0b\x32\x13.diode.v1.FHRPGroupH\x00R\tfhrpGroup\x12S\n\x15\x66hrp_group_assignment\x18\x1b \x01(\x0b\x32\x1d.diode.v1.FHRPGroupAssignmentH\x00R\x13\x66hrpGroupAssignment\x12\x34\n\nfront_port\x18\x1c \x01(\x0b\x32\x13.diode.v1.FrontPortH\x00R\tfrontPort\x12\x34\n\nike_policy\x18\x1d \x01(\x0b\x32\x13.diode.v1.IKEPolicyH\x00R\tikePolicy\x12:\n\x0cike_proposal\x18\x1e \x01(\x0b\x32\x15.diode.v1.IKEProposalH\x00R\x0bikeProposal\x12\x34\n\nip_address\x18\x1f \x01(\x0b\x32\x13.diode.v1.IPAddressH\x00R\tipAddress\x12.\n\x08ip_range\x18 \x01(\x0b\x32\x11.diode.v1.IPRangeH\x00R\x07ipRange\x12;\n\rip_sec_policy\x18! \x01(\x0b\x32\x15.diode.v1.IPSecPolicyH\x00R\x0bipSecPolicy\x12>\n\x0eip_sec_profile\x18\" \x01(\x0b\x32\x16.diode.v1.IPSecProfileH\x00R\x0cipSecProfile\x12\x41\n\x0fip_sec_proposal\x18# \x01(\x0b\x32\x17.diode.v1.IPSecProposalH\x00R\ripSecProposal\x12\x33\n\tinterface\x18$ \x01(\x0b\x32\x13.diode.v1.InterfaceH\x00R\tinterface\x12@\n\x0einventory_item\x18% \x01(\x0b\x32\x17.diode.v1.InventoryItemH\x00R\rinventoryItem\x12M\n\x13inventory_item_role\x18& \x01(\x0b\x32\x1b.diode.v1.InventoryItemRoleH\x00R\x11inventoryItemRole\x12\'\n\x05l2vpn\x18\' \x01(\x0b\x32\x0f.diode.v1.L2VPNH\x00R\x05l2vpn\x12I\n\x11l2vpn_termination\x18( \x01(\x0b\x32\x1a.diode.v1.L2VPNTerminationH\x00R\x10l2vpnTermination\x12\x30\n\x08location\x18) \x01(\x0b\x32\x12.diode.v1.LocationH\x00R\x08location\x12\x37\n\x0bmac_address\x18* \x01(\x0b\x32\x14.diode.v1.MACAddressH\x00R\nmacAddress\x12<\n\x0cmanufacturer\x18+ \x01(\x0b\x32\x16.diode.v1.ManufacturerH\x00R\x0cmanufacturer\x12*\n\x06module\x18, \x01(\x0b\x32\x10.diode.v1.ModuleH\x00R\x06module\x12\x34\n\nmodule_bay\x18- \x01(\x0b\x32\x13.diode.v1.ModuleBayH\x00R\tmoduleBay\x12\x37\n\x0bmodule_type\x18. \x01(\x0b\x32\x14.diode.v1.ModuleTypeH\x00R\nmoduleType\x12\x30\n\x08platform\x18/ \x01(\x0b\x32\x12.diode.v1.PlatformH\x00R\x08platform\x12\x34\n\npower_feed\x18\x30 \x01(\x0b\x32\x13.diode.v1.PowerFeedH\x00R\tpowerFeed\x12:\n\x0cpower_outlet\x18\x31 \x01(\x0b\x32\x15.diode.v1.PowerOutletH\x00R\x0bpowerOutlet\x12\x37\n\x0bpower_panel\x18\x32 \x01(\x0b\x32\x14.diode.v1.PowerPanelH\x00R\npowerPanel\x12\x34\n\npower_port\x18\x33 \x01(\x0b\x32\x13.diode.v1.PowerPortH\x00R\tpowerPort\x12*\n\x06prefix\x18\x34 \x01(\x0b\x32\x10.diode.v1.PrefixH\x00R\x06prefix\x12\x30\n\x08provider\x18\x35 \x01(\x0b\x32\x12.diode.v1.ProviderH\x00R\x08provider\x12\x46\n\x10provider_account\x18\x36 \x01(\x0b\x32\x19.diode.v1.ProviderAccountH\x00R\x0fproviderAccount\x12\x46\n\x10provider_network\x18\x37 \x01(\x0b\x32\x19.diode.v1.ProviderNetworkH\x00R\x0fproviderNetwork\x12!\n\x03rir\x18\x38 \x01(\x0b\x32\r.diode.v1.RIRH\x00R\x03rir\x12$\n\x04rack\x18\x39 \x01(\x0b\x32\x0e.diode.v1.RackH\x00R\x04rack\x12\x46\n\x10rack_reservation\x18: \x01(\x0b\x32\x19.diode.v1.RackReservationH\x00R\x0frackReservation\x12\x31\n\track_role\x18; \x01(\x0b\x32\x12.diode.v1.RackRoleH\x00R\x08rackRole\x12\x31\n\track_type\x18< \x01(\x0b\x32\x12.diode.v1.RackTypeH\x00R\x08rackType\x12\x31\n\trear_port\x18= \x01(\x0b\x32\x12.diode.v1.RearPortH\x00R\x08rearPort\x12*\n\x06region\x18> \x01(\x0b\x32\x10.diode.v1.RegionH\x00R\x06region\x12$\n\x04role\x18? \x01(\x0b\x32\x0e.diode.v1.RoleH\x00R\x04role\x12:\n\x0croute_target\x18@ \x01(\x0b\x32\x15.diode.v1.RouteTargetH\x00R\x0brouteTarget\x12-\n\x07service\x18\x41 \x01(\x0b\x32\x11.diode.v1.ServiceH\x00R\x07service\x12$\n\x04site\x18\x42 \x01(\x0b\x32\x0e.diode.v1.SiteH\x00R\x04site\x12\x34\n\nsite_group\x18\x43 \x01(\x0b\x32\x13.diode.v1.SiteGroupH\x00R\tsiteGroup\x12!\n\x03tag\x18\x44 \x01(\x0b\x32\r.diode.v1.TagH\x00R\x03tag\x12*\n\x06tenant\x18\x45 \x01(\x0b\x32\x10.diode.v1.TenantH\x00R\x06tenant\x12:\n\x0ctenant_group\x18\x46 \x01(\x0b\x32\x15.diode.v1.TenantGroupH\x00R\x0btenantGroup\x12*\n\x06tunnel\x18G \x01(\x0b\x32\x10.diode.v1.TunnelH\x00R\x06tunnel\x12:\n\x0ctunnel_group\x18H \x01(\x0b\x32\x15.diode.v1.TunnelGroupH\x00R\x0btunnelGroup\x12L\n\x12tunnel_termination\x18I \x01(\x0b\x32\x1b.diode.v1.TunnelTerminationH\x00R\x11tunnelTermination\x12$\n\x04vlan\x18J \x01(\x0b\x32\x0e.diode.v1.VLANH\x00R\x04vlan\x12\x34\n\nvlan_group\x18K \x01(\x0b\x32\x13.diode.v1.VLANGroupH\x00R\tvlanGroup\x12Y\n\x17vlan_translation_policy\x18L \x01(\x0b\x32\x1f.diode.v1.VLANTranslationPolicyH\x00R\x15vlanTranslationPolicy\x12S\n\x15vlan_translation_rule\x18M \x01(\x0b\x32\x1d.diode.v1.VLANTranslationRuleH\x00R\x13vlanTranslationRule\x12:\n\x0cvm_interface\x18N \x01(\x0b\x32\x15.diode.v1.VMInterfaceH\x00R\x0bvmInterface\x12!\n\x03vrf\x18O \x01(\x0b\x32\r.diode.v1.VRFH\x00R\x03vrf\x12\x43\n\x0fvirtual_chassis\x18P \x01(\x0b\x32\x18.diode.v1.VirtualChassisH\x00R\x0evirtualChassis\x12\x43\n\x0fvirtual_circuit\x18Q \x01(\x0b\x32\x18.diode.v1.VirtualCircuitH\x00R\x0evirtualCircuit\x12\x65\n\x1bvirtual_circuit_termination\x18R \x01(\x0b\x32#.diode.v1.VirtualCircuitTerminationH\x00R\x19virtualCircuitTermination\x12P\n\x14virtual_circuit_type\x18S \x01(\x0b\x32\x1c.diode.v1.VirtualCircuitTypeH\x00R\x12virtualCircuitType\x12V\n\x16virtual_device_context\x18T \x01(\x0b\x32\x1e.diode.v1.VirtualDeviceContextH\x00R\x14virtualDeviceContext\x12:\n\x0cvirtual_disk\x18U \x01(\x0b\x32\x15.diode.v1.VirtualDiskH\x00R\x0bvirtualDisk\x12\x43\n\x0fvirtual_machine\x18V \x01(\x0b\x32\x18.diode.v1.VirtualMachineH\x00R\x0evirtualMachine\x12:\n\x0cwireless_lan\x18W \x01(\x0b\x32\x15.diode.v1.WirelessLANH\x00R\x0bwirelessLan\x12J\n\x12wireless_lan_group\x18X \x01(\x0b\x32\x1a.diode.v1.WirelessLANGroupH\x00R\x10wirelessLanGroup\x12=\n\rwireless_link\x18Y \x01(\x0b\x32\x16.diode.v1.WirelessLinkH\x00R\x0cwirelessLink\x12:\n\x0c\x63ustom_field\x18Z \x01(\x0b\x32\x15.diode.v1.CustomFieldH\x00R\x0b\x63ustomField\x12W\n\x17\x63ustom_field_choice_set\x18[ \x01(\x0b\x32\x1e.diode.v1.CustomFieldChoiceSetH\x00R\x14\x63ustomFieldChoiceSet\x12=\n\rjournal_entry\x18\\ \x01(\x0b\x32\x16.diode.v1.JournalEntryH\x00R\x0cjournalEntry\x12M\n\x13module_type_profile\x18] \x01(\x0b\x32\x1b.diode.v1.ModuleTypeProfileH\x00R\x11moduleTypeProfile\x12\x37\n\x0b\x63ustom_link\x18^ \x01(\x0b\x32\x14.diode.v1.CustomLinkH\x00R\ncustomLink\x12\'\n\x05owner\x18_ \x01(\x0b\x32\x0f.diode.v1.OwnerH\x00R\x05owner\x12\x37\n\x0bowner_group\x18` \x01(\x0b\x32\x14.diode.v1.OwnerGroupH\x00R\nownerGroup\x12\x43\n\rdevice_config\x18\x61 \x01(\x0b\x32\x16.diode.v1.DeviceConfigB\x04\x88\xb5\x18\x00H\x00R\x0c\x64\x65viceConfig\x12:\n\x0c\x63\x61\x62le_bundle\x18\x62 \x01(\x0b\x32\x15.diode.v1.CableBundleH\x00R\x0b\x63\x61\x62leBundle\x12\x34\n\nrack_group\x18\x63 \x01(\x0b\x32\x13.diode.v1.RackGroupH\x00R\trackGroup\x12=\n\rscript_module\x18\x64 \x01(\x0b\x32\x16.diode.v1.ScriptModuleH\x00R\x0cscriptModule\x12P\n\x14virtual_machine_type\x18\x65 \x01(\x0b\x32\x1c.diode.v1.VirtualMachineTypeH\x00R\x12virtualMachineType\x12$\n\x04user\x18\x66 \x01(\x0b\x32\x0e.diode.v1.UserH\x00R\x04userB\x08\n\x06\x65ntity\"\x99\x03\n\rIngestRequest\x12\"\n\x06stream\x18\x01 \x01(\tB\n\xfa\x42\x07r\x05\x10\x01\x18\xff\x01R\x06stream\x12\x39\n\x08\x65ntities\x18\x02 \x03(\x0b\x32\x10.diode.v1.EntityB\x0b\xfa\x42\x08\x92\x01\x05\x08\x01\x10\xe8\x07R\x08\x65ntities\x12\x18\n\x02id\x18\x03 \x01(\tB\x08\xfa\x42\x05r\x03\xb0\x01\x01R\x02id\x12\x36\n\x11producer_app_name\x18\x04 \x01(\tB\n\xfa\x42\x07r\x05\x10\x01\x18\xff\x01R\x0fproducerAppName\x12<\n\x14producer_app_version\x18\x05 \x01(\tB\n\xfa\x42\x07r\x05\x10\x01\x18\xff\x01R\x12producerAppVersion\x12%\n\x08sdk_name\x18\x06 \x01(\tB\n\xfa\x42\x07r\x05\x10\x01\x18\xff\x01R\x07sdkName\x12=\n\x0bsdk_version\x18\x07 \x01(\tB\x1c\xfa\x42\x19r\x17\x32\x15^(\\d)+\\.(\\d)+\\.(\\d)+$R\nsdkVersion\x12\x33\n\x08metadata\x18\x08 \x01(\x0b\x32\x17.google.protobuf.StructR\x08metadata\"(\n\x0eIngestResponse\x12\x16\n\x06\x65rrors\x18\x01 \x03(\tR\x06\x65rrors\"\xf3\x04\n\x03\x41SN\x12\x10\n\x03\x61sn\x18\x01 \x01(\x03R\x03\x61sn\x12$\n\x03rir\x18\x02 \x01(\x0b\x32\r.diode.v1.RIRH\x00R\x03rir\x88\x01\x01\x12-\n\x06tenant\x18\x03 \x01(\x0b\x32\x10.diode.v1.TenantH\x01R\x06tenant\x88\x01\x01\x12%\n\x0b\x64\x65scription\x18\x04 \x01(\tH\x02R\x0b\x64\x65scription\x88\x01\x01\x12\x1f\n\x08\x63omments\x18\x05 \x01(\tH\x03R\x08\x63omments\x88\x01\x01\x12!\n\x04tags\x18\x06 \x03(\x0b\x32\r.diode.v1.TagR\x04tags\x12\x44\n\rcustom_fields\x18\x07 \x03(\x0b\x32\x1f.diode.v1.ASN.CustomFieldsEntryR\x0c\x63ustomFields\x12\x39\n\x08metadata\x18\x08 \x01(\x0b\x32\x17.google.protobuf.StructB\x04\x88\xb5\x18\x00R\x08metadata\x12*\n\x05owner\x18\t \x01(\x0b\x32\x0f.diode.v1.OwnerH\x04R\x05owner\x88\x01\x01\x12$\n\x05sites\x18\n \x03(\x0b\x32\x0e.diode.v1.SiteR\x05sites\x12\'\n\x04role\x18\x0b \x01(\x0b\x32\x0e.diode.v1.RoleH\x05R\x04role\x88\x01\x01\x1a[\n\x11\x43ustomFieldsEntry\x12\x10\n\x03key\x18\x01 \x01(\tR\x03key\x12\x30\n\x05value\x18\x02 \x01(\x0b\x32\x1a.diode.v1.CustomFieldValueR\x05value:\x02\x38\x01\x42\x06\n\x04_rirB\t\n\x07_tenantB\x0e\n\x0c_descriptionB\x0b\n\t_commentsB\x08\n\x06_ownerB\x07\n\x05_role\"\xd6\x04\n\x08\x41SNRange\x12\x12\n\x04name\x18\x01 \x01(\tR\x04name\x12\x12\n\x04slug\x18\x02 \x01(\tR\x04slug\x12\x1f\n\x03rir\x18\x03 \x01(\x0b\x32\r.diode.v1.RIRR\x03rir\x12\x14\n\x05start\x18\x04 \x01(\x03R\x05start\x12\x10\n\x03\x65nd\x18\x05 \x01(\x03R\x03\x65nd\x12-\n\x06tenant\x18\x06 \x01(\x0b\x32\x10.diode.v1.TenantH\x00R\x06tenant\x88\x01\x01\x12%\n\x0b\x64\x65scription\x18\x07 \x01(\tH\x01R\x0b\x64\x65scription\x88\x01\x01\x12!\n\x04tags\x18\x08 \x03(\x0b\x32\r.diode.v1.TagR\x04tags\x12I\n\rcustom_fields\x18\t \x03(\x0b\x32$.diode.v1.ASNRange.CustomFieldsEntryR\x0c\x63ustomFields\x12\x39\n\x08metadata\x18\n \x01(\x0b\x32\x17.google.protobuf.StructB\x04\x88\xb5\x18\x00R\x08metadata\x12*\n\x05owner\x18\x0b \x01(\x0b\x32\x0f.diode.v1.OwnerH\x02R\x05owner\x88\x01\x01\x12\x1f\n\x08\x63omments\x18\x0c \x01(\tH\x03R\x08\x63omments\x88\x01\x01\x1a[\n\x11\x43ustomFieldsEntry\x12\x10\n\x03key\x18\x01 \x01(\tR\x03key\x12\x30\n\x05value\x18\x02 \x01(\x0b\x32\x1a.diode.v1.CustomFieldValueR\x05value:\x02\x38\x01\x42\t\n\x07_tenantB\x0e\n\x0c_descriptionB\x08\n\x06_ownerB\x0b\n\t_comments\"\xef\x04\n\tAggregate\x12\x16\n\x06prefix\x18\x01 \x01(\tR\x06prefix\x12\x1f\n\x03rir\x18\x02 \x01(\x0b\x32\r.diode.v1.RIRR\x03rir\x12-\n\x06tenant\x18\x03 \x01(\x0b\x32\x10.diode.v1.TenantH\x00R\x06tenant\x88\x01\x01\x12>\n\ndate_added\x18\x04 \x01(\x0b\x32\x1a.google.protobuf.TimestampH\x01R\tdateAdded\x88\x01\x01\x12%\n\x0b\x64\x65scription\x18\x05 \x01(\tH\x02R\x0b\x64\x65scription\x88\x01\x01\x12\x1f\n\x08\x63omments\x18\x06 \x01(\tH\x03R\x08\x63omments\x88\x01\x01\x12!\n\x04tags\x18\x07 \x03(\x0b\x32\r.diode.v1.TagR\x04tags\x12J\n\rcustom_fields\x18\x08 \x03(\x0b\x32%.diode.v1.Aggregate.CustomFieldsEntryR\x0c\x63ustomFields\x12\x39\n\x08metadata\x18\t \x01(\x0b\x32\x17.google.protobuf.StructB\x04\x88\xb5\x18\x00R\x08metadata\x12*\n\x05owner\x18\n \x01(\x0b\x32\x0f.diode.v1.OwnerH\x04R\x05owner\x88\x01\x01\x1a[\n\x11\x43ustomFieldsEntry\x12\x10\n\x03key\x18\x01 \x01(\tR\x03key\x12\x30\n\x05value\x18\x02 \x01(\x0b\x32\x1a.diode.v1.CustomFieldValueR\x05value:\x02\x38\x01\x42\t\n\x07_tenantB\r\n\x0b_date_addedB\x0e\n\x0c_descriptionB\x0b\n\t_commentsB\x08\n\x06_owner\"\x89\r\n\x05\x43\x61\x62le\x12\xa1\x02\n\x04type\x18\x01 \x01(\tB\x87\x02\xfa\x42\x83\x02r\x80\x02R\x03\x61ocR\x04\x63\x61t3R\x04\x63\x61t5R\x05\x63\x61t5eR\x04\x63\x61t6R\x05\x63\x61t6aR\x04\x63\x61t7R\x05\x63\x61t7aR\x04\x63\x61t8R\x07\x63oaxialR\ndac-activeR\x0b\x64\x61\x63-passiveR\x07lmr-100R\x07lmr-200R\x07lmr-400R\x03mmfR\x07mmf-om1R\x07mmf-om2R\x07mmf-om3R\x07mmf-om4R\x07mmf-om5R\x0bmrj21-trunkR\x05powerR\x05rg-11R\x06rg-213R\x05rg-59R\x04rg-6R\x05rg-62R\x04rg-8R\x03smfR\x07smf-os1R\x07smf-os2R\x03usbH\x00R\x04type\x88\x01\x01\x12>\n\x0e\x61_terminations\x18\x02 \x03(\x0b\x32\x17.diode.v1.GenericObjectR\raTerminations\x12>\n\x0e\x62_terminations\x18\x03 \x03(\x0b\x32\x17.diode.v1.GenericObjectR\rbTerminations\x12G\n\x06status\x18\x04 \x01(\tB*\xfa\x42\'r%R\tconnectedR\x0f\x64\x65\x63ommissioningR\x07plannedH\x01R\x06status\x88\x01\x01\x12-\n\x06tenant\x18\x05 \x01(\x0b\x32\x10.diode.v1.TenantH\x02R\x06tenant\x88\x01\x01\x12\x19\n\x05label\x18\x06 \x01(\tH\x03R\x05label\x88\x01\x01\x12\x19\n\x05\x63olor\x18\x07 \x01(\tH\x04R\x05\x63olor\x88\x01\x01\x12\x1b\n\x06length\x18\x08 \x01(\x01H\x05R\x06length\x88\x01\x01\x12\x42\n\x0blength_unit\x18\t \x01(\tB\x1c\xfa\x42\x19r\x17R\x02\x63mR\x02\x66tR\x02inR\x02kmR\x01mR\x02miH\x06R\nlengthUnit\x88\x01\x01\x12%\n\x0b\x64\x65scription\x18\n \x01(\tH\x07R\x0b\x64\x65scription\x88\x01\x01\x12\x1f\n\x08\x63omments\x18\x0b \x01(\tH\x08R\x08\x63omments\x88\x01\x01\x12!\n\x04tags\x18\x0c \x03(\x0b\x32\r.diode.v1.TagR\x04tags\x12\x46\n\rcustom_fields\x18\r \x03(\x0b\x32!.diode.v1.Cable.CustomFieldsEntryR\x0c\x63ustomFields\x12\x39\n\x08metadata\x18\x0e \x01(\x0b\x32\x17.google.protobuf.StructB\x04\x88\xb5\x18\x00R\x08metadata\x12\x95\x03\n\x07profile\x18\x0f \x01(\tB\xf5\x02\xfa\x42\xf1\x02r\xee\x02R\x12\x62reakout-1c2p-2c1pR\x12\x62reakout-1c4p-4c1pR\x12\x62reakout-1c6p-6c1pR\x1a\x62reakout-2c4p-8c1p-shuffleR\x0csingle-1c12pR\x0csingle-1c16pR\x0bsingle-1c1pR\x0bsingle-1c2pR\x0bsingle-1c4pR\x0bsingle-1c6pR\x0bsingle-1c8pR\x0btrunk-2c12pR\ntrunk-2c1pR\ntrunk-2c2pR\ntrunk-2c4pR\x12trunk-2c4p-shuffleR\ntrunk-2c6pR\ntrunk-2c8pR\ntrunk-4c1pR\ntrunk-4c2pR\ntrunk-4c4pR\x12trunk-4c4p-shuffleR\ntrunk-4c6pR\ntrunk-4c8pR\ntrunk-8c4pH\tR\x07profile\x88\x01\x01\x12*\n\x05owner\x18\x10 \x01(\x0b\x32\x0f.diode.v1.OwnerH\nR\x05owner\x88\x01\x01\x12\x32\n\x06\x62undle\x18\x11 \x01(\x0b\x32\x15.diode.v1.CableBundleH\x0bR\x06\x62undle\x88\x01\x01\x1a[\n\x11\x43ustomFieldsEntry\x12\x10\n\x03key\x18\x01 \x01(\tR\x03key\x12\x30\n\x05value\x18\x02 \x01(\x0b\x32\x1a.diode.v1.CustomFieldValueR\x05value:\x02\x38\x01\x42\x07\n\x05_typeB\t\n\x07_statusB\t\n\x07_tenantB\x08\n\x06_labelB\x08\n\x06_colorB\t\n\x07_lengthB\x0e\n\x0c_length_unitB\x0e\n\x0c_descriptionB\x0b\n\t_commentsB\n\n\x08_profileB\x08\n\x06_ownerB\t\n\x07_bundle\"\xd9\x01\n\tCablePath\x12 \n\tis_active\x18\x01 \x01(\x08H\x00R\x08isActive\x88\x01\x01\x12$\n\x0bis_complete\x18\x02 \x01(\x08H\x01R\nisComplete\x88\x01\x01\x12\x1e\n\x08is_split\x18\x03 \x01(\x08H\x02R\x07isSplit\x88\x01\x01\x12\x39\n\x08metadata\x18\x04 \x01(\x0b\x32\x17.google.protobuf.StructB\x04\x88\xb5\x18\x00R\x08metadataB\x0c\n\n_is_activeB\x0e\n\x0c_is_completeB\x0b\n\t_is_split\"\x9e\x07\n\x10\x43\x61\x62leTermination\x12%\n\x05\x63\x61\x62le\x18\x01 \x01(\x0b\x32\x0f.diode.v1.CableR\x05\x63\x61\x62le\x12(\n\tcable_end\x18\x02 \x01(\tB\x0b\xfa\x42\x08r\x06R\x01\x41R\x01\x42R\x08\x63\x61\x62leEnd\x12\x66\n\x1ftermination_circuit_termination\x18\x03 \x01(\x0b\x32\x1c.diode.v1.CircuitTerminationH\x00R\x1dterminationCircuitTermination\x12Q\n\x18termination_console_port\x18\x04 \x01(\x0b\x32\x15.diode.v1.ConsolePortH\x00R\x16terminationConsolePort\x12\x64\n\x1ftermination_console_server_port\x18\x05 \x01(\x0b\x32\x1b.diode.v1.ConsoleServerPortH\x00R\x1cterminationConsoleServerPort\x12K\n\x16termination_front_port\x18\x06 \x01(\x0b\x32\x13.diode.v1.FrontPortH\x00R\x14terminationFrontPort\x12J\n\x15termination_interface\x18\x07 \x01(\x0b\x32\x13.diode.v1.InterfaceH\x00R\x14terminationInterface\x12K\n\x16termination_power_feed\x18\x08 \x01(\x0b\x32\x13.diode.v1.PowerFeedH\x00R\x14terminationPowerFeed\x12Q\n\x18termination_power_outlet\x18\t \x01(\x0b\x32\x15.diode.v1.PowerOutletH\x00R\x16terminationPowerOutlet\x12K\n\x16termination_power_port\x18\n \x01(\x0b\x32\x13.diode.v1.PowerPortH\x00R\x14terminationPowerPort\x12H\n\x15termination_rear_port\x18\x0b \x01(\x0b\x32\x12.diode.v1.RearPortH\x00R\x13terminationRearPort\x12\x39\n\x08metadata\x18\x0c \x01(\x0b\x32\x17.google.protobuf.StructB\x04\x88\xb5\x18\x00R\x08metadataB\r\n\x0btermination\"\xd7\t\n\x07\x43ircuit\x12\x10\n\x03\x63id\x18\x01 \x01(\tR\x03\x63id\x12.\n\x08provider\x18\x02 \x01(\x0b\x32\x12.diode.v1.ProviderR\x08provider\x12I\n\x10provider_account\x18\x03 \x01(\x0b\x32\x19.diode.v1.ProviderAccountH\x00R\x0fproviderAccount\x88\x01\x01\x12)\n\x04type\x18\x04 \x01(\x0b\x32\x15.diode.v1.CircuitTypeR\x04type\x12j\n\x06status\x18\x05 \x01(\tBM\xfa\x42JrHR\x06\x61\x63tiveR\x0e\x64\x65\x63ommissionedR\x0e\x64\x65provisioningR\x07offlineR\x07plannedR\x0cprovisioningH\x01R\x06status\x88\x01\x01\x12-\n\x06tenant\x18\x06 \x01(\x0b\x32\x10.diode.v1.TenantH\x02R\x06tenant\x88\x01\x01\x12\x42\n\x0cinstall_date\x18\x07 \x01(\x0b\x32\x1a.google.protobuf.TimestampH\x03R\x0binstallDate\x88\x01\x01\x12J\n\x10termination_date\x18\x08 \x01(\x0b\x32\x1a.google.protobuf.TimestampH\x04R\x0fterminationDate\x88\x01\x01\x12$\n\x0b\x63ommit_rate\x18\t \x01(\x03H\x05R\ncommitRate\x88\x01\x01\x12%\n\x0b\x64\x65scription\x18\n \x01(\tH\x06R\x0b\x64\x65scription\x88\x01\x01\x12\x1f\n\x08\x64istance\x18\x0b \x01(\x01H\x07R\x08\x64istance\x88\x01\x01\x12>\n\rdistance_unit\x18\x0c \x01(\tB\x14\xfa\x42\x11r\x0fR\x02\x66tR\x02kmR\x01mR\x02miH\x08R\x0c\x64istanceUnit\x88\x01\x01\x12\x1f\n\x08\x63omments\x18\r \x01(\tH\tR\x08\x63omments\x88\x01\x01\x12!\n\x04tags\x18\x0e \x03(\x0b\x32\r.diode.v1.TagR\x04tags\x12\x42\n\x0b\x61ssignments\x18\x0f \x03(\x0b\x32 .diode.v1.CircuitGroupAssignmentR\x0b\x61ssignments\x12H\n\rcustom_fields\x18\x10 \x03(\x0b\x32#.diode.v1.Circuit.CustomFieldsEntryR\x0c\x63ustomFields\x12\x39\n\x08metadata\x18\x11 \x01(\x0b\x32\x17.google.protobuf.StructB\x04\x88\xb5\x18\x00R\x08metadata\x12*\n\x05owner\x18\x12 \x01(\x0b\x32\x0f.diode.v1.OwnerH\nR\x05owner\x88\x01\x01\x1a[\n\x11\x43ustomFieldsEntry\x12\x10\n\x03key\x18\x01 \x01(\tR\x03key\x12\x30\n\x05value\x18\x02 \x01(\x0b\x32\x1a.diode.v1.CustomFieldValueR\x05value:\x02\x38\x01\x42\x13\n\x11_provider_accountB\t\n\x07_statusB\t\n\x07_tenantB\x0f\n\r_install_dateB\x13\n\x11_termination_dateB\x0e\n\x0c_commit_rateB\x0e\n\x0c_descriptionB\x0b\n\t_distanceB\x10\n\x0e_distance_unitB\x0b\n\t_commentsB\x08\n\x06_owner\"\x95\x04\n\x0c\x43ircuitGroup\x12\x12\n\x04name\x18\x01 \x01(\tR\x04name\x12\x12\n\x04slug\x18\x02 \x01(\tR\x04slug\x12%\n\x0b\x64\x65scription\x18\x03 \x01(\tH\x00R\x0b\x64\x65scription\x88\x01\x01\x12-\n\x06tenant\x18\x04 \x01(\x0b\x32\x10.diode.v1.TenantH\x01R\x06tenant\x88\x01\x01\x12!\n\x04tags\x18\x05 \x03(\x0b\x32\r.diode.v1.TagR\x04tags\x12M\n\rcustom_fields\x18\x06 \x03(\x0b\x32(.diode.v1.CircuitGroup.CustomFieldsEntryR\x0c\x63ustomFields\x12\x39\n\x08metadata\x18\x07 \x01(\x0b\x32\x17.google.protobuf.StructB\x04\x88\xb5\x18\x00R\x08metadata\x12*\n\x05owner\x18\x08 \x01(\x0b\x32\x0f.diode.v1.OwnerH\x02R\x05owner\x88\x01\x01\x12\x1f\n\x08\x63omments\x18\t \x01(\tH\x03R\x08\x63omments\x88\x01\x01\x1a[\n\x11\x43ustomFieldsEntry\x12\x10\n\x03key\x18\x01 \x01(\tR\x03key\x12\x30\n\x05value\x18\x02 \x01(\x0b\x32\x1a.diode.v1.CustomFieldValueR\x05value:\x02\x38\x01\x42\x0e\n\x0c_descriptionB\t\n\x07_tenantB\x08\n\x06_ownerB\x0b\n\t_comments\"\x99\x03\n\x16\x43ircuitGroupAssignment\x12,\n\x05group\x18\x01 \x01(\x0b\x32\x16.diode.v1.CircuitGroupR\x05group\x12:\n\x0emember_circuit\x18\x02 \x01(\x0b\x32\x11.diode.v1.CircuitH\x00R\rmemberCircuit\x12P\n\x16member_virtual_circuit\x18\x03 \x01(\x0b\x32\x18.diode.v1.VirtualCircuitH\x00R\x14memberVirtualCircuit\x12N\n\x08priority\x18\x04 \x01(\tB-\xfa\x42*r(R\x08inactiveR\x07primaryR\tsecondaryR\x08tertiaryH\x01R\x08priority\x88\x01\x01\x12!\n\x04tags\x18\x05 \x03(\x0b\x32\r.diode.v1.TagR\x04tags\x12\x39\n\x08metadata\x18\x06 \x01(\x0b\x32\x17.google.protobuf.StructB\x04\x88\xb5\x18\x00R\x08metadataB\x08\n\x06memberB\x0b\n\t_priority\"\xc7\x08\n\x12\x43ircuitTermination\x12+\n\x07\x63ircuit\x18\x01 \x01(\x0b\x32\x11.diode.v1.CircuitR\x07\x63ircuit\x12(\n\tterm_side\x18\x02 \x01(\tB\x0b\xfa\x42\x08r\x06R\x01\x41R\x01ZR\x08termSide\x12G\n\x14termination_location\x18\x03 \x01(\x0b\x32\x12.diode.v1.LocationH\x00R\x13terminationLocation\x12]\n\x1ctermination_provider_network\x18\x04 \x01(\x0b\x32\x19.diode.v1.ProviderNetworkH\x00R\x1aterminationProviderNetwork\x12\x41\n\x12termination_region\x18\x05 \x01(\x0b\x32\x10.diode.v1.RegionH\x00R\x11terminationRegion\x12;\n\x10termination_site\x18\x06 \x01(\x0b\x32\x0e.diode.v1.SiteH\x00R\x0fterminationSite\x12K\n\x16termination_site_group\x18\x07 \x01(\x0b\x32\x13.diode.v1.SiteGroupH\x00R\x14terminationSiteGroup\x12\"\n\nport_speed\x18\x08 \x01(\x03H\x01R\tportSpeed\x88\x01\x01\x12*\n\x0eupstream_speed\x18\t \x01(\x03H\x02R\rupstreamSpeed\x88\x01\x01\x12$\n\x0bxconnect_id\x18\n \x01(\tH\x03R\nxconnectId\x88\x01\x01\x12\x1c\n\x07pp_info\x18\x0b \x01(\tH\x04R\x06ppInfo\x88\x01\x01\x12%\n\x0b\x64\x65scription\x18\x0c \x01(\tH\x05R\x0b\x64\x65scription\x88\x01\x01\x12*\n\x0emark_connected\x18\r \x01(\x08H\x06R\rmarkConnected\x88\x01\x01\x12!\n\x04tags\x18\x0e \x03(\x0b\x32\r.diode.v1.TagR\x04tags\x12S\n\rcustom_fields\x18\x0f \x03(\x0b\x32..diode.v1.CircuitTermination.CustomFieldsEntryR\x0c\x63ustomFields\x12\x39\n\x08metadata\x18\x10 \x01(\x0b\x32\x17.google.protobuf.StructB\x04\x88\xb5\x18\x00R\x08metadata\x1a[\n\x11\x43ustomFieldsEntry\x12\x10\n\x03key\x18\x01 \x01(\tR\x03key\x12\x30\n\x05value\x18\x02 \x01(\x0b\x32\x1a.diode.v1.CustomFieldValueR\x05value:\x02\x38\x01\x42\r\n\x0bterminationB\r\n\x0b_port_speedB\x11\n\x0f_upstream_speedB\x0e\n\x0c_xconnect_idB\n\n\x08_pp_infoB\x0e\n\x0c_descriptionB\x11\n\x0f_mark_connected\"\xfe\x03\n\x0b\x43ircuitType\x12\x12\n\x04name\x18\x01 \x01(\tR\x04name\x12\x12\n\x04slug\x18\x02 \x01(\tR\x04slug\x12\x19\n\x05\x63olor\x18\x03 \x01(\tH\x00R\x05\x63olor\x88\x01\x01\x12%\n\x0b\x64\x65scription\x18\x04 \x01(\tH\x01R\x0b\x64\x65scription\x88\x01\x01\x12!\n\x04tags\x18\x05 \x03(\x0b\x32\r.diode.v1.TagR\x04tags\x12L\n\rcustom_fields\x18\x06 \x03(\x0b\x32\'.diode.v1.CircuitType.CustomFieldsEntryR\x0c\x63ustomFields\x12\x39\n\x08metadata\x18\x07 \x01(\x0b\x32\x17.google.protobuf.StructB\x04\x88\xb5\x18\x00R\x08metadata\x12*\n\x05owner\x18\x08 \x01(\x0b\x32\x0f.diode.v1.OwnerH\x02R\x05owner\x88\x01\x01\x12\x1f\n\x08\x63omments\x18\t \x01(\tH\x03R\x08\x63omments\x88\x01\x01\x1a[\n\x11\x43ustomFieldsEntry\x12\x10\n\x03key\x18\x01 \x01(\tR\x03key\x12\x30\n\x05value\x18\x02 \x01(\x0b\x32\x1a.diode.v1.CustomFieldValueR\x05value:\x02\x38\x01\x42\x08\n\x06_colorB\x0e\n\x0c_descriptionB\x08\n\x06_ownerB\x0b\n\t_comments\"\xb1\x07\n\x07\x43luster\x12\x12\n\x04name\x18\x01 \x01(\tR\x04name\x12)\n\x04type\x18\x02 \x01(\x0b\x32\x15.diode.v1.ClusterTypeR\x04type\x12\x31\n\x05group\x18\x03 \x01(\x0b\x32\x16.diode.v1.ClusterGroupH\x01R\x05group\x88\x01\x01\x12V\n\x06status\x18\x04 \x01(\tB9\xfa\x42\x36r4R\x06\x61\x63tiveR\x0f\x64\x65\x63ommissioningR\x07offlineR\x07plannedR\x07stagingH\x02R\x06status\x88\x01\x01\x12-\n\x06tenant\x18\x05 \x01(\x0b\x32\x10.diode.v1.TenantH\x03R\x06tenant\x88\x01\x01\x12;\n\x0escope_location\x18\x06 \x01(\x0b\x32\x12.diode.v1.LocationH\x00R\rscopeLocation\x12\x35\n\x0cscope_region\x18\x07 \x01(\x0b\x32\x10.diode.v1.RegionH\x00R\x0bscopeRegion\x12/\n\nscope_site\x18\x08 \x01(\x0b\x32\x0e.diode.v1.SiteH\x00R\tscopeSite\x12?\n\x10scope_site_group\x18\t \x01(\x0b\x32\x13.diode.v1.SiteGroupH\x00R\x0escopeSiteGroup\x12%\n\x0b\x64\x65scription\x18\n \x01(\tH\x04R\x0b\x64\x65scription\x88\x01\x01\x12\x1f\n\x08\x63omments\x18\x0b \x01(\tH\x05R\x08\x63omments\x88\x01\x01\x12!\n\x04tags\x18\x0c \x03(\x0b\x32\r.diode.v1.TagR\x04tags\x12H\n\rcustom_fields\x18\r \x03(\x0b\x32#.diode.v1.Cluster.CustomFieldsEntryR\x0c\x63ustomFields\x12\x39\n\x08metadata\x18\x0e \x01(\x0b\x32\x17.google.protobuf.StructB\x04\x88\xb5\x18\x00R\x08metadata\x12*\n\x05owner\x18\x0f \x01(\x0b\x32\x0f.diode.v1.OwnerH\x06R\x05owner\x88\x01\x01\x1a[\n\x11\x43ustomFieldsEntry\x12\x10\n\x03key\x18\x01 \x01(\tR\x03key\x12\x30\n\x05value\x18\x02 \x01(\x0b\x32\x1a.diode.v1.CustomFieldValueR\x05value:\x02\x38\x01\x42\x07\n\x05scopeB\x08\n\x06_groupB\t\n\x07_statusB\t\n\x07_tenantB\x0e\n\x0c_descriptionB\x0b\n\t_commentsB\x08\n\x06_owner\"\xdb\x03\n\x0c\x43lusterGroup\x12\x12\n\x04name\x18\x01 \x01(\tR\x04name\x12\x12\n\x04slug\x18\x02 \x01(\tR\x04slug\x12%\n\x0b\x64\x65scription\x18\x03 \x01(\tH\x00R\x0b\x64\x65scription\x88\x01\x01\x12!\n\x04tags\x18\x04 \x03(\x0b\x32\r.diode.v1.TagR\x04tags\x12M\n\rcustom_fields\x18\x05 \x03(\x0b\x32(.diode.v1.ClusterGroup.CustomFieldsEntryR\x0c\x63ustomFields\x12\x39\n\x08metadata\x18\x06 \x01(\x0b\x32\x17.google.protobuf.StructB\x04\x88\xb5\x18\x00R\x08metadata\x12*\n\x05owner\x18\x07 \x01(\x0b\x32\x0f.diode.v1.OwnerH\x01R\x05owner\x88\x01\x01\x12\x1f\n\x08\x63omments\x18\x08 \x01(\tH\x02R\x08\x63omments\x88\x01\x01\x1a[\n\x11\x43ustomFieldsEntry\x12\x10\n\x03key\x18\x01 \x01(\tR\x03key\x12\x30\n\x05value\x18\x02 \x01(\x0b\x32\x1a.diode.v1.CustomFieldValueR\x05value:\x02\x38\x01\x42\x0e\n\x0c_descriptionB\x08\n\x06_ownerB\x0b\n\t_comments\"\xd9\x03\n\x0b\x43lusterType\x12\x12\n\x04name\x18\x01 \x01(\tR\x04name\x12\x12\n\x04slug\x18\x02 \x01(\tR\x04slug\x12%\n\x0b\x64\x65scription\x18\x03 \x01(\tH\x00R\x0b\x64\x65scription\x88\x01\x01\x12!\n\x04tags\x18\x04 \x03(\x0b\x32\r.diode.v1.TagR\x04tags\x12L\n\rcustom_fields\x18\x05 \x03(\x0b\x32\'.diode.v1.ClusterType.CustomFieldsEntryR\x0c\x63ustomFields\x12\x39\n\x08metadata\x18\x06 \x01(\x0b\x32\x17.google.protobuf.StructB\x04\x88\xb5\x18\x00R\x08metadata\x12*\n\x05owner\x18\x07 \x01(\x0b\x32\x0f.diode.v1.OwnerH\x01R\x05owner\x88\x01\x01\x12\x1f\n\x08\x63omments\x18\x08 \x01(\tH\x02R\x08\x63omments\x88\x01\x01\x1a[\n\x11\x43ustomFieldsEntry\x12\x10\n\x03key\x18\x01 \x01(\tR\x03key\x12\x30\n\x05value\x18\x02 \x01(\x0b\x32\x1a.diode.v1.CustomFieldValueR\x05value:\x02\x38\x01\x42\x0e\n\x0c_descriptionB\x08\n\x06_ownerB\x0b\n\t_comments\"\xde\x06\n\x0b\x43onsolePort\x12(\n\x06\x64\x65vice\x18\x01 \x01(\x0b\x32\x10.diode.v1.DeviceR\x06\x64\x65vice\x12-\n\x06module\x18\x02 \x01(\x0b\x32\x10.diode.v1.ModuleH\x00R\x06module\x88\x01\x01\x12\x12\n\x04name\x18\x03 \x01(\tR\x04name\x12\x19\n\x05label\x18\x04 \x01(\tH\x01R\x05label\x88\x01\x01\x12\xab\x01\n\x04type\x18\x05 \x01(\tB\x91\x01\xfa\x42\x8d\x01r\x8a\x01R\x05\x64\x62-25R\x04\x64\x65-9R\nmini-din-8R\x05otherR\x05rj-11R\x05rj-12R\x05rj-45R\x05usb-aR\x05usb-bR\x05usb-cR\x0busb-micro-aR\x0cusb-micro-abR\x0busb-micro-bR\nusb-mini-aR\nusb-mini-bH\x02R\x04type\x88\x01\x01\x12<\n\x05speed\x18\x06 \x01(\x03\x42!\xfa\x42\x1e\"\x1c\x30\xb0\t0\xe0\x12\x30\xc0%0\x80K0\x80\x96\x01\x30\x80\xac\x02\x30\x80\xc2\x03\x30\x80\x84\x07H\x03R\x05speed\x88\x01\x01\x12%\n\x0b\x64\x65scription\x18\x07 \x01(\tH\x04R\x0b\x64\x65scription\x88\x01\x01\x12*\n\x0emark_connected\x18\x08 \x01(\x08H\x05R\rmarkConnected\x88\x01\x01\x12!\n\x04tags\x18\t \x03(\x0b\x32\r.diode.v1.TagR\x04tags\x12L\n\rcustom_fields\x18\n \x03(\x0b\x32\'.diode.v1.ConsolePort.CustomFieldsEntryR\x0c\x63ustomFields\x12\x39\n\x08metadata\x18\x0b \x01(\x0b\x32\x17.google.protobuf.StructB\x04\x88\xb5\x18\x00R\x08metadata\x12*\n\x05owner\x18\x0c \x01(\x0b\x32\x0f.diode.v1.OwnerH\x06R\x05owner\x88\x01\x01\x1a[\n\x11\x43ustomFieldsEntry\x12\x10\n\x03key\x18\x01 \x01(\tR\x03key\x12\x30\n\x05value\x18\x02 \x01(\x0b\x32\x1a.diode.v1.CustomFieldValueR\x05value:\x02\x38\x01\x42\t\n\x07_moduleB\x08\n\x06_labelB\x07\n\x05_typeB\x08\n\x06_speedB\x0e\n\x0c_descriptionB\x11\n\x0f_mark_connectedB\x08\n\x06_owner\"\xea\x06\n\x11\x43onsoleServerPort\x12(\n\x06\x64\x65vice\x18\x01 \x01(\x0b\x32\x10.diode.v1.DeviceR\x06\x64\x65vice\x12-\n\x06module\x18\x02 \x01(\x0b\x32\x10.diode.v1.ModuleH\x00R\x06module\x88\x01\x01\x12\x12\n\x04name\x18\x03 \x01(\tR\x04name\x12\x19\n\x05label\x18\x04 \x01(\tH\x01R\x05label\x88\x01\x01\x12\xab\x01\n\x04type\x18\x05 \x01(\tB\x91\x01\xfa\x42\x8d\x01r\x8a\x01R\x05\x64\x62-25R\x04\x64\x65-9R\nmini-din-8R\x05otherR\x05rj-11R\x05rj-12R\x05rj-45R\x05usb-aR\x05usb-bR\x05usb-cR\x0busb-micro-aR\x0cusb-micro-abR\x0busb-micro-bR\nusb-mini-aR\nusb-mini-bH\x02R\x04type\x88\x01\x01\x12<\n\x05speed\x18\x06 \x01(\x03\x42!\xfa\x42\x1e\"\x1c\x30\xb0\t0\xe0\x12\x30\xc0%0\x80K0\x80\x96\x01\x30\x80\xac\x02\x30\x80\xc2\x03\x30\x80\x84\x07H\x03R\x05speed\x88\x01\x01\x12%\n\x0b\x64\x65scription\x18\x07 \x01(\tH\x04R\x0b\x64\x65scription\x88\x01\x01\x12*\n\x0emark_connected\x18\x08 \x01(\x08H\x05R\rmarkConnected\x88\x01\x01\x12!\n\x04tags\x18\t \x03(\x0b\x32\r.diode.v1.TagR\x04tags\x12R\n\rcustom_fields\x18\n \x03(\x0b\x32-.diode.v1.ConsoleServerPort.CustomFieldsEntryR\x0c\x63ustomFields\x12\x39\n\x08metadata\x18\x0b \x01(\x0b\x32\x17.google.protobuf.StructB\x04\x88\xb5\x18\x00R\x08metadata\x12*\n\x05owner\x18\x0c \x01(\x0b\x32\x0f.diode.v1.OwnerH\x06R\x05owner\x88\x01\x01\x1a[\n\x11\x43ustomFieldsEntry\x12\x10\n\x03key\x18\x01 \x01(\tR\x03key\x12\x30\n\x05value\x18\x02 \x01(\x0b\x32\x1a.diode.v1.CustomFieldValueR\x05value:\x02\x38\x01\x42\t\n\x07_moduleB\x08\n\x06_labelB\x07\n\x05_typeB\x08\n\x06_speedB\x0e\n\x0c_descriptionB\x11\n\x0f_mark_connectedB\x08\n\x06_owner\"\xea\x05\n\x07\x43ontact\x12\x35\n\x05group\x18\x01 \x01(\x0b\x32\x16.diode.v1.ContactGroupB\x02\x18\x01H\x00R\x05group\x88\x01\x01\x12\x12\n\x04name\x18\x02 \x01(\tR\x04name\x12\x19\n\x05title\x18\x03 \x01(\tH\x01R\x05title\x88\x01\x01\x12\x19\n\x05phone\x18\x04 \x01(\tH\x02R\x05phone\x88\x01\x01\x12\x19\n\x05\x65mail\x18\x05 \x01(\tH\x03R\x05\x65mail\x88\x01\x01\x12\x1d\n\x07\x61\x64\x64ress\x18\x06 \x01(\tH\x04R\x07\x61\x64\x64ress\x88\x01\x01\x12\x17\n\x04link\x18\x07 \x01(\tH\x05R\x04link\x88\x01\x01\x12%\n\x0b\x64\x65scription\x18\x08 \x01(\tH\x06R\x0b\x64\x65scription\x88\x01\x01\x12\x1f\n\x08\x63omments\x18\t \x01(\tH\x07R\x08\x63omments\x88\x01\x01\x12!\n\x04tags\x18\n \x03(\x0b\x32\r.diode.v1.TagR\x04tags\x12H\n\rcustom_fields\x18\x0b \x03(\x0b\x32#.diode.v1.Contact.CustomFieldsEntryR\x0c\x63ustomFields\x12.\n\x06groups\x18\x0c \x03(\x0b\x32\x16.diode.v1.ContactGroupR\x06groups\x12\x39\n\x08metadata\x18\r \x01(\x0b\x32\x17.google.protobuf.StructB\x04\x88\xb5\x18\x00R\x08metadata\x12*\n\x05owner\x18\x0e \x01(\x0b\x32\x0f.diode.v1.OwnerH\x08R\x05owner\x88\x01\x01\x1a[\n\x11\x43ustomFieldsEntry\x12\x10\n\x03key\x18\x01 \x01(\tR\x03key\x12\x30\n\x05value\x18\x02 \x01(\x0b\x32\x1a.diode.v1.CustomFieldValueR\x05value:\x02\x38\x01\x42\x08\n\x06_groupB\x08\n\x06_titleB\x08\n\x06_phoneB\x08\n\x06_emailB\n\n\x08_addressB\x07\n\x05_linkB\x0e\n\x0c_descriptionB\x0b\n\t_commentsB\x08\n\x06_owner\"\xa7<\n\x11\x43ontactAssignment\x12.\n\nobject_asn\x18\x01 \x01(\x0b\x32\r.diode.v1.ASNH\x00R\tobjectAsn\x12>\n\x10object_asn_range\x18\x02 \x01(\x0b\x32\x12.diode.v1.ASNRangeH\x00R\x0eobjectAsnRange\x12@\n\x10object_aggregate\x18\x03 \x01(\x0b\x32\x13.diode.v1.AggregateH\x00R\x0fobjectAggregate\x12\x34\n\x0cobject_cable\x18\x04 \x01(\x0b\x32\x0f.diode.v1.CableH\x00R\x0bobjectCable\x12\x41\n\x11object_cable_path\x18\x05 \x01(\x0b\x32\x13.diode.v1.CablePathH\x00R\x0fobjectCablePath\x12Z\n\x18object_cable_termination\x18\x06 \x01(\x0b\x32\x1a.diode.v1.CableTerminationB\x02\x18\x01H\x00R\x16objectCableTermination\x12:\n\x0eobject_circuit\x18\x07 \x01(\x0b\x32\x11.diode.v1.CircuitH\x00R\robjectCircuit\x12J\n\x14object_circuit_group\x18\x08 \x01(\x0b\x32\x16.diode.v1.CircuitGroupH\x00R\x12objectCircuitGroup\x12i\n\x1fobject_circuit_group_assignment\x18\t \x01(\x0b\x32 .diode.v1.CircuitGroupAssignmentH\x00R\x1cobjectCircuitGroupAssignment\x12\\\n\x1aobject_circuit_termination\x18\n \x01(\x0b\x32\x1c.diode.v1.CircuitTerminationH\x00R\x18objectCircuitTermination\x12G\n\x13object_circuit_type\x18\x0b \x01(\x0b\x32\x15.diode.v1.CircuitTypeH\x00R\x11objectCircuitType\x12:\n\x0eobject_cluster\x18\x0c \x01(\x0b\x32\x11.diode.v1.ClusterH\x00R\robjectCluster\x12J\n\x14object_cluster_group\x18\r \x01(\x0b\x32\x16.diode.v1.ClusterGroupH\x00R\x12objectClusterGroup\x12G\n\x13object_cluster_type\x18\x0e \x01(\x0b\x32\x15.diode.v1.ClusterTypeH\x00R\x11objectClusterType\x12G\n\x13object_console_port\x18\x0f \x01(\x0b\x32\x15.diode.v1.ConsolePortH\x00R\x11objectConsolePort\x12Z\n\x1aobject_console_server_port\x18\x10 \x01(\x0b\x32\x1b.diode.v1.ConsoleServerPortH\x00R\x17objectConsoleServerPort\x12:\n\x0eobject_contact\x18\x11 \x01(\x0b\x32\x11.diode.v1.ContactH\x00R\robjectContact\x12Y\n\x19object_contact_assignment\x18\x12 \x01(\x0b\x32\x1b.diode.v1.ContactAssignmentH\x00R\x17objectContactAssignment\x12J\n\x14object_contact_group\x18\x13 \x01(\x0b\x32\x16.diode.v1.ContactGroupH\x00R\x12objectContactGroup\x12G\n\x13object_contact_role\x18\x14 \x01(\x0b\x32\x15.diode.v1.ContactRoleH\x00R\x11objectContactRole\x12\x37\n\robject_device\x18\x15 \x01(\x0b\x32\x10.diode.v1.DeviceH\x00R\x0cobjectDevice\x12\x41\n\x11object_device_bay\x18\x16 \x01(\x0b\x32\x13.diode.v1.DeviceBayH\x00R\x0fobjectDeviceBay\x12\x44\n\x12object_device_role\x18\x17 \x01(\x0b\x32\x14.diode.v1.DeviceRoleH\x00R\x10objectDeviceRole\x12\x44\n\x12object_device_type\x18\x18 \x01(\x0b\x32\x14.diode.v1.DeviceTypeH\x00R\x10objectDeviceType\x12\x41\n\x11object_fhrp_group\x18\x19 \x01(\x0b\x32\x13.diode.v1.FHRPGroupH\x00R\x0fobjectFhrpGroup\x12`\n\x1cobject_fhrp_group_assignment\x18\x1a \x01(\x0b\x32\x1d.diode.v1.FHRPGroupAssignmentH\x00R\x19objectFhrpGroupAssignment\x12\x41\n\x11object_front_port\x18\x1b \x01(\x0b\x32\x13.diode.v1.FrontPortH\x00R\x0fobjectFrontPort\x12\x41\n\x11object_ike_policy\x18\x1c \x01(\x0b\x32\x13.diode.v1.IKEPolicyH\x00R\x0fobjectIkePolicy\x12G\n\x13object_ike_proposal\x18\x1d \x01(\x0b\x32\x15.diode.v1.IKEProposalH\x00R\x11objectIkeProposal\x12\x41\n\x11object_ip_address\x18\x1e \x01(\x0b\x32\x13.diode.v1.IPAddressH\x00R\x0fobjectIpAddress\x12;\n\x0fobject_ip_range\x18\x1f \x01(\x0b\x32\x11.diode.v1.IPRangeH\x00R\robjectIpRange\x12H\n\x14object_ip_sec_policy\x18 \x01(\x0b\x32\x15.diode.v1.IPSecPolicyH\x00R\x11objectIpSecPolicy\x12K\n\x15object_ip_sec_profile\x18! \x01(\x0b\x32\x16.diode.v1.IPSecProfileH\x00R\x12objectIpSecProfile\x12N\n\x16object_ip_sec_proposal\x18\" \x01(\x0b\x32\x17.diode.v1.IPSecProposalH\x00R\x13objectIpSecProposal\x12@\n\x10object_interface\x18# \x01(\x0b\x32\x13.diode.v1.InterfaceH\x00R\x0fobjectInterface\x12M\n\x15object_inventory_item\x18$ \x01(\x0b\x32\x17.diode.v1.InventoryItemH\x00R\x13objectInventoryItem\x12Z\n\x1aobject_inventory_item_role\x18% \x01(\x0b\x32\x1b.diode.v1.InventoryItemRoleH\x00R\x17objectInventoryItemRole\x12\x34\n\x0cobject_l2vpn\x18& \x01(\x0b\x32\x0f.diode.v1.L2VPNH\x00R\x0bobjectL2vpn\x12V\n\x18object_l2vpn_termination\x18\' \x01(\x0b\x32\x1a.diode.v1.L2VPNTerminationH\x00R\x16objectL2vpnTermination\x12=\n\x0fobject_location\x18( \x01(\x0b\x32\x12.diode.v1.LocationH\x00R\x0eobjectLocation\x12\x44\n\x12object_mac_address\x18) \x01(\x0b\x32\x14.diode.v1.MACAddressH\x00R\x10objectMacAddress\x12I\n\x13object_manufacturer\x18* \x01(\x0b\x32\x16.diode.v1.ManufacturerH\x00R\x12objectManufacturer\x12\x37\n\robject_module\x18+ \x01(\x0b\x32\x10.diode.v1.ModuleH\x00R\x0cobjectModule\x12\x41\n\x11object_module_bay\x18, \x01(\x0b\x32\x13.diode.v1.ModuleBayH\x00R\x0fobjectModuleBay\x12\x44\n\x12object_module_type\x18- \x01(\x0b\x32\x14.diode.v1.ModuleTypeH\x00R\x10objectModuleType\x12=\n\x0fobject_platform\x18. \x01(\x0b\x32\x12.diode.v1.PlatformH\x00R\x0eobjectPlatform\x12\x41\n\x11object_power_feed\x18/ \x01(\x0b\x32\x13.diode.v1.PowerFeedH\x00R\x0fobjectPowerFeed\x12G\n\x13object_power_outlet\x18\x30 \x01(\x0b\x32\x15.diode.v1.PowerOutletH\x00R\x11objectPowerOutlet\x12\x44\n\x12object_power_panel\x18\x31 \x01(\x0b\x32\x14.diode.v1.PowerPanelH\x00R\x10objectPowerPanel\x12\x41\n\x11object_power_port\x18\x32 \x01(\x0b\x32\x13.diode.v1.PowerPortH\x00R\x0fobjectPowerPort\x12\x37\n\robject_prefix\x18\x33 \x01(\x0b\x32\x10.diode.v1.PrefixH\x00R\x0cobjectPrefix\x12=\n\x0fobject_provider\x18\x34 \x01(\x0b\x32\x12.diode.v1.ProviderH\x00R\x0eobjectProvider\x12S\n\x17object_provider_account\x18\x35 \x01(\x0b\x32\x19.diode.v1.ProviderAccountH\x00R\x15objectProviderAccount\x12S\n\x17object_provider_network\x18\x36 \x01(\x0b\x32\x19.diode.v1.ProviderNetworkH\x00R\x15objectProviderNetwork\x12.\n\nobject_rir\x18\x37 \x01(\x0b\x32\r.diode.v1.RIRH\x00R\tobjectRir\x12\x31\n\x0bobject_rack\x18\x38 \x01(\x0b\x32\x0e.diode.v1.RackH\x00R\nobjectRack\x12S\n\x17object_rack_reservation\x18\x39 \x01(\x0b\x32\x19.diode.v1.RackReservationH\x00R\x15objectRackReservation\x12>\n\x10object_rack_role\x18: \x01(\x0b\x32\x12.diode.v1.RackRoleH\x00R\x0eobjectRackRole\x12>\n\x10object_rack_type\x18; \x01(\x0b\x32\x12.diode.v1.RackTypeH\x00R\x0eobjectRackType\x12>\n\x10object_rear_port\x18< \x01(\x0b\x32\x12.diode.v1.RearPortH\x00R\x0eobjectRearPort\x12\x37\n\robject_region\x18= \x01(\x0b\x32\x10.diode.v1.RegionH\x00R\x0cobjectRegion\x12\x31\n\x0bobject_role\x18> \x01(\x0b\x32\x0e.diode.v1.RoleH\x00R\nobjectRole\x12G\n\x13object_route_target\x18? \x01(\x0b\x32\x15.diode.v1.RouteTargetH\x00R\x11objectRouteTarget\x12:\n\x0eobject_service\x18@ \x01(\x0b\x32\x11.diode.v1.ServiceH\x00R\robjectService\x12\x31\n\x0bobject_site\x18\x41 \x01(\x0b\x32\x0e.diode.v1.SiteH\x00R\nobjectSite\x12\x41\n\x11object_site_group\x18\x42 \x01(\x0b\x32\x13.diode.v1.SiteGroupH\x00R\x0fobjectSiteGroup\x12.\n\nobject_tag\x18\x43 \x01(\x0b\x32\r.diode.v1.TagH\x00R\tobjectTag\x12\x37\n\robject_tenant\x18\x44 \x01(\x0b\x32\x10.diode.v1.TenantH\x00R\x0cobjectTenant\x12G\n\x13object_tenant_group\x18\x45 \x01(\x0b\x32\x15.diode.v1.TenantGroupH\x00R\x11objectTenantGroup\x12\x37\n\robject_tunnel\x18\x46 \x01(\x0b\x32\x10.diode.v1.TunnelH\x00R\x0cobjectTunnel\x12G\n\x13object_tunnel_group\x18G \x01(\x0b\x32\x15.diode.v1.TunnelGroupH\x00R\x11objectTunnelGroup\x12Y\n\x19object_tunnel_termination\x18H \x01(\x0b\x32\x1b.diode.v1.TunnelTerminationH\x00R\x17objectTunnelTermination\x12\x31\n\x0bobject_vlan\x18I \x01(\x0b\x32\x0e.diode.v1.VLANH\x00R\nobjectVlan\x12\x41\n\x11object_vlan_group\x18J \x01(\x0b\x32\x13.diode.v1.VLANGroupH\x00R\x0fobjectVlanGroup\x12\x66\n\x1eobject_vlan_translation_policy\x18K \x01(\x0b\x32\x1f.diode.v1.VLANTranslationPolicyH\x00R\x1bobjectVlanTranslationPolicy\x12`\n\x1cobject_vlan_translation_rule\x18L \x01(\x0b\x32\x1d.diode.v1.VLANTranslationRuleH\x00R\x19objectVlanTranslationRule\x12G\n\x13object_vm_interface\x18M \x01(\x0b\x32\x15.diode.v1.VMInterfaceH\x00R\x11objectVmInterface\x12.\n\nobject_vrf\x18N \x01(\x0b\x32\r.diode.v1.VRFH\x00R\tobjectVrf\x12P\n\x16object_virtual_chassis\x18O \x01(\x0b\x32\x18.diode.v1.VirtualChassisH\x00R\x14objectVirtualChassis\x12P\n\x16object_virtual_circuit\x18P \x01(\x0b\x32\x18.diode.v1.VirtualCircuitH\x00R\x14objectVirtualCircuit\x12r\n\"object_virtual_circuit_termination\x18Q \x01(\x0b\x32#.diode.v1.VirtualCircuitTerminationH\x00R\x1fobjectVirtualCircuitTermination\x12]\n\x1bobject_virtual_circuit_type\x18R \x01(\x0b\x32\x1c.diode.v1.VirtualCircuitTypeH\x00R\x18objectVirtualCircuitType\x12\x63\n\x1dobject_virtual_device_context\x18S \x01(\x0b\x32\x1e.diode.v1.VirtualDeviceContextH\x00R\x1aobjectVirtualDeviceContext\x12G\n\x13object_virtual_disk\x18T \x01(\x0b\x32\x15.diode.v1.VirtualDiskH\x00R\x11objectVirtualDisk\x12P\n\x16object_virtual_machine\x18U \x01(\x0b\x32\x18.diode.v1.VirtualMachineH\x00R\x14objectVirtualMachine\x12G\n\x13object_wireless_lan\x18V \x01(\x0b\x32\x15.diode.v1.WirelessLANH\x00R\x11objectWirelessLan\x12W\n\x19object_wireless_lan_group\x18W \x01(\x0b\x32\x1a.diode.v1.WirelessLANGroupH\x00R\x16objectWirelessLanGroup\x12J\n\x14object_wireless_link\x18X \x01(\x0b\x32\x16.diode.v1.WirelessLinkH\x00R\x12objectWirelessLink\x12G\n\x13object_custom_field\x18^ \x01(\x0b\x32\x15.diode.v1.CustomFieldH\x00R\x11objectCustomField\x12\x64\n\x1eobject_custom_field_choice_set\x18_ \x01(\x0b\x32\x1e.diode.v1.CustomFieldChoiceSetH\x00R\x1aobjectCustomFieldChoiceSet\x12J\n\x14object_journal_entry\x18` \x01(\x0b\x32\x16.diode.v1.JournalEntryH\x00R\x12objectJournalEntry\x12Z\n\x1aobject_module_type_profile\x18\x61 \x01(\x0b\x32\x1b.diode.v1.ModuleTypeProfileH\x00R\x17objectModuleTypeProfile\x12\x44\n\x12object_custom_link\x18\x62 \x01(\x0b\x32\x14.diode.v1.CustomLinkH\x00R\x10objectCustomLink\x12\x34\n\x0cobject_owner\x18\x64 \x01(\x0b\x32\x0f.diode.v1.OwnerH\x00R\x0bobjectOwner\x12\x44\n\x12object_owner_group\x18\x65 \x01(\x0b\x32\x14.diode.v1.OwnerGroupH\x00R\x10objectOwnerGroup\x12G\n\x13object_cable_bundle\x18\x66 \x01(\x0b\x32\x15.diode.v1.CableBundleH\x00R\x11objectCableBundle\x12\x41\n\x11object_rack_group\x18g \x01(\x0b\x32\x13.diode.v1.RackGroupH\x00R\x0fobjectRackGroup\x12J\n\x14object_script_module\x18h \x01(\x0b\x32\x16.diode.v1.ScriptModuleH\x00R\x12objectScriptModule\x12]\n\x1bobject_virtual_machine_type\x18i \x01(\x0b\x32\x1c.diode.v1.VirtualMachineTypeH\x00R\x18objectVirtualMachineType\x12\x31\n\x0bobject_user\x18j \x01(\x0b\x32\x0e.diode.v1.UserH\x00R\nobjectUser\x12+\n\x07\x63ontact\x18Y \x01(\x0b\x32\x11.diode.v1.ContactR\x07\x63ontact\x12.\n\x04role\x18Z \x01(\x0b\x32\x15.diode.v1.ContactRoleH\x01R\x04role\x88\x01\x01\x12N\n\x08priority\x18[ \x01(\tB-\xfa\x42*r(R\x08inactiveR\x07primaryR\tsecondaryR\x08tertiaryH\x02R\x08priority\x88\x01\x01\x12!\n\x04tags\x18\\ \x03(\x0b\x32\r.diode.v1.TagR\x04tags\x12R\n\rcustom_fields\x18] \x03(\x0b\x32-.diode.v1.ContactAssignment.CustomFieldsEntryR\x0c\x63ustomFields\x12\x39\n\x08metadata\x18\x63 \x01(\x0b\x32\x17.google.protobuf.StructB\x04\x88\xb5\x18\x00R\x08metadata\x1a[\n\x11\x43ustomFieldsEntry\x12\x10\n\x03key\x18\x01 \x01(\tR\x03key\x12\x30\n\x05value\x18\x02 \x01(\x0b\x32\x1a.diode.v1.CustomFieldValueR\x05value:\x02\x38\x01\x42\x08\n\x06objectB\x07\n\x05_roleB\x0b\n\t_priority\"\x9b\x04\n\x0c\x43ontactGroup\x12\x12\n\x04name\x18\x01 \x01(\tR\x04name\x12\x12\n\x04slug\x18\x02 \x01(\tR\x04slug\x12\x33\n\x06parent\x18\x03 \x01(\x0b\x32\x16.diode.v1.ContactGroupH\x00R\x06parent\x88\x01\x01\x12%\n\x0b\x64\x65scription\x18\x04 \x01(\tH\x01R\x0b\x64\x65scription\x88\x01\x01\x12!\n\x04tags\x18\x05 \x03(\x0b\x32\r.diode.v1.TagR\x04tags\x12M\n\rcustom_fields\x18\x06 \x03(\x0b\x32(.diode.v1.ContactGroup.CustomFieldsEntryR\x0c\x63ustomFields\x12\x1f\n\x08\x63omments\x18\x07 \x01(\tH\x02R\x08\x63omments\x88\x01\x01\x12\x39\n\x08metadata\x18\x08 \x01(\x0b\x32\x17.google.protobuf.StructB\x04\x88\xb5\x18\x00R\x08metadata\x12*\n\x05owner\x18\t \x01(\x0b\x32\x0f.diode.v1.OwnerH\x03R\x05owner\x88\x01\x01\x1a[\n\x11\x43ustomFieldsEntry\x12\x10\n\x03key\x18\x01 \x01(\tR\x03key\x12\x30\n\x05value\x18\x02 \x01(\x0b\x32\x1a.diode.v1.CustomFieldValueR\x05value:\x02\x38\x01\x42\t\n\x07_parentB\x0e\n\x0c_descriptionB\x0b\n\t_commentsB\x08\n\x06_owner\"\xd9\x03\n\x0b\x43ontactRole\x12\x12\n\x04name\x18\x01 \x01(\tR\x04name\x12\x12\n\x04slug\x18\x02 \x01(\tR\x04slug\x12%\n\x0b\x64\x65scription\x18\x03 \x01(\tH\x00R\x0b\x64\x65scription\x88\x01\x01\x12!\n\x04tags\x18\x04 \x03(\x0b\x32\r.diode.v1.TagR\x04tags\x12L\n\rcustom_fields\x18\x05 \x03(\x0b\x32\'.diode.v1.ContactRole.CustomFieldsEntryR\x0c\x63ustomFields\x12\x39\n\x08metadata\x18\x06 \x01(\x0b\x32\x17.google.protobuf.StructB\x04\x88\xb5\x18\x00R\x08metadata\x12*\n\x05owner\x18\x07 \x01(\x0b\x32\x0f.diode.v1.OwnerH\x01R\x05owner\x88\x01\x01\x12\x1f\n\x08\x63omments\x18\x08 \x01(\tH\x02R\x08\x63omments\x88\x01\x01\x1a[\n\x11\x43ustomFieldsEntry\x12\x10\n\x03key\x18\x01 \x01(\tR\x03key\x12\x30\n\x05value\x18\x02 \x01(\x0b\x32\x1a.diode.v1.CustomFieldValueR\x05value:\x02\x38\x01\x42\x0e\n\x0c_descriptionB\x08\n\x06_ownerB\x0b\n\t_comments\"\xca.\n\x1a\x43ustomFieldObjectReference\x12!\n\x03\x61sn\x18\x01 \x01(\x0b\x32\r.diode.v1.ASNH\x00R\x03\x61sn\x12\x31\n\tasn_range\x18\x02 \x01(\x0b\x32\x12.diode.v1.ASNRangeH\x00R\x08\x61snRange\x12\x33\n\taggregate\x18\x03 \x01(\x0b\x32\x13.diode.v1.AggregateH\x00R\taggregate\x12\'\n\x05\x63\x61\x62le\x18\x04 \x01(\x0b\x32\x0f.diode.v1.CableH\x00R\x05\x63\x61\x62le\x12\x34\n\ncable_path\x18\x05 \x01(\x0b\x32\x13.diode.v1.CablePathH\x00R\tcablePath\x12M\n\x11\x63\x61\x62le_termination\x18\x06 \x01(\x0b\x32\x1a.diode.v1.CableTerminationB\x02\x18\x01H\x00R\x10\x63\x61\x62leTermination\x12-\n\x07\x63ircuit\x18\x07 \x01(\x0b\x32\x11.diode.v1.CircuitH\x00R\x07\x63ircuit\x12=\n\rcircuit_group\x18\x08 \x01(\x0b\x32\x16.diode.v1.CircuitGroupH\x00R\x0c\x63ircuitGroup\x12\\\n\x18\x63ircuit_group_assignment\x18\t \x01(\x0b\x32 .diode.v1.CircuitGroupAssignmentH\x00R\x16\x63ircuitGroupAssignment\x12O\n\x13\x63ircuit_termination\x18\n \x01(\x0b\x32\x1c.diode.v1.CircuitTerminationH\x00R\x12\x63ircuitTermination\x12:\n\x0c\x63ircuit_type\x18\x0b \x01(\x0b\x32\x15.diode.v1.CircuitTypeH\x00R\x0b\x63ircuitType\x12-\n\x07\x63luster\x18\x0c \x01(\x0b\x32\x11.diode.v1.ClusterH\x00R\x07\x63luster\x12=\n\rcluster_group\x18\r \x01(\x0b\x32\x16.diode.v1.ClusterGroupH\x00R\x0c\x63lusterGroup\x12:\n\x0c\x63luster_type\x18\x0e \x01(\x0b\x32\x15.diode.v1.ClusterTypeH\x00R\x0b\x63lusterType\x12:\n\x0c\x63onsole_port\x18\x0f \x01(\x0b\x32\x15.diode.v1.ConsolePortH\x00R\x0b\x63onsolePort\x12M\n\x13\x63onsole_server_port\x18\x10 \x01(\x0b\x32\x1b.diode.v1.ConsoleServerPortH\x00R\x11\x63onsoleServerPort\x12-\n\x07\x63ontact\x18\x11 \x01(\x0b\x32\x11.diode.v1.ContactH\x00R\x07\x63ontact\x12L\n\x12\x63ontact_assignment\x18\x12 \x01(\x0b\x32\x1b.diode.v1.ContactAssignmentH\x00R\x11\x63ontactAssignment\x12=\n\rcontact_group\x18\x13 \x01(\x0b\x32\x16.diode.v1.ContactGroupH\x00R\x0c\x63ontactGroup\x12:\n\x0c\x63ontact_role\x18\x14 \x01(\x0b\x32\x15.diode.v1.ContactRoleH\x00R\x0b\x63ontactRole\x12*\n\x06\x64\x65vice\x18\x15 \x01(\x0b\x32\x10.diode.v1.DeviceH\x00R\x06\x64\x65vice\x12\x34\n\ndevice_bay\x18\x16 \x01(\x0b\x32\x13.diode.v1.DeviceBayH\x00R\tdeviceBay\x12\x37\n\x0b\x64\x65vice_role\x18\x17 \x01(\x0b\x32\x14.diode.v1.DeviceRoleH\x00R\ndeviceRole\x12\x37\n\x0b\x64\x65vice_type\x18\x18 \x01(\x0b\x32\x14.diode.v1.DeviceTypeH\x00R\ndeviceType\x12\x34\n\nfhrp_group\x18\x19 \x01(\x0b\x32\x13.diode.v1.FHRPGroupH\x00R\tfhrpGroup\x12S\n\x15\x66hrp_group_assignment\x18\x1a \x01(\x0b\x32\x1d.diode.v1.FHRPGroupAssignmentH\x00R\x13\x66hrpGroupAssignment\x12\x34\n\nfront_port\x18\x1b \x01(\x0b\x32\x13.diode.v1.FrontPortH\x00R\tfrontPort\x12\x34\n\nike_policy\x18\x1c \x01(\x0b\x32\x13.diode.v1.IKEPolicyH\x00R\tikePolicy\x12:\n\x0cike_proposal\x18\x1d \x01(\x0b\x32\x15.diode.v1.IKEProposalH\x00R\x0bikeProposal\x12\x34\n\nip_address\x18\x1e \x01(\x0b\x32\x13.diode.v1.IPAddressH\x00R\tipAddress\x12.\n\x08ip_range\x18\x1f \x01(\x0b\x32\x11.diode.v1.IPRangeH\x00R\x07ipRange\x12;\n\rip_sec_policy\x18 \x01(\x0b\x32\x15.diode.v1.IPSecPolicyH\x00R\x0bipSecPolicy\x12>\n\x0eip_sec_profile\x18! \x01(\x0b\x32\x16.diode.v1.IPSecProfileH\x00R\x0cipSecProfile\x12\x41\n\x0fip_sec_proposal\x18\" \x01(\x0b\x32\x17.diode.v1.IPSecProposalH\x00R\ripSecProposal\x12\x33\n\tinterface\x18# \x01(\x0b\x32\x13.diode.v1.InterfaceH\x00R\tinterface\x12@\n\x0einventory_item\x18$ \x01(\x0b\x32\x17.diode.v1.InventoryItemH\x00R\rinventoryItem\x12M\n\x13inventory_item_role\x18% \x01(\x0b\x32\x1b.diode.v1.InventoryItemRoleH\x00R\x11inventoryItemRole\x12\'\n\x05l2vpn\x18& \x01(\x0b\x32\x0f.diode.v1.L2VPNH\x00R\x05l2vpn\x12I\n\x11l2vpn_termination\x18\' \x01(\x0b\x32\x1a.diode.v1.L2VPNTerminationH\x00R\x10l2vpnTermination\x12\x30\n\x08location\x18( \x01(\x0b\x32\x12.diode.v1.LocationH\x00R\x08location\x12\x37\n\x0bmac_address\x18) \x01(\x0b\x32\x14.diode.v1.MACAddressH\x00R\nmacAddress\x12<\n\x0cmanufacturer\x18* \x01(\x0b\x32\x16.diode.v1.ManufacturerH\x00R\x0cmanufacturer\x12*\n\x06module\x18+ \x01(\x0b\x32\x10.diode.v1.ModuleH\x00R\x06module\x12\x34\n\nmodule_bay\x18, \x01(\x0b\x32\x13.diode.v1.ModuleBayH\x00R\tmoduleBay\x12\x37\n\x0bmodule_type\x18- \x01(\x0b\x32\x14.diode.v1.ModuleTypeH\x00R\nmoduleType\x12\x30\n\x08platform\x18. \x01(\x0b\x32\x12.diode.v1.PlatformH\x00R\x08platform\x12\x34\n\npower_feed\x18/ \x01(\x0b\x32\x13.diode.v1.PowerFeedH\x00R\tpowerFeed\x12:\n\x0cpower_outlet\x18\x30 \x01(\x0b\x32\x15.diode.v1.PowerOutletH\x00R\x0bpowerOutlet\x12\x37\n\x0bpower_panel\x18\x31 \x01(\x0b\x32\x14.diode.v1.PowerPanelH\x00R\npowerPanel\x12\x34\n\npower_port\x18\x32 \x01(\x0b\x32\x13.diode.v1.PowerPortH\x00R\tpowerPort\x12*\n\x06prefix\x18\x33 \x01(\x0b\x32\x10.diode.v1.PrefixH\x00R\x06prefix\x12\x30\n\x08provider\x18\x34 \x01(\x0b\x32\x12.diode.v1.ProviderH\x00R\x08provider\x12\x46\n\x10provider_account\x18\x35 \x01(\x0b\x32\x19.diode.v1.ProviderAccountH\x00R\x0fproviderAccount\x12\x46\n\x10provider_network\x18\x36 \x01(\x0b\x32\x19.diode.v1.ProviderNetworkH\x00R\x0fproviderNetwork\x12!\n\x03rir\x18\x37 \x01(\x0b\x32\r.diode.v1.RIRH\x00R\x03rir\x12$\n\x04rack\x18\x38 \x01(\x0b\x32\x0e.diode.v1.RackH\x00R\x04rack\x12\x46\n\x10rack_reservation\x18\x39 \x01(\x0b\x32\x19.diode.v1.RackReservationH\x00R\x0frackReservation\x12\x31\n\track_role\x18: \x01(\x0b\x32\x12.diode.v1.RackRoleH\x00R\x08rackRole\x12\x31\n\track_type\x18; \x01(\x0b\x32\x12.diode.v1.RackTypeH\x00R\x08rackType\x12\x31\n\trear_port\x18< \x01(\x0b\x32\x12.diode.v1.RearPortH\x00R\x08rearPort\x12*\n\x06region\x18= \x01(\x0b\x32\x10.diode.v1.RegionH\x00R\x06region\x12$\n\x04role\x18> \x01(\x0b\x32\x0e.diode.v1.RoleH\x00R\x04role\x12:\n\x0croute_target\x18? \x01(\x0b\x32\x15.diode.v1.RouteTargetH\x00R\x0brouteTarget\x12-\n\x07service\x18@ \x01(\x0b\x32\x11.diode.v1.ServiceH\x00R\x07service\x12$\n\x04site\x18\x41 \x01(\x0b\x32\x0e.diode.v1.SiteH\x00R\x04site\x12\x34\n\nsite_group\x18\x42 \x01(\x0b\x32\x13.diode.v1.SiteGroupH\x00R\tsiteGroup\x12!\n\x03tag\x18\x43 \x01(\x0b\x32\r.diode.v1.TagH\x00R\x03tag\x12*\n\x06tenant\x18\x44 \x01(\x0b\x32\x10.diode.v1.TenantH\x00R\x06tenant\x12:\n\x0ctenant_group\x18\x45 \x01(\x0b\x32\x15.diode.v1.TenantGroupH\x00R\x0btenantGroup\x12*\n\x06tunnel\x18\x46 \x01(\x0b\x32\x10.diode.v1.TunnelH\x00R\x06tunnel\x12:\n\x0ctunnel_group\x18G \x01(\x0b\x32\x15.diode.v1.TunnelGroupH\x00R\x0btunnelGroup\x12L\n\x12tunnel_termination\x18H \x01(\x0b\x32\x1b.diode.v1.TunnelTerminationH\x00R\x11tunnelTermination\x12$\n\x04vlan\x18I \x01(\x0b\x32\x0e.diode.v1.VLANH\x00R\x04vlan\x12\x34\n\nvlan_group\x18J \x01(\x0b\x32\x13.diode.v1.VLANGroupH\x00R\tvlanGroup\x12Y\n\x17vlan_translation_policy\x18K \x01(\x0b\x32\x1f.diode.v1.VLANTranslationPolicyH\x00R\x15vlanTranslationPolicy\x12S\n\x15vlan_translation_rule\x18L \x01(\x0b\x32\x1d.diode.v1.VLANTranslationRuleH\x00R\x13vlanTranslationRule\x12:\n\x0cvm_interface\x18M \x01(\x0b\x32\x15.diode.v1.VMInterfaceH\x00R\x0bvmInterface\x12!\n\x03vrf\x18N \x01(\x0b\x32\r.diode.v1.VRFH\x00R\x03vrf\x12\x43\n\x0fvirtual_chassis\x18O \x01(\x0b\x32\x18.diode.v1.VirtualChassisH\x00R\x0evirtualChassis\x12\x43\n\x0fvirtual_circuit\x18P \x01(\x0b\x32\x18.diode.v1.VirtualCircuitH\x00R\x0evirtualCircuit\x12\x65\n\x1bvirtual_circuit_termination\x18Q \x01(\x0b\x32#.diode.v1.VirtualCircuitTerminationH\x00R\x19virtualCircuitTermination\x12P\n\x14virtual_circuit_type\x18R \x01(\x0b\x32\x1c.diode.v1.VirtualCircuitTypeH\x00R\x12virtualCircuitType\x12V\n\x16virtual_device_context\x18S \x01(\x0b\x32\x1e.diode.v1.VirtualDeviceContextH\x00R\x14virtualDeviceContext\x12:\n\x0cvirtual_disk\x18T \x01(\x0b\x32\x15.diode.v1.VirtualDiskH\x00R\x0bvirtualDisk\x12\x43\n\x0fvirtual_machine\x18U \x01(\x0b\x32\x18.diode.v1.VirtualMachineH\x00R\x0evirtualMachine\x12:\n\x0cwireless_lan\x18V \x01(\x0b\x32\x15.diode.v1.WirelessLANH\x00R\x0bwirelessLan\x12J\n\x12wireless_lan_group\x18W \x01(\x0b\x32\x1a.diode.v1.WirelessLANGroupH\x00R\x10wirelessLanGroup\x12=\n\rwireless_link\x18X \x01(\x0b\x32\x16.diode.v1.WirelessLinkH\x00R\x0cwirelessLink\x12:\n\x0c\x63ustom_field\x18Y \x01(\x0b\x32\x15.diode.v1.CustomFieldH\x00R\x0b\x63ustomField\x12W\n\x17\x63ustom_field_choice_set\x18Z \x01(\x0b\x32\x1e.diode.v1.CustomFieldChoiceSetH\x00R\x14\x63ustomFieldChoiceSet\x12=\n\rjournal_entry\x18[ \x01(\x0b\x32\x16.diode.v1.JournalEntryH\x00R\x0cjournalEntry\x12M\n\x13module_type_profile\x18\\ \x01(\x0b\x32\x1b.diode.v1.ModuleTypeProfileH\x00R\x11moduleTypeProfile\x12\x37\n\x0b\x63ustom_link\x18] \x01(\x0b\x32\x14.diode.v1.CustomLinkH\x00R\ncustomLink\x12\'\n\x05owner\x18^ \x01(\x0b\x32\x0f.diode.v1.OwnerH\x00R\x05owner\x12\x37\n\x0bowner_group\x18_ \x01(\x0b\x32\x14.diode.v1.OwnerGroupH\x00R\nownerGroup\x12:\n\x0c\x63\x61\x62le_bundle\x18` \x01(\x0b\x32\x15.diode.v1.CableBundleH\x00R\x0b\x63\x61\x62leBundle\x12\x34\n\nrack_group\x18\x61 \x01(\x0b\x32\x13.diode.v1.RackGroupH\x00R\trackGroup\x12=\n\rscript_module\x18\x62 \x01(\x0b\x32\x16.diode.v1.ScriptModuleH\x00R\x0cscriptModule\x12P\n\x14virtual_machine_type\x18\x63 \x01(\x0b\x32\x1c.diode.v1.VirtualMachineTypeH\x00R\x12virtualMachineType\x12$\n\x04user\x18\x64 \x01(\x0b\x32\x0e.diode.v1.UserH\x00R\x04userB\x08\n\x06object\"\x9a\x04\n\x10\x43ustomFieldValue\x12-\n\x12multiple_selection\x18\x01 \x03(\tR\x11multipleSelection\x12O\n\x10multiple_objects\x18\x02 \x03(\x0b\x32$.diode.v1.CustomFieldObjectReferenceR\x0fmultipleObjects\x12\x14\n\x04text\x18\x03 \x01(\tH\x00R\x04text\x12\x1d\n\tlong_text\x18\x04 \x01(\tH\x00R\x08longText\x12\x1a\n\x07integer\x18\x05 \x01(\x03H\x00R\x07integer\x12\x1a\n\x07\x64\x65\x63imal\x18\x06 \x01(\x01H\x00R\x07\x64\x65\x63imal\x12\x1a\n\x07\x62oolean\x18\x07 \x01(\x08H\x00R\x07\x62oolean\x12\x30\n\x04\x64\x61te\x18\x08 \x01(\x0b\x32\x1a.google.protobuf.TimestampH\x00R\x04\x64\x61te\x12\x38\n\x08\x64\x61tetime\x18\t \x01(\x0b\x32\x1a.google.protobuf.TimestampH\x00R\x08\x64\x61tetime\x12\x12\n\x03url\x18\n \x01(\tH\x00R\x03url\x12\x14\n\x04json\x18\x0b \x01(\tH\x00R\x04json\x12\x1e\n\tselection\x18\x0c \x01(\tH\x00R\tselection\x12>\n\x06object\x18\r \x01(\x0b\x32$.diode.v1.CustomFieldObjectReferenceH\x00R\x06objectB\x07\n\x05value\"\xa8\x0f\n\x06\x44\x65vice\x12\x17\n\x04name\x18\x01 \x01(\tH\x00R\x04name\x88\x01\x01\x12\x35\n\x0b\x64\x65vice_type\x18\x02 \x01(\x0b\x32\x14.diode.v1.DeviceTypeR\ndeviceType\x12(\n\x04role\x18\x03 \x01(\x0b\x32\x14.diode.v1.DeviceRoleR\x04role\x12-\n\x06tenant\x18\x04 \x01(\x0b\x32\x10.diode.v1.TenantH\x01R\x06tenant\x88\x01\x01\x12\x33\n\x08platform\x18\x05 \x01(\x0b\x32\x12.diode.v1.PlatformH\x02R\x08platform\x88\x01\x01\x12\x1b\n\x06serial\x18\x06 \x01(\tH\x03R\x06serial\x88\x01\x01\x12 \n\tasset_tag\x18\x07 \x01(\tH\x04R\x08\x61ssetTag\x88\x01\x01\x12\"\n\x04site\x18\x08 \x01(\x0b\x32\x0e.diode.v1.SiteR\x04site\x12\x33\n\x08location\x18\t \x01(\x0b\x32\x12.diode.v1.LocationH\x05R\x08location\x88\x01\x01\x12\'\n\x04rack\x18\n \x01(\x0b\x32\x0e.diode.v1.RackH\x06R\x04rack\x88\x01\x01\x12\x1f\n\x08position\x18\x0b \x01(\x01H\x07R\x08position\x88\x01\x01\x12+\n\x04\x66\x61\x63\x65\x18\x0c \x01(\tB\x12\xfa\x42\x0fr\rR\x05\x66rontR\x04rearH\x08R\x04\x66\x61\x63\x65\x88\x01\x01\x12\x1f\n\x08latitude\x18\r \x01(\x01H\tR\x08latitude\x88\x01\x01\x12!\n\tlongitude\x18\x0e \x01(\x01H\nR\tlongitude\x88\x01\x01\x12h\n\x06status\x18\x0f \x01(\tBK\xfa\x42HrFR\x06\x61\x63tiveR\x0f\x64\x65\x63ommissioningR\x06\x66\x61iledR\tinventoryR\x07offlineR\x07plannedR\x06stagedH\x0bR\x06status\x88\x01\x01\x12\xad\x01\n\x07\x61irflow\x18\x10 \x01(\tB\x8d\x01\xfa\x42\x89\x01r\x86\x01R\rbottom-to-topR\rfront-to-rearR\rleft-to-rightR\x05mixedR\x07passiveR\rrear-to-frontR\x0crear-to-sideR\rright-to-leftR\x0cside-to-rearR\rtop-to-bottomH\x0cR\x07\x61irflow\x88\x01\x01\x12\x39\n\x0bprimary_ip4\x18\x11 \x01(\x0b\x32\x13.diode.v1.IPAddressH\rR\nprimaryIp4\x88\x01\x01\x12\x39\n\x0bprimary_ip6\x18\x12 \x01(\x0b\x32\x13.diode.v1.IPAddressH\x0eR\nprimaryIp6\x88\x01\x01\x12/\n\x06oob_ip\x18\x13 \x01(\x0b\x32\x13.diode.v1.IPAddressH\x0fR\x05oobIp\x88\x01\x01\x12\x30\n\x07\x63luster\x18\x14 \x01(\x0b\x32\x11.diode.v1.ClusterH\x10R\x07\x63luster\x88\x01\x01\x12\x46\n\x0fvirtual_chassis\x18\x15 \x01(\x0b\x32\x18.diode.v1.VirtualChassisH\x11R\x0evirtualChassis\x88\x01\x01\x12$\n\x0bvc_position\x18\x16 \x01(\x03H\x12R\nvcPosition\x88\x01\x01\x12$\n\x0bvc_priority\x18\x17 \x01(\x03H\x13R\nvcPriority\x88\x01\x01\x12%\n\x0b\x64\x65scription\x18\x18 \x01(\tH\x14R\x0b\x64\x65scription\x88\x01\x01\x12\x1f\n\x08\x63omments\x18\x19 \x01(\tH\x15R\x08\x63omments\x88\x01\x01\x12!\n\x04tags\x18\x1a \x03(\x0b\x32\r.diode.v1.TagR\x04tags\x12G\n\rcustom_fields\x18\x1b \x03(\x0b\x32\".diode.v1.Device.CustomFieldsEntryR\x0c\x63ustomFields\x12\x39\n\x08metadata\x18\x1c \x01(\x0b\x32\x17.google.protobuf.StructB\x04\x88\xb5\x18\x00R\x08metadata\x12*\n\x05owner\x18\x1d \x01(\x0b\x32\x0f.diode.v1.OwnerH\x16R\x05owner\x88\x01\x01\x12\x39\n\x06\x63onfig\x18\x1e \x01(\x0b\x32\x16.diode.v1.DeviceConfigB\x04\x88\xb5\x18\x00H\x17R\x06\x63onfig\x88\x01\x01\x1a[\n\x11\x43ustomFieldsEntry\x12\x10\n\x03key\x18\x01 \x01(\tR\x03key\x12\x30\n\x05value\x18\x02 \x01(\x0b\x32\x1a.diode.v1.CustomFieldValueR\x05value:\x02\x38\x01\x42\x07\n\x05_nameB\t\n\x07_tenantB\x0b\n\t_platformB\t\n\x07_serialB\x0c\n\n_asset_tagB\x0b\n\t_locationB\x07\n\x05_rackB\x0b\n\t_positionB\x07\n\x05_faceB\x0b\n\t_latitudeB\x0c\n\n_longitudeB\t\n\x07_statusB\n\n\x08_airflowB\x0e\n\x0c_primary_ip4B\x0e\n\x0c_primary_ip6B\t\n\x07_oob_ipB\n\n\x08_clusterB\x12\n\x10_virtual_chassisB\x0e\n\x0c_vc_positionB\x0e\n\x0c_vc_priorityB\x0e\n\x0c_descriptionB\x0b\n\t_commentsB\x08\n\x06_ownerB\t\n\x07_config\"\xe4\x04\n\tDeviceBay\x12(\n\x06\x64\x65vice\x18\x01 \x01(\x0b\x32\x10.diode.v1.DeviceR\x06\x64\x65vice\x12\x12\n\x04name\x18\x02 \x01(\tR\x04name\x12\x19\n\x05label\x18\x03 \x01(\tH\x00R\x05label\x88\x01\x01\x12%\n\x0b\x64\x65scription\x18\x04 \x01(\tH\x01R\x0b\x64\x65scription\x88\x01\x01\x12@\n\x10installed_device\x18\x05 \x01(\x0b\x32\x10.diode.v1.DeviceH\x02R\x0finstalledDevice\x88\x01\x01\x12!\n\x04tags\x18\x06 \x03(\x0b\x32\r.diode.v1.TagR\x04tags\x12J\n\rcustom_fields\x18\x07 \x03(\x0b\x32%.diode.v1.DeviceBay.CustomFieldsEntryR\x0c\x63ustomFields\x12\x39\n\x08metadata\x18\x08 \x01(\x0b\x32\x17.google.protobuf.StructB\x04\x88\xb5\x18\x00R\x08metadata\x12*\n\x05owner\x18\t \x01(\x0b\x32\x0f.diode.v1.OwnerH\x03R\x05owner\x88\x01\x01\x12\x1d\n\x07\x65nabled\x18\n \x01(\x08H\x04R\x07\x65nabled\x88\x01\x01\x1a[\n\x11\x43ustomFieldsEntry\x12\x10\n\x03key\x18\x01 \x01(\tR\x03key\x12\x30\n\x05value\x18\x02 \x01(\x0b\x32\x1a.diode.v1.CustomFieldValueR\x05value:\x02\x38\x01\x42\x08\n\x06_labelB\x0e\n\x0c_descriptionB\x13\n\x11_installed_deviceB\x08\n\x06_ownerB\n\n\x08_enabled\"\xe4\x04\n\nDeviceRole\x12\x12\n\x04name\x18\x01 \x01(\tR\x04name\x12\x12\n\x04slug\x18\x02 \x01(\tR\x04slug\x12\x19\n\x05\x63olor\x18\x03 \x01(\tH\x00R\x05\x63olor\x88\x01\x01\x12\x1c\n\x07vm_role\x18\x04 \x01(\x08H\x01R\x06vmRole\x88\x01\x01\x12%\n\x0b\x64\x65scription\x18\x05 \x01(\tH\x02R\x0b\x64\x65scription\x88\x01\x01\x12!\n\x04tags\x18\x06 \x03(\x0b\x32\r.diode.v1.TagR\x04tags\x12K\n\rcustom_fields\x18\x07 \x03(\x0b\x32&.diode.v1.DeviceRole.CustomFieldsEntryR\x0c\x63ustomFields\x12\x31\n\x06parent\x18\x08 \x01(\x0b\x32\x14.diode.v1.DeviceRoleH\x03R\x06parent\x88\x01\x01\x12\x1f\n\x08\x63omments\x18\t \x01(\tH\x04R\x08\x63omments\x88\x01\x01\x12\x39\n\x08metadata\x18\n \x01(\x0b\x32\x17.google.protobuf.StructB\x04\x88\xb5\x18\x00R\x08metadata\x12*\n\x05owner\x18\x0b \x01(\x0b\x32\x0f.diode.v1.OwnerH\x05R\x05owner\x88\x01\x01\x1a[\n\x11\x43ustomFieldsEntry\x12\x10\n\x03key\x18\x01 \x01(\tR\x03key\x12\x30\n\x05value\x18\x02 \x01(\x0b\x32\x1a.diode.v1.CustomFieldValueR\x05value:\x02\x38\x01\x42\x08\n\x06_colorB\n\n\x08_vm_roleB\x0e\n\x0c_descriptionB\t\n\x07_parentB\x0b\n\t_commentsB\x08\n\x06_owner\"\xed\t\n\nDeviceType\x12:\n\x0cmanufacturer\x18\x01 \x01(\x0b\x32\x16.diode.v1.ManufacturerR\x0cmanufacturer\x12\x42\n\x10\x64\x65\x66\x61ult_platform\x18\x02 \x01(\x0b\x32\x12.diode.v1.PlatformH\x00R\x0f\x64\x65\x66\x61ultPlatform\x88\x01\x01\x12\x14\n\x05model\x18\x03 \x01(\tR\x05model\x12\x12\n\x04slug\x18\x04 \x01(\tR\x04slug\x12$\n\x0bpart_number\x18\x05 \x01(\tH\x01R\npartNumber\x88\x01\x01\x12\x1e\n\x08u_height\x18\x06 \x01(\x01H\x02R\x07uHeight\x88\x01\x01\x12=\n\x18\x65xclude_from_utilization\x18\x07 \x01(\x08H\x03R\x16\x65xcludeFromUtilization\x88\x01\x01\x12\'\n\ris_full_depth\x18\x08 \x01(\x08H\x04R\x0bisFullDepth\x88\x01\x01\x12@\n\x0esubdevice_role\x18\t \x01(\tB\x14\xfa\x42\x11r\x0fR\x05\x63hildR\x06parentH\x05R\rsubdeviceRole\x88\x01\x01\x12\xad\x01\n\x07\x61irflow\x18\n \x01(\tB\x8d\x01\xfa\x42\x89\x01r\x86\x01R\rbottom-to-topR\rfront-to-rearR\rleft-to-rightR\x05mixedR\x07passiveR\rrear-to-frontR\x0crear-to-sideR\rright-to-leftR\x0cside-to-rearR\rtop-to-bottomH\x06R\x07\x61irflow\x88\x01\x01\x12\x1b\n\x06weight\x18\x0b \x01(\x01H\x07R\x06weight\x88\x01\x01\x12:\n\x0bweight_unit\x18\x0c \x01(\tB\x14\xfa\x42\x11r\x0fR\x01gR\x02kgR\x02lbR\x02ozH\x08R\nweightUnit\x88\x01\x01\x12%\n\x0b\x64\x65scription\x18\r \x01(\tH\tR\x0b\x64\x65scription\x88\x01\x01\x12\x1f\n\x08\x63omments\x18\x0e \x01(\tH\nR\x08\x63omments\x88\x01\x01\x12!\n\x04tags\x18\x0f \x03(\x0b\x32\r.diode.v1.TagR\x04tags\x12K\n\rcustom_fields\x18\x10 \x03(\x0b\x32&.diode.v1.DeviceType.CustomFieldsEntryR\x0c\x63ustomFields\x12\x39\n\x08metadata\x18\x11 \x01(\x0b\x32\x17.google.protobuf.StructB\x04\x88\xb5\x18\x00R\x08metadata\x12*\n\x05owner\x18\x12 \x01(\x0b\x32\x0f.diode.v1.OwnerH\x0bR\x05owner\x88\x01\x01\x1a[\n\x11\x43ustomFieldsEntry\x12\x10\n\x03key\x18\x01 \x01(\tR\x03key\x12\x30\n\x05value\x18\x02 \x01(\x0b\x32\x1a.diode.v1.CustomFieldValueR\x05value:\x02\x38\x01\x42\x13\n\x11_default_platformB\x0e\n\x0c_part_numberB\x0b\n\t_u_heightB\x1b\n\x19_exclude_from_utilizationB\x10\n\x0e_is_full_depthB\x11\n\x0f_subdevice_roleB\n\n\x08_airflowB\t\n\x07_weightB\x0e\n\x0c_weight_unitB\x0e\n\x0c_descriptionB\x0b\n\t_commentsB\x08\n\x06_owner\"\xb3\x05\n\tFHRPGroup\x12\x17\n\x04name\x18\x01 \x01(\tH\x00R\x04name\x88\x01\x01\x12S\n\x08protocol\x18\x02 \x01(\tB7\xfa\x42\x34r2R\x04\x63\x61rpR\tclusterxlR\x04glbpR\x04hsrpR\x05otherR\x05vrrp2R\x05vrrp3R\x08protocol\x12\x19\n\x08group_id\x18\x03 \x01(\x03R\x07groupId\x12\x37\n\tauth_type\x18\x04 \x01(\tB\x15\xfa\x42\x12r\x10R\x03md5R\tplaintextH\x01R\x08\x61uthType\x88\x01\x01\x12\x1e\n\x08\x61uth_key\x18\x05 \x01(\tH\x02R\x07\x61uthKey\x88\x01\x01\x12%\n\x0b\x64\x65scription\x18\x06 \x01(\tH\x03R\x0b\x64\x65scription\x88\x01\x01\x12\x1f\n\x08\x63omments\x18\x07 \x01(\tH\x04R\x08\x63omments\x88\x01\x01\x12!\n\x04tags\x18\x08 \x03(\x0b\x32\r.diode.v1.TagR\x04tags\x12J\n\rcustom_fields\x18\t \x03(\x0b\x32%.diode.v1.FHRPGroup.CustomFieldsEntryR\x0c\x63ustomFields\x12\x39\n\x08metadata\x18\n \x01(\x0b\x32\x17.google.protobuf.StructB\x04\x88\xb5\x18\x00R\x08metadata\x12*\n\x05owner\x18\x0b \x01(\x0b\x32\x0f.diode.v1.OwnerH\x05R\x05owner\x88\x01\x01\x1a[\n\x11\x43ustomFieldsEntry\x12\x10\n\x03key\x18\x01 \x01(\tR\x03key\x12\x30\n\x05value\x18\x02 \x01(\x0b\x32\x1a.diode.v1.CustomFieldValueR\x05value:\x02\x38\x01\x42\x07\n\x05_nameB\x0c\n\n_auth_typeB\x0b\n\t_auth_keyB\x0e\n\x0c_descriptionB\x0b\n\t_commentsB\x08\n\x06_owner\"\xb4>\n\x13\x46HRPGroupAssignment\x12)\n\x05group\x18\x01 \x01(\x0b\x32\x13.diode.v1.FHRPGroupR\x05group\x12\x34\n\rinterface_asn\x18\x02 \x01(\x0b\x32\r.diode.v1.ASNH\x00R\x0cinterfaceAsn\x12\x44\n\x13interface_asn_range\x18\x03 \x01(\x0b\x32\x12.diode.v1.ASNRangeH\x00R\x11interfaceAsnRange\x12\x46\n\x13interface_aggregate\x18\x04 \x01(\x0b\x32\x13.diode.v1.AggregateH\x00R\x12interfaceAggregate\x12:\n\x0finterface_cable\x18\x05 \x01(\x0b\x32\x0f.diode.v1.CableH\x00R\x0einterfaceCable\x12G\n\x14interface_cable_path\x18\x06 \x01(\x0b\x32\x13.diode.v1.CablePathH\x00R\x12interfaceCablePath\x12`\n\x1binterface_cable_termination\x18\x07 \x01(\x0b\x32\x1a.diode.v1.CableTerminationB\x02\x18\x01H\x00R\x19interfaceCableTermination\x12@\n\x11interface_circuit\x18\x08 \x01(\x0b\x32\x11.diode.v1.CircuitH\x00R\x10interfaceCircuit\x12P\n\x17interface_circuit_group\x18\t \x01(\x0b\x32\x16.diode.v1.CircuitGroupH\x00R\x15interfaceCircuitGroup\x12o\n\"interface_circuit_group_assignment\x18\n \x01(\x0b\x32 .diode.v1.CircuitGroupAssignmentH\x00R\x1finterfaceCircuitGroupAssignment\x12\x62\n\x1dinterface_circuit_termination\x18\x0b \x01(\x0b\x32\x1c.diode.v1.CircuitTerminationH\x00R\x1binterfaceCircuitTermination\x12M\n\x16interface_circuit_type\x18\x0c \x01(\x0b\x32\x15.diode.v1.CircuitTypeH\x00R\x14interfaceCircuitType\x12@\n\x11interface_cluster\x18\r \x01(\x0b\x32\x11.diode.v1.ClusterH\x00R\x10interfaceCluster\x12P\n\x17interface_cluster_group\x18\x0e \x01(\x0b\x32\x16.diode.v1.ClusterGroupH\x00R\x15interfaceClusterGroup\x12M\n\x16interface_cluster_type\x18\x0f \x01(\x0b\x32\x15.diode.v1.ClusterTypeH\x00R\x14interfaceClusterType\x12M\n\x16interface_console_port\x18\x10 \x01(\x0b\x32\x15.diode.v1.ConsolePortH\x00R\x14interfaceConsolePort\x12`\n\x1dinterface_console_server_port\x18\x11 \x01(\x0b\x32\x1b.diode.v1.ConsoleServerPortH\x00R\x1ainterfaceConsoleServerPort\x12@\n\x11interface_contact\x18\x12 \x01(\x0b\x32\x11.diode.v1.ContactH\x00R\x10interfaceContact\x12_\n\x1cinterface_contact_assignment\x18\x13 \x01(\x0b\x32\x1b.diode.v1.ContactAssignmentH\x00R\x1ainterfaceContactAssignment\x12P\n\x17interface_contact_group\x18\x14 \x01(\x0b\x32\x16.diode.v1.ContactGroupH\x00R\x15interfaceContactGroup\x12M\n\x16interface_contact_role\x18\x15 \x01(\x0b\x32\x15.diode.v1.ContactRoleH\x00R\x14interfaceContactRole\x12=\n\x10interface_device\x18\x16 \x01(\x0b\x32\x10.diode.v1.DeviceH\x00R\x0finterfaceDevice\x12G\n\x14interface_device_bay\x18\x17 \x01(\x0b\x32\x13.diode.v1.DeviceBayH\x00R\x12interfaceDeviceBay\x12J\n\x15interface_device_role\x18\x18 \x01(\x0b\x32\x14.diode.v1.DeviceRoleH\x00R\x13interfaceDeviceRole\x12J\n\x15interface_device_type\x18\x19 \x01(\x0b\x32\x14.diode.v1.DeviceTypeH\x00R\x13interfaceDeviceType\x12G\n\x14interface_fhrp_group\x18\x1a \x01(\x0b\x32\x13.diode.v1.FHRPGroupH\x00R\x12interfaceFhrpGroup\x12\x66\n\x1finterface_fhrp_group_assignment\x18\x1b \x01(\x0b\x32\x1d.diode.v1.FHRPGroupAssignmentH\x00R\x1cinterfaceFhrpGroupAssignment\x12G\n\x14interface_front_port\x18\x1c \x01(\x0b\x32\x13.diode.v1.FrontPortH\x00R\x12interfaceFrontPort\x12G\n\x14interface_ike_policy\x18\x1d \x01(\x0b\x32\x13.diode.v1.IKEPolicyH\x00R\x12interfaceIkePolicy\x12M\n\x16interface_ike_proposal\x18\x1e \x01(\x0b\x32\x15.diode.v1.IKEProposalH\x00R\x14interfaceIkeProposal\x12G\n\x14interface_ip_address\x18\x1f \x01(\x0b\x32\x13.diode.v1.IPAddressH\x00R\x12interfaceIpAddress\x12\x41\n\x12interface_ip_range\x18 \x01(\x0b\x32\x11.diode.v1.IPRangeH\x00R\x10interfaceIpRange\x12N\n\x17interface_ip_sec_policy\x18! \x01(\x0b\x32\x15.diode.v1.IPSecPolicyH\x00R\x14interfaceIpSecPolicy\x12Q\n\x18interface_ip_sec_profile\x18\" \x01(\x0b\x32\x16.diode.v1.IPSecProfileH\x00R\x15interfaceIpSecProfile\x12T\n\x19interface_ip_sec_proposal\x18# \x01(\x0b\x32\x17.diode.v1.IPSecProposalH\x00R\x16interfaceIpSecProposal\x12\x46\n\x13interface_interface\x18$ \x01(\x0b\x32\x13.diode.v1.InterfaceH\x00R\x12interfaceInterface\x12S\n\x18interface_inventory_item\x18% \x01(\x0b\x32\x17.diode.v1.InventoryItemH\x00R\x16interfaceInventoryItem\x12`\n\x1dinterface_inventory_item_role\x18& \x01(\x0b\x32\x1b.diode.v1.InventoryItemRoleH\x00R\x1ainterfaceInventoryItemRole\x12:\n\x0finterface_l2vpn\x18\' \x01(\x0b\x32\x0f.diode.v1.L2VPNH\x00R\x0einterfaceL2vpn\x12\\\n\x1binterface_l2vpn_termination\x18( \x01(\x0b\x32\x1a.diode.v1.L2VPNTerminationH\x00R\x19interfaceL2vpnTermination\x12\x43\n\x12interface_location\x18) \x01(\x0b\x32\x12.diode.v1.LocationH\x00R\x11interfaceLocation\x12J\n\x15interface_mac_address\x18* \x01(\x0b\x32\x14.diode.v1.MACAddressH\x00R\x13interfaceMacAddress\x12O\n\x16interface_manufacturer\x18+ \x01(\x0b\x32\x16.diode.v1.ManufacturerH\x00R\x15interfaceManufacturer\x12=\n\x10interface_module\x18, \x01(\x0b\x32\x10.diode.v1.ModuleH\x00R\x0finterfaceModule\x12G\n\x14interface_module_bay\x18- \x01(\x0b\x32\x13.diode.v1.ModuleBayH\x00R\x12interfaceModuleBay\x12J\n\x15interface_module_type\x18. \x01(\x0b\x32\x14.diode.v1.ModuleTypeH\x00R\x13interfaceModuleType\x12\x43\n\x12interface_platform\x18/ \x01(\x0b\x32\x12.diode.v1.PlatformH\x00R\x11interfacePlatform\x12G\n\x14interface_power_feed\x18\x30 \x01(\x0b\x32\x13.diode.v1.PowerFeedH\x00R\x12interfacePowerFeed\x12M\n\x16interface_power_outlet\x18\x31 \x01(\x0b\x32\x15.diode.v1.PowerOutletH\x00R\x14interfacePowerOutlet\x12J\n\x15interface_power_panel\x18\x32 \x01(\x0b\x32\x14.diode.v1.PowerPanelH\x00R\x13interfacePowerPanel\x12G\n\x14interface_power_port\x18\x33 \x01(\x0b\x32\x13.diode.v1.PowerPortH\x00R\x12interfacePowerPort\x12=\n\x10interface_prefix\x18\x34 \x01(\x0b\x32\x10.diode.v1.PrefixH\x00R\x0finterfacePrefix\x12\x43\n\x12interface_provider\x18\x35 \x01(\x0b\x32\x12.diode.v1.ProviderH\x00R\x11interfaceProvider\x12Y\n\x1ainterface_provider_account\x18\x36 \x01(\x0b\x32\x19.diode.v1.ProviderAccountH\x00R\x18interfaceProviderAccount\x12Y\n\x1ainterface_provider_network\x18\x37 \x01(\x0b\x32\x19.diode.v1.ProviderNetworkH\x00R\x18interfaceProviderNetwork\x12\x34\n\rinterface_rir\x18\x38 \x01(\x0b\x32\r.diode.v1.RIRH\x00R\x0cinterfaceRir\x12\x37\n\x0einterface_rack\x18\x39 \x01(\x0b\x32\x0e.diode.v1.RackH\x00R\rinterfaceRack\x12Y\n\x1ainterface_rack_reservation\x18: \x01(\x0b\x32\x19.diode.v1.RackReservationH\x00R\x18interfaceRackReservation\x12\x44\n\x13interface_rack_role\x18; \x01(\x0b\x32\x12.diode.v1.RackRoleH\x00R\x11interfaceRackRole\x12\x44\n\x13interface_rack_type\x18< \x01(\x0b\x32\x12.diode.v1.RackTypeH\x00R\x11interfaceRackType\x12\x44\n\x13interface_rear_port\x18= \x01(\x0b\x32\x12.diode.v1.RearPortH\x00R\x11interfaceRearPort\x12=\n\x10interface_region\x18> \x01(\x0b\x32\x10.diode.v1.RegionH\x00R\x0finterfaceRegion\x12\x37\n\x0einterface_role\x18? \x01(\x0b\x32\x0e.diode.v1.RoleH\x00R\rinterfaceRole\x12M\n\x16interface_route_target\x18@ \x01(\x0b\x32\x15.diode.v1.RouteTargetH\x00R\x14interfaceRouteTarget\x12@\n\x11interface_service\x18\x41 \x01(\x0b\x32\x11.diode.v1.ServiceH\x00R\x10interfaceService\x12\x37\n\x0einterface_site\x18\x42 \x01(\x0b\x32\x0e.diode.v1.SiteH\x00R\rinterfaceSite\x12G\n\x14interface_site_group\x18\x43 \x01(\x0b\x32\x13.diode.v1.SiteGroupH\x00R\x12interfaceSiteGroup\x12\x34\n\rinterface_tag\x18\x44 \x01(\x0b\x32\r.diode.v1.TagH\x00R\x0cinterfaceTag\x12=\n\x10interface_tenant\x18\x45 \x01(\x0b\x32\x10.diode.v1.TenantH\x00R\x0finterfaceTenant\x12M\n\x16interface_tenant_group\x18\x46 \x01(\x0b\x32\x15.diode.v1.TenantGroupH\x00R\x14interfaceTenantGroup\x12=\n\x10interface_tunnel\x18G \x01(\x0b\x32\x10.diode.v1.TunnelH\x00R\x0finterfaceTunnel\x12M\n\x16interface_tunnel_group\x18H \x01(\x0b\x32\x15.diode.v1.TunnelGroupH\x00R\x14interfaceTunnelGroup\x12_\n\x1cinterface_tunnel_termination\x18I \x01(\x0b\x32\x1b.diode.v1.TunnelTerminationH\x00R\x1ainterfaceTunnelTermination\x12\x37\n\x0einterface_vlan\x18J \x01(\x0b\x32\x0e.diode.v1.VLANH\x00R\rinterfaceVlan\x12G\n\x14interface_vlan_group\x18K \x01(\x0b\x32\x13.diode.v1.VLANGroupH\x00R\x12interfaceVlanGroup\x12l\n!interface_vlan_translation_policy\x18L \x01(\x0b\x32\x1f.diode.v1.VLANTranslationPolicyH\x00R\x1einterfaceVlanTranslationPolicy\x12\x66\n\x1finterface_vlan_translation_rule\x18M \x01(\x0b\x32\x1d.diode.v1.VLANTranslationRuleH\x00R\x1cinterfaceVlanTranslationRule\x12M\n\x16interface_vm_interface\x18N \x01(\x0b\x32\x15.diode.v1.VMInterfaceH\x00R\x14interfaceVmInterface\x12\x34\n\rinterface_vrf\x18O \x01(\x0b\x32\r.diode.v1.VRFH\x00R\x0cinterfaceVrf\x12V\n\x19interface_virtual_chassis\x18P \x01(\x0b\x32\x18.diode.v1.VirtualChassisH\x00R\x17interfaceVirtualChassis\x12V\n\x19interface_virtual_circuit\x18Q \x01(\x0b\x32\x18.diode.v1.VirtualCircuitH\x00R\x17interfaceVirtualCircuit\x12x\n%interface_virtual_circuit_termination\x18R \x01(\x0b\x32#.diode.v1.VirtualCircuitTerminationH\x00R\"interfaceVirtualCircuitTermination\x12\x63\n\x1einterface_virtual_circuit_type\x18S \x01(\x0b\x32\x1c.diode.v1.VirtualCircuitTypeH\x00R\x1binterfaceVirtualCircuitType\x12i\n interface_virtual_device_context\x18T \x01(\x0b\x32\x1e.diode.v1.VirtualDeviceContextH\x00R\x1dinterfaceVirtualDeviceContext\x12M\n\x16interface_virtual_disk\x18U \x01(\x0b\x32\x15.diode.v1.VirtualDiskH\x00R\x14interfaceVirtualDisk\x12V\n\x19interface_virtual_machine\x18V \x01(\x0b\x32\x18.diode.v1.VirtualMachineH\x00R\x17interfaceVirtualMachine\x12M\n\x16interface_wireless_lan\x18W \x01(\x0b\x32\x15.diode.v1.WirelessLANH\x00R\x14interfaceWirelessLan\x12]\n\x1cinterface_wireless_lan_group\x18X \x01(\x0b\x32\x1a.diode.v1.WirelessLANGroupH\x00R\x19interfaceWirelessLanGroup\x12P\n\x17interface_wireless_link\x18Y \x01(\x0b\x32\x16.diode.v1.WirelessLinkH\x00R\x15interfaceWirelessLink\x12M\n\x16interface_custom_field\x18[ \x01(\x0b\x32\x15.diode.v1.CustomFieldH\x00R\x14interfaceCustomField\x12j\n!interface_custom_field_choice_set\x18\\ \x01(\x0b\x32\x1e.diode.v1.CustomFieldChoiceSetH\x00R\x1dinterfaceCustomFieldChoiceSet\x12P\n\x17interface_journal_entry\x18] \x01(\x0b\x32\x16.diode.v1.JournalEntryH\x00R\x15interfaceJournalEntry\x12`\n\x1dinterface_module_type_profile\x18^ \x01(\x0b\x32\x1b.diode.v1.ModuleTypeProfileH\x00R\x1ainterfaceModuleTypeProfile\x12J\n\x15interface_custom_link\x18_ \x01(\x0b\x32\x14.diode.v1.CustomLinkH\x00R\x13interfaceCustomLink\x12:\n\x0finterface_owner\x18\x61 \x01(\x0b\x32\x0f.diode.v1.OwnerH\x00R\x0einterfaceOwner\x12J\n\x15interface_owner_group\x18\x62 \x01(\x0b\x32\x14.diode.v1.OwnerGroupH\x00R\x13interfaceOwnerGroup\x12M\n\x16interface_cable_bundle\x18\x63 \x01(\x0b\x32\x15.diode.v1.CableBundleH\x00R\x14interfaceCableBundle\x12G\n\x14interface_rack_group\x18\x64 \x01(\x0b\x32\x13.diode.v1.RackGroupH\x00R\x12interfaceRackGroup\x12P\n\x17interface_script_module\x18\x65 \x01(\x0b\x32\x16.diode.v1.ScriptModuleH\x00R\x15interfaceScriptModule\x12\x63\n\x1einterface_virtual_machine_type\x18\x66 \x01(\x0b\x32\x1c.diode.v1.VirtualMachineTypeH\x00R\x1binterfaceVirtualMachineType\x12\x37\n\x0einterface_user\x18g \x01(\x0b\x32\x0e.diode.v1.UserH\x00R\rinterfaceUser\x12\x1a\n\x08priority\x18Z \x01(\x03R\x08priority\x12\x39\n\x08metadata\x18` \x01(\x0b\x32\x17.google.protobuf.StructB\x04\x88\xb5\x18\x00R\x08metadataB\x0b\n\tinterface\"\xfb\t\n\tFrontPort\x12(\n\x06\x64\x65vice\x18\x01 \x01(\x0b\x32\x10.diode.v1.DeviceR\x06\x64\x65vice\x12-\n\x06module\x18\x02 \x01(\x0b\x32\x10.diode.v1.ModuleH\x00R\x06module\x88\x01\x01\x12\x12\n\x04name\x18\x03 \x01(\tR\x04name\x12\x19\n\x05label\x18\x04 \x01(\tH\x01R\x05label\x88\x01\x01\x12\xc4\x03\n\x04type\x18\x05 \x01(\tB\xaf\x03\xfa\x42\xab\x03r\xa8\x03R\t110-punchR\x04\x34p2cR\x04\x34p4cR\x04\x36p2cR\x04\x36p4cR\x04\x36p6cR\x04\x38p2cR\x04\x38p4cR\x04\x38p6cR\x04\x38p8cR\x03\x62ncR\x02\x63sR\x01\x66R\x02\x66\x63R\x06\x66\x63-apcR\x05\x66\x63-pcR\x06\x66\x63-upcR\x04gg45R\x02lcR\x06lc-apcR\x05lc-pcR\x06lc-upcR\x03lshR\x07lsh-apcR\x06lsh-pcR\x07lsh-upcR\x03lx5R\x07lx5-apcR\x06lx5-pcR\x07lx5-upcR\x03mpoR\x05mrj21R\x04mtrjR\x01nR\x05otherR\x02scR\x06sc-apcR\x05sc-pcR\x06sc-upcR\x07sma-905R\x07sma-906R\x02snR\x06spliceR\x02stR\x07tera-1pR\x07tera-2pR\x07tera-4pR\x06urm-p2R\x06urm-p4R\x06urm-p8R\x05usb-aR\x05usb-bR\x05usb-cR\x0busb-micro-aR\x0cusb-micro-abR\x0busb-micro-bR\nusb-mini-aR\nusb-mini-bR\x04type\x12\x19\n\x05\x63olor\x18\x06 \x01(\tH\x02R\x05\x63olor\x88\x01\x01\x12\x33\n\trear_port\x18\x07 \x01(\x0b\x32\x12.diode.v1.RearPortB\x02\x18\x01R\x08rearPort\x12\x35\n\x12rear_port_position\x18\x08 \x01(\x03\x42\x02\x18\x01H\x03R\x10rearPortPosition\x88\x01\x01\x12%\n\x0b\x64\x65scription\x18\t \x01(\tH\x04R\x0b\x64\x65scription\x88\x01\x01\x12*\n\x0emark_connected\x18\n \x01(\x08H\x05R\rmarkConnected\x88\x01\x01\x12!\n\x04tags\x18\x0b \x03(\x0b\x32\r.diode.v1.TagR\x04tags\x12J\n\rcustom_fields\x18\x0c \x03(\x0b\x32%.diode.v1.FrontPort.CustomFieldsEntryR\x0c\x63ustomFields\x12\x39\n\x08metadata\x18\r \x01(\x0b\x32\x17.google.protobuf.StructB\x04\x88\xb5\x18\x00R\x08metadata\x12!\n\tpositions\x18\x0e \x01(\x03H\x06R\tpositions\x88\x01\x01\x12*\n\x05owner\x18\x0f \x01(\x0b\x32\x0f.diode.v1.OwnerH\x07R\x05owner\x88\x01\x01\x1a[\n\x11\x43ustomFieldsEntry\x12\x10\n\x03key\x18\x01 \x01(\tR\x03key\x12\x30\n\x05value\x18\x02 \x01(\x0b\x32\x1a.diode.v1.CustomFieldValueR\x05value:\x02\x38\x01\x42\t\n\x07_moduleB\x08\n\x06_labelB\x08\n\x06_colorB\x15\n\x13_rear_port_positionB\x0e\n\x0c_descriptionB\x11\n\x0f_mark_connectedB\x0c\n\n_positionsB\x08\n\x06_owner\"\xd1\x38\n\rGenericObject\x12.\n\nobject_asn\x18\x01 \x01(\x0b\x32\r.diode.v1.ASNH\x00R\tobjectAsn\x12>\n\x10object_asn_range\x18\x02 \x01(\x0b\x32\x12.diode.v1.ASNRangeH\x00R\x0eobjectAsnRange\x12@\n\x10object_aggregate\x18\x03 \x01(\x0b\x32\x13.diode.v1.AggregateH\x00R\x0fobjectAggregate\x12\x34\n\x0cobject_cable\x18\x04 \x01(\x0b\x32\x0f.diode.v1.CableH\x00R\x0bobjectCable\x12\x41\n\x11object_cable_path\x18\x05 \x01(\x0b\x32\x13.diode.v1.CablePathH\x00R\x0fobjectCablePath\x12Z\n\x18object_cable_termination\x18\x06 \x01(\x0b\x32\x1a.diode.v1.CableTerminationB\x02\x18\x01H\x00R\x16objectCableTermination\x12:\n\x0eobject_circuit\x18\x07 \x01(\x0b\x32\x11.diode.v1.CircuitH\x00R\robjectCircuit\x12J\n\x14object_circuit_group\x18\x08 \x01(\x0b\x32\x16.diode.v1.CircuitGroupH\x00R\x12objectCircuitGroup\x12i\n\x1fobject_circuit_group_assignment\x18\t \x01(\x0b\x32 .diode.v1.CircuitGroupAssignmentH\x00R\x1cobjectCircuitGroupAssignment\x12\\\n\x1aobject_circuit_termination\x18\n \x01(\x0b\x32\x1c.diode.v1.CircuitTerminationH\x00R\x18objectCircuitTermination\x12G\n\x13object_circuit_type\x18\x0b \x01(\x0b\x32\x15.diode.v1.CircuitTypeH\x00R\x11objectCircuitType\x12:\n\x0eobject_cluster\x18\x0c \x01(\x0b\x32\x11.diode.v1.ClusterH\x00R\robjectCluster\x12J\n\x14object_cluster_group\x18\r \x01(\x0b\x32\x16.diode.v1.ClusterGroupH\x00R\x12objectClusterGroup\x12G\n\x13object_cluster_type\x18\x0e \x01(\x0b\x32\x15.diode.v1.ClusterTypeH\x00R\x11objectClusterType\x12G\n\x13object_console_port\x18\x0f \x01(\x0b\x32\x15.diode.v1.ConsolePortH\x00R\x11objectConsolePort\x12Z\n\x1aobject_console_server_port\x18\x10 \x01(\x0b\x32\x1b.diode.v1.ConsoleServerPortH\x00R\x17objectConsoleServerPort\x12:\n\x0eobject_contact\x18\x11 \x01(\x0b\x32\x11.diode.v1.ContactH\x00R\robjectContact\x12Y\n\x19object_contact_assignment\x18\x12 \x01(\x0b\x32\x1b.diode.v1.ContactAssignmentH\x00R\x17objectContactAssignment\x12J\n\x14object_contact_group\x18\x13 \x01(\x0b\x32\x16.diode.v1.ContactGroupH\x00R\x12objectContactGroup\x12G\n\x13object_contact_role\x18\x14 \x01(\x0b\x32\x15.diode.v1.ContactRoleH\x00R\x11objectContactRole\x12\x37\n\robject_device\x18\x15 \x01(\x0b\x32\x10.diode.v1.DeviceH\x00R\x0cobjectDevice\x12\x41\n\x11object_device_bay\x18\x16 \x01(\x0b\x32\x13.diode.v1.DeviceBayH\x00R\x0fobjectDeviceBay\x12\x44\n\x12object_device_role\x18\x17 \x01(\x0b\x32\x14.diode.v1.DeviceRoleH\x00R\x10objectDeviceRole\x12\x44\n\x12object_device_type\x18\x18 \x01(\x0b\x32\x14.diode.v1.DeviceTypeH\x00R\x10objectDeviceType\x12\x41\n\x11object_fhrp_group\x18\x19 \x01(\x0b\x32\x13.diode.v1.FHRPGroupH\x00R\x0fobjectFhrpGroup\x12`\n\x1cobject_fhrp_group_assignment\x18\x1a \x01(\x0b\x32\x1d.diode.v1.FHRPGroupAssignmentH\x00R\x19objectFhrpGroupAssignment\x12\x41\n\x11object_front_port\x18\x1b \x01(\x0b\x32\x13.diode.v1.FrontPortH\x00R\x0fobjectFrontPort\x12\x41\n\x11object_ike_policy\x18\x1c \x01(\x0b\x32\x13.diode.v1.IKEPolicyH\x00R\x0fobjectIkePolicy\x12G\n\x13object_ike_proposal\x18\x1d \x01(\x0b\x32\x15.diode.v1.IKEProposalH\x00R\x11objectIkeProposal\x12\x41\n\x11object_ip_address\x18\x1e \x01(\x0b\x32\x13.diode.v1.IPAddressH\x00R\x0fobjectIpAddress\x12;\n\x0fobject_ip_range\x18\x1f \x01(\x0b\x32\x11.diode.v1.IPRangeH\x00R\robjectIpRange\x12H\n\x14object_ip_sec_policy\x18 \x01(\x0b\x32\x15.diode.v1.IPSecPolicyH\x00R\x11objectIpSecPolicy\x12K\n\x15object_ip_sec_profile\x18! \x01(\x0b\x32\x16.diode.v1.IPSecProfileH\x00R\x12objectIpSecProfile\x12N\n\x16object_ip_sec_proposal\x18\" \x01(\x0b\x32\x17.diode.v1.IPSecProposalH\x00R\x13objectIpSecProposal\x12@\n\x10object_interface\x18# \x01(\x0b\x32\x13.diode.v1.InterfaceH\x00R\x0fobjectInterface\x12M\n\x15object_inventory_item\x18$ \x01(\x0b\x32\x17.diode.v1.InventoryItemH\x00R\x13objectInventoryItem\x12Z\n\x1aobject_inventory_item_role\x18% \x01(\x0b\x32\x1b.diode.v1.InventoryItemRoleH\x00R\x17objectInventoryItemRole\x12\x34\n\x0cobject_l2vpn\x18& \x01(\x0b\x32\x0f.diode.v1.L2VPNH\x00R\x0bobjectL2vpn\x12V\n\x18object_l2vpn_termination\x18\' \x01(\x0b\x32\x1a.diode.v1.L2VPNTerminationH\x00R\x16objectL2vpnTermination\x12=\n\x0fobject_location\x18( \x01(\x0b\x32\x12.diode.v1.LocationH\x00R\x0eobjectLocation\x12\x44\n\x12object_mac_address\x18) \x01(\x0b\x32\x14.diode.v1.MACAddressH\x00R\x10objectMacAddress\x12I\n\x13object_manufacturer\x18* \x01(\x0b\x32\x16.diode.v1.ManufacturerH\x00R\x12objectManufacturer\x12\x37\n\robject_module\x18+ \x01(\x0b\x32\x10.diode.v1.ModuleH\x00R\x0cobjectModule\x12\x41\n\x11object_module_bay\x18, \x01(\x0b\x32\x13.diode.v1.ModuleBayH\x00R\x0fobjectModuleBay\x12\x44\n\x12object_module_type\x18- \x01(\x0b\x32\x14.diode.v1.ModuleTypeH\x00R\x10objectModuleType\x12=\n\x0fobject_platform\x18. \x01(\x0b\x32\x12.diode.v1.PlatformH\x00R\x0eobjectPlatform\x12\x41\n\x11object_power_feed\x18/ \x01(\x0b\x32\x13.diode.v1.PowerFeedH\x00R\x0fobjectPowerFeed\x12G\n\x13object_power_outlet\x18\x30 \x01(\x0b\x32\x15.diode.v1.PowerOutletH\x00R\x11objectPowerOutlet\x12\x44\n\x12object_power_panel\x18\x31 \x01(\x0b\x32\x14.diode.v1.PowerPanelH\x00R\x10objectPowerPanel\x12\x41\n\x11object_power_port\x18\x32 \x01(\x0b\x32\x13.diode.v1.PowerPortH\x00R\x0fobjectPowerPort\x12\x37\n\robject_prefix\x18\x33 \x01(\x0b\x32\x10.diode.v1.PrefixH\x00R\x0cobjectPrefix\x12=\n\x0fobject_provider\x18\x34 \x01(\x0b\x32\x12.diode.v1.ProviderH\x00R\x0eobjectProvider\x12S\n\x17object_provider_account\x18\x35 \x01(\x0b\x32\x19.diode.v1.ProviderAccountH\x00R\x15objectProviderAccount\x12S\n\x17object_provider_network\x18\x36 \x01(\x0b\x32\x19.diode.v1.ProviderNetworkH\x00R\x15objectProviderNetwork\x12.\n\nobject_rir\x18\x37 \x01(\x0b\x32\r.diode.v1.RIRH\x00R\tobjectRir\x12\x31\n\x0bobject_rack\x18\x38 \x01(\x0b\x32\x0e.diode.v1.RackH\x00R\nobjectRack\x12S\n\x17object_rack_reservation\x18\x39 \x01(\x0b\x32\x19.diode.v1.RackReservationH\x00R\x15objectRackReservation\x12>\n\x10object_rack_role\x18: \x01(\x0b\x32\x12.diode.v1.RackRoleH\x00R\x0eobjectRackRole\x12>\n\x10object_rack_type\x18; \x01(\x0b\x32\x12.diode.v1.RackTypeH\x00R\x0eobjectRackType\x12>\n\x10object_rear_port\x18< \x01(\x0b\x32\x12.diode.v1.RearPortH\x00R\x0eobjectRearPort\x12\x37\n\robject_region\x18= \x01(\x0b\x32\x10.diode.v1.RegionH\x00R\x0cobjectRegion\x12\x31\n\x0bobject_role\x18> \x01(\x0b\x32\x0e.diode.v1.RoleH\x00R\nobjectRole\x12G\n\x13object_route_target\x18? \x01(\x0b\x32\x15.diode.v1.RouteTargetH\x00R\x11objectRouteTarget\x12:\n\x0eobject_service\x18@ \x01(\x0b\x32\x11.diode.v1.ServiceH\x00R\robjectService\x12\x31\n\x0bobject_site\x18\x41 \x01(\x0b\x32\x0e.diode.v1.SiteH\x00R\nobjectSite\x12\x41\n\x11object_site_group\x18\x42 \x01(\x0b\x32\x13.diode.v1.SiteGroupH\x00R\x0fobjectSiteGroup\x12.\n\nobject_tag\x18\x43 \x01(\x0b\x32\r.diode.v1.TagH\x00R\tobjectTag\x12\x37\n\robject_tenant\x18\x44 \x01(\x0b\x32\x10.diode.v1.TenantH\x00R\x0cobjectTenant\x12G\n\x13object_tenant_group\x18\x45 \x01(\x0b\x32\x15.diode.v1.TenantGroupH\x00R\x11objectTenantGroup\x12\x37\n\robject_tunnel\x18\x46 \x01(\x0b\x32\x10.diode.v1.TunnelH\x00R\x0cobjectTunnel\x12G\n\x13object_tunnel_group\x18G \x01(\x0b\x32\x15.diode.v1.TunnelGroupH\x00R\x11objectTunnelGroup\x12Y\n\x19object_tunnel_termination\x18H \x01(\x0b\x32\x1b.diode.v1.TunnelTerminationH\x00R\x17objectTunnelTermination\x12\x31\n\x0bobject_vlan\x18I \x01(\x0b\x32\x0e.diode.v1.VLANH\x00R\nobjectVlan\x12\x41\n\x11object_vlan_group\x18J \x01(\x0b\x32\x13.diode.v1.VLANGroupH\x00R\x0fobjectVlanGroup\x12\x66\n\x1eobject_vlan_translation_policy\x18K \x01(\x0b\x32\x1f.diode.v1.VLANTranslationPolicyH\x00R\x1bobjectVlanTranslationPolicy\x12`\n\x1cobject_vlan_translation_rule\x18L \x01(\x0b\x32\x1d.diode.v1.VLANTranslationRuleH\x00R\x19objectVlanTranslationRule\x12G\n\x13object_vm_interface\x18M \x01(\x0b\x32\x15.diode.v1.VMInterfaceH\x00R\x11objectVmInterface\x12.\n\nobject_vrf\x18N \x01(\x0b\x32\r.diode.v1.VRFH\x00R\tobjectVrf\x12P\n\x16object_virtual_chassis\x18O \x01(\x0b\x32\x18.diode.v1.VirtualChassisH\x00R\x14objectVirtualChassis\x12P\n\x16object_virtual_circuit\x18P \x01(\x0b\x32\x18.diode.v1.VirtualCircuitH\x00R\x14objectVirtualCircuit\x12r\n\"object_virtual_circuit_termination\x18Q \x01(\x0b\x32#.diode.v1.VirtualCircuitTerminationH\x00R\x1fobjectVirtualCircuitTermination\x12]\n\x1bobject_virtual_circuit_type\x18R \x01(\x0b\x32\x1c.diode.v1.VirtualCircuitTypeH\x00R\x18objectVirtualCircuitType\x12\x63\n\x1dobject_virtual_device_context\x18S \x01(\x0b\x32\x1e.diode.v1.VirtualDeviceContextH\x00R\x1aobjectVirtualDeviceContext\x12G\n\x13object_virtual_disk\x18T \x01(\x0b\x32\x15.diode.v1.VirtualDiskH\x00R\x11objectVirtualDisk\x12P\n\x16object_virtual_machine\x18U \x01(\x0b\x32\x18.diode.v1.VirtualMachineH\x00R\x14objectVirtualMachine\x12G\n\x13object_wireless_lan\x18V \x01(\x0b\x32\x15.diode.v1.WirelessLANH\x00R\x11objectWirelessLan\x12W\n\x19object_wireless_lan_group\x18W \x01(\x0b\x32\x1a.diode.v1.WirelessLANGroupH\x00R\x16objectWirelessLanGroup\x12J\n\x14object_wireless_link\x18X \x01(\x0b\x32\x16.diode.v1.WirelessLinkH\x00R\x12objectWirelessLink\x12G\n\x13object_custom_field\x18Y \x01(\x0b\x32\x15.diode.v1.CustomFieldH\x00R\x11objectCustomField\x12\x64\n\x1eobject_custom_field_choice_set\x18Z \x01(\x0b\x32\x1e.diode.v1.CustomFieldChoiceSetH\x00R\x1aobjectCustomFieldChoiceSet\x12J\n\x14object_journal_entry\x18[ \x01(\x0b\x32\x16.diode.v1.JournalEntryH\x00R\x12objectJournalEntry\x12Z\n\x1aobject_module_type_profile\x18\\ \x01(\x0b\x32\x1b.diode.v1.ModuleTypeProfileH\x00R\x17objectModuleTypeProfile\x12\x44\n\x12object_custom_link\x18] \x01(\x0b\x32\x14.diode.v1.CustomLinkH\x00R\x10objectCustomLink\x12\x34\n\x0cobject_owner\x18^ \x01(\x0b\x32\x0f.diode.v1.OwnerH\x00R\x0bobjectOwner\x12\x44\n\x12object_owner_group\x18_ \x01(\x0b\x32\x14.diode.v1.OwnerGroupH\x00R\x10objectOwnerGroup\x12G\n\x13object_cable_bundle\x18` \x01(\x0b\x32\x15.diode.v1.CableBundleH\x00R\x11objectCableBundle\x12\x41\n\x11object_rack_group\x18\x61 \x01(\x0b\x32\x13.diode.v1.RackGroupH\x00R\x0fobjectRackGroup\x12J\n\x14object_script_module\x18\x62 \x01(\x0b\x32\x16.diode.v1.ScriptModuleH\x00R\x12objectScriptModule\x12]\n\x1bobject_virtual_machine_type\x18\x63 \x01(\x0b\x32\x1c.diode.v1.VirtualMachineTypeH\x00R\x18objectVirtualMachineType\x12\x31\n\x0bobject_user\x18\x64 \x01(\x0b\x32\x0e.diode.v1.UserH\x00R\nobjectUserB\x08\n\x06object\"\x92\x05\n\tIKEPolicy\x12\x12\n\x04name\x18\x01 \x01(\tR\x04name\x12%\n\x0b\x64\x65scription\x18\x02 \x01(\tH\x00R\x0b\x64\x65scription\x88\x01\x01\x12#\n\x07version\x18\x03 \x01(\x03\x42\t\xfa\x42\x06\"\x04\x30\x01\x30\x02R\x07version\x12\x30\n\x04mode\x18\x04 \x01(\tB\x17\xfa\x42\x14r\x12R\naggressiveR\x04mainH\x01R\x04mode\x88\x01\x01\x12(\n\rpreshared_key\x18\x05 \x01(\tH\x02R\x0cpresharedKey\x88\x01\x01\x12\x1f\n\x08\x63omments\x18\x06 \x01(\tH\x03R\x08\x63omments\x88\x01\x01\x12!\n\x04tags\x18\x07 \x03(\x0b\x32\r.diode.v1.TagR\x04tags\x12J\n\rcustom_fields\x18\x08 \x03(\x0b\x32%.diode.v1.IKEPolicy.CustomFieldsEntryR\x0c\x63ustomFields\x12\x33\n\tproposals\x18\t \x03(\x0b\x32\x15.diode.v1.IKEProposalR\tproposals\x12\x39\n\x08metadata\x18\n \x01(\x0b\x32\x17.google.protobuf.StructB\x04\x88\xb5\x18\x00R\x08metadata\x12*\n\x05owner\x18\x0b \x01(\x0b\x32\x0f.diode.v1.OwnerH\x04R\x05owner\x88\x01\x01\x1a[\n\x11\x43ustomFieldsEntry\x12\x10\n\x03key\x18\x01 \x01(\tR\x03key\x12\x30\n\x05value\x18\x02 \x01(\x0b\x32\x1a.diode.v1.CustomFieldValueR\x05value:\x02\x38\x01\x42\x0e\n\x0c_descriptionB\x07\n\x05_modeB\x10\n\x0e_preshared_keyB\x0b\n\t_commentsB\x08\n\x06_owner\"\xff\x07\n\x0bIKEProposal\x12\x12\n\x04name\x18\x01 \x01(\tR\x04name\x12%\n\x0b\x64\x65scription\x18\x02 \x01(\tH\x00R\x0b\x64\x65scription\x88\x01\x01\x12x\n\x15\x61uthentication_method\x18\x03 \x01(\tBC\xfa\x42@r>R\x0c\x63\x65rtificatesR\x0e\x64sa-signaturesR\x0epreshared-keysR\x0ersa-signaturesR\x14\x61uthenticationMethod\x12\x99\x01\n\x14\x65ncryption_algorithm\x18\x04 \x01(\tBf\xfa\x42\x63raR\x08\x33\x64\x65s-cbcR\x0b\x61\x65s-128-cbcR\x0b\x61\x65s-128-gcmR\x0b\x61\x65s-192-cbcR\x0b\x61\x65s-192-gcmR\x0b\x61\x65s-256-cbcR\x0b\x61\x65s-256-gcmR\x07\x64\x65s-cbcR\x13\x65ncryptionAlgorithm\x12\x81\x01\n\x18\x61uthentication_algorithm\x18\x05 \x01(\tBA\xfa\x42>rr \x01(\x0b\x32\x19.diode.v1.ProviderAccountH\x00R\x1d\x61ssignedObjectProviderAccount\x12\x64\n assigned_object_provider_network\x18? \x01(\x0b\x32\x19.diode.v1.ProviderNetworkH\x00R\x1d\x61ssignedObjectProviderNetwork\x12?\n\x13\x61ssigned_object_rir\x18@ \x01(\x0b\x32\r.diode.v1.RIRH\x00R\x11\x61ssignedObjectRir\x12\x42\n\x14\x61ssigned_object_rack\x18\x41 \x01(\x0b\x32\x0e.diode.v1.RackH\x00R\x12\x61ssignedObjectRack\x12\x64\n assigned_object_rack_reservation\x18\x42 \x01(\x0b\x32\x19.diode.v1.RackReservationH\x00R\x1d\x61ssignedObjectRackReservation\x12O\n\x19\x61ssigned_object_rack_role\x18\x43 \x01(\x0b\x32\x12.diode.v1.RackRoleH\x00R\x16\x61ssignedObjectRackRole\x12O\n\x19\x61ssigned_object_rack_type\x18\x44 \x01(\x0b\x32\x12.diode.v1.RackTypeH\x00R\x16\x61ssignedObjectRackType\x12O\n\x19\x61ssigned_object_rear_port\x18\x45 \x01(\x0b\x32\x12.diode.v1.RearPortH\x00R\x16\x61ssignedObjectRearPort\x12H\n\x16\x61ssigned_object_region\x18\x46 \x01(\x0b\x32\x10.diode.v1.RegionH\x00R\x14\x61ssignedObjectRegion\x12\x42\n\x14\x61ssigned_object_role\x18G \x01(\x0b\x32\x0e.diode.v1.RoleH\x00R\x12\x61ssignedObjectRole\x12X\n\x1c\x61ssigned_object_route_target\x18H \x01(\x0b\x32\x15.diode.v1.RouteTargetH\x00R\x19\x61ssignedObjectRouteTarget\x12K\n\x17\x61ssigned_object_service\x18I \x01(\x0b\x32\x11.diode.v1.ServiceH\x00R\x15\x61ssignedObjectService\x12\x42\n\x14\x61ssigned_object_site\x18J \x01(\x0b\x32\x0e.diode.v1.SiteH\x00R\x12\x61ssignedObjectSite\x12R\n\x1a\x61ssigned_object_site_group\x18K \x01(\x0b\x32\x13.diode.v1.SiteGroupH\x00R\x17\x61ssignedObjectSiteGroup\x12?\n\x13\x61ssigned_object_tag\x18L \x01(\x0b\x32\r.diode.v1.TagH\x00R\x11\x61ssignedObjectTag\x12H\n\x16\x61ssigned_object_tenant\x18M \x01(\x0b\x32\x10.diode.v1.TenantH\x00R\x14\x61ssignedObjectTenant\x12X\n\x1c\x61ssigned_object_tenant_group\x18N \x01(\x0b\x32\x15.diode.v1.TenantGroupH\x00R\x19\x61ssignedObjectTenantGroup\x12H\n\x16\x61ssigned_object_tunnel\x18O \x01(\x0b\x32\x10.diode.v1.TunnelH\x00R\x14\x61ssignedObjectTunnel\x12X\n\x1c\x61ssigned_object_tunnel_group\x18P \x01(\x0b\x32\x15.diode.v1.TunnelGroupH\x00R\x19\x61ssignedObjectTunnelGroup\x12j\n\"assigned_object_tunnel_termination\x18Q \x01(\x0b\x32\x1b.diode.v1.TunnelTerminationH\x00R\x1f\x61ssignedObjectTunnelTermination\x12R\n\x1a\x61ssigned_object_vlan_group\x18R \x01(\x0b\x32\x13.diode.v1.VLANGroupH\x00R\x17\x61ssignedObjectVlanGroup\x12w\n\'assigned_object_vlan_translation_policy\x18S \x01(\x0b\x32\x1f.diode.v1.VLANTranslationPolicyH\x00R#assignedObjectVlanTranslationPolicy\x12q\n%assigned_object_vlan_translation_rule\x18T \x01(\x0b\x32\x1d.diode.v1.VLANTranslationRuleH\x00R!assignedObjectVlanTranslationRule\x12?\n\x13\x61ssigned_object_vrf\x18U \x01(\x0b\x32\r.diode.v1.VRFH\x00R\x11\x61ssignedObjectVrf\x12\x61\n\x1f\x61ssigned_object_virtual_chassis\x18V \x01(\x0b\x32\x18.diode.v1.VirtualChassisH\x00R\x1c\x61ssignedObjectVirtualChassis\x12\x61\n\x1f\x61ssigned_object_virtual_circuit\x18W \x01(\x0b\x32\x18.diode.v1.VirtualCircuitH\x00R\x1c\x61ssignedObjectVirtualCircuit\x12\x83\x01\n+assigned_object_virtual_circuit_termination\x18X \x01(\x0b\x32#.diode.v1.VirtualCircuitTerminationH\x00R\'assignedObjectVirtualCircuitTermination\x12n\n$assigned_object_virtual_circuit_type\x18Y \x01(\x0b\x32\x1c.diode.v1.VirtualCircuitTypeH\x00R assignedObjectVirtualCircuitType\x12t\n&assigned_object_virtual_device_context\x18Z \x01(\x0b\x32\x1e.diode.v1.VirtualDeviceContextH\x00R\"assignedObjectVirtualDeviceContext\x12X\n\x1c\x61ssigned_object_virtual_disk\x18[ \x01(\x0b\x32\x15.diode.v1.VirtualDiskH\x00R\x19\x61ssignedObjectVirtualDisk\x12\x61\n\x1f\x61ssigned_object_virtual_machine\x18\\ \x01(\x0b\x32\x18.diode.v1.VirtualMachineH\x00R\x1c\x61ssignedObjectVirtualMachine\x12X\n\x1c\x61ssigned_object_wireless_lan\x18] \x01(\x0b\x32\x15.diode.v1.WirelessLANH\x00R\x19\x61ssignedObjectWirelessLan\x12h\n\"assigned_object_wireless_lan_group\x18^ \x01(\x0b\x32\x1a.diode.v1.WirelessLANGroupH\x00R\x1e\x61ssignedObjectWirelessLanGroup\x12[\n\x1d\x61ssigned_object_wireless_link\x18_ \x01(\x0b\x32\x16.diode.v1.WirelessLinkH\x00R\x1a\x61ssignedObjectWirelessLink\x12U\n\x1b\x61ssigned_object_custom_link\x18` \x01(\x0b\x32\x14.diode.v1.CustomLinkH\x00R\x18\x61ssignedObjectCustomLink\x12\x45\n\x15\x61ssigned_object_owner\x18\x62 \x01(\x0b\x32\x0f.diode.v1.OwnerH\x00R\x13\x61ssignedObjectOwner\x12U\n\x1b\x61ssigned_object_owner_group\x18\x63 \x01(\x0b\x32\x14.diode.v1.OwnerGroupH\x00R\x18\x61ssignedObjectOwnerGroup\x12X\n\x1c\x61ssigned_object_cable_bundle\x18\x64 \x01(\x0b\x32\x15.diode.v1.CableBundleH\x00R\x19\x61ssignedObjectCableBundle\x12R\n\x1a\x61ssigned_object_rack_group\x18\x65 \x01(\x0b\x32\x13.diode.v1.RackGroupH\x00R\x17\x61ssignedObjectRackGroup\x12[\n\x1d\x61ssigned_object_script_module\x18\x66 \x01(\x0b\x32\x16.diode.v1.ScriptModuleH\x00R\x1a\x61ssignedObjectScriptModule\x12n\n$assigned_object_virtual_machine_type\x18g \x01(\x0b\x32\x1c.diode.v1.VirtualMachineTypeH\x00R assignedObjectVirtualMachineType\x12\x42\n\x14\x61ssigned_object_user\x18h \x01(\x0b\x32\x0e.diode.v1.UserH\x00R\x12\x61ssignedObjectUser\x12!\n\x04tags\x18\x05 \x03(\x0b\x32\r.diode.v1.TagR\x04tags\x12Q\n\rcustom_fields\x18\x06 \x03(\x0b\x32,.diode.v1.L2VPNTermination.CustomFieldsEntryR\x0c\x63ustomFields\x12\x39\n\x08metadata\x18\x61 \x01(\x0b\x32\x17.google.protobuf.StructB\x04\x88\xb5\x18\x00R\x08metadata\x1a[\n\x11\x43ustomFieldsEntry\x12\x10\n\x03key\x18\x01 \x01(\tR\x03key\x12\x30\n\x05value\x18\x02 \x01(\x0b\x32\x1a.diode.v1.CustomFieldValueR\x05value:\x02\x38\x01\x42\x11\n\x0f\x61ssigned_object\"\xfe\x05\n\x08Location\x12\x12\n\x04name\x18\x01 \x01(\tR\x04name\x12\x12\n\x04slug\x18\x02 \x01(\tR\x04slug\x12\"\n\x04site\x18\x03 \x01(\x0b\x32\x0e.diode.v1.SiteR\x04site\x12/\n\x06parent\x18\x04 \x01(\x0b\x32\x12.diode.v1.LocationH\x00R\x06parent\x88\x01\x01\x12V\n\x06status\x18\x05 \x01(\tB9\xfa\x42\x36r4R\x06\x61\x63tiveR\x0f\x64\x65\x63ommissioningR\x07plannedR\x07retiredR\x07stagingH\x01R\x06status\x88\x01\x01\x12-\n\x06tenant\x18\x06 \x01(\x0b\x32\x10.diode.v1.TenantH\x02R\x06tenant\x88\x01\x01\x12\x1f\n\x08\x66\x61\x63ility\x18\x07 \x01(\tH\x03R\x08\x66\x61\x63ility\x88\x01\x01\x12%\n\x0b\x64\x65scription\x18\x08 \x01(\tH\x04R\x0b\x64\x65scription\x88\x01\x01\x12!\n\x04tags\x18\t \x03(\x0b\x32\r.diode.v1.TagR\x04tags\x12I\n\rcustom_fields\x18\n \x03(\x0b\x32$.diode.v1.Location.CustomFieldsEntryR\x0c\x63ustomFields\x12\x1f\n\x08\x63omments\x18\x0b \x01(\tH\x05R\x08\x63omments\x88\x01\x01\x12\x39\n\x08metadata\x18\x0c \x01(\x0b\x32\x17.google.protobuf.StructB\x04\x88\xb5\x18\x00R\x08metadata\x12*\n\x05owner\x18\r \x01(\x0b\x32\x0f.diode.v1.OwnerH\x06R\x05owner\x88\x01\x01\x1a[\n\x11\x43ustomFieldsEntry\x12\x10\n\x03key\x18\x01 \x01(\tR\x03key\x12\x30\n\x05value\x18\x02 \x01(\x0b\x32\x1a.diode.v1.CustomFieldValueR\x05value:\x02\x38\x01\x42\t\n\x07_parentB\t\n\x07_statusB\t\n\x07_tenantB\x0b\n\t_facilityB\x0e\n\x0c_descriptionB\x0b\n\t_commentsB\x08\n\x06_owner\"\x90\x05\n\nMACAddress\x12\x1f\n\x0bmac_address\x18\x01 \x01(\tR\nmacAddress\x12Q\n\x19\x61ssigned_object_interface\x18\x02 \x01(\x0b\x32\x13.diode.v1.InterfaceH\x00R\x17\x61ssignedObjectInterface\x12X\n\x1c\x61ssigned_object_vm_interface\x18\x03 \x01(\x0b\x32\x15.diode.v1.VMInterfaceH\x00R\x19\x61ssignedObjectVmInterface\x12%\n\x0b\x64\x65scription\x18\x04 \x01(\tH\x01R\x0b\x64\x65scription\x88\x01\x01\x12\x1f\n\x08\x63omments\x18\x05 \x01(\tH\x02R\x08\x63omments\x88\x01\x01\x12!\n\x04tags\x18\x06 \x03(\x0b\x32\r.diode.v1.TagR\x04tags\x12K\n\rcustom_fields\x18\x07 \x03(\x0b\x32&.diode.v1.MACAddress.CustomFieldsEntryR\x0c\x63ustomFields\x12\x39\n\x08metadata\x18\x08 \x01(\x0b\x32\x17.google.protobuf.StructB\x04\x88\xb5\x18\x00R\x08metadata\x12*\n\x05owner\x18\t \x01(\x0b\x32\x0f.diode.v1.OwnerH\x03R\x05owner\x88\x01\x01\x1a[\n\x11\x43ustomFieldsEntry\x12\x10\n\x03key\x18\x01 \x01(\tR\x03key\x12\x30\n\x05value\x18\x02 \x01(\x0b\x32\x1a.diode.v1.CustomFieldValueR\x05value:\x02\x38\x01\x42\x11\n\x0f\x61ssigned_objectB\x0e\n\x0c_descriptionB\x0b\n\t_commentsB\x08\n\x06_owner\"\xdb\x03\n\x0cManufacturer\x12\x12\n\x04name\x18\x01 \x01(\tR\x04name\x12\x12\n\x04slug\x18\x02 \x01(\tR\x04slug\x12%\n\x0b\x64\x65scription\x18\x03 \x01(\tH\x00R\x0b\x64\x65scription\x88\x01\x01\x12!\n\x04tags\x18\x04 \x03(\x0b\x32\r.diode.v1.TagR\x04tags\x12M\n\rcustom_fields\x18\x05 \x03(\x0b\x32(.diode.v1.Manufacturer.CustomFieldsEntryR\x0c\x63ustomFields\x12\x39\n\x08metadata\x18\x06 \x01(\x0b\x32\x17.google.protobuf.StructB\x04\x88\xb5\x18\x00R\x08metadata\x12*\n\x05owner\x18\x07 \x01(\x0b\x32\x0f.diode.v1.OwnerH\x01R\x05owner\x88\x01\x01\x12\x1f\n\x08\x63omments\x18\x08 \x01(\tH\x02R\x08\x63omments\x88\x01\x01\x1a[\n\x11\x43ustomFieldsEntry\x12\x10\n\x03key\x18\x01 \x01(\tR\x03key\x12\x30\n\x05value\x18\x02 \x01(\x0b\x32\x1a.diode.v1.CustomFieldValueR\x05value:\x02\x38\x01\x42\x0e\n\x0c_descriptionB\x08\n\x06_ownerB\x0b\n\t_comments\"\x94\x07\n\x06Module\x12(\n\x06\x64\x65vice\x18\x01 \x01(\x0b\x32\x10.diode.v1.DeviceR\x06\x64\x65vice\x12\x32\n\nmodule_bay\x18\x02 \x01(\x0b\x32\x13.diode.v1.ModuleBayR\tmoduleBay\x12\x35\n\x0bmodule_type\x18\x03 \x01(\x0b\x32\x14.diode.v1.ModuleTypeR\nmoduleType\x12]\n\x06status\x18\x04 \x01(\tB@\xfa\x42=r;R\x06\x61\x63tiveR\x0f\x64\x65\x63ommissioningR\x06\x66\x61iledR\x07offlineR\x07plannedR\x06stagedH\x00R\x06status\x88\x01\x01\x12\x1b\n\x06serial\x18\x05 \x01(\tH\x01R\x06serial\x88\x01\x01\x12 \n\tasset_tag\x18\x06 \x01(\tH\x02R\x08\x61ssetTag\x88\x01\x01\x12%\n\x0b\x64\x65scription\x18\x07 \x01(\tH\x03R\x0b\x64\x65scription\x88\x01\x01\x12\x1f\n\x08\x63omments\x18\x08 \x01(\tH\x04R\x08\x63omments\x88\x01\x01\x12!\n\x04tags\x18\t \x03(\x0b\x32\r.diode.v1.TagR\x04tags\x12G\n\rcustom_fields\x18\n \x03(\x0b\x32\".diode.v1.Module.CustomFieldsEntryR\x0c\x63ustomFields\x12\x39\n\x08metadata\x18\x0b \x01(\x0b\x32\x17.google.protobuf.StructB\x04\x88\xb5\x18\x00R\x08metadata\x12*\n\x05owner\x18\x0c \x01(\x0b\x32\x0f.diode.v1.OwnerH\x05R\x05owner\x88\x01\x01\x12\x36\n\x14replicate_components\x18\r \x01(\x08H\x06R\x13replicateComponents\x88\x01\x01\x12.\n\x10\x61\x64opt_components\x18\x0e \x01(\x08H\x07R\x0f\x61\x64optComponents\x88\x01\x01\x1a[\n\x11\x43ustomFieldsEntry\x12\x10\n\x03key\x18\x01 \x01(\tR\x03key\x12\x30\n\x05value\x18\x02 \x01(\x0b\x32\x1a.diode.v1.CustomFieldValueR\x05value:\x02\x38\x01\x42\t\n\x07_statusB\t\n\x07_serialB\x0c\n\n_asset_tagB\x0e\n\x0c_descriptionB\x0b\n\t_commentsB\x08\n\x06_ownerB\x17\n\x15_replicate_componentsB\x13\n\x11_adopt_components\"\xcc\x05\n\tModuleBay\x12(\n\x06\x64\x65vice\x18\x01 \x01(\x0b\x32\x10.diode.v1.DeviceR\x06\x64\x65vice\x12-\n\x06module\x18\x02 \x01(\x0b\x32\x10.diode.v1.ModuleH\x00R\x06module\x88\x01\x01\x12\x12\n\x04name\x18\x03 \x01(\tR\x04name\x12@\n\x10installed_module\x18\x04 \x01(\x0b\x32\x10.diode.v1.ModuleH\x01R\x0finstalledModule\x88\x01\x01\x12\x19\n\x05label\x18\x05 \x01(\tH\x02R\x05label\x88\x01\x01\x12\x1f\n\x08position\x18\x06 \x01(\tH\x03R\x08position\x88\x01\x01\x12%\n\x0b\x64\x65scription\x18\x07 \x01(\tH\x04R\x0b\x64\x65scription\x88\x01\x01\x12!\n\x04tags\x18\x08 \x03(\x0b\x32\r.diode.v1.TagR\x04tags\x12J\n\rcustom_fields\x18\t \x03(\x0b\x32%.diode.v1.ModuleBay.CustomFieldsEntryR\x0c\x63ustomFields\x12\x39\n\x08metadata\x18\n \x01(\x0b\x32\x17.google.protobuf.StructB\x04\x88\xb5\x18\x00R\x08metadata\x12*\n\x05owner\x18\x0b \x01(\x0b\x32\x0f.diode.v1.OwnerH\x05R\x05owner\x88\x01\x01\x12\x1d\n\x07\x65nabled\x18\x0c \x01(\x08H\x06R\x07\x65nabled\x88\x01\x01\x1a[\n\x11\x43ustomFieldsEntry\x12\x10\n\x03key\x18\x01 \x01(\tR\x03key\x12\x30\n\x05value\x18\x02 \x01(\x0b\x32\x1a.diode.v1.CustomFieldValueR\x05value:\x02\x38\x01\x42\t\n\x07_moduleB\x13\n\x11_installed_moduleB\x08\n\x06_labelB\x0b\n\t_positionB\x0e\n\x0c_descriptionB\x08\n\x06_ownerB\n\n\x08_enabled\"\xac\x07\n\nModuleType\x12:\n\x0cmanufacturer\x18\x01 \x01(\x0b\x32\x16.diode.v1.ManufacturerR\x0cmanufacturer\x12\x14\n\x05model\x18\x02 \x01(\tR\x05model\x12$\n\x0bpart_number\x18\x03 \x01(\tH\x00R\npartNumber\x88\x01\x01\x12w\n\x07\x61irflow\x18\x04 \x01(\tBX\xfa\x42UrSR\rfront-to-rearR\rleft-to-rightR\x07passiveR\rrear-to-frontR\rright-to-leftR\x0cside-to-rearH\x01R\x07\x61irflow\x88\x01\x01\x12\x1b\n\x06weight\x18\x05 \x01(\x01H\x02R\x06weight\x88\x01\x01\x12:\n\x0bweight_unit\x18\x06 \x01(\tB\x14\xfa\x42\x11r\x0fR\x01gR\x02kgR\x02lbR\x02ozH\x03R\nweightUnit\x88\x01\x01\x12%\n\x0b\x64\x65scription\x18\x07 \x01(\tH\x04R\x0b\x64\x65scription\x88\x01\x01\x12\x1f\n\x08\x63omments\x18\x08 \x01(\tH\x05R\x08\x63omments\x88\x01\x01\x12!\n\x04tags\x18\t \x03(\x0b\x32\r.diode.v1.TagR\x04tags\x12K\n\rcustom_fields\x18\n \x03(\x0b\x32&.diode.v1.ModuleType.CustomFieldsEntryR\x0c\x63ustomFields\x12:\n\x07profile\x18\x0b \x01(\x0b\x32\x1b.diode.v1.ModuleTypeProfileH\x06R\x07profile\x88\x01\x01\x12#\n\nattributes\x18\x0c \x01(\tH\x07R\nattributes\x88\x01\x01\x12\x39\n\x08metadata\x18\r \x01(\x0b\x32\x17.google.protobuf.StructB\x04\x88\xb5\x18\x00R\x08metadata\x12*\n\x05owner\x18\x0e \x01(\x0b\x32\x0f.diode.v1.OwnerH\x08R\x05owner\x88\x01\x01\x1a[\n\x11\x43ustomFieldsEntry\x12\x10\n\x03key\x18\x01 \x01(\tR\x03key\x12\x30\n\x05value\x18\x02 \x01(\x0b\x32\x1a.diode.v1.CustomFieldValueR\x05value:\x02\x38\x01\x42\x0e\n\x0c_part_numberB\n\n\x08_airflowB\t\n\x07_weightB\x0e\n\x0c_weight_unitB\x0e\n\x0c_descriptionB\x0b\n\t_commentsB\n\n\x08_profileB\r\n\x0b_attributesB\x08\n\x06_owner\"\xe1\x04\n\x08Platform\x12\x12\n\x04name\x18\x01 \x01(\tR\x04name\x12\x12\n\x04slug\x18\x02 \x01(\tR\x04slug\x12?\n\x0cmanufacturer\x18\x03 \x01(\x0b\x32\x16.diode.v1.ManufacturerH\x00R\x0cmanufacturer\x88\x01\x01\x12%\n\x0b\x64\x65scription\x18\x04 \x01(\tH\x01R\x0b\x64\x65scription\x88\x01\x01\x12!\n\x04tags\x18\x05 \x03(\x0b\x32\r.diode.v1.TagR\x04tags\x12I\n\rcustom_fields\x18\x06 \x03(\x0b\x32$.diode.v1.Platform.CustomFieldsEntryR\x0c\x63ustomFields\x12/\n\x06parent\x18\x07 \x01(\x0b\x32\x12.diode.v1.PlatformH\x02R\x06parent\x88\x01\x01\x12\x1f\n\x08\x63omments\x18\x08 \x01(\tH\x03R\x08\x63omments\x88\x01\x01\x12\x39\n\x08metadata\x18\t \x01(\x0b\x32\x17.google.protobuf.StructB\x04\x88\xb5\x18\x00R\x08metadata\x12*\n\x05owner\x18\n \x01(\x0b\x32\x0f.diode.v1.OwnerH\x04R\x05owner\x88\x01\x01\x1a[\n\x11\x43ustomFieldsEntry\x12\x10\n\x03key\x18\x01 \x01(\tR\x03key\x12\x30\n\x05value\x18\x02 \x01(\x0b\x32\x1a.diode.v1.CustomFieldValueR\x05value:\x02\x38\x01\x42\x0f\n\r_manufacturerB\x0e\n\x0c_descriptionB\t\n\x07_parentB\x0b\n\t_commentsB\x08\n\x06_owner\"\xca\x08\n\tPowerFeed\x12\x35\n\x0bpower_panel\x18\x01 \x01(\x0b\x32\x14.diode.v1.PowerPanelR\npowerPanel\x12\'\n\x04rack\x18\x02 \x01(\x0b\x32\x0e.diode.v1.RackH\x00R\x04rack\x88\x01\x01\x12\x12\n\x04name\x18\x03 \x01(\tR\x04name\x12\x44\n\x06status\x18\x04 \x01(\tB\'\xfa\x42$r\"R\x06\x61\x63tiveR\x06\x66\x61iledR\x07offlineR\x07plannedH\x01R\x06status\x88\x01\x01\x12\x32\n\x04type\x18\x05 \x01(\tB\x19\xfa\x42\x16r\x14R\x07primaryR\tredundantH\x02R\x04type\x88\x01\x01\x12*\n\x06supply\x18\x06 \x01(\tB\r\xfa\x42\nr\x08R\x02\x61\x63R\x02\x64\x63H\x03R\x06supply\x88\x01\x01\x12;\n\x05phase\x18\x07 \x01(\tB \xfa\x42\x1dr\x1bR\x0csingle-phaseR\x0bthree-phaseH\x04R\x05phase\x88\x01\x01\x12\x1d\n\x07voltage\x18\x08 \x01(\x03H\x05R\x07voltage\x88\x01\x01\x12\x1f\n\x08\x61mperage\x18\t \x01(\x03H\x06R\x08\x61mperage\x88\x01\x01\x12,\n\x0fmax_utilization\x18\n \x01(\x03H\x07R\x0emaxUtilization\x88\x01\x01\x12*\n\x0emark_connected\x18\x0b \x01(\x08H\x08R\rmarkConnected\x88\x01\x01\x12%\n\x0b\x64\x65scription\x18\x0c \x01(\tH\tR\x0b\x64\x65scription\x88\x01\x01\x12-\n\x06tenant\x18\r \x01(\x0b\x32\x10.diode.v1.TenantH\nR\x06tenant\x88\x01\x01\x12\x1f\n\x08\x63omments\x18\x0e \x01(\tH\x0bR\x08\x63omments\x88\x01\x01\x12!\n\x04tags\x18\x0f \x03(\x0b\x32\r.diode.v1.TagR\x04tags\x12J\n\rcustom_fields\x18\x10 \x03(\x0b\x32%.diode.v1.PowerFeed.CustomFieldsEntryR\x0c\x63ustomFields\x12\x39\n\x08metadata\x18\x11 \x01(\x0b\x32\x17.google.protobuf.StructB\x04\x88\xb5\x18\x00R\x08metadata\x12*\n\x05owner\x18\x12 \x01(\x0b\x32\x0f.diode.v1.OwnerH\x0cR\x05owner\x88\x01\x01\x1a[\n\x11\x43ustomFieldsEntry\x12\x10\n\x03key\x18\x01 \x01(\tR\x03key\x12\x30\n\x05value\x18\x02 \x01(\x0b\x32\x1a.diode.v1.CustomFieldValueR\x05value:\x02\x38\x01\x42\x07\n\x05_rackB\t\n\x07_statusB\x07\n\x05_typeB\t\n\x07_supplyB\x08\n\x06_phaseB\n\n\x08_voltageB\x0b\n\t_amperageB\x12\n\x10_max_utilizationB\x11\n\x0f_mark_connectedB\x0e\n\x0c_descriptionB\t\n\x07_tenantB\x0b\n\t_commentsB\x08\n\x06_owner\"\xde\x11\n\x0bPowerOutlet\x12(\n\x06\x64\x65vice\x18\x01 \x01(\x0b\x32\x10.diode.v1.DeviceR\x06\x64\x65vice\x12-\n\x06module\x18\x02 \x01(\x0b\x32\x10.diode.v1.ModuleH\x00R\x06module\x88\x01\x01\x12\x12\n\x04name\x18\x03 \x01(\tR\x04name\x12\x19\n\x05label\x18\x04 \x01(\tH\x01R\x05label\x88\x01\x01\x12\xff\n\n\x04type\x18\x05 \x01(\tB\xe5\n\xfa\x42\xe1\nr\xde\nR\x07\x43S6360CR\x07\x43S6364CR\x07\x43S8164CR\x07\x43S8264CR\x07\x43S8364CR\x07\x43S8464CR\x0b\x64\x63-terminalR\teaton-c39R\thardwiredR\x07hdot-cxR\x11iec-60309-2p-e-4hR\x11iec-60309-2p-e-6hR\x11iec-60309-2p-e-9hR\x11iec-60309-3p-e-4hR\x11iec-60309-3p-e-6hR\x11iec-60309-3p-e-9hR\x13iec-60309-3p-n-e-4hR\x13iec-60309-3p-n-e-6hR\x13iec-60309-3p-n-e-9hR\x12iec-60309-p-n-e-4hR\x12iec-60309-p-n-e-6hR\x12iec-60309-p-n-e-9hR\riec-60320-c13R\riec-60320-c15R\riec-60320-c17R\riec-60320-c19R\riec-60320-c21R\x0ciec-60320-c5R\x0ciec-60320-c7R\x0biec-60906-1R\x05ita-eR\x05ita-fR\x05ita-gR\x05ita-hR\x05ita-iR\x05ita-jR\x05ita-kR\x05ita-lR\x05ita-mR\x11ita-multistandardR\x05ita-nR\x05ita-oR\x13molex-micro-fit-1x2R\x13molex-micro-fit-2x2R\x13molex-micro-fit-2x3R\x13molex-micro-fit-2x4R\rnbr-14136-10aR\rnbr-14136-20aR\nnema-1-15rR\x0bnema-10-30rR\x0bnema-10-50rR\x0bnema-14-20rR\x0bnema-14-30rR\x0bnema-14-50rR\x0bnema-14-60rR\x0bnema-15-15rR\x0bnema-15-20rR\x0bnema-15-30rR\x0bnema-15-50rR\x0bnema-15-60rR\nnema-5-15rR\nnema-5-20rR\nnema-5-30rR\nnema-5-50rR\nnema-6-15rR\nnema-6-20rR\nnema-6-30rR\nnema-6-50rR\x0bnema-l1-15rR\x0cnema-l10-30rR\x0cnema-l14-20rR\x0cnema-l14-30rR\x0cnema-l14-50rR\x0cnema-l14-60rR\x0cnema-l15-20rR\x0cnema-l15-30rR\x0cnema-l15-50rR\x0cnema-l15-60rR\x0cnema-l21-20rR\x0cnema-l21-30rR\x0cnema-l22-20rR\x0cnema-l22-30rR\x0bnema-l5-15rR\x0bnema-l5-20rR\x0bnema-l5-30rR\x0bnema-l5-50rR\x0bnema-l6-15rR\x0bnema-l6-20rR\x0bnema-l6-30rR\x0bnema-l6-50rR\x14neutrik-powercon-20aR\x14neutrik-powercon-32aR\x16neutrik-powercon-true1R\x1aneutrik-powercon-true1-topR\x05otherR\nsaf-d-gridR\x13ubiquiti-smartpowerR\x05usb-aR\x05usb-cR\x0busb-micro-bH\x02R\x04type\x88\x01\x01\x12\x19\n\x05\x63olor\x18\x06 \x01(\tH\x03R\x05\x63olor\x88\x01\x01\x12\x37\n\npower_port\x18\x07 \x01(\x0b\x32\x13.diode.v1.PowerPortH\x04R\tpowerPort\x88\x01\x01\x12.\n\x08\x66\x65\x65\x64_leg\x18\x08 \x01(\tB\x0e\xfa\x42\x0br\tR\x01\x41R\x01\x42R\x01\x43H\x05R\x07\x66\x65\x65\x64Leg\x88\x01\x01\x12%\n\x0b\x64\x65scription\x18\t \x01(\tH\x06R\x0b\x64\x65scription\x88\x01\x01\x12*\n\x0emark_connected\x18\n \x01(\x08H\x07R\rmarkConnected\x88\x01\x01\x12!\n\x04tags\x18\x0b \x03(\x0b\x32\r.diode.v1.TagR\x04tags\x12L\n\rcustom_fields\x18\x0c \x03(\x0b\x32\'.diode.v1.PowerOutlet.CustomFieldsEntryR\x0c\x63ustomFields\x12=\n\x06status\x18\r \x01(\tB \xfa\x42\x1dr\x1bR\x08\x64isabledR\x07\x65nabledR\x06\x66\x61ultyH\x08R\x06status\x88\x01\x01\x12\x39\n\x08metadata\x18\x0e \x01(\x0b\x32\x17.google.protobuf.StructB\x04\x88\xb5\x18\x00R\x08metadata\x12*\n\x05owner\x18\x0f \x01(\x0b\x32\x0f.diode.v1.OwnerH\tR\x05owner\x88\x01\x01\x1a[\n\x11\x43ustomFieldsEntry\x12\x10\n\x03key\x18\x01 \x01(\tR\x03key\x12\x30\n\x05value\x18\x02 \x01(\x0b\x32\x1a.diode.v1.CustomFieldValueR\x05value:\x02\x38\x01\x42\t\n\x07_moduleB\x08\n\x06_labelB\x07\n\x05_typeB\x08\n\x06_colorB\r\n\x0b_power_portB\x0b\n\t_feed_legB\x0e\n\x0c_descriptionB\x11\n\x0f_mark_connectedB\t\n\x07_statusB\x08\n\x06_owner\"\xa9\x04\n\nPowerPanel\x12\"\n\x04site\x18\x01 \x01(\x0b\x32\x0e.diode.v1.SiteR\x04site\x12\x33\n\x08location\x18\x02 \x01(\x0b\x32\x12.diode.v1.LocationH\x00R\x08location\x88\x01\x01\x12\x12\n\x04name\x18\x03 \x01(\tR\x04name\x12%\n\x0b\x64\x65scription\x18\x04 \x01(\tH\x01R\x0b\x64\x65scription\x88\x01\x01\x12\x1f\n\x08\x63omments\x18\x05 \x01(\tH\x02R\x08\x63omments\x88\x01\x01\x12!\n\x04tags\x18\x06 \x03(\x0b\x32\r.diode.v1.TagR\x04tags\x12K\n\rcustom_fields\x18\x07 \x03(\x0b\x32&.diode.v1.PowerPanel.CustomFieldsEntryR\x0c\x63ustomFields\x12\x39\n\x08metadata\x18\x08 \x01(\x0b\x32\x17.google.protobuf.StructB\x04\x88\xb5\x18\x00R\x08metadata\x12*\n\x05owner\x18\t \x01(\x0b\x32\x0f.diode.v1.OwnerH\x03R\x05owner\x88\x01\x01\x1a[\n\x11\x43ustomFieldsEntry\x12\x10\n\x03key\x18\x01 \x01(\tR\x03key\x12\x30\n\x05value\x18\x02 \x01(\x0b\x32\x1a.diode.v1.CustomFieldValueR\x05value:\x02\x38\x01\x42\x0b\n\t_locationB\x0e\n\x0c_descriptionB\x0b\n\t_commentsB\x08\n\x06_owner\"\x96\x11\n\tPowerPort\x12(\n\x06\x64\x65vice\x18\x01 \x01(\x0b\x32\x10.diode.v1.DeviceR\x06\x64\x65vice\x12-\n\x06module\x18\x02 \x01(\x0b\x32\x10.diode.v1.ModuleH\x00R\x06module\x88\x01\x01\x12\x12\n\x04name\x18\x03 \x01(\tR\x04name\x12\x19\n\x05label\x18\x04 \x01(\tH\x01R\x05label\x88\x01\x01\x12\xb7\x0b\n\x04type\x18\x05 \x01(\tB\x9d\x0b\xfa\x42\x99\x0br\x96\x0bR\x07\x63s6361cR\x07\x63s6365cR\x07\x63s8165cR\x07\x63s8265cR\x07\x63s8365cR\x07\x63s8465cR\x0b\x64\x63-terminalR\thardwiredR\x11iec-60309-2p-e-4hR\x11iec-60309-2p-e-6hR\x11iec-60309-2p-e-9hR\x11iec-60309-3p-e-4hR\x11iec-60309-3p-e-6hR\x11iec-60309-3p-e-9hR\x13iec-60309-3p-n-e-4hR\x13iec-60309-3p-n-e-6hR\x13iec-60309-3p-n-e-9hR\x12iec-60309-p-n-e-4hR\x12iec-60309-p-n-e-6hR\x12iec-60309-p-n-e-9hR\riec-60320-c14R\riec-60320-c16R\riec-60320-c18R\riec-60320-c20R\riec-60320-c22R\x0ciec-60320-c6R\x0ciec-60320-c8R\x0biec-60906-1R\x05ita-cR\x05ita-eR\x06ita-efR\x05ita-fR\x05ita-gR\x05ita-hR\x05ita-iR\x05ita-jR\x05ita-kR\x05ita-lR\x05ita-mR\x05ita-nR\x05ita-oR\x13molex-micro-fit-1x2R\x13molex-micro-fit-2x2R\x13molex-micro-fit-2x3R\x13molex-micro-fit-2x4R\rnbr-14136-10aR\rnbr-14136-20aR\nnema-1-15pR\x0bnema-10-30pR\x0bnema-10-50pR\x0bnema-14-20pR\x0bnema-14-30pR\x0bnema-14-50pR\x0bnema-14-60pR\x0bnema-15-15pR\x0bnema-15-20pR\x0bnema-15-30pR\x0bnema-15-50pR\x0bnema-15-60pR\nnema-5-15pR\nnema-5-20pR\nnema-5-30pR\nnema-5-50pR\nnema-6-15pR\nnema-6-20pR\nnema-6-30pR\nnema-6-50pR\x0bnema-l1-15pR\x0cnema-l10-30pR\x0cnema-l14-20pR\x0cnema-l14-30pR\x0cnema-l14-50pR\x0cnema-l14-60pR\x0cnema-l15-20pR\x0cnema-l15-30pR\x0cnema-l15-50pR\x0cnema-l15-60pR\x0cnema-l21-20pR\x0cnema-l21-30pR\x0cnema-l22-20pR\x0cnema-l22-30pR\x0bnema-l5-15pR\x0bnema-l5-20pR\x0bnema-l5-30pR\x0bnema-l5-50pR\x0bnema-l6-15pR\x0bnema-l6-20pR\x0bnema-l6-30pR\x0bnema-l6-50pR\x13neutrik-powercon-20R\x13neutrik-powercon-32R\x16neutrik-powercon-true1R\x1aneutrik-powercon-true1-topR\x05otherR\nsaf-d-gridR\x13ubiquiti-smartpowerR\x07usb-3-bR\rusb-3-micro-bR\x05usb-aR\x05usb-bR\x05usb-cR\x0busb-micro-aR\x0cusb-micro-abR\x0busb-micro-bR\nusb-mini-aR\nusb-mini-bH\x02R\x04type\x88\x01\x01\x12&\n\x0cmaximum_draw\x18\x06 \x01(\x03H\x03R\x0bmaximumDraw\x88\x01\x01\x12*\n\x0e\x61llocated_draw\x18\x07 \x01(\x03H\x04R\rallocatedDraw\x88\x01\x01\x12%\n\x0b\x64\x65scription\x18\x08 \x01(\tH\x05R\x0b\x64\x65scription\x88\x01\x01\x12*\n\x0emark_connected\x18\t \x01(\x08H\x06R\rmarkConnected\x88\x01\x01\x12!\n\x04tags\x18\n \x03(\x0b\x32\r.diode.v1.TagR\x04tags\x12J\n\rcustom_fields\x18\x0b \x03(\x0b\x32%.diode.v1.PowerPort.CustomFieldsEntryR\x0c\x63ustomFields\x12\x39\n\x08metadata\x18\x0c \x01(\x0b\x32\x17.google.protobuf.StructB\x04\x88\xb5\x18\x00R\x08metadata\x12*\n\x05owner\x18\r \x01(\x0b\x32\x0f.diode.v1.OwnerH\x07R\x05owner\x88\x01\x01\x1a[\n\x11\x43ustomFieldsEntry\x12\x10\n\x03key\x18\x01 \x01(\tR\x03key\x12\x30\n\x05value\x18\x02 \x01(\x0b\x32\x1a.diode.v1.CustomFieldValueR\x05value:\x02\x38\x01\x42\t\n\x07_moduleB\x08\n\x06_labelB\x07\n\x05_typeB\x0f\n\r_maximum_drawB\x11\n\x0f_allocated_drawB\x0e\n\x0c_descriptionB\x11\n\x0f_mark_connectedB\x08\n\x06_owner\"\xb8\x08\n\x06Prefix\x12\x16\n\x06prefix\x18\x01 \x01(\tR\x06prefix\x12$\n\x03vrf\x18\x02 \x01(\x0b\x32\r.diode.v1.VRFH\x01R\x03vrf\x88\x01\x01\x12;\n\x0escope_location\x18\x03 \x01(\x0b\x32\x12.diode.v1.LocationH\x00R\rscopeLocation\x12\x35\n\x0cscope_region\x18\x04 \x01(\x0b\x32\x10.diode.v1.RegionH\x00R\x0bscopeRegion\x12/\n\nscope_site\x18\x05 \x01(\x0b\x32\x0e.diode.v1.SiteH\x00R\tscopeSite\x12?\n\x10scope_site_group\x18\x06 \x01(\x0b\x32\x13.diode.v1.SiteGroupH\x00R\x0escopeSiteGroup\x12-\n\x06tenant\x18\x07 \x01(\x0b\x32\x10.diode.v1.TenantH\x02R\x06tenant\x88\x01\x01\x12\'\n\x04vlan\x18\x08 \x01(\x0b\x32\x0e.diode.v1.VLANH\x03R\x04vlan\x88\x01\x01\x12K\n\x06status\x18\t \x01(\tB.\xfa\x42+r)R\x06\x61\x63tiveR\tcontainerR\ndeprecatedR\x08reservedH\x04R\x06status\x88\x01\x01\x12\'\n\x04role\x18\n \x01(\x0b\x32\x0e.diode.v1.RoleH\x05R\x04role\x88\x01\x01\x12\x1c\n\x07is_pool\x18\x0b \x01(\x08H\x06R\x06isPool\x88\x01\x01\x12(\n\rmark_utilized\x18\x0c \x01(\x08H\x07R\x0cmarkUtilized\x88\x01\x01\x12%\n\x0b\x64\x65scription\x18\r \x01(\tH\x08R\x0b\x64\x65scription\x88\x01\x01\x12\x1f\n\x08\x63omments\x18\x0e \x01(\tH\tR\x08\x63omments\x88\x01\x01\x12!\n\x04tags\x18\x0f \x03(\x0b\x32\r.diode.v1.TagR\x04tags\x12G\n\rcustom_fields\x18\x10 \x03(\x0b\x32\".diode.v1.Prefix.CustomFieldsEntryR\x0c\x63ustomFields\x12\x39\n\x08metadata\x18\x11 \x01(\x0b\x32\x17.google.protobuf.StructB\x04\x88\xb5\x18\x00R\x08metadata\x12*\n\x05owner\x18\x12 \x01(\x0b\x32\x0f.diode.v1.OwnerH\nR\x05owner\x88\x01\x01\x1a[\n\x11\x43ustomFieldsEntry\x12\x10\n\x03key\x18\x01 \x01(\tR\x03key\x12\x30\n\x05value\x18\x02 \x01(\x0b\x32\x1a.diode.v1.CustomFieldValueR\x05value:\x02\x38\x01\x42\x07\n\x05scopeB\x06\n\x04_vrfB\t\n\x07_tenantB\x07\n\x05_vlanB\t\n\x07_statusB\x07\n\x05_roleB\n\n\x08_is_poolB\x10\n\x0e_mark_utilizedB\x0e\n\x0c_descriptionB\x0b\n\t_commentsB\x08\n\x06_owner\"\xad\x04\n\x08Provider\x12\x12\n\x04name\x18\x01 \x01(\tR\x04name\x12\x12\n\x04slug\x18\x02 \x01(\tR\x04slug\x12%\n\x0b\x64\x65scription\x18\x03 \x01(\tH\x00R\x0b\x64\x65scription\x88\x01\x01\x12\x1f\n\x08\x63omments\x18\x04 \x01(\tH\x01R\x08\x63omments\x88\x01\x01\x12!\n\x04tags\x18\x05 \x03(\x0b\x32\r.diode.v1.TagR\x04tags\x12I\n\rcustom_fields\x18\x06 \x03(\x0b\x32$.diode.v1.Provider.CustomFieldsEntryR\x0c\x63ustomFields\x12\x35\n\x08\x61\x63\x63ounts\x18\x07 \x03(\x0b\x32\x19.diode.v1.ProviderAccountR\x08\x61\x63\x63ounts\x12!\n\x04\x61sns\x18\x08 \x03(\x0b\x32\r.diode.v1.ASNR\x04\x61sns\x12\x39\n\x08metadata\x18\t \x01(\x0b\x32\x17.google.protobuf.StructB\x04\x88\xb5\x18\x00R\x08metadata\x12*\n\x05owner\x18\n \x01(\x0b\x32\x0f.diode.v1.OwnerH\x02R\x05owner\x88\x01\x01\x1a[\n\x11\x43ustomFieldsEntry\x12\x10\n\x03key\x18\x01 \x01(\tR\x03key\x12\x30\n\x05value\x18\x02 \x01(\x0b\x32\x1a.diode.v1.CustomFieldValueR\x05value:\x02\x38\x01\x42\x0e\n\x0c_descriptionB\x0b\n\t_commentsB\x08\n\x06_owner\"\xa5\x04\n\x0fProviderAccount\x12.\n\x08provider\x18\x01 \x01(\x0b\x32\x12.diode.v1.ProviderR\x08provider\x12\x17\n\x04name\x18\x02 \x01(\tH\x00R\x04name\x88\x01\x01\x12\x18\n\x07\x61\x63\x63ount\x18\x03 \x01(\tR\x07\x61\x63\x63ount\x12%\n\x0b\x64\x65scription\x18\x04 \x01(\tH\x01R\x0b\x64\x65scription\x88\x01\x01\x12\x1f\n\x08\x63omments\x18\x05 \x01(\tH\x02R\x08\x63omments\x88\x01\x01\x12!\n\x04tags\x18\x06 \x03(\x0b\x32\r.diode.v1.TagR\x04tags\x12P\n\rcustom_fields\x18\x07 \x03(\x0b\x32+.diode.v1.ProviderAccount.CustomFieldsEntryR\x0c\x63ustomFields\x12\x39\n\x08metadata\x18\x08 \x01(\x0b\x32\x17.google.protobuf.StructB\x04\x88\xb5\x18\x00R\x08metadata\x12*\n\x05owner\x18\t \x01(\x0b\x32\x0f.diode.v1.OwnerH\x03R\x05owner\x88\x01\x01\x1a[\n\x11\x43ustomFieldsEntry\x12\x10\n\x03key\x18\x01 \x01(\tR\x03key\x12\x30\n\x05value\x18\x02 \x01(\x0b\x32\x1a.diode.v1.CustomFieldValueR\x05value:\x02\x38\x01\x42\x07\n\x05_nameB\x0e\n\x0c_descriptionB\x0b\n\t_commentsB\x08\n\x06_owner\"\xb0\x04\n\x0fProviderNetwork\x12.\n\x08provider\x18\x01 \x01(\x0b\x32\x12.diode.v1.ProviderR\x08provider\x12\x12\n\x04name\x18\x02 \x01(\tR\x04name\x12\"\n\nservice_id\x18\x03 \x01(\tH\x00R\tserviceId\x88\x01\x01\x12%\n\x0b\x64\x65scription\x18\x04 \x01(\tH\x01R\x0b\x64\x65scription\x88\x01\x01\x12\x1f\n\x08\x63omments\x18\x05 \x01(\tH\x02R\x08\x63omments\x88\x01\x01\x12!\n\x04tags\x18\x06 \x03(\x0b\x32\r.diode.v1.TagR\x04tags\x12P\n\rcustom_fields\x18\x07 \x03(\x0b\x32+.diode.v1.ProviderNetwork.CustomFieldsEntryR\x0c\x63ustomFields\x12\x39\n\x08metadata\x18\x08 \x01(\x0b\x32\x17.google.protobuf.StructB\x04\x88\xb5\x18\x00R\x08metadata\x12*\n\x05owner\x18\t \x01(\x0b\x32\x0f.diode.v1.OwnerH\x03R\x05owner\x88\x01\x01\x1a[\n\x11\x43ustomFieldsEntry\x12\x10\n\x03key\x18\x01 \x01(\tR\x03key\x12\x30\n\x05value\x18\x02 \x01(\x0b\x32\x1a.diode.v1.CustomFieldValueR\x05value:\x02\x38\x01\x42\r\n\x0b_service_idB\x0e\n\x0c_descriptionB\x0b\n\t_commentsB\x08\n\x06_owner\"\xfc\x03\n\x03RIR\x12\x12\n\x04name\x18\x01 \x01(\tR\x04name\x12\x12\n\x04slug\x18\x02 \x01(\tR\x04slug\x12\"\n\nis_private\x18\x03 \x01(\x08H\x00R\tisPrivate\x88\x01\x01\x12%\n\x0b\x64\x65scription\x18\x04 \x01(\tH\x01R\x0b\x64\x65scription\x88\x01\x01\x12!\n\x04tags\x18\x05 \x03(\x0b\x32\r.diode.v1.TagR\x04tags\x12\x44\n\rcustom_fields\x18\x06 \x03(\x0b\x32\x1f.diode.v1.RIR.CustomFieldsEntryR\x0c\x63ustomFields\x12\x39\n\x08metadata\x18\x07 \x01(\x0b\x32\x17.google.protobuf.StructB\x04\x88\xb5\x18\x00R\x08metadata\x12*\n\x05owner\x18\x08 \x01(\x0b\x32\x0f.diode.v1.OwnerH\x02R\x05owner\x88\x01\x01\x12\x1f\n\x08\x63omments\x18\t \x01(\tH\x03R\x08\x63omments\x88\x01\x01\x1a[\n\x11\x43ustomFieldsEntry\x12\x10\n\x03key\x18\x01 \x01(\tR\x03key\x12\x30\n\x05value\x18\x02 \x01(\x0b\x32\x1a.diode.v1.CustomFieldValueR\x05value:\x02\x38\x01\x42\r\n\x0b_is_privateB\x0e\n\x0c_descriptionB\x08\n\x06_ownerB\x0b\n\t_comments\"\x97\x0f\n\x04Rack\x12\x12\n\x04name\x18\x01 \x01(\tR\x04name\x12$\n\x0b\x66\x61\x63ility_id\x18\x02 \x01(\tH\x00R\nfacilityId\x88\x01\x01\x12\"\n\x04site\x18\x03 \x01(\x0b\x32\x0e.diode.v1.SiteR\x04site\x12\x33\n\x08location\x18\x04 \x01(\x0b\x32\x12.diode.v1.LocationH\x01R\x08location\x88\x01\x01\x12-\n\x06tenant\x18\x05 \x01(\x0b\x32\x10.diode.v1.TenantH\x02R\x06tenant\x88\x01\x01\x12T\n\x06status\x18\x06 \x01(\tB7\xfa\x42\x34r2R\x06\x61\x63tiveR\tavailableR\ndeprecatedR\x07plannedR\x08reservedH\x03R\x06status\x88\x01\x01\x12+\n\x04role\x18\x07 \x01(\x0b\x32\x12.diode.v1.RackRoleH\x04R\x04role\x88\x01\x01\x12\x1b\n\x06serial\x18\x08 \x01(\tH\x05R\x06serial\x88\x01\x01\x12 \n\tasset_tag\x18\t \x01(\tH\x06R\x08\x61ssetTag\x88\x01\x01\x12\x34\n\track_type\x18\n \x01(\x0b\x32\x12.diode.v1.RackTypeH\x07R\x08rackType\x88\x01\x01\x12\x9d\x01\n\x0b\x66orm_factor\x18\x0b \x01(\tBw\xfa\x42trrR\x0c\x32-post-frameR\x0e\x34-post-cabinetR\x0c\x34-post-frameR\x0cwall-cabinetR\x15wall-cabinet-verticalR\nwall-frameR\x13wall-frame-verticalH\x08R\nformFactor\x88\x01\x01\x12(\n\x05width\x18\x0c \x01(\x03\x42\r\xfa\x42\n\"\x08\x30\n0\x13\x30\x15\x30\x17H\tR\x05width\x88\x01\x01\x12\x1e\n\x08u_height\x18\r \x01(\x03H\nR\x07uHeight\x88\x01\x01\x12(\n\rstarting_unit\x18\x0e \x01(\x03H\x0bR\x0cstartingUnit\x88\x01\x01\x12\x1b\n\x06weight\x18\x0f \x01(\x01H\x0cR\x06weight\x88\x01\x01\x12\"\n\nmax_weight\x18\x10 \x01(\x03H\rR\tmaxWeight\x88\x01\x01\x12:\n\x0bweight_unit\x18\x11 \x01(\tB\x14\xfa\x42\x11r\x0fR\x01gR\x02kgR\x02lbR\x02ozH\x0eR\nweightUnit\x88\x01\x01\x12\"\n\ndesc_units\x18\x12 \x01(\x08H\x0fR\tdescUnits\x88\x01\x01\x12$\n\x0bouter_width\x18\x13 \x01(\x03H\x10R\nouterWidth\x88\x01\x01\x12$\n\x0bouter_depth\x18\x14 \x01(\x03H\x11R\nouterDepth\x88\x01\x01\x12\x31\n\nouter_unit\x18\x15 \x01(\tB\r\xfa\x42\nr\x08R\x02inR\x02mmH\x12R\touterUnit\x88\x01\x01\x12*\n\x0emounting_depth\x18\x16 \x01(\x03H\x13R\rmountingDepth\x88\x01\x01\x12\x42\n\x07\x61irflow\x18\x17 \x01(\tB#\xfa\x42 r\x1eR\rfront-to-rearR\rrear-to-frontH\x14R\x07\x61irflow\x88\x01\x01\x12%\n\x0b\x64\x65scription\x18\x18 \x01(\tH\x15R\x0b\x64\x65scription\x88\x01\x01\x12\x1f\n\x08\x63omments\x18\x19 \x01(\tH\x16R\x08\x63omments\x88\x01\x01\x12!\n\x04tags\x18\x1a \x03(\x0b\x32\r.diode.v1.TagR\x04tags\x12\x45\n\rcustom_fields\x18\x1b \x03(\x0b\x32 .diode.v1.Rack.CustomFieldsEntryR\x0c\x63ustomFields\x12&\n\x0couter_height\x18\x1c \x01(\x03H\x17R\x0bouterHeight\x88\x01\x01\x12\x39\n\x08metadata\x18\x1d \x01(\x0b\x32\x17.google.protobuf.StructB\x04\x88\xb5\x18\x00R\x08metadata\x12*\n\x05owner\x18\x1e \x01(\x0b\x32\x0f.diode.v1.OwnerH\x18R\x05owner\x88\x01\x01\x12.\n\x05group\x18\x1f \x01(\x0b\x32\x13.diode.v1.RackGroupH\x19R\x05group\x88\x01\x01\x1a[\n\x11\x43ustomFieldsEntry\x12\x10\n\x03key\x18\x01 \x01(\tR\x03key\x12\x30\n\x05value\x18\x02 \x01(\x0b\x32\x1a.diode.v1.CustomFieldValueR\x05value:\x02\x38\x01\x42\x0e\n\x0c_facility_idB\x0b\n\t_locationB\t\n\x07_tenantB\t\n\x07_statusB\x07\n\x05_roleB\t\n\x07_serialB\x0c\n\n_asset_tagB\x0c\n\n_rack_typeB\x0e\n\x0c_form_factorB\x08\n\x06_widthB\x0b\n\t_u_heightB\x10\n\x0e_starting_unitB\t\n\x07_weightB\r\n\x0b_max_weightB\x0e\n\x0c_weight_unitB\r\n\x0b_desc_unitsB\x0e\n\x0c_outer_widthB\x0e\n\x0c_outer_depthB\r\n\x0b_outer_unitB\x11\n\x0f_mounting_depthB\n\n\x08_airflowB\x0e\n\x0c_descriptionB\x0b\n\t_commentsB\x0f\n\r_outer_heightB\x08\n\x06_ownerB\x08\n\x06_group\"\x83\x05\n\x0fRackReservation\x12\"\n\x04rack\x18\x01 \x01(\x0b\x32\x0e.diode.v1.RackR\x04rack\x12\x14\n\x05units\x18\x02 \x03(\x03R\x05units\x12-\n\x06tenant\x18\x03 \x01(\x0b\x32\x10.diode.v1.TenantH\x00R\x06tenant\x88\x01\x01\x12 \n\x0b\x64\x65scription\x18\x04 \x01(\tR\x0b\x64\x65scription\x12\x1f\n\x08\x63omments\x18\x05 \x01(\tH\x01R\x08\x63omments\x88\x01\x01\x12!\n\x04tags\x18\x06 \x03(\x0b\x32\r.diode.v1.TagR\x04tags\x12P\n\rcustom_fields\x18\x07 \x03(\x0b\x32+.diode.v1.RackReservation.CustomFieldsEntryR\x0c\x63ustomFields\x12:\n\x06status\x18\x08 \x01(\tB\x1d\xfa\x42\x1ar\x18R\x06\x61\x63tiveR\x07pendingR\x05staleH\x02R\x06status\x88\x01\x01\x12\x39\n\x08metadata\x18\t \x01(\x0b\x32\x17.google.protobuf.StructB\x04\x88\xb5\x18\x00R\x08metadata\x12*\n\x05owner\x18\n \x01(\x0b\x32\x0f.diode.v1.OwnerH\x03R\x05owner\x88\x01\x01\x12\"\n\x04user\x18\x0b \x01(\x0b\x32\x0e.diode.v1.UserR\x04user\x1a[\n\x11\x43ustomFieldsEntry\x12\x10\n\x03key\x18\x01 \x01(\tR\x03key\x12\x30\n\x05value\x18\x02 \x01(\x0b\x32\x1a.diode.v1.CustomFieldValueR\x05value:\x02\x38\x01\x42\t\n\x07_tenantB\x0b\n\t_commentsB\t\n\x07_statusB\x08\n\x06_owner\"\xf8\x03\n\x08RackRole\x12\x12\n\x04name\x18\x01 \x01(\tR\x04name\x12\x12\n\x04slug\x18\x02 \x01(\tR\x04slug\x12\x19\n\x05\x63olor\x18\x03 \x01(\tH\x00R\x05\x63olor\x88\x01\x01\x12%\n\x0b\x64\x65scription\x18\x04 \x01(\tH\x01R\x0b\x64\x65scription\x88\x01\x01\x12!\n\x04tags\x18\x05 \x03(\x0b\x32\r.diode.v1.TagR\x04tags\x12I\n\rcustom_fields\x18\x06 \x03(\x0b\x32$.diode.v1.RackRole.CustomFieldsEntryR\x0c\x63ustomFields\x12\x39\n\x08metadata\x18\x07 \x01(\x0b\x32\x17.google.protobuf.StructB\x04\x88\xb5\x18\x00R\x08metadata\x12*\n\x05owner\x18\x08 \x01(\x0b\x32\x0f.diode.v1.OwnerH\x02R\x05owner\x88\x01\x01\x12\x1f\n\x08\x63omments\x18\t \x01(\tH\x03R\x08\x63omments\x88\x01\x01\x1a[\n\x11\x43ustomFieldsEntry\x12\x10\n\x03key\x18\x01 \x01(\tR\x03key\x12\x30\n\x05value\x18\x02 \x01(\x0b\x32\x1a.diode.v1.CustomFieldValueR\x05value:\x02\x38\x01\x42\x08\n\x06_colorB\x0e\n\x0c_descriptionB\x08\n\x06_ownerB\x0b\n\t_comments\"\xde\n\n\x08RackType\x12:\n\x0cmanufacturer\x18\x01 \x01(\x0b\x32\x16.diode.v1.ManufacturerR\x0cmanufacturer\x12\x14\n\x05model\x18\x02 \x01(\tR\x05model\x12\x12\n\x04slug\x18\x03 \x01(\tR\x04slug\x12%\n\x0b\x64\x65scription\x18\x04 \x01(\tH\x00R\x0b\x64\x65scription\x88\x01\x01\x12\x9d\x01\n\x0b\x66orm_factor\x18\x05 \x01(\tBw\xfa\x42trrR\x0c\x32-post-frameR\x0e\x34-post-cabinetR\x0c\x34-post-frameR\x0cwall-cabinetR\x15wall-cabinet-verticalR\nwall-frameR\x13wall-frame-verticalH\x01R\nformFactor\x88\x01\x01\x12(\n\x05width\x18\x06 \x01(\x03\x42\r\xfa\x42\n\"\x08\x30\n0\x13\x30\x15\x30\x17H\x02R\x05width\x88\x01\x01\x12\x1e\n\x08u_height\x18\x07 \x01(\x03H\x03R\x07uHeight\x88\x01\x01\x12(\n\rstarting_unit\x18\x08 \x01(\x03H\x04R\x0cstartingUnit\x88\x01\x01\x12\"\n\ndesc_units\x18\t \x01(\x08H\x05R\tdescUnits\x88\x01\x01\x12$\n\x0bouter_width\x18\n \x01(\x03H\x06R\nouterWidth\x88\x01\x01\x12$\n\x0bouter_depth\x18\x0b \x01(\x03H\x07R\nouterDepth\x88\x01\x01\x12\x31\n\nouter_unit\x18\x0c \x01(\tB\r\xfa\x42\nr\x08R\x02inR\x02mmH\x08R\touterUnit\x88\x01\x01\x12\x1b\n\x06weight\x18\r \x01(\x01H\tR\x06weight\x88\x01\x01\x12\"\n\nmax_weight\x18\x0e \x01(\x03H\nR\tmaxWeight\x88\x01\x01\x12:\n\x0bweight_unit\x18\x0f \x01(\tB\x14\xfa\x42\x11r\x0fR\x01gR\x02kgR\x02lbR\x02ozH\x0bR\nweightUnit\x88\x01\x01\x12*\n\x0emounting_depth\x18\x10 \x01(\x03H\x0cR\rmountingDepth\x88\x01\x01\x12\x1f\n\x08\x63omments\x18\x11 \x01(\tH\rR\x08\x63omments\x88\x01\x01\x12!\n\x04tags\x18\x12 \x03(\x0b\x32\r.diode.v1.TagR\x04tags\x12I\n\rcustom_fields\x18\x13 \x03(\x0b\x32$.diode.v1.RackType.CustomFieldsEntryR\x0c\x63ustomFields\x12&\n\x0couter_height\x18\x14 \x01(\x03H\x0eR\x0bouterHeight\x88\x01\x01\x12\x39\n\x08metadata\x18\x15 \x01(\x0b\x32\x17.google.protobuf.StructB\x04\x88\xb5\x18\x00R\x08metadata\x12*\n\x05owner\x18\x16 \x01(\x0b\x32\x0f.diode.v1.OwnerH\x0fR\x05owner\x88\x01\x01\x1a[\n\x11\x43ustomFieldsEntry\x12\x10\n\x03key\x18\x01 \x01(\tR\x03key\x12\x30\n\x05value\x18\x02 \x01(\x0b\x32\x1a.diode.v1.CustomFieldValueR\x05value:\x02\x38\x01\x42\x0e\n\x0c_descriptionB\x0e\n\x0c_form_factorB\x08\n\x06_widthB\x0b\n\t_u_heightB\x10\n\x0e_starting_unitB\r\n\x0b_desc_unitsB\x0e\n\x0c_outer_widthB\x0e\n\x0c_outer_depthB\r\n\x0b_outer_unitB\t\n\x07_weightB\r\n\x0b_max_weightB\x0e\n\x0c_weight_unitB\x11\n\x0f_mounting_depthB\x0b\n\t_commentsB\x0f\n\r_outer_heightB\x08\n\x06_owner\"\xf6\x08\n\x08RearPort\x12(\n\x06\x64\x65vice\x18\x01 \x01(\x0b\x32\x10.diode.v1.DeviceR\x06\x64\x65vice\x12-\n\x06module\x18\x02 \x01(\x0b\x32\x10.diode.v1.ModuleH\x00R\x06module\x88\x01\x01\x12\x12\n\x04name\x18\x03 \x01(\tR\x04name\x12\x19\n\x05label\x18\x04 \x01(\tH\x01R\x05label\x88\x01\x01\x12\xc4\x03\n\x04type\x18\x05 \x01(\tB\xaf\x03\xfa\x42\xab\x03r\xa8\x03R\t110-punchR\x04\x34p2cR\x04\x34p4cR\x04\x36p2cR\x04\x36p4cR\x04\x36p6cR\x04\x38p2cR\x04\x38p4cR\x04\x38p6cR\x04\x38p8cR\x03\x62ncR\x02\x63sR\x01\x66R\x02\x66\x63R\x06\x66\x63-apcR\x05\x66\x63-pcR\x06\x66\x63-upcR\x04gg45R\x02lcR\x06lc-apcR\x05lc-pcR\x06lc-upcR\x03lshR\x07lsh-apcR\x06lsh-pcR\x07lsh-upcR\x03lx5R\x07lx5-apcR\x06lx5-pcR\x07lx5-upcR\x03mpoR\x05mrj21R\x04mtrjR\x01nR\x05otherR\x02scR\x06sc-apcR\x05sc-pcR\x06sc-upcR\x07sma-905R\x07sma-906R\x02snR\x06spliceR\x02stR\x07tera-1pR\x07tera-2pR\x07tera-4pR\x06urm-p2R\x06urm-p4R\x06urm-p8R\x05usb-aR\x05usb-bR\x05usb-cR\x0busb-micro-aR\x0cusb-micro-abR\x0busb-micro-bR\nusb-mini-aR\nusb-mini-bR\x04type\x12\x19\n\x05\x63olor\x18\x06 \x01(\tH\x02R\x05\x63olor\x88\x01\x01\x12!\n\tpositions\x18\x07 \x01(\x03H\x03R\tpositions\x88\x01\x01\x12%\n\x0b\x64\x65scription\x18\x08 \x01(\tH\x04R\x0b\x64\x65scription\x88\x01\x01\x12*\n\x0emark_connected\x18\t \x01(\x08H\x05R\rmarkConnected\x88\x01\x01\x12!\n\x04tags\x18\n \x03(\x0b\x32\r.diode.v1.TagR\x04tags\x12I\n\rcustom_fields\x18\x0b \x03(\x0b\x32$.diode.v1.RearPort.CustomFieldsEntryR\x0c\x63ustomFields\x12\x39\n\x08metadata\x18\x0c \x01(\x0b\x32\x17.google.protobuf.StructB\x04\x88\xb5\x18\x00R\x08metadata\x12*\n\x05owner\x18\r \x01(\x0b\x32\x0f.diode.v1.OwnerH\x06R\x05owner\x88\x01\x01\x1a[\n\x11\x43ustomFieldsEntry\x12\x10\n\x03key\x18\x01 \x01(\tR\x03key\x12\x30\n\x05value\x18\x02 \x01(\x0b\x32\x1a.diode.v1.CustomFieldValueR\x05value:\x02\x38\x01\x42\t\n\x07_moduleB\x08\n\x06_labelB\x08\n\x06_colorB\x0c\n\n_positionsB\x0e\n\x0c_descriptionB\x11\n\x0f_mark_connectedB\x08\n\x06_owner\"\x89\x04\n\x06Region\x12\x12\n\x04name\x18\x01 \x01(\tR\x04name\x12\x12\n\x04slug\x18\x02 \x01(\tR\x04slug\x12-\n\x06parent\x18\x03 \x01(\x0b\x32\x10.diode.v1.RegionH\x00R\x06parent\x88\x01\x01\x12%\n\x0b\x64\x65scription\x18\x04 \x01(\tH\x01R\x0b\x64\x65scription\x88\x01\x01\x12!\n\x04tags\x18\x05 \x03(\x0b\x32\r.diode.v1.TagR\x04tags\x12G\n\rcustom_fields\x18\x06 \x03(\x0b\x32\".diode.v1.Region.CustomFieldsEntryR\x0c\x63ustomFields\x12\x1f\n\x08\x63omments\x18\x07 \x01(\tH\x02R\x08\x63omments\x88\x01\x01\x12\x39\n\x08metadata\x18\x08 \x01(\x0b\x32\x17.google.protobuf.StructB\x04\x88\xb5\x18\x00R\x08metadata\x12*\n\x05owner\x18\t \x01(\x0b\x32\x0f.diode.v1.OwnerH\x03R\x05owner\x88\x01\x01\x1a[\n\x11\x43ustomFieldsEntry\x12\x10\n\x03key\x18\x01 \x01(\tR\x03key\x12\x30\n\x05value\x18\x02 \x01(\x0b\x32\x1a.diode.v1.CustomFieldValueR\x05value:\x02\x38\x01\x42\t\n\x07_parentB\x0e\n\x0c_descriptionB\x0b\n\t_commentsB\x08\n\x06_owner\"\xf3\x03\n\x04Role\x12\x12\n\x04name\x18\x01 \x01(\tR\x04name\x12\x12\n\x04slug\x18\x02 \x01(\tR\x04slug\x12\x1b\n\x06weight\x18\x03 \x01(\x03H\x00R\x06weight\x88\x01\x01\x12%\n\x0b\x64\x65scription\x18\x04 \x01(\tH\x01R\x0b\x64\x65scription\x88\x01\x01\x12!\n\x04tags\x18\x05 \x03(\x0b\x32\r.diode.v1.TagR\x04tags\x12\x45\n\rcustom_fields\x18\x06 \x03(\x0b\x32 .diode.v1.Role.CustomFieldsEntryR\x0c\x63ustomFields\x12\x39\n\x08metadata\x18\x07 \x01(\x0b\x32\x17.google.protobuf.StructB\x04\x88\xb5\x18\x00R\x08metadata\x12*\n\x05owner\x18\x08 \x01(\x0b\x32\x0f.diode.v1.OwnerH\x02R\x05owner\x88\x01\x01\x12\x1f\n\x08\x63omments\x18\t \x01(\tH\x03R\x08\x63omments\x88\x01\x01\x1a[\n\x11\x43ustomFieldsEntry\x12\x10\n\x03key\x18\x01 \x01(\tR\x03key\x12\x30\n\x05value\x18\x02 \x01(\x0b\x32\x1a.diode.v1.CustomFieldValueR\x05value:\x02\x38\x01\x42\t\n\x07_weightB\x0e\n\x0c_descriptionB\x08\n\x06_ownerB\x0b\n\t_comments\"\xff\x03\n\x0bRouteTarget\x12\x12\n\x04name\x18\x01 \x01(\tR\x04name\x12-\n\x06tenant\x18\x02 \x01(\x0b\x32\x10.diode.v1.TenantH\x00R\x06tenant\x88\x01\x01\x12%\n\x0b\x64\x65scription\x18\x03 \x01(\tH\x01R\x0b\x64\x65scription\x88\x01\x01\x12\x1f\n\x08\x63omments\x18\x04 \x01(\tH\x02R\x08\x63omments\x88\x01\x01\x12!\n\x04tags\x18\x05 \x03(\x0b\x32\r.diode.v1.TagR\x04tags\x12L\n\rcustom_fields\x18\x06 \x03(\x0b\x32\'.diode.v1.RouteTarget.CustomFieldsEntryR\x0c\x63ustomFields\x12\x39\n\x08metadata\x18\x07 \x01(\x0b\x32\x17.google.protobuf.StructB\x04\x88\xb5\x18\x00R\x08metadata\x12*\n\x05owner\x18\x08 \x01(\x0b\x32\x0f.diode.v1.OwnerH\x03R\x05owner\x88\x01\x01\x1a[\n\x11\x43ustomFieldsEntry\x12\x10\n\x03key\x18\x01 \x01(\tR\x03key\x12\x30\n\x05value\x18\x02 \x01(\x0b\x32\x1a.diode.v1.CustomFieldValueR\x05value:\x02\x38\x01\x42\t\n\x07_tenantB\x0e\n\x0c_descriptionB\x0b\n\t_commentsB\x08\n\x06_owner\"\xf3\x07\n\x07Service\x12\x31\n\x06\x64\x65vice\x18\x01 \x01(\x0b\x32\x10.diode.v1.DeviceB\x02\x18\x01H\x01R\x06\x64\x65vice\x88\x01\x01\x12J\n\x0fvirtual_machine\x18\x02 \x01(\x0b\x32\x18.diode.v1.VirtualMachineB\x02\x18\x01H\x02R\x0evirtualMachine\x88\x01\x01\x12\x12\n\x04name\x18\x03 \x01(\tR\x04name\x12\x36\n\x08protocol\x18\x04 \x01(\tB\x15\xfa\x42\x12r\x10R\x04sctpR\x03tcpR\x03udpH\x03R\x08protocol\x88\x01\x01\x12\x14\n\x05ports\x18\x05 \x03(\x03R\x05ports\x12%\n\x0b\x64\x65scription\x18\x06 \x01(\tH\x04R\x0b\x64\x65scription\x88\x01\x01\x12\x1f\n\x08\x63omments\x18\x07 \x01(\tH\x05R\x08\x63omments\x88\x01\x01\x12!\n\x04tags\x18\x08 \x03(\x0b\x32\r.diode.v1.TagR\x04tags\x12H\n\rcustom_fields\x18\t \x03(\x0b\x32#.diode.v1.Service.CustomFieldsEntryR\x0c\x63ustomFields\x12\x35\n\x0bipaddresses\x18\n \x03(\x0b\x32\x13.diode.v1.IPAddressR\x0bipaddresses\x12\x44\n\x14parent_object_device\x18\x0b \x01(\x0b\x32\x10.diode.v1.DeviceH\x00R\x12parentObjectDevice\x12N\n\x18parent_object_fhrp_group\x18\x0c \x01(\x0b\x32\x13.diode.v1.FHRPGroupH\x00R\x15parentObjectFhrpGroup\x12]\n\x1dparent_object_virtual_machine\x18\r \x01(\x0b\x32\x18.diode.v1.VirtualMachineH\x00R\x1aparentObjectVirtualMachine\x12\x39\n\x08metadata\x18\x0e \x01(\x0b\x32\x17.google.protobuf.StructB\x04\x88\xb5\x18\x00R\x08metadata\x12*\n\x05owner\x18\x0f \x01(\x0b\x32\x0f.diode.v1.OwnerH\x06R\x05owner\x88\x01\x01\x1a[\n\x11\x43ustomFieldsEntry\x12\x10\n\x03key\x18\x01 \x01(\tR\x03key\x12\x30\n\x05value\x18\x02 \x01(\x0b\x32\x1a.diode.v1.CustomFieldValueR\x05value:\x02\x38\x01\x42\x0f\n\rparent_objectB\t\n\x07_deviceB\x12\n\x10_virtual_machineB\x0b\n\t_protocolB\x0e\n\x0c_descriptionB\x0b\n\t_commentsB\x08\n\x06_owner\"\xc6\x08\n\x04Site\x12\x12\n\x04name\x18\x01 \x01(\tR\x04name\x12\x12\n\x04slug\x18\x02 \x01(\tR\x04slug\x12V\n\x06status\x18\x03 \x01(\tB9\xfa\x42\x36r4R\x06\x61\x63tiveR\x0f\x64\x65\x63ommissioningR\x07plannedR\x07retiredR\x07stagingH\x00R\x06status\x88\x01\x01\x12-\n\x06region\x18\x04 \x01(\x0b\x32\x10.diode.v1.RegionH\x01R\x06region\x88\x01\x01\x12.\n\x05group\x18\x05 \x01(\x0b\x32\x13.diode.v1.SiteGroupH\x02R\x05group\x88\x01\x01\x12-\n\x06tenant\x18\x06 \x01(\x0b\x32\x10.diode.v1.TenantH\x03R\x06tenant\x88\x01\x01\x12\x1f\n\x08\x66\x61\x63ility\x18\x07 \x01(\tH\x04R\x08\x66\x61\x63ility\x88\x01\x01\x12 \n\ttime_zone\x18\x08 \x01(\tH\x05R\x08timeZone\x88\x01\x01\x12%\n\x0b\x64\x65scription\x18\t \x01(\tH\x06R\x0b\x64\x65scription\x88\x01\x01\x12.\n\x10physical_address\x18\n \x01(\tH\x07R\x0fphysicalAddress\x88\x01\x01\x12.\n\x10shipping_address\x18\x0b \x01(\tH\x08R\x0fshippingAddress\x88\x01\x01\x12\x1f\n\x08latitude\x18\x0c \x01(\x01H\tR\x08latitude\x88\x01\x01\x12!\n\tlongitude\x18\r \x01(\x01H\nR\tlongitude\x88\x01\x01\x12\x1f\n\x08\x63omments\x18\x0e \x01(\tH\x0bR\x08\x63omments\x88\x01\x01\x12!\n\x04tags\x18\x0f \x03(\x0b\x32\r.diode.v1.TagR\x04tags\x12\x45\n\rcustom_fields\x18\x10 \x03(\x0b\x32 .diode.v1.Site.CustomFieldsEntryR\x0c\x63ustomFields\x12!\n\x04\x61sns\x18\x11 \x03(\x0b\x32\r.diode.v1.ASNR\x04\x61sns\x12\x39\n\x08metadata\x18\x12 \x01(\x0b\x32\x17.google.protobuf.StructB\x04\x88\xb5\x18\x00R\x08metadata\x12*\n\x05owner\x18\x13 \x01(\x0b\x32\x0f.diode.v1.OwnerH\x0cR\x05owner\x88\x01\x01\x1a[\n\x11\x43ustomFieldsEntry\x12\x10\n\x03key\x18\x01 \x01(\tR\x03key\x12\x30\n\x05value\x18\x02 \x01(\x0b\x32\x1a.diode.v1.CustomFieldValueR\x05value:\x02\x38\x01\x42\t\n\x07_statusB\t\n\x07_regionB\x08\n\x06_groupB\t\n\x07_tenantB\x0b\n\t_facilityB\x0c\n\n_time_zoneB\x0e\n\x0c_descriptionB\x13\n\x11_physical_addressB\x13\n\x11_shipping_addressB\x0b\n\t_latitudeB\x0c\n\n_longitudeB\x0b\n\t_commentsB\x08\n\x06_owner\"\x92\x04\n\tSiteGroup\x12\x12\n\x04name\x18\x01 \x01(\tR\x04name\x12\x12\n\x04slug\x18\x02 \x01(\tR\x04slug\x12\x30\n\x06parent\x18\x03 \x01(\x0b\x32\x13.diode.v1.SiteGroupH\x00R\x06parent\x88\x01\x01\x12%\n\x0b\x64\x65scription\x18\x04 \x01(\tH\x01R\x0b\x64\x65scription\x88\x01\x01\x12!\n\x04tags\x18\x05 \x03(\x0b\x32\r.diode.v1.TagR\x04tags\x12J\n\rcustom_fields\x18\x06 \x03(\x0b\x32%.diode.v1.SiteGroup.CustomFieldsEntryR\x0c\x63ustomFields\x12\x1f\n\x08\x63omments\x18\x07 \x01(\tH\x02R\x08\x63omments\x88\x01\x01\x12\x39\n\x08metadata\x18\x08 \x01(\x0b\x32\x17.google.protobuf.StructB\x04\x88\xb5\x18\x00R\x08metadata\x12*\n\x05owner\x18\t \x01(\x0b\x32\x0f.diode.v1.OwnerH\x03R\x05owner\x88\x01\x01\x1a[\n\x11\x43ustomFieldsEntry\x12\x10\n\x03key\x18\x01 \x01(\tR\x03key\x12\x30\n\x05value\x18\x02 \x01(\x0b\x32\x1a.diode.v1.CustomFieldValueR\x05value:\x02\x38\x01\x42\t\n\x07_parentB\x0e\n\x0c_descriptionB\x0b\n\t_commentsB\x08\n\x06_owner\"\xd6\x0f\n\x03Tag\x12\x12\n\x04name\x18\x01 \x01(\tR\x04name\x12\x12\n\x04slug\x18\x02 \x01(\tR\x04slug\x12\x19\n\x05\x63olor\x18\x03 \x01(\tH\x00R\x05\x63olor\x88\x01\x01\x12%\n\x0b\x64\x65scription\x18\x04 \x01(\tH\x01R\x0b\x64\x65scription\x88\x01\x01\x12\x1b\n\x06weight\x18\x05 \x01(\x03H\x02R\x06weight\x88\x01\x01\x12\xe7\r\n\x0cobject_types\x18\x06 \x03(\tB\xc3\r\xfa\x42\xbf\r\x92\x01\xbb\r\"\xb8\rr\xb5\rR\x10\x63ircuits.circuitR\x15\x63ircuits.circuitgroupR\x1f\x63ircuits.circuitgroupassignmentR\x1b\x63ircuits.circuitterminationR\x14\x63ircuits.circuittypeR\x11\x63ircuits.providerR\x18\x63ircuits.provideraccountR\x18\x63ircuits.providernetworkR\x17\x63ircuits.virtualcircuitR\"circuits.virtualcircuitterminationR\x1b\x63ircuits.virtualcircuittypeR\ndcim.cableR\x10\x64\x63im.cablebundleR\x10\x64\x63im.consoleportR\x16\x64\x63im.consoleserverportR\x0b\x64\x63im.deviceR\x0e\x64\x63im.devicebayR\x0f\x64\x63im.deviceroleR\x0f\x64\x63im.devicetypeR\x0e\x64\x63im.frontportR\x0e\x64\x63im.interfaceR\x12\x64\x63im.inventoryitemR\x16\x64\x63im.inventoryitemroleR\rdcim.locationR\x0f\x64\x63im.macaddressR\x11\x64\x63im.manufacturerR\x0b\x64\x63im.moduleR\x0e\x64\x63im.modulebayR\x0f\x64\x63im.moduletypeR\x16\x64\x63im.moduletypeprofileR\rdcim.platformR\x0e\x64\x63im.powerfeedR\x10\x64\x63im.poweroutletR\x0f\x64\x63im.powerpanelR\x0e\x64\x63im.powerportR\tdcim.rackR\x0e\x64\x63im.rackgroupR\x14\x64\x63im.rackreservationR\rdcim.rackroleR\rdcim.racktypeR\rdcim.rearportR\x0b\x64\x63im.regionR\tdcim.siteR\x0e\x64\x63im.sitegroupR\x13\x64\x63im.virtualchassisR\x19\x64\x63im.virtualdevicecontextR\x13\x65xtras.journalentryR\x0eipam.aggregateR\x08ipam.asnR\ripam.asnrangeR\x0eipam.fhrpgroupR\x0eipam.ipaddressR\x0cipam.iprangeR\x0bipam.prefixR\x08ipam.rirR\tipam.roleR\x10ipam.routetargetR\x0cipam.serviceR\tipam.vlanR\x0eipam.vlangroupR\x1aipam.vlantranslationpolicyR\x18ipam.vlantranslationruleR\x08ipam.vrfR\x0ftenancy.contactR\x19tenancy.contactassignmentR\x14tenancy.contactgroupR\x13tenancy.contactroleR\x0etenancy.tenantR\x13tenancy.tenantgroupR\x16virtualization.clusterR\x1bvirtualization.clustergroupR\x1avirtualization.clustertypeR\x1avirtualization.virtualdiskR\x1dvirtualization.virtualmachineR!virtualization.virtualmachinetypeR\x1avirtualization.vminterfaceR\rvpn.ikepolicyR\x0fvpn.ikeproposalR\x0fvpn.ipsecpolicyR\x10vpn.ipsecprofileR\x11vpn.ipsecproposalR\tvpn.l2vpnR\x14vpn.l2vpnterminationR\nvpn.tunnelR\x0fvpn.tunnelgroupR\x15vpn.tunnelterminationR\x14wireless.wirelesslanR\x19wireless.wirelesslangroupR\x15wireless.wirelesslinkR\x0bobjectTypes\x12\x39\n\x08metadata\x18\x07 \x01(\x0b\x32\x17.google.protobuf.StructB\x04\x88\xb5\x18\x00R\x08metadataB\x08\n\x06_colorB\x0e\n\x0c_descriptionB\t\n\x07_weight\"\x8b\x04\n\x06Tenant\x12\x12\n\x04name\x18\x01 \x01(\tR\x04name\x12\x12\n\x04slug\x18\x02 \x01(\tR\x04slug\x12\x30\n\x05group\x18\x03 \x01(\x0b\x32\x15.diode.v1.TenantGroupH\x00R\x05group\x88\x01\x01\x12%\n\x0b\x64\x65scription\x18\x04 \x01(\tH\x01R\x0b\x64\x65scription\x88\x01\x01\x12\x1f\n\x08\x63omments\x18\x05 \x01(\tH\x02R\x08\x63omments\x88\x01\x01\x12!\n\x04tags\x18\x06 \x03(\x0b\x32\r.diode.v1.TagR\x04tags\x12G\n\rcustom_fields\x18\x07 \x03(\x0b\x32\".diode.v1.Tenant.CustomFieldsEntryR\x0c\x63ustomFields\x12\x39\n\x08metadata\x18\x08 \x01(\x0b\x32\x17.google.protobuf.StructB\x04\x88\xb5\x18\x00R\x08metadata\x12*\n\x05owner\x18\t \x01(\x0b\x32\x0f.diode.v1.OwnerH\x03R\x05owner\x88\x01\x01\x1a[\n\x11\x43ustomFieldsEntry\x12\x10\n\x03key\x18\x01 \x01(\tR\x03key\x12\x30\n\x05value\x18\x02 \x01(\x0b\x32\x1a.diode.v1.CustomFieldValueR\x05value:\x02\x38\x01\x42\x08\n\x06_groupB\x0e\n\x0c_descriptionB\x0b\n\t_commentsB\x08\n\x06_owner\"\x98\x04\n\x0bTenantGroup\x12\x12\n\x04name\x18\x01 \x01(\tR\x04name\x12\x12\n\x04slug\x18\x02 \x01(\tR\x04slug\x12\x32\n\x06parent\x18\x03 \x01(\x0b\x32\x15.diode.v1.TenantGroupH\x00R\x06parent\x88\x01\x01\x12%\n\x0b\x64\x65scription\x18\x04 \x01(\tH\x01R\x0b\x64\x65scription\x88\x01\x01\x12!\n\x04tags\x18\x05 \x03(\x0b\x32\r.diode.v1.TagR\x04tags\x12L\n\rcustom_fields\x18\x06 \x03(\x0b\x32\'.diode.v1.TenantGroup.CustomFieldsEntryR\x0c\x63ustomFields\x12\x1f\n\x08\x63omments\x18\x07 \x01(\tH\x02R\x08\x63omments\x88\x01\x01\x12\x39\n\x08metadata\x18\x08 \x01(\x0b\x32\x17.google.protobuf.StructB\x04\x88\xb5\x18\x00R\x08metadata\x12*\n\x05owner\x18\t \x01(\x0b\x32\x0f.diode.v1.OwnerH\x03R\x05owner\x88\x01\x01\x1a[\n\x11\x43ustomFieldsEntry\x12\x10\n\x03key\x18\x01 \x01(\tR\x03key\x12\x30\n\x05value\x18\x02 \x01(\x0b\x32\x1a.diode.v1.CustomFieldValueR\x05value:\x02\x38\x01\x42\t\n\x07_parentB\x0e\n\x0c_descriptionB\x0b\n\t_commentsB\x08\n\x06_owner\"\xe7\x06\n\x06Tunnel\x12\x12\n\x04name\x18\x01 \x01(\tR\x04name\x12\x38\n\x06status\x18\x02 \x01(\tB \xfa\x42\x1dr\x1bR\x06\x61\x63tiveR\x08\x64isabledR\x07plannedR\x06status\x12\x30\n\x05group\x18\x03 \x01(\x0b\x32\x15.diode.v1.TunnelGroupH\x00R\x05group\x88\x01\x01\x12v\n\rencapsulation\x18\x04 \x01(\tBP\xfa\x42MrKR\x03greR\x05ip-ipR\x0fipsec-transportR\x0cipsec-tunnelR\x04l2tpR\x07openvpnR\x04pptpR\twireguardR\rencapsulation\x12@\n\ripsec_profile\x18\x05 \x01(\x0b\x32\x16.diode.v1.IPSecProfileH\x01R\x0cipsecProfile\x88\x01\x01\x12-\n\x06tenant\x18\x06 \x01(\x0b\x32\x10.diode.v1.TenantH\x02R\x06tenant\x88\x01\x01\x12 \n\ttunnel_id\x18\x07 \x01(\x03H\x03R\x08tunnelId\x88\x01\x01\x12%\n\x0b\x64\x65scription\x18\x08 \x01(\tH\x04R\x0b\x64\x65scription\x88\x01\x01\x12\x1f\n\x08\x63omments\x18\t \x01(\tH\x05R\x08\x63omments\x88\x01\x01\x12!\n\x04tags\x18\n \x03(\x0b\x32\r.diode.v1.TagR\x04tags\x12G\n\rcustom_fields\x18\x0b \x03(\x0b\x32\".diode.v1.Tunnel.CustomFieldsEntryR\x0c\x63ustomFields\x12\x39\n\x08metadata\x18\x0c \x01(\x0b\x32\x17.google.protobuf.StructB\x04\x88\xb5\x18\x00R\x08metadata\x12*\n\x05owner\x18\r \x01(\x0b\x32\x0f.diode.v1.OwnerH\x06R\x05owner\x88\x01\x01\x1a[\n\x11\x43ustomFieldsEntry\x12\x10\n\x03key\x18\x01 \x01(\tR\x03key\x12\x30\n\x05value\x18\x02 \x01(\x0b\x32\x1a.diode.v1.CustomFieldValueR\x05value:\x02\x38\x01\x42\x08\n\x06_groupB\x10\n\x0e_ipsec_profileB\t\n\x07_tenantB\x0c\n\n_tunnel_idB\x0e\n\x0c_descriptionB\x0b\n\t_commentsB\x08\n\x06_owner\"\xd9\x03\n\x0bTunnelGroup\x12\x12\n\x04name\x18\x01 \x01(\tR\x04name\x12\x12\n\x04slug\x18\x02 \x01(\tR\x04slug\x12%\n\x0b\x64\x65scription\x18\x03 \x01(\tH\x00R\x0b\x64\x65scription\x88\x01\x01\x12!\n\x04tags\x18\x04 \x03(\x0b\x32\r.diode.v1.TagR\x04tags\x12L\n\rcustom_fields\x18\x05 \x03(\x0b\x32\'.diode.v1.TunnelGroup.CustomFieldsEntryR\x0c\x63ustomFields\x12\x39\n\x08metadata\x18\x06 \x01(\x0b\x32\x17.google.protobuf.StructB\x04\x88\xb5\x18\x00R\x08metadata\x12*\n\x05owner\x18\x07 \x01(\x0b\x32\x0f.diode.v1.OwnerH\x01R\x05owner\x88\x01\x01\x12\x1f\n\x08\x63omments\x18\x08 \x01(\tH\x02R\x08\x63omments\x88\x01\x01\x1a[\n\x11\x43ustomFieldsEntry\x12\x10\n\x03key\x18\x01 \x01(\tR\x03key\x12\x30\n\x05value\x18\x02 \x01(\x0b\x32\x1a.diode.v1.CustomFieldValueR\x05value:\x02\x38\x01\x42\x0e\n\x0c_descriptionB\x08\n\x06_ownerB\x0b\n\t_comments\"\xf0\x43\n\x11TunnelTermination\x12(\n\x06tunnel\x18\x01 \x01(\x0b\x32\x10.diode.v1.TunnelR\x06tunnel\x12+\n\x04role\x18\x02 \x01(\tB\x17\xfa\x42\x14r\x12R\x03hubR\x04peerR\x05spokeR\x04role\x12\x38\n\x0ftermination_asn\x18\x03 \x01(\x0b\x32\r.diode.v1.ASNH\x00R\x0eterminationAsn\x12H\n\x15termination_asn_range\x18\x04 \x01(\x0b\x32\x12.diode.v1.ASNRangeH\x00R\x13terminationAsnRange\x12J\n\x15termination_aggregate\x18\x05 \x01(\x0b\x32\x13.diode.v1.AggregateH\x00R\x14terminationAggregate\x12>\n\x11termination_cable\x18\x06 \x01(\x0b\x32\x0f.diode.v1.CableH\x00R\x10terminationCable\x12K\n\x16termination_cable_path\x18\x07 \x01(\x0b\x32\x13.diode.v1.CablePathH\x00R\x14terminationCablePath\x12\x64\n\x1dtermination_cable_termination\x18\x08 \x01(\x0b\x32\x1a.diode.v1.CableTerminationB\x02\x18\x01H\x00R\x1bterminationCableTermination\x12\x44\n\x13termination_circuit\x18\t \x01(\x0b\x32\x11.diode.v1.CircuitH\x00R\x12terminationCircuit\x12T\n\x19termination_circuit_group\x18\n \x01(\x0b\x32\x16.diode.v1.CircuitGroupH\x00R\x17terminationCircuitGroup\x12s\n$termination_circuit_group_assignment\x18\x0b \x01(\x0b\x32 .diode.v1.CircuitGroupAssignmentH\x00R!terminationCircuitGroupAssignment\x12\x66\n\x1ftermination_circuit_termination\x18\x0c \x01(\x0b\x32\x1c.diode.v1.CircuitTerminationH\x00R\x1dterminationCircuitTermination\x12Q\n\x18termination_circuit_type\x18\r \x01(\x0b\x32\x15.diode.v1.CircuitTypeH\x00R\x16terminationCircuitType\x12\x44\n\x13termination_cluster\x18\x0e \x01(\x0b\x32\x11.diode.v1.ClusterH\x00R\x12terminationCluster\x12T\n\x19termination_cluster_group\x18\x0f \x01(\x0b\x32\x16.diode.v1.ClusterGroupH\x00R\x17terminationClusterGroup\x12Q\n\x18termination_cluster_type\x18\x10 \x01(\x0b\x32\x15.diode.v1.ClusterTypeH\x00R\x16terminationClusterType\x12Q\n\x18termination_console_port\x18\x11 \x01(\x0b\x32\x15.diode.v1.ConsolePortH\x00R\x16terminationConsolePort\x12\x64\n\x1ftermination_console_server_port\x18\x12 \x01(\x0b\x32\x1b.diode.v1.ConsoleServerPortH\x00R\x1cterminationConsoleServerPort\x12\x44\n\x13termination_contact\x18\x13 \x01(\x0b\x32\x11.diode.v1.ContactH\x00R\x12terminationContact\x12\x63\n\x1etermination_contact_assignment\x18\x14 \x01(\x0b\x32\x1b.diode.v1.ContactAssignmentH\x00R\x1cterminationContactAssignment\x12T\n\x19termination_contact_group\x18\x15 \x01(\x0b\x32\x16.diode.v1.ContactGroupH\x00R\x17terminationContactGroup\x12Q\n\x18termination_contact_role\x18\x16 \x01(\x0b\x32\x15.diode.v1.ContactRoleH\x00R\x16terminationContactRole\x12\x41\n\x12termination_device\x18\x17 \x01(\x0b\x32\x10.diode.v1.DeviceH\x00R\x11terminationDevice\x12K\n\x16termination_device_bay\x18\x18 \x01(\x0b\x32\x13.diode.v1.DeviceBayH\x00R\x14terminationDeviceBay\x12N\n\x17termination_device_role\x18\x19 \x01(\x0b\x32\x14.diode.v1.DeviceRoleH\x00R\x15terminationDeviceRole\x12N\n\x17termination_device_type\x18\x1a \x01(\x0b\x32\x14.diode.v1.DeviceTypeH\x00R\x15terminationDeviceType\x12K\n\x16termination_fhrp_group\x18\x1b \x01(\x0b\x32\x13.diode.v1.FHRPGroupH\x00R\x14terminationFhrpGroup\x12j\n!termination_fhrp_group_assignment\x18\x1c \x01(\x0b\x32\x1d.diode.v1.FHRPGroupAssignmentH\x00R\x1eterminationFhrpGroupAssignment\x12K\n\x16termination_front_port\x18\x1d \x01(\x0b\x32\x13.diode.v1.FrontPortH\x00R\x14terminationFrontPort\x12K\n\x16termination_ike_policy\x18\x1e \x01(\x0b\x32\x13.diode.v1.IKEPolicyH\x00R\x14terminationIkePolicy\x12Q\n\x18termination_ike_proposal\x18\x1f \x01(\x0b\x32\x15.diode.v1.IKEProposalH\x00R\x16terminationIkeProposal\x12K\n\x16termination_ip_address\x18 \x01(\x0b\x32\x13.diode.v1.IPAddressH\x00R\x14terminationIpAddress\x12\x45\n\x14termination_ip_range\x18! \x01(\x0b\x32\x11.diode.v1.IPRangeH\x00R\x12terminationIpRange\x12R\n\x19termination_ip_sec_policy\x18\" \x01(\x0b\x32\x15.diode.v1.IPSecPolicyH\x00R\x16terminationIpSecPolicy\x12U\n\x1atermination_ip_sec_profile\x18# \x01(\x0b\x32\x16.diode.v1.IPSecProfileH\x00R\x17terminationIpSecProfile\x12X\n\x1btermination_ip_sec_proposal\x18$ \x01(\x0b\x32\x17.diode.v1.IPSecProposalH\x00R\x18terminationIpSecProposal\x12J\n\x15termination_interface\x18% \x01(\x0b\x32\x13.diode.v1.InterfaceH\x00R\x14terminationInterface\x12W\n\x1atermination_inventory_item\x18& \x01(\x0b\x32\x17.diode.v1.InventoryItemH\x00R\x18terminationInventoryItem\x12\x64\n\x1ftermination_inventory_item_role\x18\' \x01(\x0b\x32\x1b.diode.v1.InventoryItemRoleH\x00R\x1cterminationInventoryItemRole\x12>\n\x11termination_l2vpn\x18( \x01(\x0b\x32\x0f.diode.v1.L2VPNH\x00R\x10terminationL2vpn\x12`\n\x1dtermination_l2vpn_termination\x18) \x01(\x0b\x32\x1a.diode.v1.L2VPNTerminationH\x00R\x1bterminationL2vpnTermination\x12G\n\x14termination_location\x18* \x01(\x0b\x32\x12.diode.v1.LocationH\x00R\x13terminationLocation\x12N\n\x17termination_mac_address\x18+ \x01(\x0b\x32\x14.diode.v1.MACAddressH\x00R\x15terminationMacAddress\x12S\n\x18termination_manufacturer\x18, \x01(\x0b\x32\x16.diode.v1.ManufacturerH\x00R\x17terminationManufacturer\x12\x41\n\x12termination_module\x18- \x01(\x0b\x32\x10.diode.v1.ModuleH\x00R\x11terminationModule\x12K\n\x16termination_module_bay\x18. \x01(\x0b\x32\x13.diode.v1.ModuleBayH\x00R\x14terminationModuleBay\x12N\n\x17termination_module_type\x18/ \x01(\x0b\x32\x14.diode.v1.ModuleTypeH\x00R\x15terminationModuleType\x12G\n\x14termination_platform\x18\x30 \x01(\x0b\x32\x12.diode.v1.PlatformH\x00R\x13terminationPlatform\x12K\n\x16termination_power_feed\x18\x31 \x01(\x0b\x32\x13.diode.v1.PowerFeedH\x00R\x14terminationPowerFeed\x12Q\n\x18termination_power_outlet\x18\x32 \x01(\x0b\x32\x15.diode.v1.PowerOutletH\x00R\x16terminationPowerOutlet\x12N\n\x17termination_power_panel\x18\x33 \x01(\x0b\x32\x14.diode.v1.PowerPanelH\x00R\x15terminationPowerPanel\x12K\n\x16termination_power_port\x18\x34 \x01(\x0b\x32\x13.diode.v1.PowerPortH\x00R\x14terminationPowerPort\x12\x41\n\x12termination_prefix\x18\x35 \x01(\x0b\x32\x10.diode.v1.PrefixH\x00R\x11terminationPrefix\x12G\n\x14termination_provider\x18\x36 \x01(\x0b\x32\x12.diode.v1.ProviderH\x00R\x13terminationProvider\x12]\n\x1ctermination_provider_account\x18\x37 \x01(\x0b\x32\x19.diode.v1.ProviderAccountH\x00R\x1aterminationProviderAccount\x12]\n\x1ctermination_provider_network\x18\x38 \x01(\x0b\x32\x19.diode.v1.ProviderNetworkH\x00R\x1aterminationProviderNetwork\x12\x38\n\x0ftermination_rir\x18\x39 \x01(\x0b\x32\r.diode.v1.RIRH\x00R\x0eterminationRir\x12;\n\x10termination_rack\x18: \x01(\x0b\x32\x0e.diode.v1.RackH\x00R\x0fterminationRack\x12]\n\x1ctermination_rack_reservation\x18; \x01(\x0b\x32\x19.diode.v1.RackReservationH\x00R\x1aterminationRackReservation\x12H\n\x15termination_rack_role\x18< \x01(\x0b\x32\x12.diode.v1.RackRoleH\x00R\x13terminationRackRole\x12H\n\x15termination_rack_type\x18= \x01(\x0b\x32\x12.diode.v1.RackTypeH\x00R\x13terminationRackType\x12H\n\x15termination_rear_port\x18> \x01(\x0b\x32\x12.diode.v1.RearPortH\x00R\x13terminationRearPort\x12\x41\n\x12termination_region\x18? \x01(\x0b\x32\x10.diode.v1.RegionH\x00R\x11terminationRegion\x12;\n\x10termination_role\x18@ \x01(\x0b\x32\x0e.diode.v1.RoleH\x00R\x0fterminationRole\x12Q\n\x18termination_route_target\x18\x41 \x01(\x0b\x32\x15.diode.v1.RouteTargetH\x00R\x16terminationRouteTarget\x12\x44\n\x13termination_service\x18\x42 \x01(\x0b\x32\x11.diode.v1.ServiceH\x00R\x12terminationService\x12;\n\x10termination_site\x18\x43 \x01(\x0b\x32\x0e.diode.v1.SiteH\x00R\x0fterminationSite\x12K\n\x16termination_site_group\x18\x44 \x01(\x0b\x32\x13.diode.v1.SiteGroupH\x00R\x14terminationSiteGroup\x12\x38\n\x0ftermination_tag\x18\x45 \x01(\x0b\x32\r.diode.v1.TagH\x00R\x0eterminationTag\x12\x41\n\x12termination_tenant\x18\x46 \x01(\x0b\x32\x10.diode.v1.TenantH\x00R\x11terminationTenant\x12Q\n\x18termination_tenant_group\x18G \x01(\x0b\x32\x15.diode.v1.TenantGroupH\x00R\x16terminationTenantGroup\x12\x41\n\x12termination_tunnel\x18H \x01(\x0b\x32\x10.diode.v1.TunnelH\x00R\x11terminationTunnel\x12Q\n\x18termination_tunnel_group\x18I \x01(\x0b\x32\x15.diode.v1.TunnelGroupH\x00R\x16terminationTunnelGroup\x12\x63\n\x1etermination_tunnel_termination\x18J \x01(\x0b\x32\x1b.diode.v1.TunnelTerminationH\x00R\x1cterminationTunnelTermination\x12;\n\x10termination_vlan\x18K \x01(\x0b\x32\x0e.diode.v1.VLANH\x00R\x0fterminationVlan\x12K\n\x16termination_vlan_group\x18L \x01(\x0b\x32\x13.diode.v1.VLANGroupH\x00R\x14terminationVlanGroup\x12p\n#termination_vlan_translation_policy\x18M \x01(\x0b\x32\x1f.diode.v1.VLANTranslationPolicyH\x00R terminationVlanTranslationPolicy\x12j\n!termination_vlan_translation_rule\x18N \x01(\x0b\x32\x1d.diode.v1.VLANTranslationRuleH\x00R\x1eterminationVlanTranslationRule\x12Q\n\x18termination_vm_interface\x18O \x01(\x0b\x32\x15.diode.v1.VMInterfaceH\x00R\x16terminationVmInterface\x12\x38\n\x0ftermination_vrf\x18P \x01(\x0b\x32\r.diode.v1.VRFH\x00R\x0eterminationVrf\x12Z\n\x1btermination_virtual_chassis\x18Q \x01(\x0b\x32\x18.diode.v1.VirtualChassisH\x00R\x19terminationVirtualChassis\x12Z\n\x1btermination_virtual_circuit\x18R \x01(\x0b\x32\x18.diode.v1.VirtualCircuitH\x00R\x19terminationVirtualCircuit\x12|\n\'termination_virtual_circuit_termination\x18S \x01(\x0b\x32#.diode.v1.VirtualCircuitTerminationH\x00R$terminationVirtualCircuitTermination\x12g\n termination_virtual_circuit_type\x18T \x01(\x0b\x32\x1c.diode.v1.VirtualCircuitTypeH\x00R\x1dterminationVirtualCircuitType\x12m\n\"termination_virtual_device_context\x18U \x01(\x0b\x32\x1e.diode.v1.VirtualDeviceContextH\x00R\x1fterminationVirtualDeviceContext\x12Q\n\x18termination_virtual_disk\x18V \x01(\x0b\x32\x15.diode.v1.VirtualDiskH\x00R\x16terminationVirtualDisk\x12Z\n\x1btermination_virtual_machine\x18W \x01(\x0b\x32\x18.diode.v1.VirtualMachineH\x00R\x19terminationVirtualMachine\x12Q\n\x18termination_wireless_lan\x18X \x01(\x0b\x32\x15.diode.v1.WirelessLANH\x00R\x16terminationWirelessLan\x12\x61\n\x1etermination_wireless_lan_group\x18Y \x01(\x0b\x32\x1a.diode.v1.WirelessLANGroupH\x00R\x1bterminationWirelessLanGroup\x12T\n\x19termination_wireless_link\x18Z \x01(\x0b\x32\x16.diode.v1.WirelessLinkH\x00R\x17terminationWirelessLink\x12Q\n\x18termination_custom_field\x18^ \x01(\x0b\x32\x15.diode.v1.CustomFieldH\x00R\x16terminationCustomField\x12n\n#termination_custom_field_choice_set\x18_ \x01(\x0b\x32\x1e.diode.v1.CustomFieldChoiceSetH\x00R\x1fterminationCustomFieldChoiceSet\x12T\n\x19termination_journal_entry\x18` \x01(\x0b\x32\x16.diode.v1.JournalEntryH\x00R\x17terminationJournalEntry\x12\x64\n\x1ftermination_module_type_profile\x18\x61 \x01(\x0b\x32\x1b.diode.v1.ModuleTypeProfileH\x00R\x1cterminationModuleTypeProfile\x12N\n\x17termination_custom_link\x18\x62 \x01(\x0b\x32\x14.diode.v1.CustomLinkH\x00R\x15terminationCustomLink\x12>\n\x11termination_owner\x18\x64 \x01(\x0b\x32\x0f.diode.v1.OwnerH\x00R\x10terminationOwner\x12N\n\x17termination_owner_group\x18\x65 \x01(\x0b\x32\x14.diode.v1.OwnerGroupH\x00R\x15terminationOwnerGroup\x12Q\n\x18termination_cable_bundle\x18\x66 \x01(\x0b\x32\x15.diode.v1.CableBundleH\x00R\x16terminationCableBundle\x12K\n\x16termination_rack_group\x18g \x01(\x0b\x32\x13.diode.v1.RackGroupH\x00R\x14terminationRackGroup\x12T\n\x19termination_script_module\x18h \x01(\x0b\x32\x16.diode.v1.ScriptModuleH\x00R\x17terminationScriptModule\x12g\n termination_virtual_machine_type\x18i \x01(\x0b\x32\x1c.diode.v1.VirtualMachineTypeH\x00R\x1dterminationVirtualMachineType\x12;\n\x10termination_user\x18j \x01(\x0b\x32\x0e.diode.v1.UserH\x00R\x0fterminationUser\x12\x37\n\noutside_ip\x18[ \x01(\x0b\x32\x13.diode.v1.IPAddressH\x01R\toutsideIp\x88\x01\x01\x12!\n\x04tags\x18\\ \x03(\x0b\x32\r.diode.v1.TagR\x04tags\x12R\n\rcustom_fields\x18] \x03(\x0b\x32-.diode.v1.TunnelTermination.CustomFieldsEntryR\x0c\x63ustomFields\x12\x39\n\x08metadata\x18\x63 \x01(\x0b\x32\x17.google.protobuf.StructB\x04\x88\xb5\x18\x00R\x08metadata\x1a[\n\x11\x43ustomFieldsEntry\x12\x10\n\x03key\x18\x01 \x01(\tR\x03key\x12\x30\n\x05value\x18\x02 \x01(\x0b\x32\x1a.diode.v1.CustomFieldValueR\x05value:\x02\x38\x01\x42\r\n\x0bterminationB\r\n\x0b_outside_ip\"\xf6\x06\n\x04VLAN\x12\'\n\x04site\x18\x01 \x01(\x0b\x32\x0e.diode.v1.SiteH\x00R\x04site\x88\x01\x01\x12.\n\x05group\x18\x02 \x01(\x0b\x32\x13.diode.v1.VLANGroupH\x01R\x05group\x88\x01\x01\x12\x10\n\x03vid\x18\x03 \x01(\x03R\x03vid\x12\x12\n\x04name\x18\x04 \x01(\tR\x04name\x12-\n\x06tenant\x18\x05 \x01(\x0b\x32\x10.diode.v1.TenantH\x02R\x06tenant\x88\x01\x01\x12@\n\x06status\x18\x06 \x01(\tB#\xfa\x42 r\x1eR\x06\x61\x63tiveR\ndeprecatedR\x08reservedH\x03R\x06status\x88\x01\x01\x12\'\n\x04role\x18\x07 \x01(\x0b\x32\x0e.diode.v1.RoleH\x04R\x04role\x88\x01\x01\x12%\n\x0b\x64\x65scription\x18\x08 \x01(\tH\x05R\x0b\x64\x65scription\x88\x01\x01\x12\x35\n\tqinq_role\x18\t \x01(\tB\x13\xfa\x42\x10r\x0eR\x05\x63vlanR\x05svlanH\x06R\x08qinqRole\x88\x01\x01\x12\x32\n\nqinq_svlan\x18\n \x01(\x0b\x32\x0e.diode.v1.VLANH\x07R\tqinqSvlan\x88\x01\x01\x12\x1f\n\x08\x63omments\x18\x0b \x01(\tH\x08R\x08\x63omments\x88\x01\x01\x12!\n\x04tags\x18\x0c \x03(\x0b\x32\r.diode.v1.TagR\x04tags\x12\x45\n\rcustom_fields\x18\r \x03(\x0b\x32 .diode.v1.VLAN.CustomFieldsEntryR\x0c\x63ustomFields\x12\x39\n\x08metadata\x18\x0e \x01(\x0b\x32\x17.google.protobuf.StructB\x04\x88\xb5\x18\x00R\x08metadata\x12*\n\x05owner\x18\x0f \x01(\x0b\x32\x0f.diode.v1.OwnerH\tR\x05owner\x88\x01\x01\x1a[\n\x11\x43ustomFieldsEntry\x12\x10\n\x03key\x18\x01 \x01(\tR\x03key\x12\x30\n\x05value\x18\x02 \x01(\x0b\x32\x1a.diode.v1.CustomFieldValueR\x05value:\x02\x38\x01\x42\x07\n\x05_siteB\x08\n\x06_groupB\t\n\x07_tenantB\t\n\x07_statusB\x07\n\x05_roleB\x0e\n\x0c_descriptionB\x0c\n\n_qinq_roleB\r\n\x0b_qinq_svlanB\x0b\n\t_commentsB\x08\n\x06_owner\"\x93\x08\n\tVLANGroup\x12\x12\n\x04name\x18\x01 \x01(\tR\x04name\x12\x12\n\x04slug\x18\x02 \x01(\tR\x04slug\x12\x38\n\rscope_cluster\x18\x03 \x01(\x0b\x32\x11.diode.v1.ClusterH\x00R\x0cscopeCluster\x12H\n\x13scope_cluster_group\x18\x04 \x01(\x0b\x32\x16.diode.v1.ClusterGroupH\x00R\x11scopeClusterGroup\x12;\n\x0escope_location\x18\x05 \x01(\x0b\x32\x12.diode.v1.LocationH\x00R\rscopeLocation\x12/\n\nscope_rack\x18\x06 \x01(\x0b\x32\x0e.diode.v1.RackH\x00R\tscopeRack\x12\x35\n\x0cscope_region\x18\x07 \x01(\x0b\x32\x10.diode.v1.RegionH\x00R\x0bscopeRegion\x12/\n\nscope_site\x18\x08 \x01(\x0b\x32\x0e.diode.v1.SiteH\x00R\tscopeSite\x12?\n\x10scope_site_group\x18\t \x01(\x0b\x32\x13.diode.v1.SiteGroupH\x00R\x0escopeSiteGroup\x12?\n\x10scope_rack_group\x18\x12 \x01(\x0b\x32\x13.diode.v1.RackGroupH\x00R\x0escopeRackGroup\x12\x1d\n\nvid_ranges\x18\n \x03(\x03R\tvidRanges\x12%\n\x0b\x64\x65scription\x18\x0b \x01(\tH\x01R\x0b\x64\x65scription\x88\x01\x01\x12!\n\x04tags\x18\x0c \x03(\x0b\x32\r.diode.v1.TagR\x04tags\x12J\n\rcustom_fields\x18\r \x03(\x0b\x32%.diode.v1.VLANGroup.CustomFieldsEntryR\x0c\x63ustomFields\x12-\n\x06tenant\x18\x0e \x01(\x0b\x32\x10.diode.v1.TenantH\x02R\x06tenant\x88\x01\x01\x12\x39\n\x08metadata\x18\x0f \x01(\x0b\x32\x17.google.protobuf.StructB\x04\x88\xb5\x18\x00R\x08metadata\x12*\n\x05owner\x18\x10 \x01(\x0b\x32\x0f.diode.v1.OwnerH\x03R\x05owner\x88\x01\x01\x12\x1f\n\x08\x63omments\x18\x11 \x01(\tH\x04R\x08\x63omments\x88\x01\x01\x1a[\n\x11\x43ustomFieldsEntry\x12\x10\n\x03key\x18\x01 \x01(\tR\x03key\x12\x30\n\x05value\x18\x02 \x01(\x0b\x32\x1a.diode.v1.CustomFieldValueR\x05value:\x02\x38\x01\x42\x07\n\x05scopeB\x0e\n\x0c_descriptionB\t\n\x07_tenantB\x08\n\x06_ownerB\x0b\n\t_comments\"\x81\x02\n\x15VLANTranslationPolicy\x12\x12\n\x04name\x18\x01 \x01(\tR\x04name\x12%\n\x0b\x64\x65scription\x18\x02 \x01(\tH\x00R\x0b\x64\x65scription\x88\x01\x01\x12\x39\n\x08metadata\x18\x03 \x01(\x0b\x32\x17.google.protobuf.StructB\x04\x88\xb5\x18\x00R\x08metadata\x12*\n\x05owner\x18\x04 \x01(\x0b\x32\x0f.diode.v1.OwnerH\x01R\x05owner\x88\x01\x01\x12\x1f\n\x08\x63omments\x18\x05 \x01(\tH\x02R\x08\x63omments\x88\x01\x01\x42\x0e\n\x0c_descriptionB\x08\n\x06_ownerB\x0b\n\t_comments\"\xfc\x01\n\x13VLANTranslationRule\x12\x37\n\x06policy\x18\x01 \x01(\x0b\x32\x1f.diode.v1.VLANTranslationPolicyR\x06policy\x12\x1b\n\tlocal_vid\x18\x02 \x01(\x03R\x08localVid\x12\x1d\n\nremote_vid\x18\x03 \x01(\x03R\tremoteVid\x12%\n\x0b\x64\x65scription\x18\x04 \x01(\tH\x00R\x0b\x64\x65scription\x88\x01\x01\x12\x39\n\x08metadata\x18\x05 \x01(\x0b\x32\x17.google.protobuf.StructB\x04\x88\xb5\x18\x00R\x08metadataB\x0e\n\x0c_description\"\xbc\t\n\x0bVMInterface\x12\x41\n\x0fvirtual_machine\x18\x01 \x01(\x0b\x32\x18.diode.v1.VirtualMachineR\x0evirtualMachine\x12\x12\n\x04name\x18\x02 \x01(\tR\x04name\x12\x1d\n\x07\x65nabled\x18\x03 \x01(\x08H\x00R\x07\x65nabled\x88\x01\x01\x12\x32\n\x06parent\x18\x04 \x01(\x0b\x32\x15.diode.v1.VMInterfaceH\x01R\x06parent\x88\x01\x01\x12\x32\n\x06\x62ridge\x18\x05 \x01(\x0b\x32\x15.diode.v1.VMInterfaceH\x02R\x06\x62ridge\x88\x01\x01\x12\x15\n\x03mtu\x18\x06 \x01(\x03H\x03R\x03mtu\x88\x01\x01\x12I\n\x13primary_mac_address\x18\x07 \x01(\x0b\x32\x14.diode.v1.MACAddressH\x04R\x11primaryMacAddress\x88\x01\x01\x12%\n\x0b\x64\x65scription\x18\x08 \x01(\tH\x05R\x0b\x64\x65scription\x88\x01\x01\x12\x42\n\x04mode\x18\t \x01(\tB)\xfa\x42&r$R\x06\x61\x63\x63\x65ssR\x06q-in-qR\x06taggedR\ntagged-allH\x06R\x04mode\x88\x01\x01\x12\x38\n\runtagged_vlan\x18\n \x01(\x0b\x32\x0e.diode.v1.VLANH\x07R\x0cuntaggedVlan\x88\x01\x01\x12\x32\n\nqinq_svlan\x18\x0b \x01(\x0b\x32\x0e.diode.v1.VLANH\x08R\tqinqSvlan\x88\x01\x01\x12\\\n\x17vlan_translation_policy\x18\x0c \x01(\x0b\x32\x1f.diode.v1.VLANTranslationPolicyH\tR\x15vlanTranslationPolicy\x88\x01\x01\x12$\n\x03vrf\x18\r \x01(\x0b\x32\r.diode.v1.VRFH\nR\x03vrf\x88\x01\x01\x12!\n\x04tags\x18\x0e \x03(\x0b\x32\r.diode.v1.TagR\x04tags\x12L\n\rcustom_fields\x18\x0f \x03(\x0b\x32\'.diode.v1.VMInterface.CustomFieldsEntryR\x0c\x63ustomFields\x12\x31\n\x0ctagged_vlans\x18\x10 \x03(\x0b\x32\x0e.diode.v1.VLANR\x0btaggedVlans\x12\x39\n\x08metadata\x18\x11 \x01(\x0b\x32\x17.google.protobuf.StructB\x04\x88\xb5\x18\x00R\x08metadata\x12*\n\x05owner\x18\x12 \x01(\x0b\x32\x0f.diode.v1.OwnerH\x0bR\x05owner\x88\x01\x01\x1a[\n\x11\x43ustomFieldsEntry\x12\x10\n\x03key\x18\x01 \x01(\tR\x03key\x12\x30\n\x05value\x18\x02 \x01(\x0b\x32\x1a.diode.v1.CustomFieldValueR\x05value:\x02\x38\x01\x42\n\n\x08_enabledB\t\n\x07_parentB\t\n\x07_bridgeB\x06\n\x04_mtuB\x16\n\x14_primary_mac_addressB\x0e\n\x0c_descriptionB\x07\n\x05_modeB\x10\n\x0e_untagged_vlanB\r\n\x0b_qinq_svlanB\x1a\n\x18_vlan_translation_policyB\x06\n\x04_vrfB\x08\n\x06_owner\"\xc6\x05\n\x03VRF\x12\x12\n\x04name\x18\x01 \x01(\tR\x04name\x12\x13\n\x02rd\x18\x02 \x01(\tH\x00R\x02rd\x88\x01\x01\x12-\n\x06tenant\x18\x03 \x01(\x0b\x32\x10.diode.v1.TenantH\x01R\x06tenant\x88\x01\x01\x12*\n\x0e\x65nforce_unique\x18\x04 \x01(\x08H\x02R\renforceUnique\x88\x01\x01\x12%\n\x0b\x64\x65scription\x18\x05 \x01(\tH\x03R\x0b\x64\x65scription\x88\x01\x01\x12\x1f\n\x08\x63omments\x18\x06 \x01(\tH\x04R\x08\x63omments\x88\x01\x01\x12!\n\x04tags\x18\x07 \x03(\x0b\x32\r.diode.v1.TagR\x04tags\x12\x44\n\rcustom_fields\x18\x08 \x03(\x0b\x32\x1f.diode.v1.VRF.CustomFieldsEntryR\x0c\x63ustomFields\x12<\n\x0eimport_targets\x18\t \x03(\x0b\x32\x15.diode.v1.RouteTargetR\rimportTargets\x12<\n\x0e\x65xport_targets\x18\n \x03(\x0b\x32\x15.diode.v1.RouteTargetR\rexportTargets\x12\x39\n\x08metadata\x18\x0b \x01(\x0b\x32\x17.google.protobuf.StructB\x04\x88\xb5\x18\x00R\x08metadata\x12*\n\x05owner\x18\x0c \x01(\x0b\x32\x0f.diode.v1.OwnerH\x05R\x05owner\x88\x01\x01\x1a[\n\x11\x43ustomFieldsEntry\x12\x10\n\x03key\x18\x01 \x01(\tR\x03key\x12\x30\n\x05value\x18\x02 \x01(\x0b\x32\x1a.diode.v1.CustomFieldValueR\x05value:\x02\x38\x01\x42\x05\n\x03_rdB\t\n\x07_tenantB\x11\n\x0f_enforce_uniqueB\x0e\n\x0c_descriptionB\x0b\n\t_commentsB\x08\n\x06_owner\"\xad\x04\n\x0eVirtualChassis\x12\x12\n\x04name\x18\x01 \x01(\tR\x04name\x12\x1b\n\x06\x64omain\x18\x02 \x01(\tH\x00R\x06\x64omain\x88\x01\x01\x12-\n\x06master\x18\x03 \x01(\x0b\x32\x10.diode.v1.DeviceH\x01R\x06master\x88\x01\x01\x12%\n\x0b\x64\x65scription\x18\x04 \x01(\tH\x02R\x0b\x64\x65scription\x88\x01\x01\x12\x1f\n\x08\x63omments\x18\x05 \x01(\tH\x03R\x08\x63omments\x88\x01\x01\x12!\n\x04tags\x18\x06 \x03(\x0b\x32\r.diode.v1.TagR\x04tags\x12O\n\rcustom_fields\x18\x07 \x03(\x0b\x32*.diode.v1.VirtualChassis.CustomFieldsEntryR\x0c\x63ustomFields\x12\x39\n\x08metadata\x18\x08 \x01(\x0b\x32\x17.google.protobuf.StructB\x04\x88\xb5\x18\x00R\x08metadata\x12*\n\x05owner\x18\t \x01(\x0b\x32\x0f.diode.v1.OwnerH\x04R\x05owner\x88\x01\x01\x1a[\n\x11\x43ustomFieldsEntry\x12\x10\n\x03key\x18\x01 \x01(\tR\x03key\x12\x30\n\x05value\x18\x02 \x01(\x0b\x32\x1a.diode.v1.CustomFieldValueR\x05value:\x02\x38\x01\x42\t\n\x07_domainB\t\n\x07_masterB\x0e\n\x0c_descriptionB\x0b\n\t_commentsB\x08\n\x06_owner\"\xd2\x06\n\x0eVirtualCircuit\x12\x10\n\x03\x63id\x18\x01 \x01(\tR\x03\x63id\x12\x44\n\x10provider_network\x18\x02 \x01(\x0b\x32\x19.diode.v1.ProviderNetworkR\x0fproviderNetwork\x12I\n\x10provider_account\x18\x03 \x01(\x0b\x32\x19.diode.v1.ProviderAccountH\x00R\x0fproviderAccount\x88\x01\x01\x12\x30\n\x04type\x18\x04 \x01(\x0b\x32\x1c.diode.v1.VirtualCircuitTypeR\x04type\x12j\n\x06status\x18\x05 \x01(\tBM\xfa\x42JrHR\x06\x61\x63tiveR\x0e\x64\x65\x63ommissionedR\x0e\x64\x65provisioningR\x07offlineR\x07plannedR\x0cprovisioningH\x01R\x06status\x88\x01\x01\x12-\n\x06tenant\x18\x06 \x01(\x0b\x32\x10.diode.v1.TenantH\x02R\x06tenant\x88\x01\x01\x12%\n\x0b\x64\x65scription\x18\x07 \x01(\tH\x03R\x0b\x64\x65scription\x88\x01\x01\x12\x1f\n\x08\x63omments\x18\x08 \x01(\tH\x04R\x08\x63omments\x88\x01\x01\x12!\n\x04tags\x18\t \x03(\x0b\x32\r.diode.v1.TagR\x04tags\x12O\n\rcustom_fields\x18\n \x03(\x0b\x32*.diode.v1.VirtualCircuit.CustomFieldsEntryR\x0c\x63ustomFields\x12\x39\n\x08metadata\x18\x0b \x01(\x0b\x32\x17.google.protobuf.StructB\x04\x88\xb5\x18\x00R\x08metadata\x12*\n\x05owner\x18\x0c \x01(\x0b\x32\x0f.diode.v1.OwnerH\x05R\x05owner\x88\x01\x01\x1a[\n\x11\x43ustomFieldsEntry\x12\x10\n\x03key\x18\x01 \x01(\tR\x03key\x12\x30\n\x05value\x18\x02 \x01(\x0b\x32\x1a.diode.v1.CustomFieldValueR\x05value:\x02\x38\x01\x42\x13\n\x11_provider_accountB\t\n\x07_statusB\t\n\x07_tenantB\x0e\n\x0c_descriptionB\x0b\n\t_commentsB\x08\n\x06_owner\"\x9a\x04\n\x19VirtualCircuitTermination\x12\x41\n\x0fvirtual_circuit\x18\x01 \x01(\x0b\x32\x18.diode.v1.VirtualCircuitR\x0evirtualCircuit\x12\x30\n\x04role\x18\x02 \x01(\tB\x17\xfa\x42\x14r\x12R\x03hubR\x04peerR\x05spokeH\x00R\x04role\x88\x01\x01\x12\x31\n\tinterface\x18\x03 \x01(\x0b\x32\x13.diode.v1.InterfaceR\tinterface\x12%\n\x0b\x64\x65scription\x18\x04 \x01(\tH\x01R\x0b\x64\x65scription\x88\x01\x01\x12!\n\x04tags\x18\x05 \x03(\x0b\x32\r.diode.v1.TagR\x04tags\x12Z\n\rcustom_fields\x18\x06 \x03(\x0b\x32\x35.diode.v1.VirtualCircuitTermination.CustomFieldsEntryR\x0c\x63ustomFields\x12\x39\n\x08metadata\x18\x07 \x01(\x0b\x32\x17.google.protobuf.StructB\x04\x88\xb5\x18\x00R\x08metadata\x1a[\n\x11\x43ustomFieldsEntry\x12\x10\n\x03key\x18\x01 \x01(\tR\x03key\x12\x30\n\x05value\x18\x02 \x01(\x0b\x32\x1a.diode.v1.CustomFieldValueR\x05value:\x02\x38\x01\x42\x07\n\x05_roleB\x0e\n\x0c_description\"\x8c\x04\n\x12VirtualCircuitType\x12\x12\n\x04name\x18\x01 \x01(\tR\x04name\x12\x12\n\x04slug\x18\x02 \x01(\tR\x04slug\x12\x19\n\x05\x63olor\x18\x03 \x01(\tH\x00R\x05\x63olor\x88\x01\x01\x12%\n\x0b\x64\x65scription\x18\x04 \x01(\tH\x01R\x0b\x64\x65scription\x88\x01\x01\x12!\n\x04tags\x18\x05 \x03(\x0b\x32\r.diode.v1.TagR\x04tags\x12S\n\rcustom_fields\x18\x06 \x03(\x0b\x32..diode.v1.VirtualCircuitType.CustomFieldsEntryR\x0c\x63ustomFields\x12\x39\n\x08metadata\x18\x07 \x01(\x0b\x32\x17.google.protobuf.StructB\x04\x88\xb5\x18\x00R\x08metadata\x12*\n\x05owner\x18\x08 \x01(\x0b\x32\x0f.diode.v1.OwnerH\x02R\x05owner\x88\x01\x01\x12\x1f\n\x08\x63omments\x18\t \x01(\tH\x03R\x08\x63omments\x88\x01\x01\x1a[\n\x11\x43ustomFieldsEntry\x12\x10\n\x03key\x18\x01 \x01(\tR\x03key\x12\x30\n\x05value\x18\x02 \x01(\x0b\x32\x1a.diode.v1.CustomFieldValueR\x05value:\x02\x38\x01\x42\x08\n\x06_colorB\x0e\n\x0c_descriptionB\x08\n\x06_ownerB\x0b\n\t_comments\"\xbe\x06\n\x14VirtualDeviceContext\x12\x12\n\x04name\x18\x01 \x01(\tR\x04name\x12(\n\x06\x64\x65vice\x18\x02 \x01(\x0b\x32\x10.diode.v1.DeviceR\x06\x64\x65vice\x12#\n\nidentifier\x18\x03 \x01(\x03H\x00R\nidentifier\x88\x01\x01\x12-\n\x06tenant\x18\x04 \x01(\x0b\x32\x10.diode.v1.TenantH\x01R\x06tenant\x88\x01\x01\x12\x39\n\x0bprimary_ip4\x18\x05 \x01(\x0b\x32\x13.diode.v1.IPAddressH\x02R\nprimaryIp4\x88\x01\x01\x12\x39\n\x0bprimary_ip6\x18\x06 \x01(\x0b\x32\x13.diode.v1.IPAddressH\x03R\nprimaryIp6\x88\x01\x01\x12\x37\n\x06status\x18\x07 \x01(\tB\x1f\xfa\x42\x1cr\x1aR\x06\x61\x63tiveR\x07offlineR\x07plannedR\x06status\x12%\n\x0b\x64\x65scription\x18\x08 \x01(\tH\x04R\x0b\x64\x65scription\x88\x01\x01\x12\x1f\n\x08\x63omments\x18\t \x01(\tH\x05R\x08\x63omments\x88\x01\x01\x12!\n\x04tags\x18\n \x03(\x0b\x32\r.diode.v1.TagR\x04tags\x12U\n\rcustom_fields\x18\x0b \x03(\x0b\x32\x30.diode.v1.VirtualDeviceContext.CustomFieldsEntryR\x0c\x63ustomFields\x12\x39\n\x08metadata\x18\x0c \x01(\x0b\x32\x17.google.protobuf.StructB\x04\x88\xb5\x18\x00R\x08metadata\x12*\n\x05owner\x18\r \x01(\x0b\x32\x0f.diode.v1.OwnerH\x06R\x05owner\x88\x01\x01\x1a[\n\x11\x43ustomFieldsEntry\x12\x10\n\x03key\x18\x01 \x01(\tR\x03key\x12\x30\n\x05value\x18\x02 \x01(\x0b\x32\x1a.diode.v1.CustomFieldValueR\x05value:\x02\x38\x01\x42\r\n\x0b_identifierB\t\n\x07_tenantB\x0e\n\x0c_primary_ip4B\x0e\n\x0c_primary_ip6B\x0e\n\x0c_descriptionB\x0b\n\t_commentsB\x08\n\x06_owner\"\xee\x03\n\x0bVirtualDisk\x12\x41\n\x0fvirtual_machine\x18\x01 \x01(\x0b\x32\x18.diode.v1.VirtualMachineR\x0evirtualMachine\x12\x12\n\x04name\x18\x02 \x01(\tR\x04name\x12%\n\x0b\x64\x65scription\x18\x03 \x01(\tH\x00R\x0b\x64\x65scription\x88\x01\x01\x12\x12\n\x04size\x18\x04 \x01(\x03R\x04size\x12!\n\x04tags\x18\x05 \x03(\x0b\x32\r.diode.v1.TagR\x04tags\x12L\n\rcustom_fields\x18\x06 \x03(\x0b\x32\'.diode.v1.VirtualDisk.CustomFieldsEntryR\x0c\x63ustomFields\x12\x39\n\x08metadata\x18\x07 \x01(\x0b\x32\x17.google.protobuf.StructB\x04\x88\xb5\x18\x00R\x08metadata\x12*\n\x05owner\x18\x08 \x01(\x0b\x32\x0f.diode.v1.OwnerH\x01R\x05owner\x88\x01\x01\x1a[\n\x11\x43ustomFieldsEntry\x12\x10\n\x03key\x18\x01 \x01(\tR\x03key\x12\x30\n\x05value\x18\x02 \x01(\x0b\x32\x1a.diode.v1.CustomFieldValueR\x05value:\x02\x38\x01\x42\x0e\n\x0c_descriptionB\x08\n\x06_owner\"\x8c\x0b\n\x0eVirtualMachine\x12\x12\n\x04name\x18\x01 \x01(\tR\x04name\x12\x65\n\x06status\x18\x02 \x01(\tBH\xfa\x42\x45rCR\x06\x61\x63tiveR\x0f\x64\x65\x63ommissioningR\x06\x66\x61iledR\x07offlineR\x06pausedR\x07plannedR\x06stagedH\x00R\x06status\x88\x01\x01\x12\'\n\x04site\x18\x03 \x01(\x0b\x32\x0e.diode.v1.SiteH\x01R\x04site\x88\x01\x01\x12\x30\n\x07\x63luster\x18\x04 \x01(\x0b\x32\x11.diode.v1.ClusterH\x02R\x07\x63luster\x88\x01\x01\x12-\n\x06\x64\x65vice\x18\x05 \x01(\x0b\x32\x10.diode.v1.DeviceH\x03R\x06\x64\x65vice\x88\x01\x01\x12\x1b\n\x06serial\x18\x06 \x01(\tH\x04R\x06serial\x88\x01\x01\x12-\n\x04role\x18\x07 \x01(\x0b\x32\x14.diode.v1.DeviceRoleH\x05R\x04role\x88\x01\x01\x12-\n\x06tenant\x18\x08 \x01(\x0b\x32\x10.diode.v1.TenantH\x06R\x06tenant\x88\x01\x01\x12\x33\n\x08platform\x18\t \x01(\x0b\x32\x12.diode.v1.PlatformH\x07R\x08platform\x88\x01\x01\x12\x39\n\x0bprimary_ip4\x18\n \x01(\x0b\x32\x13.diode.v1.IPAddressH\x08R\nprimaryIp4\x88\x01\x01\x12\x39\n\x0bprimary_ip6\x18\x0b \x01(\x0b\x32\x13.diode.v1.IPAddressH\tR\nprimaryIp6\x88\x01\x01\x12\x19\n\x05vcpus\x18\x0c \x01(\x01H\nR\x05vcpus\x88\x01\x01\x12\x1b\n\x06memory\x18\r \x01(\x03H\x0bR\x06memory\x88\x01\x01\x12\x17\n\x04\x64isk\x18\x0e \x01(\x03H\x0cR\x04\x64isk\x88\x01\x01\x12%\n\x0b\x64\x65scription\x18\x0f \x01(\tH\rR\x0b\x64\x65scription\x88\x01\x01\x12\x1f\n\x08\x63omments\x18\x10 \x01(\tH\x0eR\x08\x63omments\x88\x01\x01\x12!\n\x04tags\x18\x11 \x03(\x0b\x32\r.diode.v1.TagR\x04tags\x12O\n\rcustom_fields\x18\x12 \x03(\x0b\x32*.diode.v1.VirtualMachine.CustomFieldsEntryR\x0c\x63ustomFields\x12\x39\n\x08metadata\x18\x13 \x01(\x0b\x32\x17.google.protobuf.StructB\x04\x88\xb5\x18\x00R\x08metadata\x12\x42\n\rstart_on_boot\x18\x14 \x01(\tB\x19\xfa\x42\x16r\x14R\tlaststateR\x03offR\x02onH\x0fR\x0bstartOnBoot\x88\x01\x01\x12*\n\x05owner\x18\x15 \x01(\x0b\x32\x0f.diode.v1.OwnerH\x10R\x05owner\x88\x01\x01\x12S\n\x14virtual_machine_type\x18\x16 \x01(\x0b\x32\x1c.diode.v1.VirtualMachineTypeH\x11R\x12virtualMachineType\x88\x01\x01\x1a[\n\x11\x43ustomFieldsEntry\x12\x10\n\x03key\x18\x01 \x01(\tR\x03key\x12\x30\n\x05value\x18\x02 \x01(\x0b\x32\x1a.diode.v1.CustomFieldValueR\x05value:\x02\x38\x01\x42\t\n\x07_statusB\x07\n\x05_siteB\n\n\x08_clusterB\t\n\x07_deviceB\t\n\x07_serialB\x07\n\x05_roleB\t\n\x07_tenantB\x0b\n\t_platformB\x0e\n\x0c_primary_ip4B\x0e\n\x0c_primary_ip6B\x08\n\x06_vcpusB\t\n\x07_memoryB\x07\n\x05_diskB\x0e\n\x0c_descriptionB\x0b\n\t_commentsB\x10\n\x0e_start_on_bootB\x08\n\x06_ownerB\x17\n\x15_virtual_machine_type\"\x93\t\n\x0bWirelessLAN\x12\x12\n\x04ssid\x18\x01 \x01(\tR\x04ssid\x12%\n\x0b\x64\x65scription\x18\x02 \x01(\tH\x01R\x0b\x64\x65scription\x88\x01\x01\x12\x35\n\x05group\x18\x03 \x01(\x0b\x32\x1a.diode.v1.WirelessLANGroupH\x02R\x05group\x88\x01\x01\x12J\n\x06status\x18\x04 \x01(\tB-\xfa\x42*r(R\x06\x61\x63tiveR\ndeprecatedR\x08\x64isabledR\x08reservedH\x03R\x06status\x88\x01\x01\x12\'\n\x04vlan\x18\x05 \x01(\x0b\x32\x0e.diode.v1.VLANH\x04R\x04vlan\x88\x01\x01\x12;\n\x0escope_location\x18\x06 \x01(\x0b\x32\x12.diode.v1.LocationH\x00R\rscopeLocation\x12\x35\n\x0cscope_region\x18\x07 \x01(\x0b\x32\x10.diode.v1.RegionH\x00R\x0bscopeRegion\x12/\n\nscope_site\x18\x08 \x01(\x0b\x32\x0e.diode.v1.SiteH\x00R\tscopeSite\x12?\n\x10scope_site_group\x18\t \x01(\x0b\x32\x13.diode.v1.SiteGroupH\x00R\x0escopeSiteGroup\x12-\n\x06tenant\x18\n \x01(\x0b\x32\x10.diode.v1.TenantH\x05R\x06tenant\x88\x01\x01\x12P\n\tauth_type\x18\x0b \x01(\tB.\xfa\x42+r)R\x04openR\x03wepR\x0ewpa-enterpriseR\x0cwpa-personalH\x06R\x08\x61uthType\x88\x01\x01\x12<\n\x0b\x61uth_cipher\x18\x0c \x01(\tB\x16\xfa\x42\x13r\x11R\x03\x61\x65sR\x04\x61utoR\x04tkipH\x07R\nauthCipher\x88\x01\x01\x12\x1e\n\x08\x61uth_psk\x18\r \x01(\tH\x08R\x07\x61uthPsk\x88\x01\x01\x12\x1f\n\x08\x63omments\x18\x0e \x01(\tH\tR\x08\x63omments\x88\x01\x01\x12!\n\x04tags\x18\x0f \x03(\x0b\x32\r.diode.v1.TagR\x04tags\x12L\n\rcustom_fields\x18\x10 \x03(\x0b\x32\'.diode.v1.WirelessLAN.CustomFieldsEntryR\x0c\x63ustomFields\x12\x39\n\x08metadata\x18\x11 \x01(\x0b\x32\x17.google.protobuf.StructB\x04\x88\xb5\x18\x00R\x08metadata\x12*\n\x05owner\x18\x12 \x01(\x0b\x32\x0f.diode.v1.OwnerH\nR\x05owner\x88\x01\x01\x1a[\n\x11\x43ustomFieldsEntry\x12\x10\n\x03key\x18\x01 \x01(\tR\x03key\x12\x30\n\x05value\x18\x02 \x01(\x0b\x32\x1a.diode.v1.CustomFieldValueR\x05value:\x02\x38\x01\x42\x07\n\x05scopeB\x0e\n\x0c_descriptionB\x08\n\x06_groupB\t\n\x07_statusB\x07\n\x05_vlanB\t\n\x07_tenantB\x0c\n\n_auth_typeB\x0e\n\x0c_auth_cipherB\x0b\n\t_auth_pskB\x0b\n\t_commentsB\x08\n\x06_owner\"\xa7\x04\n\x10WirelessLANGroup\x12\x12\n\x04name\x18\x01 \x01(\tR\x04name\x12\x12\n\x04slug\x18\x02 \x01(\tR\x04slug\x12\x37\n\x06parent\x18\x03 \x01(\x0b\x32\x1a.diode.v1.WirelessLANGroupH\x00R\x06parent\x88\x01\x01\x12%\n\x0b\x64\x65scription\x18\x04 \x01(\tH\x01R\x0b\x64\x65scription\x88\x01\x01\x12!\n\x04tags\x18\x05 \x03(\x0b\x32\r.diode.v1.TagR\x04tags\x12Q\n\rcustom_fields\x18\x06 \x03(\x0b\x32,.diode.v1.WirelessLANGroup.CustomFieldsEntryR\x0c\x63ustomFields\x12\x1f\n\x08\x63omments\x18\x07 \x01(\tH\x02R\x08\x63omments\x88\x01\x01\x12\x39\n\x08metadata\x18\x08 \x01(\x0b\x32\x17.google.protobuf.StructB\x04\x88\xb5\x18\x00R\x08metadata\x12*\n\x05owner\x18\t \x01(\x0b\x32\x0f.diode.v1.OwnerH\x03R\x05owner\x88\x01\x01\x1a[\n\x11\x43ustomFieldsEntry\x12\x10\n\x03key\x18\x01 \x01(\tR\x03key\x12\x30\n\x05value\x18\x02 \x01(\x0b\x32\x1a.diode.v1.CustomFieldValueR\x05value:\x02\x38\x01\x42\t\n\x07_parentB\x0e\n\x0c_descriptionB\x0b\n\t_commentsB\x08\n\x06_owner\"\xaa\x08\n\x0cWirelessLink\x12\x34\n\x0binterface_a\x18\x01 \x01(\x0b\x32\x13.diode.v1.InterfaceR\ninterfaceA\x12\x34\n\x0binterface_b\x18\x02 \x01(\x0b\x32\x13.diode.v1.InterfaceR\ninterfaceB\x12\x17\n\x04ssid\x18\x03 \x01(\tH\x00R\x04ssid\x88\x01\x01\x12G\n\x06status\x18\x04 \x01(\tB*\xfa\x42\'r%R\tconnectedR\x0f\x64\x65\x63ommissioningR\x07plannedH\x01R\x06status\x88\x01\x01\x12-\n\x06tenant\x18\x05 \x01(\x0b\x32\x10.diode.v1.TenantH\x02R\x06tenant\x88\x01\x01\x12P\n\tauth_type\x18\x06 \x01(\tB.\xfa\x42+r)R\x04openR\x03wepR\x0ewpa-enterpriseR\x0cwpa-personalH\x03R\x08\x61uthType\x88\x01\x01\x12<\n\x0b\x61uth_cipher\x18\x07 \x01(\tB\x16\xfa\x42\x13r\x11R\x03\x61\x65sR\x04\x61utoR\x04tkipH\x04R\nauthCipher\x88\x01\x01\x12\x1e\n\x08\x61uth_psk\x18\x08 \x01(\tH\x05R\x07\x61uthPsk\x88\x01\x01\x12\x1f\n\x08\x64istance\x18\t \x01(\x01H\x06R\x08\x64istance\x88\x01\x01\x12>\n\rdistance_unit\x18\n \x01(\tB\x14\xfa\x42\x11r\x0fR\x02\x66tR\x02kmR\x01mR\x02miH\x07R\x0c\x64istanceUnit\x88\x01\x01\x12%\n\x0b\x64\x65scription\x18\x0b \x01(\tH\x08R\x0b\x64\x65scription\x88\x01\x01\x12\x1f\n\x08\x63omments\x18\x0c \x01(\tH\tR\x08\x63omments\x88\x01\x01\x12!\n\x04tags\x18\r \x03(\x0b\x32\r.diode.v1.TagR\x04tags\x12M\n\rcustom_fields\x18\x0e \x03(\x0b\x32(.diode.v1.WirelessLink.CustomFieldsEntryR\x0c\x63ustomFields\x12\x39\n\x08metadata\x18\x0f \x01(\x0b\x32\x17.google.protobuf.StructB\x04\x88\xb5\x18\x00R\x08metadata\x12*\n\x05owner\x18\x10 \x01(\x0b\x32\x0f.diode.v1.OwnerH\nR\x05owner\x88\x01\x01\x1a[\n\x11\x43ustomFieldsEntry\x12\x10\n\x03key\x18\x01 \x01(\tR\x03key\x12\x30\n\x05value\x18\x02 \x01(\x0b\x32\x1a.diode.v1.CustomFieldValueR\x05value:\x02\x38\x01\x42\x07\n\x05_ssidB\t\n\x07_statusB\t\n\x07_tenantB\x0c\n\n_auth_typeB\x0e\n\x0c_auth_cipherB\x0b\n\t_auth_pskB\x0b\n\t_distanceB\x10\n\x0e_distance_unitB\x0e\n\x0c_descriptionB\x0b\n\t_commentsB\x08\n\x06_owner\"\xe8(\n\x0b\x43ustomField\x12\x89\x01\n\x04type\x18\x01 \x01(\tBu\xfa\x42rrpR\x07\x62ooleanR\x04\x64\x61teR\x08\x64\x61tetimeR\x07\x64\x65\x63imalR\x07integerR\x04jsonR\x08longtextR\x0bmultiobjectR\x0bmultiselectR\x06objectR\x06selectR\x04textR\x03urlR\x04type\x12\xa9\x0f\n\x13related_object_type\x18\x02 \x01(\tB\xf3\x0e\xfa\x42\xef\x0er\xec\x0eR\x10\x63ircuits.circuitR\x15\x63ircuits.circuitgroupR\x1f\x63ircuits.circuitgroupassignmentR\x1b\x63ircuits.circuitterminationR\x14\x63ircuits.circuittypeR\x11\x63ircuits.providerR\x18\x63ircuits.provideraccountR\x18\x63ircuits.providernetworkR\x17\x63ircuits.virtualcircuitR\"circuits.virtualcircuitterminationR\x1b\x63ircuits.virtualcircuittypeR\x10\x63ore.managedfileR\ndcim.cableR\x10\x64\x63im.cablebundleR\x0e\x64\x63im.cablepathR\x10\x64\x63im.consoleportR\x16\x64\x63im.consoleserverportR\x0b\x64\x63im.deviceR\x0e\x64\x63im.devicebayR\x0f\x64\x63im.deviceroleR\x0f\x64\x63im.devicetypeR\x0e\x64\x63im.frontportR\x0e\x64\x63im.interfaceR\x12\x64\x63im.inventoryitemR\x16\x64\x63im.inventoryitemroleR\rdcim.locationR\x0f\x64\x63im.macaddressR\x11\x64\x63im.manufacturerR\x0b\x64\x63im.moduleR\x0e\x64\x63im.modulebayR\x0f\x64\x63im.moduletypeR\x16\x64\x63im.moduletypeprofileR\rdcim.platformR\x0e\x64\x63im.powerfeedR\x10\x64\x63im.poweroutletR\x0f\x64\x63im.powerpanelR\x0e\x64\x63im.powerportR\tdcim.rackR\x0e\x64\x63im.rackgroupR\x14\x64\x63im.rackreservationR\rdcim.rackroleR\rdcim.racktypeR\rdcim.rearportR\x0b\x64\x63im.regionR\tdcim.siteR\x0e\x64\x63im.sitegroupR\x13\x64\x63im.virtualchassisR\x19\x64\x63im.virtualdevicecontextR\x12\x65xtras.customfieldR\x1b\x65xtras.customfieldchoicesetR\x11\x65xtras.customlinkR\x13\x65xtras.journalentryR\nextras.tagR\x0eipam.aggregateR\x08ipam.asnR\ripam.asnrangeR\x0eipam.fhrpgroupR\x18ipam.fhrpgroupassignmentR\x0eipam.ipaddressR\x0cipam.iprangeR\x0bipam.prefixR\x08ipam.rirR\tipam.roleR\x10ipam.routetargetR\x0cipam.serviceR\tipam.vlanR\x0eipam.vlangroupR\x1aipam.vlantranslationpolicyR\x18ipam.vlantranslationruleR\x08ipam.vrfR\x0ftenancy.contactR\x19tenancy.contactassignmentR\x14tenancy.contactgroupR\x13tenancy.contactroleR\x0etenancy.tenantR\x13tenancy.tenantgroupR\x0busers.ownerR\x10users.ownergroupR\nusers.userR\x16virtualization.clusterR\x1bvirtualization.clustergroupR\x1avirtualization.clustertypeR\x1avirtualization.virtualdiskR\x1dvirtualization.virtualmachineR!virtualization.virtualmachinetypeR\x1avirtualization.vminterfaceR\rvpn.ikepolicyR\x0fvpn.ikeproposalR\x0fvpn.ipsecpolicyR\x10vpn.ipsecprofileR\x11vpn.ipsecproposalR\tvpn.l2vpnR\x14vpn.l2vpnterminationR\nvpn.tunnelR\x0fvpn.tunnelgroupR\x15vpn.tunnelterminationR\x14wireless.wirelesslanR\x19wireless.wirelesslangroupR\x15wireless.wirelesslinkH\x00R\x11relatedObjectType\x88\x01\x01\x12\x12\n\x04name\x18\x03 \x01(\tR\x04name\x12\x19\n\x05label\x18\x04 \x01(\tH\x01R\x05label\x88\x01\x01\x12\"\n\ngroup_name\x18\x05 \x01(\tH\x02R\tgroupName\x88\x01\x01\x12%\n\x0b\x64\x65scription\x18\x06 \x01(\tH\x03R\x0b\x64\x65scription\x88\x01\x01\x12\x1f\n\x08required\x18\x07 \x01(\x08H\x04R\x08required\x88\x01\x01\x12\x1b\n\x06unique\x18\x08 \x01(\x08H\x05R\x06unique\x88\x01\x01\x12(\n\rsearch_weight\x18\t \x01(\x03H\x06R\x0csearchWeight\x88\x01\x01\x12\x45\n\x0c\x66ilter_logic\x18\n \x01(\tB\x1d\xfa\x42\x1ar\x18R\x08\x64isabledR\x05\x65xactR\x05looseH\x07R\x0b\x66ilterLogic\x88\x01\x01\x12\x41\n\nui_visible\x18\x0b \x01(\tB\x1d\xfa\x42\x1ar\x18R\x06\x61lwaysR\x06hiddenR\x06if-setH\x08R\tuiVisible\x88\x01\x01\x12<\n\x0bui_editable\x18\x0c \x01(\tB\x16\xfa\x42\x13r\x11R\x06hiddenR\x02noR\x03yesH\tR\nuiEditable\x88\x01\x01\x12&\n\x0cis_cloneable\x18\r \x01(\x08H\nR\x0bisCloneable\x88\x01\x01\x12\x1d\n\x07\x64\x65\x66\x61ult\x18\x0e \x01(\tH\x0bR\x07\x64\x65\x66\x61ult\x88\x01\x01\x12\x37\n\x15related_object_filter\x18\x0f \x01(\tH\x0cR\x13relatedObjectFilter\x88\x01\x01\x12\x1b\n\x06weight\x18\x10 \x01(\x03H\rR\x06weight\x88\x01\x01\x12\x32\n\x12validation_minimum\x18\x11 \x01(\x01H\x0eR\x11validationMinimum\x88\x01\x01\x12\x32\n\x12validation_maximum\x18\x12 \x01(\x01H\x0fR\x11validationMaximum\x88\x01\x01\x12.\n\x10validation_regex\x18\x13 \x01(\tH\x10R\x0fvalidationRegex\x88\x01\x01\x12\x42\n\nchoice_set\x18\x14 \x01(\x0b\x32\x1e.diode.v1.CustomFieldChoiceSetH\x11R\tchoiceSet\x88\x01\x01\x12\x1f\n\x08\x63omments\x18\x15 \x01(\tH\x12R\x08\x63omments\x88\x01\x01\x12\xe7\r\n\x0cobject_types\x18\x16 \x03(\tB\xc3\r\xfa\x42\xbf\r\x92\x01\xbb\r\"\xb8\rr\xb5\rR\x10\x63ircuits.circuitR\x15\x63ircuits.circuitgroupR\x1f\x63ircuits.circuitgroupassignmentR\x1b\x63ircuits.circuitterminationR\x14\x63ircuits.circuittypeR\x11\x63ircuits.providerR\x18\x63ircuits.provideraccountR\x18\x63ircuits.providernetworkR\x17\x63ircuits.virtualcircuitR\"circuits.virtualcircuitterminationR\x1b\x63ircuits.virtualcircuittypeR\ndcim.cableR\x10\x64\x63im.cablebundleR\x10\x64\x63im.consoleportR\x16\x64\x63im.consoleserverportR\x0b\x64\x63im.deviceR\x0e\x64\x63im.devicebayR\x0f\x64\x63im.deviceroleR\x0f\x64\x63im.devicetypeR\x0e\x64\x63im.frontportR\x0e\x64\x63im.interfaceR\x12\x64\x63im.inventoryitemR\x16\x64\x63im.inventoryitemroleR\rdcim.locationR\x0f\x64\x63im.macaddressR\x11\x64\x63im.manufacturerR\x0b\x64\x63im.moduleR\x0e\x64\x63im.modulebayR\x0f\x64\x63im.moduletypeR\x16\x64\x63im.moduletypeprofileR\rdcim.platformR\x0e\x64\x63im.powerfeedR\x10\x64\x63im.poweroutletR\x0f\x64\x63im.powerpanelR\x0e\x64\x63im.powerportR\tdcim.rackR\x0e\x64\x63im.rackgroupR\x14\x64\x63im.rackreservationR\rdcim.rackroleR\rdcim.racktypeR\rdcim.rearportR\x0b\x64\x63im.regionR\tdcim.siteR\x0e\x64\x63im.sitegroupR\x13\x64\x63im.virtualchassisR\x19\x64\x63im.virtualdevicecontextR\x13\x65xtras.journalentryR\x0eipam.aggregateR\x08ipam.asnR\ripam.asnrangeR\x0eipam.fhrpgroupR\x0eipam.ipaddressR\x0cipam.iprangeR\x0bipam.prefixR\x08ipam.rirR\tipam.roleR\x10ipam.routetargetR\x0cipam.serviceR\tipam.vlanR\x0eipam.vlangroupR\x1aipam.vlantranslationpolicyR\x18ipam.vlantranslationruleR\x08ipam.vrfR\x0ftenancy.contactR\x19tenancy.contactassignmentR\x14tenancy.contactgroupR\x13tenancy.contactroleR\x0etenancy.tenantR\x13tenancy.tenantgroupR\x16virtualization.clusterR\x1bvirtualization.clustergroupR\x1avirtualization.clustertypeR\x1avirtualization.virtualdiskR\x1dvirtualization.virtualmachineR!virtualization.virtualmachinetypeR\x1avirtualization.vminterfaceR\rvpn.ikepolicyR\x0fvpn.ikeproposalR\x0fvpn.ipsecpolicyR\x10vpn.ipsecprofileR\x11vpn.ipsecproposalR\tvpn.l2vpnR\x14vpn.l2vpnterminationR\nvpn.tunnelR\x0fvpn.tunnelgroupR\x15vpn.tunnelterminationR\x14wireless.wirelesslanR\x19wireless.wirelesslangroupR\x15wireless.wirelesslinkR\x0bobjectTypes\x12\x39\n\x08metadata\x18\x17 \x01(\x0b\x32\x17.google.protobuf.StructB\x04\x88\xb5\x18\x00R\x08metadata\x12*\n\x05owner\x18\x18 \x01(\x0b\x32\x0f.diode.v1.OwnerH\x13R\x05owner\x88\x01\x01\x12\x30\n\x11validation_schema\x18\x19 \x01(\tH\x14R\x10validationSchema\x88\x01\x01\x42\x16\n\x14_related_object_typeB\x08\n\x06_labelB\r\n\x0b_group_nameB\x0e\n\x0c_descriptionB\x0b\n\t_requiredB\t\n\x07_uniqueB\x10\n\x0e_search_weightB\x0f\n\r_filter_logicB\r\n\x0b_ui_visibleB\x0e\n\x0c_ui_editableB\x0f\n\r_is_cloneableB\n\n\x08_defaultB\x18\n\x16_related_object_filterB\t\n\x07_weightB\x15\n\x13_validation_minimumB\x15\n\x13_validation_maximumB\x13\n\x11_validation_regexB\r\n\x0b_choice_setB\x0b\n\t_commentsB\x08\n\x06_ownerB\x14\n\x12_validation_schema\"\xdf\x03\n\x14\x43ustomFieldChoiceSet\x12\x12\n\x04name\x18\x01 \x01(\tR\x04name\x12%\n\x0b\x64\x65scription\x18\x02 \x01(\tH\x00R\x0b\x64\x65scription\x88\x01\x01\x12H\n\x0c\x62\x61se_choices\x18\x03 \x01(\tB \xfa\x42\x1dr\x1bR\x04IATAR\x08ISO_3166R\tUN_LOCODEH\x01R\x0b\x62\x61seChoices\x88\x01\x01\x12\x36\n\x14order_alphabetically\x18\x04 \x01(\x08H\x02R\x13orderAlphabetically\x88\x01\x01\x12#\n\rextra_choices\x18\x05 \x03(\tR\x0c\x65xtraChoices\x12\x39\n\x08metadata\x18\x06 \x01(\x0b\x32\x17.google.protobuf.StructB\x04\x88\xb5\x18\x00R\x08metadata\x12*\n\x05owner\x18\x07 \x01(\x0b\x32\x0f.diode.v1.OwnerH\x03R\x05owner\x88\x01\x01\x12(\n\rchoice_colors\x18\x08 \x01(\tH\x04R\x0c\x63hoiceColors\x88\x01\x01\x42\x0e\n\x0c_descriptionB\x0f\n\r_base_choicesB\x17\n\x15_order_alphabeticallyB\x08\n\x06_ownerB\x10\n\x0e_choice_colors\"\xb0I\n\x0cJournalEntry\x12?\n\x13\x61ssigned_object_asn\x18\x01 \x01(\x0b\x32\r.diode.v1.ASNH\x00R\x11\x61ssignedObjectAsn\x12O\n\x19\x61ssigned_object_asn_range\x18\x02 \x01(\x0b\x32\x12.diode.v1.ASNRangeH\x00R\x16\x61ssignedObjectAsnRange\x12Q\n\x19\x61ssigned_object_aggregate\x18\x03 \x01(\x0b\x32\x13.diode.v1.AggregateH\x00R\x17\x61ssignedObjectAggregate\x12\x45\n\x15\x61ssigned_object_cable\x18\x04 \x01(\x0b\x32\x0f.diode.v1.CableH\x00R\x13\x61ssignedObjectCable\x12R\n\x1a\x61ssigned_object_cable_path\x18\x05 \x01(\x0b\x32\x13.diode.v1.CablePathH\x00R\x17\x61ssignedObjectCablePath\x12k\n!assigned_object_cable_termination\x18\x06 \x01(\x0b\x32\x1a.diode.v1.CableTerminationB\x02\x18\x01H\x00R\x1e\x61ssignedObjectCableTermination\x12K\n\x17\x61ssigned_object_circuit\x18\x07 \x01(\x0b\x32\x11.diode.v1.CircuitH\x00R\x15\x61ssignedObjectCircuit\x12[\n\x1d\x61ssigned_object_circuit_group\x18\x08 \x01(\x0b\x32\x16.diode.v1.CircuitGroupH\x00R\x1a\x61ssignedObjectCircuitGroup\x12z\n(assigned_object_circuit_group_assignment\x18\t \x01(\x0b\x32 .diode.v1.CircuitGroupAssignmentH\x00R$assignedObjectCircuitGroupAssignment\x12m\n#assigned_object_circuit_termination\x18\n \x01(\x0b\x32\x1c.diode.v1.CircuitTerminationH\x00R assignedObjectCircuitTermination\x12X\n\x1c\x61ssigned_object_circuit_type\x18\x0b \x01(\x0b\x32\x15.diode.v1.CircuitTypeH\x00R\x19\x61ssignedObjectCircuitType\x12K\n\x17\x61ssigned_object_cluster\x18\x0c \x01(\x0b\x32\x11.diode.v1.ClusterH\x00R\x15\x61ssignedObjectCluster\x12[\n\x1d\x61ssigned_object_cluster_group\x18\r \x01(\x0b\x32\x16.diode.v1.ClusterGroupH\x00R\x1a\x61ssignedObjectClusterGroup\x12X\n\x1c\x61ssigned_object_cluster_type\x18\x0e \x01(\x0b\x32\x15.diode.v1.ClusterTypeH\x00R\x19\x61ssignedObjectClusterType\x12X\n\x1c\x61ssigned_object_console_port\x18\x0f \x01(\x0b\x32\x15.diode.v1.ConsolePortH\x00R\x19\x61ssignedObjectConsolePort\x12k\n#assigned_object_console_server_port\x18\x10 \x01(\x0b\x32\x1b.diode.v1.ConsoleServerPortH\x00R\x1f\x61ssignedObjectConsoleServerPort\x12K\n\x17\x61ssigned_object_contact\x18\x11 \x01(\x0b\x32\x11.diode.v1.ContactH\x00R\x15\x61ssignedObjectContact\x12j\n\"assigned_object_contact_assignment\x18\x12 \x01(\x0b\x32\x1b.diode.v1.ContactAssignmentH\x00R\x1f\x61ssignedObjectContactAssignment\x12[\n\x1d\x61ssigned_object_contact_group\x18\x13 \x01(\x0b\x32\x16.diode.v1.ContactGroupH\x00R\x1a\x61ssignedObjectContactGroup\x12X\n\x1c\x61ssigned_object_contact_role\x18\x14 \x01(\x0b\x32\x15.diode.v1.ContactRoleH\x00R\x19\x61ssignedObjectContactRole\x12X\n\x1c\x61ssigned_object_custom_field\x18\x15 \x01(\x0b\x32\x15.diode.v1.CustomFieldH\x00R\x19\x61ssignedObjectCustomField\x12u\n\'assigned_object_custom_field_choice_set\x18\x16 \x01(\x0b\x32\x1e.diode.v1.CustomFieldChoiceSetH\x00R\"assignedObjectCustomFieldChoiceSet\x12H\n\x16\x61ssigned_object_device\x18\x17 \x01(\x0b\x32\x10.diode.v1.DeviceH\x00R\x14\x61ssignedObjectDevice\x12R\n\x1a\x61ssigned_object_device_bay\x18\x18 \x01(\x0b\x32\x13.diode.v1.DeviceBayH\x00R\x17\x61ssignedObjectDeviceBay\x12U\n\x1b\x61ssigned_object_device_role\x18\x19 \x01(\x0b\x32\x14.diode.v1.DeviceRoleH\x00R\x18\x61ssignedObjectDeviceRole\x12U\n\x1b\x61ssigned_object_device_type\x18\x1a \x01(\x0b\x32\x14.diode.v1.DeviceTypeH\x00R\x18\x61ssignedObjectDeviceType\x12R\n\x1a\x61ssigned_object_fhrp_group\x18\x1b \x01(\x0b\x32\x13.diode.v1.FHRPGroupH\x00R\x17\x61ssignedObjectFhrpGroup\x12q\n%assigned_object_fhrp_group_assignment\x18\x1c \x01(\x0b\x32\x1d.diode.v1.FHRPGroupAssignmentH\x00R!assignedObjectFhrpGroupAssignment\x12R\n\x1a\x61ssigned_object_front_port\x18\x1d \x01(\x0b\x32\x13.diode.v1.FrontPortH\x00R\x17\x61ssignedObjectFrontPort\x12R\n\x1a\x61ssigned_object_ike_policy\x18\x1e \x01(\x0b\x32\x13.diode.v1.IKEPolicyH\x00R\x17\x61ssignedObjectIkePolicy\x12X\n\x1c\x61ssigned_object_ike_proposal\x18\x1f \x01(\x0b\x32\x15.diode.v1.IKEProposalH\x00R\x19\x61ssignedObjectIkeProposal\x12R\n\x1a\x61ssigned_object_ip_address\x18 \x01(\x0b\x32\x13.diode.v1.IPAddressH\x00R\x17\x61ssignedObjectIpAddress\x12L\n\x18\x61ssigned_object_ip_range\x18! \x01(\x0b\x32\x11.diode.v1.IPRangeH\x00R\x15\x61ssignedObjectIpRange\x12Y\n\x1d\x61ssigned_object_ip_sec_policy\x18\" \x01(\x0b\x32\x15.diode.v1.IPSecPolicyH\x00R\x19\x61ssignedObjectIpSecPolicy\x12\\\n\x1e\x61ssigned_object_ip_sec_profile\x18# \x01(\x0b\x32\x16.diode.v1.IPSecProfileH\x00R\x1a\x61ssignedObjectIpSecProfile\x12_\n\x1f\x61ssigned_object_ip_sec_proposal\x18$ \x01(\x0b\x32\x17.diode.v1.IPSecProposalH\x00R\x1b\x61ssignedObjectIpSecProposal\x12Q\n\x19\x61ssigned_object_interface\x18% \x01(\x0b\x32\x13.diode.v1.InterfaceH\x00R\x17\x61ssignedObjectInterface\x12^\n\x1e\x61ssigned_object_inventory_item\x18& \x01(\x0b\x32\x17.diode.v1.InventoryItemH\x00R\x1b\x61ssignedObjectInventoryItem\x12k\n#assigned_object_inventory_item_role\x18\' \x01(\x0b\x32\x1b.diode.v1.InventoryItemRoleH\x00R\x1f\x61ssignedObjectInventoryItemRole\x12[\n\x1d\x61ssigned_object_journal_entry\x18( \x01(\x0b\x32\x16.diode.v1.JournalEntryH\x00R\x1a\x61ssignedObjectJournalEntry\x12\x45\n\x15\x61ssigned_object_l2vpn\x18) \x01(\x0b\x32\x0f.diode.v1.L2VPNH\x00R\x13\x61ssignedObjectL2vpn\x12g\n!assigned_object_l2vpn_termination\x18* \x01(\x0b\x32\x1a.diode.v1.L2VPNTerminationH\x00R\x1e\x61ssignedObjectL2vpnTermination\x12N\n\x18\x61ssigned_object_location\x18+ \x01(\x0b\x32\x12.diode.v1.LocationH\x00R\x16\x61ssignedObjectLocation\x12U\n\x1b\x61ssigned_object_mac_address\x18, \x01(\x0b\x32\x14.diode.v1.MACAddressH\x00R\x18\x61ssignedObjectMacAddress\x12Z\n\x1c\x61ssigned_object_manufacturer\x18- \x01(\x0b\x32\x16.diode.v1.ManufacturerH\x00R\x1a\x61ssignedObjectManufacturer\x12H\n\x16\x61ssigned_object_module\x18. \x01(\x0b\x32\x10.diode.v1.ModuleH\x00R\x14\x61ssignedObjectModule\x12R\n\x1a\x61ssigned_object_module_bay\x18/ \x01(\x0b\x32\x13.diode.v1.ModuleBayH\x00R\x17\x61ssignedObjectModuleBay\x12U\n\x1b\x61ssigned_object_module_type\x18\x30 \x01(\x0b\x32\x14.diode.v1.ModuleTypeH\x00R\x18\x61ssignedObjectModuleType\x12k\n#assigned_object_module_type_profile\x18\x31 \x01(\x0b\x32\x1b.diode.v1.ModuleTypeProfileH\x00R\x1f\x61ssignedObjectModuleTypeProfile\x12N\n\x18\x61ssigned_object_platform\x18\x32 \x01(\x0b\x32\x12.diode.v1.PlatformH\x00R\x16\x61ssignedObjectPlatform\x12R\n\x1a\x61ssigned_object_power_feed\x18\x33 \x01(\x0b\x32\x13.diode.v1.PowerFeedH\x00R\x17\x61ssignedObjectPowerFeed\x12X\n\x1c\x61ssigned_object_power_outlet\x18\x34 \x01(\x0b\x32\x15.diode.v1.PowerOutletH\x00R\x19\x61ssignedObjectPowerOutlet\x12U\n\x1b\x61ssigned_object_power_panel\x18\x35 \x01(\x0b\x32\x14.diode.v1.PowerPanelH\x00R\x18\x61ssignedObjectPowerPanel\x12R\n\x1a\x61ssigned_object_power_port\x18\x36 \x01(\x0b\x32\x13.diode.v1.PowerPortH\x00R\x17\x61ssignedObjectPowerPort\x12H\n\x16\x61ssigned_object_prefix\x18\x37 \x01(\x0b\x32\x10.diode.v1.PrefixH\x00R\x14\x61ssignedObjectPrefix\x12N\n\x18\x61ssigned_object_provider\x18\x38 \x01(\x0b\x32\x12.diode.v1.ProviderH\x00R\x16\x61ssignedObjectProvider\x12\x64\n assigned_object_provider_account\x18\x39 \x01(\x0b\x32\x19.diode.v1.ProviderAccountH\x00R\x1d\x61ssignedObjectProviderAccount\x12\x64\n assigned_object_provider_network\x18: \x01(\x0b\x32\x19.diode.v1.ProviderNetworkH\x00R\x1d\x61ssignedObjectProviderNetwork\x12?\n\x13\x61ssigned_object_rir\x18; \x01(\x0b\x32\r.diode.v1.RIRH\x00R\x11\x61ssignedObjectRir\x12\x42\n\x14\x61ssigned_object_rack\x18< \x01(\x0b\x32\x0e.diode.v1.RackH\x00R\x12\x61ssignedObjectRack\x12\x64\n assigned_object_rack_reservation\x18= \x01(\x0b\x32\x19.diode.v1.RackReservationH\x00R\x1d\x61ssignedObjectRackReservation\x12O\n\x19\x61ssigned_object_rack_role\x18> \x01(\x0b\x32\x12.diode.v1.RackRoleH\x00R\x16\x61ssignedObjectRackRole\x12O\n\x19\x61ssigned_object_rack_type\x18? \x01(\x0b\x32\x12.diode.v1.RackTypeH\x00R\x16\x61ssignedObjectRackType\x12O\n\x19\x61ssigned_object_rear_port\x18@ \x01(\x0b\x32\x12.diode.v1.RearPortH\x00R\x16\x61ssignedObjectRearPort\x12H\n\x16\x61ssigned_object_region\x18\x41 \x01(\x0b\x32\x10.diode.v1.RegionH\x00R\x14\x61ssignedObjectRegion\x12\x42\n\x14\x61ssigned_object_role\x18\x42 \x01(\x0b\x32\x0e.diode.v1.RoleH\x00R\x12\x61ssignedObjectRole\x12X\n\x1c\x61ssigned_object_route_target\x18\x43 \x01(\x0b\x32\x15.diode.v1.RouteTargetH\x00R\x19\x61ssignedObjectRouteTarget\x12K\n\x17\x61ssigned_object_service\x18\x44 \x01(\x0b\x32\x11.diode.v1.ServiceH\x00R\x15\x61ssignedObjectService\x12\x42\n\x14\x61ssigned_object_site\x18\x45 \x01(\x0b\x32\x0e.diode.v1.SiteH\x00R\x12\x61ssignedObjectSite\x12R\n\x1a\x61ssigned_object_site_group\x18\x46 \x01(\x0b\x32\x13.diode.v1.SiteGroupH\x00R\x17\x61ssignedObjectSiteGroup\x12?\n\x13\x61ssigned_object_tag\x18G \x01(\x0b\x32\r.diode.v1.TagH\x00R\x11\x61ssignedObjectTag\x12H\n\x16\x61ssigned_object_tenant\x18H \x01(\x0b\x32\x10.diode.v1.TenantH\x00R\x14\x61ssignedObjectTenant\x12X\n\x1c\x61ssigned_object_tenant_group\x18I \x01(\x0b\x32\x15.diode.v1.TenantGroupH\x00R\x19\x61ssignedObjectTenantGroup\x12H\n\x16\x61ssigned_object_tunnel\x18J \x01(\x0b\x32\x10.diode.v1.TunnelH\x00R\x14\x61ssignedObjectTunnel\x12X\n\x1c\x61ssigned_object_tunnel_group\x18K \x01(\x0b\x32\x15.diode.v1.TunnelGroupH\x00R\x19\x61ssignedObjectTunnelGroup\x12j\n\"assigned_object_tunnel_termination\x18L \x01(\x0b\x32\x1b.diode.v1.TunnelTerminationH\x00R\x1f\x61ssignedObjectTunnelTermination\x12\x42\n\x14\x61ssigned_object_vlan\x18M \x01(\x0b\x32\x0e.diode.v1.VLANH\x00R\x12\x61ssignedObjectVlan\x12R\n\x1a\x61ssigned_object_vlan_group\x18N \x01(\x0b\x32\x13.diode.v1.VLANGroupH\x00R\x17\x61ssignedObjectVlanGroup\x12w\n\'assigned_object_vlan_translation_policy\x18O \x01(\x0b\x32\x1f.diode.v1.VLANTranslationPolicyH\x00R#assignedObjectVlanTranslationPolicy\x12q\n%assigned_object_vlan_translation_rule\x18P \x01(\x0b\x32\x1d.diode.v1.VLANTranslationRuleH\x00R!assignedObjectVlanTranslationRule\x12X\n\x1c\x61ssigned_object_vm_interface\x18Q \x01(\x0b\x32\x15.diode.v1.VMInterfaceH\x00R\x19\x61ssignedObjectVmInterface\x12?\n\x13\x61ssigned_object_vrf\x18R \x01(\x0b\x32\r.diode.v1.VRFH\x00R\x11\x61ssignedObjectVrf\x12\x61\n\x1f\x61ssigned_object_virtual_chassis\x18S \x01(\x0b\x32\x18.diode.v1.VirtualChassisH\x00R\x1c\x61ssignedObjectVirtualChassis\x12\x61\n\x1f\x61ssigned_object_virtual_circuit\x18T \x01(\x0b\x32\x18.diode.v1.VirtualCircuitH\x00R\x1c\x61ssignedObjectVirtualCircuit\x12\x83\x01\n+assigned_object_virtual_circuit_termination\x18U \x01(\x0b\x32#.diode.v1.VirtualCircuitTerminationH\x00R\'assignedObjectVirtualCircuitTermination\x12n\n$assigned_object_virtual_circuit_type\x18V \x01(\x0b\x32\x1c.diode.v1.VirtualCircuitTypeH\x00R assignedObjectVirtualCircuitType\x12t\n&assigned_object_virtual_device_context\x18W \x01(\x0b\x32\x1e.diode.v1.VirtualDeviceContextH\x00R\"assignedObjectVirtualDeviceContext\x12X\n\x1c\x61ssigned_object_virtual_disk\x18X \x01(\x0b\x32\x15.diode.v1.VirtualDiskH\x00R\x19\x61ssignedObjectVirtualDisk\x12\x61\n\x1f\x61ssigned_object_virtual_machine\x18Y \x01(\x0b\x32\x18.diode.v1.VirtualMachineH\x00R\x1c\x61ssignedObjectVirtualMachine\x12X\n\x1c\x61ssigned_object_wireless_lan\x18Z \x01(\x0b\x32\x15.diode.v1.WirelessLANH\x00R\x19\x61ssignedObjectWirelessLan\x12h\n\"assigned_object_wireless_lan_group\x18[ \x01(\x0b\x32\x1a.diode.v1.WirelessLANGroupH\x00R\x1e\x61ssignedObjectWirelessLanGroup\x12[\n\x1d\x61ssigned_object_wireless_link\x18\\ \x01(\x0b\x32\x16.diode.v1.WirelessLinkH\x00R\x1a\x61ssignedObjectWirelessLink\x12U\n\x1b\x61ssigned_object_custom_link\x18\x61 \x01(\x0b\x32\x14.diode.v1.CustomLinkH\x00R\x18\x61ssignedObjectCustomLink\x12\x45\n\x15\x61ssigned_object_owner\x18\x63 \x01(\x0b\x32\x0f.diode.v1.OwnerH\x00R\x13\x61ssignedObjectOwner\x12U\n\x1b\x61ssigned_object_owner_group\x18\x64 \x01(\x0b\x32\x14.diode.v1.OwnerGroupH\x00R\x18\x61ssignedObjectOwnerGroup\x12X\n\x1c\x61ssigned_object_cable_bundle\x18\x65 \x01(\x0b\x32\x15.diode.v1.CableBundleH\x00R\x19\x61ssignedObjectCableBundle\x12R\n\x1a\x61ssigned_object_rack_group\x18\x66 \x01(\x0b\x32\x13.diode.v1.RackGroupH\x00R\x17\x61ssignedObjectRackGroup\x12[\n\x1d\x61ssigned_object_script_module\x18g \x01(\x0b\x32\x16.diode.v1.ScriptModuleH\x00R\x1a\x61ssignedObjectScriptModule\x12n\n$assigned_object_virtual_machine_type\x18h \x01(\x0b\x32\x1c.diode.v1.VirtualMachineTypeH\x00R assignedObjectVirtualMachineType\x12\x42\n\x14\x61ssigned_object_user\x18i \x01(\x0b\x32\x0e.diode.v1.UserH\x00R\x12\x61ssignedObjectUser\x12>\n\x04kind\x18] \x01(\tB%\xfa\x42\"r R\x06\x64\x61ngerR\x04infoR\x07successR\x07warningH\x01R\x04kind\x88\x01\x01\x12\x1a\n\x08\x63omments\x18^ \x01(\tR\x08\x63omments\x12!\n\x04tags\x18_ \x03(\x0b\x32\r.diode.v1.TagR\x04tags\x12M\n\rcustom_fields\x18` \x03(\x0b\x32(.diode.v1.JournalEntry.CustomFieldsEntryR\x0c\x63ustomFields\x12\x39\n\x08metadata\x18\x62 \x01(\x0b\x32\x17.google.protobuf.StructB\x04\x88\xb5\x18\x00R\x08metadata\x12\x32\n\ncreated_by\x18j \x01(\x0b\x32\x0e.diode.v1.UserH\x02R\tcreatedBy\x88\x01\x01\x1a[\n\x11\x43ustomFieldsEntry\x12\x10\n\x03key\x18\x01 \x01(\tR\x03key\x12\x30\n\x05value\x18\x02 \x01(\x0b\x32\x1a.diode.v1.CustomFieldValueR\x05value:\x02\x38\x01\x42\x11\n\x0f\x61ssigned_objectB\x07\n\x05_kindB\r\n\x0b_created_by\"\xf9\x03\n\x11ModuleTypeProfile\x12\x12\n\x04name\x18\x01 \x01(\tR\x04name\x12%\n\x0b\x64\x65scription\x18\x02 \x01(\tH\x00R\x0b\x64\x65scription\x88\x01\x01\x12\x1b\n\x06schema\x18\x03 \x01(\tH\x01R\x06schema\x88\x01\x01\x12\x1f\n\x08\x63omments\x18\x04 \x01(\tH\x02R\x08\x63omments\x88\x01\x01\x12!\n\x04tags\x18\x05 \x03(\x0b\x32\r.diode.v1.TagR\x04tags\x12R\n\rcustom_fields\x18\x06 \x03(\x0b\x32-.diode.v1.ModuleTypeProfile.CustomFieldsEntryR\x0c\x63ustomFields\x12\x39\n\x08metadata\x18\x07 \x01(\x0b\x32\x17.google.protobuf.StructB\x04\x88\xb5\x18\x00R\x08metadata\x12*\n\x05owner\x18\x08 \x01(\x0b\x32\x0f.diode.v1.OwnerH\x03R\x05owner\x88\x01\x01\x1a[\n\x11\x43ustomFieldsEntry\x12\x10\n\x03key\x18\x01 \x01(\tR\x03key\x12\x30\n\x05value\x18\x02 \x01(\x0b\x32\x1a.diode.v1.CustomFieldValueR\x05value:\x02\x38\x01\x42\x0e\n\x0c_descriptionB\t\n\x07_schemaB\x0b\n\t_commentsB\x08\n\x06_owner\"\xfd\x11\n\nCustomLink\x12\x12\n\x04name\x18\x01 \x01(\tR\x04name\x12\x1d\n\x07\x65nabled\x18\x02 \x01(\x08H\x00R\x07\x65nabled\x88\x01\x01\x12\x1b\n\tlink_text\x18\x03 \x01(\tR\x08linkText\x12\x19\n\x08link_url\x18\x04 \x01(\tR\x07linkUrl\x12\x1b\n\x06weight\x18\x05 \x01(\x03H\x01R\x06weight\x88\x01\x01\x12\"\n\ngroup_name\x18\x06 \x01(\tH\x02R\tgroupName\x88\x01\x01\x12\x9a\x01\n\x0c\x62utton_class\x18\x07 \x01(\tBr\xfa\x42ormR\x05\x62lackR\x04\x62lueR\x04\x63yanR\x07\x64\x65\x66\x61ultR\nghost-darkR\x04grayR\x05greenR\x06indigoR\x06orangeR\x04pinkR\x06purpleR\x03redR\x04tealR\x05whiteR\x06yellowH\x03R\x0b\x62uttonClass\x88\x01\x01\x12\"\n\nnew_window\x18\x08 \x01(\x08H\x04R\tnewWindow\x88\x01\x01\x12\xca\r\n\x0cobject_types\x18\t \x03(\tB\xa6\r\xfa\x42\xa2\r\x92\x01\x9e\r\"\x9b\rr\x98\rR\x10\x63ircuits.circuitR\x15\x63ircuits.circuitgroupR\x1b\x63ircuits.circuitterminationR\x14\x63ircuits.circuittypeR\x11\x63ircuits.providerR\x18\x63ircuits.provideraccountR\x18\x63ircuits.providernetworkR\x17\x63ircuits.virtualcircuitR\"circuits.virtualcircuitterminationR\x1b\x63ircuits.virtualcircuittypeR\ndcim.cableR\x10\x64\x63im.cablebundleR\x10\x64\x63im.consoleportR\x16\x64\x63im.consoleserverportR\x0b\x64\x63im.deviceR\x0e\x64\x63im.devicebayR\x0f\x64\x63im.deviceroleR\x0f\x64\x63im.devicetypeR\x0e\x64\x63im.frontportR\x0e\x64\x63im.interfaceR\x12\x64\x63im.inventoryitemR\x16\x64\x63im.inventoryitemroleR\rdcim.locationR\x0f\x64\x63im.macaddressR\x11\x64\x63im.manufacturerR\x0b\x64\x63im.moduleR\x0e\x64\x63im.modulebayR\x0f\x64\x63im.moduletypeR\x16\x64\x63im.moduletypeprofileR\rdcim.platformR\x0e\x64\x63im.powerfeedR\x10\x64\x63im.poweroutletR\x0f\x64\x63im.powerpanelR\x0e\x64\x63im.powerportR\tdcim.rackR\x0e\x64\x63im.rackgroupR\x14\x64\x63im.rackreservationR\rdcim.rackroleR\rdcim.racktypeR\rdcim.rearportR\x0b\x64\x63im.regionR\tdcim.siteR\x0e\x64\x63im.sitegroupR\x13\x64\x63im.virtualchassisR\x19\x64\x63im.virtualdevicecontextR\x13\x65xtras.journalentryR\x0eipam.aggregateR\x08ipam.asnR\ripam.asnrangeR\x0eipam.fhrpgroupR\x0eipam.ipaddressR\x0cipam.iprangeR\x0bipam.prefixR\x08ipam.rirR\tipam.roleR\x10ipam.routetargetR\x0cipam.serviceR\tipam.vlanR\x0eipam.vlangroupR\x1aipam.vlantranslationpolicyR\x18ipam.vlantranslationruleR\x08ipam.vrfR\x0ftenancy.contactR\x14tenancy.contactgroupR\x13tenancy.contactroleR\x0etenancy.tenantR\x13tenancy.tenantgroupR\x0busers.ownerR\x10users.ownergroupR\x16virtualization.clusterR\x1bvirtualization.clustergroupR\x1avirtualization.clustertypeR\x1avirtualization.virtualdiskR\x1dvirtualization.virtualmachineR!virtualization.virtualmachinetypeR\x1avirtualization.vminterfaceR\rvpn.ikepolicyR\x0fvpn.ikeproposalR\x0fvpn.ipsecpolicyR\x10vpn.ipsecprofileR\x11vpn.ipsecproposalR\tvpn.l2vpnR\x14vpn.l2vpnterminationR\nvpn.tunnelR\x0fvpn.tunnelgroupR\x15vpn.tunnelterminationR\x14wireless.wirelesslanR\x19wireless.wirelesslangroupR\x15wireless.wirelesslinkR\x0bobjectTypes\x12\x39\n\x08metadata\x18\n \x01(\x0b\x32\x17.google.protobuf.StructB\x04\x88\xb5\x18\x00R\x08metadata\x12*\n\x05owner\x18\x0b \x01(\x0b\x32\x0f.diode.v1.OwnerH\x05R\x05owner\x88\x01\x01\x42\n\n\x08_enabledB\t\n\x07_weightB\r\n\x0b_group_nameB\x0f\n\r_button_classB\r\n\x0b_new_windowB\x08\n\x06_owner\"\xdf\x01\n\x05Owner\x12\x12\n\x04name\x18\x01 \x01(\tR\x04name\x12*\n\x05group\x18\x02 \x01(\x0b\x32\x14.diode.v1.OwnerGroupR\x05group\x12%\n\x0b\x64\x65scription\x18\x03 \x01(\tH\x00R\x0b\x64\x65scription\x88\x01\x01\x12\x39\n\x08metadata\x18\x04 \x01(\x0b\x32\x17.google.protobuf.StructB\x04\x88\xb5\x18\x00R\x08metadata\x12$\n\x05users\x18\x05 \x03(\x0b\x32\x0e.diode.v1.UserR\x05usersB\x0e\n\x0c_description\"\x92\x01\n\nOwnerGroup\x12\x12\n\x04name\x18\x01 \x01(\tR\x04name\x12%\n\x0b\x64\x65scription\x18\x02 \x01(\tH\x00R\x0b\x64\x65scription\x88\x01\x01\x12\x39\n\x08metadata\x18\x03 \x01(\x0b\x32\x17.google.protobuf.StructB\x04\x88\xb5\x18\x00R\x08metadataB\x0e\n\x0c_description\"\xad\x01\n\x0c\x44\x65viceConfig\x12\x1e\n\x07startup\x18\x01 \x01(\x0c\x42\x04\x88\xb5\x18\x00R\x07startup\x12\x1e\n\x07running\x18\x02 \x01(\x0c\x42\x04\x88\xb5\x18\x00R\x07running\x12\"\n\tcandidate\x18\x03 \x01(\x0c\x42\x04\x88\xb5\x18\x00R\tcandidate\x12\x39\n\x08metadata\x18\x04 \x01(\x0b\x32\x17.google.protobuf.StructB\x04\x88\xb5\x18\x00R\x08metadata\"\xc5\x03\n\x0b\x43\x61\x62leBundle\x12\x12\n\x04name\x18\x01 \x01(\tR\x04name\x12%\n\x0b\x64\x65scription\x18\x02 \x01(\tH\x00R\x0b\x64\x65scription\x88\x01\x01\x12*\n\x05owner\x18\x03 \x01(\x0b\x32\x0f.diode.v1.OwnerH\x01R\x05owner\x88\x01\x01\x12\x1f\n\x08\x63omments\x18\x04 \x01(\tH\x02R\x08\x63omments\x88\x01\x01\x12!\n\x04tags\x18\x05 \x03(\x0b\x32\r.diode.v1.TagR\x04tags\x12L\n\rcustom_fields\x18\x06 \x03(\x0b\x32\'.diode.v1.CableBundle.CustomFieldsEntryR\x0c\x63ustomFields\x12\x39\n\x08metadata\x18\x07 \x01(\x0b\x32\x17.google.protobuf.StructB\x04\x88\xb5\x18\x00R\x08metadata\x1a[\n\x11\x43ustomFieldsEntry\x12\x10\n\x03key\x18\x01 \x01(\tR\x03key\x12\x30\n\x05value\x18\x02 \x01(\x0b\x32\x1a.diode.v1.CustomFieldValueR\x05value:\x02\x38\x01\x42\x0e\n\x0c_descriptionB\x08\n\x06_ownerB\x0b\n\t_comments\"\xd5\x03\n\tRackGroup\x12\x12\n\x04name\x18\x01 \x01(\tR\x04name\x12\x12\n\x04slug\x18\x02 \x01(\tR\x04slug\x12%\n\x0b\x64\x65scription\x18\x03 \x01(\tH\x00R\x0b\x64\x65scription\x88\x01\x01\x12*\n\x05owner\x18\x04 \x01(\x0b\x32\x0f.diode.v1.OwnerH\x01R\x05owner\x88\x01\x01\x12\x1f\n\x08\x63omments\x18\x05 \x01(\tH\x02R\x08\x63omments\x88\x01\x01\x12!\n\x04tags\x18\x06 \x03(\x0b\x32\r.diode.v1.TagR\x04tags\x12J\n\rcustom_fields\x18\x07 \x03(\x0b\x32%.diode.v1.RackGroup.CustomFieldsEntryR\x0c\x63ustomFields\x12\x39\n\x08metadata\x18\x08 \x01(\x0b\x32\x17.google.protobuf.StructB\x04\x88\xb5\x18\x00R\x08metadata\x1a[\n\x11\x43ustomFieldsEntry\x12\x10\n\x03key\x18\x01 \x01(\tR\x03key\x12\x30\n\x05value\x18\x02 \x01(\x0b\x32\x1a.diode.v1.CustomFieldValueR\x05value:\x02\x38\x01\x42\x0e\n\x0c_descriptionB\x08\n\x06_ownerB\x0b\n\t_comments\"]\n\x0cScriptModule\x12\x12\n\x04\x66ile\x18\x01 \x01(\tR\x04\x66ile\x12\x39\n\x08metadata\x18\x02 \x01(\x0b\x32\x17.google.protobuf.StructB\x04\x88\xb5\x18\x00R\x08metadata\"\xbb\x05\n\x12VirtualMachineType\x12\x12\n\x04name\x18\x01 \x01(\tR\x04name\x12\x12\n\x04slug\x18\x02 \x01(\tR\x04slug\x12\x42\n\x10\x64\x65\x66\x61ult_platform\x18\x03 \x01(\x0b\x32\x12.diode.v1.PlatformH\x00R\x0f\x64\x65\x66\x61ultPlatform\x88\x01\x01\x12(\n\rdefault_vcpus\x18\x04 \x01(\x01H\x01R\x0c\x64\x65\x66\x61ultVcpus\x88\x01\x01\x12*\n\x0e\x64\x65\x66\x61ult_memory\x18\x05 \x01(\x03H\x02R\rdefaultMemory\x88\x01\x01\x12%\n\x0b\x64\x65scription\x18\x06 \x01(\tH\x03R\x0b\x64\x65scription\x88\x01\x01\x12*\n\x05owner\x18\x07 \x01(\x0b\x32\x0f.diode.v1.OwnerH\x04R\x05owner\x88\x01\x01\x12\x1f\n\x08\x63omments\x18\x08 \x01(\tH\x05R\x08\x63omments\x88\x01\x01\x12!\n\x04tags\x18\t \x03(\x0b\x32\r.diode.v1.TagR\x04tags\x12S\n\rcustom_fields\x18\n \x03(\x0b\x32..diode.v1.VirtualMachineType.CustomFieldsEntryR\x0c\x63ustomFields\x12\x39\n\x08metadata\x18\x0b \x01(\x0b\x32\x17.google.protobuf.StructB\x04\x88\xb5\x18\x00R\x08metadata\x1a[\n\x11\x43ustomFieldsEntry\x12\x10\n\x03key\x18\x01 \x01(\tR\x03key\x12\x30\n\x05value\x18\x02 \x01(\x0b\x32\x1a.diode.v1.CustomFieldValueR\x05value:\x02\x38\x01\x42\x13\n\x11_default_platformB\x10\n\x0e_default_vcpusB\x11\n\x0f_default_memoryB\x0e\n\x0c_descriptionB\x08\n\x06_ownerB\x0b\n\t_comments\"]\n\x04User\x12\x1a\n\x08username\x18\x01 \x01(\tR\x08username\x12\x39\n\x08metadata\x18\x02 \x01(\x0b\x32\x17.google.protobuf.StructB\x04\x88\xb5\x18\x00R\x08metadata2N\n\x0fIngesterService\x12;\n\x06Ingest\x12\x17.diode.v1.IngestRequest\x1a\x18.diode.v1.IngestResponse:J\n\x10netbox_supported\x12\x1d.google.protobuf.FieldOptions\x18\xd1\x86\x03 \x01(\x08R\x0fnetboxSupportedB5Z3github.com/netboxlabs/diode-sdk-go/diode/v1/diodepbb\x06proto3') +DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n\x17\x64iode/v1/ingester.proto\x12\x08\x64iode.v1\x1a google/protobuf/descriptor.proto\x1a\x1cgoogle/protobuf/struct.proto\x1a\x1fgoogle/protobuf/timestamp.proto\x1a\x17validate/validate.proto\"\x89\x32\n\x06\x45ntity\x12\x44\n\ttimestamp\x18\x01 \x01(\x0b\x32\x1a.google.protobuf.TimestampB\n\xfa\x42\x07\xb2\x01\x04\x08\x01\x38\x01R\ttimestamp\x12!\n\x03\x61sn\x18\x02 \x01(\x0b\x32\r.diode.v1.ASNH\x00R\x03\x61sn\x12\x31\n\tasn_range\x18\x03 \x01(\x0b\x32\x12.diode.v1.ASNRangeH\x00R\x08\x61snRange\x12\x33\n\taggregate\x18\x04 \x01(\x0b\x32\x13.diode.v1.AggregateH\x00R\taggregate\x12\'\n\x05\x63\x61\x62le\x18\x05 \x01(\x0b\x32\x0f.diode.v1.CableH\x00R\x05\x63\x61\x62le\x12\x34\n\ncable_path\x18\x06 \x01(\x0b\x32\x13.diode.v1.CablePathH\x00R\tcablePath\x12M\n\x11\x63\x61\x62le_termination\x18\x07 \x01(\x0b\x32\x1a.diode.v1.CableTerminationB\x02\x18\x01H\x00R\x10\x63\x61\x62leTermination\x12-\n\x07\x63ircuit\x18\x08 \x01(\x0b\x32\x11.diode.v1.CircuitH\x00R\x07\x63ircuit\x12=\n\rcircuit_group\x18\t \x01(\x0b\x32\x16.diode.v1.CircuitGroupH\x00R\x0c\x63ircuitGroup\x12\\\n\x18\x63ircuit_group_assignment\x18\n \x01(\x0b\x32 .diode.v1.CircuitGroupAssignmentH\x00R\x16\x63ircuitGroupAssignment\x12O\n\x13\x63ircuit_termination\x18\x0b \x01(\x0b\x32\x1c.diode.v1.CircuitTerminationH\x00R\x12\x63ircuitTermination\x12:\n\x0c\x63ircuit_type\x18\x0c \x01(\x0b\x32\x15.diode.v1.CircuitTypeH\x00R\x0b\x63ircuitType\x12-\n\x07\x63luster\x18\r \x01(\x0b\x32\x11.diode.v1.ClusterH\x00R\x07\x63luster\x12=\n\rcluster_group\x18\x0e \x01(\x0b\x32\x16.diode.v1.ClusterGroupH\x00R\x0c\x63lusterGroup\x12:\n\x0c\x63luster_type\x18\x0f \x01(\x0b\x32\x15.diode.v1.ClusterTypeH\x00R\x0b\x63lusterType\x12:\n\x0c\x63onsole_port\x18\x10 \x01(\x0b\x32\x15.diode.v1.ConsolePortH\x00R\x0b\x63onsolePort\x12M\n\x13\x63onsole_server_port\x18\x11 \x01(\x0b\x32\x1b.diode.v1.ConsoleServerPortH\x00R\x11\x63onsoleServerPort\x12-\n\x07\x63ontact\x18\x12 \x01(\x0b\x32\x11.diode.v1.ContactH\x00R\x07\x63ontact\x12L\n\x12\x63ontact_assignment\x18\x13 \x01(\x0b\x32\x1b.diode.v1.ContactAssignmentH\x00R\x11\x63ontactAssignment\x12=\n\rcontact_group\x18\x14 \x01(\x0b\x32\x16.diode.v1.ContactGroupH\x00R\x0c\x63ontactGroup\x12:\n\x0c\x63ontact_role\x18\x15 \x01(\x0b\x32\x15.diode.v1.ContactRoleH\x00R\x0b\x63ontactRole\x12*\n\x06\x64\x65vice\x18\x16 \x01(\x0b\x32\x10.diode.v1.DeviceH\x00R\x06\x64\x65vice\x12\x34\n\ndevice_bay\x18\x17 \x01(\x0b\x32\x13.diode.v1.DeviceBayH\x00R\tdeviceBay\x12\x37\n\x0b\x64\x65vice_role\x18\x18 \x01(\x0b\x32\x14.diode.v1.DeviceRoleH\x00R\ndeviceRole\x12\x37\n\x0b\x64\x65vice_type\x18\x19 \x01(\x0b\x32\x14.diode.v1.DeviceTypeH\x00R\ndeviceType\x12\x34\n\nfhrp_group\x18\x1a \x01(\x0b\x32\x13.diode.v1.FHRPGroupH\x00R\tfhrpGroup\x12S\n\x15\x66hrp_group_assignment\x18\x1b \x01(\x0b\x32\x1d.diode.v1.FHRPGroupAssignmentH\x00R\x13\x66hrpGroupAssignment\x12\x34\n\nfront_port\x18\x1c \x01(\x0b\x32\x13.diode.v1.FrontPortH\x00R\tfrontPort\x12\x34\n\nike_policy\x18\x1d \x01(\x0b\x32\x13.diode.v1.IKEPolicyH\x00R\tikePolicy\x12:\n\x0cike_proposal\x18\x1e \x01(\x0b\x32\x15.diode.v1.IKEProposalH\x00R\x0bikeProposal\x12\x34\n\nip_address\x18\x1f \x01(\x0b\x32\x13.diode.v1.IPAddressH\x00R\tipAddress\x12.\n\x08ip_range\x18 \x01(\x0b\x32\x11.diode.v1.IPRangeH\x00R\x07ipRange\x12;\n\rip_sec_policy\x18! \x01(\x0b\x32\x15.diode.v1.IPSecPolicyH\x00R\x0bipSecPolicy\x12>\n\x0eip_sec_profile\x18\" \x01(\x0b\x32\x16.diode.v1.IPSecProfileH\x00R\x0cipSecProfile\x12\x41\n\x0fip_sec_proposal\x18# \x01(\x0b\x32\x17.diode.v1.IPSecProposalH\x00R\ripSecProposal\x12\x33\n\tinterface\x18$ \x01(\x0b\x32\x13.diode.v1.InterfaceH\x00R\tinterface\x12@\n\x0einventory_item\x18% \x01(\x0b\x32\x17.diode.v1.InventoryItemH\x00R\rinventoryItem\x12M\n\x13inventory_item_role\x18& \x01(\x0b\x32\x1b.diode.v1.InventoryItemRoleH\x00R\x11inventoryItemRole\x12\'\n\x05l2vpn\x18\' \x01(\x0b\x32\x0f.diode.v1.L2VPNH\x00R\x05l2vpn\x12I\n\x11l2vpn_termination\x18( \x01(\x0b\x32\x1a.diode.v1.L2VPNTerminationH\x00R\x10l2vpnTermination\x12\x30\n\x08location\x18) \x01(\x0b\x32\x12.diode.v1.LocationH\x00R\x08location\x12\x37\n\x0bmac_address\x18* \x01(\x0b\x32\x14.diode.v1.MACAddressH\x00R\nmacAddress\x12<\n\x0cmanufacturer\x18+ \x01(\x0b\x32\x16.diode.v1.ManufacturerH\x00R\x0cmanufacturer\x12*\n\x06module\x18, \x01(\x0b\x32\x10.diode.v1.ModuleH\x00R\x06module\x12\x34\n\nmodule_bay\x18- \x01(\x0b\x32\x13.diode.v1.ModuleBayH\x00R\tmoduleBay\x12\x37\n\x0bmodule_type\x18. \x01(\x0b\x32\x14.diode.v1.ModuleTypeH\x00R\nmoduleType\x12\x30\n\x08platform\x18/ \x01(\x0b\x32\x12.diode.v1.PlatformH\x00R\x08platform\x12\x34\n\npower_feed\x18\x30 \x01(\x0b\x32\x13.diode.v1.PowerFeedH\x00R\tpowerFeed\x12:\n\x0cpower_outlet\x18\x31 \x01(\x0b\x32\x15.diode.v1.PowerOutletH\x00R\x0bpowerOutlet\x12\x37\n\x0bpower_panel\x18\x32 \x01(\x0b\x32\x14.diode.v1.PowerPanelH\x00R\npowerPanel\x12\x34\n\npower_port\x18\x33 \x01(\x0b\x32\x13.diode.v1.PowerPortH\x00R\tpowerPort\x12*\n\x06prefix\x18\x34 \x01(\x0b\x32\x10.diode.v1.PrefixH\x00R\x06prefix\x12\x30\n\x08provider\x18\x35 \x01(\x0b\x32\x12.diode.v1.ProviderH\x00R\x08provider\x12\x46\n\x10provider_account\x18\x36 \x01(\x0b\x32\x19.diode.v1.ProviderAccountH\x00R\x0fproviderAccount\x12\x46\n\x10provider_network\x18\x37 \x01(\x0b\x32\x19.diode.v1.ProviderNetworkH\x00R\x0fproviderNetwork\x12!\n\x03rir\x18\x38 \x01(\x0b\x32\r.diode.v1.RIRH\x00R\x03rir\x12$\n\x04rack\x18\x39 \x01(\x0b\x32\x0e.diode.v1.RackH\x00R\x04rack\x12\x46\n\x10rack_reservation\x18: \x01(\x0b\x32\x19.diode.v1.RackReservationH\x00R\x0frackReservation\x12\x31\n\track_role\x18; \x01(\x0b\x32\x12.diode.v1.RackRoleH\x00R\x08rackRole\x12\x31\n\track_type\x18< \x01(\x0b\x32\x12.diode.v1.RackTypeH\x00R\x08rackType\x12\x31\n\trear_port\x18= \x01(\x0b\x32\x12.diode.v1.RearPortH\x00R\x08rearPort\x12*\n\x06region\x18> \x01(\x0b\x32\x10.diode.v1.RegionH\x00R\x06region\x12$\n\x04role\x18? \x01(\x0b\x32\x0e.diode.v1.RoleH\x00R\x04role\x12:\n\x0croute_target\x18@ \x01(\x0b\x32\x15.diode.v1.RouteTargetH\x00R\x0brouteTarget\x12-\n\x07service\x18\x41 \x01(\x0b\x32\x11.diode.v1.ServiceH\x00R\x07service\x12$\n\x04site\x18\x42 \x01(\x0b\x32\x0e.diode.v1.SiteH\x00R\x04site\x12\x34\n\nsite_group\x18\x43 \x01(\x0b\x32\x13.diode.v1.SiteGroupH\x00R\tsiteGroup\x12!\n\x03tag\x18\x44 \x01(\x0b\x32\r.diode.v1.TagH\x00R\x03tag\x12*\n\x06tenant\x18\x45 \x01(\x0b\x32\x10.diode.v1.TenantH\x00R\x06tenant\x12:\n\x0ctenant_group\x18\x46 \x01(\x0b\x32\x15.diode.v1.TenantGroupH\x00R\x0btenantGroup\x12*\n\x06tunnel\x18G \x01(\x0b\x32\x10.diode.v1.TunnelH\x00R\x06tunnel\x12:\n\x0ctunnel_group\x18H \x01(\x0b\x32\x15.diode.v1.TunnelGroupH\x00R\x0btunnelGroup\x12L\n\x12tunnel_termination\x18I \x01(\x0b\x32\x1b.diode.v1.TunnelTerminationH\x00R\x11tunnelTermination\x12$\n\x04vlan\x18J \x01(\x0b\x32\x0e.diode.v1.VLANH\x00R\x04vlan\x12\x34\n\nvlan_group\x18K \x01(\x0b\x32\x13.diode.v1.VLANGroupH\x00R\tvlanGroup\x12Y\n\x17vlan_translation_policy\x18L \x01(\x0b\x32\x1f.diode.v1.VLANTranslationPolicyH\x00R\x15vlanTranslationPolicy\x12S\n\x15vlan_translation_rule\x18M \x01(\x0b\x32\x1d.diode.v1.VLANTranslationRuleH\x00R\x13vlanTranslationRule\x12:\n\x0cvm_interface\x18N \x01(\x0b\x32\x15.diode.v1.VMInterfaceH\x00R\x0bvmInterface\x12!\n\x03vrf\x18O \x01(\x0b\x32\r.diode.v1.VRFH\x00R\x03vrf\x12\x43\n\x0fvirtual_chassis\x18P \x01(\x0b\x32\x18.diode.v1.VirtualChassisH\x00R\x0evirtualChassis\x12\x43\n\x0fvirtual_circuit\x18Q \x01(\x0b\x32\x18.diode.v1.VirtualCircuitH\x00R\x0evirtualCircuit\x12\x65\n\x1bvirtual_circuit_termination\x18R \x01(\x0b\x32#.diode.v1.VirtualCircuitTerminationH\x00R\x19virtualCircuitTermination\x12P\n\x14virtual_circuit_type\x18S \x01(\x0b\x32\x1c.diode.v1.VirtualCircuitTypeH\x00R\x12virtualCircuitType\x12V\n\x16virtual_device_context\x18T \x01(\x0b\x32\x1e.diode.v1.VirtualDeviceContextH\x00R\x14virtualDeviceContext\x12:\n\x0cvirtual_disk\x18U \x01(\x0b\x32\x15.diode.v1.VirtualDiskH\x00R\x0bvirtualDisk\x12\x43\n\x0fvirtual_machine\x18V \x01(\x0b\x32\x18.diode.v1.VirtualMachineH\x00R\x0evirtualMachine\x12:\n\x0cwireless_lan\x18W \x01(\x0b\x32\x15.diode.v1.WirelessLANH\x00R\x0bwirelessLan\x12J\n\x12wireless_lan_group\x18X \x01(\x0b\x32\x1a.diode.v1.WirelessLANGroupH\x00R\x10wirelessLanGroup\x12=\n\rwireless_link\x18Y \x01(\x0b\x32\x16.diode.v1.WirelessLinkH\x00R\x0cwirelessLink\x12:\n\x0c\x63ustom_field\x18Z \x01(\x0b\x32\x15.diode.v1.CustomFieldH\x00R\x0b\x63ustomField\x12W\n\x17\x63ustom_field_choice_set\x18[ \x01(\x0b\x32\x1e.diode.v1.CustomFieldChoiceSetH\x00R\x14\x63ustomFieldChoiceSet\x12=\n\rjournal_entry\x18\\ \x01(\x0b\x32\x16.diode.v1.JournalEntryH\x00R\x0cjournalEntry\x12M\n\x13module_type_profile\x18] \x01(\x0b\x32\x1b.diode.v1.ModuleTypeProfileH\x00R\x11moduleTypeProfile\x12\x37\n\x0b\x63ustom_link\x18^ \x01(\x0b\x32\x14.diode.v1.CustomLinkH\x00R\ncustomLink\x12\'\n\x05owner\x18_ \x01(\x0b\x32\x0f.diode.v1.OwnerH\x00R\x05owner\x12\x37\n\x0bowner_group\x18` \x01(\x0b\x32\x14.diode.v1.OwnerGroupH\x00R\nownerGroup\x12\x43\n\rdevice_config\x18\x61 \x01(\x0b\x32\x16.diode.v1.DeviceConfigB\x04\x88\xb5\x18\x00H\x00R\x0c\x64\x65viceConfig\x12:\n\x0c\x63\x61\x62le_bundle\x18\x62 \x01(\x0b\x32\x15.diode.v1.CableBundleH\x00R\x0b\x63\x61\x62leBundle\x12\x34\n\nrack_group\x18\x63 \x01(\x0b\x32\x13.diode.v1.RackGroupH\x00R\trackGroup\x12=\n\rscript_module\x18\x64 \x01(\x0b\x32\x16.diode.v1.ScriptModuleH\x00R\x0cscriptModule\x12P\n\x14virtual_machine_type\x18\x65 \x01(\x0b\x32\x1c.diode.v1.VirtualMachineTypeH\x00R\x12virtualMachineType\x12$\n\x04user\x18\x66 \x01(\x0b\x32\x0e.diode.v1.UserH\x00R\x04user\x12:\n\x0c\x63ooling_feed\x18g \x01(\x0b\x32\x15.diode.v1.CoolingFeedH\x00R\x0b\x63oolingFeed\x12@\n\x0e\x63ooling_intake\x18h \x01(\x0b\x32\x17.diode.v1.CoolingIntakeH\x00R\rcoolingIntake\x12\x43\n\x0f\x63ooling_outflow\x18i \x01(\x0b\x32\x18.diode.v1.CoolingOutflowH\x00R\x0e\x63oolingOutflow\x12@\n\x0e\x63ooling_source\x18j \x01(\x0b\x32\x17.diode.v1.CoolingSourceH\x00R\rcoolingSource\x12\x41\n\x0fmodule_bay_type\x18k \x01(\x0b\x32\x17.diode.v1.ModuleBayTypeH\x00R\rmoduleBayTypeB\x08\n\x06\x65ntity\"\x99\x03\n\rIngestRequest\x12\"\n\x06stream\x18\x01 \x01(\tB\n\xfa\x42\x07r\x05\x10\x01\x18\xff\x01R\x06stream\x12\x39\n\x08\x65ntities\x18\x02 \x03(\x0b\x32\x10.diode.v1.EntityB\x0b\xfa\x42\x08\x92\x01\x05\x08\x01\x10\xe8\x07R\x08\x65ntities\x12\x18\n\x02id\x18\x03 \x01(\tB\x08\xfa\x42\x05r\x03\xb0\x01\x01R\x02id\x12\x36\n\x11producer_app_name\x18\x04 \x01(\tB\n\xfa\x42\x07r\x05\x10\x01\x18\xff\x01R\x0fproducerAppName\x12<\n\x14producer_app_version\x18\x05 \x01(\tB\n\xfa\x42\x07r\x05\x10\x01\x18\xff\x01R\x12producerAppVersion\x12%\n\x08sdk_name\x18\x06 \x01(\tB\n\xfa\x42\x07r\x05\x10\x01\x18\xff\x01R\x07sdkName\x12=\n\x0bsdk_version\x18\x07 \x01(\tB\x1c\xfa\x42\x19r\x17\x32\x15^(\\d)+\\.(\\d)+\\.(\\d)+$R\nsdkVersion\x12\x33\n\x08metadata\x18\x08 \x01(\x0b\x32\x17.google.protobuf.StructR\x08metadata\"(\n\x0eIngestResponse\x12\x16\n\x06\x65rrors\x18\x01 \x03(\tR\x06\x65rrors\"\xf3\x04\n\x03\x41SN\x12\x10\n\x03\x61sn\x18\x01 \x01(\x03R\x03\x61sn\x12$\n\x03rir\x18\x02 \x01(\x0b\x32\r.diode.v1.RIRH\x00R\x03rir\x88\x01\x01\x12-\n\x06tenant\x18\x03 \x01(\x0b\x32\x10.diode.v1.TenantH\x01R\x06tenant\x88\x01\x01\x12%\n\x0b\x64\x65scription\x18\x04 \x01(\tH\x02R\x0b\x64\x65scription\x88\x01\x01\x12\x1f\n\x08\x63omments\x18\x05 \x01(\tH\x03R\x08\x63omments\x88\x01\x01\x12!\n\x04tags\x18\x06 \x03(\x0b\x32\r.diode.v1.TagR\x04tags\x12\x44\n\rcustom_fields\x18\x07 \x03(\x0b\x32\x1f.diode.v1.ASN.CustomFieldsEntryR\x0c\x63ustomFields\x12\x39\n\x08metadata\x18\x08 \x01(\x0b\x32\x17.google.protobuf.StructB\x04\x88\xb5\x18\x00R\x08metadata\x12*\n\x05owner\x18\t \x01(\x0b\x32\x0f.diode.v1.OwnerH\x04R\x05owner\x88\x01\x01\x12$\n\x05sites\x18\n \x03(\x0b\x32\x0e.diode.v1.SiteR\x05sites\x12\'\n\x04role\x18\x0b \x01(\x0b\x32\x0e.diode.v1.RoleH\x05R\x04role\x88\x01\x01\x1a[\n\x11\x43ustomFieldsEntry\x12\x10\n\x03key\x18\x01 \x01(\tR\x03key\x12\x30\n\x05value\x18\x02 \x01(\x0b\x32\x1a.diode.v1.CustomFieldValueR\x05value:\x02\x38\x01\x42\x06\n\x04_rirB\t\n\x07_tenantB\x0e\n\x0c_descriptionB\x0b\n\t_commentsB\x08\n\x06_ownerB\x07\n\x05_role\"\xd6\x04\n\x08\x41SNRange\x12\x12\n\x04name\x18\x01 \x01(\tR\x04name\x12\x12\n\x04slug\x18\x02 \x01(\tR\x04slug\x12\x1f\n\x03rir\x18\x03 \x01(\x0b\x32\r.diode.v1.RIRR\x03rir\x12\x14\n\x05start\x18\x04 \x01(\x03R\x05start\x12\x10\n\x03\x65nd\x18\x05 \x01(\x03R\x03\x65nd\x12-\n\x06tenant\x18\x06 \x01(\x0b\x32\x10.diode.v1.TenantH\x00R\x06tenant\x88\x01\x01\x12%\n\x0b\x64\x65scription\x18\x07 \x01(\tH\x01R\x0b\x64\x65scription\x88\x01\x01\x12!\n\x04tags\x18\x08 \x03(\x0b\x32\r.diode.v1.TagR\x04tags\x12I\n\rcustom_fields\x18\t \x03(\x0b\x32$.diode.v1.ASNRange.CustomFieldsEntryR\x0c\x63ustomFields\x12\x39\n\x08metadata\x18\n \x01(\x0b\x32\x17.google.protobuf.StructB\x04\x88\xb5\x18\x00R\x08metadata\x12*\n\x05owner\x18\x0b \x01(\x0b\x32\x0f.diode.v1.OwnerH\x02R\x05owner\x88\x01\x01\x12\x1f\n\x08\x63omments\x18\x0c \x01(\tH\x03R\x08\x63omments\x88\x01\x01\x1a[\n\x11\x43ustomFieldsEntry\x12\x10\n\x03key\x18\x01 \x01(\tR\x03key\x12\x30\n\x05value\x18\x02 \x01(\x0b\x32\x1a.diode.v1.CustomFieldValueR\x05value:\x02\x38\x01\x42\t\n\x07_tenantB\x0e\n\x0c_descriptionB\x08\n\x06_ownerB\x0b\n\t_comments\"\xef\x04\n\tAggregate\x12\x16\n\x06prefix\x18\x01 \x01(\tR\x06prefix\x12\x1f\n\x03rir\x18\x02 \x01(\x0b\x32\r.diode.v1.RIRR\x03rir\x12-\n\x06tenant\x18\x03 \x01(\x0b\x32\x10.diode.v1.TenantH\x00R\x06tenant\x88\x01\x01\x12>\n\ndate_added\x18\x04 \x01(\x0b\x32\x1a.google.protobuf.TimestampH\x01R\tdateAdded\x88\x01\x01\x12%\n\x0b\x64\x65scription\x18\x05 \x01(\tH\x02R\x0b\x64\x65scription\x88\x01\x01\x12\x1f\n\x08\x63omments\x18\x06 \x01(\tH\x03R\x08\x63omments\x88\x01\x01\x12!\n\x04tags\x18\x07 \x03(\x0b\x32\r.diode.v1.TagR\x04tags\x12J\n\rcustom_fields\x18\x08 \x03(\x0b\x32%.diode.v1.Aggregate.CustomFieldsEntryR\x0c\x63ustomFields\x12\x39\n\x08metadata\x18\t \x01(\x0b\x32\x17.google.protobuf.StructB\x04\x88\xb5\x18\x00R\x08metadata\x12*\n\x05owner\x18\n \x01(\x0b\x32\x0f.diode.v1.OwnerH\x04R\x05owner\x88\x01\x01\x1a[\n\x11\x43ustomFieldsEntry\x12\x10\n\x03key\x18\x01 \x01(\tR\x03key\x12\x30\n\x05value\x18\x02 \x01(\x0b\x32\x1a.diode.v1.CustomFieldValueR\x05value:\x02\x38\x01\x42\t\n\x07_tenantB\r\n\x0b_date_addedB\x0e\n\x0c_descriptionB\x0b\n\t_commentsB\x08\n\x06_owner\"\x9d\r\n\x05\x43\x61\x62le\x12\xa1\x02\n\x04type\x18\x01 \x01(\tB\x87\x02\xfa\x42\x83\x02r\x80\x02R\x03\x61ocR\x04\x63\x61t3R\x04\x63\x61t5R\x05\x63\x61t5eR\x04\x63\x61t6R\x05\x63\x61t6aR\x04\x63\x61t7R\x05\x63\x61t7aR\x04\x63\x61t8R\x07\x63oaxialR\ndac-activeR\x0b\x64\x61\x63-passiveR\x07lmr-100R\x07lmr-200R\x07lmr-400R\x03mmfR\x07mmf-om1R\x07mmf-om2R\x07mmf-om3R\x07mmf-om4R\x07mmf-om5R\x0bmrj21-trunkR\x05powerR\x05rg-11R\x06rg-213R\x05rg-59R\x04rg-6R\x05rg-62R\x04rg-8R\x03smfR\x07smf-os1R\x07smf-os2R\x03usbH\x00R\x04type\x88\x01\x01\x12>\n\x0e\x61_terminations\x18\x02 \x03(\x0b\x32\x17.diode.v1.GenericObjectR\raTerminations\x12>\n\x0e\x62_terminations\x18\x03 \x03(\x0b\x32\x17.diode.v1.GenericObjectR\rbTerminations\x12G\n\x06status\x18\x04 \x01(\tB*\xfa\x42\'r%R\tconnectedR\x0f\x64\x65\x63ommissioningR\x07plannedH\x01R\x06status\x88\x01\x01\x12-\n\x06tenant\x18\x05 \x01(\x0b\x32\x10.diode.v1.TenantH\x02R\x06tenant\x88\x01\x01\x12\x19\n\x05label\x18\x06 \x01(\tH\x03R\x05label\x88\x01\x01\x12\x19\n\x05\x63olor\x18\x07 \x01(\tH\x04R\x05\x63olor\x88\x01\x01\x12\x1b\n\x06length\x18\x08 \x01(\x01H\x05R\x06length\x88\x01\x01\x12\x42\n\x0blength_unit\x18\t \x01(\tB\x1c\xfa\x42\x19r\x17R\x02\x63mR\x02\x66tR\x02inR\x02kmR\x01mR\x02miH\x06R\nlengthUnit\x88\x01\x01\x12%\n\x0b\x64\x65scription\x18\n \x01(\tH\x07R\x0b\x64\x65scription\x88\x01\x01\x12\x1f\n\x08\x63omments\x18\x0b \x01(\tH\x08R\x08\x63omments\x88\x01\x01\x12!\n\x04tags\x18\x0c \x03(\x0b\x32\r.diode.v1.TagR\x04tags\x12\x46\n\rcustom_fields\x18\r \x03(\x0b\x32!.diode.v1.Cable.CustomFieldsEntryR\x0c\x63ustomFields\x12\x39\n\x08metadata\x18\x0e \x01(\x0b\x32\x17.google.protobuf.StructB\x04\x88\xb5\x18\x00R\x08metadata\x12\xa9\x03\n\x07profile\x18\x0f \x01(\tB\x89\x03\xfa\x42\x85\x03r\x82\x03R\x12\x62reakout-1c2p-2c1pR\x12\x62reakout-1c4p-4c1pR\x12\x62reakout-1c6p-6c1pR\x12\x62reakout-1c8p-8c1pR\x1a\x62reakout-2c4p-8c1p-shuffleR\x0csingle-1c12pR\x0csingle-1c16pR\x0bsingle-1c1pR\x0bsingle-1c2pR\x0bsingle-1c4pR\x0bsingle-1c6pR\x0bsingle-1c8pR\x0btrunk-2c12pR\ntrunk-2c1pR\ntrunk-2c2pR\ntrunk-2c4pR\x12trunk-2c4p-shuffleR\ntrunk-2c6pR\ntrunk-2c8pR\ntrunk-4c1pR\ntrunk-4c2pR\ntrunk-4c4pR\x12trunk-4c4p-shuffleR\ntrunk-4c6pR\ntrunk-4c8pR\ntrunk-8c4pH\tR\x07profile\x88\x01\x01\x12*\n\x05owner\x18\x10 \x01(\x0b\x32\x0f.diode.v1.OwnerH\nR\x05owner\x88\x01\x01\x12\x32\n\x06\x62undle\x18\x11 \x01(\x0b\x32\x15.diode.v1.CableBundleH\x0bR\x06\x62undle\x88\x01\x01\x1a[\n\x11\x43ustomFieldsEntry\x12\x10\n\x03key\x18\x01 \x01(\tR\x03key\x12\x30\n\x05value\x18\x02 \x01(\x0b\x32\x1a.diode.v1.CustomFieldValueR\x05value:\x02\x38\x01\x42\x07\n\x05_typeB\t\n\x07_statusB\t\n\x07_tenantB\x08\n\x06_labelB\x08\n\x06_colorB\t\n\x07_lengthB\x0e\n\x0c_length_unitB\x0e\n\x0c_descriptionB\x0b\n\t_commentsB\n\n\x08_profileB\x08\n\x06_ownerB\t\n\x07_bundle\"\xd9\x01\n\tCablePath\x12 \n\tis_active\x18\x01 \x01(\x08H\x00R\x08isActive\x88\x01\x01\x12$\n\x0bis_complete\x18\x02 \x01(\x08H\x01R\nisComplete\x88\x01\x01\x12\x1e\n\x08is_split\x18\x03 \x01(\x08H\x02R\x07isSplit\x88\x01\x01\x12\x39\n\x08metadata\x18\x04 \x01(\x0b\x32\x17.google.protobuf.StructB\x04\x88\xb5\x18\x00R\x08metadataB\x0c\n\n_is_activeB\x0e\n\x0c_is_completeB\x0b\n\t_is_split\"\x9e\x07\n\x10\x43\x61\x62leTermination\x12%\n\x05\x63\x61\x62le\x18\x01 \x01(\x0b\x32\x0f.diode.v1.CableR\x05\x63\x61\x62le\x12(\n\tcable_end\x18\x02 \x01(\tB\x0b\xfa\x42\x08r\x06R\x01\x41R\x01\x42R\x08\x63\x61\x62leEnd\x12\x66\n\x1ftermination_circuit_termination\x18\x03 \x01(\x0b\x32\x1c.diode.v1.CircuitTerminationH\x00R\x1dterminationCircuitTermination\x12Q\n\x18termination_console_port\x18\x04 \x01(\x0b\x32\x15.diode.v1.ConsolePortH\x00R\x16terminationConsolePort\x12\x64\n\x1ftermination_console_server_port\x18\x05 \x01(\x0b\x32\x1b.diode.v1.ConsoleServerPortH\x00R\x1cterminationConsoleServerPort\x12K\n\x16termination_front_port\x18\x06 \x01(\x0b\x32\x13.diode.v1.FrontPortH\x00R\x14terminationFrontPort\x12J\n\x15termination_interface\x18\x07 \x01(\x0b\x32\x13.diode.v1.InterfaceH\x00R\x14terminationInterface\x12K\n\x16termination_power_feed\x18\x08 \x01(\x0b\x32\x13.diode.v1.PowerFeedH\x00R\x14terminationPowerFeed\x12Q\n\x18termination_power_outlet\x18\t \x01(\x0b\x32\x15.diode.v1.PowerOutletH\x00R\x16terminationPowerOutlet\x12K\n\x16termination_power_port\x18\n \x01(\x0b\x32\x13.diode.v1.PowerPortH\x00R\x14terminationPowerPort\x12H\n\x15termination_rear_port\x18\x0b \x01(\x0b\x32\x12.diode.v1.RearPortH\x00R\x13terminationRearPort\x12\x39\n\x08metadata\x18\x0c \x01(\x0b\x32\x17.google.protobuf.StructB\x04\x88\xb5\x18\x00R\x08metadataB\r\n\x0btermination\"\xd7\t\n\x07\x43ircuit\x12\x10\n\x03\x63id\x18\x01 \x01(\tR\x03\x63id\x12.\n\x08provider\x18\x02 \x01(\x0b\x32\x12.diode.v1.ProviderR\x08provider\x12I\n\x10provider_account\x18\x03 \x01(\x0b\x32\x19.diode.v1.ProviderAccountH\x00R\x0fproviderAccount\x88\x01\x01\x12)\n\x04type\x18\x04 \x01(\x0b\x32\x15.diode.v1.CircuitTypeR\x04type\x12j\n\x06status\x18\x05 \x01(\tBM\xfa\x42JrHR\x06\x61\x63tiveR\x0e\x64\x65\x63ommissionedR\x0e\x64\x65provisioningR\x07offlineR\x07plannedR\x0cprovisioningH\x01R\x06status\x88\x01\x01\x12-\n\x06tenant\x18\x06 \x01(\x0b\x32\x10.diode.v1.TenantH\x02R\x06tenant\x88\x01\x01\x12\x42\n\x0cinstall_date\x18\x07 \x01(\x0b\x32\x1a.google.protobuf.TimestampH\x03R\x0binstallDate\x88\x01\x01\x12J\n\x10termination_date\x18\x08 \x01(\x0b\x32\x1a.google.protobuf.TimestampH\x04R\x0fterminationDate\x88\x01\x01\x12$\n\x0b\x63ommit_rate\x18\t \x01(\x03H\x05R\ncommitRate\x88\x01\x01\x12%\n\x0b\x64\x65scription\x18\n \x01(\tH\x06R\x0b\x64\x65scription\x88\x01\x01\x12\x1f\n\x08\x64istance\x18\x0b \x01(\x01H\x07R\x08\x64istance\x88\x01\x01\x12>\n\rdistance_unit\x18\x0c \x01(\tB\x14\xfa\x42\x11r\x0fR\x02\x66tR\x02kmR\x01mR\x02miH\x08R\x0c\x64istanceUnit\x88\x01\x01\x12\x1f\n\x08\x63omments\x18\r \x01(\tH\tR\x08\x63omments\x88\x01\x01\x12!\n\x04tags\x18\x0e \x03(\x0b\x32\r.diode.v1.TagR\x04tags\x12\x42\n\x0b\x61ssignments\x18\x0f \x03(\x0b\x32 .diode.v1.CircuitGroupAssignmentR\x0b\x61ssignments\x12H\n\rcustom_fields\x18\x10 \x03(\x0b\x32#.diode.v1.Circuit.CustomFieldsEntryR\x0c\x63ustomFields\x12\x39\n\x08metadata\x18\x11 \x01(\x0b\x32\x17.google.protobuf.StructB\x04\x88\xb5\x18\x00R\x08metadata\x12*\n\x05owner\x18\x12 \x01(\x0b\x32\x0f.diode.v1.OwnerH\nR\x05owner\x88\x01\x01\x1a[\n\x11\x43ustomFieldsEntry\x12\x10\n\x03key\x18\x01 \x01(\tR\x03key\x12\x30\n\x05value\x18\x02 \x01(\x0b\x32\x1a.diode.v1.CustomFieldValueR\x05value:\x02\x38\x01\x42\x13\n\x11_provider_accountB\t\n\x07_statusB\t\n\x07_tenantB\x0f\n\r_install_dateB\x13\n\x11_termination_dateB\x0e\n\x0c_commit_rateB\x0e\n\x0c_descriptionB\x0b\n\t_distanceB\x10\n\x0e_distance_unitB\x0b\n\t_commentsB\x08\n\x06_owner\"\x95\x04\n\x0c\x43ircuitGroup\x12\x12\n\x04name\x18\x01 \x01(\tR\x04name\x12\x12\n\x04slug\x18\x02 \x01(\tR\x04slug\x12%\n\x0b\x64\x65scription\x18\x03 \x01(\tH\x00R\x0b\x64\x65scription\x88\x01\x01\x12-\n\x06tenant\x18\x04 \x01(\x0b\x32\x10.diode.v1.TenantH\x01R\x06tenant\x88\x01\x01\x12!\n\x04tags\x18\x05 \x03(\x0b\x32\r.diode.v1.TagR\x04tags\x12M\n\rcustom_fields\x18\x06 \x03(\x0b\x32(.diode.v1.CircuitGroup.CustomFieldsEntryR\x0c\x63ustomFields\x12\x39\n\x08metadata\x18\x07 \x01(\x0b\x32\x17.google.protobuf.StructB\x04\x88\xb5\x18\x00R\x08metadata\x12*\n\x05owner\x18\x08 \x01(\x0b\x32\x0f.diode.v1.OwnerH\x02R\x05owner\x88\x01\x01\x12\x1f\n\x08\x63omments\x18\t \x01(\tH\x03R\x08\x63omments\x88\x01\x01\x1a[\n\x11\x43ustomFieldsEntry\x12\x10\n\x03key\x18\x01 \x01(\tR\x03key\x12\x30\n\x05value\x18\x02 \x01(\x0b\x32\x1a.diode.v1.CustomFieldValueR\x05value:\x02\x38\x01\x42\x0e\n\x0c_descriptionB\t\n\x07_tenantB\x08\n\x06_ownerB\x0b\n\t_comments\"\x99\x03\n\x16\x43ircuitGroupAssignment\x12,\n\x05group\x18\x01 \x01(\x0b\x32\x16.diode.v1.CircuitGroupR\x05group\x12:\n\x0emember_circuit\x18\x02 \x01(\x0b\x32\x11.diode.v1.CircuitH\x00R\rmemberCircuit\x12P\n\x16member_virtual_circuit\x18\x03 \x01(\x0b\x32\x18.diode.v1.VirtualCircuitH\x00R\x14memberVirtualCircuit\x12N\n\x08priority\x18\x04 \x01(\tB-\xfa\x42*r(R\x08inactiveR\x07primaryR\tsecondaryR\x08tertiaryH\x01R\x08priority\x88\x01\x01\x12!\n\x04tags\x18\x05 \x03(\x0b\x32\r.diode.v1.TagR\x04tags\x12\x39\n\x08metadata\x18\x06 \x01(\x0b\x32\x17.google.protobuf.StructB\x04\x88\xb5\x18\x00R\x08metadataB\x08\n\x06memberB\x0b\n\t_priority\"\xc7\x08\n\x12\x43ircuitTermination\x12+\n\x07\x63ircuit\x18\x01 \x01(\x0b\x32\x11.diode.v1.CircuitR\x07\x63ircuit\x12(\n\tterm_side\x18\x02 \x01(\tB\x0b\xfa\x42\x08r\x06R\x01\x41R\x01ZR\x08termSide\x12G\n\x14termination_location\x18\x03 \x01(\x0b\x32\x12.diode.v1.LocationH\x00R\x13terminationLocation\x12]\n\x1ctermination_provider_network\x18\x04 \x01(\x0b\x32\x19.diode.v1.ProviderNetworkH\x00R\x1aterminationProviderNetwork\x12\x41\n\x12termination_region\x18\x05 \x01(\x0b\x32\x10.diode.v1.RegionH\x00R\x11terminationRegion\x12;\n\x10termination_site\x18\x06 \x01(\x0b\x32\x0e.diode.v1.SiteH\x00R\x0fterminationSite\x12K\n\x16termination_site_group\x18\x07 \x01(\x0b\x32\x13.diode.v1.SiteGroupH\x00R\x14terminationSiteGroup\x12\"\n\nport_speed\x18\x08 \x01(\x03H\x01R\tportSpeed\x88\x01\x01\x12*\n\x0eupstream_speed\x18\t \x01(\x03H\x02R\rupstreamSpeed\x88\x01\x01\x12$\n\x0bxconnect_id\x18\n \x01(\tH\x03R\nxconnectId\x88\x01\x01\x12\x1c\n\x07pp_info\x18\x0b \x01(\tH\x04R\x06ppInfo\x88\x01\x01\x12%\n\x0b\x64\x65scription\x18\x0c \x01(\tH\x05R\x0b\x64\x65scription\x88\x01\x01\x12*\n\x0emark_connected\x18\r \x01(\x08H\x06R\rmarkConnected\x88\x01\x01\x12!\n\x04tags\x18\x0e \x03(\x0b\x32\r.diode.v1.TagR\x04tags\x12S\n\rcustom_fields\x18\x0f \x03(\x0b\x32..diode.v1.CircuitTermination.CustomFieldsEntryR\x0c\x63ustomFields\x12\x39\n\x08metadata\x18\x10 \x01(\x0b\x32\x17.google.protobuf.StructB\x04\x88\xb5\x18\x00R\x08metadata\x1a[\n\x11\x43ustomFieldsEntry\x12\x10\n\x03key\x18\x01 \x01(\tR\x03key\x12\x30\n\x05value\x18\x02 \x01(\x0b\x32\x1a.diode.v1.CustomFieldValueR\x05value:\x02\x38\x01\x42\r\n\x0bterminationB\r\n\x0b_port_speedB\x11\n\x0f_upstream_speedB\x0e\n\x0c_xconnect_idB\n\n\x08_pp_infoB\x0e\n\x0c_descriptionB\x11\n\x0f_mark_connected\"\xfe\x03\n\x0b\x43ircuitType\x12\x12\n\x04name\x18\x01 \x01(\tR\x04name\x12\x12\n\x04slug\x18\x02 \x01(\tR\x04slug\x12\x19\n\x05\x63olor\x18\x03 \x01(\tH\x00R\x05\x63olor\x88\x01\x01\x12%\n\x0b\x64\x65scription\x18\x04 \x01(\tH\x01R\x0b\x64\x65scription\x88\x01\x01\x12!\n\x04tags\x18\x05 \x03(\x0b\x32\r.diode.v1.TagR\x04tags\x12L\n\rcustom_fields\x18\x06 \x03(\x0b\x32\'.diode.v1.CircuitType.CustomFieldsEntryR\x0c\x63ustomFields\x12\x39\n\x08metadata\x18\x07 \x01(\x0b\x32\x17.google.protobuf.StructB\x04\x88\xb5\x18\x00R\x08metadata\x12*\n\x05owner\x18\x08 \x01(\x0b\x32\x0f.diode.v1.OwnerH\x02R\x05owner\x88\x01\x01\x12\x1f\n\x08\x63omments\x18\t \x01(\tH\x03R\x08\x63omments\x88\x01\x01\x1a[\n\x11\x43ustomFieldsEntry\x12\x10\n\x03key\x18\x01 \x01(\tR\x03key\x12\x30\n\x05value\x18\x02 \x01(\x0b\x32\x1a.diode.v1.CustomFieldValueR\x05value:\x02\x38\x01\x42\x08\n\x06_colorB\x0e\n\x0c_descriptionB\x08\n\x06_ownerB\x0b\n\t_comments\"\xb1\x07\n\x07\x43luster\x12\x12\n\x04name\x18\x01 \x01(\tR\x04name\x12)\n\x04type\x18\x02 \x01(\x0b\x32\x15.diode.v1.ClusterTypeR\x04type\x12\x31\n\x05group\x18\x03 \x01(\x0b\x32\x16.diode.v1.ClusterGroupH\x01R\x05group\x88\x01\x01\x12V\n\x06status\x18\x04 \x01(\tB9\xfa\x42\x36r4R\x06\x61\x63tiveR\x0f\x64\x65\x63ommissioningR\x07offlineR\x07plannedR\x07stagingH\x02R\x06status\x88\x01\x01\x12-\n\x06tenant\x18\x05 \x01(\x0b\x32\x10.diode.v1.TenantH\x03R\x06tenant\x88\x01\x01\x12;\n\x0escope_location\x18\x06 \x01(\x0b\x32\x12.diode.v1.LocationH\x00R\rscopeLocation\x12\x35\n\x0cscope_region\x18\x07 \x01(\x0b\x32\x10.diode.v1.RegionH\x00R\x0bscopeRegion\x12/\n\nscope_site\x18\x08 \x01(\x0b\x32\x0e.diode.v1.SiteH\x00R\tscopeSite\x12?\n\x10scope_site_group\x18\t \x01(\x0b\x32\x13.diode.v1.SiteGroupH\x00R\x0escopeSiteGroup\x12%\n\x0b\x64\x65scription\x18\n \x01(\tH\x04R\x0b\x64\x65scription\x88\x01\x01\x12\x1f\n\x08\x63omments\x18\x0b \x01(\tH\x05R\x08\x63omments\x88\x01\x01\x12!\n\x04tags\x18\x0c \x03(\x0b\x32\r.diode.v1.TagR\x04tags\x12H\n\rcustom_fields\x18\r \x03(\x0b\x32#.diode.v1.Cluster.CustomFieldsEntryR\x0c\x63ustomFields\x12\x39\n\x08metadata\x18\x0e \x01(\x0b\x32\x17.google.protobuf.StructB\x04\x88\xb5\x18\x00R\x08metadata\x12*\n\x05owner\x18\x0f \x01(\x0b\x32\x0f.diode.v1.OwnerH\x06R\x05owner\x88\x01\x01\x1a[\n\x11\x43ustomFieldsEntry\x12\x10\n\x03key\x18\x01 \x01(\tR\x03key\x12\x30\n\x05value\x18\x02 \x01(\x0b\x32\x1a.diode.v1.CustomFieldValueR\x05value:\x02\x38\x01\x42\x07\n\x05scopeB\x08\n\x06_groupB\t\n\x07_statusB\t\n\x07_tenantB\x0e\n\x0c_descriptionB\x0b\n\t_commentsB\x08\n\x06_owner\"\xdb\x03\n\x0c\x43lusterGroup\x12\x12\n\x04name\x18\x01 \x01(\tR\x04name\x12\x12\n\x04slug\x18\x02 \x01(\tR\x04slug\x12%\n\x0b\x64\x65scription\x18\x03 \x01(\tH\x00R\x0b\x64\x65scription\x88\x01\x01\x12!\n\x04tags\x18\x04 \x03(\x0b\x32\r.diode.v1.TagR\x04tags\x12M\n\rcustom_fields\x18\x05 \x03(\x0b\x32(.diode.v1.ClusterGroup.CustomFieldsEntryR\x0c\x63ustomFields\x12\x39\n\x08metadata\x18\x06 \x01(\x0b\x32\x17.google.protobuf.StructB\x04\x88\xb5\x18\x00R\x08metadata\x12*\n\x05owner\x18\x07 \x01(\x0b\x32\x0f.diode.v1.OwnerH\x01R\x05owner\x88\x01\x01\x12\x1f\n\x08\x63omments\x18\x08 \x01(\tH\x02R\x08\x63omments\x88\x01\x01\x1a[\n\x11\x43ustomFieldsEntry\x12\x10\n\x03key\x18\x01 \x01(\tR\x03key\x12\x30\n\x05value\x18\x02 \x01(\x0b\x32\x1a.diode.v1.CustomFieldValueR\x05value:\x02\x38\x01\x42\x0e\n\x0c_descriptionB\x08\n\x06_ownerB\x0b\n\t_comments\"\xd9\x03\n\x0b\x43lusterType\x12\x12\n\x04name\x18\x01 \x01(\tR\x04name\x12\x12\n\x04slug\x18\x02 \x01(\tR\x04slug\x12%\n\x0b\x64\x65scription\x18\x03 \x01(\tH\x00R\x0b\x64\x65scription\x88\x01\x01\x12!\n\x04tags\x18\x04 \x03(\x0b\x32\r.diode.v1.TagR\x04tags\x12L\n\rcustom_fields\x18\x05 \x03(\x0b\x32\'.diode.v1.ClusterType.CustomFieldsEntryR\x0c\x63ustomFields\x12\x39\n\x08metadata\x18\x06 \x01(\x0b\x32\x17.google.protobuf.StructB\x04\x88\xb5\x18\x00R\x08metadata\x12*\n\x05owner\x18\x07 \x01(\x0b\x32\x0f.diode.v1.OwnerH\x01R\x05owner\x88\x01\x01\x12\x1f\n\x08\x63omments\x18\x08 \x01(\tH\x02R\x08\x63omments\x88\x01\x01\x1a[\n\x11\x43ustomFieldsEntry\x12\x10\n\x03key\x18\x01 \x01(\tR\x03key\x12\x30\n\x05value\x18\x02 \x01(\x0b\x32\x1a.diode.v1.CustomFieldValueR\x05value:\x02\x38\x01\x42\x0e\n\x0c_descriptionB\x08\n\x06_ownerB\x0b\n\t_comments\"\xde\x06\n\x0b\x43onsolePort\x12(\n\x06\x64\x65vice\x18\x01 \x01(\x0b\x32\x10.diode.v1.DeviceR\x06\x64\x65vice\x12-\n\x06module\x18\x02 \x01(\x0b\x32\x10.diode.v1.ModuleH\x00R\x06module\x88\x01\x01\x12\x12\n\x04name\x18\x03 \x01(\tR\x04name\x12\x19\n\x05label\x18\x04 \x01(\tH\x01R\x05label\x88\x01\x01\x12\xab\x01\n\x04type\x18\x05 \x01(\tB\x91\x01\xfa\x42\x8d\x01r\x8a\x01R\x05\x64\x62-25R\x04\x64\x65-9R\nmini-din-8R\x05otherR\x05rj-11R\x05rj-12R\x05rj-45R\x05usb-aR\x05usb-bR\x05usb-cR\x0busb-micro-aR\x0cusb-micro-abR\x0busb-micro-bR\nusb-mini-aR\nusb-mini-bH\x02R\x04type\x88\x01\x01\x12<\n\x05speed\x18\x06 \x01(\x03\x42!\xfa\x42\x1e\"\x1c\x30\xb0\t0\xe0\x12\x30\xc0%0\x80K0\x80\x96\x01\x30\x80\xac\x02\x30\x80\xc2\x03\x30\x80\x84\x07H\x03R\x05speed\x88\x01\x01\x12%\n\x0b\x64\x65scription\x18\x07 \x01(\tH\x04R\x0b\x64\x65scription\x88\x01\x01\x12*\n\x0emark_connected\x18\x08 \x01(\x08H\x05R\rmarkConnected\x88\x01\x01\x12!\n\x04tags\x18\t \x03(\x0b\x32\r.diode.v1.TagR\x04tags\x12L\n\rcustom_fields\x18\n \x03(\x0b\x32\'.diode.v1.ConsolePort.CustomFieldsEntryR\x0c\x63ustomFields\x12\x39\n\x08metadata\x18\x0b \x01(\x0b\x32\x17.google.protobuf.StructB\x04\x88\xb5\x18\x00R\x08metadata\x12*\n\x05owner\x18\x0c \x01(\x0b\x32\x0f.diode.v1.OwnerH\x06R\x05owner\x88\x01\x01\x1a[\n\x11\x43ustomFieldsEntry\x12\x10\n\x03key\x18\x01 \x01(\tR\x03key\x12\x30\n\x05value\x18\x02 \x01(\x0b\x32\x1a.diode.v1.CustomFieldValueR\x05value:\x02\x38\x01\x42\t\n\x07_moduleB\x08\n\x06_labelB\x07\n\x05_typeB\x08\n\x06_speedB\x0e\n\x0c_descriptionB\x11\n\x0f_mark_connectedB\x08\n\x06_owner\"\xea\x06\n\x11\x43onsoleServerPort\x12(\n\x06\x64\x65vice\x18\x01 \x01(\x0b\x32\x10.diode.v1.DeviceR\x06\x64\x65vice\x12-\n\x06module\x18\x02 \x01(\x0b\x32\x10.diode.v1.ModuleH\x00R\x06module\x88\x01\x01\x12\x12\n\x04name\x18\x03 \x01(\tR\x04name\x12\x19\n\x05label\x18\x04 \x01(\tH\x01R\x05label\x88\x01\x01\x12\xab\x01\n\x04type\x18\x05 \x01(\tB\x91\x01\xfa\x42\x8d\x01r\x8a\x01R\x05\x64\x62-25R\x04\x64\x65-9R\nmini-din-8R\x05otherR\x05rj-11R\x05rj-12R\x05rj-45R\x05usb-aR\x05usb-bR\x05usb-cR\x0busb-micro-aR\x0cusb-micro-abR\x0busb-micro-bR\nusb-mini-aR\nusb-mini-bH\x02R\x04type\x88\x01\x01\x12<\n\x05speed\x18\x06 \x01(\x03\x42!\xfa\x42\x1e\"\x1c\x30\xb0\t0\xe0\x12\x30\xc0%0\x80K0\x80\x96\x01\x30\x80\xac\x02\x30\x80\xc2\x03\x30\x80\x84\x07H\x03R\x05speed\x88\x01\x01\x12%\n\x0b\x64\x65scription\x18\x07 \x01(\tH\x04R\x0b\x64\x65scription\x88\x01\x01\x12*\n\x0emark_connected\x18\x08 \x01(\x08H\x05R\rmarkConnected\x88\x01\x01\x12!\n\x04tags\x18\t \x03(\x0b\x32\r.diode.v1.TagR\x04tags\x12R\n\rcustom_fields\x18\n \x03(\x0b\x32-.diode.v1.ConsoleServerPort.CustomFieldsEntryR\x0c\x63ustomFields\x12\x39\n\x08metadata\x18\x0b \x01(\x0b\x32\x17.google.protobuf.StructB\x04\x88\xb5\x18\x00R\x08metadata\x12*\n\x05owner\x18\x0c \x01(\x0b\x32\x0f.diode.v1.OwnerH\x06R\x05owner\x88\x01\x01\x1a[\n\x11\x43ustomFieldsEntry\x12\x10\n\x03key\x18\x01 \x01(\tR\x03key\x12\x30\n\x05value\x18\x02 \x01(\x0b\x32\x1a.diode.v1.CustomFieldValueR\x05value:\x02\x38\x01\x42\t\n\x07_moduleB\x08\n\x06_labelB\x07\n\x05_typeB\x08\n\x06_speedB\x0e\n\x0c_descriptionB\x11\n\x0f_mark_connectedB\x08\n\x06_owner\"\xea\x05\n\x07\x43ontact\x12\x35\n\x05group\x18\x01 \x01(\x0b\x32\x16.diode.v1.ContactGroupB\x02\x18\x01H\x00R\x05group\x88\x01\x01\x12\x12\n\x04name\x18\x02 \x01(\tR\x04name\x12\x19\n\x05title\x18\x03 \x01(\tH\x01R\x05title\x88\x01\x01\x12\x19\n\x05phone\x18\x04 \x01(\tH\x02R\x05phone\x88\x01\x01\x12\x19\n\x05\x65mail\x18\x05 \x01(\tH\x03R\x05\x65mail\x88\x01\x01\x12\x1d\n\x07\x61\x64\x64ress\x18\x06 \x01(\tH\x04R\x07\x61\x64\x64ress\x88\x01\x01\x12\x17\n\x04link\x18\x07 \x01(\tH\x05R\x04link\x88\x01\x01\x12%\n\x0b\x64\x65scription\x18\x08 \x01(\tH\x06R\x0b\x64\x65scription\x88\x01\x01\x12\x1f\n\x08\x63omments\x18\t \x01(\tH\x07R\x08\x63omments\x88\x01\x01\x12!\n\x04tags\x18\n \x03(\x0b\x32\r.diode.v1.TagR\x04tags\x12H\n\rcustom_fields\x18\x0b \x03(\x0b\x32#.diode.v1.Contact.CustomFieldsEntryR\x0c\x63ustomFields\x12.\n\x06groups\x18\x0c \x03(\x0b\x32\x16.diode.v1.ContactGroupR\x06groups\x12\x39\n\x08metadata\x18\r \x01(\x0b\x32\x17.google.protobuf.StructB\x04\x88\xb5\x18\x00R\x08metadata\x12*\n\x05owner\x18\x0e \x01(\x0b\x32\x0f.diode.v1.OwnerH\x08R\x05owner\x88\x01\x01\x1a[\n\x11\x43ustomFieldsEntry\x12\x10\n\x03key\x18\x01 \x01(\tR\x03key\x12\x30\n\x05value\x18\x02 \x01(\x0b\x32\x1a.diode.v1.CustomFieldValueR\x05value:\x02\x38\x01\x42\x08\n\x06_groupB\x08\n\x06_titleB\x08\n\x06_phoneB\x08\n\x06_emailB\n\n\x08_addressB\x07\n\x05_linkB\x0e\n\x0c_descriptionB\x0b\n\t_commentsB\x08\n\x06_owner\"\xb0?\n\x11\x43ontactAssignment\x12.\n\nobject_asn\x18\x01 \x01(\x0b\x32\r.diode.v1.ASNH\x00R\tobjectAsn\x12>\n\x10object_asn_range\x18\x02 \x01(\x0b\x32\x12.diode.v1.ASNRangeH\x00R\x0eobjectAsnRange\x12@\n\x10object_aggregate\x18\x03 \x01(\x0b\x32\x13.diode.v1.AggregateH\x00R\x0fobjectAggregate\x12\x34\n\x0cobject_cable\x18\x04 \x01(\x0b\x32\x0f.diode.v1.CableH\x00R\x0bobjectCable\x12\x41\n\x11object_cable_path\x18\x05 \x01(\x0b\x32\x13.diode.v1.CablePathH\x00R\x0fobjectCablePath\x12Z\n\x18object_cable_termination\x18\x06 \x01(\x0b\x32\x1a.diode.v1.CableTerminationB\x02\x18\x01H\x00R\x16objectCableTermination\x12:\n\x0eobject_circuit\x18\x07 \x01(\x0b\x32\x11.diode.v1.CircuitH\x00R\robjectCircuit\x12J\n\x14object_circuit_group\x18\x08 \x01(\x0b\x32\x16.diode.v1.CircuitGroupH\x00R\x12objectCircuitGroup\x12i\n\x1fobject_circuit_group_assignment\x18\t \x01(\x0b\x32 .diode.v1.CircuitGroupAssignmentH\x00R\x1cobjectCircuitGroupAssignment\x12\\\n\x1aobject_circuit_termination\x18\n \x01(\x0b\x32\x1c.diode.v1.CircuitTerminationH\x00R\x18objectCircuitTermination\x12G\n\x13object_circuit_type\x18\x0b \x01(\x0b\x32\x15.diode.v1.CircuitTypeH\x00R\x11objectCircuitType\x12:\n\x0eobject_cluster\x18\x0c \x01(\x0b\x32\x11.diode.v1.ClusterH\x00R\robjectCluster\x12J\n\x14object_cluster_group\x18\r \x01(\x0b\x32\x16.diode.v1.ClusterGroupH\x00R\x12objectClusterGroup\x12G\n\x13object_cluster_type\x18\x0e \x01(\x0b\x32\x15.diode.v1.ClusterTypeH\x00R\x11objectClusterType\x12G\n\x13object_console_port\x18\x0f \x01(\x0b\x32\x15.diode.v1.ConsolePortH\x00R\x11objectConsolePort\x12Z\n\x1aobject_console_server_port\x18\x10 \x01(\x0b\x32\x1b.diode.v1.ConsoleServerPortH\x00R\x17objectConsoleServerPort\x12:\n\x0eobject_contact\x18\x11 \x01(\x0b\x32\x11.diode.v1.ContactH\x00R\robjectContact\x12Y\n\x19object_contact_assignment\x18\x12 \x01(\x0b\x32\x1b.diode.v1.ContactAssignmentH\x00R\x17objectContactAssignment\x12J\n\x14object_contact_group\x18\x13 \x01(\x0b\x32\x16.diode.v1.ContactGroupH\x00R\x12objectContactGroup\x12G\n\x13object_contact_role\x18\x14 \x01(\x0b\x32\x15.diode.v1.ContactRoleH\x00R\x11objectContactRole\x12\x37\n\robject_device\x18\x15 \x01(\x0b\x32\x10.diode.v1.DeviceH\x00R\x0cobjectDevice\x12\x41\n\x11object_device_bay\x18\x16 \x01(\x0b\x32\x13.diode.v1.DeviceBayH\x00R\x0fobjectDeviceBay\x12\x44\n\x12object_device_role\x18\x17 \x01(\x0b\x32\x14.diode.v1.DeviceRoleH\x00R\x10objectDeviceRole\x12\x44\n\x12object_device_type\x18\x18 \x01(\x0b\x32\x14.diode.v1.DeviceTypeH\x00R\x10objectDeviceType\x12\x41\n\x11object_fhrp_group\x18\x19 \x01(\x0b\x32\x13.diode.v1.FHRPGroupH\x00R\x0fobjectFhrpGroup\x12`\n\x1cobject_fhrp_group_assignment\x18\x1a \x01(\x0b\x32\x1d.diode.v1.FHRPGroupAssignmentH\x00R\x19objectFhrpGroupAssignment\x12\x41\n\x11object_front_port\x18\x1b \x01(\x0b\x32\x13.diode.v1.FrontPortH\x00R\x0fobjectFrontPort\x12\x41\n\x11object_ike_policy\x18\x1c \x01(\x0b\x32\x13.diode.v1.IKEPolicyH\x00R\x0fobjectIkePolicy\x12G\n\x13object_ike_proposal\x18\x1d \x01(\x0b\x32\x15.diode.v1.IKEProposalH\x00R\x11objectIkeProposal\x12\x41\n\x11object_ip_address\x18\x1e \x01(\x0b\x32\x13.diode.v1.IPAddressH\x00R\x0fobjectIpAddress\x12;\n\x0fobject_ip_range\x18\x1f \x01(\x0b\x32\x11.diode.v1.IPRangeH\x00R\robjectIpRange\x12H\n\x14object_ip_sec_policy\x18 \x01(\x0b\x32\x15.diode.v1.IPSecPolicyH\x00R\x11objectIpSecPolicy\x12K\n\x15object_ip_sec_profile\x18! \x01(\x0b\x32\x16.diode.v1.IPSecProfileH\x00R\x12objectIpSecProfile\x12N\n\x16object_ip_sec_proposal\x18\" \x01(\x0b\x32\x17.diode.v1.IPSecProposalH\x00R\x13objectIpSecProposal\x12@\n\x10object_interface\x18# \x01(\x0b\x32\x13.diode.v1.InterfaceH\x00R\x0fobjectInterface\x12M\n\x15object_inventory_item\x18$ \x01(\x0b\x32\x17.diode.v1.InventoryItemH\x00R\x13objectInventoryItem\x12Z\n\x1aobject_inventory_item_role\x18% \x01(\x0b\x32\x1b.diode.v1.InventoryItemRoleH\x00R\x17objectInventoryItemRole\x12\x34\n\x0cobject_l2vpn\x18& \x01(\x0b\x32\x0f.diode.v1.L2VPNH\x00R\x0bobjectL2vpn\x12V\n\x18object_l2vpn_termination\x18\' \x01(\x0b\x32\x1a.diode.v1.L2VPNTerminationH\x00R\x16objectL2vpnTermination\x12=\n\x0fobject_location\x18( \x01(\x0b\x32\x12.diode.v1.LocationH\x00R\x0eobjectLocation\x12\x44\n\x12object_mac_address\x18) \x01(\x0b\x32\x14.diode.v1.MACAddressH\x00R\x10objectMacAddress\x12I\n\x13object_manufacturer\x18* \x01(\x0b\x32\x16.diode.v1.ManufacturerH\x00R\x12objectManufacturer\x12\x37\n\robject_module\x18+ \x01(\x0b\x32\x10.diode.v1.ModuleH\x00R\x0cobjectModule\x12\x41\n\x11object_module_bay\x18, \x01(\x0b\x32\x13.diode.v1.ModuleBayH\x00R\x0fobjectModuleBay\x12\x44\n\x12object_module_type\x18- \x01(\x0b\x32\x14.diode.v1.ModuleTypeH\x00R\x10objectModuleType\x12=\n\x0fobject_platform\x18. \x01(\x0b\x32\x12.diode.v1.PlatformH\x00R\x0eobjectPlatform\x12\x41\n\x11object_power_feed\x18/ \x01(\x0b\x32\x13.diode.v1.PowerFeedH\x00R\x0fobjectPowerFeed\x12G\n\x13object_power_outlet\x18\x30 \x01(\x0b\x32\x15.diode.v1.PowerOutletH\x00R\x11objectPowerOutlet\x12\x44\n\x12object_power_panel\x18\x31 \x01(\x0b\x32\x14.diode.v1.PowerPanelH\x00R\x10objectPowerPanel\x12\x41\n\x11object_power_port\x18\x32 \x01(\x0b\x32\x13.diode.v1.PowerPortH\x00R\x0fobjectPowerPort\x12\x37\n\robject_prefix\x18\x33 \x01(\x0b\x32\x10.diode.v1.PrefixH\x00R\x0cobjectPrefix\x12=\n\x0fobject_provider\x18\x34 \x01(\x0b\x32\x12.diode.v1.ProviderH\x00R\x0eobjectProvider\x12S\n\x17object_provider_account\x18\x35 \x01(\x0b\x32\x19.diode.v1.ProviderAccountH\x00R\x15objectProviderAccount\x12S\n\x17object_provider_network\x18\x36 \x01(\x0b\x32\x19.diode.v1.ProviderNetworkH\x00R\x15objectProviderNetwork\x12.\n\nobject_rir\x18\x37 \x01(\x0b\x32\r.diode.v1.RIRH\x00R\tobjectRir\x12\x31\n\x0bobject_rack\x18\x38 \x01(\x0b\x32\x0e.diode.v1.RackH\x00R\nobjectRack\x12S\n\x17object_rack_reservation\x18\x39 \x01(\x0b\x32\x19.diode.v1.RackReservationH\x00R\x15objectRackReservation\x12>\n\x10object_rack_role\x18: \x01(\x0b\x32\x12.diode.v1.RackRoleH\x00R\x0eobjectRackRole\x12>\n\x10object_rack_type\x18; \x01(\x0b\x32\x12.diode.v1.RackTypeH\x00R\x0eobjectRackType\x12>\n\x10object_rear_port\x18< \x01(\x0b\x32\x12.diode.v1.RearPortH\x00R\x0eobjectRearPort\x12\x37\n\robject_region\x18= \x01(\x0b\x32\x10.diode.v1.RegionH\x00R\x0cobjectRegion\x12\x31\n\x0bobject_role\x18> \x01(\x0b\x32\x0e.diode.v1.RoleH\x00R\nobjectRole\x12G\n\x13object_route_target\x18? \x01(\x0b\x32\x15.diode.v1.RouteTargetH\x00R\x11objectRouteTarget\x12:\n\x0eobject_service\x18@ \x01(\x0b\x32\x11.diode.v1.ServiceH\x00R\robjectService\x12\x31\n\x0bobject_site\x18\x41 \x01(\x0b\x32\x0e.diode.v1.SiteH\x00R\nobjectSite\x12\x41\n\x11object_site_group\x18\x42 \x01(\x0b\x32\x13.diode.v1.SiteGroupH\x00R\x0fobjectSiteGroup\x12.\n\nobject_tag\x18\x43 \x01(\x0b\x32\r.diode.v1.TagH\x00R\tobjectTag\x12\x37\n\robject_tenant\x18\x44 \x01(\x0b\x32\x10.diode.v1.TenantH\x00R\x0cobjectTenant\x12G\n\x13object_tenant_group\x18\x45 \x01(\x0b\x32\x15.diode.v1.TenantGroupH\x00R\x11objectTenantGroup\x12\x37\n\robject_tunnel\x18\x46 \x01(\x0b\x32\x10.diode.v1.TunnelH\x00R\x0cobjectTunnel\x12G\n\x13object_tunnel_group\x18G \x01(\x0b\x32\x15.diode.v1.TunnelGroupH\x00R\x11objectTunnelGroup\x12Y\n\x19object_tunnel_termination\x18H \x01(\x0b\x32\x1b.diode.v1.TunnelTerminationH\x00R\x17objectTunnelTermination\x12\x31\n\x0bobject_vlan\x18I \x01(\x0b\x32\x0e.diode.v1.VLANH\x00R\nobjectVlan\x12\x41\n\x11object_vlan_group\x18J \x01(\x0b\x32\x13.diode.v1.VLANGroupH\x00R\x0fobjectVlanGroup\x12\x66\n\x1eobject_vlan_translation_policy\x18K \x01(\x0b\x32\x1f.diode.v1.VLANTranslationPolicyH\x00R\x1bobjectVlanTranslationPolicy\x12`\n\x1cobject_vlan_translation_rule\x18L \x01(\x0b\x32\x1d.diode.v1.VLANTranslationRuleH\x00R\x19objectVlanTranslationRule\x12G\n\x13object_vm_interface\x18M \x01(\x0b\x32\x15.diode.v1.VMInterfaceH\x00R\x11objectVmInterface\x12.\n\nobject_vrf\x18N \x01(\x0b\x32\r.diode.v1.VRFH\x00R\tobjectVrf\x12P\n\x16object_virtual_chassis\x18O \x01(\x0b\x32\x18.diode.v1.VirtualChassisH\x00R\x14objectVirtualChassis\x12P\n\x16object_virtual_circuit\x18P \x01(\x0b\x32\x18.diode.v1.VirtualCircuitH\x00R\x14objectVirtualCircuit\x12r\n\"object_virtual_circuit_termination\x18Q \x01(\x0b\x32#.diode.v1.VirtualCircuitTerminationH\x00R\x1fobjectVirtualCircuitTermination\x12]\n\x1bobject_virtual_circuit_type\x18R \x01(\x0b\x32\x1c.diode.v1.VirtualCircuitTypeH\x00R\x18objectVirtualCircuitType\x12\x63\n\x1dobject_virtual_device_context\x18S \x01(\x0b\x32\x1e.diode.v1.VirtualDeviceContextH\x00R\x1aobjectVirtualDeviceContext\x12G\n\x13object_virtual_disk\x18T \x01(\x0b\x32\x15.diode.v1.VirtualDiskH\x00R\x11objectVirtualDisk\x12P\n\x16object_virtual_machine\x18U \x01(\x0b\x32\x18.diode.v1.VirtualMachineH\x00R\x14objectVirtualMachine\x12G\n\x13object_wireless_lan\x18V \x01(\x0b\x32\x15.diode.v1.WirelessLANH\x00R\x11objectWirelessLan\x12W\n\x19object_wireless_lan_group\x18W \x01(\x0b\x32\x1a.diode.v1.WirelessLANGroupH\x00R\x16objectWirelessLanGroup\x12J\n\x14object_wireless_link\x18X \x01(\x0b\x32\x16.diode.v1.WirelessLinkH\x00R\x12objectWirelessLink\x12G\n\x13object_custom_field\x18^ \x01(\x0b\x32\x15.diode.v1.CustomFieldH\x00R\x11objectCustomField\x12\x64\n\x1eobject_custom_field_choice_set\x18_ \x01(\x0b\x32\x1e.diode.v1.CustomFieldChoiceSetH\x00R\x1aobjectCustomFieldChoiceSet\x12J\n\x14object_journal_entry\x18` \x01(\x0b\x32\x16.diode.v1.JournalEntryH\x00R\x12objectJournalEntry\x12Z\n\x1aobject_module_type_profile\x18\x61 \x01(\x0b\x32\x1b.diode.v1.ModuleTypeProfileH\x00R\x17objectModuleTypeProfile\x12\x44\n\x12object_custom_link\x18\x62 \x01(\x0b\x32\x14.diode.v1.CustomLinkH\x00R\x10objectCustomLink\x12\x34\n\x0cobject_owner\x18\x64 \x01(\x0b\x32\x0f.diode.v1.OwnerH\x00R\x0bobjectOwner\x12\x44\n\x12object_owner_group\x18\x65 \x01(\x0b\x32\x14.diode.v1.OwnerGroupH\x00R\x10objectOwnerGroup\x12G\n\x13object_cable_bundle\x18\x66 \x01(\x0b\x32\x15.diode.v1.CableBundleH\x00R\x11objectCableBundle\x12\x41\n\x11object_rack_group\x18g \x01(\x0b\x32\x13.diode.v1.RackGroupH\x00R\x0fobjectRackGroup\x12J\n\x14object_script_module\x18h \x01(\x0b\x32\x16.diode.v1.ScriptModuleH\x00R\x12objectScriptModule\x12]\n\x1bobject_virtual_machine_type\x18i \x01(\x0b\x32\x1c.diode.v1.VirtualMachineTypeH\x00R\x18objectVirtualMachineType\x12\x31\n\x0bobject_user\x18j \x01(\x0b\x32\x0e.diode.v1.UserH\x00R\nobjectUser\x12G\n\x13object_cooling_feed\x18k \x01(\x0b\x32\x15.diode.v1.CoolingFeedH\x00R\x11objectCoolingFeed\x12M\n\x15object_cooling_intake\x18l \x01(\x0b\x32\x17.diode.v1.CoolingIntakeH\x00R\x13objectCoolingIntake\x12P\n\x16object_cooling_outflow\x18m \x01(\x0b\x32\x18.diode.v1.CoolingOutflowH\x00R\x14objectCoolingOutflow\x12M\n\x15object_cooling_source\x18n \x01(\x0b\x32\x17.diode.v1.CoolingSourceH\x00R\x13objectCoolingSource\x12N\n\x16object_module_bay_type\x18o \x01(\x0b\x32\x17.diode.v1.ModuleBayTypeH\x00R\x13objectModuleBayType\x12+\n\x07\x63ontact\x18Y \x01(\x0b\x32\x11.diode.v1.ContactR\x07\x63ontact\x12.\n\x04role\x18Z \x01(\x0b\x32\x15.diode.v1.ContactRoleH\x01R\x04role\x88\x01\x01\x12N\n\x08priority\x18[ \x01(\tB-\xfa\x42*r(R\x08inactiveR\x07primaryR\tsecondaryR\x08tertiaryH\x02R\x08priority\x88\x01\x01\x12!\n\x04tags\x18\\ \x03(\x0b\x32\r.diode.v1.TagR\x04tags\x12R\n\rcustom_fields\x18] \x03(\x0b\x32-.diode.v1.ContactAssignment.CustomFieldsEntryR\x0c\x63ustomFields\x12\x39\n\x08metadata\x18\x63 \x01(\x0b\x32\x17.google.protobuf.StructB\x04\x88\xb5\x18\x00R\x08metadata\x1a[\n\x11\x43ustomFieldsEntry\x12\x10\n\x03key\x18\x01 \x01(\tR\x03key\x12\x30\n\x05value\x18\x02 \x01(\x0b\x32\x1a.diode.v1.CustomFieldValueR\x05value:\x02\x38\x01\x42\x08\n\x06objectB\x07\n\x05_roleB\x0b\n\t_priority\"\x9b\x04\n\x0c\x43ontactGroup\x12\x12\n\x04name\x18\x01 \x01(\tR\x04name\x12\x12\n\x04slug\x18\x02 \x01(\tR\x04slug\x12\x33\n\x06parent\x18\x03 \x01(\x0b\x32\x16.diode.v1.ContactGroupH\x00R\x06parent\x88\x01\x01\x12%\n\x0b\x64\x65scription\x18\x04 \x01(\tH\x01R\x0b\x64\x65scription\x88\x01\x01\x12!\n\x04tags\x18\x05 \x03(\x0b\x32\r.diode.v1.TagR\x04tags\x12M\n\rcustom_fields\x18\x06 \x03(\x0b\x32(.diode.v1.ContactGroup.CustomFieldsEntryR\x0c\x63ustomFields\x12\x1f\n\x08\x63omments\x18\x07 \x01(\tH\x02R\x08\x63omments\x88\x01\x01\x12\x39\n\x08metadata\x18\x08 \x01(\x0b\x32\x17.google.protobuf.StructB\x04\x88\xb5\x18\x00R\x08metadata\x12*\n\x05owner\x18\t \x01(\x0b\x32\x0f.diode.v1.OwnerH\x03R\x05owner\x88\x01\x01\x1a[\n\x11\x43ustomFieldsEntry\x12\x10\n\x03key\x18\x01 \x01(\tR\x03key\x12\x30\n\x05value\x18\x02 \x01(\x0b\x32\x1a.diode.v1.CustomFieldValueR\x05value:\x02\x38\x01\x42\t\n\x07_parentB\x0e\n\x0c_descriptionB\x0b\n\t_commentsB\x08\n\x06_owner\"\xd9\x03\n\x0b\x43ontactRole\x12\x12\n\x04name\x18\x01 \x01(\tR\x04name\x12\x12\n\x04slug\x18\x02 \x01(\tR\x04slug\x12%\n\x0b\x64\x65scription\x18\x03 \x01(\tH\x00R\x0b\x64\x65scription\x88\x01\x01\x12!\n\x04tags\x18\x04 \x03(\x0b\x32\r.diode.v1.TagR\x04tags\x12L\n\rcustom_fields\x18\x05 \x03(\x0b\x32\'.diode.v1.ContactRole.CustomFieldsEntryR\x0c\x63ustomFields\x12\x39\n\x08metadata\x18\x06 \x01(\x0b\x32\x17.google.protobuf.StructB\x04\x88\xb5\x18\x00R\x08metadata\x12*\n\x05owner\x18\x07 \x01(\x0b\x32\x0f.diode.v1.OwnerH\x01R\x05owner\x88\x01\x01\x12\x1f\n\x08\x63omments\x18\x08 \x01(\tH\x02R\x08\x63omments\x88\x01\x01\x1a[\n\x11\x43ustomFieldsEntry\x12\x10\n\x03key\x18\x01 \x01(\tR\x03key\x12\x30\n\x05value\x18\x02 \x01(\x0b\x32\x1a.diode.v1.CustomFieldValueR\x05value:\x02\x38\x01\x42\x0e\n\x0c_descriptionB\x08\n\x06_ownerB\x0b\n\t_comments\"\x92\x31\n\x1a\x43ustomFieldObjectReference\x12!\n\x03\x61sn\x18\x01 \x01(\x0b\x32\r.diode.v1.ASNH\x00R\x03\x61sn\x12\x31\n\tasn_range\x18\x02 \x01(\x0b\x32\x12.diode.v1.ASNRangeH\x00R\x08\x61snRange\x12\x33\n\taggregate\x18\x03 \x01(\x0b\x32\x13.diode.v1.AggregateH\x00R\taggregate\x12\'\n\x05\x63\x61\x62le\x18\x04 \x01(\x0b\x32\x0f.diode.v1.CableH\x00R\x05\x63\x61\x62le\x12\x34\n\ncable_path\x18\x05 \x01(\x0b\x32\x13.diode.v1.CablePathH\x00R\tcablePath\x12M\n\x11\x63\x61\x62le_termination\x18\x06 \x01(\x0b\x32\x1a.diode.v1.CableTerminationB\x02\x18\x01H\x00R\x10\x63\x61\x62leTermination\x12-\n\x07\x63ircuit\x18\x07 \x01(\x0b\x32\x11.diode.v1.CircuitH\x00R\x07\x63ircuit\x12=\n\rcircuit_group\x18\x08 \x01(\x0b\x32\x16.diode.v1.CircuitGroupH\x00R\x0c\x63ircuitGroup\x12\\\n\x18\x63ircuit_group_assignment\x18\t \x01(\x0b\x32 .diode.v1.CircuitGroupAssignmentH\x00R\x16\x63ircuitGroupAssignment\x12O\n\x13\x63ircuit_termination\x18\n \x01(\x0b\x32\x1c.diode.v1.CircuitTerminationH\x00R\x12\x63ircuitTermination\x12:\n\x0c\x63ircuit_type\x18\x0b \x01(\x0b\x32\x15.diode.v1.CircuitTypeH\x00R\x0b\x63ircuitType\x12-\n\x07\x63luster\x18\x0c \x01(\x0b\x32\x11.diode.v1.ClusterH\x00R\x07\x63luster\x12=\n\rcluster_group\x18\r \x01(\x0b\x32\x16.diode.v1.ClusterGroupH\x00R\x0c\x63lusterGroup\x12:\n\x0c\x63luster_type\x18\x0e \x01(\x0b\x32\x15.diode.v1.ClusterTypeH\x00R\x0b\x63lusterType\x12:\n\x0c\x63onsole_port\x18\x0f \x01(\x0b\x32\x15.diode.v1.ConsolePortH\x00R\x0b\x63onsolePort\x12M\n\x13\x63onsole_server_port\x18\x10 \x01(\x0b\x32\x1b.diode.v1.ConsoleServerPortH\x00R\x11\x63onsoleServerPort\x12-\n\x07\x63ontact\x18\x11 \x01(\x0b\x32\x11.diode.v1.ContactH\x00R\x07\x63ontact\x12L\n\x12\x63ontact_assignment\x18\x12 \x01(\x0b\x32\x1b.diode.v1.ContactAssignmentH\x00R\x11\x63ontactAssignment\x12=\n\rcontact_group\x18\x13 \x01(\x0b\x32\x16.diode.v1.ContactGroupH\x00R\x0c\x63ontactGroup\x12:\n\x0c\x63ontact_role\x18\x14 \x01(\x0b\x32\x15.diode.v1.ContactRoleH\x00R\x0b\x63ontactRole\x12*\n\x06\x64\x65vice\x18\x15 \x01(\x0b\x32\x10.diode.v1.DeviceH\x00R\x06\x64\x65vice\x12\x34\n\ndevice_bay\x18\x16 \x01(\x0b\x32\x13.diode.v1.DeviceBayH\x00R\tdeviceBay\x12\x37\n\x0b\x64\x65vice_role\x18\x17 \x01(\x0b\x32\x14.diode.v1.DeviceRoleH\x00R\ndeviceRole\x12\x37\n\x0b\x64\x65vice_type\x18\x18 \x01(\x0b\x32\x14.diode.v1.DeviceTypeH\x00R\ndeviceType\x12\x34\n\nfhrp_group\x18\x19 \x01(\x0b\x32\x13.diode.v1.FHRPGroupH\x00R\tfhrpGroup\x12S\n\x15\x66hrp_group_assignment\x18\x1a \x01(\x0b\x32\x1d.diode.v1.FHRPGroupAssignmentH\x00R\x13\x66hrpGroupAssignment\x12\x34\n\nfront_port\x18\x1b \x01(\x0b\x32\x13.diode.v1.FrontPortH\x00R\tfrontPort\x12\x34\n\nike_policy\x18\x1c \x01(\x0b\x32\x13.diode.v1.IKEPolicyH\x00R\tikePolicy\x12:\n\x0cike_proposal\x18\x1d \x01(\x0b\x32\x15.diode.v1.IKEProposalH\x00R\x0bikeProposal\x12\x34\n\nip_address\x18\x1e \x01(\x0b\x32\x13.diode.v1.IPAddressH\x00R\tipAddress\x12.\n\x08ip_range\x18\x1f \x01(\x0b\x32\x11.diode.v1.IPRangeH\x00R\x07ipRange\x12;\n\rip_sec_policy\x18 \x01(\x0b\x32\x15.diode.v1.IPSecPolicyH\x00R\x0bipSecPolicy\x12>\n\x0eip_sec_profile\x18! \x01(\x0b\x32\x16.diode.v1.IPSecProfileH\x00R\x0cipSecProfile\x12\x41\n\x0fip_sec_proposal\x18\" \x01(\x0b\x32\x17.diode.v1.IPSecProposalH\x00R\ripSecProposal\x12\x33\n\tinterface\x18# \x01(\x0b\x32\x13.diode.v1.InterfaceH\x00R\tinterface\x12@\n\x0einventory_item\x18$ \x01(\x0b\x32\x17.diode.v1.InventoryItemH\x00R\rinventoryItem\x12M\n\x13inventory_item_role\x18% \x01(\x0b\x32\x1b.diode.v1.InventoryItemRoleH\x00R\x11inventoryItemRole\x12\'\n\x05l2vpn\x18& \x01(\x0b\x32\x0f.diode.v1.L2VPNH\x00R\x05l2vpn\x12I\n\x11l2vpn_termination\x18\' \x01(\x0b\x32\x1a.diode.v1.L2VPNTerminationH\x00R\x10l2vpnTermination\x12\x30\n\x08location\x18( \x01(\x0b\x32\x12.diode.v1.LocationH\x00R\x08location\x12\x37\n\x0bmac_address\x18) \x01(\x0b\x32\x14.diode.v1.MACAddressH\x00R\nmacAddress\x12<\n\x0cmanufacturer\x18* \x01(\x0b\x32\x16.diode.v1.ManufacturerH\x00R\x0cmanufacturer\x12*\n\x06module\x18+ \x01(\x0b\x32\x10.diode.v1.ModuleH\x00R\x06module\x12\x34\n\nmodule_bay\x18, \x01(\x0b\x32\x13.diode.v1.ModuleBayH\x00R\tmoduleBay\x12\x37\n\x0bmodule_type\x18- \x01(\x0b\x32\x14.diode.v1.ModuleTypeH\x00R\nmoduleType\x12\x30\n\x08platform\x18. \x01(\x0b\x32\x12.diode.v1.PlatformH\x00R\x08platform\x12\x34\n\npower_feed\x18/ \x01(\x0b\x32\x13.diode.v1.PowerFeedH\x00R\tpowerFeed\x12:\n\x0cpower_outlet\x18\x30 \x01(\x0b\x32\x15.diode.v1.PowerOutletH\x00R\x0bpowerOutlet\x12\x37\n\x0bpower_panel\x18\x31 \x01(\x0b\x32\x14.diode.v1.PowerPanelH\x00R\npowerPanel\x12\x34\n\npower_port\x18\x32 \x01(\x0b\x32\x13.diode.v1.PowerPortH\x00R\tpowerPort\x12*\n\x06prefix\x18\x33 \x01(\x0b\x32\x10.diode.v1.PrefixH\x00R\x06prefix\x12\x30\n\x08provider\x18\x34 \x01(\x0b\x32\x12.diode.v1.ProviderH\x00R\x08provider\x12\x46\n\x10provider_account\x18\x35 \x01(\x0b\x32\x19.diode.v1.ProviderAccountH\x00R\x0fproviderAccount\x12\x46\n\x10provider_network\x18\x36 \x01(\x0b\x32\x19.diode.v1.ProviderNetworkH\x00R\x0fproviderNetwork\x12!\n\x03rir\x18\x37 \x01(\x0b\x32\r.diode.v1.RIRH\x00R\x03rir\x12$\n\x04rack\x18\x38 \x01(\x0b\x32\x0e.diode.v1.RackH\x00R\x04rack\x12\x46\n\x10rack_reservation\x18\x39 \x01(\x0b\x32\x19.diode.v1.RackReservationH\x00R\x0frackReservation\x12\x31\n\track_role\x18: \x01(\x0b\x32\x12.diode.v1.RackRoleH\x00R\x08rackRole\x12\x31\n\track_type\x18; \x01(\x0b\x32\x12.diode.v1.RackTypeH\x00R\x08rackType\x12\x31\n\trear_port\x18< \x01(\x0b\x32\x12.diode.v1.RearPortH\x00R\x08rearPort\x12*\n\x06region\x18= \x01(\x0b\x32\x10.diode.v1.RegionH\x00R\x06region\x12$\n\x04role\x18> \x01(\x0b\x32\x0e.diode.v1.RoleH\x00R\x04role\x12:\n\x0croute_target\x18? \x01(\x0b\x32\x15.diode.v1.RouteTargetH\x00R\x0brouteTarget\x12-\n\x07service\x18@ \x01(\x0b\x32\x11.diode.v1.ServiceH\x00R\x07service\x12$\n\x04site\x18\x41 \x01(\x0b\x32\x0e.diode.v1.SiteH\x00R\x04site\x12\x34\n\nsite_group\x18\x42 \x01(\x0b\x32\x13.diode.v1.SiteGroupH\x00R\tsiteGroup\x12!\n\x03tag\x18\x43 \x01(\x0b\x32\r.diode.v1.TagH\x00R\x03tag\x12*\n\x06tenant\x18\x44 \x01(\x0b\x32\x10.diode.v1.TenantH\x00R\x06tenant\x12:\n\x0ctenant_group\x18\x45 \x01(\x0b\x32\x15.diode.v1.TenantGroupH\x00R\x0btenantGroup\x12*\n\x06tunnel\x18\x46 \x01(\x0b\x32\x10.diode.v1.TunnelH\x00R\x06tunnel\x12:\n\x0ctunnel_group\x18G \x01(\x0b\x32\x15.diode.v1.TunnelGroupH\x00R\x0btunnelGroup\x12L\n\x12tunnel_termination\x18H \x01(\x0b\x32\x1b.diode.v1.TunnelTerminationH\x00R\x11tunnelTermination\x12$\n\x04vlan\x18I \x01(\x0b\x32\x0e.diode.v1.VLANH\x00R\x04vlan\x12\x34\n\nvlan_group\x18J \x01(\x0b\x32\x13.diode.v1.VLANGroupH\x00R\tvlanGroup\x12Y\n\x17vlan_translation_policy\x18K \x01(\x0b\x32\x1f.diode.v1.VLANTranslationPolicyH\x00R\x15vlanTranslationPolicy\x12S\n\x15vlan_translation_rule\x18L \x01(\x0b\x32\x1d.diode.v1.VLANTranslationRuleH\x00R\x13vlanTranslationRule\x12:\n\x0cvm_interface\x18M \x01(\x0b\x32\x15.diode.v1.VMInterfaceH\x00R\x0bvmInterface\x12!\n\x03vrf\x18N \x01(\x0b\x32\r.diode.v1.VRFH\x00R\x03vrf\x12\x43\n\x0fvirtual_chassis\x18O \x01(\x0b\x32\x18.diode.v1.VirtualChassisH\x00R\x0evirtualChassis\x12\x43\n\x0fvirtual_circuit\x18P \x01(\x0b\x32\x18.diode.v1.VirtualCircuitH\x00R\x0evirtualCircuit\x12\x65\n\x1bvirtual_circuit_termination\x18Q \x01(\x0b\x32#.diode.v1.VirtualCircuitTerminationH\x00R\x19virtualCircuitTermination\x12P\n\x14virtual_circuit_type\x18R \x01(\x0b\x32\x1c.diode.v1.VirtualCircuitTypeH\x00R\x12virtualCircuitType\x12V\n\x16virtual_device_context\x18S \x01(\x0b\x32\x1e.diode.v1.VirtualDeviceContextH\x00R\x14virtualDeviceContext\x12:\n\x0cvirtual_disk\x18T \x01(\x0b\x32\x15.diode.v1.VirtualDiskH\x00R\x0bvirtualDisk\x12\x43\n\x0fvirtual_machine\x18U \x01(\x0b\x32\x18.diode.v1.VirtualMachineH\x00R\x0evirtualMachine\x12:\n\x0cwireless_lan\x18V \x01(\x0b\x32\x15.diode.v1.WirelessLANH\x00R\x0bwirelessLan\x12J\n\x12wireless_lan_group\x18W \x01(\x0b\x32\x1a.diode.v1.WirelessLANGroupH\x00R\x10wirelessLanGroup\x12=\n\rwireless_link\x18X \x01(\x0b\x32\x16.diode.v1.WirelessLinkH\x00R\x0cwirelessLink\x12:\n\x0c\x63ustom_field\x18Y \x01(\x0b\x32\x15.diode.v1.CustomFieldH\x00R\x0b\x63ustomField\x12W\n\x17\x63ustom_field_choice_set\x18Z \x01(\x0b\x32\x1e.diode.v1.CustomFieldChoiceSetH\x00R\x14\x63ustomFieldChoiceSet\x12=\n\rjournal_entry\x18[ \x01(\x0b\x32\x16.diode.v1.JournalEntryH\x00R\x0cjournalEntry\x12M\n\x13module_type_profile\x18\\ \x01(\x0b\x32\x1b.diode.v1.ModuleTypeProfileH\x00R\x11moduleTypeProfile\x12\x37\n\x0b\x63ustom_link\x18] \x01(\x0b\x32\x14.diode.v1.CustomLinkH\x00R\ncustomLink\x12\'\n\x05owner\x18^ \x01(\x0b\x32\x0f.diode.v1.OwnerH\x00R\x05owner\x12\x37\n\x0bowner_group\x18_ \x01(\x0b\x32\x14.diode.v1.OwnerGroupH\x00R\nownerGroup\x12:\n\x0c\x63\x61\x62le_bundle\x18` \x01(\x0b\x32\x15.diode.v1.CableBundleH\x00R\x0b\x63\x61\x62leBundle\x12\x34\n\nrack_group\x18\x61 \x01(\x0b\x32\x13.diode.v1.RackGroupH\x00R\trackGroup\x12=\n\rscript_module\x18\x62 \x01(\x0b\x32\x16.diode.v1.ScriptModuleH\x00R\x0cscriptModule\x12P\n\x14virtual_machine_type\x18\x63 \x01(\x0b\x32\x1c.diode.v1.VirtualMachineTypeH\x00R\x12virtualMachineType\x12$\n\x04user\x18\x64 \x01(\x0b\x32\x0e.diode.v1.UserH\x00R\x04user\x12:\n\x0c\x63ooling_feed\x18\x65 \x01(\x0b\x32\x15.diode.v1.CoolingFeedH\x00R\x0b\x63oolingFeed\x12@\n\x0e\x63ooling_intake\x18\x66 \x01(\x0b\x32\x17.diode.v1.CoolingIntakeH\x00R\rcoolingIntake\x12\x43\n\x0f\x63ooling_outflow\x18g \x01(\x0b\x32\x18.diode.v1.CoolingOutflowH\x00R\x0e\x63oolingOutflow\x12@\n\x0e\x63ooling_source\x18h \x01(\x0b\x32\x17.diode.v1.CoolingSourceH\x00R\rcoolingSource\x12\x41\n\x0fmodule_bay_type\x18i \x01(\x0b\x32\x17.diode.v1.ModuleBayTypeH\x00R\rmoduleBayTypeB\x08\n\x06object\"\x9a\x04\n\x10\x43ustomFieldValue\x12-\n\x12multiple_selection\x18\x01 \x03(\tR\x11multipleSelection\x12O\n\x10multiple_objects\x18\x02 \x03(\x0b\x32$.diode.v1.CustomFieldObjectReferenceR\x0fmultipleObjects\x12\x14\n\x04text\x18\x03 \x01(\tH\x00R\x04text\x12\x1d\n\tlong_text\x18\x04 \x01(\tH\x00R\x08longText\x12\x1a\n\x07integer\x18\x05 \x01(\x03H\x00R\x07integer\x12\x1a\n\x07\x64\x65\x63imal\x18\x06 \x01(\x01H\x00R\x07\x64\x65\x63imal\x12\x1a\n\x07\x62oolean\x18\x07 \x01(\x08H\x00R\x07\x62oolean\x12\x30\n\x04\x64\x61te\x18\x08 \x01(\x0b\x32\x1a.google.protobuf.TimestampH\x00R\x04\x64\x61te\x12\x38\n\x08\x64\x61tetime\x18\t \x01(\x0b\x32\x1a.google.protobuf.TimestampH\x00R\x08\x64\x61tetime\x12\x12\n\x03url\x18\n \x01(\tH\x00R\x03url\x12\x14\n\x04json\x18\x0b \x01(\tH\x00R\x04json\x12\x1e\n\tselection\x18\x0c \x01(\tH\x00R\tselection\x12>\n\x06object\x18\r \x01(\x0b\x32$.diode.v1.CustomFieldObjectReferenceH\x00R\x06objectB\x07\n\x05value\"\x8e\x10\n\x06\x44\x65vice\x12\x17\n\x04name\x18\x01 \x01(\tH\x00R\x04name\x88\x01\x01\x12\x35\n\x0b\x64\x65vice_type\x18\x02 \x01(\x0b\x32\x14.diode.v1.DeviceTypeR\ndeviceType\x12(\n\x04role\x18\x03 \x01(\x0b\x32\x14.diode.v1.DeviceRoleR\x04role\x12-\n\x06tenant\x18\x04 \x01(\x0b\x32\x10.diode.v1.TenantH\x01R\x06tenant\x88\x01\x01\x12\x33\n\x08platform\x18\x05 \x01(\x0b\x32\x12.diode.v1.PlatformH\x02R\x08platform\x88\x01\x01\x12\x1b\n\x06serial\x18\x06 \x01(\tH\x03R\x06serial\x88\x01\x01\x12 \n\tasset_tag\x18\x07 \x01(\tH\x04R\x08\x61ssetTag\x88\x01\x01\x12\"\n\x04site\x18\x08 \x01(\x0b\x32\x0e.diode.v1.SiteR\x04site\x12\x33\n\x08location\x18\t \x01(\x0b\x32\x12.diode.v1.LocationH\x05R\x08location\x88\x01\x01\x12\'\n\x04rack\x18\n \x01(\x0b\x32\x0e.diode.v1.RackH\x06R\x04rack\x88\x01\x01\x12\x1f\n\x08position\x18\x0b \x01(\x01H\x07R\x08position\x88\x01\x01\x12+\n\x04\x66\x61\x63\x65\x18\x0c \x01(\tB\x12\xfa\x42\x0fr\rR\x05\x66rontR\x04rearH\x08R\x04\x66\x61\x63\x65\x88\x01\x01\x12\x1f\n\x08latitude\x18\r \x01(\x01H\tR\x08latitude\x88\x01\x01\x12!\n\tlongitude\x18\x0e \x01(\x01H\nR\tlongitude\x88\x01\x01\x12h\n\x06status\x18\x0f \x01(\tBK\xfa\x42HrFR\x06\x61\x63tiveR\x0f\x64\x65\x63ommissioningR\x06\x66\x61iledR\tinventoryR\x07offlineR\x07plannedR\x06stagedH\x0bR\x06status\x88\x01\x01\x12\xad\x01\n\x07\x61irflow\x18\x10 \x01(\tB\x8d\x01\xfa\x42\x89\x01r\x86\x01R\rbottom-to-topR\rfront-to-rearR\rleft-to-rightR\x05mixedR\x07passiveR\rrear-to-frontR\x0crear-to-sideR\rright-to-leftR\x0cside-to-rearR\rtop-to-bottomH\x0cR\x07\x61irflow\x88\x01\x01\x12\x39\n\x0bprimary_ip4\x18\x11 \x01(\x0b\x32\x13.diode.v1.IPAddressH\rR\nprimaryIp4\x88\x01\x01\x12\x39\n\x0bprimary_ip6\x18\x12 \x01(\x0b\x32\x13.diode.v1.IPAddressH\x0eR\nprimaryIp6\x88\x01\x01\x12/\n\x06oob_ip\x18\x13 \x01(\x0b\x32\x13.diode.v1.IPAddressH\x0fR\x05oobIp\x88\x01\x01\x12\x30\n\x07\x63luster\x18\x14 \x01(\x0b\x32\x11.diode.v1.ClusterH\x10R\x07\x63luster\x88\x01\x01\x12\x46\n\x0fvirtual_chassis\x18\x15 \x01(\x0b\x32\x18.diode.v1.VirtualChassisH\x11R\x0evirtualChassis\x88\x01\x01\x12$\n\x0bvc_position\x18\x16 \x01(\x03H\x12R\nvcPosition\x88\x01\x01\x12$\n\x0bvc_priority\x18\x17 \x01(\x03H\x13R\nvcPriority\x88\x01\x01\x12%\n\x0b\x64\x65scription\x18\x18 \x01(\tH\x14R\x0b\x64\x65scription\x88\x01\x01\x12\x1f\n\x08\x63omments\x18\x19 \x01(\tH\x15R\x08\x63omments\x88\x01\x01\x12!\n\x04tags\x18\x1a \x03(\x0b\x32\r.diode.v1.TagR\x04tags\x12G\n\rcustom_fields\x18\x1b \x03(\x0b\x32\".diode.v1.Device.CustomFieldsEntryR\x0c\x63ustomFields\x12\x39\n\x08metadata\x18\x1c \x01(\x0b\x32\x17.google.protobuf.StructB\x04\x88\xb5\x18\x00R\x08metadata\x12*\n\x05owner\x18\x1d \x01(\x0b\x32\x0f.diode.v1.OwnerH\x16R\x05owner\x88\x01\x01\x12\x39\n\x06\x63onfig\x18\x1e \x01(\x0b\x32\x16.diode.v1.DeviceConfigB\x04\x88\xb5\x18\x00H\x17R\x06\x63onfig\x88\x01\x01\x12Q\n\x0e\x63ooling_method\x18\x1f \x01(\tB%\xfa\x42\"r R\x03\x61irR\x06hybridR\timmersionR\x06liquidH\x18R\rcoolingMethod\x88\x01\x01\x1a[\n\x11\x43ustomFieldsEntry\x12\x10\n\x03key\x18\x01 \x01(\tR\x03key\x12\x30\n\x05value\x18\x02 \x01(\x0b\x32\x1a.diode.v1.CustomFieldValueR\x05value:\x02\x38\x01\x42\x07\n\x05_nameB\t\n\x07_tenantB\x0b\n\t_platformB\t\n\x07_serialB\x0c\n\n_asset_tagB\x0b\n\t_locationB\x07\n\x05_rackB\x0b\n\t_positionB\x07\n\x05_faceB\x0b\n\t_latitudeB\x0c\n\n_longitudeB\t\n\x07_statusB\n\n\x08_airflowB\x0e\n\x0c_primary_ip4B\x0e\n\x0c_primary_ip6B\t\n\x07_oob_ipB\n\n\x08_clusterB\x12\n\x10_virtual_chassisB\x0e\n\x0c_vc_positionB\x0e\n\x0c_vc_priorityB\x0e\n\x0c_descriptionB\x0b\n\t_commentsB\x08\n\x06_ownerB\t\n\x07_configB\x11\n\x0f_cooling_method\"\xe4\x04\n\tDeviceBay\x12(\n\x06\x64\x65vice\x18\x01 \x01(\x0b\x32\x10.diode.v1.DeviceR\x06\x64\x65vice\x12\x12\n\x04name\x18\x02 \x01(\tR\x04name\x12\x19\n\x05label\x18\x03 \x01(\tH\x00R\x05label\x88\x01\x01\x12%\n\x0b\x64\x65scription\x18\x04 \x01(\tH\x01R\x0b\x64\x65scription\x88\x01\x01\x12@\n\x10installed_device\x18\x05 \x01(\x0b\x32\x10.diode.v1.DeviceH\x02R\x0finstalledDevice\x88\x01\x01\x12!\n\x04tags\x18\x06 \x03(\x0b\x32\r.diode.v1.TagR\x04tags\x12J\n\rcustom_fields\x18\x07 \x03(\x0b\x32%.diode.v1.DeviceBay.CustomFieldsEntryR\x0c\x63ustomFields\x12\x39\n\x08metadata\x18\x08 \x01(\x0b\x32\x17.google.protobuf.StructB\x04\x88\xb5\x18\x00R\x08metadata\x12*\n\x05owner\x18\t \x01(\x0b\x32\x0f.diode.v1.OwnerH\x03R\x05owner\x88\x01\x01\x12\x1d\n\x07\x65nabled\x18\n \x01(\x08H\x04R\x07\x65nabled\x88\x01\x01\x1a[\n\x11\x43ustomFieldsEntry\x12\x10\n\x03key\x18\x01 \x01(\tR\x03key\x12\x30\n\x05value\x18\x02 \x01(\x0b\x32\x1a.diode.v1.CustomFieldValueR\x05value:\x02\x38\x01\x42\x08\n\x06_labelB\x0e\n\x0c_descriptionB\x13\n\x11_installed_deviceB\x08\n\x06_ownerB\n\n\x08_enabled\"\xe4\x04\n\nDeviceRole\x12\x12\n\x04name\x18\x01 \x01(\tR\x04name\x12\x12\n\x04slug\x18\x02 \x01(\tR\x04slug\x12\x19\n\x05\x63olor\x18\x03 \x01(\tH\x00R\x05\x63olor\x88\x01\x01\x12\x1c\n\x07vm_role\x18\x04 \x01(\x08H\x01R\x06vmRole\x88\x01\x01\x12%\n\x0b\x64\x65scription\x18\x05 \x01(\tH\x02R\x0b\x64\x65scription\x88\x01\x01\x12!\n\x04tags\x18\x06 \x03(\x0b\x32\r.diode.v1.TagR\x04tags\x12K\n\rcustom_fields\x18\x07 \x03(\x0b\x32&.diode.v1.DeviceRole.CustomFieldsEntryR\x0c\x63ustomFields\x12\x31\n\x06parent\x18\x08 \x01(\x0b\x32\x14.diode.v1.DeviceRoleH\x03R\x06parent\x88\x01\x01\x12\x1f\n\x08\x63omments\x18\t \x01(\tH\x04R\x08\x63omments\x88\x01\x01\x12\x39\n\x08metadata\x18\n \x01(\x0b\x32\x17.google.protobuf.StructB\x04\x88\xb5\x18\x00R\x08metadata\x12*\n\x05owner\x18\x0b \x01(\x0b\x32\x0f.diode.v1.OwnerH\x05R\x05owner\x88\x01\x01\x1a[\n\x11\x43ustomFieldsEntry\x12\x10\n\x03key\x18\x01 \x01(\tR\x03key\x12\x30\n\x05value\x18\x02 \x01(\x0b\x32\x1a.diode.v1.CustomFieldValueR\x05value:\x02\x38\x01\x42\x08\n\x06_colorB\n\n\x08_vm_roleB\x0e\n\x0c_descriptionB\t\n\x07_parentB\x0b\n\t_commentsB\x08\n\x06_owner\"\xa4\x0b\n\nDeviceType\x12:\n\x0cmanufacturer\x18\x01 \x01(\x0b\x32\x16.diode.v1.ManufacturerR\x0cmanufacturer\x12\x42\n\x10\x64\x65\x66\x61ult_platform\x18\x02 \x01(\x0b\x32\x12.diode.v1.PlatformH\x00R\x0f\x64\x65\x66\x61ultPlatform\x88\x01\x01\x12\x14\n\x05model\x18\x03 \x01(\tR\x05model\x12\x12\n\x04slug\x18\x04 \x01(\tR\x04slug\x12$\n\x0bpart_number\x18\x05 \x01(\tH\x01R\npartNumber\x88\x01\x01\x12\x1e\n\x08u_height\x18\x06 \x01(\x01H\x02R\x07uHeight\x88\x01\x01\x12=\n\x18\x65xclude_from_utilization\x18\x07 \x01(\x08H\x03R\x16\x65xcludeFromUtilization\x88\x01\x01\x12\'\n\ris_full_depth\x18\x08 \x01(\x08H\x04R\x0bisFullDepth\x88\x01\x01\x12@\n\x0esubdevice_role\x18\t \x01(\tB\x14\xfa\x42\x11r\x0fR\x05\x63hildR\x06parentH\x05R\rsubdeviceRole\x88\x01\x01\x12\xad\x01\n\x07\x61irflow\x18\n \x01(\tB\x8d\x01\xfa\x42\x89\x01r\x86\x01R\rbottom-to-topR\rfront-to-rearR\rleft-to-rightR\x05mixedR\x07passiveR\rrear-to-frontR\x0crear-to-sideR\rright-to-leftR\x0cside-to-rearR\rtop-to-bottomH\x06R\x07\x61irflow\x88\x01\x01\x12\x1b\n\x06weight\x18\x0b \x01(\x01H\x07R\x06weight\x88\x01\x01\x12:\n\x0bweight_unit\x18\x0c \x01(\tB\x14\xfa\x42\x11r\x0fR\x01gR\x02kgR\x02lbR\x02ozH\x08R\nweightUnit\x88\x01\x01\x12%\n\x0b\x64\x65scription\x18\r \x01(\tH\tR\x0b\x64\x65scription\x88\x01\x01\x12\x1f\n\x08\x63omments\x18\x0e \x01(\tH\nR\x08\x63omments\x88\x01\x01\x12!\n\x04tags\x18\x0f \x03(\x0b\x32\r.diode.v1.TagR\x04tags\x12K\n\rcustom_fields\x18\x10 \x03(\x0b\x32&.diode.v1.DeviceType.CustomFieldsEntryR\x0c\x63ustomFields\x12\x39\n\x08metadata\x18\x11 \x01(\x0b\x32\x17.google.protobuf.StructB\x04\x88\xb5\x18\x00R\x08metadata\x12*\n\x05owner\x18\x12 \x01(\x0b\x32\x0f.diode.v1.OwnerH\x0bR\x05owner\x88\x01\x01\x12Q\n\x0e\x63ooling_method\x18\x13 \x01(\tB%\xfa\x42\"r R\x03\x61irR\x06hybridR\timmersionR\x06liquidH\x0cR\rcoolingMethod\x88\x01\x01\x12?\n\x0b\x65nd_of_life\x18\x14 \x01(\x0b\x32\x1a.google.protobuf.TimestampH\rR\tendOfLife\x88\x01\x01\x1a[\n\x11\x43ustomFieldsEntry\x12\x10\n\x03key\x18\x01 \x01(\tR\x03key\x12\x30\n\x05value\x18\x02 \x01(\x0b\x32\x1a.diode.v1.CustomFieldValueR\x05value:\x02\x38\x01\x42\x13\n\x11_default_platformB\x0e\n\x0c_part_numberB\x0b\n\t_u_heightB\x1b\n\x19_exclude_from_utilizationB\x10\n\x0e_is_full_depthB\x11\n\x0f_subdevice_roleB\n\n\x08_airflowB\t\n\x07_weightB\x0e\n\x0c_weight_unitB\x0e\n\x0c_descriptionB\x0b\n\t_commentsB\x08\n\x06_ownerB\x11\n\x0f_cooling_methodB\x0e\n\x0c_end_of_life\"\xb3\x05\n\tFHRPGroup\x12\x17\n\x04name\x18\x01 \x01(\tH\x00R\x04name\x88\x01\x01\x12S\n\x08protocol\x18\x02 \x01(\tB7\xfa\x42\x34r2R\x04\x63\x61rpR\tclusterxlR\x04glbpR\x04hsrpR\x05otherR\x05vrrp2R\x05vrrp3R\x08protocol\x12\x19\n\x08group_id\x18\x03 \x01(\x03R\x07groupId\x12\x37\n\tauth_type\x18\x04 \x01(\tB\x15\xfa\x42\x12r\x10R\x03md5R\tplaintextH\x01R\x08\x61uthType\x88\x01\x01\x12\x1e\n\x08\x61uth_key\x18\x05 \x01(\tH\x02R\x07\x61uthKey\x88\x01\x01\x12%\n\x0b\x64\x65scription\x18\x06 \x01(\tH\x03R\x0b\x64\x65scription\x88\x01\x01\x12\x1f\n\x08\x63omments\x18\x07 \x01(\tH\x04R\x08\x63omments\x88\x01\x01\x12!\n\x04tags\x18\x08 \x03(\x0b\x32\r.diode.v1.TagR\x04tags\x12J\n\rcustom_fields\x18\t \x03(\x0b\x32%.diode.v1.FHRPGroup.CustomFieldsEntryR\x0c\x63ustomFields\x12\x39\n\x08metadata\x18\n \x01(\x0b\x32\x17.google.protobuf.StructB\x04\x88\xb5\x18\x00R\x08metadata\x12*\n\x05owner\x18\x0b \x01(\x0b\x32\x0f.diode.v1.OwnerH\x05R\x05owner\x88\x01\x01\x1a[\n\x11\x43ustomFieldsEntry\x12\x10\n\x03key\x18\x01 \x01(\tR\x03key\x12\x30\n\x05value\x18\x02 \x01(\x0b\x32\x1a.diode.v1.CustomFieldValueR\x05value:\x02\x38\x01\x42\x07\n\x05_nameB\x0c\n\n_auth_typeB\x0b\n\t_auth_keyB\x0e\n\x0c_descriptionB\x0b\n\t_commentsB\x08\n\x06_owner\"\xdb\x41\n\x13\x46HRPGroupAssignment\x12)\n\x05group\x18\x01 \x01(\x0b\x32\x13.diode.v1.FHRPGroupR\x05group\x12\x34\n\rinterface_asn\x18\x02 \x01(\x0b\x32\r.diode.v1.ASNH\x00R\x0cinterfaceAsn\x12\x44\n\x13interface_asn_range\x18\x03 \x01(\x0b\x32\x12.diode.v1.ASNRangeH\x00R\x11interfaceAsnRange\x12\x46\n\x13interface_aggregate\x18\x04 \x01(\x0b\x32\x13.diode.v1.AggregateH\x00R\x12interfaceAggregate\x12:\n\x0finterface_cable\x18\x05 \x01(\x0b\x32\x0f.diode.v1.CableH\x00R\x0einterfaceCable\x12G\n\x14interface_cable_path\x18\x06 \x01(\x0b\x32\x13.diode.v1.CablePathH\x00R\x12interfaceCablePath\x12`\n\x1binterface_cable_termination\x18\x07 \x01(\x0b\x32\x1a.diode.v1.CableTerminationB\x02\x18\x01H\x00R\x19interfaceCableTermination\x12@\n\x11interface_circuit\x18\x08 \x01(\x0b\x32\x11.diode.v1.CircuitH\x00R\x10interfaceCircuit\x12P\n\x17interface_circuit_group\x18\t \x01(\x0b\x32\x16.diode.v1.CircuitGroupH\x00R\x15interfaceCircuitGroup\x12o\n\"interface_circuit_group_assignment\x18\n \x01(\x0b\x32 .diode.v1.CircuitGroupAssignmentH\x00R\x1finterfaceCircuitGroupAssignment\x12\x62\n\x1dinterface_circuit_termination\x18\x0b \x01(\x0b\x32\x1c.diode.v1.CircuitTerminationH\x00R\x1binterfaceCircuitTermination\x12M\n\x16interface_circuit_type\x18\x0c \x01(\x0b\x32\x15.diode.v1.CircuitTypeH\x00R\x14interfaceCircuitType\x12@\n\x11interface_cluster\x18\r \x01(\x0b\x32\x11.diode.v1.ClusterH\x00R\x10interfaceCluster\x12P\n\x17interface_cluster_group\x18\x0e \x01(\x0b\x32\x16.diode.v1.ClusterGroupH\x00R\x15interfaceClusterGroup\x12M\n\x16interface_cluster_type\x18\x0f \x01(\x0b\x32\x15.diode.v1.ClusterTypeH\x00R\x14interfaceClusterType\x12M\n\x16interface_console_port\x18\x10 \x01(\x0b\x32\x15.diode.v1.ConsolePortH\x00R\x14interfaceConsolePort\x12`\n\x1dinterface_console_server_port\x18\x11 \x01(\x0b\x32\x1b.diode.v1.ConsoleServerPortH\x00R\x1ainterfaceConsoleServerPort\x12@\n\x11interface_contact\x18\x12 \x01(\x0b\x32\x11.diode.v1.ContactH\x00R\x10interfaceContact\x12_\n\x1cinterface_contact_assignment\x18\x13 \x01(\x0b\x32\x1b.diode.v1.ContactAssignmentH\x00R\x1ainterfaceContactAssignment\x12P\n\x17interface_contact_group\x18\x14 \x01(\x0b\x32\x16.diode.v1.ContactGroupH\x00R\x15interfaceContactGroup\x12M\n\x16interface_contact_role\x18\x15 \x01(\x0b\x32\x15.diode.v1.ContactRoleH\x00R\x14interfaceContactRole\x12=\n\x10interface_device\x18\x16 \x01(\x0b\x32\x10.diode.v1.DeviceH\x00R\x0finterfaceDevice\x12G\n\x14interface_device_bay\x18\x17 \x01(\x0b\x32\x13.diode.v1.DeviceBayH\x00R\x12interfaceDeviceBay\x12J\n\x15interface_device_role\x18\x18 \x01(\x0b\x32\x14.diode.v1.DeviceRoleH\x00R\x13interfaceDeviceRole\x12J\n\x15interface_device_type\x18\x19 \x01(\x0b\x32\x14.diode.v1.DeviceTypeH\x00R\x13interfaceDeviceType\x12G\n\x14interface_fhrp_group\x18\x1a \x01(\x0b\x32\x13.diode.v1.FHRPGroupH\x00R\x12interfaceFhrpGroup\x12\x66\n\x1finterface_fhrp_group_assignment\x18\x1b \x01(\x0b\x32\x1d.diode.v1.FHRPGroupAssignmentH\x00R\x1cinterfaceFhrpGroupAssignment\x12G\n\x14interface_front_port\x18\x1c \x01(\x0b\x32\x13.diode.v1.FrontPortH\x00R\x12interfaceFrontPort\x12G\n\x14interface_ike_policy\x18\x1d \x01(\x0b\x32\x13.diode.v1.IKEPolicyH\x00R\x12interfaceIkePolicy\x12M\n\x16interface_ike_proposal\x18\x1e \x01(\x0b\x32\x15.diode.v1.IKEProposalH\x00R\x14interfaceIkeProposal\x12G\n\x14interface_ip_address\x18\x1f \x01(\x0b\x32\x13.diode.v1.IPAddressH\x00R\x12interfaceIpAddress\x12\x41\n\x12interface_ip_range\x18 \x01(\x0b\x32\x11.diode.v1.IPRangeH\x00R\x10interfaceIpRange\x12N\n\x17interface_ip_sec_policy\x18! \x01(\x0b\x32\x15.diode.v1.IPSecPolicyH\x00R\x14interfaceIpSecPolicy\x12Q\n\x18interface_ip_sec_profile\x18\" \x01(\x0b\x32\x16.diode.v1.IPSecProfileH\x00R\x15interfaceIpSecProfile\x12T\n\x19interface_ip_sec_proposal\x18# \x01(\x0b\x32\x17.diode.v1.IPSecProposalH\x00R\x16interfaceIpSecProposal\x12\x46\n\x13interface_interface\x18$ \x01(\x0b\x32\x13.diode.v1.InterfaceH\x00R\x12interfaceInterface\x12S\n\x18interface_inventory_item\x18% \x01(\x0b\x32\x17.diode.v1.InventoryItemH\x00R\x16interfaceInventoryItem\x12`\n\x1dinterface_inventory_item_role\x18& \x01(\x0b\x32\x1b.diode.v1.InventoryItemRoleH\x00R\x1ainterfaceInventoryItemRole\x12:\n\x0finterface_l2vpn\x18\' \x01(\x0b\x32\x0f.diode.v1.L2VPNH\x00R\x0einterfaceL2vpn\x12\\\n\x1binterface_l2vpn_termination\x18( \x01(\x0b\x32\x1a.diode.v1.L2VPNTerminationH\x00R\x19interfaceL2vpnTermination\x12\x43\n\x12interface_location\x18) \x01(\x0b\x32\x12.diode.v1.LocationH\x00R\x11interfaceLocation\x12J\n\x15interface_mac_address\x18* \x01(\x0b\x32\x14.diode.v1.MACAddressH\x00R\x13interfaceMacAddress\x12O\n\x16interface_manufacturer\x18+ \x01(\x0b\x32\x16.diode.v1.ManufacturerH\x00R\x15interfaceManufacturer\x12=\n\x10interface_module\x18, \x01(\x0b\x32\x10.diode.v1.ModuleH\x00R\x0finterfaceModule\x12G\n\x14interface_module_bay\x18- \x01(\x0b\x32\x13.diode.v1.ModuleBayH\x00R\x12interfaceModuleBay\x12J\n\x15interface_module_type\x18. \x01(\x0b\x32\x14.diode.v1.ModuleTypeH\x00R\x13interfaceModuleType\x12\x43\n\x12interface_platform\x18/ \x01(\x0b\x32\x12.diode.v1.PlatformH\x00R\x11interfacePlatform\x12G\n\x14interface_power_feed\x18\x30 \x01(\x0b\x32\x13.diode.v1.PowerFeedH\x00R\x12interfacePowerFeed\x12M\n\x16interface_power_outlet\x18\x31 \x01(\x0b\x32\x15.diode.v1.PowerOutletH\x00R\x14interfacePowerOutlet\x12J\n\x15interface_power_panel\x18\x32 \x01(\x0b\x32\x14.diode.v1.PowerPanelH\x00R\x13interfacePowerPanel\x12G\n\x14interface_power_port\x18\x33 \x01(\x0b\x32\x13.diode.v1.PowerPortH\x00R\x12interfacePowerPort\x12=\n\x10interface_prefix\x18\x34 \x01(\x0b\x32\x10.diode.v1.PrefixH\x00R\x0finterfacePrefix\x12\x43\n\x12interface_provider\x18\x35 \x01(\x0b\x32\x12.diode.v1.ProviderH\x00R\x11interfaceProvider\x12Y\n\x1ainterface_provider_account\x18\x36 \x01(\x0b\x32\x19.diode.v1.ProviderAccountH\x00R\x18interfaceProviderAccount\x12Y\n\x1ainterface_provider_network\x18\x37 \x01(\x0b\x32\x19.diode.v1.ProviderNetworkH\x00R\x18interfaceProviderNetwork\x12\x34\n\rinterface_rir\x18\x38 \x01(\x0b\x32\r.diode.v1.RIRH\x00R\x0cinterfaceRir\x12\x37\n\x0einterface_rack\x18\x39 \x01(\x0b\x32\x0e.diode.v1.RackH\x00R\rinterfaceRack\x12Y\n\x1ainterface_rack_reservation\x18: \x01(\x0b\x32\x19.diode.v1.RackReservationH\x00R\x18interfaceRackReservation\x12\x44\n\x13interface_rack_role\x18; \x01(\x0b\x32\x12.diode.v1.RackRoleH\x00R\x11interfaceRackRole\x12\x44\n\x13interface_rack_type\x18< \x01(\x0b\x32\x12.diode.v1.RackTypeH\x00R\x11interfaceRackType\x12\x44\n\x13interface_rear_port\x18= \x01(\x0b\x32\x12.diode.v1.RearPortH\x00R\x11interfaceRearPort\x12=\n\x10interface_region\x18> \x01(\x0b\x32\x10.diode.v1.RegionH\x00R\x0finterfaceRegion\x12\x37\n\x0einterface_role\x18? \x01(\x0b\x32\x0e.diode.v1.RoleH\x00R\rinterfaceRole\x12M\n\x16interface_route_target\x18@ \x01(\x0b\x32\x15.diode.v1.RouteTargetH\x00R\x14interfaceRouteTarget\x12@\n\x11interface_service\x18\x41 \x01(\x0b\x32\x11.diode.v1.ServiceH\x00R\x10interfaceService\x12\x37\n\x0einterface_site\x18\x42 \x01(\x0b\x32\x0e.diode.v1.SiteH\x00R\rinterfaceSite\x12G\n\x14interface_site_group\x18\x43 \x01(\x0b\x32\x13.diode.v1.SiteGroupH\x00R\x12interfaceSiteGroup\x12\x34\n\rinterface_tag\x18\x44 \x01(\x0b\x32\r.diode.v1.TagH\x00R\x0cinterfaceTag\x12=\n\x10interface_tenant\x18\x45 \x01(\x0b\x32\x10.diode.v1.TenantH\x00R\x0finterfaceTenant\x12M\n\x16interface_tenant_group\x18\x46 \x01(\x0b\x32\x15.diode.v1.TenantGroupH\x00R\x14interfaceTenantGroup\x12=\n\x10interface_tunnel\x18G \x01(\x0b\x32\x10.diode.v1.TunnelH\x00R\x0finterfaceTunnel\x12M\n\x16interface_tunnel_group\x18H \x01(\x0b\x32\x15.diode.v1.TunnelGroupH\x00R\x14interfaceTunnelGroup\x12_\n\x1cinterface_tunnel_termination\x18I \x01(\x0b\x32\x1b.diode.v1.TunnelTerminationH\x00R\x1ainterfaceTunnelTermination\x12\x37\n\x0einterface_vlan\x18J \x01(\x0b\x32\x0e.diode.v1.VLANH\x00R\rinterfaceVlan\x12G\n\x14interface_vlan_group\x18K \x01(\x0b\x32\x13.diode.v1.VLANGroupH\x00R\x12interfaceVlanGroup\x12l\n!interface_vlan_translation_policy\x18L \x01(\x0b\x32\x1f.diode.v1.VLANTranslationPolicyH\x00R\x1einterfaceVlanTranslationPolicy\x12\x66\n\x1finterface_vlan_translation_rule\x18M \x01(\x0b\x32\x1d.diode.v1.VLANTranslationRuleH\x00R\x1cinterfaceVlanTranslationRule\x12M\n\x16interface_vm_interface\x18N \x01(\x0b\x32\x15.diode.v1.VMInterfaceH\x00R\x14interfaceVmInterface\x12\x34\n\rinterface_vrf\x18O \x01(\x0b\x32\r.diode.v1.VRFH\x00R\x0cinterfaceVrf\x12V\n\x19interface_virtual_chassis\x18P \x01(\x0b\x32\x18.diode.v1.VirtualChassisH\x00R\x17interfaceVirtualChassis\x12V\n\x19interface_virtual_circuit\x18Q \x01(\x0b\x32\x18.diode.v1.VirtualCircuitH\x00R\x17interfaceVirtualCircuit\x12x\n%interface_virtual_circuit_termination\x18R \x01(\x0b\x32#.diode.v1.VirtualCircuitTerminationH\x00R\"interfaceVirtualCircuitTermination\x12\x63\n\x1einterface_virtual_circuit_type\x18S \x01(\x0b\x32\x1c.diode.v1.VirtualCircuitTypeH\x00R\x1binterfaceVirtualCircuitType\x12i\n interface_virtual_device_context\x18T \x01(\x0b\x32\x1e.diode.v1.VirtualDeviceContextH\x00R\x1dinterfaceVirtualDeviceContext\x12M\n\x16interface_virtual_disk\x18U \x01(\x0b\x32\x15.diode.v1.VirtualDiskH\x00R\x14interfaceVirtualDisk\x12V\n\x19interface_virtual_machine\x18V \x01(\x0b\x32\x18.diode.v1.VirtualMachineH\x00R\x17interfaceVirtualMachine\x12M\n\x16interface_wireless_lan\x18W \x01(\x0b\x32\x15.diode.v1.WirelessLANH\x00R\x14interfaceWirelessLan\x12]\n\x1cinterface_wireless_lan_group\x18X \x01(\x0b\x32\x1a.diode.v1.WirelessLANGroupH\x00R\x19interfaceWirelessLanGroup\x12P\n\x17interface_wireless_link\x18Y \x01(\x0b\x32\x16.diode.v1.WirelessLinkH\x00R\x15interfaceWirelessLink\x12M\n\x16interface_custom_field\x18[ \x01(\x0b\x32\x15.diode.v1.CustomFieldH\x00R\x14interfaceCustomField\x12j\n!interface_custom_field_choice_set\x18\\ \x01(\x0b\x32\x1e.diode.v1.CustomFieldChoiceSetH\x00R\x1dinterfaceCustomFieldChoiceSet\x12P\n\x17interface_journal_entry\x18] \x01(\x0b\x32\x16.diode.v1.JournalEntryH\x00R\x15interfaceJournalEntry\x12`\n\x1dinterface_module_type_profile\x18^ \x01(\x0b\x32\x1b.diode.v1.ModuleTypeProfileH\x00R\x1ainterfaceModuleTypeProfile\x12J\n\x15interface_custom_link\x18_ \x01(\x0b\x32\x14.diode.v1.CustomLinkH\x00R\x13interfaceCustomLink\x12:\n\x0finterface_owner\x18\x61 \x01(\x0b\x32\x0f.diode.v1.OwnerH\x00R\x0einterfaceOwner\x12J\n\x15interface_owner_group\x18\x62 \x01(\x0b\x32\x14.diode.v1.OwnerGroupH\x00R\x13interfaceOwnerGroup\x12M\n\x16interface_cable_bundle\x18\x63 \x01(\x0b\x32\x15.diode.v1.CableBundleH\x00R\x14interfaceCableBundle\x12G\n\x14interface_rack_group\x18\x64 \x01(\x0b\x32\x13.diode.v1.RackGroupH\x00R\x12interfaceRackGroup\x12P\n\x17interface_script_module\x18\x65 \x01(\x0b\x32\x16.diode.v1.ScriptModuleH\x00R\x15interfaceScriptModule\x12\x63\n\x1einterface_virtual_machine_type\x18\x66 \x01(\x0b\x32\x1c.diode.v1.VirtualMachineTypeH\x00R\x1binterfaceVirtualMachineType\x12\x37\n\x0einterface_user\x18g \x01(\x0b\x32\x0e.diode.v1.UserH\x00R\rinterfaceUser\x12M\n\x16interface_cooling_feed\x18h \x01(\x0b\x32\x15.diode.v1.CoolingFeedH\x00R\x14interfaceCoolingFeed\x12S\n\x18interface_cooling_intake\x18i \x01(\x0b\x32\x17.diode.v1.CoolingIntakeH\x00R\x16interfaceCoolingIntake\x12V\n\x19interface_cooling_outflow\x18j \x01(\x0b\x32\x18.diode.v1.CoolingOutflowH\x00R\x17interfaceCoolingOutflow\x12S\n\x18interface_cooling_source\x18k \x01(\x0b\x32\x17.diode.v1.CoolingSourceH\x00R\x16interfaceCoolingSource\x12T\n\x19interface_module_bay_type\x18l \x01(\x0b\x32\x17.diode.v1.ModuleBayTypeH\x00R\x16interfaceModuleBayType\x12\x1a\n\x08priority\x18Z \x01(\x03R\x08priority\x12\x39\n\x08metadata\x18` \x01(\x0b\x32\x17.google.protobuf.StructB\x04\x88\xb5\x18\x00R\x08metadataB\x0b\n\tinterface\"\x9b\n\n\tFrontPort\x12(\n\x06\x64\x65vice\x18\x01 \x01(\x0b\x32\x10.diode.v1.DeviceR\x06\x64\x65vice\x12-\n\x06module\x18\x02 \x01(\x0b\x32\x10.diode.v1.ModuleH\x00R\x06module\x88\x01\x01\x12\x12\n\x04name\x18\x03 \x01(\tR\x04name\x12\x19\n\x05label\x18\x04 \x01(\tH\x01R\x05label\x88\x01\x01\x12\xe4\x03\n\x04type\x18\x05 \x01(\tB\xcf\x03\xfa\x42\xcb\x03r\xc8\x03R\t110-punchR\x04\x34p2cR\x04\x34p4cR\x04\x36p2cR\x04\x36p4cR\x04\x36p6cR\x04\x38p2cR\x04\x38p4cR\x04\x38p6cR\x04\x38p8cR\x03\x62ncR\x02\x63sR\x01\x66R\x02\x66\x63R\x06\x66\x63-apcR\x05\x66\x63-pcR\x06\x66\x63-upcR\x04gg45R\x02lcR\x06lc-apcR\x05lc-pcR\x06lc-upcR\x03lshR\x07lsh-apcR\x06lsh-pcR\x07lsh-upcR\x03lx5R\x07lx5-apcR\x06lx5-pcR\x07lx5-upcR\x03mdcR\x03mpoR\x05mrj21R\x04mtrjR\x02muR\x06mu-apcR\x05mu-pcR\x06mu-upcR\x01nR\x05otherR\x02scR\x06sc-apcR\x05sc-pcR\x06sc-upcR\x07sma-905R\x07sma-906R\x02snR\x06spliceR\x02stR\x07tera-1pR\x07tera-2pR\x07tera-4pR\x06urm-p2R\x06urm-p4R\x06urm-p8R\x05usb-aR\x05usb-bR\x05usb-cR\x0busb-micro-aR\x0cusb-micro-abR\x0busb-micro-bR\nusb-mini-aR\nusb-mini-bR\x04type\x12\x19\n\x05\x63olor\x18\x06 \x01(\tH\x02R\x05\x63olor\x88\x01\x01\x12\x33\n\trear_port\x18\x07 \x01(\x0b\x32\x12.diode.v1.RearPortB\x02\x18\x01R\x08rearPort\x12\x35\n\x12rear_port_position\x18\x08 \x01(\x03\x42\x02\x18\x01H\x03R\x10rearPortPosition\x88\x01\x01\x12%\n\x0b\x64\x65scription\x18\t \x01(\tH\x04R\x0b\x64\x65scription\x88\x01\x01\x12*\n\x0emark_connected\x18\n \x01(\x08H\x05R\rmarkConnected\x88\x01\x01\x12!\n\x04tags\x18\x0b \x03(\x0b\x32\r.diode.v1.TagR\x04tags\x12J\n\rcustom_fields\x18\x0c \x03(\x0b\x32%.diode.v1.FrontPort.CustomFieldsEntryR\x0c\x63ustomFields\x12\x39\n\x08metadata\x18\r \x01(\x0b\x32\x17.google.protobuf.StructB\x04\x88\xb5\x18\x00R\x08metadata\x12!\n\tpositions\x18\x0e \x01(\x03H\x06R\tpositions\x88\x01\x01\x12*\n\x05owner\x18\x0f \x01(\x0b\x32\x0f.diode.v1.OwnerH\x07R\x05owner\x88\x01\x01\x1a[\n\x11\x43ustomFieldsEntry\x12\x10\n\x03key\x18\x01 \x01(\tR\x03key\x12\x30\n\x05value\x18\x02 \x01(\x0b\x32\x1a.diode.v1.CustomFieldValueR\x05value:\x02\x38\x01\x42\t\n\x07_moduleB\x08\n\x06_labelB\x08\n\x06_colorB\x15\n\x13_rear_port_positionB\x0e\n\x0c_descriptionB\x11\n\x0f_mark_connectedB\x0c\n\n_positionsB\x08\n\x06_owner\"\xda;\n\rGenericObject\x12.\n\nobject_asn\x18\x01 \x01(\x0b\x32\r.diode.v1.ASNH\x00R\tobjectAsn\x12>\n\x10object_asn_range\x18\x02 \x01(\x0b\x32\x12.diode.v1.ASNRangeH\x00R\x0eobjectAsnRange\x12@\n\x10object_aggregate\x18\x03 \x01(\x0b\x32\x13.diode.v1.AggregateH\x00R\x0fobjectAggregate\x12\x34\n\x0cobject_cable\x18\x04 \x01(\x0b\x32\x0f.diode.v1.CableH\x00R\x0bobjectCable\x12\x41\n\x11object_cable_path\x18\x05 \x01(\x0b\x32\x13.diode.v1.CablePathH\x00R\x0fobjectCablePath\x12Z\n\x18object_cable_termination\x18\x06 \x01(\x0b\x32\x1a.diode.v1.CableTerminationB\x02\x18\x01H\x00R\x16objectCableTermination\x12:\n\x0eobject_circuit\x18\x07 \x01(\x0b\x32\x11.diode.v1.CircuitH\x00R\robjectCircuit\x12J\n\x14object_circuit_group\x18\x08 \x01(\x0b\x32\x16.diode.v1.CircuitGroupH\x00R\x12objectCircuitGroup\x12i\n\x1fobject_circuit_group_assignment\x18\t \x01(\x0b\x32 .diode.v1.CircuitGroupAssignmentH\x00R\x1cobjectCircuitGroupAssignment\x12\\\n\x1aobject_circuit_termination\x18\n \x01(\x0b\x32\x1c.diode.v1.CircuitTerminationH\x00R\x18objectCircuitTermination\x12G\n\x13object_circuit_type\x18\x0b \x01(\x0b\x32\x15.diode.v1.CircuitTypeH\x00R\x11objectCircuitType\x12:\n\x0eobject_cluster\x18\x0c \x01(\x0b\x32\x11.diode.v1.ClusterH\x00R\robjectCluster\x12J\n\x14object_cluster_group\x18\r \x01(\x0b\x32\x16.diode.v1.ClusterGroupH\x00R\x12objectClusterGroup\x12G\n\x13object_cluster_type\x18\x0e \x01(\x0b\x32\x15.diode.v1.ClusterTypeH\x00R\x11objectClusterType\x12G\n\x13object_console_port\x18\x0f \x01(\x0b\x32\x15.diode.v1.ConsolePortH\x00R\x11objectConsolePort\x12Z\n\x1aobject_console_server_port\x18\x10 \x01(\x0b\x32\x1b.diode.v1.ConsoleServerPortH\x00R\x17objectConsoleServerPort\x12:\n\x0eobject_contact\x18\x11 \x01(\x0b\x32\x11.diode.v1.ContactH\x00R\robjectContact\x12Y\n\x19object_contact_assignment\x18\x12 \x01(\x0b\x32\x1b.diode.v1.ContactAssignmentH\x00R\x17objectContactAssignment\x12J\n\x14object_contact_group\x18\x13 \x01(\x0b\x32\x16.diode.v1.ContactGroupH\x00R\x12objectContactGroup\x12G\n\x13object_contact_role\x18\x14 \x01(\x0b\x32\x15.diode.v1.ContactRoleH\x00R\x11objectContactRole\x12\x37\n\robject_device\x18\x15 \x01(\x0b\x32\x10.diode.v1.DeviceH\x00R\x0cobjectDevice\x12\x41\n\x11object_device_bay\x18\x16 \x01(\x0b\x32\x13.diode.v1.DeviceBayH\x00R\x0fobjectDeviceBay\x12\x44\n\x12object_device_role\x18\x17 \x01(\x0b\x32\x14.diode.v1.DeviceRoleH\x00R\x10objectDeviceRole\x12\x44\n\x12object_device_type\x18\x18 \x01(\x0b\x32\x14.diode.v1.DeviceTypeH\x00R\x10objectDeviceType\x12\x41\n\x11object_fhrp_group\x18\x19 \x01(\x0b\x32\x13.diode.v1.FHRPGroupH\x00R\x0fobjectFhrpGroup\x12`\n\x1cobject_fhrp_group_assignment\x18\x1a \x01(\x0b\x32\x1d.diode.v1.FHRPGroupAssignmentH\x00R\x19objectFhrpGroupAssignment\x12\x41\n\x11object_front_port\x18\x1b \x01(\x0b\x32\x13.diode.v1.FrontPortH\x00R\x0fobjectFrontPort\x12\x41\n\x11object_ike_policy\x18\x1c \x01(\x0b\x32\x13.diode.v1.IKEPolicyH\x00R\x0fobjectIkePolicy\x12G\n\x13object_ike_proposal\x18\x1d \x01(\x0b\x32\x15.diode.v1.IKEProposalH\x00R\x11objectIkeProposal\x12\x41\n\x11object_ip_address\x18\x1e \x01(\x0b\x32\x13.diode.v1.IPAddressH\x00R\x0fobjectIpAddress\x12;\n\x0fobject_ip_range\x18\x1f \x01(\x0b\x32\x11.diode.v1.IPRangeH\x00R\robjectIpRange\x12H\n\x14object_ip_sec_policy\x18 \x01(\x0b\x32\x15.diode.v1.IPSecPolicyH\x00R\x11objectIpSecPolicy\x12K\n\x15object_ip_sec_profile\x18! \x01(\x0b\x32\x16.diode.v1.IPSecProfileH\x00R\x12objectIpSecProfile\x12N\n\x16object_ip_sec_proposal\x18\" \x01(\x0b\x32\x17.diode.v1.IPSecProposalH\x00R\x13objectIpSecProposal\x12@\n\x10object_interface\x18# \x01(\x0b\x32\x13.diode.v1.InterfaceH\x00R\x0fobjectInterface\x12M\n\x15object_inventory_item\x18$ \x01(\x0b\x32\x17.diode.v1.InventoryItemH\x00R\x13objectInventoryItem\x12Z\n\x1aobject_inventory_item_role\x18% \x01(\x0b\x32\x1b.diode.v1.InventoryItemRoleH\x00R\x17objectInventoryItemRole\x12\x34\n\x0cobject_l2vpn\x18& \x01(\x0b\x32\x0f.diode.v1.L2VPNH\x00R\x0bobjectL2vpn\x12V\n\x18object_l2vpn_termination\x18\' \x01(\x0b\x32\x1a.diode.v1.L2VPNTerminationH\x00R\x16objectL2vpnTermination\x12=\n\x0fobject_location\x18( \x01(\x0b\x32\x12.diode.v1.LocationH\x00R\x0eobjectLocation\x12\x44\n\x12object_mac_address\x18) \x01(\x0b\x32\x14.diode.v1.MACAddressH\x00R\x10objectMacAddress\x12I\n\x13object_manufacturer\x18* \x01(\x0b\x32\x16.diode.v1.ManufacturerH\x00R\x12objectManufacturer\x12\x37\n\robject_module\x18+ \x01(\x0b\x32\x10.diode.v1.ModuleH\x00R\x0cobjectModule\x12\x41\n\x11object_module_bay\x18, \x01(\x0b\x32\x13.diode.v1.ModuleBayH\x00R\x0fobjectModuleBay\x12\x44\n\x12object_module_type\x18- \x01(\x0b\x32\x14.diode.v1.ModuleTypeH\x00R\x10objectModuleType\x12=\n\x0fobject_platform\x18. \x01(\x0b\x32\x12.diode.v1.PlatformH\x00R\x0eobjectPlatform\x12\x41\n\x11object_power_feed\x18/ \x01(\x0b\x32\x13.diode.v1.PowerFeedH\x00R\x0fobjectPowerFeed\x12G\n\x13object_power_outlet\x18\x30 \x01(\x0b\x32\x15.diode.v1.PowerOutletH\x00R\x11objectPowerOutlet\x12\x44\n\x12object_power_panel\x18\x31 \x01(\x0b\x32\x14.diode.v1.PowerPanelH\x00R\x10objectPowerPanel\x12\x41\n\x11object_power_port\x18\x32 \x01(\x0b\x32\x13.diode.v1.PowerPortH\x00R\x0fobjectPowerPort\x12\x37\n\robject_prefix\x18\x33 \x01(\x0b\x32\x10.diode.v1.PrefixH\x00R\x0cobjectPrefix\x12=\n\x0fobject_provider\x18\x34 \x01(\x0b\x32\x12.diode.v1.ProviderH\x00R\x0eobjectProvider\x12S\n\x17object_provider_account\x18\x35 \x01(\x0b\x32\x19.diode.v1.ProviderAccountH\x00R\x15objectProviderAccount\x12S\n\x17object_provider_network\x18\x36 \x01(\x0b\x32\x19.diode.v1.ProviderNetworkH\x00R\x15objectProviderNetwork\x12.\n\nobject_rir\x18\x37 \x01(\x0b\x32\r.diode.v1.RIRH\x00R\tobjectRir\x12\x31\n\x0bobject_rack\x18\x38 \x01(\x0b\x32\x0e.diode.v1.RackH\x00R\nobjectRack\x12S\n\x17object_rack_reservation\x18\x39 \x01(\x0b\x32\x19.diode.v1.RackReservationH\x00R\x15objectRackReservation\x12>\n\x10object_rack_role\x18: \x01(\x0b\x32\x12.diode.v1.RackRoleH\x00R\x0eobjectRackRole\x12>\n\x10object_rack_type\x18; \x01(\x0b\x32\x12.diode.v1.RackTypeH\x00R\x0eobjectRackType\x12>\n\x10object_rear_port\x18< \x01(\x0b\x32\x12.diode.v1.RearPortH\x00R\x0eobjectRearPort\x12\x37\n\robject_region\x18= \x01(\x0b\x32\x10.diode.v1.RegionH\x00R\x0cobjectRegion\x12\x31\n\x0bobject_role\x18> \x01(\x0b\x32\x0e.diode.v1.RoleH\x00R\nobjectRole\x12G\n\x13object_route_target\x18? \x01(\x0b\x32\x15.diode.v1.RouteTargetH\x00R\x11objectRouteTarget\x12:\n\x0eobject_service\x18@ \x01(\x0b\x32\x11.diode.v1.ServiceH\x00R\robjectService\x12\x31\n\x0bobject_site\x18\x41 \x01(\x0b\x32\x0e.diode.v1.SiteH\x00R\nobjectSite\x12\x41\n\x11object_site_group\x18\x42 \x01(\x0b\x32\x13.diode.v1.SiteGroupH\x00R\x0fobjectSiteGroup\x12.\n\nobject_tag\x18\x43 \x01(\x0b\x32\r.diode.v1.TagH\x00R\tobjectTag\x12\x37\n\robject_tenant\x18\x44 \x01(\x0b\x32\x10.diode.v1.TenantH\x00R\x0cobjectTenant\x12G\n\x13object_tenant_group\x18\x45 \x01(\x0b\x32\x15.diode.v1.TenantGroupH\x00R\x11objectTenantGroup\x12\x37\n\robject_tunnel\x18\x46 \x01(\x0b\x32\x10.diode.v1.TunnelH\x00R\x0cobjectTunnel\x12G\n\x13object_tunnel_group\x18G \x01(\x0b\x32\x15.diode.v1.TunnelGroupH\x00R\x11objectTunnelGroup\x12Y\n\x19object_tunnel_termination\x18H \x01(\x0b\x32\x1b.diode.v1.TunnelTerminationH\x00R\x17objectTunnelTermination\x12\x31\n\x0bobject_vlan\x18I \x01(\x0b\x32\x0e.diode.v1.VLANH\x00R\nobjectVlan\x12\x41\n\x11object_vlan_group\x18J \x01(\x0b\x32\x13.diode.v1.VLANGroupH\x00R\x0fobjectVlanGroup\x12\x66\n\x1eobject_vlan_translation_policy\x18K \x01(\x0b\x32\x1f.diode.v1.VLANTranslationPolicyH\x00R\x1bobjectVlanTranslationPolicy\x12`\n\x1cobject_vlan_translation_rule\x18L \x01(\x0b\x32\x1d.diode.v1.VLANTranslationRuleH\x00R\x19objectVlanTranslationRule\x12G\n\x13object_vm_interface\x18M \x01(\x0b\x32\x15.diode.v1.VMInterfaceH\x00R\x11objectVmInterface\x12.\n\nobject_vrf\x18N \x01(\x0b\x32\r.diode.v1.VRFH\x00R\tobjectVrf\x12P\n\x16object_virtual_chassis\x18O \x01(\x0b\x32\x18.diode.v1.VirtualChassisH\x00R\x14objectVirtualChassis\x12P\n\x16object_virtual_circuit\x18P \x01(\x0b\x32\x18.diode.v1.VirtualCircuitH\x00R\x14objectVirtualCircuit\x12r\n\"object_virtual_circuit_termination\x18Q \x01(\x0b\x32#.diode.v1.VirtualCircuitTerminationH\x00R\x1fobjectVirtualCircuitTermination\x12]\n\x1bobject_virtual_circuit_type\x18R \x01(\x0b\x32\x1c.diode.v1.VirtualCircuitTypeH\x00R\x18objectVirtualCircuitType\x12\x63\n\x1dobject_virtual_device_context\x18S \x01(\x0b\x32\x1e.diode.v1.VirtualDeviceContextH\x00R\x1aobjectVirtualDeviceContext\x12G\n\x13object_virtual_disk\x18T \x01(\x0b\x32\x15.diode.v1.VirtualDiskH\x00R\x11objectVirtualDisk\x12P\n\x16object_virtual_machine\x18U \x01(\x0b\x32\x18.diode.v1.VirtualMachineH\x00R\x14objectVirtualMachine\x12G\n\x13object_wireless_lan\x18V \x01(\x0b\x32\x15.diode.v1.WirelessLANH\x00R\x11objectWirelessLan\x12W\n\x19object_wireless_lan_group\x18W \x01(\x0b\x32\x1a.diode.v1.WirelessLANGroupH\x00R\x16objectWirelessLanGroup\x12J\n\x14object_wireless_link\x18X \x01(\x0b\x32\x16.diode.v1.WirelessLinkH\x00R\x12objectWirelessLink\x12G\n\x13object_custom_field\x18Y \x01(\x0b\x32\x15.diode.v1.CustomFieldH\x00R\x11objectCustomField\x12\x64\n\x1eobject_custom_field_choice_set\x18Z \x01(\x0b\x32\x1e.diode.v1.CustomFieldChoiceSetH\x00R\x1aobjectCustomFieldChoiceSet\x12J\n\x14object_journal_entry\x18[ \x01(\x0b\x32\x16.diode.v1.JournalEntryH\x00R\x12objectJournalEntry\x12Z\n\x1aobject_module_type_profile\x18\\ \x01(\x0b\x32\x1b.diode.v1.ModuleTypeProfileH\x00R\x17objectModuleTypeProfile\x12\x44\n\x12object_custom_link\x18] \x01(\x0b\x32\x14.diode.v1.CustomLinkH\x00R\x10objectCustomLink\x12\x34\n\x0cobject_owner\x18^ \x01(\x0b\x32\x0f.diode.v1.OwnerH\x00R\x0bobjectOwner\x12\x44\n\x12object_owner_group\x18_ \x01(\x0b\x32\x14.diode.v1.OwnerGroupH\x00R\x10objectOwnerGroup\x12G\n\x13object_cable_bundle\x18` \x01(\x0b\x32\x15.diode.v1.CableBundleH\x00R\x11objectCableBundle\x12\x41\n\x11object_rack_group\x18\x61 \x01(\x0b\x32\x13.diode.v1.RackGroupH\x00R\x0fobjectRackGroup\x12J\n\x14object_script_module\x18\x62 \x01(\x0b\x32\x16.diode.v1.ScriptModuleH\x00R\x12objectScriptModule\x12]\n\x1bobject_virtual_machine_type\x18\x63 \x01(\x0b\x32\x1c.diode.v1.VirtualMachineTypeH\x00R\x18objectVirtualMachineType\x12\x31\n\x0bobject_user\x18\x64 \x01(\x0b\x32\x0e.diode.v1.UserH\x00R\nobjectUser\x12G\n\x13object_cooling_feed\x18\x65 \x01(\x0b\x32\x15.diode.v1.CoolingFeedH\x00R\x11objectCoolingFeed\x12M\n\x15object_cooling_intake\x18\x66 \x01(\x0b\x32\x17.diode.v1.CoolingIntakeH\x00R\x13objectCoolingIntake\x12P\n\x16object_cooling_outflow\x18g \x01(\x0b\x32\x18.diode.v1.CoolingOutflowH\x00R\x14objectCoolingOutflow\x12M\n\x15object_cooling_source\x18h \x01(\x0b\x32\x17.diode.v1.CoolingSourceH\x00R\x13objectCoolingSource\x12N\n\x16object_module_bay_type\x18i \x01(\x0b\x32\x17.diode.v1.ModuleBayTypeH\x00R\x13objectModuleBayTypeB\x08\n\x06object\"\x92\x05\n\tIKEPolicy\x12\x12\n\x04name\x18\x01 \x01(\tR\x04name\x12%\n\x0b\x64\x65scription\x18\x02 \x01(\tH\x00R\x0b\x64\x65scription\x88\x01\x01\x12#\n\x07version\x18\x03 \x01(\x03\x42\t\xfa\x42\x06\"\x04\x30\x01\x30\x02R\x07version\x12\x30\n\x04mode\x18\x04 \x01(\tB\x17\xfa\x42\x14r\x12R\naggressiveR\x04mainH\x01R\x04mode\x88\x01\x01\x12(\n\rpreshared_key\x18\x05 \x01(\tH\x02R\x0cpresharedKey\x88\x01\x01\x12\x1f\n\x08\x63omments\x18\x06 \x01(\tH\x03R\x08\x63omments\x88\x01\x01\x12!\n\x04tags\x18\x07 \x03(\x0b\x32\r.diode.v1.TagR\x04tags\x12J\n\rcustom_fields\x18\x08 \x03(\x0b\x32%.diode.v1.IKEPolicy.CustomFieldsEntryR\x0c\x63ustomFields\x12\x33\n\tproposals\x18\t \x03(\x0b\x32\x15.diode.v1.IKEProposalR\tproposals\x12\x39\n\x08metadata\x18\n \x01(\x0b\x32\x17.google.protobuf.StructB\x04\x88\xb5\x18\x00R\x08metadata\x12*\n\x05owner\x18\x0b \x01(\x0b\x32\x0f.diode.v1.OwnerH\x04R\x05owner\x88\x01\x01\x1a[\n\x11\x43ustomFieldsEntry\x12\x10\n\x03key\x18\x01 \x01(\tR\x03key\x12\x30\n\x05value\x18\x02 \x01(\x0b\x32\x1a.diode.v1.CustomFieldValueR\x05value:\x02\x38\x01\x42\x0e\n\x0c_descriptionB\x07\n\x05_modeB\x10\n\x0e_preshared_keyB\x0b\n\t_commentsB\x08\n\x06_owner\"\xff\x07\n\x0bIKEProposal\x12\x12\n\x04name\x18\x01 \x01(\tR\x04name\x12%\n\x0b\x64\x65scription\x18\x02 \x01(\tH\x00R\x0b\x64\x65scription\x88\x01\x01\x12x\n\x15\x61uthentication_method\x18\x03 \x01(\tBC\xfa\x42@r>R\x0c\x63\x65rtificatesR\x0e\x64sa-signaturesR\x0epreshared-keysR\x0ersa-signaturesR\x14\x61uthenticationMethod\x12\x99\x01\n\x14\x65ncryption_algorithm\x18\x04 \x01(\tBf\xfa\x42\x63raR\x08\x33\x64\x65s-cbcR\x0b\x61\x65s-128-cbcR\x0b\x61\x65s-128-gcmR\x0b\x61\x65s-192-cbcR\x0b\x61\x65s-192-gcmR\x0b\x61\x65s-256-cbcR\x0b\x61\x65s-256-gcmR\x07\x64\x65s-cbcR\x13\x65ncryptionAlgorithm\x12\x81\x01\n\x18\x61uthentication_algorithm\x18\x05 \x01(\tBA\xfa\x42>rr \x01(\x0b\x32\x19.diode.v1.ProviderAccountH\x00R\x1d\x61ssignedObjectProviderAccount\x12\x64\n assigned_object_provider_network\x18? \x01(\x0b\x32\x19.diode.v1.ProviderNetworkH\x00R\x1d\x61ssignedObjectProviderNetwork\x12?\n\x13\x61ssigned_object_rir\x18@ \x01(\x0b\x32\r.diode.v1.RIRH\x00R\x11\x61ssignedObjectRir\x12\x42\n\x14\x61ssigned_object_rack\x18\x41 \x01(\x0b\x32\x0e.diode.v1.RackH\x00R\x12\x61ssignedObjectRack\x12\x64\n assigned_object_rack_reservation\x18\x42 \x01(\x0b\x32\x19.diode.v1.RackReservationH\x00R\x1d\x61ssignedObjectRackReservation\x12O\n\x19\x61ssigned_object_rack_role\x18\x43 \x01(\x0b\x32\x12.diode.v1.RackRoleH\x00R\x16\x61ssignedObjectRackRole\x12O\n\x19\x61ssigned_object_rack_type\x18\x44 \x01(\x0b\x32\x12.diode.v1.RackTypeH\x00R\x16\x61ssignedObjectRackType\x12O\n\x19\x61ssigned_object_rear_port\x18\x45 \x01(\x0b\x32\x12.diode.v1.RearPortH\x00R\x16\x61ssignedObjectRearPort\x12H\n\x16\x61ssigned_object_region\x18\x46 \x01(\x0b\x32\x10.diode.v1.RegionH\x00R\x14\x61ssignedObjectRegion\x12\x42\n\x14\x61ssigned_object_role\x18G \x01(\x0b\x32\x0e.diode.v1.RoleH\x00R\x12\x61ssignedObjectRole\x12X\n\x1c\x61ssigned_object_route_target\x18H \x01(\x0b\x32\x15.diode.v1.RouteTargetH\x00R\x19\x61ssignedObjectRouteTarget\x12K\n\x17\x61ssigned_object_service\x18I \x01(\x0b\x32\x11.diode.v1.ServiceH\x00R\x15\x61ssignedObjectService\x12\x42\n\x14\x61ssigned_object_site\x18J \x01(\x0b\x32\x0e.diode.v1.SiteH\x00R\x12\x61ssignedObjectSite\x12R\n\x1a\x61ssigned_object_site_group\x18K \x01(\x0b\x32\x13.diode.v1.SiteGroupH\x00R\x17\x61ssignedObjectSiteGroup\x12?\n\x13\x61ssigned_object_tag\x18L \x01(\x0b\x32\r.diode.v1.TagH\x00R\x11\x61ssignedObjectTag\x12H\n\x16\x61ssigned_object_tenant\x18M \x01(\x0b\x32\x10.diode.v1.TenantH\x00R\x14\x61ssignedObjectTenant\x12X\n\x1c\x61ssigned_object_tenant_group\x18N \x01(\x0b\x32\x15.diode.v1.TenantGroupH\x00R\x19\x61ssignedObjectTenantGroup\x12H\n\x16\x61ssigned_object_tunnel\x18O \x01(\x0b\x32\x10.diode.v1.TunnelH\x00R\x14\x61ssignedObjectTunnel\x12X\n\x1c\x61ssigned_object_tunnel_group\x18P \x01(\x0b\x32\x15.diode.v1.TunnelGroupH\x00R\x19\x61ssignedObjectTunnelGroup\x12j\n\"assigned_object_tunnel_termination\x18Q \x01(\x0b\x32\x1b.diode.v1.TunnelTerminationH\x00R\x1f\x61ssignedObjectTunnelTermination\x12R\n\x1a\x61ssigned_object_vlan_group\x18R \x01(\x0b\x32\x13.diode.v1.VLANGroupH\x00R\x17\x61ssignedObjectVlanGroup\x12w\n\'assigned_object_vlan_translation_policy\x18S \x01(\x0b\x32\x1f.diode.v1.VLANTranslationPolicyH\x00R#assignedObjectVlanTranslationPolicy\x12q\n%assigned_object_vlan_translation_rule\x18T \x01(\x0b\x32\x1d.diode.v1.VLANTranslationRuleH\x00R!assignedObjectVlanTranslationRule\x12?\n\x13\x61ssigned_object_vrf\x18U \x01(\x0b\x32\r.diode.v1.VRFH\x00R\x11\x61ssignedObjectVrf\x12\x61\n\x1f\x61ssigned_object_virtual_chassis\x18V \x01(\x0b\x32\x18.diode.v1.VirtualChassisH\x00R\x1c\x61ssignedObjectVirtualChassis\x12\x61\n\x1f\x61ssigned_object_virtual_circuit\x18W \x01(\x0b\x32\x18.diode.v1.VirtualCircuitH\x00R\x1c\x61ssignedObjectVirtualCircuit\x12\x83\x01\n+assigned_object_virtual_circuit_termination\x18X \x01(\x0b\x32#.diode.v1.VirtualCircuitTerminationH\x00R\'assignedObjectVirtualCircuitTermination\x12n\n$assigned_object_virtual_circuit_type\x18Y \x01(\x0b\x32\x1c.diode.v1.VirtualCircuitTypeH\x00R assignedObjectVirtualCircuitType\x12t\n&assigned_object_virtual_device_context\x18Z \x01(\x0b\x32\x1e.diode.v1.VirtualDeviceContextH\x00R\"assignedObjectVirtualDeviceContext\x12X\n\x1c\x61ssigned_object_virtual_disk\x18[ \x01(\x0b\x32\x15.diode.v1.VirtualDiskH\x00R\x19\x61ssignedObjectVirtualDisk\x12\x61\n\x1f\x61ssigned_object_virtual_machine\x18\\ \x01(\x0b\x32\x18.diode.v1.VirtualMachineH\x00R\x1c\x61ssignedObjectVirtualMachine\x12X\n\x1c\x61ssigned_object_wireless_lan\x18] \x01(\x0b\x32\x15.diode.v1.WirelessLANH\x00R\x19\x61ssignedObjectWirelessLan\x12h\n\"assigned_object_wireless_lan_group\x18^ \x01(\x0b\x32\x1a.diode.v1.WirelessLANGroupH\x00R\x1e\x61ssignedObjectWirelessLanGroup\x12[\n\x1d\x61ssigned_object_wireless_link\x18_ \x01(\x0b\x32\x16.diode.v1.WirelessLinkH\x00R\x1a\x61ssignedObjectWirelessLink\x12U\n\x1b\x61ssigned_object_custom_link\x18` \x01(\x0b\x32\x14.diode.v1.CustomLinkH\x00R\x18\x61ssignedObjectCustomLink\x12\x45\n\x15\x61ssigned_object_owner\x18\x62 \x01(\x0b\x32\x0f.diode.v1.OwnerH\x00R\x13\x61ssignedObjectOwner\x12U\n\x1b\x61ssigned_object_owner_group\x18\x63 \x01(\x0b\x32\x14.diode.v1.OwnerGroupH\x00R\x18\x61ssignedObjectOwnerGroup\x12X\n\x1c\x61ssigned_object_cable_bundle\x18\x64 \x01(\x0b\x32\x15.diode.v1.CableBundleH\x00R\x19\x61ssignedObjectCableBundle\x12R\n\x1a\x61ssigned_object_rack_group\x18\x65 \x01(\x0b\x32\x13.diode.v1.RackGroupH\x00R\x17\x61ssignedObjectRackGroup\x12[\n\x1d\x61ssigned_object_script_module\x18\x66 \x01(\x0b\x32\x16.diode.v1.ScriptModuleH\x00R\x1a\x61ssignedObjectScriptModule\x12n\n$assigned_object_virtual_machine_type\x18g \x01(\x0b\x32\x1c.diode.v1.VirtualMachineTypeH\x00R assignedObjectVirtualMachineType\x12\x42\n\x14\x61ssigned_object_user\x18h \x01(\x0b\x32\x0e.diode.v1.UserH\x00R\x12\x61ssignedObjectUser\x12X\n\x1c\x61ssigned_object_cooling_feed\x18i \x01(\x0b\x32\x15.diode.v1.CoolingFeedH\x00R\x19\x61ssignedObjectCoolingFeed\x12^\n\x1e\x61ssigned_object_cooling_intake\x18j \x01(\x0b\x32\x17.diode.v1.CoolingIntakeH\x00R\x1b\x61ssignedObjectCoolingIntake\x12\x61\n\x1f\x61ssigned_object_cooling_outflow\x18k \x01(\x0b\x32\x18.diode.v1.CoolingOutflowH\x00R\x1c\x61ssignedObjectCoolingOutflow\x12^\n\x1e\x61ssigned_object_cooling_source\x18l \x01(\x0b\x32\x17.diode.v1.CoolingSourceH\x00R\x1b\x61ssignedObjectCoolingSource\x12_\n\x1f\x61ssigned_object_module_bay_type\x18m \x01(\x0b\x32\x17.diode.v1.ModuleBayTypeH\x00R\x1b\x61ssignedObjectModuleBayType\x12!\n\x04tags\x18\x05 \x03(\x0b\x32\r.diode.v1.TagR\x04tags\x12Q\n\rcustom_fields\x18\x06 \x03(\x0b\x32,.diode.v1.L2VPNTermination.CustomFieldsEntryR\x0c\x63ustomFields\x12\x39\n\x08metadata\x18\x61 \x01(\x0b\x32\x17.google.protobuf.StructB\x04\x88\xb5\x18\x00R\x08metadata\x1a[\n\x11\x43ustomFieldsEntry\x12\x10\n\x03key\x18\x01 \x01(\tR\x03key\x12\x30\n\x05value\x18\x02 \x01(\x0b\x32\x1a.diode.v1.CustomFieldValueR\x05value:\x02\x38\x01\x42\x11\n\x0f\x61ssigned_object\"\xfe\x05\n\x08Location\x12\x12\n\x04name\x18\x01 \x01(\tR\x04name\x12\x12\n\x04slug\x18\x02 \x01(\tR\x04slug\x12\"\n\x04site\x18\x03 \x01(\x0b\x32\x0e.diode.v1.SiteR\x04site\x12/\n\x06parent\x18\x04 \x01(\x0b\x32\x12.diode.v1.LocationH\x00R\x06parent\x88\x01\x01\x12V\n\x06status\x18\x05 \x01(\tB9\xfa\x42\x36r4R\x06\x61\x63tiveR\x0f\x64\x65\x63ommissioningR\x07plannedR\x07retiredR\x07stagingH\x01R\x06status\x88\x01\x01\x12-\n\x06tenant\x18\x06 \x01(\x0b\x32\x10.diode.v1.TenantH\x02R\x06tenant\x88\x01\x01\x12\x1f\n\x08\x66\x61\x63ility\x18\x07 \x01(\tH\x03R\x08\x66\x61\x63ility\x88\x01\x01\x12%\n\x0b\x64\x65scription\x18\x08 \x01(\tH\x04R\x0b\x64\x65scription\x88\x01\x01\x12!\n\x04tags\x18\t \x03(\x0b\x32\r.diode.v1.TagR\x04tags\x12I\n\rcustom_fields\x18\n \x03(\x0b\x32$.diode.v1.Location.CustomFieldsEntryR\x0c\x63ustomFields\x12\x1f\n\x08\x63omments\x18\x0b \x01(\tH\x05R\x08\x63omments\x88\x01\x01\x12\x39\n\x08metadata\x18\x0c \x01(\x0b\x32\x17.google.protobuf.StructB\x04\x88\xb5\x18\x00R\x08metadata\x12*\n\x05owner\x18\r \x01(\x0b\x32\x0f.diode.v1.OwnerH\x06R\x05owner\x88\x01\x01\x1a[\n\x11\x43ustomFieldsEntry\x12\x10\n\x03key\x18\x01 \x01(\tR\x03key\x12\x30\n\x05value\x18\x02 \x01(\x0b\x32\x1a.diode.v1.CustomFieldValueR\x05value:\x02\x38\x01\x42\t\n\x07_parentB\t\n\x07_statusB\t\n\x07_tenantB\x0b\n\t_facilityB\x0e\n\x0c_descriptionB\x0b\n\t_commentsB\x08\n\x06_owner\"\x90\x05\n\nMACAddress\x12\x1f\n\x0bmac_address\x18\x01 \x01(\tR\nmacAddress\x12Q\n\x19\x61ssigned_object_interface\x18\x02 \x01(\x0b\x32\x13.diode.v1.InterfaceH\x00R\x17\x61ssignedObjectInterface\x12X\n\x1c\x61ssigned_object_vm_interface\x18\x03 \x01(\x0b\x32\x15.diode.v1.VMInterfaceH\x00R\x19\x61ssignedObjectVmInterface\x12%\n\x0b\x64\x65scription\x18\x04 \x01(\tH\x01R\x0b\x64\x65scription\x88\x01\x01\x12\x1f\n\x08\x63omments\x18\x05 \x01(\tH\x02R\x08\x63omments\x88\x01\x01\x12!\n\x04tags\x18\x06 \x03(\x0b\x32\r.diode.v1.TagR\x04tags\x12K\n\rcustom_fields\x18\x07 \x03(\x0b\x32&.diode.v1.MACAddress.CustomFieldsEntryR\x0c\x63ustomFields\x12\x39\n\x08metadata\x18\x08 \x01(\x0b\x32\x17.google.protobuf.StructB\x04\x88\xb5\x18\x00R\x08metadata\x12*\n\x05owner\x18\t \x01(\x0b\x32\x0f.diode.v1.OwnerH\x03R\x05owner\x88\x01\x01\x1a[\n\x11\x43ustomFieldsEntry\x12\x10\n\x03key\x18\x01 \x01(\tR\x03key\x12\x30\n\x05value\x18\x02 \x01(\x0b\x32\x1a.diode.v1.CustomFieldValueR\x05value:\x02\x38\x01\x42\x11\n\x0f\x61ssigned_objectB\x0e\n\x0c_descriptionB\x0b\n\t_commentsB\x08\n\x06_owner\"\xdb\x03\n\x0cManufacturer\x12\x12\n\x04name\x18\x01 \x01(\tR\x04name\x12\x12\n\x04slug\x18\x02 \x01(\tR\x04slug\x12%\n\x0b\x64\x65scription\x18\x03 \x01(\tH\x00R\x0b\x64\x65scription\x88\x01\x01\x12!\n\x04tags\x18\x04 \x03(\x0b\x32\r.diode.v1.TagR\x04tags\x12M\n\rcustom_fields\x18\x05 \x03(\x0b\x32(.diode.v1.Manufacturer.CustomFieldsEntryR\x0c\x63ustomFields\x12\x39\n\x08metadata\x18\x06 \x01(\x0b\x32\x17.google.protobuf.StructB\x04\x88\xb5\x18\x00R\x08metadata\x12*\n\x05owner\x18\x07 \x01(\x0b\x32\x0f.diode.v1.OwnerH\x01R\x05owner\x88\x01\x01\x12\x1f\n\x08\x63omments\x18\x08 \x01(\tH\x02R\x08\x63omments\x88\x01\x01\x1a[\n\x11\x43ustomFieldsEntry\x12\x10\n\x03key\x18\x01 \x01(\tR\x03key\x12\x30\n\x05value\x18\x02 \x01(\x0b\x32\x1a.diode.v1.CustomFieldValueR\x05value:\x02\x38\x01\x42\x0e\n\x0c_descriptionB\x08\n\x06_ownerB\x0b\n\t_comments\"\x94\x07\n\x06Module\x12(\n\x06\x64\x65vice\x18\x01 \x01(\x0b\x32\x10.diode.v1.DeviceR\x06\x64\x65vice\x12\x32\n\nmodule_bay\x18\x02 \x01(\x0b\x32\x13.diode.v1.ModuleBayR\tmoduleBay\x12\x35\n\x0bmodule_type\x18\x03 \x01(\x0b\x32\x14.diode.v1.ModuleTypeR\nmoduleType\x12]\n\x06status\x18\x04 \x01(\tB@\xfa\x42=r;R\x06\x61\x63tiveR\x0f\x64\x65\x63ommissioningR\x06\x66\x61iledR\x07offlineR\x07plannedR\x06stagedH\x00R\x06status\x88\x01\x01\x12\x1b\n\x06serial\x18\x05 \x01(\tH\x01R\x06serial\x88\x01\x01\x12 \n\tasset_tag\x18\x06 \x01(\tH\x02R\x08\x61ssetTag\x88\x01\x01\x12%\n\x0b\x64\x65scription\x18\x07 \x01(\tH\x03R\x0b\x64\x65scription\x88\x01\x01\x12\x1f\n\x08\x63omments\x18\x08 \x01(\tH\x04R\x08\x63omments\x88\x01\x01\x12!\n\x04tags\x18\t \x03(\x0b\x32\r.diode.v1.TagR\x04tags\x12G\n\rcustom_fields\x18\n \x03(\x0b\x32\".diode.v1.Module.CustomFieldsEntryR\x0c\x63ustomFields\x12\x39\n\x08metadata\x18\x0b \x01(\x0b\x32\x17.google.protobuf.StructB\x04\x88\xb5\x18\x00R\x08metadata\x12*\n\x05owner\x18\x0c \x01(\x0b\x32\x0f.diode.v1.OwnerH\x05R\x05owner\x88\x01\x01\x12\x36\n\x14replicate_components\x18\r \x01(\x08H\x06R\x13replicateComponents\x88\x01\x01\x12.\n\x10\x61\x64opt_components\x18\x0e \x01(\x08H\x07R\x0f\x61\x64optComponents\x88\x01\x01\x1a[\n\x11\x43ustomFieldsEntry\x12\x10\n\x03key\x18\x01 \x01(\tR\x03key\x12\x30\n\x05value\x18\x02 \x01(\x0b\x32\x1a.diode.v1.CustomFieldValueR\x05value:\x02\x38\x01\x42\t\n\x07_statusB\t\n\x07_serialB\x0c\n\n_asset_tagB\x0e\n\x0c_descriptionB\x0b\n\t_commentsB\x08\n\x06_ownerB\x17\n\x15_replicate_componentsB\x13\n\x11_adopt_components\"\x8f\x06\n\tModuleBay\x12(\n\x06\x64\x65vice\x18\x01 \x01(\x0b\x32\x10.diode.v1.DeviceR\x06\x64\x65vice\x12-\n\x06module\x18\x02 \x01(\x0b\x32\x10.diode.v1.ModuleH\x00R\x06module\x88\x01\x01\x12\x12\n\x04name\x18\x03 \x01(\tR\x04name\x12@\n\x10installed_module\x18\x04 \x01(\x0b\x32\x10.diode.v1.ModuleH\x01R\x0finstalledModule\x88\x01\x01\x12\x19\n\x05label\x18\x05 \x01(\tH\x02R\x05label\x88\x01\x01\x12\x1f\n\x08position\x18\x06 \x01(\tH\x03R\x08position\x88\x01\x01\x12%\n\x0b\x64\x65scription\x18\x07 \x01(\tH\x04R\x0b\x64\x65scription\x88\x01\x01\x12!\n\x04tags\x18\x08 \x03(\x0b\x32\r.diode.v1.TagR\x04tags\x12J\n\rcustom_fields\x18\t \x03(\x0b\x32%.diode.v1.ModuleBay.CustomFieldsEntryR\x0c\x63ustomFields\x12\x39\n\x08metadata\x18\n \x01(\x0b\x32\x17.google.protobuf.StructB\x04\x88\xb5\x18\x00R\x08metadata\x12*\n\x05owner\x18\x0b \x01(\x0b\x32\x0f.diode.v1.OwnerH\x05R\x05owner\x88\x01\x01\x12\x1d\n\x07\x65nabled\x18\x0c \x01(\x08H\x06R\x07\x65nabled\x88\x01\x01\x12\x41\n\x10module_bay_types\x18\r \x03(\x0b\x32\x17.diode.v1.ModuleBayTypeR\x0emoduleBayTypes\x1a[\n\x11\x43ustomFieldsEntry\x12\x10\n\x03key\x18\x01 \x01(\tR\x03key\x12\x30\n\x05value\x18\x02 \x01(\x0b\x32\x1a.diode.v1.CustomFieldValueR\x05value:\x02\x38\x01\x42\t\n\x07_moduleB\x13\n\x11_installed_moduleB\x08\n\x06_labelB\x0b\n\t_positionB\x0e\n\x0c_descriptionB\x08\n\x06_ownerB\n\n\x08_enabled\"\xa6\t\n\nModuleType\x12:\n\x0cmanufacturer\x18\x01 \x01(\x0b\x32\x16.diode.v1.ManufacturerR\x0cmanufacturer\x12\x14\n\x05model\x18\x02 \x01(\tR\x05model\x12$\n\x0bpart_number\x18\x03 \x01(\tH\x00R\npartNumber\x88\x01\x01\x12w\n\x07\x61irflow\x18\x04 \x01(\tBX\xfa\x42UrSR\rfront-to-rearR\rleft-to-rightR\x07passiveR\rrear-to-frontR\rright-to-leftR\x0cside-to-rearH\x01R\x07\x61irflow\x88\x01\x01\x12\x1b\n\x06weight\x18\x05 \x01(\x01H\x02R\x06weight\x88\x01\x01\x12:\n\x0bweight_unit\x18\x06 \x01(\tB\x14\xfa\x42\x11r\x0fR\x01gR\x02kgR\x02lbR\x02ozH\x03R\nweightUnit\x88\x01\x01\x12%\n\x0b\x64\x65scription\x18\x07 \x01(\tH\x04R\x0b\x64\x65scription\x88\x01\x01\x12\x1f\n\x08\x63omments\x18\x08 \x01(\tH\x05R\x08\x63omments\x88\x01\x01\x12!\n\x04tags\x18\t \x03(\x0b\x32\r.diode.v1.TagR\x04tags\x12K\n\rcustom_fields\x18\n \x03(\x0b\x32&.diode.v1.ModuleType.CustomFieldsEntryR\x0c\x63ustomFields\x12:\n\x07profile\x18\x0b \x01(\x0b\x32\x1b.diode.v1.ModuleTypeProfileH\x06R\x07profile\x88\x01\x01\x12#\n\nattributes\x18\x0c \x01(\tH\x07R\nattributes\x88\x01\x01\x12\x39\n\x08metadata\x18\r \x01(\x0b\x32\x17.google.protobuf.StructB\x04\x88\xb5\x18\x00R\x08metadata\x12*\n\x05owner\x18\x0e \x01(\x0b\x32\x0f.diode.v1.OwnerH\x08R\x05owner\x88\x01\x01\x12Q\n\x0e\x63ooling_method\x18\x0f \x01(\tB%\xfa\x42\"r R\x03\x61irR\x06hybridR\timmersionR\x06liquidH\tR\rcoolingMethod\x88\x01\x01\x12?\n\x0b\x65nd_of_life\x18\x10 \x01(\x0b\x32\x1a.google.protobuf.TimestampH\nR\tendOfLife\x88\x01\x01\x12\x41\n\x10module_bay_types\x18\x11 \x03(\x0b\x32\x17.diode.v1.ModuleBayTypeR\x0emoduleBayTypes\x1a[\n\x11\x43ustomFieldsEntry\x12\x10\n\x03key\x18\x01 \x01(\tR\x03key\x12\x30\n\x05value\x18\x02 \x01(\x0b\x32\x1a.diode.v1.CustomFieldValueR\x05value:\x02\x38\x01\x42\x0e\n\x0c_part_numberB\n\n\x08_airflowB\t\n\x07_weightB\x0e\n\x0c_weight_unitB\x0e\n\x0c_descriptionB\x0b\n\t_commentsB\n\n\x08_profileB\r\n\x0b_attributesB\x08\n\x06_ownerB\x11\n\x0f_cooling_methodB\x0e\n\x0c_end_of_life\"\xe1\x04\n\x08Platform\x12\x12\n\x04name\x18\x01 \x01(\tR\x04name\x12\x12\n\x04slug\x18\x02 \x01(\tR\x04slug\x12?\n\x0cmanufacturer\x18\x03 \x01(\x0b\x32\x16.diode.v1.ManufacturerH\x00R\x0cmanufacturer\x88\x01\x01\x12%\n\x0b\x64\x65scription\x18\x04 \x01(\tH\x01R\x0b\x64\x65scription\x88\x01\x01\x12!\n\x04tags\x18\x05 \x03(\x0b\x32\r.diode.v1.TagR\x04tags\x12I\n\rcustom_fields\x18\x06 \x03(\x0b\x32$.diode.v1.Platform.CustomFieldsEntryR\x0c\x63ustomFields\x12/\n\x06parent\x18\x07 \x01(\x0b\x32\x12.diode.v1.PlatformH\x02R\x06parent\x88\x01\x01\x12\x1f\n\x08\x63omments\x18\x08 \x01(\tH\x03R\x08\x63omments\x88\x01\x01\x12\x39\n\x08metadata\x18\t \x01(\x0b\x32\x17.google.protobuf.StructB\x04\x88\xb5\x18\x00R\x08metadata\x12*\n\x05owner\x18\n \x01(\x0b\x32\x0f.diode.v1.OwnerH\x04R\x05owner\x88\x01\x01\x1a[\n\x11\x43ustomFieldsEntry\x12\x10\n\x03key\x18\x01 \x01(\tR\x03key\x12\x30\n\x05value\x18\x02 \x01(\x0b\x32\x1a.diode.v1.CustomFieldValueR\x05value:\x02\x38\x01\x42\x0f\n\r_manufacturerB\x0e\n\x0c_descriptionB\t\n\x07_parentB\x0b\n\t_commentsB\x08\n\x06_owner\"\xca\x08\n\tPowerFeed\x12\x35\n\x0bpower_panel\x18\x01 \x01(\x0b\x32\x14.diode.v1.PowerPanelR\npowerPanel\x12\'\n\x04rack\x18\x02 \x01(\x0b\x32\x0e.diode.v1.RackH\x00R\x04rack\x88\x01\x01\x12\x12\n\x04name\x18\x03 \x01(\tR\x04name\x12\x44\n\x06status\x18\x04 \x01(\tB\'\xfa\x42$r\"R\x06\x61\x63tiveR\x06\x66\x61iledR\x07offlineR\x07plannedH\x01R\x06status\x88\x01\x01\x12\x32\n\x04type\x18\x05 \x01(\tB\x19\xfa\x42\x16r\x14R\x07primaryR\tredundantH\x02R\x04type\x88\x01\x01\x12*\n\x06supply\x18\x06 \x01(\tB\r\xfa\x42\nr\x08R\x02\x61\x63R\x02\x64\x63H\x03R\x06supply\x88\x01\x01\x12;\n\x05phase\x18\x07 \x01(\tB \xfa\x42\x1dr\x1bR\x0csingle-phaseR\x0bthree-phaseH\x04R\x05phase\x88\x01\x01\x12\x1d\n\x07voltage\x18\x08 \x01(\x03H\x05R\x07voltage\x88\x01\x01\x12\x1f\n\x08\x61mperage\x18\t \x01(\x03H\x06R\x08\x61mperage\x88\x01\x01\x12,\n\x0fmax_utilization\x18\n \x01(\x03H\x07R\x0emaxUtilization\x88\x01\x01\x12*\n\x0emark_connected\x18\x0b \x01(\x08H\x08R\rmarkConnected\x88\x01\x01\x12%\n\x0b\x64\x65scription\x18\x0c \x01(\tH\tR\x0b\x64\x65scription\x88\x01\x01\x12-\n\x06tenant\x18\r \x01(\x0b\x32\x10.diode.v1.TenantH\nR\x06tenant\x88\x01\x01\x12\x1f\n\x08\x63omments\x18\x0e \x01(\tH\x0bR\x08\x63omments\x88\x01\x01\x12!\n\x04tags\x18\x0f \x03(\x0b\x32\r.diode.v1.TagR\x04tags\x12J\n\rcustom_fields\x18\x10 \x03(\x0b\x32%.diode.v1.PowerFeed.CustomFieldsEntryR\x0c\x63ustomFields\x12\x39\n\x08metadata\x18\x11 \x01(\x0b\x32\x17.google.protobuf.StructB\x04\x88\xb5\x18\x00R\x08metadata\x12*\n\x05owner\x18\x12 \x01(\x0b\x32\x0f.diode.v1.OwnerH\x0cR\x05owner\x88\x01\x01\x1a[\n\x11\x43ustomFieldsEntry\x12\x10\n\x03key\x18\x01 \x01(\tR\x03key\x12\x30\n\x05value\x18\x02 \x01(\x0b\x32\x1a.diode.v1.CustomFieldValueR\x05value:\x02\x38\x01\x42\x07\n\x05_rackB\t\n\x07_statusB\x07\n\x05_typeB\t\n\x07_supplyB\x08\n\x06_phaseB\n\n\x08_voltageB\x0b\n\t_amperageB\x12\n\x10_max_utilizationB\x11\n\x0f_mark_connectedB\x0e\n\x0c_descriptionB\t\n\x07_tenantB\x0b\n\t_commentsB\x08\n\x06_owner\"\xde\x11\n\x0bPowerOutlet\x12(\n\x06\x64\x65vice\x18\x01 \x01(\x0b\x32\x10.diode.v1.DeviceR\x06\x64\x65vice\x12-\n\x06module\x18\x02 \x01(\x0b\x32\x10.diode.v1.ModuleH\x00R\x06module\x88\x01\x01\x12\x12\n\x04name\x18\x03 \x01(\tR\x04name\x12\x19\n\x05label\x18\x04 \x01(\tH\x01R\x05label\x88\x01\x01\x12\xff\n\n\x04type\x18\x05 \x01(\tB\xe5\n\xfa\x42\xe1\nr\xde\nR\x07\x43S6360CR\x07\x43S6364CR\x07\x43S8164CR\x07\x43S8264CR\x07\x43S8364CR\x07\x43S8464CR\x0b\x64\x63-terminalR\teaton-c39R\thardwiredR\x07hdot-cxR\x11iec-60309-2p-e-4hR\x11iec-60309-2p-e-6hR\x11iec-60309-2p-e-9hR\x11iec-60309-3p-e-4hR\x11iec-60309-3p-e-6hR\x11iec-60309-3p-e-9hR\x13iec-60309-3p-n-e-4hR\x13iec-60309-3p-n-e-6hR\x13iec-60309-3p-n-e-9hR\x12iec-60309-p-n-e-4hR\x12iec-60309-p-n-e-6hR\x12iec-60309-p-n-e-9hR\riec-60320-c13R\riec-60320-c15R\riec-60320-c17R\riec-60320-c19R\riec-60320-c21R\x0ciec-60320-c5R\x0ciec-60320-c7R\x0biec-60906-1R\x05ita-eR\x05ita-fR\x05ita-gR\x05ita-hR\x05ita-iR\x05ita-jR\x05ita-kR\x05ita-lR\x05ita-mR\x11ita-multistandardR\x05ita-nR\x05ita-oR\x13molex-micro-fit-1x2R\x13molex-micro-fit-2x2R\x13molex-micro-fit-2x3R\x13molex-micro-fit-2x4R\rnbr-14136-10aR\rnbr-14136-20aR\nnema-1-15rR\x0bnema-10-30rR\x0bnema-10-50rR\x0bnema-14-20rR\x0bnema-14-30rR\x0bnema-14-50rR\x0bnema-14-60rR\x0bnema-15-15rR\x0bnema-15-20rR\x0bnema-15-30rR\x0bnema-15-50rR\x0bnema-15-60rR\nnema-5-15rR\nnema-5-20rR\nnema-5-30rR\nnema-5-50rR\nnema-6-15rR\nnema-6-20rR\nnema-6-30rR\nnema-6-50rR\x0bnema-l1-15rR\x0cnema-l10-30rR\x0cnema-l14-20rR\x0cnema-l14-30rR\x0cnema-l14-50rR\x0cnema-l14-60rR\x0cnema-l15-20rR\x0cnema-l15-30rR\x0cnema-l15-50rR\x0cnema-l15-60rR\x0cnema-l21-20rR\x0cnema-l21-30rR\x0cnema-l22-20rR\x0cnema-l22-30rR\x0bnema-l5-15rR\x0bnema-l5-20rR\x0bnema-l5-30rR\x0bnema-l5-50rR\x0bnema-l6-15rR\x0bnema-l6-20rR\x0bnema-l6-30rR\x0bnema-l6-50rR\x14neutrik-powercon-20aR\x14neutrik-powercon-32aR\x16neutrik-powercon-true1R\x1aneutrik-powercon-true1-topR\x05otherR\nsaf-d-gridR\x13ubiquiti-smartpowerR\x05usb-aR\x05usb-cR\x0busb-micro-bH\x02R\x04type\x88\x01\x01\x12\x19\n\x05\x63olor\x18\x06 \x01(\tH\x03R\x05\x63olor\x88\x01\x01\x12\x37\n\npower_port\x18\x07 \x01(\x0b\x32\x13.diode.v1.PowerPortH\x04R\tpowerPort\x88\x01\x01\x12.\n\x08\x66\x65\x65\x64_leg\x18\x08 \x01(\tB\x0e\xfa\x42\x0br\tR\x01\x41R\x01\x42R\x01\x43H\x05R\x07\x66\x65\x65\x64Leg\x88\x01\x01\x12%\n\x0b\x64\x65scription\x18\t \x01(\tH\x06R\x0b\x64\x65scription\x88\x01\x01\x12*\n\x0emark_connected\x18\n \x01(\x08H\x07R\rmarkConnected\x88\x01\x01\x12!\n\x04tags\x18\x0b \x03(\x0b\x32\r.diode.v1.TagR\x04tags\x12L\n\rcustom_fields\x18\x0c \x03(\x0b\x32\'.diode.v1.PowerOutlet.CustomFieldsEntryR\x0c\x63ustomFields\x12=\n\x06status\x18\r \x01(\tB \xfa\x42\x1dr\x1bR\x08\x64isabledR\x07\x65nabledR\x06\x66\x61ultyH\x08R\x06status\x88\x01\x01\x12\x39\n\x08metadata\x18\x0e \x01(\x0b\x32\x17.google.protobuf.StructB\x04\x88\xb5\x18\x00R\x08metadata\x12*\n\x05owner\x18\x0f \x01(\x0b\x32\x0f.diode.v1.OwnerH\tR\x05owner\x88\x01\x01\x1a[\n\x11\x43ustomFieldsEntry\x12\x10\n\x03key\x18\x01 \x01(\tR\x03key\x12\x30\n\x05value\x18\x02 \x01(\x0b\x32\x1a.diode.v1.CustomFieldValueR\x05value:\x02\x38\x01\x42\t\n\x07_moduleB\x08\n\x06_labelB\x07\n\x05_typeB\x08\n\x06_colorB\r\n\x0b_power_portB\x0b\n\t_feed_legB\x0e\n\x0c_descriptionB\x11\n\x0f_mark_connectedB\t\n\x07_statusB\x08\n\x06_owner\"\xa9\x04\n\nPowerPanel\x12\"\n\x04site\x18\x01 \x01(\x0b\x32\x0e.diode.v1.SiteR\x04site\x12\x33\n\x08location\x18\x02 \x01(\x0b\x32\x12.diode.v1.LocationH\x00R\x08location\x88\x01\x01\x12\x12\n\x04name\x18\x03 \x01(\tR\x04name\x12%\n\x0b\x64\x65scription\x18\x04 \x01(\tH\x01R\x0b\x64\x65scription\x88\x01\x01\x12\x1f\n\x08\x63omments\x18\x05 \x01(\tH\x02R\x08\x63omments\x88\x01\x01\x12!\n\x04tags\x18\x06 \x03(\x0b\x32\r.diode.v1.TagR\x04tags\x12K\n\rcustom_fields\x18\x07 \x03(\x0b\x32&.diode.v1.PowerPanel.CustomFieldsEntryR\x0c\x63ustomFields\x12\x39\n\x08metadata\x18\x08 \x01(\x0b\x32\x17.google.protobuf.StructB\x04\x88\xb5\x18\x00R\x08metadata\x12*\n\x05owner\x18\t \x01(\x0b\x32\x0f.diode.v1.OwnerH\x03R\x05owner\x88\x01\x01\x1a[\n\x11\x43ustomFieldsEntry\x12\x10\n\x03key\x18\x01 \x01(\tR\x03key\x12\x30\n\x05value\x18\x02 \x01(\x0b\x32\x1a.diode.v1.CustomFieldValueR\x05value:\x02\x38\x01\x42\x0b\n\t_locationB\x0e\n\x0c_descriptionB\x0b\n\t_commentsB\x08\n\x06_owner\"\x96\x11\n\tPowerPort\x12(\n\x06\x64\x65vice\x18\x01 \x01(\x0b\x32\x10.diode.v1.DeviceR\x06\x64\x65vice\x12-\n\x06module\x18\x02 \x01(\x0b\x32\x10.diode.v1.ModuleH\x00R\x06module\x88\x01\x01\x12\x12\n\x04name\x18\x03 \x01(\tR\x04name\x12\x19\n\x05label\x18\x04 \x01(\tH\x01R\x05label\x88\x01\x01\x12\xb7\x0b\n\x04type\x18\x05 \x01(\tB\x9d\x0b\xfa\x42\x99\x0br\x96\x0bR\x07\x63s6361cR\x07\x63s6365cR\x07\x63s8165cR\x07\x63s8265cR\x07\x63s8365cR\x07\x63s8465cR\x0b\x64\x63-terminalR\thardwiredR\x11iec-60309-2p-e-4hR\x11iec-60309-2p-e-6hR\x11iec-60309-2p-e-9hR\x11iec-60309-3p-e-4hR\x11iec-60309-3p-e-6hR\x11iec-60309-3p-e-9hR\x13iec-60309-3p-n-e-4hR\x13iec-60309-3p-n-e-6hR\x13iec-60309-3p-n-e-9hR\x12iec-60309-p-n-e-4hR\x12iec-60309-p-n-e-6hR\x12iec-60309-p-n-e-9hR\riec-60320-c14R\riec-60320-c16R\riec-60320-c18R\riec-60320-c20R\riec-60320-c22R\x0ciec-60320-c6R\x0ciec-60320-c8R\x0biec-60906-1R\x05ita-cR\x05ita-eR\x06ita-efR\x05ita-fR\x05ita-gR\x05ita-hR\x05ita-iR\x05ita-jR\x05ita-kR\x05ita-lR\x05ita-mR\x05ita-nR\x05ita-oR\x13molex-micro-fit-1x2R\x13molex-micro-fit-2x2R\x13molex-micro-fit-2x3R\x13molex-micro-fit-2x4R\rnbr-14136-10aR\rnbr-14136-20aR\nnema-1-15pR\x0bnema-10-30pR\x0bnema-10-50pR\x0bnema-14-20pR\x0bnema-14-30pR\x0bnema-14-50pR\x0bnema-14-60pR\x0bnema-15-15pR\x0bnema-15-20pR\x0bnema-15-30pR\x0bnema-15-50pR\x0bnema-15-60pR\nnema-5-15pR\nnema-5-20pR\nnema-5-30pR\nnema-5-50pR\nnema-6-15pR\nnema-6-20pR\nnema-6-30pR\nnema-6-50pR\x0bnema-l1-15pR\x0cnema-l10-30pR\x0cnema-l14-20pR\x0cnema-l14-30pR\x0cnema-l14-50pR\x0cnema-l14-60pR\x0cnema-l15-20pR\x0cnema-l15-30pR\x0cnema-l15-50pR\x0cnema-l15-60pR\x0cnema-l21-20pR\x0cnema-l21-30pR\x0cnema-l22-20pR\x0cnema-l22-30pR\x0bnema-l5-15pR\x0bnema-l5-20pR\x0bnema-l5-30pR\x0bnema-l5-50pR\x0bnema-l6-15pR\x0bnema-l6-20pR\x0bnema-l6-30pR\x0bnema-l6-50pR\x13neutrik-powercon-20R\x13neutrik-powercon-32R\x16neutrik-powercon-true1R\x1aneutrik-powercon-true1-topR\x05otherR\nsaf-d-gridR\x13ubiquiti-smartpowerR\x07usb-3-bR\rusb-3-micro-bR\x05usb-aR\x05usb-bR\x05usb-cR\x0busb-micro-aR\x0cusb-micro-abR\x0busb-micro-bR\nusb-mini-aR\nusb-mini-bH\x02R\x04type\x88\x01\x01\x12&\n\x0cmaximum_draw\x18\x06 \x01(\x03H\x03R\x0bmaximumDraw\x88\x01\x01\x12*\n\x0e\x61llocated_draw\x18\x07 \x01(\x03H\x04R\rallocatedDraw\x88\x01\x01\x12%\n\x0b\x64\x65scription\x18\x08 \x01(\tH\x05R\x0b\x64\x65scription\x88\x01\x01\x12*\n\x0emark_connected\x18\t \x01(\x08H\x06R\rmarkConnected\x88\x01\x01\x12!\n\x04tags\x18\n \x03(\x0b\x32\r.diode.v1.TagR\x04tags\x12J\n\rcustom_fields\x18\x0b \x03(\x0b\x32%.diode.v1.PowerPort.CustomFieldsEntryR\x0c\x63ustomFields\x12\x39\n\x08metadata\x18\x0c \x01(\x0b\x32\x17.google.protobuf.StructB\x04\x88\xb5\x18\x00R\x08metadata\x12*\n\x05owner\x18\r \x01(\x0b\x32\x0f.diode.v1.OwnerH\x07R\x05owner\x88\x01\x01\x1a[\n\x11\x43ustomFieldsEntry\x12\x10\n\x03key\x18\x01 \x01(\tR\x03key\x12\x30\n\x05value\x18\x02 \x01(\x0b\x32\x1a.diode.v1.CustomFieldValueR\x05value:\x02\x38\x01\x42\t\n\x07_moduleB\x08\n\x06_labelB\x07\n\x05_typeB\x0f\n\r_maximum_drawB\x11\n\x0f_allocated_drawB\x0e\n\x0c_descriptionB\x11\n\x0f_mark_connectedB\x08\n\x06_owner\"\xb8\x08\n\x06Prefix\x12\x16\n\x06prefix\x18\x01 \x01(\tR\x06prefix\x12$\n\x03vrf\x18\x02 \x01(\x0b\x32\r.diode.v1.VRFH\x01R\x03vrf\x88\x01\x01\x12;\n\x0escope_location\x18\x03 \x01(\x0b\x32\x12.diode.v1.LocationH\x00R\rscopeLocation\x12\x35\n\x0cscope_region\x18\x04 \x01(\x0b\x32\x10.diode.v1.RegionH\x00R\x0bscopeRegion\x12/\n\nscope_site\x18\x05 \x01(\x0b\x32\x0e.diode.v1.SiteH\x00R\tscopeSite\x12?\n\x10scope_site_group\x18\x06 \x01(\x0b\x32\x13.diode.v1.SiteGroupH\x00R\x0escopeSiteGroup\x12-\n\x06tenant\x18\x07 \x01(\x0b\x32\x10.diode.v1.TenantH\x02R\x06tenant\x88\x01\x01\x12\'\n\x04vlan\x18\x08 \x01(\x0b\x32\x0e.diode.v1.VLANH\x03R\x04vlan\x88\x01\x01\x12K\n\x06status\x18\t \x01(\tB.\xfa\x42+r)R\x06\x61\x63tiveR\tcontainerR\ndeprecatedR\x08reservedH\x04R\x06status\x88\x01\x01\x12\'\n\x04role\x18\n \x01(\x0b\x32\x0e.diode.v1.RoleH\x05R\x04role\x88\x01\x01\x12\x1c\n\x07is_pool\x18\x0b \x01(\x08H\x06R\x06isPool\x88\x01\x01\x12(\n\rmark_utilized\x18\x0c \x01(\x08H\x07R\x0cmarkUtilized\x88\x01\x01\x12%\n\x0b\x64\x65scription\x18\r \x01(\tH\x08R\x0b\x64\x65scription\x88\x01\x01\x12\x1f\n\x08\x63omments\x18\x0e \x01(\tH\tR\x08\x63omments\x88\x01\x01\x12!\n\x04tags\x18\x0f \x03(\x0b\x32\r.diode.v1.TagR\x04tags\x12G\n\rcustom_fields\x18\x10 \x03(\x0b\x32\".diode.v1.Prefix.CustomFieldsEntryR\x0c\x63ustomFields\x12\x39\n\x08metadata\x18\x11 \x01(\x0b\x32\x17.google.protobuf.StructB\x04\x88\xb5\x18\x00R\x08metadata\x12*\n\x05owner\x18\x12 \x01(\x0b\x32\x0f.diode.v1.OwnerH\nR\x05owner\x88\x01\x01\x1a[\n\x11\x43ustomFieldsEntry\x12\x10\n\x03key\x18\x01 \x01(\tR\x03key\x12\x30\n\x05value\x18\x02 \x01(\x0b\x32\x1a.diode.v1.CustomFieldValueR\x05value:\x02\x38\x01\x42\x07\n\x05scopeB\x06\n\x04_vrfB\t\n\x07_tenantB\x07\n\x05_vlanB\t\n\x07_statusB\x07\n\x05_roleB\n\n\x08_is_poolB\x10\n\x0e_mark_utilizedB\x0e\n\x0c_descriptionB\x0b\n\t_commentsB\x08\n\x06_owner\"\xad\x04\n\x08Provider\x12\x12\n\x04name\x18\x01 \x01(\tR\x04name\x12\x12\n\x04slug\x18\x02 \x01(\tR\x04slug\x12%\n\x0b\x64\x65scription\x18\x03 \x01(\tH\x00R\x0b\x64\x65scription\x88\x01\x01\x12\x1f\n\x08\x63omments\x18\x04 \x01(\tH\x01R\x08\x63omments\x88\x01\x01\x12!\n\x04tags\x18\x05 \x03(\x0b\x32\r.diode.v1.TagR\x04tags\x12I\n\rcustom_fields\x18\x06 \x03(\x0b\x32$.diode.v1.Provider.CustomFieldsEntryR\x0c\x63ustomFields\x12\x35\n\x08\x61\x63\x63ounts\x18\x07 \x03(\x0b\x32\x19.diode.v1.ProviderAccountR\x08\x61\x63\x63ounts\x12!\n\x04\x61sns\x18\x08 \x03(\x0b\x32\r.diode.v1.ASNR\x04\x61sns\x12\x39\n\x08metadata\x18\t \x01(\x0b\x32\x17.google.protobuf.StructB\x04\x88\xb5\x18\x00R\x08metadata\x12*\n\x05owner\x18\n \x01(\x0b\x32\x0f.diode.v1.OwnerH\x02R\x05owner\x88\x01\x01\x1a[\n\x11\x43ustomFieldsEntry\x12\x10\n\x03key\x18\x01 \x01(\tR\x03key\x12\x30\n\x05value\x18\x02 \x01(\x0b\x32\x1a.diode.v1.CustomFieldValueR\x05value:\x02\x38\x01\x42\x0e\n\x0c_descriptionB\x0b\n\t_commentsB\x08\n\x06_owner\"\xa5\x04\n\x0fProviderAccount\x12.\n\x08provider\x18\x01 \x01(\x0b\x32\x12.diode.v1.ProviderR\x08provider\x12\x17\n\x04name\x18\x02 \x01(\tH\x00R\x04name\x88\x01\x01\x12\x18\n\x07\x61\x63\x63ount\x18\x03 \x01(\tR\x07\x61\x63\x63ount\x12%\n\x0b\x64\x65scription\x18\x04 \x01(\tH\x01R\x0b\x64\x65scription\x88\x01\x01\x12\x1f\n\x08\x63omments\x18\x05 \x01(\tH\x02R\x08\x63omments\x88\x01\x01\x12!\n\x04tags\x18\x06 \x03(\x0b\x32\r.diode.v1.TagR\x04tags\x12P\n\rcustom_fields\x18\x07 \x03(\x0b\x32+.diode.v1.ProviderAccount.CustomFieldsEntryR\x0c\x63ustomFields\x12\x39\n\x08metadata\x18\x08 \x01(\x0b\x32\x17.google.protobuf.StructB\x04\x88\xb5\x18\x00R\x08metadata\x12*\n\x05owner\x18\t \x01(\x0b\x32\x0f.diode.v1.OwnerH\x03R\x05owner\x88\x01\x01\x1a[\n\x11\x43ustomFieldsEntry\x12\x10\n\x03key\x18\x01 \x01(\tR\x03key\x12\x30\n\x05value\x18\x02 \x01(\x0b\x32\x1a.diode.v1.CustomFieldValueR\x05value:\x02\x38\x01\x42\x07\n\x05_nameB\x0e\n\x0c_descriptionB\x0b\n\t_commentsB\x08\n\x06_owner\"\xb0\x04\n\x0fProviderNetwork\x12.\n\x08provider\x18\x01 \x01(\x0b\x32\x12.diode.v1.ProviderR\x08provider\x12\x12\n\x04name\x18\x02 \x01(\tR\x04name\x12\"\n\nservice_id\x18\x03 \x01(\tH\x00R\tserviceId\x88\x01\x01\x12%\n\x0b\x64\x65scription\x18\x04 \x01(\tH\x01R\x0b\x64\x65scription\x88\x01\x01\x12\x1f\n\x08\x63omments\x18\x05 \x01(\tH\x02R\x08\x63omments\x88\x01\x01\x12!\n\x04tags\x18\x06 \x03(\x0b\x32\r.diode.v1.TagR\x04tags\x12P\n\rcustom_fields\x18\x07 \x03(\x0b\x32+.diode.v1.ProviderNetwork.CustomFieldsEntryR\x0c\x63ustomFields\x12\x39\n\x08metadata\x18\x08 \x01(\x0b\x32\x17.google.protobuf.StructB\x04\x88\xb5\x18\x00R\x08metadata\x12*\n\x05owner\x18\t \x01(\x0b\x32\x0f.diode.v1.OwnerH\x03R\x05owner\x88\x01\x01\x1a[\n\x11\x43ustomFieldsEntry\x12\x10\n\x03key\x18\x01 \x01(\tR\x03key\x12\x30\n\x05value\x18\x02 \x01(\x0b\x32\x1a.diode.v1.CustomFieldValueR\x05value:\x02\x38\x01\x42\r\n\x0b_service_idB\x0e\n\x0c_descriptionB\x0b\n\t_commentsB\x08\n\x06_owner\"\xfc\x03\n\x03RIR\x12\x12\n\x04name\x18\x01 \x01(\tR\x04name\x12\x12\n\x04slug\x18\x02 \x01(\tR\x04slug\x12\"\n\nis_private\x18\x03 \x01(\x08H\x00R\tisPrivate\x88\x01\x01\x12%\n\x0b\x64\x65scription\x18\x04 \x01(\tH\x01R\x0b\x64\x65scription\x88\x01\x01\x12!\n\x04tags\x18\x05 \x03(\x0b\x32\r.diode.v1.TagR\x04tags\x12\x44\n\rcustom_fields\x18\x06 \x03(\x0b\x32\x1f.diode.v1.RIR.CustomFieldsEntryR\x0c\x63ustomFields\x12\x39\n\x08metadata\x18\x07 \x01(\x0b\x32\x17.google.protobuf.StructB\x04\x88\xb5\x18\x00R\x08metadata\x12*\n\x05owner\x18\x08 \x01(\x0b\x32\x0f.diode.v1.OwnerH\x02R\x05owner\x88\x01\x01\x12\x1f\n\x08\x63omments\x18\t \x01(\tH\x03R\x08\x63omments\x88\x01\x01\x1a[\n\x11\x43ustomFieldsEntry\x12\x10\n\x03key\x18\x01 \x01(\tR\x03key\x12\x30\n\x05value\x18\x02 \x01(\x0b\x32\x1a.diode.v1.CustomFieldValueR\x05value:\x02\x38\x01\x42\r\n\x0b_is_privateB\x0e\n\x0c_descriptionB\x08\n\x06_ownerB\x0b\n\t_comments\"\xcd\x10\n\x04Rack\x12\x12\n\x04name\x18\x01 \x01(\tR\x04name\x12$\n\x0b\x66\x61\x63ility_id\x18\x02 \x01(\tH\x00R\nfacilityId\x88\x01\x01\x12\"\n\x04site\x18\x03 \x01(\x0b\x32\x0e.diode.v1.SiteR\x04site\x12\x33\n\x08location\x18\x04 \x01(\x0b\x32\x12.diode.v1.LocationH\x01R\x08location\x88\x01\x01\x12-\n\x06tenant\x18\x05 \x01(\x0b\x32\x10.diode.v1.TenantH\x02R\x06tenant\x88\x01\x01\x12T\n\x06status\x18\x06 \x01(\tB7\xfa\x42\x34r2R\x06\x61\x63tiveR\tavailableR\ndeprecatedR\x07plannedR\x08reservedH\x03R\x06status\x88\x01\x01\x12+\n\x04role\x18\x07 \x01(\x0b\x32\x12.diode.v1.RackRoleH\x04R\x04role\x88\x01\x01\x12\x1b\n\x06serial\x18\x08 \x01(\tH\x05R\x06serial\x88\x01\x01\x12 \n\tasset_tag\x18\t \x01(\tH\x06R\x08\x61ssetTag\x88\x01\x01\x12\x34\n\track_type\x18\n \x01(\x0b\x32\x12.diode.v1.RackTypeH\x07R\x08rackType\x88\x01\x01\x12\x9d\x01\n\x0b\x66orm_factor\x18\x0b \x01(\tBw\xfa\x42trrR\x0c\x32-post-frameR\x0e\x34-post-cabinetR\x0c\x34-post-frameR\x0cwall-cabinetR\x15wall-cabinet-verticalR\nwall-frameR\x13wall-frame-verticalH\x08R\nformFactor\x88\x01\x01\x12(\n\x05width\x18\x0c \x01(\x03\x42\r\xfa\x42\n\"\x08\x30\n0\x13\x30\x15\x30\x17H\tR\x05width\x88\x01\x01\x12\x1e\n\x08u_height\x18\r \x01(\x03H\nR\x07uHeight\x88\x01\x01\x12(\n\rstarting_unit\x18\x0e \x01(\x03H\x0bR\x0cstartingUnit\x88\x01\x01\x12\x1b\n\x06weight\x18\x0f \x01(\x01H\x0cR\x06weight\x88\x01\x01\x12\"\n\nmax_weight\x18\x10 \x01(\x03H\rR\tmaxWeight\x88\x01\x01\x12:\n\x0bweight_unit\x18\x11 \x01(\tB\x14\xfa\x42\x11r\x0fR\x01gR\x02kgR\x02lbR\x02ozH\x0eR\nweightUnit\x88\x01\x01\x12\"\n\ndesc_units\x18\x12 \x01(\x08H\x0fR\tdescUnits\x88\x01\x01\x12$\n\x0bouter_width\x18\x13 \x01(\x03H\x10R\nouterWidth\x88\x01\x01\x12$\n\x0bouter_depth\x18\x14 \x01(\x03H\x11R\nouterDepth\x88\x01\x01\x12\x31\n\nouter_unit\x18\x15 \x01(\tB\r\xfa\x42\nr\x08R\x02inR\x02mmH\x12R\touterUnit\x88\x01\x01\x12*\n\x0emounting_depth\x18\x16 \x01(\x03H\x13R\rmountingDepth\x88\x01\x01\x12\x42\n\x07\x61irflow\x18\x17 \x01(\tB#\xfa\x42 r\x1eR\rfront-to-rearR\rrear-to-frontH\x14R\x07\x61irflow\x88\x01\x01\x12%\n\x0b\x64\x65scription\x18\x18 \x01(\tH\x15R\x0b\x64\x65scription\x88\x01\x01\x12\x1f\n\x08\x63omments\x18\x19 \x01(\tH\x16R\x08\x63omments\x88\x01\x01\x12!\n\x04tags\x18\x1a \x03(\x0b\x32\r.diode.v1.TagR\x04tags\x12\x45\n\rcustom_fields\x18\x1b \x03(\x0b\x32 .diode.v1.Rack.CustomFieldsEntryR\x0c\x63ustomFields\x12&\n\x0couter_height\x18\x1c \x01(\x03H\x17R\x0bouterHeight\x88\x01\x01\x12\x39\n\x08metadata\x18\x1d \x01(\x0b\x32\x17.google.protobuf.StructB\x04\x88\xb5\x18\x00R\x08metadata\x12*\n\x05owner\x18\x1e \x01(\x0b\x32\x0f.diode.v1.OwnerH\x18R\x05owner\x88\x01\x01\x12.\n\x05group\x18\x1f \x01(\x0b\x32\x13.diode.v1.RackGroupH\x19R\x05group\x88\x01\x01\x12X\n\x12\x63ooling_capability\x18 \x01(\tB$\xfa\x42!r\x1fR\x08\x61ir-onlyR\x06hybridR\x0bliquid-onlyH\x1aR\x11\x63oolingCapability\x88\x01\x01\x12.\n\x10\x63ooling_capacity\x18! \x01(\x01H\x1bR\x0f\x63oolingCapacity\x88\x01\x01\x1a[\n\x11\x43ustomFieldsEntry\x12\x10\n\x03key\x18\x01 \x01(\tR\x03key\x12\x30\n\x05value\x18\x02 \x01(\x0b\x32\x1a.diode.v1.CustomFieldValueR\x05value:\x02\x38\x01\x42\x0e\n\x0c_facility_idB\x0b\n\t_locationB\t\n\x07_tenantB\t\n\x07_statusB\x07\n\x05_roleB\t\n\x07_serialB\x0c\n\n_asset_tagB\x0c\n\n_rack_typeB\x0e\n\x0c_form_factorB\x08\n\x06_widthB\x0b\n\t_u_heightB\x10\n\x0e_starting_unitB\t\n\x07_weightB\r\n\x0b_max_weightB\x0e\n\x0c_weight_unitB\r\n\x0b_desc_unitsB\x0e\n\x0c_outer_widthB\x0e\n\x0c_outer_depthB\r\n\x0b_outer_unitB\x11\n\x0f_mounting_depthB\n\n\x08_airflowB\x0e\n\x0c_descriptionB\x0b\n\t_commentsB\x0f\n\r_outer_heightB\x08\n\x06_ownerB\x08\n\x06_groupB\x15\n\x13_cooling_capabilityB\x13\n\x11_cooling_capacity\"\x83\x05\n\x0fRackReservation\x12\"\n\x04rack\x18\x01 \x01(\x0b\x32\x0e.diode.v1.RackR\x04rack\x12\x14\n\x05units\x18\x02 \x03(\x03R\x05units\x12-\n\x06tenant\x18\x03 \x01(\x0b\x32\x10.diode.v1.TenantH\x00R\x06tenant\x88\x01\x01\x12 \n\x0b\x64\x65scription\x18\x04 \x01(\tR\x0b\x64\x65scription\x12\x1f\n\x08\x63omments\x18\x05 \x01(\tH\x01R\x08\x63omments\x88\x01\x01\x12!\n\x04tags\x18\x06 \x03(\x0b\x32\r.diode.v1.TagR\x04tags\x12P\n\rcustom_fields\x18\x07 \x03(\x0b\x32+.diode.v1.RackReservation.CustomFieldsEntryR\x0c\x63ustomFields\x12:\n\x06status\x18\x08 \x01(\tB\x1d\xfa\x42\x1ar\x18R\x06\x61\x63tiveR\x07pendingR\x05staleH\x02R\x06status\x88\x01\x01\x12\x39\n\x08metadata\x18\t \x01(\x0b\x32\x17.google.protobuf.StructB\x04\x88\xb5\x18\x00R\x08metadata\x12*\n\x05owner\x18\n \x01(\x0b\x32\x0f.diode.v1.OwnerH\x03R\x05owner\x88\x01\x01\x12\"\n\x04user\x18\x0b \x01(\x0b\x32\x0e.diode.v1.UserR\x04user\x1a[\n\x11\x43ustomFieldsEntry\x12\x10\n\x03key\x18\x01 \x01(\tR\x03key\x12\x30\n\x05value\x18\x02 \x01(\x0b\x32\x1a.diode.v1.CustomFieldValueR\x05value:\x02\x38\x01\x42\t\n\x07_tenantB\x0b\n\t_commentsB\t\n\x07_statusB\x08\n\x06_owner\"\xf8\x03\n\x08RackRole\x12\x12\n\x04name\x18\x01 \x01(\tR\x04name\x12\x12\n\x04slug\x18\x02 \x01(\tR\x04slug\x12\x19\n\x05\x63olor\x18\x03 \x01(\tH\x00R\x05\x63olor\x88\x01\x01\x12%\n\x0b\x64\x65scription\x18\x04 \x01(\tH\x01R\x0b\x64\x65scription\x88\x01\x01\x12!\n\x04tags\x18\x05 \x03(\x0b\x32\r.diode.v1.TagR\x04tags\x12I\n\rcustom_fields\x18\x06 \x03(\x0b\x32$.diode.v1.RackRole.CustomFieldsEntryR\x0c\x63ustomFields\x12\x39\n\x08metadata\x18\x07 \x01(\x0b\x32\x17.google.protobuf.StructB\x04\x88\xb5\x18\x00R\x08metadata\x12*\n\x05owner\x18\x08 \x01(\x0b\x32\x0f.diode.v1.OwnerH\x02R\x05owner\x88\x01\x01\x12\x1f\n\x08\x63omments\x18\t \x01(\tH\x03R\x08\x63omments\x88\x01\x01\x1a[\n\x11\x43ustomFieldsEntry\x12\x10\n\x03key\x18\x01 \x01(\tR\x03key\x12\x30\n\x05value\x18\x02 \x01(\x0b\x32\x1a.diode.v1.CustomFieldValueR\x05value:\x02\x38\x01\x42\x08\n\x06_colorB\x0e\n\x0c_descriptionB\x08\n\x06_ownerB\x0b\n\t_comments\"\x94\x0c\n\x08RackType\x12:\n\x0cmanufacturer\x18\x01 \x01(\x0b\x32\x16.diode.v1.ManufacturerR\x0cmanufacturer\x12\x14\n\x05model\x18\x02 \x01(\tR\x05model\x12\x12\n\x04slug\x18\x03 \x01(\tR\x04slug\x12%\n\x0b\x64\x65scription\x18\x04 \x01(\tH\x00R\x0b\x64\x65scription\x88\x01\x01\x12\x9d\x01\n\x0b\x66orm_factor\x18\x05 \x01(\tBw\xfa\x42trrR\x0c\x32-post-frameR\x0e\x34-post-cabinetR\x0c\x34-post-frameR\x0cwall-cabinetR\x15wall-cabinet-verticalR\nwall-frameR\x13wall-frame-verticalH\x01R\nformFactor\x88\x01\x01\x12(\n\x05width\x18\x06 \x01(\x03\x42\r\xfa\x42\n\"\x08\x30\n0\x13\x30\x15\x30\x17H\x02R\x05width\x88\x01\x01\x12\x1e\n\x08u_height\x18\x07 \x01(\x03H\x03R\x07uHeight\x88\x01\x01\x12(\n\rstarting_unit\x18\x08 \x01(\x03H\x04R\x0cstartingUnit\x88\x01\x01\x12\"\n\ndesc_units\x18\t \x01(\x08H\x05R\tdescUnits\x88\x01\x01\x12$\n\x0bouter_width\x18\n \x01(\x03H\x06R\nouterWidth\x88\x01\x01\x12$\n\x0bouter_depth\x18\x0b \x01(\x03H\x07R\nouterDepth\x88\x01\x01\x12\x31\n\nouter_unit\x18\x0c \x01(\tB\r\xfa\x42\nr\x08R\x02inR\x02mmH\x08R\touterUnit\x88\x01\x01\x12\x1b\n\x06weight\x18\r \x01(\x01H\tR\x06weight\x88\x01\x01\x12\"\n\nmax_weight\x18\x0e \x01(\x03H\nR\tmaxWeight\x88\x01\x01\x12:\n\x0bweight_unit\x18\x0f \x01(\tB\x14\xfa\x42\x11r\x0fR\x01gR\x02kgR\x02lbR\x02ozH\x0bR\nweightUnit\x88\x01\x01\x12*\n\x0emounting_depth\x18\x10 \x01(\x03H\x0cR\rmountingDepth\x88\x01\x01\x12\x1f\n\x08\x63omments\x18\x11 \x01(\tH\rR\x08\x63omments\x88\x01\x01\x12!\n\x04tags\x18\x12 \x03(\x0b\x32\r.diode.v1.TagR\x04tags\x12I\n\rcustom_fields\x18\x13 \x03(\x0b\x32$.diode.v1.RackType.CustomFieldsEntryR\x0c\x63ustomFields\x12&\n\x0couter_height\x18\x14 \x01(\x03H\x0eR\x0bouterHeight\x88\x01\x01\x12\x39\n\x08metadata\x18\x15 \x01(\x0b\x32\x17.google.protobuf.StructB\x04\x88\xb5\x18\x00R\x08metadata\x12*\n\x05owner\x18\x16 \x01(\x0b\x32\x0f.diode.v1.OwnerH\x0fR\x05owner\x88\x01\x01\x12X\n\x12\x63ooling_capability\x18\x17 \x01(\tB$\xfa\x42!r\x1fR\x08\x61ir-onlyR\x06hybridR\x0bliquid-onlyH\x10R\x11\x63oolingCapability\x88\x01\x01\x12.\n\x10\x63ooling_capacity\x18\x18 \x01(\x01H\x11R\x0f\x63oolingCapacity\x88\x01\x01\x1a[\n\x11\x43ustomFieldsEntry\x12\x10\n\x03key\x18\x01 \x01(\tR\x03key\x12\x30\n\x05value\x18\x02 \x01(\x0b\x32\x1a.diode.v1.CustomFieldValueR\x05value:\x02\x38\x01\x42\x0e\n\x0c_descriptionB\x0e\n\x0c_form_factorB\x08\n\x06_widthB\x0b\n\t_u_heightB\x10\n\x0e_starting_unitB\r\n\x0b_desc_unitsB\x0e\n\x0c_outer_widthB\x0e\n\x0c_outer_depthB\r\n\x0b_outer_unitB\t\n\x07_weightB\r\n\x0b_max_weightB\x0e\n\x0c_weight_unitB\x11\n\x0f_mounting_depthB\x0b\n\t_commentsB\x0f\n\r_outer_heightB\x08\n\x06_ownerB\x15\n\x13_cooling_capabilityB\x13\n\x11_cooling_capacity\"\x96\t\n\x08RearPort\x12(\n\x06\x64\x65vice\x18\x01 \x01(\x0b\x32\x10.diode.v1.DeviceR\x06\x64\x65vice\x12-\n\x06module\x18\x02 \x01(\x0b\x32\x10.diode.v1.ModuleH\x00R\x06module\x88\x01\x01\x12\x12\n\x04name\x18\x03 \x01(\tR\x04name\x12\x19\n\x05label\x18\x04 \x01(\tH\x01R\x05label\x88\x01\x01\x12\xe4\x03\n\x04type\x18\x05 \x01(\tB\xcf\x03\xfa\x42\xcb\x03r\xc8\x03R\t110-punchR\x04\x34p2cR\x04\x34p4cR\x04\x36p2cR\x04\x36p4cR\x04\x36p6cR\x04\x38p2cR\x04\x38p4cR\x04\x38p6cR\x04\x38p8cR\x03\x62ncR\x02\x63sR\x01\x66R\x02\x66\x63R\x06\x66\x63-apcR\x05\x66\x63-pcR\x06\x66\x63-upcR\x04gg45R\x02lcR\x06lc-apcR\x05lc-pcR\x06lc-upcR\x03lshR\x07lsh-apcR\x06lsh-pcR\x07lsh-upcR\x03lx5R\x07lx5-apcR\x06lx5-pcR\x07lx5-upcR\x03mdcR\x03mpoR\x05mrj21R\x04mtrjR\x02muR\x06mu-apcR\x05mu-pcR\x06mu-upcR\x01nR\x05otherR\x02scR\x06sc-apcR\x05sc-pcR\x06sc-upcR\x07sma-905R\x07sma-906R\x02snR\x06spliceR\x02stR\x07tera-1pR\x07tera-2pR\x07tera-4pR\x06urm-p2R\x06urm-p4R\x06urm-p8R\x05usb-aR\x05usb-bR\x05usb-cR\x0busb-micro-aR\x0cusb-micro-abR\x0busb-micro-bR\nusb-mini-aR\nusb-mini-bR\x04type\x12\x19\n\x05\x63olor\x18\x06 \x01(\tH\x02R\x05\x63olor\x88\x01\x01\x12!\n\tpositions\x18\x07 \x01(\x03H\x03R\tpositions\x88\x01\x01\x12%\n\x0b\x64\x65scription\x18\x08 \x01(\tH\x04R\x0b\x64\x65scription\x88\x01\x01\x12*\n\x0emark_connected\x18\t \x01(\x08H\x05R\rmarkConnected\x88\x01\x01\x12!\n\x04tags\x18\n \x03(\x0b\x32\r.diode.v1.TagR\x04tags\x12I\n\rcustom_fields\x18\x0b \x03(\x0b\x32$.diode.v1.RearPort.CustomFieldsEntryR\x0c\x63ustomFields\x12\x39\n\x08metadata\x18\x0c \x01(\x0b\x32\x17.google.protobuf.StructB\x04\x88\xb5\x18\x00R\x08metadata\x12*\n\x05owner\x18\r \x01(\x0b\x32\x0f.diode.v1.OwnerH\x06R\x05owner\x88\x01\x01\x1a[\n\x11\x43ustomFieldsEntry\x12\x10\n\x03key\x18\x01 \x01(\tR\x03key\x12\x30\n\x05value\x18\x02 \x01(\x0b\x32\x1a.diode.v1.CustomFieldValueR\x05value:\x02\x38\x01\x42\t\n\x07_moduleB\x08\n\x06_labelB\x08\n\x06_colorB\x0c\n\n_positionsB\x0e\n\x0c_descriptionB\x11\n\x0f_mark_connectedB\x08\n\x06_owner\"\x89\x04\n\x06Region\x12\x12\n\x04name\x18\x01 \x01(\tR\x04name\x12\x12\n\x04slug\x18\x02 \x01(\tR\x04slug\x12-\n\x06parent\x18\x03 \x01(\x0b\x32\x10.diode.v1.RegionH\x00R\x06parent\x88\x01\x01\x12%\n\x0b\x64\x65scription\x18\x04 \x01(\tH\x01R\x0b\x64\x65scription\x88\x01\x01\x12!\n\x04tags\x18\x05 \x03(\x0b\x32\r.diode.v1.TagR\x04tags\x12G\n\rcustom_fields\x18\x06 \x03(\x0b\x32\".diode.v1.Region.CustomFieldsEntryR\x0c\x63ustomFields\x12\x1f\n\x08\x63omments\x18\x07 \x01(\tH\x02R\x08\x63omments\x88\x01\x01\x12\x39\n\x08metadata\x18\x08 \x01(\x0b\x32\x17.google.protobuf.StructB\x04\x88\xb5\x18\x00R\x08metadata\x12*\n\x05owner\x18\t \x01(\x0b\x32\x0f.diode.v1.OwnerH\x03R\x05owner\x88\x01\x01\x1a[\n\x11\x43ustomFieldsEntry\x12\x10\n\x03key\x18\x01 \x01(\tR\x03key\x12\x30\n\x05value\x18\x02 \x01(\x0b\x32\x1a.diode.v1.CustomFieldValueR\x05value:\x02\x38\x01\x42\t\n\x07_parentB\x0e\n\x0c_descriptionB\x0b\n\t_commentsB\x08\n\x06_owner\"\xf3\x03\n\x04Role\x12\x12\n\x04name\x18\x01 \x01(\tR\x04name\x12\x12\n\x04slug\x18\x02 \x01(\tR\x04slug\x12\x1b\n\x06weight\x18\x03 \x01(\x03H\x00R\x06weight\x88\x01\x01\x12%\n\x0b\x64\x65scription\x18\x04 \x01(\tH\x01R\x0b\x64\x65scription\x88\x01\x01\x12!\n\x04tags\x18\x05 \x03(\x0b\x32\r.diode.v1.TagR\x04tags\x12\x45\n\rcustom_fields\x18\x06 \x03(\x0b\x32 .diode.v1.Role.CustomFieldsEntryR\x0c\x63ustomFields\x12\x39\n\x08metadata\x18\x07 \x01(\x0b\x32\x17.google.protobuf.StructB\x04\x88\xb5\x18\x00R\x08metadata\x12*\n\x05owner\x18\x08 \x01(\x0b\x32\x0f.diode.v1.OwnerH\x02R\x05owner\x88\x01\x01\x12\x1f\n\x08\x63omments\x18\t \x01(\tH\x03R\x08\x63omments\x88\x01\x01\x1a[\n\x11\x43ustomFieldsEntry\x12\x10\n\x03key\x18\x01 \x01(\tR\x03key\x12\x30\n\x05value\x18\x02 \x01(\x0b\x32\x1a.diode.v1.CustomFieldValueR\x05value:\x02\x38\x01\x42\t\n\x07_weightB\x0e\n\x0c_descriptionB\x08\n\x06_ownerB\x0b\n\t_comments\"\xff\x03\n\x0bRouteTarget\x12\x12\n\x04name\x18\x01 \x01(\tR\x04name\x12-\n\x06tenant\x18\x02 \x01(\x0b\x32\x10.diode.v1.TenantH\x00R\x06tenant\x88\x01\x01\x12%\n\x0b\x64\x65scription\x18\x03 \x01(\tH\x01R\x0b\x64\x65scription\x88\x01\x01\x12\x1f\n\x08\x63omments\x18\x04 \x01(\tH\x02R\x08\x63omments\x88\x01\x01\x12!\n\x04tags\x18\x05 \x03(\x0b\x32\r.diode.v1.TagR\x04tags\x12L\n\rcustom_fields\x18\x06 \x03(\x0b\x32\'.diode.v1.RouteTarget.CustomFieldsEntryR\x0c\x63ustomFields\x12\x39\n\x08metadata\x18\x07 \x01(\x0b\x32\x17.google.protobuf.StructB\x04\x88\xb5\x18\x00R\x08metadata\x12*\n\x05owner\x18\x08 \x01(\x0b\x32\x0f.diode.v1.OwnerH\x03R\x05owner\x88\x01\x01\x1a[\n\x11\x43ustomFieldsEntry\x12\x10\n\x03key\x18\x01 \x01(\tR\x03key\x12\x30\n\x05value\x18\x02 \x01(\x0b\x32\x1a.diode.v1.CustomFieldValueR\x05value:\x02\x38\x01\x42\t\n\x07_tenantB\x0e\n\x0c_descriptionB\x0b\n\t_commentsB\x08\n\x06_owner\"\x98\x08\n\x07Service\x12\x31\n\x06\x64\x65vice\x18\x01 \x01(\x0b\x32\x10.diode.v1.DeviceB\x02\x18\x01H\x01R\x06\x64\x65vice\x88\x01\x01\x12J\n\x0fvirtual_machine\x18\x02 \x01(\x0b\x32\x18.diode.v1.VirtualMachineB\x02\x18\x01H\x02R\x0evirtualMachine\x88\x01\x01\x12\x12\n\x04name\x18\x03 \x01(\tR\x04name\x12\x36\n\x08protocol\x18\x04 \x01(\tB\x15\xfa\x42\x12r\x10R\x04sctpR\x03tcpR\x03udpH\x03R\x08protocol\x88\x01\x01\x12\x14\n\x05ports\x18\x05 \x03(\x03R\x05ports\x12%\n\x0b\x64\x65scription\x18\x06 \x01(\tH\x04R\x0b\x64\x65scription\x88\x01\x01\x12\x1f\n\x08\x63omments\x18\x07 \x01(\tH\x05R\x08\x63omments\x88\x01\x01\x12!\n\x04tags\x18\x08 \x03(\x0b\x32\r.diode.v1.TagR\x04tags\x12H\n\rcustom_fields\x18\t \x03(\x0b\x32#.diode.v1.Service.CustomFieldsEntryR\x0c\x63ustomFields\x12\x35\n\x0bipaddresses\x18\n \x03(\x0b\x32\x13.diode.v1.IPAddressR\x0bipaddresses\x12\x44\n\x14parent_object_device\x18\x0b \x01(\x0b\x32\x10.diode.v1.DeviceH\x00R\x12parentObjectDevice\x12N\n\x18parent_object_fhrp_group\x18\x0c \x01(\x0b\x32\x13.diode.v1.FHRPGroupH\x00R\x15parentObjectFhrpGroup\x12]\n\x1dparent_object_virtual_machine\x18\r \x01(\x0b\x32\x18.diode.v1.VirtualMachineH\x00R\x1aparentObjectVirtualMachine\x12\x39\n\x08metadata\x18\x0e \x01(\x0b\x32\x17.google.protobuf.StructB\x04\x88\xb5\x18\x00R\x08metadata\x12*\n\x05owner\x18\x0f \x01(\x0b\x32\x0f.diode.v1.OwnerH\x06R\x05owner\x88\x01\x01\x12#\n\rport_mappings\x18\x10 \x03(\tR\x0cportMappings\x1a[\n\x11\x43ustomFieldsEntry\x12\x10\n\x03key\x18\x01 \x01(\tR\x03key\x12\x30\n\x05value\x18\x02 \x01(\x0b\x32\x1a.diode.v1.CustomFieldValueR\x05value:\x02\x38\x01\x42\x0f\n\rparent_objectB\t\n\x07_deviceB\x12\n\x10_virtual_machineB\x0b\n\t_protocolB\x0e\n\x0c_descriptionB\x0b\n\t_commentsB\x08\n\x06_owner\"\xc6\x08\n\x04Site\x12\x12\n\x04name\x18\x01 \x01(\tR\x04name\x12\x12\n\x04slug\x18\x02 \x01(\tR\x04slug\x12V\n\x06status\x18\x03 \x01(\tB9\xfa\x42\x36r4R\x06\x61\x63tiveR\x0f\x64\x65\x63ommissioningR\x07plannedR\x07retiredR\x07stagingH\x00R\x06status\x88\x01\x01\x12-\n\x06region\x18\x04 \x01(\x0b\x32\x10.diode.v1.RegionH\x01R\x06region\x88\x01\x01\x12.\n\x05group\x18\x05 \x01(\x0b\x32\x13.diode.v1.SiteGroupH\x02R\x05group\x88\x01\x01\x12-\n\x06tenant\x18\x06 \x01(\x0b\x32\x10.diode.v1.TenantH\x03R\x06tenant\x88\x01\x01\x12\x1f\n\x08\x66\x61\x63ility\x18\x07 \x01(\tH\x04R\x08\x66\x61\x63ility\x88\x01\x01\x12 \n\ttime_zone\x18\x08 \x01(\tH\x05R\x08timeZone\x88\x01\x01\x12%\n\x0b\x64\x65scription\x18\t \x01(\tH\x06R\x0b\x64\x65scription\x88\x01\x01\x12.\n\x10physical_address\x18\n \x01(\tH\x07R\x0fphysicalAddress\x88\x01\x01\x12.\n\x10shipping_address\x18\x0b \x01(\tH\x08R\x0fshippingAddress\x88\x01\x01\x12\x1f\n\x08latitude\x18\x0c \x01(\x01H\tR\x08latitude\x88\x01\x01\x12!\n\tlongitude\x18\r \x01(\x01H\nR\tlongitude\x88\x01\x01\x12\x1f\n\x08\x63omments\x18\x0e \x01(\tH\x0bR\x08\x63omments\x88\x01\x01\x12!\n\x04tags\x18\x0f \x03(\x0b\x32\r.diode.v1.TagR\x04tags\x12\x45\n\rcustom_fields\x18\x10 \x03(\x0b\x32 .diode.v1.Site.CustomFieldsEntryR\x0c\x63ustomFields\x12!\n\x04\x61sns\x18\x11 \x03(\x0b\x32\r.diode.v1.ASNR\x04\x61sns\x12\x39\n\x08metadata\x18\x12 \x01(\x0b\x32\x17.google.protobuf.StructB\x04\x88\xb5\x18\x00R\x08metadata\x12*\n\x05owner\x18\x13 \x01(\x0b\x32\x0f.diode.v1.OwnerH\x0cR\x05owner\x88\x01\x01\x1a[\n\x11\x43ustomFieldsEntry\x12\x10\n\x03key\x18\x01 \x01(\tR\x03key\x12\x30\n\x05value\x18\x02 \x01(\x0b\x32\x1a.diode.v1.CustomFieldValueR\x05value:\x02\x38\x01\x42\t\n\x07_statusB\t\n\x07_regionB\x08\n\x06_groupB\t\n\x07_tenantB\x0b\n\t_facilityB\x0c\n\n_time_zoneB\x0e\n\x0c_descriptionB\x13\n\x11_physical_addressB\x13\n\x11_shipping_addressB\x0b\n\t_latitudeB\x0c\n\n_longitudeB\x0b\n\t_commentsB\x08\n\x06_owner\"\x92\x04\n\tSiteGroup\x12\x12\n\x04name\x18\x01 \x01(\tR\x04name\x12\x12\n\x04slug\x18\x02 \x01(\tR\x04slug\x12\x30\n\x06parent\x18\x03 \x01(\x0b\x32\x13.diode.v1.SiteGroupH\x00R\x06parent\x88\x01\x01\x12%\n\x0b\x64\x65scription\x18\x04 \x01(\tH\x01R\x0b\x64\x65scription\x88\x01\x01\x12!\n\x04tags\x18\x05 \x03(\x0b\x32\r.diode.v1.TagR\x04tags\x12J\n\rcustom_fields\x18\x06 \x03(\x0b\x32%.diode.v1.SiteGroup.CustomFieldsEntryR\x0c\x63ustomFields\x12\x1f\n\x08\x63omments\x18\x07 \x01(\tH\x02R\x08\x63omments\x88\x01\x01\x12\x39\n\x08metadata\x18\x08 \x01(\x0b\x32\x17.google.protobuf.StructB\x04\x88\xb5\x18\x00R\x08metadata\x12*\n\x05owner\x18\t \x01(\x0b\x32\x0f.diode.v1.OwnerH\x03R\x05owner\x88\x01\x01\x1a[\n\x11\x43ustomFieldsEntry\x12\x10\n\x03key\x18\x01 \x01(\tR\x03key\x12\x30\n\x05value\x18\x02 \x01(\x0b\x32\x1a.diode.v1.CustomFieldValueR\x05value:\x02\x38\x01\x42\t\n\x07_parentB\x0e\n\x0c_descriptionB\x0b\n\t_commentsB\x08\n\x06_owner\"\xb9\x10\n\x03Tag\x12\x12\n\x04name\x18\x01 \x01(\tR\x04name\x12\x12\n\x04slug\x18\x02 \x01(\tR\x04slug\x12\x19\n\x05\x63olor\x18\x03 \x01(\tH\x00R\x05\x63olor\x88\x01\x01\x12%\n\x0b\x64\x65scription\x18\x04 \x01(\tH\x01R\x0b\x64\x65scription\x88\x01\x01\x12\x1b\n\x06weight\x18\x05 \x01(\x03H\x02R\x06weight\x88\x01\x01\x12\xca\x0e\n\x0cobject_types\x18\x06 \x03(\tB\xa6\x0e\xfa\x42\xa2\x0e\x92\x01\x9e\x0e\"\x9b\x0er\x98\x0eR\x10\x63ircuits.circuitR\x15\x63ircuits.circuitgroupR\x1f\x63ircuits.circuitgroupassignmentR\x1b\x63ircuits.circuitterminationR\x14\x63ircuits.circuittypeR\x11\x63ircuits.providerR\x18\x63ircuits.provideraccountR\x18\x63ircuits.providernetworkR\x17\x63ircuits.virtualcircuitR\"circuits.virtualcircuitterminationR\x1b\x63ircuits.virtualcircuittypeR\ndcim.cableR\x10\x64\x63im.cablebundleR\x10\x64\x63im.consoleportR\x16\x64\x63im.consoleserverportR\x10\x64\x63im.coolingfeedR\x12\x64\x63im.coolingintakeR\x13\x64\x63im.coolingoutflowR\x12\x64\x63im.coolingsourceR\x0b\x64\x63im.deviceR\x0e\x64\x63im.devicebayR\x0f\x64\x63im.deviceroleR\x0f\x64\x63im.devicetypeR\x0e\x64\x63im.frontportR\x0e\x64\x63im.interfaceR\x12\x64\x63im.inventoryitemR\x16\x64\x63im.inventoryitemroleR\rdcim.locationR\x0f\x64\x63im.macaddressR\x11\x64\x63im.manufacturerR\x0b\x64\x63im.moduleR\x0e\x64\x63im.modulebayR\x12\x64\x63im.modulebaytypeR\x0f\x64\x63im.moduletypeR\x16\x64\x63im.moduletypeprofileR\rdcim.platformR\x0e\x64\x63im.powerfeedR\x10\x64\x63im.poweroutletR\x0f\x64\x63im.powerpanelR\x0e\x64\x63im.powerportR\tdcim.rackR\x0e\x64\x63im.rackgroupR\x14\x64\x63im.rackreservationR\rdcim.rackroleR\rdcim.racktypeR\rdcim.rearportR\x0b\x64\x63im.regionR\tdcim.siteR\x0e\x64\x63im.sitegroupR\x13\x64\x63im.virtualchassisR\x19\x64\x63im.virtualdevicecontextR\x13\x65xtras.journalentryR\x0eipam.aggregateR\x08ipam.asnR\ripam.asnrangeR\x0eipam.fhrpgroupR\x0eipam.ipaddressR\x0cipam.iprangeR\x0bipam.prefixR\x08ipam.rirR\tipam.roleR\x10ipam.routetargetR\x0cipam.serviceR\tipam.vlanR\x0eipam.vlangroupR\x1aipam.vlantranslationpolicyR\x18ipam.vlantranslationruleR\x08ipam.vrfR\x0ftenancy.contactR\x19tenancy.contactassignmentR\x14tenancy.contactgroupR\x13tenancy.contactroleR\x0etenancy.tenantR\x13tenancy.tenantgroupR\x16virtualization.clusterR\x1bvirtualization.clustergroupR\x1avirtualization.clustertypeR\x1avirtualization.virtualdiskR\x1dvirtualization.virtualmachineR!virtualization.virtualmachinetypeR\x1avirtualization.vminterfaceR\rvpn.ikepolicyR\x0fvpn.ikeproposalR\x0fvpn.ipsecpolicyR\x10vpn.ipsecprofileR\x11vpn.ipsecproposalR\tvpn.l2vpnR\x14vpn.l2vpnterminationR\nvpn.tunnelR\x0fvpn.tunnelgroupR\x15vpn.tunnelterminationR\x14wireless.wirelesslanR\x19wireless.wirelesslangroupR\x15wireless.wirelesslinkR\x0bobjectTypes\x12\x39\n\x08metadata\x18\x07 \x01(\x0b\x32\x17.google.protobuf.StructB\x04\x88\xb5\x18\x00R\x08metadataB\x08\n\x06_colorB\x0e\n\x0c_descriptionB\t\n\x07_weight\"\x8b\x04\n\x06Tenant\x12\x12\n\x04name\x18\x01 \x01(\tR\x04name\x12\x12\n\x04slug\x18\x02 \x01(\tR\x04slug\x12\x30\n\x05group\x18\x03 \x01(\x0b\x32\x15.diode.v1.TenantGroupH\x00R\x05group\x88\x01\x01\x12%\n\x0b\x64\x65scription\x18\x04 \x01(\tH\x01R\x0b\x64\x65scription\x88\x01\x01\x12\x1f\n\x08\x63omments\x18\x05 \x01(\tH\x02R\x08\x63omments\x88\x01\x01\x12!\n\x04tags\x18\x06 \x03(\x0b\x32\r.diode.v1.TagR\x04tags\x12G\n\rcustom_fields\x18\x07 \x03(\x0b\x32\".diode.v1.Tenant.CustomFieldsEntryR\x0c\x63ustomFields\x12\x39\n\x08metadata\x18\x08 \x01(\x0b\x32\x17.google.protobuf.StructB\x04\x88\xb5\x18\x00R\x08metadata\x12*\n\x05owner\x18\t \x01(\x0b\x32\x0f.diode.v1.OwnerH\x03R\x05owner\x88\x01\x01\x1a[\n\x11\x43ustomFieldsEntry\x12\x10\n\x03key\x18\x01 \x01(\tR\x03key\x12\x30\n\x05value\x18\x02 \x01(\x0b\x32\x1a.diode.v1.CustomFieldValueR\x05value:\x02\x38\x01\x42\x08\n\x06_groupB\x0e\n\x0c_descriptionB\x0b\n\t_commentsB\x08\n\x06_owner\"\x98\x04\n\x0bTenantGroup\x12\x12\n\x04name\x18\x01 \x01(\tR\x04name\x12\x12\n\x04slug\x18\x02 \x01(\tR\x04slug\x12\x32\n\x06parent\x18\x03 \x01(\x0b\x32\x15.diode.v1.TenantGroupH\x00R\x06parent\x88\x01\x01\x12%\n\x0b\x64\x65scription\x18\x04 \x01(\tH\x01R\x0b\x64\x65scription\x88\x01\x01\x12!\n\x04tags\x18\x05 \x03(\x0b\x32\r.diode.v1.TagR\x04tags\x12L\n\rcustom_fields\x18\x06 \x03(\x0b\x32\'.diode.v1.TenantGroup.CustomFieldsEntryR\x0c\x63ustomFields\x12\x1f\n\x08\x63omments\x18\x07 \x01(\tH\x02R\x08\x63omments\x88\x01\x01\x12\x39\n\x08metadata\x18\x08 \x01(\x0b\x32\x17.google.protobuf.StructB\x04\x88\xb5\x18\x00R\x08metadata\x12*\n\x05owner\x18\t \x01(\x0b\x32\x0f.diode.v1.OwnerH\x03R\x05owner\x88\x01\x01\x1a[\n\x11\x43ustomFieldsEntry\x12\x10\n\x03key\x18\x01 \x01(\tR\x03key\x12\x30\n\x05value\x18\x02 \x01(\x0b\x32\x1a.diode.v1.CustomFieldValueR\x05value:\x02\x38\x01\x42\t\n\x07_parentB\x0e\n\x0c_descriptionB\x0b\n\t_commentsB\x08\n\x06_owner\"\xe7\x06\n\x06Tunnel\x12\x12\n\x04name\x18\x01 \x01(\tR\x04name\x12\x38\n\x06status\x18\x02 \x01(\tB \xfa\x42\x1dr\x1bR\x06\x61\x63tiveR\x08\x64isabledR\x07plannedR\x06status\x12\x30\n\x05group\x18\x03 \x01(\x0b\x32\x15.diode.v1.TunnelGroupH\x00R\x05group\x88\x01\x01\x12v\n\rencapsulation\x18\x04 \x01(\tBP\xfa\x42MrKR\x03greR\x05ip-ipR\x0fipsec-transportR\x0cipsec-tunnelR\x04l2tpR\x07openvpnR\x04pptpR\twireguardR\rencapsulation\x12@\n\ripsec_profile\x18\x05 \x01(\x0b\x32\x16.diode.v1.IPSecProfileH\x01R\x0cipsecProfile\x88\x01\x01\x12-\n\x06tenant\x18\x06 \x01(\x0b\x32\x10.diode.v1.TenantH\x02R\x06tenant\x88\x01\x01\x12 \n\ttunnel_id\x18\x07 \x01(\x03H\x03R\x08tunnelId\x88\x01\x01\x12%\n\x0b\x64\x65scription\x18\x08 \x01(\tH\x04R\x0b\x64\x65scription\x88\x01\x01\x12\x1f\n\x08\x63omments\x18\t \x01(\tH\x05R\x08\x63omments\x88\x01\x01\x12!\n\x04tags\x18\n \x03(\x0b\x32\r.diode.v1.TagR\x04tags\x12G\n\rcustom_fields\x18\x0b \x03(\x0b\x32\".diode.v1.Tunnel.CustomFieldsEntryR\x0c\x63ustomFields\x12\x39\n\x08metadata\x18\x0c \x01(\x0b\x32\x17.google.protobuf.StructB\x04\x88\xb5\x18\x00R\x08metadata\x12*\n\x05owner\x18\r \x01(\x0b\x32\x0f.diode.v1.OwnerH\x06R\x05owner\x88\x01\x01\x1a[\n\x11\x43ustomFieldsEntry\x12\x10\n\x03key\x18\x01 \x01(\tR\x03key\x12\x30\n\x05value\x18\x02 \x01(\x0b\x32\x1a.diode.v1.CustomFieldValueR\x05value:\x02\x38\x01\x42\x08\n\x06_groupB\x10\n\x0e_ipsec_profileB\t\n\x07_tenantB\x0c\n\n_tunnel_idB\x0e\n\x0c_descriptionB\x0b\n\t_commentsB\x08\n\x06_owner\"\xd9\x03\n\x0bTunnelGroup\x12\x12\n\x04name\x18\x01 \x01(\tR\x04name\x12\x12\n\x04slug\x18\x02 \x01(\tR\x04slug\x12%\n\x0b\x64\x65scription\x18\x03 \x01(\tH\x00R\x0b\x64\x65scription\x88\x01\x01\x12!\n\x04tags\x18\x04 \x03(\x0b\x32\r.diode.v1.TagR\x04tags\x12L\n\rcustom_fields\x18\x05 \x03(\x0b\x32\'.diode.v1.TunnelGroup.CustomFieldsEntryR\x0c\x63ustomFields\x12\x39\n\x08metadata\x18\x06 \x01(\x0b\x32\x17.google.protobuf.StructB\x04\x88\xb5\x18\x00R\x08metadata\x12*\n\x05owner\x18\x07 \x01(\x0b\x32\x0f.diode.v1.OwnerH\x01R\x05owner\x88\x01\x01\x12\x1f\n\x08\x63omments\x18\x08 \x01(\tH\x02R\x08\x63omments\x88\x01\x01\x1a[\n\x11\x43ustomFieldsEntry\x12\x10\n\x03key\x18\x01 \x01(\tR\x03key\x12\x30\n\x05value\x18\x02 \x01(\x0b\x32\x1a.diode.v1.CustomFieldValueR\x05value:\x02\x38\x01\x42\x0e\n\x0c_descriptionB\x08\n\x06_ownerB\x0b\n\t_comments\"\xabG\n\x11TunnelTermination\x12(\n\x06tunnel\x18\x01 \x01(\x0b\x32\x10.diode.v1.TunnelR\x06tunnel\x12+\n\x04role\x18\x02 \x01(\tB\x17\xfa\x42\x14r\x12R\x03hubR\x04peerR\x05spokeR\x04role\x12\x38\n\x0ftermination_asn\x18\x03 \x01(\x0b\x32\r.diode.v1.ASNH\x00R\x0eterminationAsn\x12H\n\x15termination_asn_range\x18\x04 \x01(\x0b\x32\x12.diode.v1.ASNRangeH\x00R\x13terminationAsnRange\x12J\n\x15termination_aggregate\x18\x05 \x01(\x0b\x32\x13.diode.v1.AggregateH\x00R\x14terminationAggregate\x12>\n\x11termination_cable\x18\x06 \x01(\x0b\x32\x0f.diode.v1.CableH\x00R\x10terminationCable\x12K\n\x16termination_cable_path\x18\x07 \x01(\x0b\x32\x13.diode.v1.CablePathH\x00R\x14terminationCablePath\x12\x64\n\x1dtermination_cable_termination\x18\x08 \x01(\x0b\x32\x1a.diode.v1.CableTerminationB\x02\x18\x01H\x00R\x1bterminationCableTermination\x12\x44\n\x13termination_circuit\x18\t \x01(\x0b\x32\x11.diode.v1.CircuitH\x00R\x12terminationCircuit\x12T\n\x19termination_circuit_group\x18\n \x01(\x0b\x32\x16.diode.v1.CircuitGroupH\x00R\x17terminationCircuitGroup\x12s\n$termination_circuit_group_assignment\x18\x0b \x01(\x0b\x32 .diode.v1.CircuitGroupAssignmentH\x00R!terminationCircuitGroupAssignment\x12\x66\n\x1ftermination_circuit_termination\x18\x0c \x01(\x0b\x32\x1c.diode.v1.CircuitTerminationH\x00R\x1dterminationCircuitTermination\x12Q\n\x18termination_circuit_type\x18\r \x01(\x0b\x32\x15.diode.v1.CircuitTypeH\x00R\x16terminationCircuitType\x12\x44\n\x13termination_cluster\x18\x0e \x01(\x0b\x32\x11.diode.v1.ClusterH\x00R\x12terminationCluster\x12T\n\x19termination_cluster_group\x18\x0f \x01(\x0b\x32\x16.diode.v1.ClusterGroupH\x00R\x17terminationClusterGroup\x12Q\n\x18termination_cluster_type\x18\x10 \x01(\x0b\x32\x15.diode.v1.ClusterTypeH\x00R\x16terminationClusterType\x12Q\n\x18termination_console_port\x18\x11 \x01(\x0b\x32\x15.diode.v1.ConsolePortH\x00R\x16terminationConsolePort\x12\x64\n\x1ftermination_console_server_port\x18\x12 \x01(\x0b\x32\x1b.diode.v1.ConsoleServerPortH\x00R\x1cterminationConsoleServerPort\x12\x44\n\x13termination_contact\x18\x13 \x01(\x0b\x32\x11.diode.v1.ContactH\x00R\x12terminationContact\x12\x63\n\x1etermination_contact_assignment\x18\x14 \x01(\x0b\x32\x1b.diode.v1.ContactAssignmentH\x00R\x1cterminationContactAssignment\x12T\n\x19termination_contact_group\x18\x15 \x01(\x0b\x32\x16.diode.v1.ContactGroupH\x00R\x17terminationContactGroup\x12Q\n\x18termination_contact_role\x18\x16 \x01(\x0b\x32\x15.diode.v1.ContactRoleH\x00R\x16terminationContactRole\x12\x41\n\x12termination_device\x18\x17 \x01(\x0b\x32\x10.diode.v1.DeviceH\x00R\x11terminationDevice\x12K\n\x16termination_device_bay\x18\x18 \x01(\x0b\x32\x13.diode.v1.DeviceBayH\x00R\x14terminationDeviceBay\x12N\n\x17termination_device_role\x18\x19 \x01(\x0b\x32\x14.diode.v1.DeviceRoleH\x00R\x15terminationDeviceRole\x12N\n\x17termination_device_type\x18\x1a \x01(\x0b\x32\x14.diode.v1.DeviceTypeH\x00R\x15terminationDeviceType\x12K\n\x16termination_fhrp_group\x18\x1b \x01(\x0b\x32\x13.diode.v1.FHRPGroupH\x00R\x14terminationFhrpGroup\x12j\n!termination_fhrp_group_assignment\x18\x1c \x01(\x0b\x32\x1d.diode.v1.FHRPGroupAssignmentH\x00R\x1eterminationFhrpGroupAssignment\x12K\n\x16termination_front_port\x18\x1d \x01(\x0b\x32\x13.diode.v1.FrontPortH\x00R\x14terminationFrontPort\x12K\n\x16termination_ike_policy\x18\x1e \x01(\x0b\x32\x13.diode.v1.IKEPolicyH\x00R\x14terminationIkePolicy\x12Q\n\x18termination_ike_proposal\x18\x1f \x01(\x0b\x32\x15.diode.v1.IKEProposalH\x00R\x16terminationIkeProposal\x12K\n\x16termination_ip_address\x18 \x01(\x0b\x32\x13.diode.v1.IPAddressH\x00R\x14terminationIpAddress\x12\x45\n\x14termination_ip_range\x18! \x01(\x0b\x32\x11.diode.v1.IPRangeH\x00R\x12terminationIpRange\x12R\n\x19termination_ip_sec_policy\x18\" \x01(\x0b\x32\x15.diode.v1.IPSecPolicyH\x00R\x16terminationIpSecPolicy\x12U\n\x1atermination_ip_sec_profile\x18# \x01(\x0b\x32\x16.diode.v1.IPSecProfileH\x00R\x17terminationIpSecProfile\x12X\n\x1btermination_ip_sec_proposal\x18$ \x01(\x0b\x32\x17.diode.v1.IPSecProposalH\x00R\x18terminationIpSecProposal\x12J\n\x15termination_interface\x18% \x01(\x0b\x32\x13.diode.v1.InterfaceH\x00R\x14terminationInterface\x12W\n\x1atermination_inventory_item\x18& \x01(\x0b\x32\x17.diode.v1.InventoryItemH\x00R\x18terminationInventoryItem\x12\x64\n\x1ftermination_inventory_item_role\x18\' \x01(\x0b\x32\x1b.diode.v1.InventoryItemRoleH\x00R\x1cterminationInventoryItemRole\x12>\n\x11termination_l2vpn\x18( \x01(\x0b\x32\x0f.diode.v1.L2VPNH\x00R\x10terminationL2vpn\x12`\n\x1dtermination_l2vpn_termination\x18) \x01(\x0b\x32\x1a.diode.v1.L2VPNTerminationH\x00R\x1bterminationL2vpnTermination\x12G\n\x14termination_location\x18* \x01(\x0b\x32\x12.diode.v1.LocationH\x00R\x13terminationLocation\x12N\n\x17termination_mac_address\x18+ \x01(\x0b\x32\x14.diode.v1.MACAddressH\x00R\x15terminationMacAddress\x12S\n\x18termination_manufacturer\x18, \x01(\x0b\x32\x16.diode.v1.ManufacturerH\x00R\x17terminationManufacturer\x12\x41\n\x12termination_module\x18- \x01(\x0b\x32\x10.diode.v1.ModuleH\x00R\x11terminationModule\x12K\n\x16termination_module_bay\x18. \x01(\x0b\x32\x13.diode.v1.ModuleBayH\x00R\x14terminationModuleBay\x12N\n\x17termination_module_type\x18/ \x01(\x0b\x32\x14.diode.v1.ModuleTypeH\x00R\x15terminationModuleType\x12G\n\x14termination_platform\x18\x30 \x01(\x0b\x32\x12.diode.v1.PlatformH\x00R\x13terminationPlatform\x12K\n\x16termination_power_feed\x18\x31 \x01(\x0b\x32\x13.diode.v1.PowerFeedH\x00R\x14terminationPowerFeed\x12Q\n\x18termination_power_outlet\x18\x32 \x01(\x0b\x32\x15.diode.v1.PowerOutletH\x00R\x16terminationPowerOutlet\x12N\n\x17termination_power_panel\x18\x33 \x01(\x0b\x32\x14.diode.v1.PowerPanelH\x00R\x15terminationPowerPanel\x12K\n\x16termination_power_port\x18\x34 \x01(\x0b\x32\x13.diode.v1.PowerPortH\x00R\x14terminationPowerPort\x12\x41\n\x12termination_prefix\x18\x35 \x01(\x0b\x32\x10.diode.v1.PrefixH\x00R\x11terminationPrefix\x12G\n\x14termination_provider\x18\x36 \x01(\x0b\x32\x12.diode.v1.ProviderH\x00R\x13terminationProvider\x12]\n\x1ctermination_provider_account\x18\x37 \x01(\x0b\x32\x19.diode.v1.ProviderAccountH\x00R\x1aterminationProviderAccount\x12]\n\x1ctermination_provider_network\x18\x38 \x01(\x0b\x32\x19.diode.v1.ProviderNetworkH\x00R\x1aterminationProviderNetwork\x12\x38\n\x0ftermination_rir\x18\x39 \x01(\x0b\x32\r.diode.v1.RIRH\x00R\x0eterminationRir\x12;\n\x10termination_rack\x18: \x01(\x0b\x32\x0e.diode.v1.RackH\x00R\x0fterminationRack\x12]\n\x1ctermination_rack_reservation\x18; \x01(\x0b\x32\x19.diode.v1.RackReservationH\x00R\x1aterminationRackReservation\x12H\n\x15termination_rack_role\x18< \x01(\x0b\x32\x12.diode.v1.RackRoleH\x00R\x13terminationRackRole\x12H\n\x15termination_rack_type\x18= \x01(\x0b\x32\x12.diode.v1.RackTypeH\x00R\x13terminationRackType\x12H\n\x15termination_rear_port\x18> \x01(\x0b\x32\x12.diode.v1.RearPortH\x00R\x13terminationRearPort\x12\x41\n\x12termination_region\x18? \x01(\x0b\x32\x10.diode.v1.RegionH\x00R\x11terminationRegion\x12;\n\x10termination_role\x18@ \x01(\x0b\x32\x0e.diode.v1.RoleH\x00R\x0fterminationRole\x12Q\n\x18termination_route_target\x18\x41 \x01(\x0b\x32\x15.diode.v1.RouteTargetH\x00R\x16terminationRouteTarget\x12\x44\n\x13termination_service\x18\x42 \x01(\x0b\x32\x11.diode.v1.ServiceH\x00R\x12terminationService\x12;\n\x10termination_site\x18\x43 \x01(\x0b\x32\x0e.diode.v1.SiteH\x00R\x0fterminationSite\x12K\n\x16termination_site_group\x18\x44 \x01(\x0b\x32\x13.diode.v1.SiteGroupH\x00R\x14terminationSiteGroup\x12\x38\n\x0ftermination_tag\x18\x45 \x01(\x0b\x32\r.diode.v1.TagH\x00R\x0eterminationTag\x12\x41\n\x12termination_tenant\x18\x46 \x01(\x0b\x32\x10.diode.v1.TenantH\x00R\x11terminationTenant\x12Q\n\x18termination_tenant_group\x18G \x01(\x0b\x32\x15.diode.v1.TenantGroupH\x00R\x16terminationTenantGroup\x12\x41\n\x12termination_tunnel\x18H \x01(\x0b\x32\x10.diode.v1.TunnelH\x00R\x11terminationTunnel\x12Q\n\x18termination_tunnel_group\x18I \x01(\x0b\x32\x15.diode.v1.TunnelGroupH\x00R\x16terminationTunnelGroup\x12\x63\n\x1etermination_tunnel_termination\x18J \x01(\x0b\x32\x1b.diode.v1.TunnelTerminationH\x00R\x1cterminationTunnelTermination\x12;\n\x10termination_vlan\x18K \x01(\x0b\x32\x0e.diode.v1.VLANH\x00R\x0fterminationVlan\x12K\n\x16termination_vlan_group\x18L \x01(\x0b\x32\x13.diode.v1.VLANGroupH\x00R\x14terminationVlanGroup\x12p\n#termination_vlan_translation_policy\x18M \x01(\x0b\x32\x1f.diode.v1.VLANTranslationPolicyH\x00R terminationVlanTranslationPolicy\x12j\n!termination_vlan_translation_rule\x18N \x01(\x0b\x32\x1d.diode.v1.VLANTranslationRuleH\x00R\x1eterminationVlanTranslationRule\x12Q\n\x18termination_vm_interface\x18O \x01(\x0b\x32\x15.diode.v1.VMInterfaceH\x00R\x16terminationVmInterface\x12\x38\n\x0ftermination_vrf\x18P \x01(\x0b\x32\r.diode.v1.VRFH\x00R\x0eterminationVrf\x12Z\n\x1btermination_virtual_chassis\x18Q \x01(\x0b\x32\x18.diode.v1.VirtualChassisH\x00R\x19terminationVirtualChassis\x12Z\n\x1btermination_virtual_circuit\x18R \x01(\x0b\x32\x18.diode.v1.VirtualCircuitH\x00R\x19terminationVirtualCircuit\x12|\n\'termination_virtual_circuit_termination\x18S \x01(\x0b\x32#.diode.v1.VirtualCircuitTerminationH\x00R$terminationVirtualCircuitTermination\x12g\n termination_virtual_circuit_type\x18T \x01(\x0b\x32\x1c.diode.v1.VirtualCircuitTypeH\x00R\x1dterminationVirtualCircuitType\x12m\n\"termination_virtual_device_context\x18U \x01(\x0b\x32\x1e.diode.v1.VirtualDeviceContextH\x00R\x1fterminationVirtualDeviceContext\x12Q\n\x18termination_virtual_disk\x18V \x01(\x0b\x32\x15.diode.v1.VirtualDiskH\x00R\x16terminationVirtualDisk\x12Z\n\x1btermination_virtual_machine\x18W \x01(\x0b\x32\x18.diode.v1.VirtualMachineH\x00R\x19terminationVirtualMachine\x12Q\n\x18termination_wireless_lan\x18X \x01(\x0b\x32\x15.diode.v1.WirelessLANH\x00R\x16terminationWirelessLan\x12\x61\n\x1etermination_wireless_lan_group\x18Y \x01(\x0b\x32\x1a.diode.v1.WirelessLANGroupH\x00R\x1bterminationWirelessLanGroup\x12T\n\x19termination_wireless_link\x18Z \x01(\x0b\x32\x16.diode.v1.WirelessLinkH\x00R\x17terminationWirelessLink\x12Q\n\x18termination_custom_field\x18^ \x01(\x0b\x32\x15.diode.v1.CustomFieldH\x00R\x16terminationCustomField\x12n\n#termination_custom_field_choice_set\x18_ \x01(\x0b\x32\x1e.diode.v1.CustomFieldChoiceSetH\x00R\x1fterminationCustomFieldChoiceSet\x12T\n\x19termination_journal_entry\x18` \x01(\x0b\x32\x16.diode.v1.JournalEntryH\x00R\x17terminationJournalEntry\x12\x64\n\x1ftermination_module_type_profile\x18\x61 \x01(\x0b\x32\x1b.diode.v1.ModuleTypeProfileH\x00R\x1cterminationModuleTypeProfile\x12N\n\x17termination_custom_link\x18\x62 \x01(\x0b\x32\x14.diode.v1.CustomLinkH\x00R\x15terminationCustomLink\x12>\n\x11termination_owner\x18\x64 \x01(\x0b\x32\x0f.diode.v1.OwnerH\x00R\x10terminationOwner\x12N\n\x17termination_owner_group\x18\x65 \x01(\x0b\x32\x14.diode.v1.OwnerGroupH\x00R\x15terminationOwnerGroup\x12Q\n\x18termination_cable_bundle\x18\x66 \x01(\x0b\x32\x15.diode.v1.CableBundleH\x00R\x16terminationCableBundle\x12K\n\x16termination_rack_group\x18g \x01(\x0b\x32\x13.diode.v1.RackGroupH\x00R\x14terminationRackGroup\x12T\n\x19termination_script_module\x18h \x01(\x0b\x32\x16.diode.v1.ScriptModuleH\x00R\x17terminationScriptModule\x12g\n termination_virtual_machine_type\x18i \x01(\x0b\x32\x1c.diode.v1.VirtualMachineTypeH\x00R\x1dterminationVirtualMachineType\x12;\n\x10termination_user\x18j \x01(\x0b\x32\x0e.diode.v1.UserH\x00R\x0fterminationUser\x12Q\n\x18termination_cooling_feed\x18k \x01(\x0b\x32\x15.diode.v1.CoolingFeedH\x00R\x16terminationCoolingFeed\x12W\n\x1atermination_cooling_intake\x18l \x01(\x0b\x32\x17.diode.v1.CoolingIntakeH\x00R\x18terminationCoolingIntake\x12Z\n\x1btermination_cooling_outflow\x18m \x01(\x0b\x32\x18.diode.v1.CoolingOutflowH\x00R\x19terminationCoolingOutflow\x12W\n\x1atermination_cooling_source\x18n \x01(\x0b\x32\x17.diode.v1.CoolingSourceH\x00R\x18terminationCoolingSource\x12X\n\x1btermination_module_bay_type\x18o \x01(\x0b\x32\x17.diode.v1.ModuleBayTypeH\x00R\x18terminationModuleBayType\x12\x37\n\noutside_ip\x18[ \x01(\x0b\x32\x13.diode.v1.IPAddressH\x01R\toutsideIp\x88\x01\x01\x12!\n\x04tags\x18\\ \x03(\x0b\x32\r.diode.v1.TagR\x04tags\x12R\n\rcustom_fields\x18] \x03(\x0b\x32-.diode.v1.TunnelTermination.CustomFieldsEntryR\x0c\x63ustomFields\x12\x39\n\x08metadata\x18\x63 \x01(\x0b\x32\x17.google.protobuf.StructB\x04\x88\xb5\x18\x00R\x08metadata\x1a[\n\x11\x43ustomFieldsEntry\x12\x10\n\x03key\x18\x01 \x01(\tR\x03key\x12\x30\n\x05value\x18\x02 \x01(\x0b\x32\x1a.diode.v1.CustomFieldValueR\x05value:\x02\x38\x01\x42\r\n\x0bterminationB\r\n\x0b_outside_ip\"\xf6\x06\n\x04VLAN\x12\'\n\x04site\x18\x01 \x01(\x0b\x32\x0e.diode.v1.SiteH\x00R\x04site\x88\x01\x01\x12.\n\x05group\x18\x02 \x01(\x0b\x32\x13.diode.v1.VLANGroupH\x01R\x05group\x88\x01\x01\x12\x10\n\x03vid\x18\x03 \x01(\x03R\x03vid\x12\x12\n\x04name\x18\x04 \x01(\tR\x04name\x12-\n\x06tenant\x18\x05 \x01(\x0b\x32\x10.diode.v1.TenantH\x02R\x06tenant\x88\x01\x01\x12@\n\x06status\x18\x06 \x01(\tB#\xfa\x42 r\x1eR\x06\x61\x63tiveR\ndeprecatedR\x08reservedH\x03R\x06status\x88\x01\x01\x12\'\n\x04role\x18\x07 \x01(\x0b\x32\x0e.diode.v1.RoleH\x04R\x04role\x88\x01\x01\x12%\n\x0b\x64\x65scription\x18\x08 \x01(\tH\x05R\x0b\x64\x65scription\x88\x01\x01\x12\x35\n\tqinq_role\x18\t \x01(\tB\x13\xfa\x42\x10r\x0eR\x05\x63vlanR\x05svlanH\x06R\x08qinqRole\x88\x01\x01\x12\x32\n\nqinq_svlan\x18\n \x01(\x0b\x32\x0e.diode.v1.VLANH\x07R\tqinqSvlan\x88\x01\x01\x12\x1f\n\x08\x63omments\x18\x0b \x01(\tH\x08R\x08\x63omments\x88\x01\x01\x12!\n\x04tags\x18\x0c \x03(\x0b\x32\r.diode.v1.TagR\x04tags\x12\x45\n\rcustom_fields\x18\r \x03(\x0b\x32 .diode.v1.VLAN.CustomFieldsEntryR\x0c\x63ustomFields\x12\x39\n\x08metadata\x18\x0e \x01(\x0b\x32\x17.google.protobuf.StructB\x04\x88\xb5\x18\x00R\x08metadata\x12*\n\x05owner\x18\x0f \x01(\x0b\x32\x0f.diode.v1.OwnerH\tR\x05owner\x88\x01\x01\x1a[\n\x11\x43ustomFieldsEntry\x12\x10\n\x03key\x18\x01 \x01(\tR\x03key\x12\x30\n\x05value\x18\x02 \x01(\x0b\x32\x1a.diode.v1.CustomFieldValueR\x05value:\x02\x38\x01\x42\x07\n\x05_siteB\x08\n\x06_groupB\t\n\x07_tenantB\t\n\x07_statusB\x07\n\x05_roleB\x0e\n\x0c_descriptionB\x0c\n\n_qinq_roleB\r\n\x0b_qinq_svlanB\x0b\n\t_commentsB\x08\n\x06_owner\"\x93\x08\n\tVLANGroup\x12\x12\n\x04name\x18\x01 \x01(\tR\x04name\x12\x12\n\x04slug\x18\x02 \x01(\tR\x04slug\x12\x38\n\rscope_cluster\x18\x03 \x01(\x0b\x32\x11.diode.v1.ClusterH\x00R\x0cscopeCluster\x12H\n\x13scope_cluster_group\x18\x04 \x01(\x0b\x32\x16.diode.v1.ClusterGroupH\x00R\x11scopeClusterGroup\x12;\n\x0escope_location\x18\x05 \x01(\x0b\x32\x12.diode.v1.LocationH\x00R\rscopeLocation\x12/\n\nscope_rack\x18\x06 \x01(\x0b\x32\x0e.diode.v1.RackH\x00R\tscopeRack\x12\x35\n\x0cscope_region\x18\x07 \x01(\x0b\x32\x10.diode.v1.RegionH\x00R\x0bscopeRegion\x12/\n\nscope_site\x18\x08 \x01(\x0b\x32\x0e.diode.v1.SiteH\x00R\tscopeSite\x12?\n\x10scope_site_group\x18\t \x01(\x0b\x32\x13.diode.v1.SiteGroupH\x00R\x0escopeSiteGroup\x12?\n\x10scope_rack_group\x18\x12 \x01(\x0b\x32\x13.diode.v1.RackGroupH\x00R\x0escopeRackGroup\x12\x1d\n\nvid_ranges\x18\n \x03(\x03R\tvidRanges\x12%\n\x0b\x64\x65scription\x18\x0b \x01(\tH\x01R\x0b\x64\x65scription\x88\x01\x01\x12!\n\x04tags\x18\x0c \x03(\x0b\x32\r.diode.v1.TagR\x04tags\x12J\n\rcustom_fields\x18\r \x03(\x0b\x32%.diode.v1.VLANGroup.CustomFieldsEntryR\x0c\x63ustomFields\x12-\n\x06tenant\x18\x0e \x01(\x0b\x32\x10.diode.v1.TenantH\x02R\x06tenant\x88\x01\x01\x12\x39\n\x08metadata\x18\x0f \x01(\x0b\x32\x17.google.protobuf.StructB\x04\x88\xb5\x18\x00R\x08metadata\x12*\n\x05owner\x18\x10 \x01(\x0b\x32\x0f.diode.v1.OwnerH\x03R\x05owner\x88\x01\x01\x12\x1f\n\x08\x63omments\x18\x11 \x01(\tH\x04R\x08\x63omments\x88\x01\x01\x1a[\n\x11\x43ustomFieldsEntry\x12\x10\n\x03key\x18\x01 \x01(\tR\x03key\x12\x30\n\x05value\x18\x02 \x01(\x0b\x32\x1a.diode.v1.CustomFieldValueR\x05value:\x02\x38\x01\x42\x07\n\x05scopeB\x0e\n\x0c_descriptionB\t\n\x07_tenantB\x08\n\x06_ownerB\x0b\n\t_comments\"\x81\x02\n\x15VLANTranslationPolicy\x12\x12\n\x04name\x18\x01 \x01(\tR\x04name\x12%\n\x0b\x64\x65scription\x18\x02 \x01(\tH\x00R\x0b\x64\x65scription\x88\x01\x01\x12\x39\n\x08metadata\x18\x03 \x01(\x0b\x32\x17.google.protobuf.StructB\x04\x88\xb5\x18\x00R\x08metadata\x12*\n\x05owner\x18\x04 \x01(\x0b\x32\x0f.diode.v1.OwnerH\x01R\x05owner\x88\x01\x01\x12\x1f\n\x08\x63omments\x18\x05 \x01(\tH\x02R\x08\x63omments\x88\x01\x01\x42\x0e\n\x0c_descriptionB\x08\n\x06_ownerB\x0b\n\t_comments\"\xfc\x01\n\x13VLANTranslationRule\x12\x37\n\x06policy\x18\x01 \x01(\x0b\x32\x1f.diode.v1.VLANTranslationPolicyR\x06policy\x12\x1b\n\tlocal_vid\x18\x02 \x01(\x03R\x08localVid\x12\x1d\n\nremote_vid\x18\x03 \x01(\x03R\tremoteVid\x12%\n\x0b\x64\x65scription\x18\x04 \x01(\tH\x00R\x0b\x64\x65scription\x88\x01\x01\x12\x39\n\x08metadata\x18\x05 \x01(\x0b\x32\x17.google.protobuf.StructB\x04\x88\xb5\x18\x00R\x08metadataB\x0e\n\x0c_description\"\xf2\t\n\x0bVMInterface\x12\x41\n\x0fvirtual_machine\x18\x01 \x01(\x0b\x32\x18.diode.v1.VirtualMachineR\x0evirtualMachine\x12\x12\n\x04name\x18\x02 \x01(\tR\x04name\x12\x1d\n\x07\x65nabled\x18\x03 \x01(\x08H\x00R\x07\x65nabled\x88\x01\x01\x12\x32\n\x06parent\x18\x04 \x01(\x0b\x32\x15.diode.v1.VMInterfaceH\x01R\x06parent\x88\x01\x01\x12\x32\n\x06\x62ridge\x18\x05 \x01(\x0b\x32\x15.diode.v1.VMInterfaceH\x02R\x06\x62ridge\x88\x01\x01\x12\x15\n\x03mtu\x18\x06 \x01(\x03H\x03R\x03mtu\x88\x01\x01\x12I\n\x13primary_mac_address\x18\x07 \x01(\x0b\x32\x14.diode.v1.MACAddressH\x04R\x11primaryMacAddress\x88\x01\x01\x12%\n\x0b\x64\x65scription\x18\x08 \x01(\tH\x05R\x0b\x64\x65scription\x88\x01\x01\x12\x42\n\x04mode\x18\t \x01(\tB)\xfa\x42&r$R\x06\x61\x63\x63\x65ssR\x06q-in-qR\x06taggedR\ntagged-allH\x06R\x04mode\x88\x01\x01\x12\x38\n\runtagged_vlan\x18\n \x01(\x0b\x32\x0e.diode.v1.VLANH\x07R\x0cuntaggedVlan\x88\x01\x01\x12\x32\n\nqinq_svlan\x18\x0b \x01(\x0b\x32\x0e.diode.v1.VLANH\x08R\tqinqSvlan\x88\x01\x01\x12\\\n\x17vlan_translation_policy\x18\x0c \x01(\x0b\x32\x1f.diode.v1.VLANTranslationPolicyH\tR\x15vlanTranslationPolicy\x88\x01\x01\x12$\n\x03vrf\x18\r \x01(\x0b\x32\r.diode.v1.VRFH\nR\x03vrf\x88\x01\x01\x12!\n\x04tags\x18\x0e \x03(\x0b\x32\r.diode.v1.TagR\x04tags\x12L\n\rcustom_fields\x18\x0f \x03(\x0b\x32\'.diode.v1.VMInterface.CustomFieldsEntryR\x0c\x63ustomFields\x12\x31\n\x0ctagged_vlans\x18\x10 \x03(\x0b\x32\x0e.diode.v1.VLANR\x0btaggedVlans\x12\x39\n\x08metadata\x18\x11 \x01(\x0b\x32\x17.google.protobuf.StructB\x04\x88\xb5\x18\x00R\x08metadata\x12*\n\x05owner\x18\x12 \x01(\x0b\x32\x0f.diode.v1.OwnerH\x0bR\x05owner\x88\x01\x01\x12$\n\x0bmac_address\x18\x13 \x01(\tH\x0cR\nmacAddress\x88\x01\x01\x1a[\n\x11\x43ustomFieldsEntry\x12\x10\n\x03key\x18\x01 \x01(\tR\x03key\x12\x30\n\x05value\x18\x02 \x01(\x0b\x32\x1a.diode.v1.CustomFieldValueR\x05value:\x02\x38\x01\x42\n\n\x08_enabledB\t\n\x07_parentB\t\n\x07_bridgeB\x06\n\x04_mtuB\x16\n\x14_primary_mac_addressB\x0e\n\x0c_descriptionB\x07\n\x05_modeB\x10\n\x0e_untagged_vlanB\r\n\x0b_qinq_svlanB\x1a\n\x18_vlan_translation_policyB\x06\n\x04_vrfB\x08\n\x06_ownerB\x0e\n\x0c_mac_address\"\xc6\x05\n\x03VRF\x12\x12\n\x04name\x18\x01 \x01(\tR\x04name\x12\x13\n\x02rd\x18\x02 \x01(\tH\x00R\x02rd\x88\x01\x01\x12-\n\x06tenant\x18\x03 \x01(\x0b\x32\x10.diode.v1.TenantH\x01R\x06tenant\x88\x01\x01\x12*\n\x0e\x65nforce_unique\x18\x04 \x01(\x08H\x02R\renforceUnique\x88\x01\x01\x12%\n\x0b\x64\x65scription\x18\x05 \x01(\tH\x03R\x0b\x64\x65scription\x88\x01\x01\x12\x1f\n\x08\x63omments\x18\x06 \x01(\tH\x04R\x08\x63omments\x88\x01\x01\x12!\n\x04tags\x18\x07 \x03(\x0b\x32\r.diode.v1.TagR\x04tags\x12\x44\n\rcustom_fields\x18\x08 \x03(\x0b\x32\x1f.diode.v1.VRF.CustomFieldsEntryR\x0c\x63ustomFields\x12<\n\x0eimport_targets\x18\t \x03(\x0b\x32\x15.diode.v1.RouteTargetR\rimportTargets\x12<\n\x0e\x65xport_targets\x18\n \x03(\x0b\x32\x15.diode.v1.RouteTargetR\rexportTargets\x12\x39\n\x08metadata\x18\x0b \x01(\x0b\x32\x17.google.protobuf.StructB\x04\x88\xb5\x18\x00R\x08metadata\x12*\n\x05owner\x18\x0c \x01(\x0b\x32\x0f.diode.v1.OwnerH\x05R\x05owner\x88\x01\x01\x1a[\n\x11\x43ustomFieldsEntry\x12\x10\n\x03key\x18\x01 \x01(\tR\x03key\x12\x30\n\x05value\x18\x02 \x01(\x0b\x32\x1a.diode.v1.CustomFieldValueR\x05value:\x02\x38\x01\x42\x05\n\x03_rdB\t\n\x07_tenantB\x11\n\x0f_enforce_uniqueB\x0e\n\x0c_descriptionB\x0b\n\t_commentsB\x08\n\x06_owner\"\xad\x04\n\x0eVirtualChassis\x12\x12\n\x04name\x18\x01 \x01(\tR\x04name\x12\x1b\n\x06\x64omain\x18\x02 \x01(\tH\x00R\x06\x64omain\x88\x01\x01\x12-\n\x06master\x18\x03 \x01(\x0b\x32\x10.diode.v1.DeviceH\x01R\x06master\x88\x01\x01\x12%\n\x0b\x64\x65scription\x18\x04 \x01(\tH\x02R\x0b\x64\x65scription\x88\x01\x01\x12\x1f\n\x08\x63omments\x18\x05 \x01(\tH\x03R\x08\x63omments\x88\x01\x01\x12!\n\x04tags\x18\x06 \x03(\x0b\x32\r.diode.v1.TagR\x04tags\x12O\n\rcustom_fields\x18\x07 \x03(\x0b\x32*.diode.v1.VirtualChassis.CustomFieldsEntryR\x0c\x63ustomFields\x12\x39\n\x08metadata\x18\x08 \x01(\x0b\x32\x17.google.protobuf.StructB\x04\x88\xb5\x18\x00R\x08metadata\x12*\n\x05owner\x18\t \x01(\x0b\x32\x0f.diode.v1.OwnerH\x04R\x05owner\x88\x01\x01\x1a[\n\x11\x43ustomFieldsEntry\x12\x10\n\x03key\x18\x01 \x01(\tR\x03key\x12\x30\n\x05value\x18\x02 \x01(\x0b\x32\x1a.diode.v1.CustomFieldValueR\x05value:\x02\x38\x01\x42\t\n\x07_domainB\t\n\x07_masterB\x0e\n\x0c_descriptionB\x0b\n\t_commentsB\x08\n\x06_owner\"\xd2\x06\n\x0eVirtualCircuit\x12\x10\n\x03\x63id\x18\x01 \x01(\tR\x03\x63id\x12\x44\n\x10provider_network\x18\x02 \x01(\x0b\x32\x19.diode.v1.ProviderNetworkR\x0fproviderNetwork\x12I\n\x10provider_account\x18\x03 \x01(\x0b\x32\x19.diode.v1.ProviderAccountH\x00R\x0fproviderAccount\x88\x01\x01\x12\x30\n\x04type\x18\x04 \x01(\x0b\x32\x1c.diode.v1.VirtualCircuitTypeR\x04type\x12j\n\x06status\x18\x05 \x01(\tBM\xfa\x42JrHR\x06\x61\x63tiveR\x0e\x64\x65\x63ommissionedR\x0e\x64\x65provisioningR\x07offlineR\x07plannedR\x0cprovisioningH\x01R\x06status\x88\x01\x01\x12-\n\x06tenant\x18\x06 \x01(\x0b\x32\x10.diode.v1.TenantH\x02R\x06tenant\x88\x01\x01\x12%\n\x0b\x64\x65scription\x18\x07 \x01(\tH\x03R\x0b\x64\x65scription\x88\x01\x01\x12\x1f\n\x08\x63omments\x18\x08 \x01(\tH\x04R\x08\x63omments\x88\x01\x01\x12!\n\x04tags\x18\t \x03(\x0b\x32\r.diode.v1.TagR\x04tags\x12O\n\rcustom_fields\x18\n \x03(\x0b\x32*.diode.v1.VirtualCircuit.CustomFieldsEntryR\x0c\x63ustomFields\x12\x39\n\x08metadata\x18\x0b \x01(\x0b\x32\x17.google.protobuf.StructB\x04\x88\xb5\x18\x00R\x08metadata\x12*\n\x05owner\x18\x0c \x01(\x0b\x32\x0f.diode.v1.OwnerH\x05R\x05owner\x88\x01\x01\x1a[\n\x11\x43ustomFieldsEntry\x12\x10\n\x03key\x18\x01 \x01(\tR\x03key\x12\x30\n\x05value\x18\x02 \x01(\x0b\x32\x1a.diode.v1.CustomFieldValueR\x05value:\x02\x38\x01\x42\x13\n\x11_provider_accountB\t\n\x07_statusB\t\n\x07_tenantB\x0e\n\x0c_descriptionB\x0b\n\t_commentsB\x08\n\x06_owner\"\x9a\x04\n\x19VirtualCircuitTermination\x12\x41\n\x0fvirtual_circuit\x18\x01 \x01(\x0b\x32\x18.diode.v1.VirtualCircuitR\x0evirtualCircuit\x12\x30\n\x04role\x18\x02 \x01(\tB\x17\xfa\x42\x14r\x12R\x03hubR\x04peerR\x05spokeH\x00R\x04role\x88\x01\x01\x12\x31\n\tinterface\x18\x03 \x01(\x0b\x32\x13.diode.v1.InterfaceR\tinterface\x12%\n\x0b\x64\x65scription\x18\x04 \x01(\tH\x01R\x0b\x64\x65scription\x88\x01\x01\x12!\n\x04tags\x18\x05 \x03(\x0b\x32\r.diode.v1.TagR\x04tags\x12Z\n\rcustom_fields\x18\x06 \x03(\x0b\x32\x35.diode.v1.VirtualCircuitTermination.CustomFieldsEntryR\x0c\x63ustomFields\x12\x39\n\x08metadata\x18\x07 \x01(\x0b\x32\x17.google.protobuf.StructB\x04\x88\xb5\x18\x00R\x08metadata\x1a[\n\x11\x43ustomFieldsEntry\x12\x10\n\x03key\x18\x01 \x01(\tR\x03key\x12\x30\n\x05value\x18\x02 \x01(\x0b\x32\x1a.diode.v1.CustomFieldValueR\x05value:\x02\x38\x01\x42\x07\n\x05_roleB\x0e\n\x0c_description\"\x8c\x04\n\x12VirtualCircuitType\x12\x12\n\x04name\x18\x01 \x01(\tR\x04name\x12\x12\n\x04slug\x18\x02 \x01(\tR\x04slug\x12\x19\n\x05\x63olor\x18\x03 \x01(\tH\x00R\x05\x63olor\x88\x01\x01\x12%\n\x0b\x64\x65scription\x18\x04 \x01(\tH\x01R\x0b\x64\x65scription\x88\x01\x01\x12!\n\x04tags\x18\x05 \x03(\x0b\x32\r.diode.v1.TagR\x04tags\x12S\n\rcustom_fields\x18\x06 \x03(\x0b\x32..diode.v1.VirtualCircuitType.CustomFieldsEntryR\x0c\x63ustomFields\x12\x39\n\x08metadata\x18\x07 \x01(\x0b\x32\x17.google.protobuf.StructB\x04\x88\xb5\x18\x00R\x08metadata\x12*\n\x05owner\x18\x08 \x01(\x0b\x32\x0f.diode.v1.OwnerH\x02R\x05owner\x88\x01\x01\x12\x1f\n\x08\x63omments\x18\t \x01(\tH\x03R\x08\x63omments\x88\x01\x01\x1a[\n\x11\x43ustomFieldsEntry\x12\x10\n\x03key\x18\x01 \x01(\tR\x03key\x12\x30\n\x05value\x18\x02 \x01(\x0b\x32\x1a.diode.v1.CustomFieldValueR\x05value:\x02\x38\x01\x42\x08\n\x06_colorB\x0e\n\x0c_descriptionB\x08\n\x06_ownerB\x0b\n\t_comments\"\xbe\x06\n\x14VirtualDeviceContext\x12\x12\n\x04name\x18\x01 \x01(\tR\x04name\x12(\n\x06\x64\x65vice\x18\x02 \x01(\x0b\x32\x10.diode.v1.DeviceR\x06\x64\x65vice\x12#\n\nidentifier\x18\x03 \x01(\x03H\x00R\nidentifier\x88\x01\x01\x12-\n\x06tenant\x18\x04 \x01(\x0b\x32\x10.diode.v1.TenantH\x01R\x06tenant\x88\x01\x01\x12\x39\n\x0bprimary_ip4\x18\x05 \x01(\x0b\x32\x13.diode.v1.IPAddressH\x02R\nprimaryIp4\x88\x01\x01\x12\x39\n\x0bprimary_ip6\x18\x06 \x01(\x0b\x32\x13.diode.v1.IPAddressH\x03R\nprimaryIp6\x88\x01\x01\x12\x37\n\x06status\x18\x07 \x01(\tB\x1f\xfa\x42\x1cr\x1aR\x06\x61\x63tiveR\x07offlineR\x07plannedR\x06status\x12%\n\x0b\x64\x65scription\x18\x08 \x01(\tH\x04R\x0b\x64\x65scription\x88\x01\x01\x12\x1f\n\x08\x63omments\x18\t \x01(\tH\x05R\x08\x63omments\x88\x01\x01\x12!\n\x04tags\x18\n \x03(\x0b\x32\r.diode.v1.TagR\x04tags\x12U\n\rcustom_fields\x18\x0b \x03(\x0b\x32\x30.diode.v1.VirtualDeviceContext.CustomFieldsEntryR\x0c\x63ustomFields\x12\x39\n\x08metadata\x18\x0c \x01(\x0b\x32\x17.google.protobuf.StructB\x04\x88\xb5\x18\x00R\x08metadata\x12*\n\x05owner\x18\r \x01(\x0b\x32\x0f.diode.v1.OwnerH\x06R\x05owner\x88\x01\x01\x1a[\n\x11\x43ustomFieldsEntry\x12\x10\n\x03key\x18\x01 \x01(\tR\x03key\x12\x30\n\x05value\x18\x02 \x01(\x0b\x32\x1a.diode.v1.CustomFieldValueR\x05value:\x02\x38\x01\x42\r\n\x0b_identifierB\t\n\x07_tenantB\x0e\n\x0c_primary_ip4B\x0e\n\x0c_primary_ip6B\x0e\n\x0c_descriptionB\x0b\n\t_commentsB\x08\n\x06_owner\"\xee\x03\n\x0bVirtualDisk\x12\x41\n\x0fvirtual_machine\x18\x01 \x01(\x0b\x32\x18.diode.v1.VirtualMachineR\x0evirtualMachine\x12\x12\n\x04name\x18\x02 \x01(\tR\x04name\x12%\n\x0b\x64\x65scription\x18\x03 \x01(\tH\x00R\x0b\x64\x65scription\x88\x01\x01\x12\x12\n\x04size\x18\x04 \x01(\x03R\x04size\x12!\n\x04tags\x18\x05 \x03(\x0b\x32\r.diode.v1.TagR\x04tags\x12L\n\rcustom_fields\x18\x06 \x03(\x0b\x32\'.diode.v1.VirtualDisk.CustomFieldsEntryR\x0c\x63ustomFields\x12\x39\n\x08metadata\x18\x07 \x01(\x0b\x32\x17.google.protobuf.StructB\x04\x88\xb5\x18\x00R\x08metadata\x12*\n\x05owner\x18\x08 \x01(\x0b\x32\x0f.diode.v1.OwnerH\x01R\x05owner\x88\x01\x01\x1a[\n\x11\x43ustomFieldsEntry\x12\x10\n\x03key\x18\x01 \x01(\tR\x03key\x12\x30\n\x05value\x18\x02 \x01(\x0b\x32\x1a.diode.v1.CustomFieldValueR\x05value:\x02\x38\x01\x42\x0e\n\x0c_descriptionB\x08\n\x06_owner\"\x8c\x0b\n\x0eVirtualMachine\x12\x12\n\x04name\x18\x01 \x01(\tR\x04name\x12\x65\n\x06status\x18\x02 \x01(\tBH\xfa\x42\x45rCR\x06\x61\x63tiveR\x0f\x64\x65\x63ommissioningR\x06\x66\x61iledR\x07offlineR\x06pausedR\x07plannedR\x06stagedH\x00R\x06status\x88\x01\x01\x12\'\n\x04site\x18\x03 \x01(\x0b\x32\x0e.diode.v1.SiteH\x01R\x04site\x88\x01\x01\x12\x30\n\x07\x63luster\x18\x04 \x01(\x0b\x32\x11.diode.v1.ClusterH\x02R\x07\x63luster\x88\x01\x01\x12-\n\x06\x64\x65vice\x18\x05 \x01(\x0b\x32\x10.diode.v1.DeviceH\x03R\x06\x64\x65vice\x88\x01\x01\x12\x1b\n\x06serial\x18\x06 \x01(\tH\x04R\x06serial\x88\x01\x01\x12-\n\x04role\x18\x07 \x01(\x0b\x32\x14.diode.v1.DeviceRoleH\x05R\x04role\x88\x01\x01\x12-\n\x06tenant\x18\x08 \x01(\x0b\x32\x10.diode.v1.TenantH\x06R\x06tenant\x88\x01\x01\x12\x33\n\x08platform\x18\t \x01(\x0b\x32\x12.diode.v1.PlatformH\x07R\x08platform\x88\x01\x01\x12\x39\n\x0bprimary_ip4\x18\n \x01(\x0b\x32\x13.diode.v1.IPAddressH\x08R\nprimaryIp4\x88\x01\x01\x12\x39\n\x0bprimary_ip6\x18\x0b \x01(\x0b\x32\x13.diode.v1.IPAddressH\tR\nprimaryIp6\x88\x01\x01\x12\x19\n\x05vcpus\x18\x0c \x01(\x01H\nR\x05vcpus\x88\x01\x01\x12\x1b\n\x06memory\x18\r \x01(\x03H\x0bR\x06memory\x88\x01\x01\x12\x17\n\x04\x64isk\x18\x0e \x01(\x03H\x0cR\x04\x64isk\x88\x01\x01\x12%\n\x0b\x64\x65scription\x18\x0f \x01(\tH\rR\x0b\x64\x65scription\x88\x01\x01\x12\x1f\n\x08\x63omments\x18\x10 \x01(\tH\x0eR\x08\x63omments\x88\x01\x01\x12!\n\x04tags\x18\x11 \x03(\x0b\x32\r.diode.v1.TagR\x04tags\x12O\n\rcustom_fields\x18\x12 \x03(\x0b\x32*.diode.v1.VirtualMachine.CustomFieldsEntryR\x0c\x63ustomFields\x12\x39\n\x08metadata\x18\x13 \x01(\x0b\x32\x17.google.protobuf.StructB\x04\x88\xb5\x18\x00R\x08metadata\x12\x42\n\rstart_on_boot\x18\x14 \x01(\tB\x19\xfa\x42\x16r\x14R\tlaststateR\x03offR\x02onH\x0fR\x0bstartOnBoot\x88\x01\x01\x12*\n\x05owner\x18\x15 \x01(\x0b\x32\x0f.diode.v1.OwnerH\x10R\x05owner\x88\x01\x01\x12S\n\x14virtual_machine_type\x18\x16 \x01(\x0b\x32\x1c.diode.v1.VirtualMachineTypeH\x11R\x12virtualMachineType\x88\x01\x01\x1a[\n\x11\x43ustomFieldsEntry\x12\x10\n\x03key\x18\x01 \x01(\tR\x03key\x12\x30\n\x05value\x18\x02 \x01(\x0b\x32\x1a.diode.v1.CustomFieldValueR\x05value:\x02\x38\x01\x42\t\n\x07_statusB\x07\n\x05_siteB\n\n\x08_clusterB\t\n\x07_deviceB\t\n\x07_serialB\x07\n\x05_roleB\t\n\x07_tenantB\x0b\n\t_platformB\x0e\n\x0c_primary_ip4B\x0e\n\x0c_primary_ip6B\x08\n\x06_vcpusB\t\n\x07_memoryB\x07\n\x05_diskB\x0e\n\x0c_descriptionB\x0b\n\t_commentsB\x10\n\x0e_start_on_bootB\x08\n\x06_ownerB\x17\n\x15_virtual_machine_type\"\x93\t\n\x0bWirelessLAN\x12\x12\n\x04ssid\x18\x01 \x01(\tR\x04ssid\x12%\n\x0b\x64\x65scription\x18\x02 \x01(\tH\x01R\x0b\x64\x65scription\x88\x01\x01\x12\x35\n\x05group\x18\x03 \x01(\x0b\x32\x1a.diode.v1.WirelessLANGroupH\x02R\x05group\x88\x01\x01\x12J\n\x06status\x18\x04 \x01(\tB-\xfa\x42*r(R\x06\x61\x63tiveR\ndeprecatedR\x08\x64isabledR\x08reservedH\x03R\x06status\x88\x01\x01\x12\'\n\x04vlan\x18\x05 \x01(\x0b\x32\x0e.diode.v1.VLANH\x04R\x04vlan\x88\x01\x01\x12;\n\x0escope_location\x18\x06 \x01(\x0b\x32\x12.diode.v1.LocationH\x00R\rscopeLocation\x12\x35\n\x0cscope_region\x18\x07 \x01(\x0b\x32\x10.diode.v1.RegionH\x00R\x0bscopeRegion\x12/\n\nscope_site\x18\x08 \x01(\x0b\x32\x0e.diode.v1.SiteH\x00R\tscopeSite\x12?\n\x10scope_site_group\x18\t \x01(\x0b\x32\x13.diode.v1.SiteGroupH\x00R\x0escopeSiteGroup\x12-\n\x06tenant\x18\n \x01(\x0b\x32\x10.diode.v1.TenantH\x05R\x06tenant\x88\x01\x01\x12P\n\tauth_type\x18\x0b \x01(\tB.\xfa\x42+r)R\x04openR\x03wepR\x0ewpa-enterpriseR\x0cwpa-personalH\x06R\x08\x61uthType\x88\x01\x01\x12<\n\x0b\x61uth_cipher\x18\x0c \x01(\tB\x16\xfa\x42\x13r\x11R\x03\x61\x65sR\x04\x61utoR\x04tkipH\x07R\nauthCipher\x88\x01\x01\x12\x1e\n\x08\x61uth_psk\x18\r \x01(\tH\x08R\x07\x61uthPsk\x88\x01\x01\x12\x1f\n\x08\x63omments\x18\x0e \x01(\tH\tR\x08\x63omments\x88\x01\x01\x12!\n\x04tags\x18\x0f \x03(\x0b\x32\r.diode.v1.TagR\x04tags\x12L\n\rcustom_fields\x18\x10 \x03(\x0b\x32\'.diode.v1.WirelessLAN.CustomFieldsEntryR\x0c\x63ustomFields\x12\x39\n\x08metadata\x18\x11 \x01(\x0b\x32\x17.google.protobuf.StructB\x04\x88\xb5\x18\x00R\x08metadata\x12*\n\x05owner\x18\x12 \x01(\x0b\x32\x0f.diode.v1.OwnerH\nR\x05owner\x88\x01\x01\x1a[\n\x11\x43ustomFieldsEntry\x12\x10\n\x03key\x18\x01 \x01(\tR\x03key\x12\x30\n\x05value\x18\x02 \x01(\x0b\x32\x1a.diode.v1.CustomFieldValueR\x05value:\x02\x38\x01\x42\x07\n\x05scopeB\x0e\n\x0c_descriptionB\x08\n\x06_groupB\t\n\x07_statusB\x07\n\x05_vlanB\t\n\x07_tenantB\x0c\n\n_auth_typeB\x0e\n\x0c_auth_cipherB\x0b\n\t_auth_pskB\x0b\n\t_commentsB\x08\n\x06_owner\"\xa7\x04\n\x10WirelessLANGroup\x12\x12\n\x04name\x18\x01 \x01(\tR\x04name\x12\x12\n\x04slug\x18\x02 \x01(\tR\x04slug\x12\x37\n\x06parent\x18\x03 \x01(\x0b\x32\x1a.diode.v1.WirelessLANGroupH\x00R\x06parent\x88\x01\x01\x12%\n\x0b\x64\x65scription\x18\x04 \x01(\tH\x01R\x0b\x64\x65scription\x88\x01\x01\x12!\n\x04tags\x18\x05 \x03(\x0b\x32\r.diode.v1.TagR\x04tags\x12Q\n\rcustom_fields\x18\x06 \x03(\x0b\x32,.diode.v1.WirelessLANGroup.CustomFieldsEntryR\x0c\x63ustomFields\x12\x1f\n\x08\x63omments\x18\x07 \x01(\tH\x02R\x08\x63omments\x88\x01\x01\x12\x39\n\x08metadata\x18\x08 \x01(\x0b\x32\x17.google.protobuf.StructB\x04\x88\xb5\x18\x00R\x08metadata\x12*\n\x05owner\x18\t \x01(\x0b\x32\x0f.diode.v1.OwnerH\x03R\x05owner\x88\x01\x01\x1a[\n\x11\x43ustomFieldsEntry\x12\x10\n\x03key\x18\x01 \x01(\tR\x03key\x12\x30\n\x05value\x18\x02 \x01(\x0b\x32\x1a.diode.v1.CustomFieldValueR\x05value:\x02\x38\x01\x42\t\n\x07_parentB\x0e\n\x0c_descriptionB\x0b\n\t_commentsB\x08\n\x06_owner\"\xaa\x08\n\x0cWirelessLink\x12\x34\n\x0binterface_a\x18\x01 \x01(\x0b\x32\x13.diode.v1.InterfaceR\ninterfaceA\x12\x34\n\x0binterface_b\x18\x02 \x01(\x0b\x32\x13.diode.v1.InterfaceR\ninterfaceB\x12\x17\n\x04ssid\x18\x03 \x01(\tH\x00R\x04ssid\x88\x01\x01\x12G\n\x06status\x18\x04 \x01(\tB*\xfa\x42\'r%R\tconnectedR\x0f\x64\x65\x63ommissioningR\x07plannedH\x01R\x06status\x88\x01\x01\x12-\n\x06tenant\x18\x05 \x01(\x0b\x32\x10.diode.v1.TenantH\x02R\x06tenant\x88\x01\x01\x12P\n\tauth_type\x18\x06 \x01(\tB.\xfa\x42+r)R\x04openR\x03wepR\x0ewpa-enterpriseR\x0cwpa-personalH\x03R\x08\x61uthType\x88\x01\x01\x12<\n\x0b\x61uth_cipher\x18\x07 \x01(\tB\x16\xfa\x42\x13r\x11R\x03\x61\x65sR\x04\x61utoR\x04tkipH\x04R\nauthCipher\x88\x01\x01\x12\x1e\n\x08\x61uth_psk\x18\x08 \x01(\tH\x05R\x07\x61uthPsk\x88\x01\x01\x12\x1f\n\x08\x64istance\x18\t \x01(\x01H\x06R\x08\x64istance\x88\x01\x01\x12>\n\rdistance_unit\x18\n \x01(\tB\x14\xfa\x42\x11r\x0fR\x02\x66tR\x02kmR\x01mR\x02miH\x07R\x0c\x64istanceUnit\x88\x01\x01\x12%\n\x0b\x64\x65scription\x18\x0b \x01(\tH\x08R\x0b\x64\x65scription\x88\x01\x01\x12\x1f\n\x08\x63omments\x18\x0c \x01(\tH\tR\x08\x63omments\x88\x01\x01\x12!\n\x04tags\x18\r \x03(\x0b\x32\r.diode.v1.TagR\x04tags\x12M\n\rcustom_fields\x18\x0e \x03(\x0b\x32(.diode.v1.WirelessLink.CustomFieldsEntryR\x0c\x63ustomFields\x12\x39\n\x08metadata\x18\x0f \x01(\x0b\x32\x17.google.protobuf.StructB\x04\x88\xb5\x18\x00R\x08metadata\x12*\n\x05owner\x18\x10 \x01(\x0b\x32\x0f.diode.v1.OwnerH\nR\x05owner\x88\x01\x01\x1a[\n\x11\x43ustomFieldsEntry\x12\x10\n\x03key\x18\x01 \x01(\tR\x03key\x12\x30\n\x05value\x18\x02 \x01(\x0b\x32\x1a.diode.v1.CustomFieldValueR\x05value:\x02\x38\x01\x42\x07\n\x05_ssidB\t\n\x07_statusB\t\n\x07_tenantB\x0c\n\n_auth_typeB\x0e\n\x0c_auth_cipherB\x0b\n\t_auth_pskB\x0b\n\t_distanceB\x10\n\x0e_distance_unitB\x0e\n\x0c_descriptionB\x0b\n\t_commentsB\x08\n\x06_owner\"\xe4*\n\x0b\x43ustomField\x12\x89\x01\n\x04type\x18\x01 \x01(\tBu\xfa\x42rrpR\x07\x62ooleanR\x04\x64\x61teR\x08\x64\x61tetimeR\x07\x64\x65\x63imalR\x07integerR\x04jsonR\x08longtextR\x0bmultiobjectR\x0bmultiselectR\x06objectR\x06selectR\x04textR\x03urlR\x04type\x12\x8c\x10\n\x13related_object_type\x18\x02 \x01(\tB\xd6\x0f\xfa\x42\xd2\x0fr\xcf\x0fR\x10\x63ircuits.circuitR\x15\x63ircuits.circuitgroupR\x1f\x63ircuits.circuitgroupassignmentR\x1b\x63ircuits.circuitterminationR\x14\x63ircuits.circuittypeR\x11\x63ircuits.providerR\x18\x63ircuits.provideraccountR\x18\x63ircuits.providernetworkR\x17\x63ircuits.virtualcircuitR\"circuits.virtualcircuitterminationR\x1b\x63ircuits.virtualcircuittypeR\x10\x63ore.managedfileR\ndcim.cableR\x10\x64\x63im.cablebundleR\x0e\x64\x63im.cablepathR\x10\x64\x63im.consoleportR\x16\x64\x63im.consoleserverportR\x10\x64\x63im.coolingfeedR\x12\x64\x63im.coolingintakeR\x13\x64\x63im.coolingoutflowR\x12\x64\x63im.coolingsourceR\x0b\x64\x63im.deviceR\x0e\x64\x63im.devicebayR\x0f\x64\x63im.deviceroleR\x0f\x64\x63im.devicetypeR\x0e\x64\x63im.frontportR\x0e\x64\x63im.interfaceR\x12\x64\x63im.inventoryitemR\x16\x64\x63im.inventoryitemroleR\rdcim.locationR\x0f\x64\x63im.macaddressR\x11\x64\x63im.manufacturerR\x0b\x64\x63im.moduleR\x0e\x64\x63im.modulebayR\x12\x64\x63im.modulebaytypeR\x0f\x64\x63im.moduletypeR\x16\x64\x63im.moduletypeprofileR\rdcim.platformR\x0e\x64\x63im.powerfeedR\x10\x64\x63im.poweroutletR\x0f\x64\x63im.powerpanelR\x0e\x64\x63im.powerportR\tdcim.rackR\x0e\x64\x63im.rackgroupR\x14\x64\x63im.rackreservationR\rdcim.rackroleR\rdcim.racktypeR\rdcim.rearportR\x0b\x64\x63im.regionR\tdcim.siteR\x0e\x64\x63im.sitegroupR\x13\x64\x63im.virtualchassisR\x19\x64\x63im.virtualdevicecontextR\x12\x65xtras.customfieldR\x1b\x65xtras.customfieldchoicesetR\x11\x65xtras.customlinkR\x13\x65xtras.journalentryR\nextras.tagR\x0eipam.aggregateR\x08ipam.asnR\ripam.asnrangeR\x0eipam.fhrpgroupR\x18ipam.fhrpgroupassignmentR\x0eipam.ipaddressR\x0cipam.iprangeR\x0bipam.prefixR\x08ipam.rirR\tipam.roleR\x10ipam.routetargetR\x0cipam.serviceR\tipam.vlanR\x0eipam.vlangroupR\x1aipam.vlantranslationpolicyR\x18ipam.vlantranslationruleR\x08ipam.vrfR\x0ftenancy.contactR\x19tenancy.contactassignmentR\x14tenancy.contactgroupR\x13tenancy.contactroleR\x0etenancy.tenantR\x13tenancy.tenantgroupR\x0busers.ownerR\x10users.ownergroupR\nusers.userR\x16virtualization.clusterR\x1bvirtualization.clustergroupR\x1avirtualization.clustertypeR\x1avirtualization.virtualdiskR\x1dvirtualization.virtualmachineR!virtualization.virtualmachinetypeR\x1avirtualization.vminterfaceR\rvpn.ikepolicyR\x0fvpn.ikeproposalR\x0fvpn.ipsecpolicyR\x10vpn.ipsecprofileR\x11vpn.ipsecproposalR\tvpn.l2vpnR\x14vpn.l2vpnterminationR\nvpn.tunnelR\x0fvpn.tunnelgroupR\x15vpn.tunnelterminationR\x14wireless.wirelesslanR\x19wireless.wirelesslangroupR\x15wireless.wirelesslinkH\x00R\x11relatedObjectType\x88\x01\x01\x12\x12\n\x04name\x18\x03 \x01(\tR\x04name\x12\x19\n\x05label\x18\x04 \x01(\tH\x01R\x05label\x88\x01\x01\x12\"\n\ngroup_name\x18\x05 \x01(\tH\x02R\tgroupName\x88\x01\x01\x12%\n\x0b\x64\x65scription\x18\x06 \x01(\tH\x03R\x0b\x64\x65scription\x88\x01\x01\x12\x1f\n\x08required\x18\x07 \x01(\x08H\x04R\x08required\x88\x01\x01\x12\x1b\n\x06unique\x18\x08 \x01(\x08H\x05R\x06unique\x88\x01\x01\x12(\n\rsearch_weight\x18\t \x01(\x03H\x06R\x0csearchWeight\x88\x01\x01\x12\x45\n\x0c\x66ilter_logic\x18\n \x01(\tB\x1d\xfa\x42\x1ar\x18R\x08\x64isabledR\x05\x65xactR\x05looseH\x07R\x0b\x66ilterLogic\x88\x01\x01\x12\x41\n\nui_visible\x18\x0b \x01(\tB\x1d\xfa\x42\x1ar\x18R\x06\x61lwaysR\x06hiddenR\x06if-setH\x08R\tuiVisible\x88\x01\x01\x12<\n\x0bui_editable\x18\x0c \x01(\tB\x16\xfa\x42\x13r\x11R\x06hiddenR\x02noR\x03yesH\tR\nuiEditable\x88\x01\x01\x12&\n\x0cis_cloneable\x18\r \x01(\x08H\nR\x0bisCloneable\x88\x01\x01\x12\x1d\n\x07\x64\x65\x66\x61ult\x18\x0e \x01(\tH\x0bR\x07\x64\x65\x66\x61ult\x88\x01\x01\x12\x37\n\x15related_object_filter\x18\x0f \x01(\tH\x0cR\x13relatedObjectFilter\x88\x01\x01\x12\x1b\n\x06weight\x18\x10 \x01(\x03H\rR\x06weight\x88\x01\x01\x12\x32\n\x12validation_minimum\x18\x11 \x01(\x01H\x0eR\x11validationMinimum\x88\x01\x01\x12\x32\n\x12validation_maximum\x18\x12 \x01(\x01H\x0fR\x11validationMaximum\x88\x01\x01\x12.\n\x10validation_regex\x18\x13 \x01(\tH\x10R\x0fvalidationRegex\x88\x01\x01\x12\x42\n\nchoice_set\x18\x14 \x01(\x0b\x32\x1e.diode.v1.CustomFieldChoiceSetH\x11R\tchoiceSet\x88\x01\x01\x12\x1f\n\x08\x63omments\x18\x15 \x01(\tH\x12R\x08\x63omments\x88\x01\x01\x12\xca\x0e\n\x0cobject_types\x18\x16 \x03(\tB\xa6\x0e\xfa\x42\xa2\x0e\x92\x01\x9e\x0e\"\x9b\x0er\x98\x0eR\x10\x63ircuits.circuitR\x15\x63ircuits.circuitgroupR\x1f\x63ircuits.circuitgroupassignmentR\x1b\x63ircuits.circuitterminationR\x14\x63ircuits.circuittypeR\x11\x63ircuits.providerR\x18\x63ircuits.provideraccountR\x18\x63ircuits.providernetworkR\x17\x63ircuits.virtualcircuitR\"circuits.virtualcircuitterminationR\x1b\x63ircuits.virtualcircuittypeR\ndcim.cableR\x10\x64\x63im.cablebundleR\x10\x64\x63im.consoleportR\x16\x64\x63im.consoleserverportR\x10\x64\x63im.coolingfeedR\x12\x64\x63im.coolingintakeR\x13\x64\x63im.coolingoutflowR\x12\x64\x63im.coolingsourceR\x0b\x64\x63im.deviceR\x0e\x64\x63im.devicebayR\x0f\x64\x63im.deviceroleR\x0f\x64\x63im.devicetypeR\x0e\x64\x63im.frontportR\x0e\x64\x63im.interfaceR\x12\x64\x63im.inventoryitemR\x16\x64\x63im.inventoryitemroleR\rdcim.locationR\x0f\x64\x63im.macaddressR\x11\x64\x63im.manufacturerR\x0b\x64\x63im.moduleR\x0e\x64\x63im.modulebayR\x12\x64\x63im.modulebaytypeR\x0f\x64\x63im.moduletypeR\x16\x64\x63im.moduletypeprofileR\rdcim.platformR\x0e\x64\x63im.powerfeedR\x10\x64\x63im.poweroutletR\x0f\x64\x63im.powerpanelR\x0e\x64\x63im.powerportR\tdcim.rackR\x0e\x64\x63im.rackgroupR\x14\x64\x63im.rackreservationR\rdcim.rackroleR\rdcim.racktypeR\rdcim.rearportR\x0b\x64\x63im.regionR\tdcim.siteR\x0e\x64\x63im.sitegroupR\x13\x64\x63im.virtualchassisR\x19\x64\x63im.virtualdevicecontextR\x13\x65xtras.journalentryR\x0eipam.aggregateR\x08ipam.asnR\ripam.asnrangeR\x0eipam.fhrpgroupR\x0eipam.ipaddressR\x0cipam.iprangeR\x0bipam.prefixR\x08ipam.rirR\tipam.roleR\x10ipam.routetargetR\x0cipam.serviceR\tipam.vlanR\x0eipam.vlangroupR\x1aipam.vlantranslationpolicyR\x18ipam.vlantranslationruleR\x08ipam.vrfR\x0ftenancy.contactR\x19tenancy.contactassignmentR\x14tenancy.contactgroupR\x13tenancy.contactroleR\x0etenancy.tenantR\x13tenancy.tenantgroupR\x16virtualization.clusterR\x1bvirtualization.clustergroupR\x1avirtualization.clustertypeR\x1avirtualization.virtualdiskR\x1dvirtualization.virtualmachineR!virtualization.virtualmachinetypeR\x1avirtualization.vminterfaceR\rvpn.ikepolicyR\x0fvpn.ikeproposalR\x0fvpn.ipsecpolicyR\x10vpn.ipsecprofileR\x11vpn.ipsecproposalR\tvpn.l2vpnR\x14vpn.l2vpnterminationR\nvpn.tunnelR\x0fvpn.tunnelgroupR\x15vpn.tunnelterminationR\x14wireless.wirelesslanR\x19wireless.wirelesslangroupR\x15wireless.wirelesslinkR\x0bobjectTypes\x12\x39\n\x08metadata\x18\x17 \x01(\x0b\x32\x17.google.protobuf.StructB\x04\x88\xb5\x18\x00R\x08metadata\x12*\n\x05owner\x18\x18 \x01(\x0b\x32\x0f.diode.v1.OwnerH\x13R\x05owner\x88\x01\x01\x12\x30\n\x11validation_schema\x18\x19 \x01(\tH\x14R\x10validationSchema\x88\x01\x01\x12$\n\x0bnulls_first\x18\x1a \x01(\x08H\x15R\nnullsFirst\x88\x01\x01\x42\x16\n\x14_related_object_typeB\x08\n\x06_labelB\r\n\x0b_group_nameB\x0e\n\x0c_descriptionB\x0b\n\t_requiredB\t\n\x07_uniqueB\x10\n\x0e_search_weightB\x0f\n\r_filter_logicB\r\n\x0b_ui_visibleB\x0e\n\x0c_ui_editableB\x0f\n\r_is_cloneableB\n\n\x08_defaultB\x18\n\x16_related_object_filterB\t\n\x07_weightB\x15\n\x13_validation_minimumB\x15\n\x13_validation_maximumB\x13\n\x11_validation_regexB\r\n\x0b_choice_setB\x0b\n\t_commentsB\x08\n\x06_ownerB\x14\n\x12_validation_schemaB\x0e\n\x0c_nulls_first\"\xdf\x03\n\x14\x43ustomFieldChoiceSet\x12\x12\n\x04name\x18\x01 \x01(\tR\x04name\x12%\n\x0b\x64\x65scription\x18\x02 \x01(\tH\x00R\x0b\x64\x65scription\x88\x01\x01\x12H\n\x0c\x62\x61se_choices\x18\x03 \x01(\tB \xfa\x42\x1dr\x1bR\x04IATAR\x08ISO_3166R\tUN_LOCODEH\x01R\x0b\x62\x61seChoices\x88\x01\x01\x12\x36\n\x14order_alphabetically\x18\x04 \x01(\x08H\x02R\x13orderAlphabetically\x88\x01\x01\x12#\n\rextra_choices\x18\x05 \x03(\tR\x0c\x65xtraChoices\x12\x39\n\x08metadata\x18\x06 \x01(\x0b\x32\x17.google.protobuf.StructB\x04\x88\xb5\x18\x00R\x08metadata\x12*\n\x05owner\x18\x07 \x01(\x0b\x32\x0f.diode.v1.OwnerH\x03R\x05owner\x88\x01\x01\x12(\n\rchoice_colors\x18\x08 \x01(\tH\x04R\x0c\x63hoiceColors\x88\x01\x01\x42\x0e\n\x0c_descriptionB\x0f\n\r_base_choicesB\x17\n\x15_order_alphabeticallyB\x08\n\x06_ownerB\x10\n\x0e_choice_colors\"\x8eM\n\x0cJournalEntry\x12?\n\x13\x61ssigned_object_asn\x18\x01 \x01(\x0b\x32\r.diode.v1.ASNH\x00R\x11\x61ssignedObjectAsn\x12O\n\x19\x61ssigned_object_asn_range\x18\x02 \x01(\x0b\x32\x12.diode.v1.ASNRangeH\x00R\x16\x61ssignedObjectAsnRange\x12Q\n\x19\x61ssigned_object_aggregate\x18\x03 \x01(\x0b\x32\x13.diode.v1.AggregateH\x00R\x17\x61ssignedObjectAggregate\x12\x45\n\x15\x61ssigned_object_cable\x18\x04 \x01(\x0b\x32\x0f.diode.v1.CableH\x00R\x13\x61ssignedObjectCable\x12R\n\x1a\x61ssigned_object_cable_path\x18\x05 \x01(\x0b\x32\x13.diode.v1.CablePathH\x00R\x17\x61ssignedObjectCablePath\x12k\n!assigned_object_cable_termination\x18\x06 \x01(\x0b\x32\x1a.diode.v1.CableTerminationB\x02\x18\x01H\x00R\x1e\x61ssignedObjectCableTermination\x12K\n\x17\x61ssigned_object_circuit\x18\x07 \x01(\x0b\x32\x11.diode.v1.CircuitH\x00R\x15\x61ssignedObjectCircuit\x12[\n\x1d\x61ssigned_object_circuit_group\x18\x08 \x01(\x0b\x32\x16.diode.v1.CircuitGroupH\x00R\x1a\x61ssignedObjectCircuitGroup\x12z\n(assigned_object_circuit_group_assignment\x18\t \x01(\x0b\x32 .diode.v1.CircuitGroupAssignmentH\x00R$assignedObjectCircuitGroupAssignment\x12m\n#assigned_object_circuit_termination\x18\n \x01(\x0b\x32\x1c.diode.v1.CircuitTerminationH\x00R assignedObjectCircuitTermination\x12X\n\x1c\x61ssigned_object_circuit_type\x18\x0b \x01(\x0b\x32\x15.diode.v1.CircuitTypeH\x00R\x19\x61ssignedObjectCircuitType\x12K\n\x17\x61ssigned_object_cluster\x18\x0c \x01(\x0b\x32\x11.diode.v1.ClusterH\x00R\x15\x61ssignedObjectCluster\x12[\n\x1d\x61ssigned_object_cluster_group\x18\r \x01(\x0b\x32\x16.diode.v1.ClusterGroupH\x00R\x1a\x61ssignedObjectClusterGroup\x12X\n\x1c\x61ssigned_object_cluster_type\x18\x0e \x01(\x0b\x32\x15.diode.v1.ClusterTypeH\x00R\x19\x61ssignedObjectClusterType\x12X\n\x1c\x61ssigned_object_console_port\x18\x0f \x01(\x0b\x32\x15.diode.v1.ConsolePortH\x00R\x19\x61ssignedObjectConsolePort\x12k\n#assigned_object_console_server_port\x18\x10 \x01(\x0b\x32\x1b.diode.v1.ConsoleServerPortH\x00R\x1f\x61ssignedObjectConsoleServerPort\x12K\n\x17\x61ssigned_object_contact\x18\x11 \x01(\x0b\x32\x11.diode.v1.ContactH\x00R\x15\x61ssignedObjectContact\x12j\n\"assigned_object_contact_assignment\x18\x12 \x01(\x0b\x32\x1b.diode.v1.ContactAssignmentH\x00R\x1f\x61ssignedObjectContactAssignment\x12[\n\x1d\x61ssigned_object_contact_group\x18\x13 \x01(\x0b\x32\x16.diode.v1.ContactGroupH\x00R\x1a\x61ssignedObjectContactGroup\x12X\n\x1c\x61ssigned_object_contact_role\x18\x14 \x01(\x0b\x32\x15.diode.v1.ContactRoleH\x00R\x19\x61ssignedObjectContactRole\x12X\n\x1c\x61ssigned_object_custom_field\x18\x15 \x01(\x0b\x32\x15.diode.v1.CustomFieldH\x00R\x19\x61ssignedObjectCustomField\x12u\n\'assigned_object_custom_field_choice_set\x18\x16 \x01(\x0b\x32\x1e.diode.v1.CustomFieldChoiceSetH\x00R\"assignedObjectCustomFieldChoiceSet\x12H\n\x16\x61ssigned_object_device\x18\x17 \x01(\x0b\x32\x10.diode.v1.DeviceH\x00R\x14\x61ssignedObjectDevice\x12R\n\x1a\x61ssigned_object_device_bay\x18\x18 \x01(\x0b\x32\x13.diode.v1.DeviceBayH\x00R\x17\x61ssignedObjectDeviceBay\x12U\n\x1b\x61ssigned_object_device_role\x18\x19 \x01(\x0b\x32\x14.diode.v1.DeviceRoleH\x00R\x18\x61ssignedObjectDeviceRole\x12U\n\x1b\x61ssigned_object_device_type\x18\x1a \x01(\x0b\x32\x14.diode.v1.DeviceTypeH\x00R\x18\x61ssignedObjectDeviceType\x12R\n\x1a\x61ssigned_object_fhrp_group\x18\x1b \x01(\x0b\x32\x13.diode.v1.FHRPGroupH\x00R\x17\x61ssignedObjectFhrpGroup\x12q\n%assigned_object_fhrp_group_assignment\x18\x1c \x01(\x0b\x32\x1d.diode.v1.FHRPGroupAssignmentH\x00R!assignedObjectFhrpGroupAssignment\x12R\n\x1a\x61ssigned_object_front_port\x18\x1d \x01(\x0b\x32\x13.diode.v1.FrontPortH\x00R\x17\x61ssignedObjectFrontPort\x12R\n\x1a\x61ssigned_object_ike_policy\x18\x1e \x01(\x0b\x32\x13.diode.v1.IKEPolicyH\x00R\x17\x61ssignedObjectIkePolicy\x12X\n\x1c\x61ssigned_object_ike_proposal\x18\x1f \x01(\x0b\x32\x15.diode.v1.IKEProposalH\x00R\x19\x61ssignedObjectIkeProposal\x12R\n\x1a\x61ssigned_object_ip_address\x18 \x01(\x0b\x32\x13.diode.v1.IPAddressH\x00R\x17\x61ssignedObjectIpAddress\x12L\n\x18\x61ssigned_object_ip_range\x18! \x01(\x0b\x32\x11.diode.v1.IPRangeH\x00R\x15\x61ssignedObjectIpRange\x12Y\n\x1d\x61ssigned_object_ip_sec_policy\x18\" \x01(\x0b\x32\x15.diode.v1.IPSecPolicyH\x00R\x19\x61ssignedObjectIpSecPolicy\x12\\\n\x1e\x61ssigned_object_ip_sec_profile\x18# \x01(\x0b\x32\x16.diode.v1.IPSecProfileH\x00R\x1a\x61ssignedObjectIpSecProfile\x12_\n\x1f\x61ssigned_object_ip_sec_proposal\x18$ \x01(\x0b\x32\x17.diode.v1.IPSecProposalH\x00R\x1b\x61ssignedObjectIpSecProposal\x12Q\n\x19\x61ssigned_object_interface\x18% \x01(\x0b\x32\x13.diode.v1.InterfaceH\x00R\x17\x61ssignedObjectInterface\x12^\n\x1e\x61ssigned_object_inventory_item\x18& \x01(\x0b\x32\x17.diode.v1.InventoryItemH\x00R\x1b\x61ssignedObjectInventoryItem\x12k\n#assigned_object_inventory_item_role\x18\' \x01(\x0b\x32\x1b.diode.v1.InventoryItemRoleH\x00R\x1f\x61ssignedObjectInventoryItemRole\x12[\n\x1d\x61ssigned_object_journal_entry\x18( \x01(\x0b\x32\x16.diode.v1.JournalEntryH\x00R\x1a\x61ssignedObjectJournalEntry\x12\x45\n\x15\x61ssigned_object_l2vpn\x18) \x01(\x0b\x32\x0f.diode.v1.L2VPNH\x00R\x13\x61ssignedObjectL2vpn\x12g\n!assigned_object_l2vpn_termination\x18* \x01(\x0b\x32\x1a.diode.v1.L2VPNTerminationH\x00R\x1e\x61ssignedObjectL2vpnTermination\x12N\n\x18\x61ssigned_object_location\x18+ \x01(\x0b\x32\x12.diode.v1.LocationH\x00R\x16\x61ssignedObjectLocation\x12U\n\x1b\x61ssigned_object_mac_address\x18, \x01(\x0b\x32\x14.diode.v1.MACAddressH\x00R\x18\x61ssignedObjectMacAddress\x12Z\n\x1c\x61ssigned_object_manufacturer\x18- \x01(\x0b\x32\x16.diode.v1.ManufacturerH\x00R\x1a\x61ssignedObjectManufacturer\x12H\n\x16\x61ssigned_object_module\x18. \x01(\x0b\x32\x10.diode.v1.ModuleH\x00R\x14\x61ssignedObjectModule\x12R\n\x1a\x61ssigned_object_module_bay\x18/ \x01(\x0b\x32\x13.diode.v1.ModuleBayH\x00R\x17\x61ssignedObjectModuleBay\x12U\n\x1b\x61ssigned_object_module_type\x18\x30 \x01(\x0b\x32\x14.diode.v1.ModuleTypeH\x00R\x18\x61ssignedObjectModuleType\x12k\n#assigned_object_module_type_profile\x18\x31 \x01(\x0b\x32\x1b.diode.v1.ModuleTypeProfileH\x00R\x1f\x61ssignedObjectModuleTypeProfile\x12N\n\x18\x61ssigned_object_platform\x18\x32 \x01(\x0b\x32\x12.diode.v1.PlatformH\x00R\x16\x61ssignedObjectPlatform\x12R\n\x1a\x61ssigned_object_power_feed\x18\x33 \x01(\x0b\x32\x13.diode.v1.PowerFeedH\x00R\x17\x61ssignedObjectPowerFeed\x12X\n\x1c\x61ssigned_object_power_outlet\x18\x34 \x01(\x0b\x32\x15.diode.v1.PowerOutletH\x00R\x19\x61ssignedObjectPowerOutlet\x12U\n\x1b\x61ssigned_object_power_panel\x18\x35 \x01(\x0b\x32\x14.diode.v1.PowerPanelH\x00R\x18\x61ssignedObjectPowerPanel\x12R\n\x1a\x61ssigned_object_power_port\x18\x36 \x01(\x0b\x32\x13.diode.v1.PowerPortH\x00R\x17\x61ssignedObjectPowerPort\x12H\n\x16\x61ssigned_object_prefix\x18\x37 \x01(\x0b\x32\x10.diode.v1.PrefixH\x00R\x14\x61ssignedObjectPrefix\x12N\n\x18\x61ssigned_object_provider\x18\x38 \x01(\x0b\x32\x12.diode.v1.ProviderH\x00R\x16\x61ssignedObjectProvider\x12\x64\n assigned_object_provider_account\x18\x39 \x01(\x0b\x32\x19.diode.v1.ProviderAccountH\x00R\x1d\x61ssignedObjectProviderAccount\x12\x64\n assigned_object_provider_network\x18: \x01(\x0b\x32\x19.diode.v1.ProviderNetworkH\x00R\x1d\x61ssignedObjectProviderNetwork\x12?\n\x13\x61ssigned_object_rir\x18; \x01(\x0b\x32\r.diode.v1.RIRH\x00R\x11\x61ssignedObjectRir\x12\x42\n\x14\x61ssigned_object_rack\x18< \x01(\x0b\x32\x0e.diode.v1.RackH\x00R\x12\x61ssignedObjectRack\x12\x64\n assigned_object_rack_reservation\x18= \x01(\x0b\x32\x19.diode.v1.RackReservationH\x00R\x1d\x61ssignedObjectRackReservation\x12O\n\x19\x61ssigned_object_rack_role\x18> \x01(\x0b\x32\x12.diode.v1.RackRoleH\x00R\x16\x61ssignedObjectRackRole\x12O\n\x19\x61ssigned_object_rack_type\x18? \x01(\x0b\x32\x12.diode.v1.RackTypeH\x00R\x16\x61ssignedObjectRackType\x12O\n\x19\x61ssigned_object_rear_port\x18@ \x01(\x0b\x32\x12.diode.v1.RearPortH\x00R\x16\x61ssignedObjectRearPort\x12H\n\x16\x61ssigned_object_region\x18\x41 \x01(\x0b\x32\x10.diode.v1.RegionH\x00R\x14\x61ssignedObjectRegion\x12\x42\n\x14\x61ssigned_object_role\x18\x42 \x01(\x0b\x32\x0e.diode.v1.RoleH\x00R\x12\x61ssignedObjectRole\x12X\n\x1c\x61ssigned_object_route_target\x18\x43 \x01(\x0b\x32\x15.diode.v1.RouteTargetH\x00R\x19\x61ssignedObjectRouteTarget\x12K\n\x17\x61ssigned_object_service\x18\x44 \x01(\x0b\x32\x11.diode.v1.ServiceH\x00R\x15\x61ssignedObjectService\x12\x42\n\x14\x61ssigned_object_site\x18\x45 \x01(\x0b\x32\x0e.diode.v1.SiteH\x00R\x12\x61ssignedObjectSite\x12R\n\x1a\x61ssigned_object_site_group\x18\x46 \x01(\x0b\x32\x13.diode.v1.SiteGroupH\x00R\x17\x61ssignedObjectSiteGroup\x12?\n\x13\x61ssigned_object_tag\x18G \x01(\x0b\x32\r.diode.v1.TagH\x00R\x11\x61ssignedObjectTag\x12H\n\x16\x61ssigned_object_tenant\x18H \x01(\x0b\x32\x10.diode.v1.TenantH\x00R\x14\x61ssignedObjectTenant\x12X\n\x1c\x61ssigned_object_tenant_group\x18I \x01(\x0b\x32\x15.diode.v1.TenantGroupH\x00R\x19\x61ssignedObjectTenantGroup\x12H\n\x16\x61ssigned_object_tunnel\x18J \x01(\x0b\x32\x10.diode.v1.TunnelH\x00R\x14\x61ssignedObjectTunnel\x12X\n\x1c\x61ssigned_object_tunnel_group\x18K \x01(\x0b\x32\x15.diode.v1.TunnelGroupH\x00R\x19\x61ssignedObjectTunnelGroup\x12j\n\"assigned_object_tunnel_termination\x18L \x01(\x0b\x32\x1b.diode.v1.TunnelTerminationH\x00R\x1f\x61ssignedObjectTunnelTermination\x12\x42\n\x14\x61ssigned_object_vlan\x18M \x01(\x0b\x32\x0e.diode.v1.VLANH\x00R\x12\x61ssignedObjectVlan\x12R\n\x1a\x61ssigned_object_vlan_group\x18N \x01(\x0b\x32\x13.diode.v1.VLANGroupH\x00R\x17\x61ssignedObjectVlanGroup\x12w\n\'assigned_object_vlan_translation_policy\x18O \x01(\x0b\x32\x1f.diode.v1.VLANTranslationPolicyH\x00R#assignedObjectVlanTranslationPolicy\x12q\n%assigned_object_vlan_translation_rule\x18P \x01(\x0b\x32\x1d.diode.v1.VLANTranslationRuleH\x00R!assignedObjectVlanTranslationRule\x12X\n\x1c\x61ssigned_object_vm_interface\x18Q \x01(\x0b\x32\x15.diode.v1.VMInterfaceH\x00R\x19\x61ssignedObjectVmInterface\x12?\n\x13\x61ssigned_object_vrf\x18R \x01(\x0b\x32\r.diode.v1.VRFH\x00R\x11\x61ssignedObjectVrf\x12\x61\n\x1f\x61ssigned_object_virtual_chassis\x18S \x01(\x0b\x32\x18.diode.v1.VirtualChassisH\x00R\x1c\x61ssignedObjectVirtualChassis\x12\x61\n\x1f\x61ssigned_object_virtual_circuit\x18T \x01(\x0b\x32\x18.diode.v1.VirtualCircuitH\x00R\x1c\x61ssignedObjectVirtualCircuit\x12\x83\x01\n+assigned_object_virtual_circuit_termination\x18U \x01(\x0b\x32#.diode.v1.VirtualCircuitTerminationH\x00R\'assignedObjectVirtualCircuitTermination\x12n\n$assigned_object_virtual_circuit_type\x18V \x01(\x0b\x32\x1c.diode.v1.VirtualCircuitTypeH\x00R assignedObjectVirtualCircuitType\x12t\n&assigned_object_virtual_device_context\x18W \x01(\x0b\x32\x1e.diode.v1.VirtualDeviceContextH\x00R\"assignedObjectVirtualDeviceContext\x12X\n\x1c\x61ssigned_object_virtual_disk\x18X \x01(\x0b\x32\x15.diode.v1.VirtualDiskH\x00R\x19\x61ssignedObjectVirtualDisk\x12\x61\n\x1f\x61ssigned_object_virtual_machine\x18Y \x01(\x0b\x32\x18.diode.v1.VirtualMachineH\x00R\x1c\x61ssignedObjectVirtualMachine\x12X\n\x1c\x61ssigned_object_wireless_lan\x18Z \x01(\x0b\x32\x15.diode.v1.WirelessLANH\x00R\x19\x61ssignedObjectWirelessLan\x12h\n\"assigned_object_wireless_lan_group\x18[ \x01(\x0b\x32\x1a.diode.v1.WirelessLANGroupH\x00R\x1e\x61ssignedObjectWirelessLanGroup\x12[\n\x1d\x61ssigned_object_wireless_link\x18\\ \x01(\x0b\x32\x16.diode.v1.WirelessLinkH\x00R\x1a\x61ssignedObjectWirelessLink\x12U\n\x1b\x61ssigned_object_custom_link\x18\x61 \x01(\x0b\x32\x14.diode.v1.CustomLinkH\x00R\x18\x61ssignedObjectCustomLink\x12\x45\n\x15\x61ssigned_object_owner\x18\x63 \x01(\x0b\x32\x0f.diode.v1.OwnerH\x00R\x13\x61ssignedObjectOwner\x12U\n\x1b\x61ssigned_object_owner_group\x18\x64 \x01(\x0b\x32\x14.diode.v1.OwnerGroupH\x00R\x18\x61ssignedObjectOwnerGroup\x12X\n\x1c\x61ssigned_object_cable_bundle\x18\x65 \x01(\x0b\x32\x15.diode.v1.CableBundleH\x00R\x19\x61ssignedObjectCableBundle\x12R\n\x1a\x61ssigned_object_rack_group\x18\x66 \x01(\x0b\x32\x13.diode.v1.RackGroupH\x00R\x17\x61ssignedObjectRackGroup\x12[\n\x1d\x61ssigned_object_script_module\x18g \x01(\x0b\x32\x16.diode.v1.ScriptModuleH\x00R\x1a\x61ssignedObjectScriptModule\x12n\n$assigned_object_virtual_machine_type\x18h \x01(\x0b\x32\x1c.diode.v1.VirtualMachineTypeH\x00R assignedObjectVirtualMachineType\x12\x42\n\x14\x61ssigned_object_user\x18i \x01(\x0b\x32\x0e.diode.v1.UserH\x00R\x12\x61ssignedObjectUser\x12X\n\x1c\x61ssigned_object_cooling_feed\x18k \x01(\x0b\x32\x15.diode.v1.CoolingFeedH\x00R\x19\x61ssignedObjectCoolingFeed\x12^\n\x1e\x61ssigned_object_cooling_intake\x18l \x01(\x0b\x32\x17.diode.v1.CoolingIntakeH\x00R\x1b\x61ssignedObjectCoolingIntake\x12\x61\n\x1f\x61ssigned_object_cooling_outflow\x18m \x01(\x0b\x32\x18.diode.v1.CoolingOutflowH\x00R\x1c\x61ssignedObjectCoolingOutflow\x12^\n\x1e\x61ssigned_object_cooling_source\x18n \x01(\x0b\x32\x17.diode.v1.CoolingSourceH\x00R\x1b\x61ssignedObjectCoolingSource\x12_\n\x1f\x61ssigned_object_module_bay_type\x18o \x01(\x0b\x32\x17.diode.v1.ModuleBayTypeH\x00R\x1b\x61ssignedObjectModuleBayType\x12>\n\x04kind\x18] \x01(\tB%\xfa\x42\"r R\x06\x64\x61ngerR\x04infoR\x07successR\x07warningH\x01R\x04kind\x88\x01\x01\x12\x1a\n\x08\x63omments\x18^ \x01(\tR\x08\x63omments\x12!\n\x04tags\x18_ \x03(\x0b\x32\r.diode.v1.TagR\x04tags\x12M\n\rcustom_fields\x18` \x03(\x0b\x32(.diode.v1.JournalEntry.CustomFieldsEntryR\x0c\x63ustomFields\x12\x39\n\x08metadata\x18\x62 \x01(\x0b\x32\x17.google.protobuf.StructB\x04\x88\xb5\x18\x00R\x08metadata\x12\x32\n\ncreated_by\x18j \x01(\x0b\x32\x0e.diode.v1.UserH\x02R\tcreatedBy\x88\x01\x01\x1a[\n\x11\x43ustomFieldsEntry\x12\x10\n\x03key\x18\x01 \x01(\tR\x03key\x12\x30\n\x05value\x18\x02 \x01(\x0b\x32\x1a.diode.v1.CustomFieldValueR\x05value:\x02\x38\x01\x42\x11\n\x0f\x61ssigned_objectB\x07\n\x05_kindB\r\n\x0b_created_by\"\xf9\x03\n\x11ModuleTypeProfile\x12\x12\n\x04name\x18\x01 \x01(\tR\x04name\x12%\n\x0b\x64\x65scription\x18\x02 \x01(\tH\x00R\x0b\x64\x65scription\x88\x01\x01\x12\x1b\n\x06schema\x18\x03 \x01(\tH\x01R\x06schema\x88\x01\x01\x12\x1f\n\x08\x63omments\x18\x04 \x01(\tH\x02R\x08\x63omments\x88\x01\x01\x12!\n\x04tags\x18\x05 \x03(\x0b\x32\r.diode.v1.TagR\x04tags\x12R\n\rcustom_fields\x18\x06 \x03(\x0b\x32-.diode.v1.ModuleTypeProfile.CustomFieldsEntryR\x0c\x63ustomFields\x12\x39\n\x08metadata\x18\x07 \x01(\x0b\x32\x17.google.protobuf.StructB\x04\x88\xb5\x18\x00R\x08metadata\x12*\n\x05owner\x18\x08 \x01(\x0b\x32\x0f.diode.v1.OwnerH\x03R\x05owner\x88\x01\x01\x1a[\n\x11\x43ustomFieldsEntry\x12\x10\n\x03key\x18\x01 \x01(\tR\x03key\x12\x30\n\x05value\x18\x02 \x01(\x0b\x32\x1a.diode.v1.CustomFieldValueR\x05value:\x02\x38\x01\x42\x0e\n\x0c_descriptionB\t\n\x07_schemaB\x0b\n\t_commentsB\x08\n\x06_owner\"\xe0\x12\n\nCustomLink\x12\x12\n\x04name\x18\x01 \x01(\tR\x04name\x12\x1d\n\x07\x65nabled\x18\x02 \x01(\x08H\x00R\x07\x65nabled\x88\x01\x01\x12\x1b\n\tlink_text\x18\x03 \x01(\tR\x08linkText\x12\x19\n\x08link_url\x18\x04 \x01(\tR\x07linkUrl\x12\x1b\n\x06weight\x18\x05 \x01(\x03H\x01R\x06weight\x88\x01\x01\x12\"\n\ngroup_name\x18\x06 \x01(\tH\x02R\tgroupName\x88\x01\x01\x12\x9a\x01\n\x0c\x62utton_class\x18\x07 \x01(\tBr\xfa\x42ormR\x05\x62lackR\x04\x62lueR\x04\x63yanR\x07\x64\x65\x66\x61ultR\nghost-darkR\x04grayR\x05greenR\x06indigoR\x06orangeR\x04pinkR\x06purpleR\x03redR\x04tealR\x05whiteR\x06yellowH\x03R\x0b\x62uttonClass\x88\x01\x01\x12\"\n\nnew_window\x18\x08 \x01(\x08H\x04R\tnewWindow\x88\x01\x01\x12\xad\x0e\n\x0cobject_types\x18\t \x03(\tB\x89\x0e\xfa\x42\x85\x0e\x92\x01\x81\x0e\"\xfe\rr\xfb\rR\x10\x63ircuits.circuitR\x15\x63ircuits.circuitgroupR\x1b\x63ircuits.circuitterminationR\x14\x63ircuits.circuittypeR\x11\x63ircuits.providerR\x18\x63ircuits.provideraccountR\x18\x63ircuits.providernetworkR\x17\x63ircuits.virtualcircuitR\"circuits.virtualcircuitterminationR\x1b\x63ircuits.virtualcircuittypeR\ndcim.cableR\x10\x64\x63im.cablebundleR\x10\x64\x63im.consoleportR\x16\x64\x63im.consoleserverportR\x10\x64\x63im.coolingfeedR\x12\x64\x63im.coolingintakeR\x13\x64\x63im.coolingoutflowR\x12\x64\x63im.coolingsourceR\x0b\x64\x63im.deviceR\x0e\x64\x63im.devicebayR\x0f\x64\x63im.deviceroleR\x0f\x64\x63im.devicetypeR\x0e\x64\x63im.frontportR\x0e\x64\x63im.interfaceR\x12\x64\x63im.inventoryitemR\x16\x64\x63im.inventoryitemroleR\rdcim.locationR\x0f\x64\x63im.macaddressR\x11\x64\x63im.manufacturerR\x0b\x64\x63im.moduleR\x0e\x64\x63im.modulebayR\x12\x64\x63im.modulebaytypeR\x0f\x64\x63im.moduletypeR\x16\x64\x63im.moduletypeprofileR\rdcim.platformR\x0e\x64\x63im.powerfeedR\x10\x64\x63im.poweroutletR\x0f\x64\x63im.powerpanelR\x0e\x64\x63im.powerportR\tdcim.rackR\x0e\x64\x63im.rackgroupR\x14\x64\x63im.rackreservationR\rdcim.rackroleR\rdcim.racktypeR\rdcim.rearportR\x0b\x64\x63im.regionR\tdcim.siteR\x0e\x64\x63im.sitegroupR\x13\x64\x63im.virtualchassisR\x19\x64\x63im.virtualdevicecontextR\x13\x65xtras.journalentryR\x0eipam.aggregateR\x08ipam.asnR\ripam.asnrangeR\x0eipam.fhrpgroupR\x0eipam.ipaddressR\x0cipam.iprangeR\x0bipam.prefixR\x08ipam.rirR\tipam.roleR\x10ipam.routetargetR\x0cipam.serviceR\tipam.vlanR\x0eipam.vlangroupR\x1aipam.vlantranslationpolicyR\x18ipam.vlantranslationruleR\x08ipam.vrfR\x0ftenancy.contactR\x14tenancy.contactgroupR\x13tenancy.contactroleR\x0etenancy.tenantR\x13tenancy.tenantgroupR\x0busers.ownerR\x10users.ownergroupR\x16virtualization.clusterR\x1bvirtualization.clustergroupR\x1avirtualization.clustertypeR\x1avirtualization.virtualdiskR\x1dvirtualization.virtualmachineR!virtualization.virtualmachinetypeR\x1avirtualization.vminterfaceR\rvpn.ikepolicyR\x0fvpn.ikeproposalR\x0fvpn.ipsecpolicyR\x10vpn.ipsecprofileR\x11vpn.ipsecproposalR\tvpn.l2vpnR\x14vpn.l2vpnterminationR\nvpn.tunnelR\x0fvpn.tunnelgroupR\x15vpn.tunnelterminationR\x14wireless.wirelesslanR\x19wireless.wirelesslangroupR\x15wireless.wirelesslinkR\x0bobjectTypes\x12\x39\n\x08metadata\x18\n \x01(\x0b\x32\x17.google.protobuf.StructB\x04\x88\xb5\x18\x00R\x08metadata\x12*\n\x05owner\x18\x0b \x01(\x0b\x32\x0f.diode.v1.OwnerH\x05R\x05owner\x88\x01\x01\x42\n\n\x08_enabledB\t\n\x07_weightB\r\n\x0b_group_nameB\x0f\n\r_button_classB\r\n\x0b_new_windowB\x08\n\x06_owner\"\xdf\x01\n\x05Owner\x12\x12\n\x04name\x18\x01 \x01(\tR\x04name\x12*\n\x05group\x18\x02 \x01(\x0b\x32\x14.diode.v1.OwnerGroupR\x05group\x12%\n\x0b\x64\x65scription\x18\x03 \x01(\tH\x00R\x0b\x64\x65scription\x88\x01\x01\x12\x39\n\x08metadata\x18\x04 \x01(\x0b\x32\x17.google.protobuf.StructB\x04\x88\xb5\x18\x00R\x08metadata\x12$\n\x05users\x18\x05 \x03(\x0b\x32\x0e.diode.v1.UserR\x05usersB\x0e\n\x0c_description\"\x92\x01\n\nOwnerGroup\x12\x12\n\x04name\x18\x01 \x01(\tR\x04name\x12%\n\x0b\x64\x65scription\x18\x02 \x01(\tH\x00R\x0b\x64\x65scription\x88\x01\x01\x12\x39\n\x08metadata\x18\x03 \x01(\x0b\x32\x17.google.protobuf.StructB\x04\x88\xb5\x18\x00R\x08metadataB\x0e\n\x0c_description\"\xad\x01\n\x0c\x44\x65viceConfig\x12\x1e\n\x07startup\x18\x01 \x01(\x0c\x42\x04\x88\xb5\x18\x00R\x07startup\x12\x1e\n\x07running\x18\x02 \x01(\x0c\x42\x04\x88\xb5\x18\x00R\x07running\x12\"\n\tcandidate\x18\x03 \x01(\x0c\x42\x04\x88\xb5\x18\x00R\tcandidate\x12\x39\n\x08metadata\x18\x04 \x01(\x0b\x32\x17.google.protobuf.StructB\x04\x88\xb5\x18\x00R\x08metadata\"\xc5\x03\n\x0b\x43\x61\x62leBundle\x12\x12\n\x04name\x18\x01 \x01(\tR\x04name\x12%\n\x0b\x64\x65scription\x18\x02 \x01(\tH\x00R\x0b\x64\x65scription\x88\x01\x01\x12*\n\x05owner\x18\x03 \x01(\x0b\x32\x0f.diode.v1.OwnerH\x01R\x05owner\x88\x01\x01\x12\x1f\n\x08\x63omments\x18\x04 \x01(\tH\x02R\x08\x63omments\x88\x01\x01\x12!\n\x04tags\x18\x05 \x03(\x0b\x32\r.diode.v1.TagR\x04tags\x12L\n\rcustom_fields\x18\x06 \x03(\x0b\x32\'.diode.v1.CableBundle.CustomFieldsEntryR\x0c\x63ustomFields\x12\x39\n\x08metadata\x18\x07 \x01(\x0b\x32\x17.google.protobuf.StructB\x04\x88\xb5\x18\x00R\x08metadata\x1a[\n\x11\x43ustomFieldsEntry\x12\x10\n\x03key\x18\x01 \x01(\tR\x03key\x12\x30\n\x05value\x18\x02 \x01(\x0b\x32\x1a.diode.v1.CustomFieldValueR\x05value:\x02\x38\x01\x42\x0e\n\x0c_descriptionB\x08\n\x06_ownerB\x0b\n\t_comments\"\xd5\x03\n\tRackGroup\x12\x12\n\x04name\x18\x01 \x01(\tR\x04name\x12\x12\n\x04slug\x18\x02 \x01(\tR\x04slug\x12%\n\x0b\x64\x65scription\x18\x03 \x01(\tH\x00R\x0b\x64\x65scription\x88\x01\x01\x12*\n\x05owner\x18\x04 \x01(\x0b\x32\x0f.diode.v1.OwnerH\x01R\x05owner\x88\x01\x01\x12\x1f\n\x08\x63omments\x18\x05 \x01(\tH\x02R\x08\x63omments\x88\x01\x01\x12!\n\x04tags\x18\x06 \x03(\x0b\x32\r.diode.v1.TagR\x04tags\x12J\n\rcustom_fields\x18\x07 \x03(\x0b\x32%.diode.v1.RackGroup.CustomFieldsEntryR\x0c\x63ustomFields\x12\x39\n\x08metadata\x18\x08 \x01(\x0b\x32\x17.google.protobuf.StructB\x04\x88\xb5\x18\x00R\x08metadata\x1a[\n\x11\x43ustomFieldsEntry\x12\x10\n\x03key\x18\x01 \x01(\tR\x03key\x12\x30\n\x05value\x18\x02 \x01(\x0b\x32\x1a.diode.v1.CustomFieldValueR\x05value:\x02\x38\x01\x42\x0e\n\x0c_descriptionB\x08\n\x06_ownerB\x0b\n\t_comments\"]\n\x0cScriptModule\x12\x12\n\x04\x66ile\x18\x01 \x01(\tR\x04\x66ile\x12\x39\n\x08metadata\x18\x02 \x01(\x0b\x32\x17.google.protobuf.StructB\x04\x88\xb5\x18\x00R\x08metadata\"\xbb\x05\n\x12VirtualMachineType\x12\x12\n\x04name\x18\x01 \x01(\tR\x04name\x12\x12\n\x04slug\x18\x02 \x01(\tR\x04slug\x12\x42\n\x10\x64\x65\x66\x61ult_platform\x18\x03 \x01(\x0b\x32\x12.diode.v1.PlatformH\x00R\x0f\x64\x65\x66\x61ultPlatform\x88\x01\x01\x12(\n\rdefault_vcpus\x18\x04 \x01(\x01H\x01R\x0c\x64\x65\x66\x61ultVcpus\x88\x01\x01\x12*\n\x0e\x64\x65\x66\x61ult_memory\x18\x05 \x01(\x03H\x02R\rdefaultMemory\x88\x01\x01\x12%\n\x0b\x64\x65scription\x18\x06 \x01(\tH\x03R\x0b\x64\x65scription\x88\x01\x01\x12*\n\x05owner\x18\x07 \x01(\x0b\x32\x0f.diode.v1.OwnerH\x04R\x05owner\x88\x01\x01\x12\x1f\n\x08\x63omments\x18\x08 \x01(\tH\x05R\x08\x63omments\x88\x01\x01\x12!\n\x04tags\x18\t \x03(\x0b\x32\r.diode.v1.TagR\x04tags\x12S\n\rcustom_fields\x18\n \x03(\x0b\x32..diode.v1.VirtualMachineType.CustomFieldsEntryR\x0c\x63ustomFields\x12\x39\n\x08metadata\x18\x0b \x01(\x0b\x32\x17.google.protobuf.StructB\x04\x88\xb5\x18\x00R\x08metadata\x1a[\n\x11\x43ustomFieldsEntry\x12\x10\n\x03key\x18\x01 \x01(\tR\x03key\x12\x30\n\x05value\x18\x02 \x01(\x0b\x32\x1a.diode.v1.CustomFieldValueR\x05value:\x02\x38\x01\x42\x13\n\x11_default_platformB\x10\n\x0e_default_vcpusB\x11\n\x0f_default_memoryB\x0e\n\x0c_descriptionB\x08\n\x06_ownerB\x0b\n\t_comments\"]\n\x04User\x12\x1a\n\x08username\x18\x01 \x01(\tR\x08username\x12\x39\n\x08metadata\x18\x02 \x01(\x0b\x32\x17.google.protobuf.StructB\x04\x88\xb5\x18\x00R\x08metadata\"\x86\x07\n\x0b\x43oolingFeed\x12>\n\x0e\x63ooling_source\x18\x01 \x01(\x0b\x32\x17.diode.v1.CoolingSourceR\rcoolingSource\x12\'\n\x04rack\x18\x02 \x01(\x0b\x32\x0e.diode.v1.RackH\x00R\x04rack\x88\x01\x01\x12\x12\n\x04name\x18\x03 \x01(\tR\x04name\x12\x44\n\x06status\x18\x04 \x01(\tB\'\xfa\x42$r\"R\x06\x61\x63tiveR\x06\x66\x61iledR\x07offlineR\x07plannedH\x01R\x06status\x88\x01\x01\x12.\n\x10\x63ooling_capacity\x18\x05 \x01(\x01H\x02R\x0f\x63oolingCapacity\x88\x01\x01\x12\x1e\n\x08max_flow\x18\x06 \x01(\x01H\x03R\x07maxFlow\x88\x01\x01\x12>\n\rmax_flow_unit\x18\x07 \x01(\tB\x15\xfa\x42\x12r\x10R\x03gpmR\x03lpmR\x04m3phH\x04R\x0bmaxFlowUnit\x88\x01\x01\x12%\n\x0b\x64\x65scription\x18\x08 \x01(\tH\x05R\x0b\x64\x65scription\x88\x01\x01\x12-\n\x06tenant\x18\t \x01(\x0b\x32\x10.diode.v1.TenantH\x06R\x06tenant\x88\x01\x01\x12*\n\x05owner\x18\n \x01(\x0b\x32\x0f.diode.v1.OwnerH\x07R\x05owner\x88\x01\x01\x12\x1f\n\x08\x63omments\x18\x0b \x01(\tH\x08R\x08\x63omments\x88\x01\x01\x12!\n\x04tags\x18\x0c \x03(\x0b\x32\r.diode.v1.TagR\x04tags\x12L\n\rcustom_fields\x18\r \x03(\x0b\x32\'.diode.v1.CoolingFeed.CustomFieldsEntryR\x0c\x63ustomFields\x12\x39\n\x08metadata\x18\x0e \x01(\x0b\x32\x17.google.protobuf.StructB\x04\x88\xb5\x18\x00R\x08metadata\x1a[\n\x11\x43ustomFieldsEntry\x12\x10\n\x03key\x18\x01 \x01(\tR\x03key\x12\x30\n\x05value\x18\x02 \x01(\x0b\x32\x1a.diode.v1.CustomFieldValueR\x05value:\x02\x38\x01\x42\x07\n\x05_rackB\t\n\x07_statusB\x13\n\x11_cooling_capacityB\x0b\n\t_max_flowB\x10\n\x0e_max_flow_unitB\x0e\n\x0c_descriptionB\t\n\x07_tenantB\x08\n\x06_ownerB\x0b\n\t_comments\"\xd5\x07\n\rCoolingIntake\x12(\n\x06\x64\x65vice\x18\x01 \x01(\x0b\x32\x10.diode.v1.DeviceR\x06\x64\x65vice\x12-\n\x06module\x18\x02 \x01(\x0b\x32\x10.diode.v1.ModuleH\x00R\x06module\x88\x01\x01\x12\x12\n\x04name\x18\x03 \x01(\tR\x04name\x12\x19\n\x05label\x18\x04 \x01(\tH\x01R\x05label\x88\x01\x01\x12N\n\x04type\x18\x05 \x01(\tB5\xfa\x42\x32r0R\x03\x62spR\x07\x63\x61mlockR\x03nptR\x0bproprietaryR\x03qdcR\x03uqdR\x04uqdbH\x02R\x04type\x88\x01\x01\x12\x1f\n\x08\x64iameter\x18\x06 \x01(\x01H\x03R\x08\x64iameter\x88\x01\x01\x12;\n\rdiameter_unit\x18\x07 \x01(\tB\x11\xfa\x42\x0er\x0cR\x02\x63mR\x02inR\x02mmH\x04R\x0c\x64iameterUnit\x88\x01\x01\x12\x1e\n\x08max_flow\x18\x08 \x01(\x01H\x05R\x07maxFlow\x88\x01\x01\x12>\n\rmax_flow_unit\x18\t \x01(\tB\x15\xfa\x42\x12r\x10R\x03gpmR\x03lpmR\x04m3phH\x06R\x0bmaxFlowUnit\x88\x01\x01\x12\x46\n\x0f\x63ooling_outflow\x18\n \x01(\x0b\x32\x18.diode.v1.CoolingOutflowH\x07R\x0e\x63oolingOutflow\x88\x01\x01\x12%\n\x0b\x64\x65scription\x18\x0b \x01(\tH\x08R\x0b\x64\x65scription\x88\x01\x01\x12*\n\x05owner\x18\x0c \x01(\x0b\x32\x0f.diode.v1.OwnerH\tR\x05owner\x88\x01\x01\x12!\n\x04tags\x18\r \x03(\x0b\x32\r.diode.v1.TagR\x04tags\x12N\n\rcustom_fields\x18\x0e \x03(\x0b\x32).diode.v1.CoolingIntake.CustomFieldsEntryR\x0c\x63ustomFields\x12\x39\n\x08metadata\x18\x0f \x01(\x0b\x32\x17.google.protobuf.StructB\x04\x88\xb5\x18\x00R\x08metadata\x1a[\n\x11\x43ustomFieldsEntry\x12\x10\n\x03key\x18\x01 \x01(\tR\x03key\x12\x30\n\x05value\x18\x02 \x01(\x0b\x32\x1a.diode.v1.CustomFieldValueR\x05value:\x02\x38\x01\x42\t\n\x07_moduleB\x08\n\x06_labelB\x07\n\x05_typeB\x0b\n\t_diameterB\x10\n\x0e_diameter_unitB\x0b\n\t_max_flowB\x10\n\x0e_max_flow_unitB\x12\n\x10_cooling_outflowB\x0e\n\x0c_descriptionB\x08\n\x06_owner\"\xd4\x06\n\x0e\x43oolingOutflow\x12(\n\x06\x64\x65vice\x18\x01 \x01(\x0b\x32\x10.diode.v1.DeviceR\x06\x64\x65vice\x12-\n\x06module\x18\x02 \x01(\x0b\x32\x10.diode.v1.ModuleH\x00R\x06module\x88\x01\x01\x12\x12\n\x04name\x18\x03 \x01(\tR\x04name\x12\x19\n\x05label\x18\x04 \x01(\tH\x01R\x05label\x88\x01\x01\x12N\n\x04type\x18\x05 \x01(\tB5\xfa\x42\x32r0R\x03\x62spR\x07\x63\x61mlockR\x03nptR\x0bproprietaryR\x03qdcR\x03uqdR\x04uqdbH\x02R\x04type\x88\x01\x01\x12\x1f\n\x08\x64iameter\x18\x06 \x01(\x01H\x03R\x08\x64iameter\x88\x01\x01\x12;\n\rdiameter_unit\x18\x07 \x01(\tB\x11\xfa\x42\x0er\x0cR\x02\x63mR\x02inR\x02mmH\x04R\x0c\x64iameterUnit\x88\x01\x01\x12\x43\n\x0e\x63ooling_intake\x18\x08 \x01(\x0b\x32\x17.diode.v1.CoolingIntakeH\x05R\rcoolingIntake\x88\x01\x01\x12%\n\x0b\x64\x65scription\x18\t \x01(\tH\x06R\x0b\x64\x65scription\x88\x01\x01\x12*\n\x05owner\x18\n \x01(\x0b\x32\x0f.diode.v1.OwnerH\x07R\x05owner\x88\x01\x01\x12!\n\x04tags\x18\x0b \x03(\x0b\x32\r.diode.v1.TagR\x04tags\x12O\n\rcustom_fields\x18\x0c \x03(\x0b\x32*.diode.v1.CoolingOutflow.CustomFieldsEntryR\x0c\x63ustomFields\x12\x39\n\x08metadata\x18\r \x01(\x0b\x32\x17.google.protobuf.StructB\x04\x88\xb5\x18\x00R\x08metadata\x1a[\n\x11\x43ustomFieldsEntry\x12\x10\n\x03key\x18\x01 \x01(\tR\x03key\x12\x30\n\x05value\x18\x02 \x01(\x0b\x32\x1a.diode.v1.CustomFieldValueR\x05value:\x02\x38\x01\x42\t\n\x07_moduleB\x08\n\x06_labelB\x07\n\x05_typeB\x0b\n\t_diameterB\x10\n\x0e_diameter_unitB\x11\n\x0f_cooling_intakeB\x0e\n\x0c_descriptionB\x08\n\x06_owner\"\xf8\x06\n\rCoolingSource\x12\"\n\x04site\x18\x01 \x01(\x0b\x32\x0e.diode.v1.SiteR\x04site\x12\x33\n\x08location\x18\x02 \x01(\x0b\x32\x12.diode.v1.LocationH\x00R\x08location\x88\x01\x01\x12\x12\n\x04name\x18\x03 \x01(\tR\x04name\x12I\n\x04type\x18\x04 \x01(\tB5\xfa\x42\x32r0R\x07\x63hillerR\rcooling-towerR\x04\x63racR\x04\x63rahR\ndry-coolerR\x04type\x12\x44\n\x06status\x18\x05 \x01(\tB\'\xfa\x42$r\"R\x06\x61\x63tiveR\x06\x66\x61iledR\x07offlineR\x07plannedH\x01R\x06status\x88\x01\x01\x12W\n\nfluid_type\x18\x06 \x01(\tB3\xfa\x42\x30r.R\ndielectricR\x0brefrigerantR\x05waterR\x0cwater-glycolH\x02R\tfluidType\x88\x01\x01\x12.\n\x10\x63ooling_capacity\x18\x07 \x01(\x01H\x03R\x0f\x63oolingCapacity\x88\x01\x01\x12%\n\x0b\x64\x65scription\x18\x08 \x01(\tH\x04R\x0b\x64\x65scription\x88\x01\x01\x12*\n\x05owner\x18\t \x01(\x0b\x32\x0f.diode.v1.OwnerH\x05R\x05owner\x88\x01\x01\x12\x1f\n\x08\x63omments\x18\n \x01(\tH\x06R\x08\x63omments\x88\x01\x01\x12!\n\x04tags\x18\x0b \x03(\x0b\x32\r.diode.v1.TagR\x04tags\x12N\n\rcustom_fields\x18\x0c \x03(\x0b\x32).diode.v1.CoolingSource.CustomFieldsEntryR\x0c\x63ustomFields\x12\x39\n\x08metadata\x18\r \x01(\x0b\x32\x17.google.protobuf.StructB\x04\x88\xb5\x18\x00R\x08metadata\x1a[\n\x11\x43ustomFieldsEntry\x12\x10\n\x03key\x18\x01 \x01(\tR\x03key\x12\x30\n\x05value\x18\x02 \x01(\x0b\x32\x1a.diode.v1.CustomFieldValueR\x05value:\x02\x38\x01\x42\x0b\n\t_locationB\t\n\x07_statusB\r\n\x0b_fluid_typeB\x13\n\x11_cooling_capacityB\x0e\n\x0c_descriptionB\x08\n\x06_ownerB\x0b\n\t_comments\"\xd4\x04\n\rModuleBayType\x12\x12\n\x04name\x18\x01 \x01(\tR\x04name\x12\x12\n\x04slug\x18\x02 \x01(\tR\x04slug\x12?\n\x0cmanufacturer\x18\x03 \x01(\x0b\x32\x16.diode.v1.ManufacturerH\x00R\x0cmanufacturer\x88\x01\x01\x12\x19\n\x05\x63olor\x18\x04 \x01(\tH\x01R\x05\x63olor\x88\x01\x01\x12%\n\x0b\x64\x65scription\x18\x05 \x01(\tH\x02R\x0b\x64\x65scription\x88\x01\x01\x12*\n\x05owner\x18\x06 \x01(\x0b\x32\x0f.diode.v1.OwnerH\x03R\x05owner\x88\x01\x01\x12\x1f\n\x08\x63omments\x18\x07 \x01(\tH\x04R\x08\x63omments\x88\x01\x01\x12!\n\x04tags\x18\x08 \x03(\x0b\x32\r.diode.v1.TagR\x04tags\x12N\n\rcustom_fields\x18\t \x03(\x0b\x32).diode.v1.ModuleBayType.CustomFieldsEntryR\x0c\x63ustomFields\x12\x39\n\x08metadata\x18\n \x01(\x0b\x32\x17.google.protobuf.StructB\x04\x88\xb5\x18\x00R\x08metadata\x1a[\n\x11\x43ustomFieldsEntry\x12\x10\n\x03key\x18\x01 \x01(\tR\x03key\x12\x30\n\x05value\x18\x02 \x01(\x0b\x32\x1a.diode.v1.CustomFieldValueR\x05value:\x02\x38\x01\x42\x0f\n\r_manufacturerB\x08\n\x06_colorB\x0e\n\x0c_descriptionB\x08\n\x06_ownerB\x0b\n\t_comments2N\n\x0fIngesterService\x12;\n\x06Ingest\x12\x17.diode.v1.IngestRequest\x1a\x18.diode.v1.IngestResponse:J\n\x10netbox_supported\x12\x1d.google.protobuf.FieldOptions\x18\xd1\x86\x03 \x01(\x08R\x0fnetboxSupportedB5Z3github.com/netboxlabs/diode-sdk-go/diode/v1/diodepbb\x06proto3') _globals = globals() _builder.BuildMessageAndEnumDescriptors(DESCRIPTOR, _globals) @@ -69,7 +69,7 @@ _globals['_CABLE'].fields_by_name['metadata']._loaded_options = None _globals['_CABLE'].fields_by_name['metadata']._serialized_options = b'\210\265\030\000' _globals['_CABLE'].fields_by_name['profile']._loaded_options = None - _globals['_CABLE'].fields_by_name['profile']._serialized_options = b'\372B\361\002r\356\002R\022breakout-1c2p-2c1pR\022breakout-1c4p-4c1pR\022breakout-1c6p-6c1pR\032breakout-2c4p-8c1p-shuffleR\014single-1c12pR\014single-1c16pR\013single-1c1pR\013single-1c2pR\013single-1c4pR\013single-1c6pR\013single-1c8pR\013trunk-2c12pR\ntrunk-2c1pR\ntrunk-2c2pR\ntrunk-2c4pR\022trunk-2c4p-shuffleR\ntrunk-2c6pR\ntrunk-2c8pR\ntrunk-4c1pR\ntrunk-4c2pR\ntrunk-4c4pR\022trunk-4c4p-shuffleR\ntrunk-4c6pR\ntrunk-4c8pR\ntrunk-8c4p' + _globals['_CABLE'].fields_by_name['profile']._serialized_options = b'\372B\205\003r\202\003R\022breakout-1c2p-2c1pR\022breakout-1c4p-4c1pR\022breakout-1c6p-6c1pR\022breakout-1c8p-8c1pR\032breakout-2c4p-8c1p-shuffleR\014single-1c12pR\014single-1c16pR\013single-1c1pR\013single-1c2pR\013single-1c4pR\013single-1c6pR\013single-1c8pR\013trunk-2c12pR\ntrunk-2c1pR\ntrunk-2c2pR\ntrunk-2c4pR\022trunk-2c4p-shuffleR\ntrunk-2c6pR\ntrunk-2c8pR\ntrunk-4c1pR\ntrunk-4c2pR\ntrunk-4c4pR\022trunk-4c4p-shuffleR\ntrunk-4c6pR\ntrunk-4c8pR\ntrunk-8c4p' _globals['_CABLEPATH'].fields_by_name['metadata']._loaded_options = None _globals['_CABLEPATH'].fields_by_name['metadata']._serialized_options = b'\210\265\030\000' _globals['_CABLETERMINATION'].fields_by_name['cable_end']._loaded_options = None @@ -168,6 +168,8 @@ _globals['_DEVICE'].fields_by_name['metadata']._serialized_options = b'\210\265\030\000' _globals['_DEVICE'].fields_by_name['config']._loaded_options = None _globals['_DEVICE'].fields_by_name['config']._serialized_options = b'\210\265\030\000' + _globals['_DEVICE'].fields_by_name['cooling_method']._loaded_options = None + _globals['_DEVICE'].fields_by_name['cooling_method']._serialized_options = b'\372B\"r R\003airR\006hybridR\timmersionR\006liquid' _globals['_DEVICEBAY_CUSTOMFIELDSENTRY']._loaded_options = None _globals['_DEVICEBAY_CUSTOMFIELDSENTRY']._serialized_options = b'8\001' _globals['_DEVICEBAY'].fields_by_name['metadata']._loaded_options = None @@ -186,6 +188,8 @@ _globals['_DEVICETYPE'].fields_by_name['weight_unit']._serialized_options = b'\372B\021r\017R\001gR\002kgR\002lbR\002oz' _globals['_DEVICETYPE'].fields_by_name['metadata']._loaded_options = None _globals['_DEVICETYPE'].fields_by_name['metadata']._serialized_options = b'\210\265\030\000' + _globals['_DEVICETYPE'].fields_by_name['cooling_method']._loaded_options = None + _globals['_DEVICETYPE'].fields_by_name['cooling_method']._serialized_options = b'\372B\"r R\003airR\006hybridR\timmersionR\006liquid' _globals['_FHRPGROUP_CUSTOMFIELDSENTRY']._loaded_options = None _globals['_FHRPGROUP_CUSTOMFIELDSENTRY']._serialized_options = b'8\001' _globals['_FHRPGROUP'].fields_by_name['protocol']._loaded_options = None @@ -201,7 +205,7 @@ _globals['_FRONTPORT_CUSTOMFIELDSENTRY']._loaded_options = None _globals['_FRONTPORT_CUSTOMFIELDSENTRY']._serialized_options = b'8\001' _globals['_FRONTPORT'].fields_by_name['type']._loaded_options = None - _globals['_FRONTPORT'].fields_by_name['type']._serialized_options = b'\372B\253\003r\250\003R\t110-punchR\0044p2cR\0044p4cR\0046p2cR\0046p4cR\0046p6cR\0048p2cR\0048p4cR\0048p6cR\0048p8cR\003bncR\002csR\001fR\002fcR\006fc-apcR\005fc-pcR\006fc-upcR\004gg45R\002lcR\006lc-apcR\005lc-pcR\006lc-upcR\003lshR\007lsh-apcR\006lsh-pcR\007lsh-upcR\003lx5R\007lx5-apcR\006lx5-pcR\007lx5-upcR\003mpoR\005mrj21R\004mtrjR\001nR\005otherR\002scR\006sc-apcR\005sc-pcR\006sc-upcR\007sma-905R\007sma-906R\002snR\006spliceR\002stR\007tera-1pR\007tera-2pR\007tera-4pR\006urm-p2R\006urm-p4R\006urm-p8R\005usb-aR\005usb-bR\005usb-cR\013usb-micro-aR\014usb-micro-abR\013usb-micro-bR\nusb-mini-aR\nusb-mini-b' + _globals['_FRONTPORT'].fields_by_name['type']._serialized_options = b'\372B\313\003r\310\003R\t110-punchR\0044p2cR\0044p4cR\0046p2cR\0046p4cR\0046p6cR\0048p2cR\0048p4cR\0048p6cR\0048p8cR\003bncR\002csR\001fR\002fcR\006fc-apcR\005fc-pcR\006fc-upcR\004gg45R\002lcR\006lc-apcR\005lc-pcR\006lc-upcR\003lshR\007lsh-apcR\006lsh-pcR\007lsh-upcR\003lx5R\007lx5-apcR\006lx5-pcR\007lx5-upcR\003mdcR\003mpoR\005mrj21R\004mtrjR\002muR\006mu-apcR\005mu-pcR\006mu-upcR\001nR\005otherR\002scR\006sc-apcR\005sc-pcR\006sc-upcR\007sma-905R\007sma-906R\002snR\006spliceR\002stR\007tera-1pR\007tera-2pR\007tera-4pR\006urm-p2R\006urm-p4R\006urm-p8R\005usb-aR\005usb-bR\005usb-cR\013usb-micro-aR\014usb-micro-abR\013usb-micro-bR\nusb-mini-aR\nusb-mini-b' _globals['_FRONTPORT'].fields_by_name['rear_port']._loaded_options = None _globals['_FRONTPORT'].fields_by_name['rear_port']._serialized_options = b'\030\001' _globals['_FRONTPORT'].fields_by_name['rear_port_position']._loaded_options = None @@ -267,7 +271,7 @@ _globals['_INTERFACE_CUSTOMFIELDSENTRY']._loaded_options = None _globals['_INTERFACE_CUSTOMFIELDSENTRY']._serialized_options = b'8\001' _globals['_INTERFACE'].fields_by_name['type']._loaded_options = None - _globals['_INTERFACE'].fields_by_name['type']._serialized_options = b'\372B\265\027r\262\027R\0141.6tbase-cr8R\0141.6tbase-dr8R\0161.6tbase-dr8-2R\0141.6tbase-kr8R\0231.6tbase-x-osfp1600R\0271.6tbase-x-osfp1600-rhsR\0251.6tbase-x-qsfpdd1600R\0171000base-bx10-dR\0171000base-bx10-uR\r1000base-cwdmR\0131000base-cxR\r1000base-dwdmR\0131000base-exR\0131000base-kxR\0141000base-lsxR\0131000base-lxR\r1000base-lx10R\0131000base-sxR\n1000base-tR\0131000base-txR\0171000base-x-gbicR\0161000base-x-sfpR\0131000base-zxR\n100base-fxR\013100base-lfxR\n100base-t1R\n100base-txR\r100base-x-sfpR\014100gbase-cr1R\r100gbase-cr10R\014100gbase-cr2R\014100gbase-cr4R\016100gbase-cwdm4R\013100gbase-drR\014100gbase-er4R\014100gbase-fr1R\014100gbase-kp4R\014100gbase-kr2R\014100gbase-kr4R\014100gbase-lr1R\014100gbase-lr4R\014100gbase-sr1R\016100gbase-sr1.2R\r100gbase-sr10R\014100gbase-sr2R\014100gbase-sr4R\016100gbase-x-cfpR\017100gbase-x-cfp2R\017100gbase-x-cfp4R\017100gbase-x-cpakR\016100gbase-x-cxpR\017100gbase-x-dsfpR\021100gbase-x-qsfp28R\021100gbase-x-qsfpddR\020100gbase-x-sfpddR\013100gbase-zrR\01010g-eponR\01410gbase-br-dR\01410gbase-br-uR\n10gbase-cuR\01310gbase-cx4R\n10gbase-erR\n10gbase-krR\01310gbase-kx4R\n10gbase-lrR\01310gbase-lrmR\01310gbase-lx4R\n10gbase-srR\t10gbase-tR\01610gbase-x-sfppR\01410gbase-x-x2R\02010gbase-x-xenpakR\r10gbase-x-xfpR\n10gbase-zrR\r128gfc-qsfp28R\n16gfc-sfppR\0101gfc-sfpR\0132.5gbase-kxR\n2.5gbase-tR\0162.5gbase-x-sfpR\014200gbase-cr2R\014200gbase-cr4R\014200gbase-dr4R\014200gbase-er4R\014200gbase-fr4R\014200gbase-lr4R\014200gbase-sr2R\014200gbase-sr4R\014200gbase-vr2R\017200gbase-x-cfp2R\021200gbase-x-qsfp56R\021200gbase-x-qsfpddR\00725g-ponR\n25gbase-crR\n25gbase-erR\n25gbase-krR\n25gbase-lrR\n25gbase-srR\t25gbase-tR\01725gbase-x-sfp28R\0102gfc-sfpR\01332gfc-sfp28R\n32gfc-sfppR\014400gbase-cr4R\014400gbase-dr4R\014400gbase-er8R\014400gbase-fr4R\014400gbase-fr8R\014400gbase-lr4R\014400gbase-lr8R\r400gbase-sr16R\014400gbase-sr4R\016400gbase-sr4_2R\014400gbase-sr8R\014400gbase-vr4R\017400gbase-x-cdfpR\017400gbase-x-cfp2R\017400gbase-x-cfp8R\017400gbase-x-osfpR\023400gbase-x-osfp-rhsR\022400gbase-x-qsfp112R\021400gbase-x-qsfpddR\013400gbase-zrR\01340gbase-cr4R\01340gbase-er4R\01340gbase-fr4R\01340gbase-kr4R\01340gbase-lr4R\01340gbase-sr4R\01640gbase-sr4-bdR\01740gbase-x-qsfppR\0024gR\0104gfc-sfpR\00750g-ponR\n50gbase-crR\n50gbase-erR\n50gbase-frR\n50gbase-krR\n50gbase-lrR\n50gbase-srR\01750gbase-x-sfp28R\01750gbase-x-sfp56R\0025gR\t5gbase-krR\0105gbase-tR\01364gfc-qsfppR\01364gfc-sfpddR\n64gfc-sfppR\014800gbase-cr8R\014800gbase-dr8R\014800gbase-sr8R\014800gbase-vr8R\017800gbase-x-osfpR\021800gbase-x-qsfpddR\t8gfc-sfppR\004bponR\006bridgeR\004cdmaR\017cisco-flexstackR\024cisco-flexstack-plusR\017cisco-stackwiseR\023cisco-stackwise-160R\022cisco-stackwise-1tR\023cisco-stackwise-320R\023cisco-stackwise-480R\022cisco-stackwise-80R\024cisco-stackwise-plusR\006docsisR\002e1R\002e3R\004eponR\023extreme-summitstackR\027extreme-summitstack-128R\027extreme-summitstack-256R\027extreme-summitstack-512R\004gponR\003gsmR\013ieee802.11aR\014ieee802.11acR\014ieee802.11adR\014ieee802.11axR\014ieee802.11ayR\014ieee802.11beR\013ieee802.11gR\013ieee802.11nR\014ieee802.15.1R\014ieee802.15.4R\016infiniband-ddrR\016infiniband-edrR\016infiniband-fdrR\020infiniband-fdr10R\016infiniband-hdrR\016infiniband-ndrR\016infiniband-qdrR\016infiniband-sdrR\016infiniband-xdrR\013juniper-vcpR\003lagR\003lteR\004mocaR\007ng-pon2R\005otherR\016other-wirelessR\nsonet-oc12R\013sonet-oc192R\014sonet-oc1920R\tsonet-oc3R\014sonet-oc3840R\nsonet-oc48R\013sonet-oc768R\002t1R\002t3R\007virtualR\004xdslR\006xg-ponR\007xgs-pon' + _globals['_INTERFACE'].fields_by_name['type']._serialized_options = b'\372B\235\031r\232\031R\0141.6tbase-cr8R\0141.6tbase-dr8R\0161.6tbase-dr8-2R\0141.6tbase-kr8R\0231.6tbase-x-osfp1600R\0271.6tbase-x-osfp1600-rhsR\0251.6tbase-x-qsfpdd1600R\0171000base-bx10-dR\0171000base-bx10-uR\r1000base-cwdmR\0131000base-cxR\r1000base-dwdmR\0131000base-exR\0131000base-kxR\0141000base-lsxR\0131000base-lxR\r1000base-lx10R\0131000base-sxR\n1000base-tR\0131000base-txR\0171000base-x-gbicR\0161000base-x-sfpR\0131000base-zxR\n100base-fxR\013100base-lfxR\n100base-t1R\n100base-txR\r100base-x-sfpR\014100gbase-cr1R\r100gbase-cr10R\014100gbase-cr2R\014100gbase-cr4R\016100gbase-cwdm4R\013100gbase-drR\014100gbase-er4R\014100gbase-fr1R\014100gbase-kp4R\014100gbase-kr2R\014100gbase-kr4R\014100gbase-lr1R\014100gbase-lr4R\014100gbase-sr1R\016100gbase-sr1.2R\r100gbase-sr10R\014100gbase-sr2R\014100gbase-sr4R\016100gbase-x-cfpR\017100gbase-x-cfp2R\017100gbase-x-cfp4R\017100gbase-x-cpakR\016100gbase-x-cxpR\017100gbase-x-dsfpR\021100gbase-x-qsfp28R\021100gbase-x-qsfpddR\021100gbase-x-sfp112R\020100gbase-x-sfpddR\013100gbase-zrR\01010g-eponR\01410gbase-br-dR\01410gbase-br-uR\n10gbase-cuR\01310gbase-cx4R\n10gbase-erR\n10gbase-krR\01310gbase-kx4R\n10gbase-lrR\01310gbase-lrmR\01310gbase-lx4R\n10gbase-srR\t10gbase-tR\01610gbase-x-sfppR\01410gbase-x-x2R\02010gbase-x-xenpakR\r10gbase-x-xfpR\n10gbase-zrR\r128gfc-qsfp28R\n16gfc-sfppR\0101gfc-sfpR\0132.5gbase-kxR\n2.5gbase-tR\0162.5gbase-x-sfpR\014200gbase-cr2R\014200gbase-cr4R\014200gbase-dr4R\014200gbase-er4R\014200gbase-fr4R\014200gbase-lr4R\014200gbase-sr2R\014200gbase-sr4R\014200gbase-vr2R\017200gbase-x-cfp2R\021200gbase-x-qsfp56R\021200gbase-x-qsfpddR\00725g-ponR\n25gbase-crR\n25gbase-erR\n25gbase-krR\n25gbase-lrR\n25gbase-srR\t25gbase-tR\01725gbase-x-sfp28R\0102gfc-sfpR\01332gfc-sfp28R\n32gfc-sfppR\014400gbase-cr4R\014400gbase-dr4R\014400gbase-er8R\014400gbase-fr4R\014400gbase-fr8R\014400gbase-lr4R\014400gbase-lr8R\r400gbase-sr16R\014400gbase-sr4R\016400gbase-sr4_2R\014400gbase-sr8R\014400gbase-vr4R\017400gbase-x-cdfpR\017400gbase-x-cfp2R\017400gbase-x-cfp8R\017400gbase-x-osfpR\023400gbase-x-osfp-rhsR\022400gbase-x-qsfp112R\021400gbase-x-qsfpddR\013400gbase-zrR\01340gbase-cr4R\01340gbase-er4R\01340gbase-fr4R\01340gbase-kr4R\01340gbase-lr4R\01340gbase-sr4R\01640gbase-sr4-bdR\01740gbase-x-qsfppR\0024gR\0104gfc-sfpR\00750g-ponR\n50gbase-crR\n50gbase-erR\n50gbase-frR\n50gbase-krR\n50gbase-lrR\n50gbase-srR\01750gbase-x-sfp28R\01750gbase-x-sfp56R\0025gR\t5gbase-krR\0105gbase-tR\01364gfc-qsfppR\01364gfc-sfpddR\n64gfc-sfppR\014800gbase-cr8R\014800gbase-dr8R\014800gbase-sr8R\014800gbase-vr8R\017800gbase-x-osfpR\021800gbase-x-qsfpddR\t8gfc-sfppR\004bponR\006bridgeR\004cdmaR\007channelR\017cisco-flexstackR\024cisco-flexstack-plusR\017cisco-stackwiseR\023cisco-stackwise-160R\022cisco-stackwise-1tR\023cisco-stackwise-320R\023cisco-stackwise-480R\022cisco-stackwise-80R\024cisco-stackwise-plusR\006docsisR\002e1R\002e3R\004eponR\023extreme-summitstackR\027extreme-summitstack-128R\027extreme-summitstack-256R\027extreme-summitstack-512R\004gponR\003gsmR\035hpe-synergy-interconnect-linkR\013ieee802.11aR\014ieee802.11acR\014ieee802.11adR\014ieee802.11axR\014ieee802.11ayR\014ieee802.11beR\013ieee802.11gR\013ieee802.11nR\014ieee802.15.1R\014ieee802.15.4R\016infiniband-ddrR\021infiniband-ddr-4xR\016infiniband-edrR\021infiniband-edr-4xR\016infiniband-fdrR\021infiniband-fdr-4xR\020infiniband-fdr10R\023infiniband-fdr10-4xR\016infiniband-hdrR\021infiniband-hdr-4xR\016infiniband-ndrR\021infiniband-ndr-4xR\016infiniband-qdrR\021infiniband-qdr-4xR\016infiniband-sdrR\021infiniband-sdr-4xR\016infiniband-xdrR\021infiniband-xdr-4xR\013juniper-vcpR\003lagR\003lteR\004mocaR\007ng-pon2R\005otherR\016other-wirelessR\nsonet-oc12R\013sonet-oc192R\014sonet-oc1920R\tsonet-oc3R\014sonet-oc3840R\nsonet-oc48R\013sonet-oc768R\002t1R\002t3R\007virtualR\004xdslR\006xg-ponR\007xgs-pon' _globals['_INTERFACE'].fields_by_name['duplex']._loaded_options = None _globals['_INTERFACE'].fields_by_name['duplex']._serialized_options = b'\372B\024r\022R\004autoR\004fullR\004half' _globals['_INTERFACE'].fields_by_name['mode']._loaded_options = None @@ -338,6 +342,8 @@ _globals['_MODULETYPE'].fields_by_name['weight_unit']._serialized_options = b'\372B\021r\017R\001gR\002kgR\002lbR\002oz' _globals['_MODULETYPE'].fields_by_name['metadata']._loaded_options = None _globals['_MODULETYPE'].fields_by_name['metadata']._serialized_options = b'\210\265\030\000' + _globals['_MODULETYPE'].fields_by_name['cooling_method']._loaded_options = None + _globals['_MODULETYPE'].fields_by_name['cooling_method']._serialized_options = b'\372B\"r R\003airR\006hybridR\timmersionR\006liquid' _globals['_PLATFORM_CUSTOMFIELDSENTRY']._loaded_options = None _globals['_PLATFORM_CUSTOMFIELDSENTRY']._serialized_options = b'8\001' _globals['_PLATFORM'].fields_by_name['metadata']._loaded_options = None @@ -412,6 +418,8 @@ _globals['_RACK'].fields_by_name['airflow']._serialized_options = b'\372B r\036R\rfront-to-rearR\rrear-to-front' _globals['_RACK'].fields_by_name['metadata']._loaded_options = None _globals['_RACK'].fields_by_name['metadata']._serialized_options = b'\210\265\030\000' + _globals['_RACK'].fields_by_name['cooling_capability']._loaded_options = None + _globals['_RACK'].fields_by_name['cooling_capability']._serialized_options = b'\372B!r\037R\010air-onlyR\006hybridR\013liquid-only' _globals['_RACKRESERVATION_CUSTOMFIELDSENTRY']._loaded_options = None _globals['_RACKRESERVATION_CUSTOMFIELDSENTRY']._serialized_options = b'8\001' _globals['_RACKRESERVATION'].fields_by_name['status']._loaded_options = None @@ -434,10 +442,12 @@ _globals['_RACKTYPE'].fields_by_name['weight_unit']._serialized_options = b'\372B\021r\017R\001gR\002kgR\002lbR\002oz' _globals['_RACKTYPE'].fields_by_name['metadata']._loaded_options = None _globals['_RACKTYPE'].fields_by_name['metadata']._serialized_options = b'\210\265\030\000' + _globals['_RACKTYPE'].fields_by_name['cooling_capability']._loaded_options = None + _globals['_RACKTYPE'].fields_by_name['cooling_capability']._serialized_options = b'\372B!r\037R\010air-onlyR\006hybridR\013liquid-only' _globals['_REARPORT_CUSTOMFIELDSENTRY']._loaded_options = None _globals['_REARPORT_CUSTOMFIELDSENTRY']._serialized_options = b'8\001' _globals['_REARPORT'].fields_by_name['type']._loaded_options = None - _globals['_REARPORT'].fields_by_name['type']._serialized_options = b'\372B\253\003r\250\003R\t110-punchR\0044p2cR\0044p4cR\0046p2cR\0046p4cR\0046p6cR\0048p2cR\0048p4cR\0048p6cR\0048p8cR\003bncR\002csR\001fR\002fcR\006fc-apcR\005fc-pcR\006fc-upcR\004gg45R\002lcR\006lc-apcR\005lc-pcR\006lc-upcR\003lshR\007lsh-apcR\006lsh-pcR\007lsh-upcR\003lx5R\007lx5-apcR\006lx5-pcR\007lx5-upcR\003mpoR\005mrj21R\004mtrjR\001nR\005otherR\002scR\006sc-apcR\005sc-pcR\006sc-upcR\007sma-905R\007sma-906R\002snR\006spliceR\002stR\007tera-1pR\007tera-2pR\007tera-4pR\006urm-p2R\006urm-p4R\006urm-p8R\005usb-aR\005usb-bR\005usb-cR\013usb-micro-aR\014usb-micro-abR\013usb-micro-bR\nusb-mini-aR\nusb-mini-b' + _globals['_REARPORT'].fields_by_name['type']._serialized_options = b'\372B\313\003r\310\003R\t110-punchR\0044p2cR\0044p4cR\0046p2cR\0046p4cR\0046p6cR\0048p2cR\0048p4cR\0048p6cR\0048p8cR\003bncR\002csR\001fR\002fcR\006fc-apcR\005fc-pcR\006fc-upcR\004gg45R\002lcR\006lc-apcR\005lc-pcR\006lc-upcR\003lshR\007lsh-apcR\006lsh-pcR\007lsh-upcR\003lx5R\007lx5-apcR\006lx5-pcR\007lx5-upcR\003mdcR\003mpoR\005mrj21R\004mtrjR\002muR\006mu-apcR\005mu-pcR\006mu-upcR\001nR\005otherR\002scR\006sc-apcR\005sc-pcR\006sc-upcR\007sma-905R\007sma-906R\002snR\006spliceR\002stR\007tera-1pR\007tera-2pR\007tera-4pR\006urm-p2R\006urm-p4R\006urm-p8R\005usb-aR\005usb-bR\005usb-cR\013usb-micro-aR\014usb-micro-abR\013usb-micro-bR\nusb-mini-aR\nusb-mini-b' _globals['_REARPORT'].fields_by_name['metadata']._loaded_options = None _globals['_REARPORT'].fields_by_name['metadata']._serialized_options = b'\210\265\030\000' _globals['_REGION_CUSTOMFIELDSENTRY']._loaded_options = None @@ -473,7 +483,7 @@ _globals['_SITEGROUP'].fields_by_name['metadata']._loaded_options = None _globals['_SITEGROUP'].fields_by_name['metadata']._serialized_options = b'\210\265\030\000' _globals['_TAG'].fields_by_name['object_types']._loaded_options = None - _globals['_TAG'].fields_by_name['object_types']._serialized_options = b'\372B\277\r\222\001\273\r\"\270\rr\265\rR\020circuits.circuitR\025circuits.circuitgroupR\037circuits.circuitgroupassignmentR\033circuits.circuitterminationR\024circuits.circuittypeR\021circuits.providerR\030circuits.provideraccountR\030circuits.providernetworkR\027circuits.virtualcircuitR\"circuits.virtualcircuitterminationR\033circuits.virtualcircuittypeR\ndcim.cableR\020dcim.cablebundleR\020dcim.consoleportR\026dcim.consoleserverportR\013dcim.deviceR\016dcim.devicebayR\017dcim.deviceroleR\017dcim.devicetypeR\016dcim.frontportR\016dcim.interfaceR\022dcim.inventoryitemR\026dcim.inventoryitemroleR\rdcim.locationR\017dcim.macaddressR\021dcim.manufacturerR\013dcim.moduleR\016dcim.modulebayR\017dcim.moduletypeR\026dcim.moduletypeprofileR\rdcim.platformR\016dcim.powerfeedR\020dcim.poweroutletR\017dcim.powerpanelR\016dcim.powerportR\tdcim.rackR\016dcim.rackgroupR\024dcim.rackreservationR\rdcim.rackroleR\rdcim.racktypeR\rdcim.rearportR\013dcim.regionR\tdcim.siteR\016dcim.sitegroupR\023dcim.virtualchassisR\031dcim.virtualdevicecontextR\023extras.journalentryR\016ipam.aggregateR\010ipam.asnR\ripam.asnrangeR\016ipam.fhrpgroupR\016ipam.ipaddressR\014ipam.iprangeR\013ipam.prefixR\010ipam.rirR\tipam.roleR\020ipam.routetargetR\014ipam.serviceR\tipam.vlanR\016ipam.vlangroupR\032ipam.vlantranslationpolicyR\030ipam.vlantranslationruleR\010ipam.vrfR\017tenancy.contactR\031tenancy.contactassignmentR\024tenancy.contactgroupR\023tenancy.contactroleR\016tenancy.tenantR\023tenancy.tenantgroupR\026virtualization.clusterR\033virtualization.clustergroupR\032virtualization.clustertypeR\032virtualization.virtualdiskR\035virtualization.virtualmachineR!virtualization.virtualmachinetypeR\032virtualization.vminterfaceR\rvpn.ikepolicyR\017vpn.ikeproposalR\017vpn.ipsecpolicyR\020vpn.ipsecprofileR\021vpn.ipsecproposalR\tvpn.l2vpnR\024vpn.l2vpnterminationR\nvpn.tunnelR\017vpn.tunnelgroupR\025vpn.tunnelterminationR\024wireless.wirelesslanR\031wireless.wirelesslangroupR\025wireless.wirelesslink' + _globals['_TAG'].fields_by_name['object_types']._serialized_options = b'\372B\242\016\222\001\236\016\"\233\016r\230\016R\020circuits.circuitR\025circuits.circuitgroupR\037circuits.circuitgroupassignmentR\033circuits.circuitterminationR\024circuits.circuittypeR\021circuits.providerR\030circuits.provideraccountR\030circuits.providernetworkR\027circuits.virtualcircuitR\"circuits.virtualcircuitterminationR\033circuits.virtualcircuittypeR\ndcim.cableR\020dcim.cablebundleR\020dcim.consoleportR\026dcim.consoleserverportR\020dcim.coolingfeedR\022dcim.coolingintakeR\023dcim.coolingoutflowR\022dcim.coolingsourceR\013dcim.deviceR\016dcim.devicebayR\017dcim.deviceroleR\017dcim.devicetypeR\016dcim.frontportR\016dcim.interfaceR\022dcim.inventoryitemR\026dcim.inventoryitemroleR\rdcim.locationR\017dcim.macaddressR\021dcim.manufacturerR\013dcim.moduleR\016dcim.modulebayR\022dcim.modulebaytypeR\017dcim.moduletypeR\026dcim.moduletypeprofileR\rdcim.platformR\016dcim.powerfeedR\020dcim.poweroutletR\017dcim.powerpanelR\016dcim.powerportR\tdcim.rackR\016dcim.rackgroupR\024dcim.rackreservationR\rdcim.rackroleR\rdcim.racktypeR\rdcim.rearportR\013dcim.regionR\tdcim.siteR\016dcim.sitegroupR\023dcim.virtualchassisR\031dcim.virtualdevicecontextR\023extras.journalentryR\016ipam.aggregateR\010ipam.asnR\ripam.asnrangeR\016ipam.fhrpgroupR\016ipam.ipaddressR\014ipam.iprangeR\013ipam.prefixR\010ipam.rirR\tipam.roleR\020ipam.routetargetR\014ipam.serviceR\tipam.vlanR\016ipam.vlangroupR\032ipam.vlantranslationpolicyR\030ipam.vlantranslationruleR\010ipam.vrfR\017tenancy.contactR\031tenancy.contactassignmentR\024tenancy.contactgroupR\023tenancy.contactroleR\016tenancy.tenantR\023tenancy.tenantgroupR\026virtualization.clusterR\033virtualization.clustergroupR\032virtualization.clustertypeR\032virtualization.virtualdiskR\035virtualization.virtualmachineR!virtualization.virtualmachinetypeR\032virtualization.vminterfaceR\rvpn.ikepolicyR\017vpn.ikeproposalR\017vpn.ipsecpolicyR\020vpn.ipsecprofileR\021vpn.ipsecproposalR\tvpn.l2vpnR\024vpn.l2vpnterminationR\nvpn.tunnelR\017vpn.tunnelgroupR\025vpn.tunnelterminationR\024wireless.wirelesslanR\031wireless.wirelesslangroupR\025wireless.wirelesslink' _globals['_TAG'].fields_by_name['metadata']._loaded_options = None _globals['_TAG'].fields_by_name['metadata']._serialized_options = b'\210\265\030\000' _globals['_TENANT_CUSTOMFIELDSENTRY']._loaded_options = None @@ -597,7 +607,7 @@ _globals['_CUSTOMFIELD'].fields_by_name['type']._loaded_options = None _globals['_CUSTOMFIELD'].fields_by_name['type']._serialized_options = b'\372BrrpR\007booleanR\004dateR\010datetimeR\007decimalR\007integerR\004jsonR\010longtextR\013multiobjectR\013multiselectR\006objectR\006selectR\004textR\003url' _globals['_CUSTOMFIELD'].fields_by_name['related_object_type']._loaded_options = None - _globals['_CUSTOMFIELD'].fields_by_name['related_object_type']._serialized_options = b'\372B\357\016r\354\016R\020circuits.circuitR\025circuits.circuitgroupR\037circuits.circuitgroupassignmentR\033circuits.circuitterminationR\024circuits.circuittypeR\021circuits.providerR\030circuits.provideraccountR\030circuits.providernetworkR\027circuits.virtualcircuitR\"circuits.virtualcircuitterminationR\033circuits.virtualcircuittypeR\020core.managedfileR\ndcim.cableR\020dcim.cablebundleR\016dcim.cablepathR\020dcim.consoleportR\026dcim.consoleserverportR\013dcim.deviceR\016dcim.devicebayR\017dcim.deviceroleR\017dcim.devicetypeR\016dcim.frontportR\016dcim.interfaceR\022dcim.inventoryitemR\026dcim.inventoryitemroleR\rdcim.locationR\017dcim.macaddressR\021dcim.manufacturerR\013dcim.moduleR\016dcim.modulebayR\017dcim.moduletypeR\026dcim.moduletypeprofileR\rdcim.platformR\016dcim.powerfeedR\020dcim.poweroutletR\017dcim.powerpanelR\016dcim.powerportR\tdcim.rackR\016dcim.rackgroupR\024dcim.rackreservationR\rdcim.rackroleR\rdcim.racktypeR\rdcim.rearportR\013dcim.regionR\tdcim.siteR\016dcim.sitegroupR\023dcim.virtualchassisR\031dcim.virtualdevicecontextR\022extras.customfieldR\033extras.customfieldchoicesetR\021extras.customlinkR\023extras.journalentryR\nextras.tagR\016ipam.aggregateR\010ipam.asnR\ripam.asnrangeR\016ipam.fhrpgroupR\030ipam.fhrpgroupassignmentR\016ipam.ipaddressR\014ipam.iprangeR\013ipam.prefixR\010ipam.rirR\tipam.roleR\020ipam.routetargetR\014ipam.serviceR\tipam.vlanR\016ipam.vlangroupR\032ipam.vlantranslationpolicyR\030ipam.vlantranslationruleR\010ipam.vrfR\017tenancy.contactR\031tenancy.contactassignmentR\024tenancy.contactgroupR\023tenancy.contactroleR\016tenancy.tenantR\023tenancy.tenantgroupR\013users.ownerR\020users.ownergroupR\nusers.userR\026virtualization.clusterR\033virtualization.clustergroupR\032virtualization.clustertypeR\032virtualization.virtualdiskR\035virtualization.virtualmachineR!virtualization.virtualmachinetypeR\032virtualization.vminterfaceR\rvpn.ikepolicyR\017vpn.ikeproposalR\017vpn.ipsecpolicyR\020vpn.ipsecprofileR\021vpn.ipsecproposalR\tvpn.l2vpnR\024vpn.l2vpnterminationR\nvpn.tunnelR\017vpn.tunnelgroupR\025vpn.tunnelterminationR\024wireless.wirelesslanR\031wireless.wirelesslangroupR\025wireless.wirelesslink' + _globals['_CUSTOMFIELD'].fields_by_name['related_object_type']._serialized_options = b'\372B\322\017r\317\017R\020circuits.circuitR\025circuits.circuitgroupR\037circuits.circuitgroupassignmentR\033circuits.circuitterminationR\024circuits.circuittypeR\021circuits.providerR\030circuits.provideraccountR\030circuits.providernetworkR\027circuits.virtualcircuitR\"circuits.virtualcircuitterminationR\033circuits.virtualcircuittypeR\020core.managedfileR\ndcim.cableR\020dcim.cablebundleR\016dcim.cablepathR\020dcim.consoleportR\026dcim.consoleserverportR\020dcim.coolingfeedR\022dcim.coolingintakeR\023dcim.coolingoutflowR\022dcim.coolingsourceR\013dcim.deviceR\016dcim.devicebayR\017dcim.deviceroleR\017dcim.devicetypeR\016dcim.frontportR\016dcim.interfaceR\022dcim.inventoryitemR\026dcim.inventoryitemroleR\rdcim.locationR\017dcim.macaddressR\021dcim.manufacturerR\013dcim.moduleR\016dcim.modulebayR\022dcim.modulebaytypeR\017dcim.moduletypeR\026dcim.moduletypeprofileR\rdcim.platformR\016dcim.powerfeedR\020dcim.poweroutletR\017dcim.powerpanelR\016dcim.powerportR\tdcim.rackR\016dcim.rackgroupR\024dcim.rackreservationR\rdcim.rackroleR\rdcim.racktypeR\rdcim.rearportR\013dcim.regionR\tdcim.siteR\016dcim.sitegroupR\023dcim.virtualchassisR\031dcim.virtualdevicecontextR\022extras.customfieldR\033extras.customfieldchoicesetR\021extras.customlinkR\023extras.journalentryR\nextras.tagR\016ipam.aggregateR\010ipam.asnR\ripam.asnrangeR\016ipam.fhrpgroupR\030ipam.fhrpgroupassignmentR\016ipam.ipaddressR\014ipam.iprangeR\013ipam.prefixR\010ipam.rirR\tipam.roleR\020ipam.routetargetR\014ipam.serviceR\tipam.vlanR\016ipam.vlangroupR\032ipam.vlantranslationpolicyR\030ipam.vlantranslationruleR\010ipam.vrfR\017tenancy.contactR\031tenancy.contactassignmentR\024tenancy.contactgroupR\023tenancy.contactroleR\016tenancy.tenantR\023tenancy.tenantgroupR\013users.ownerR\020users.ownergroupR\nusers.userR\026virtualization.clusterR\033virtualization.clustergroupR\032virtualization.clustertypeR\032virtualization.virtualdiskR\035virtualization.virtualmachineR!virtualization.virtualmachinetypeR\032virtualization.vminterfaceR\rvpn.ikepolicyR\017vpn.ikeproposalR\017vpn.ipsecpolicyR\020vpn.ipsecprofileR\021vpn.ipsecproposalR\tvpn.l2vpnR\024vpn.l2vpnterminationR\nvpn.tunnelR\017vpn.tunnelgroupR\025vpn.tunnelterminationR\024wireless.wirelesslanR\031wireless.wirelesslangroupR\025wireless.wirelesslink' _globals['_CUSTOMFIELD'].fields_by_name['filter_logic']._loaded_options = None _globals['_CUSTOMFIELD'].fields_by_name['filter_logic']._serialized_options = b'\372B\032r\030R\010disabledR\005exactR\005loose' _globals['_CUSTOMFIELD'].fields_by_name['ui_visible']._loaded_options = None @@ -605,7 +615,7 @@ _globals['_CUSTOMFIELD'].fields_by_name['ui_editable']._loaded_options = None _globals['_CUSTOMFIELD'].fields_by_name['ui_editable']._serialized_options = b'\372B\023r\021R\006hiddenR\002noR\003yes' _globals['_CUSTOMFIELD'].fields_by_name['object_types']._loaded_options = None - _globals['_CUSTOMFIELD'].fields_by_name['object_types']._serialized_options = b'\372B\277\r\222\001\273\r\"\270\rr\265\rR\020circuits.circuitR\025circuits.circuitgroupR\037circuits.circuitgroupassignmentR\033circuits.circuitterminationR\024circuits.circuittypeR\021circuits.providerR\030circuits.provideraccountR\030circuits.providernetworkR\027circuits.virtualcircuitR\"circuits.virtualcircuitterminationR\033circuits.virtualcircuittypeR\ndcim.cableR\020dcim.cablebundleR\020dcim.consoleportR\026dcim.consoleserverportR\013dcim.deviceR\016dcim.devicebayR\017dcim.deviceroleR\017dcim.devicetypeR\016dcim.frontportR\016dcim.interfaceR\022dcim.inventoryitemR\026dcim.inventoryitemroleR\rdcim.locationR\017dcim.macaddressR\021dcim.manufacturerR\013dcim.moduleR\016dcim.modulebayR\017dcim.moduletypeR\026dcim.moduletypeprofileR\rdcim.platformR\016dcim.powerfeedR\020dcim.poweroutletR\017dcim.powerpanelR\016dcim.powerportR\tdcim.rackR\016dcim.rackgroupR\024dcim.rackreservationR\rdcim.rackroleR\rdcim.racktypeR\rdcim.rearportR\013dcim.regionR\tdcim.siteR\016dcim.sitegroupR\023dcim.virtualchassisR\031dcim.virtualdevicecontextR\023extras.journalentryR\016ipam.aggregateR\010ipam.asnR\ripam.asnrangeR\016ipam.fhrpgroupR\016ipam.ipaddressR\014ipam.iprangeR\013ipam.prefixR\010ipam.rirR\tipam.roleR\020ipam.routetargetR\014ipam.serviceR\tipam.vlanR\016ipam.vlangroupR\032ipam.vlantranslationpolicyR\030ipam.vlantranslationruleR\010ipam.vrfR\017tenancy.contactR\031tenancy.contactassignmentR\024tenancy.contactgroupR\023tenancy.contactroleR\016tenancy.tenantR\023tenancy.tenantgroupR\026virtualization.clusterR\033virtualization.clustergroupR\032virtualization.clustertypeR\032virtualization.virtualdiskR\035virtualization.virtualmachineR!virtualization.virtualmachinetypeR\032virtualization.vminterfaceR\rvpn.ikepolicyR\017vpn.ikeproposalR\017vpn.ipsecpolicyR\020vpn.ipsecprofileR\021vpn.ipsecproposalR\tvpn.l2vpnR\024vpn.l2vpnterminationR\nvpn.tunnelR\017vpn.tunnelgroupR\025vpn.tunnelterminationR\024wireless.wirelesslanR\031wireless.wirelesslangroupR\025wireless.wirelesslink' + _globals['_CUSTOMFIELD'].fields_by_name['object_types']._serialized_options = b'\372B\242\016\222\001\236\016\"\233\016r\230\016R\020circuits.circuitR\025circuits.circuitgroupR\037circuits.circuitgroupassignmentR\033circuits.circuitterminationR\024circuits.circuittypeR\021circuits.providerR\030circuits.provideraccountR\030circuits.providernetworkR\027circuits.virtualcircuitR\"circuits.virtualcircuitterminationR\033circuits.virtualcircuittypeR\ndcim.cableR\020dcim.cablebundleR\020dcim.consoleportR\026dcim.consoleserverportR\020dcim.coolingfeedR\022dcim.coolingintakeR\023dcim.coolingoutflowR\022dcim.coolingsourceR\013dcim.deviceR\016dcim.devicebayR\017dcim.deviceroleR\017dcim.devicetypeR\016dcim.frontportR\016dcim.interfaceR\022dcim.inventoryitemR\026dcim.inventoryitemroleR\rdcim.locationR\017dcim.macaddressR\021dcim.manufacturerR\013dcim.moduleR\016dcim.modulebayR\022dcim.modulebaytypeR\017dcim.moduletypeR\026dcim.moduletypeprofileR\rdcim.platformR\016dcim.powerfeedR\020dcim.poweroutletR\017dcim.powerpanelR\016dcim.powerportR\tdcim.rackR\016dcim.rackgroupR\024dcim.rackreservationR\rdcim.rackroleR\rdcim.racktypeR\rdcim.rearportR\013dcim.regionR\tdcim.siteR\016dcim.sitegroupR\023dcim.virtualchassisR\031dcim.virtualdevicecontextR\023extras.journalentryR\016ipam.aggregateR\010ipam.asnR\ripam.asnrangeR\016ipam.fhrpgroupR\016ipam.ipaddressR\014ipam.iprangeR\013ipam.prefixR\010ipam.rirR\tipam.roleR\020ipam.routetargetR\014ipam.serviceR\tipam.vlanR\016ipam.vlangroupR\032ipam.vlantranslationpolicyR\030ipam.vlantranslationruleR\010ipam.vrfR\017tenancy.contactR\031tenancy.contactassignmentR\024tenancy.contactgroupR\023tenancy.contactroleR\016tenancy.tenantR\023tenancy.tenantgroupR\026virtualization.clusterR\033virtualization.clustergroupR\032virtualization.clustertypeR\032virtualization.virtualdiskR\035virtualization.virtualmachineR!virtualization.virtualmachinetypeR\032virtualization.vminterfaceR\rvpn.ikepolicyR\017vpn.ikeproposalR\017vpn.ipsecpolicyR\020vpn.ipsecprofileR\021vpn.ipsecproposalR\tvpn.l2vpnR\024vpn.l2vpnterminationR\nvpn.tunnelR\017vpn.tunnelgroupR\025vpn.tunnelterminationR\024wireless.wirelesslanR\031wireless.wirelesslangroupR\025wireless.wirelesslink' _globals['_CUSTOMFIELD'].fields_by_name['metadata']._loaded_options = None _globals['_CUSTOMFIELD'].fields_by_name['metadata']._serialized_options = b'\210\265\030\000' _globals['_CUSTOMFIELDCHOICESET'].fields_by_name['base_choices']._loaded_options = None @@ -627,7 +637,7 @@ _globals['_CUSTOMLINK'].fields_by_name['button_class']._loaded_options = None _globals['_CUSTOMLINK'].fields_by_name['button_class']._serialized_options = b'\372BormR\005blackR\004blueR\004cyanR\007defaultR\nghost-darkR\004grayR\005greenR\006indigoR\006orangeR\004pinkR\006purpleR\003redR\004tealR\005whiteR\006yellow' _globals['_CUSTOMLINK'].fields_by_name['object_types']._loaded_options = None - _globals['_CUSTOMLINK'].fields_by_name['object_types']._serialized_options = b'\372B\242\r\222\001\236\r\"\233\rr\230\rR\020circuits.circuitR\025circuits.circuitgroupR\033circuits.circuitterminationR\024circuits.circuittypeR\021circuits.providerR\030circuits.provideraccountR\030circuits.providernetworkR\027circuits.virtualcircuitR\"circuits.virtualcircuitterminationR\033circuits.virtualcircuittypeR\ndcim.cableR\020dcim.cablebundleR\020dcim.consoleportR\026dcim.consoleserverportR\013dcim.deviceR\016dcim.devicebayR\017dcim.deviceroleR\017dcim.devicetypeR\016dcim.frontportR\016dcim.interfaceR\022dcim.inventoryitemR\026dcim.inventoryitemroleR\rdcim.locationR\017dcim.macaddressR\021dcim.manufacturerR\013dcim.moduleR\016dcim.modulebayR\017dcim.moduletypeR\026dcim.moduletypeprofileR\rdcim.platformR\016dcim.powerfeedR\020dcim.poweroutletR\017dcim.powerpanelR\016dcim.powerportR\tdcim.rackR\016dcim.rackgroupR\024dcim.rackreservationR\rdcim.rackroleR\rdcim.racktypeR\rdcim.rearportR\013dcim.regionR\tdcim.siteR\016dcim.sitegroupR\023dcim.virtualchassisR\031dcim.virtualdevicecontextR\023extras.journalentryR\016ipam.aggregateR\010ipam.asnR\ripam.asnrangeR\016ipam.fhrpgroupR\016ipam.ipaddressR\014ipam.iprangeR\013ipam.prefixR\010ipam.rirR\tipam.roleR\020ipam.routetargetR\014ipam.serviceR\tipam.vlanR\016ipam.vlangroupR\032ipam.vlantranslationpolicyR\030ipam.vlantranslationruleR\010ipam.vrfR\017tenancy.contactR\024tenancy.contactgroupR\023tenancy.contactroleR\016tenancy.tenantR\023tenancy.tenantgroupR\013users.ownerR\020users.ownergroupR\026virtualization.clusterR\033virtualization.clustergroupR\032virtualization.clustertypeR\032virtualization.virtualdiskR\035virtualization.virtualmachineR!virtualization.virtualmachinetypeR\032virtualization.vminterfaceR\rvpn.ikepolicyR\017vpn.ikeproposalR\017vpn.ipsecpolicyR\020vpn.ipsecprofileR\021vpn.ipsecproposalR\tvpn.l2vpnR\024vpn.l2vpnterminationR\nvpn.tunnelR\017vpn.tunnelgroupR\025vpn.tunnelterminationR\024wireless.wirelesslanR\031wireless.wirelesslangroupR\025wireless.wirelesslink' + _globals['_CUSTOMLINK'].fields_by_name['object_types']._serialized_options = b'\372B\205\016\222\001\201\016\"\376\rr\373\rR\020circuits.circuitR\025circuits.circuitgroupR\033circuits.circuitterminationR\024circuits.circuittypeR\021circuits.providerR\030circuits.provideraccountR\030circuits.providernetworkR\027circuits.virtualcircuitR\"circuits.virtualcircuitterminationR\033circuits.virtualcircuittypeR\ndcim.cableR\020dcim.cablebundleR\020dcim.consoleportR\026dcim.consoleserverportR\020dcim.coolingfeedR\022dcim.coolingintakeR\023dcim.coolingoutflowR\022dcim.coolingsourceR\013dcim.deviceR\016dcim.devicebayR\017dcim.deviceroleR\017dcim.devicetypeR\016dcim.frontportR\016dcim.interfaceR\022dcim.inventoryitemR\026dcim.inventoryitemroleR\rdcim.locationR\017dcim.macaddressR\021dcim.manufacturerR\013dcim.moduleR\016dcim.modulebayR\022dcim.modulebaytypeR\017dcim.moduletypeR\026dcim.moduletypeprofileR\rdcim.platformR\016dcim.powerfeedR\020dcim.poweroutletR\017dcim.powerpanelR\016dcim.powerportR\tdcim.rackR\016dcim.rackgroupR\024dcim.rackreservationR\rdcim.rackroleR\rdcim.racktypeR\rdcim.rearportR\013dcim.regionR\tdcim.siteR\016dcim.sitegroupR\023dcim.virtualchassisR\031dcim.virtualdevicecontextR\023extras.journalentryR\016ipam.aggregateR\010ipam.asnR\ripam.asnrangeR\016ipam.fhrpgroupR\016ipam.ipaddressR\014ipam.iprangeR\013ipam.prefixR\010ipam.rirR\tipam.roleR\020ipam.routetargetR\014ipam.serviceR\tipam.vlanR\016ipam.vlangroupR\032ipam.vlantranslationpolicyR\030ipam.vlantranslationruleR\010ipam.vrfR\017tenancy.contactR\024tenancy.contactgroupR\023tenancy.contactroleR\016tenancy.tenantR\023tenancy.tenantgroupR\013users.ownerR\020users.ownergroupR\026virtualization.clusterR\033virtualization.clustergroupR\032virtualization.clustertypeR\032virtualization.virtualdiskR\035virtualization.virtualmachineR!virtualization.virtualmachinetypeR\032virtualization.vminterfaceR\rvpn.ikepolicyR\017vpn.ikeproposalR\017vpn.ipsecpolicyR\020vpn.ipsecprofileR\021vpn.ipsecproposalR\tvpn.l2vpnR\024vpn.l2vpnterminationR\nvpn.tunnelR\017vpn.tunnelgroupR\025vpn.tunnelterminationR\024wireless.wirelesslanR\031wireless.wirelesslangroupR\025wireless.wirelesslink' _globals['_CUSTOMLINK'].fields_by_name['metadata']._loaded_options = None _globals['_CUSTOMLINK'].fields_by_name['metadata']._serialized_options = b'\210\265\030\000' _globals['_OWNER'].fields_by_name['metadata']._loaded_options = None @@ -658,392 +668,452 @@ _globals['_VIRTUALMACHINETYPE'].fields_by_name['metadata']._serialized_options = b'\210\265\030\000' _globals['_USER'].fields_by_name['metadata']._loaded_options = None _globals['_USER'].fields_by_name['metadata']._serialized_options = b'\210\265\030\000' + _globals['_COOLINGFEED_CUSTOMFIELDSENTRY']._loaded_options = None + _globals['_COOLINGFEED_CUSTOMFIELDSENTRY']._serialized_options = b'8\001' + _globals['_COOLINGFEED'].fields_by_name['status']._loaded_options = None + _globals['_COOLINGFEED'].fields_by_name['status']._serialized_options = b'\372B$r\"R\006activeR\006failedR\007offlineR\007planned' + _globals['_COOLINGFEED'].fields_by_name['max_flow_unit']._loaded_options = None + _globals['_COOLINGFEED'].fields_by_name['max_flow_unit']._serialized_options = b'\372B\022r\020R\003gpmR\003lpmR\004m3ph' + _globals['_COOLINGFEED'].fields_by_name['metadata']._loaded_options = None + _globals['_COOLINGFEED'].fields_by_name['metadata']._serialized_options = b'\210\265\030\000' + _globals['_COOLINGINTAKE_CUSTOMFIELDSENTRY']._loaded_options = None + _globals['_COOLINGINTAKE_CUSTOMFIELDSENTRY']._serialized_options = b'8\001' + _globals['_COOLINGINTAKE'].fields_by_name['type']._loaded_options = None + _globals['_COOLINGINTAKE'].fields_by_name['type']._serialized_options = b'\372B2r0R\003bspR\007camlockR\003nptR\013proprietaryR\003qdcR\003uqdR\004uqdb' + _globals['_COOLINGINTAKE'].fields_by_name['diameter_unit']._loaded_options = None + _globals['_COOLINGINTAKE'].fields_by_name['diameter_unit']._serialized_options = b'\372B\016r\014R\002cmR\002inR\002mm' + _globals['_COOLINGINTAKE'].fields_by_name['max_flow_unit']._loaded_options = None + _globals['_COOLINGINTAKE'].fields_by_name['max_flow_unit']._serialized_options = b'\372B\022r\020R\003gpmR\003lpmR\004m3ph' + _globals['_COOLINGINTAKE'].fields_by_name['metadata']._loaded_options = None + _globals['_COOLINGINTAKE'].fields_by_name['metadata']._serialized_options = b'\210\265\030\000' + _globals['_COOLINGOUTFLOW_CUSTOMFIELDSENTRY']._loaded_options = None + _globals['_COOLINGOUTFLOW_CUSTOMFIELDSENTRY']._serialized_options = b'8\001' + _globals['_COOLINGOUTFLOW'].fields_by_name['type']._loaded_options = None + _globals['_COOLINGOUTFLOW'].fields_by_name['type']._serialized_options = b'\372B2r0R\003bspR\007camlockR\003nptR\013proprietaryR\003qdcR\003uqdR\004uqdb' + _globals['_COOLINGOUTFLOW'].fields_by_name['diameter_unit']._loaded_options = None + _globals['_COOLINGOUTFLOW'].fields_by_name['diameter_unit']._serialized_options = b'\372B\016r\014R\002cmR\002inR\002mm' + _globals['_COOLINGOUTFLOW'].fields_by_name['metadata']._loaded_options = None + _globals['_COOLINGOUTFLOW'].fields_by_name['metadata']._serialized_options = b'\210\265\030\000' + _globals['_COOLINGSOURCE_CUSTOMFIELDSENTRY']._loaded_options = None + _globals['_COOLINGSOURCE_CUSTOMFIELDSENTRY']._serialized_options = b'8\001' + _globals['_COOLINGSOURCE'].fields_by_name['type']._loaded_options = None + _globals['_COOLINGSOURCE'].fields_by_name['type']._serialized_options = b'\372B2r0R\007chillerR\rcooling-towerR\004cracR\004crahR\ndry-cooler' + _globals['_COOLINGSOURCE'].fields_by_name['status']._loaded_options = None + _globals['_COOLINGSOURCE'].fields_by_name['status']._serialized_options = b'\372B$r\"R\006activeR\006failedR\007offlineR\007planned' + _globals['_COOLINGSOURCE'].fields_by_name['fluid_type']._loaded_options = None + _globals['_COOLINGSOURCE'].fields_by_name['fluid_type']._serialized_options = b'\372B0r.R\ndielectricR\013refrigerantR\005waterR\014water-glycol' + _globals['_COOLINGSOURCE'].fields_by_name['metadata']._loaded_options = None + _globals['_COOLINGSOURCE'].fields_by_name['metadata']._serialized_options = b'\210\265\030\000' + _globals['_MODULEBAYTYPE_CUSTOMFIELDSENTRY']._loaded_options = None + _globals['_MODULEBAYTYPE_CUSTOMFIELDSENTRY']._serialized_options = b'8\001' + _globals['_MODULEBAYTYPE'].fields_by_name['metadata']._loaded_options = None + _globals['_MODULEBAYTYPE'].fields_by_name['metadata']._serialized_options = b'\210\265\030\000' _globals['_ENTITY']._serialized_start=160 - _globals['_ENTITY']._serialized_end=6241 - _globals['_INGESTREQUEST']._serialized_start=6244 - _globals['_INGESTREQUEST']._serialized_end=6653 - _globals['_INGESTRESPONSE']._serialized_start=6655 - _globals['_INGESTRESPONSE']._serialized_end=6695 - _globals['_ASN']._serialized_start=6698 - _globals['_ASN']._serialized_end=7325 - _globals['_ASN_CUSTOMFIELDSENTRY']._serialized_start=7167 - _globals['_ASN_CUSTOMFIELDSENTRY']._serialized_end=7258 - _globals['_ASNRANGE']._serialized_start=7328 - _globals['_ASNRANGE']._serialized_end=7926 - _globals['_ASNRANGE_CUSTOMFIELDSENTRY']._serialized_start=7167 - _globals['_ASNRANGE_CUSTOMFIELDSENTRY']._serialized_end=7258 - _globals['_AGGREGATE']._serialized_start=7929 - _globals['_AGGREGATE']._serialized_end=8552 - _globals['_AGGREGATE_CUSTOMFIELDSENTRY']._serialized_start=7167 - _globals['_AGGREGATE_CUSTOMFIELDSENTRY']._serialized_end=7258 - _globals['_CABLE']._serialized_start=8555 - _globals['_CABLE']._serialized_end=10228 - _globals['_CABLE_CUSTOMFIELDSENTRY']._serialized_start=7167 - _globals['_CABLE_CUSTOMFIELDSENTRY']._serialized_end=7258 - _globals['_CABLEPATH']._serialized_start=10231 - _globals['_CABLEPATH']._serialized_end=10448 - _globals['_CABLETERMINATION']._serialized_start=10451 - _globals['_CABLETERMINATION']._serialized_end=11377 - _globals['_CIRCUIT']._serialized_start=11380 - _globals['_CIRCUIT']._serialized_end=12619 - _globals['_CIRCUIT_CUSTOMFIELDSENTRY']._serialized_start=7167 - _globals['_CIRCUIT_CUSTOMFIELDSENTRY']._serialized_end=7258 - _globals['_CIRCUITGROUP']._serialized_start=12622 - _globals['_CIRCUITGROUP']._serialized_end=13155 - _globals['_CIRCUITGROUP_CUSTOMFIELDSENTRY']._serialized_start=7167 - _globals['_CIRCUITGROUP_CUSTOMFIELDSENTRY']._serialized_end=7258 - _globals['_CIRCUITGROUPASSIGNMENT']._serialized_start=13158 - _globals['_CIRCUITGROUPASSIGNMENT']._serialized_end=13567 - _globals['_CIRCUITTERMINATION']._serialized_start=13570 - _globals['_CIRCUITTERMINATION']._serialized_end=14665 - _globals['_CIRCUITTERMINATION_CUSTOMFIELDSENTRY']._serialized_start=7167 - _globals['_CIRCUITTERMINATION_CUSTOMFIELDSENTRY']._serialized_end=7258 - _globals['_CIRCUITTYPE']._serialized_start=14668 - _globals['_CIRCUITTYPE']._serialized_end=15178 - _globals['_CIRCUITTYPE_CUSTOMFIELDSENTRY']._serialized_start=7167 - _globals['_CIRCUITTYPE_CUSTOMFIELDSENTRY']._serialized_end=7258 - _globals['_CLUSTER']._serialized_start=15181 - _globals['_CLUSTER']._serialized_end=16126 - _globals['_CLUSTER_CUSTOMFIELDSENTRY']._serialized_start=7167 - _globals['_CLUSTER_CUSTOMFIELDSENTRY']._serialized_end=7258 - _globals['_CLUSTERGROUP']._serialized_start=16129 - _globals['_CLUSTERGROUP']._serialized_end=16604 - _globals['_CLUSTERGROUP_CUSTOMFIELDSENTRY']._serialized_start=7167 - _globals['_CLUSTERGROUP_CUSTOMFIELDSENTRY']._serialized_end=7258 - _globals['_CLUSTERTYPE']._serialized_start=16607 - _globals['_CLUSTERTYPE']._serialized_end=17080 - _globals['_CLUSTERTYPE_CUSTOMFIELDSENTRY']._serialized_start=7167 - _globals['_CLUSTERTYPE_CUSTOMFIELDSENTRY']._serialized_end=7258 - _globals['_CONSOLEPORT']._serialized_start=17083 - _globals['_CONSOLEPORT']._serialized_end=17945 - _globals['_CONSOLEPORT_CUSTOMFIELDSENTRY']._serialized_start=7167 - _globals['_CONSOLEPORT_CUSTOMFIELDSENTRY']._serialized_end=7258 - _globals['_CONSOLESERVERPORT']._serialized_start=17948 - _globals['_CONSOLESERVERPORT']._serialized_end=18822 - _globals['_CONSOLESERVERPORT_CUSTOMFIELDSENTRY']._serialized_start=7167 - _globals['_CONSOLESERVERPORT_CUSTOMFIELDSENTRY']._serialized_end=7258 - _globals['_CONTACT']._serialized_start=18825 - _globals['_CONTACT']._serialized_end=19571 - _globals['_CONTACT_CUSTOMFIELDSENTRY']._serialized_start=7167 - _globals['_CONTACT_CUSTOMFIELDSENTRY']._serialized_end=7258 - _globals['_CONTACTASSIGNMENT']._serialized_start=19574 - _globals['_CONTACTASSIGNMENT']._serialized_end=27293 - _globals['_CONTACTASSIGNMENT_CUSTOMFIELDSENTRY']._serialized_start=7167 - _globals['_CONTACTASSIGNMENT_CUSTOMFIELDSENTRY']._serialized_end=7258 - _globals['_CONTACTGROUP']._serialized_start=27296 - _globals['_CONTACTGROUP']._serialized_end=27835 - _globals['_CONTACTGROUP_CUSTOMFIELDSENTRY']._serialized_start=7167 - _globals['_CONTACTGROUP_CUSTOMFIELDSENTRY']._serialized_end=7258 - _globals['_CONTACTROLE']._serialized_start=27838 - _globals['_CONTACTROLE']._serialized_end=28311 - _globals['_CONTACTROLE_CUSTOMFIELDSENTRY']._serialized_start=7167 - _globals['_CONTACTROLE_CUSTOMFIELDSENTRY']._serialized_end=7258 - _globals['_CUSTOMFIELDOBJECTREFERENCE']._serialized_start=28314 - _globals['_CUSTOMFIELDOBJECTREFERENCE']._serialized_end=34276 - _globals['_CUSTOMFIELDVALUE']._serialized_start=34279 - _globals['_CUSTOMFIELDVALUE']._serialized_end=34817 - _globals['_DEVICE']._serialized_start=34820 - _globals['_DEVICE']._serialized_end=36780 - _globals['_DEVICE_CUSTOMFIELDSENTRY']._serialized_start=7167 - _globals['_DEVICE_CUSTOMFIELDSENTRY']._serialized_end=7258 - _globals['_DEVICEBAY']._serialized_start=36783 - _globals['_DEVICEBAY']._serialized_end=37395 - _globals['_DEVICEBAY_CUSTOMFIELDSENTRY']._serialized_start=7167 - _globals['_DEVICEBAY_CUSTOMFIELDSENTRY']._serialized_end=7258 - _globals['_DEVICEROLE']._serialized_start=37398 - _globals['_DEVICEROLE']._serialized_end=38010 - _globals['_DEVICEROLE_CUSTOMFIELDSENTRY']._serialized_start=7167 - _globals['_DEVICEROLE_CUSTOMFIELDSENTRY']._serialized_end=7258 - _globals['_DEVICETYPE']._serialized_start=38013 - _globals['_DEVICETYPE']._serialized_end=39274 - _globals['_DEVICETYPE_CUSTOMFIELDSENTRY']._serialized_start=7167 - _globals['_DEVICETYPE_CUSTOMFIELDSENTRY']._serialized_end=7258 - _globals['_FHRPGROUP']._serialized_start=39277 - _globals['_FHRPGROUP']._serialized_end=39968 - _globals['_FHRPGROUP_CUSTOMFIELDSENTRY']._serialized_start=7167 - _globals['_FHRPGROUP_CUSTOMFIELDSENTRY']._serialized_end=7258 - _globals['_FHRPGROUPASSIGNMENT']._serialized_start=39971 - _globals['_FHRPGROUPASSIGNMENT']._serialized_end=47959 - _globals['_FRONTPORT']._serialized_start=47962 - _globals['_FRONTPORT']._serialized_end=49237 - _globals['_FRONTPORT_CUSTOMFIELDSENTRY']._serialized_start=7167 - _globals['_FRONTPORT_CUSTOMFIELDSENTRY']._serialized_end=7258 - _globals['_GENERICOBJECT']._serialized_start=49240 - _globals['_GENERICOBJECT']._serialized_end=56489 - _globals['_IKEPOLICY']._serialized_start=56492 - _globals['_IKEPOLICY']._serialized_end=57150 - _globals['_IKEPOLICY_CUSTOMFIELDSENTRY']._serialized_start=7167 - _globals['_IKEPOLICY_CUSTOMFIELDSENTRY']._serialized_end=7258 - _globals['_IKEPROPOSAL']._serialized_start=57153 - _globals['_IKEPROPOSAL']._serialized_end=58176 - _globals['_IKEPROPOSAL_CUSTOMFIELDSENTRY']._serialized_start=7167 - _globals['_IKEPROPOSAL_CUSTOMFIELDSENTRY']._serialized_end=7258 - _globals['_IPADDRESS']._serialized_start=58179 - _globals['_IPADDRESS']._serialized_end=59321 - _globals['_IPADDRESS_CUSTOMFIELDSENTRY']._serialized_start=7167 - _globals['_IPADDRESS_CUSTOMFIELDSENTRY']._serialized_end=7258 - _globals['_IPRANGE']._serialized_start=59324 - _globals['_IPRANGE']._serialized_end=60173 - _globals['_IPRANGE_CUSTOMFIELDSENTRY']._serialized_start=7167 - _globals['_IPRANGE_CUSTOMFIELDSENTRY']._serialized_end=7258 - _globals['_IPSECPOLICY']._serialized_start=60176 - _globals['_IPSECPOLICY']._serialized_end=60787 - _globals['_IPSECPOLICY_CUSTOMFIELDSENTRY']._serialized_start=7167 - _globals['_IPSECPOLICY_CUSTOMFIELDSENTRY']._serialized_end=7258 - _globals['_IPSECPROFILE']._serialized_start=60790 - _globals['_IPSECPROFILE']._serialized_end=61391 - _globals['_IPSECPROFILE_CUSTOMFIELDSENTRY']._serialized_start=7167 - _globals['_IPSECPROFILE_CUSTOMFIELDSENTRY']._serialized_end=7258 - _globals['_IPSECPROPOSAL']._serialized_start=61394 - _globals['_IPSECPROPOSAL']._serialized_end=62343 - _globals['_IPSECPROPOSAL_CUSTOMFIELDSENTRY']._serialized_start=7167 - _globals['_IPSECPROPOSAL_CUSTOMFIELDSENTRY']._serialized_end=7258 - _globals['_INTERFACE']._serialized_start=62346 - _globals['_INTERFACE']._serialized_end=70784 - _globals['_INTERFACE_CUSTOMFIELDSENTRY']._serialized_start=7167 - _globals['_INTERFACE_CUSTOMFIELDSENTRY']._serialized_end=7258 - _globals['_INVENTORYITEM']._serialized_start=70787 - _globals['_INVENTORYITEM']._serialized_end=72332 - _globals['_INVENTORYITEM_CUSTOMFIELDSENTRY']._serialized_start=7167 - _globals['_INVENTORYITEM_CUSTOMFIELDSENTRY']._serialized_end=7258 - _globals['_INVENTORYITEMROLE']._serialized_start=72335 - _globals['_INVENTORYITEMROLE']._serialized_end=72857 - _globals['_INVENTORYITEMROLE_CUSTOMFIELDSENTRY']._serialized_start=7167 - _globals['_INVENTORYITEMROLE_CUSTOMFIELDSENTRY']._serialized_end=7258 - _globals['_L2VPN']._serialized_start=72860 - _globals['_L2VPN']._serialized_end=73793 - _globals['_L2VPN_CUSTOMFIELDSENTRY']._serialized_start=7167 - _globals['_L2VPN_CUSTOMFIELDSENTRY']._serialized_end=7258 - _globals['_L2VPNTERMINATION']._serialized_start=73796 - _globals['_L2VPNTERMINATION']._serialized_end=83067 - _globals['_L2VPNTERMINATION_CUSTOMFIELDSENTRY']._serialized_start=7167 - _globals['_L2VPNTERMINATION_CUSTOMFIELDSENTRY']._serialized_end=7258 - _globals['_LOCATION']._serialized_start=83070 - _globals['_LOCATION']._serialized_end=83836 - _globals['_LOCATION_CUSTOMFIELDSENTRY']._serialized_start=7167 - _globals['_LOCATION_CUSTOMFIELDSENTRY']._serialized_end=7258 - _globals['_MACADDRESS']._serialized_start=83839 - _globals['_MACADDRESS']._serialized_end=84495 - _globals['_MACADDRESS_CUSTOMFIELDSENTRY']._serialized_start=7167 - _globals['_MACADDRESS_CUSTOMFIELDSENTRY']._serialized_end=7258 - _globals['_MANUFACTURER']._serialized_start=84498 - _globals['_MANUFACTURER']._serialized_end=84973 - _globals['_MANUFACTURER_CUSTOMFIELDSENTRY']._serialized_start=7167 - _globals['_MANUFACTURER_CUSTOMFIELDSENTRY']._serialized_end=7258 - _globals['_MODULE']._serialized_start=84976 - _globals['_MODULE']._serialized_end=85892 - _globals['_MODULE_CUSTOMFIELDSENTRY']._serialized_start=7167 - _globals['_MODULE_CUSTOMFIELDSENTRY']._serialized_end=7258 - _globals['_MODULEBAY']._serialized_start=85895 - _globals['_MODULEBAY']._serialized_end=86611 - _globals['_MODULEBAY_CUSTOMFIELDSENTRY']._serialized_start=7167 - _globals['_MODULEBAY_CUSTOMFIELDSENTRY']._serialized_end=7258 - _globals['_MODULETYPE']._serialized_start=86614 - _globals['_MODULETYPE']._serialized_end=87554 - _globals['_MODULETYPE_CUSTOMFIELDSENTRY']._serialized_start=7167 - _globals['_MODULETYPE_CUSTOMFIELDSENTRY']._serialized_end=7258 - _globals['_PLATFORM']._serialized_start=87557 - _globals['_PLATFORM']._serialized_end=88166 - _globals['_PLATFORM_CUSTOMFIELDSENTRY']._serialized_start=7167 - _globals['_PLATFORM_CUSTOMFIELDSENTRY']._serialized_end=7258 - _globals['_POWERFEED']._serialized_start=88169 - _globals['_POWERFEED']._serialized_end=89267 - _globals['_POWERFEED_CUSTOMFIELDSENTRY']._serialized_start=7167 - _globals['_POWERFEED_CUSTOMFIELDSENTRY']._serialized_end=7258 - _globals['_POWEROUTLET']._serialized_start=89270 - _globals['_POWEROUTLET']._serialized_end=91540 - _globals['_POWEROUTLET_CUSTOMFIELDSENTRY']._serialized_start=7167 - _globals['_POWEROUTLET_CUSTOMFIELDSENTRY']._serialized_end=7258 - _globals['_POWERPANEL']._serialized_start=91543 - _globals['_POWERPANEL']._serialized_end=92096 - _globals['_POWERPANEL_CUSTOMFIELDSENTRY']._serialized_start=7167 - _globals['_POWERPANEL_CUSTOMFIELDSENTRY']._serialized_end=7258 - _globals['_POWERPORT']._serialized_start=92099 - _globals['_POWERPORT']._serialized_end=94297 - _globals['_POWERPORT_CUSTOMFIELDSENTRY']._serialized_start=7167 - _globals['_POWERPORT_CUSTOMFIELDSENTRY']._serialized_end=7258 - _globals['_PREFIX']._serialized_start=94300 - _globals['_PREFIX']._serialized_end=95380 - _globals['_PREFIX_CUSTOMFIELDSENTRY']._serialized_start=7167 - _globals['_PREFIX_CUSTOMFIELDSENTRY']._serialized_end=7258 - _globals['_PROVIDER']._serialized_start=95383 - _globals['_PROVIDER']._serialized_end=95940 - _globals['_PROVIDER_CUSTOMFIELDSENTRY']._serialized_start=7167 - _globals['_PROVIDER_CUSTOMFIELDSENTRY']._serialized_end=7258 - _globals['_PROVIDERACCOUNT']._serialized_start=95943 - _globals['_PROVIDERACCOUNT']._serialized_end=96492 - _globals['_PROVIDERACCOUNT_CUSTOMFIELDSENTRY']._serialized_start=7167 - _globals['_PROVIDERACCOUNT_CUSTOMFIELDSENTRY']._serialized_end=7258 - _globals['_PROVIDERNETWORK']._serialized_start=96495 - _globals['_PROVIDERNETWORK']._serialized_end=97055 - _globals['_PROVIDERNETWORK_CUSTOMFIELDSENTRY']._serialized_start=7167 - _globals['_PROVIDERNETWORK_CUSTOMFIELDSENTRY']._serialized_end=7258 - _globals['_RIR']._serialized_start=97058 - _globals['_RIR']._serialized_end=97566 - _globals['_RIR_CUSTOMFIELDSENTRY']._serialized_start=7167 - _globals['_RIR_CUSTOMFIELDSENTRY']._serialized_end=7258 - _globals['_RACK']._serialized_start=97569 - _globals['_RACK']._serialized_end=99512 - _globals['_RACK_CUSTOMFIELDSENTRY']._serialized_start=7167 - _globals['_RACK_CUSTOMFIELDSENTRY']._serialized_end=7258 - _globals['_RACKRESERVATION']._serialized_start=99515 - _globals['_RACKRESERVATION']._serialized_end=100158 - _globals['_RACKRESERVATION_CUSTOMFIELDSENTRY']._serialized_start=7167 - _globals['_RACKRESERVATION_CUSTOMFIELDSENTRY']._serialized_end=7258 - _globals['_RACKROLE']._serialized_start=100161 - _globals['_RACKROLE']._serialized_end=100665 - _globals['_RACKROLE_CUSTOMFIELDSENTRY']._serialized_start=7167 - _globals['_RACKROLE_CUSTOMFIELDSENTRY']._serialized_end=7258 - _globals['_RACKTYPE']._serialized_start=100668 - _globals['_RACKTYPE']._serialized_end=102042 - _globals['_RACKTYPE_CUSTOMFIELDSENTRY']._serialized_start=7167 - _globals['_RACKTYPE_CUSTOMFIELDSENTRY']._serialized_end=7258 - _globals['_REARPORT']._serialized_start=102045 - _globals['_REARPORT']._serialized_end=103187 - _globals['_REARPORT_CUSTOMFIELDSENTRY']._serialized_start=7167 - _globals['_REARPORT_CUSTOMFIELDSENTRY']._serialized_end=7258 - _globals['_REGION']._serialized_start=103190 - _globals['_REGION']._serialized_end=103711 - _globals['_REGION_CUSTOMFIELDSENTRY']._serialized_start=7167 - _globals['_REGION_CUSTOMFIELDSENTRY']._serialized_end=7258 - _globals['_ROLE']._serialized_start=103714 - _globals['_ROLE']._serialized_end=104213 - _globals['_ROLE_CUSTOMFIELDSENTRY']._serialized_start=7167 - _globals['_ROLE_CUSTOMFIELDSENTRY']._serialized_end=7258 - _globals['_ROUTETARGET']._serialized_start=104216 - _globals['_ROUTETARGET']._serialized_end=104727 - _globals['_ROUTETARGET_CUSTOMFIELDSENTRY']._serialized_start=7167 - _globals['_ROUTETARGET_CUSTOMFIELDSENTRY']._serialized_end=7258 - _globals['_SERVICE']._serialized_start=104730 - _globals['_SERVICE']._serialized_end=105741 - _globals['_SERVICE_CUSTOMFIELDSENTRY']._serialized_start=7167 - _globals['_SERVICE_CUSTOMFIELDSENTRY']._serialized_end=7258 - _globals['_SITE']._serialized_start=105744 - _globals['_SITE']._serialized_end=106838 - _globals['_SITE_CUSTOMFIELDSENTRY']._serialized_start=7167 - _globals['_SITE_CUSTOMFIELDSENTRY']._serialized_end=7258 - _globals['_SITEGROUP']._serialized_start=106841 - _globals['_SITEGROUP']._serialized_end=107371 - _globals['_SITEGROUP_CUSTOMFIELDSENTRY']._serialized_start=7167 - _globals['_SITEGROUP_CUSTOMFIELDSENTRY']._serialized_end=7258 - _globals['_TAG']._serialized_start=107374 - _globals['_TAG']._serialized_end=109380 - _globals['_TENANT']._serialized_start=109383 - _globals['_TENANT']._serialized_end=109906 - _globals['_TENANT_CUSTOMFIELDSENTRY']._serialized_start=7167 - _globals['_TENANT_CUSTOMFIELDSENTRY']._serialized_end=7258 - _globals['_TENANTGROUP']._serialized_start=109909 - _globals['_TENANTGROUP']._serialized_end=110445 - _globals['_TENANTGROUP_CUSTOMFIELDSENTRY']._serialized_start=7167 - _globals['_TENANTGROUP_CUSTOMFIELDSENTRY']._serialized_end=7258 - _globals['_TUNNEL']._serialized_start=110448 - _globals['_TUNNEL']._serialized_end=111319 - _globals['_TUNNEL_CUSTOMFIELDSENTRY']._serialized_start=7167 - _globals['_TUNNEL_CUSTOMFIELDSENTRY']._serialized_end=7258 - _globals['_TUNNELGROUP']._serialized_start=111322 - _globals['_TUNNELGROUP']._serialized_end=111795 - _globals['_TUNNELGROUP_CUSTOMFIELDSENTRY']._serialized_start=7167 - _globals['_TUNNELGROUP_CUSTOMFIELDSENTRY']._serialized_end=7258 - _globals['_TUNNELTERMINATION']._serialized_start=111798 - _globals['_TUNNELTERMINATION']._serialized_end=120486 - _globals['_TUNNELTERMINATION_CUSTOMFIELDSENTRY']._serialized_start=7167 - _globals['_TUNNELTERMINATION_CUSTOMFIELDSENTRY']._serialized_end=7258 - _globals['_VLAN']._serialized_start=120489 - _globals['_VLAN']._serialized_end=121375 - _globals['_VLAN_CUSTOMFIELDSENTRY']._serialized_start=7167 - _globals['_VLAN_CUSTOMFIELDSENTRY']._serialized_end=7258 - _globals['_VLANGROUP']._serialized_start=121378 - _globals['_VLANGROUP']._serialized_end=122421 - _globals['_VLANGROUP_CUSTOMFIELDSENTRY']._serialized_start=7167 - _globals['_VLANGROUP_CUSTOMFIELDSENTRY']._serialized_end=7258 - _globals['_VLANTRANSLATIONPOLICY']._serialized_start=122424 - _globals['_VLANTRANSLATIONPOLICY']._serialized_end=122681 - _globals['_VLANTRANSLATIONRULE']._serialized_start=122684 - _globals['_VLANTRANSLATIONRULE']._serialized_end=122936 - _globals['_VMINTERFACE']._serialized_start=122939 - _globals['_VMINTERFACE']._serialized_end=124151 - _globals['_VMINTERFACE_CUSTOMFIELDSENTRY']._serialized_start=7167 - _globals['_VMINTERFACE_CUSTOMFIELDSENTRY']._serialized_end=7258 - _globals['_VRF']._serialized_start=124154 - _globals['_VRF']._serialized_end=124864 - _globals['_VRF_CUSTOMFIELDSENTRY']._serialized_start=7167 - _globals['_VRF_CUSTOMFIELDSENTRY']._serialized_end=7258 - _globals['_VIRTUALCHASSIS']._serialized_start=124867 - _globals['_VIRTUALCHASSIS']._serialized_end=125424 - _globals['_VIRTUALCHASSIS_CUSTOMFIELDSENTRY']._serialized_start=7167 - _globals['_VIRTUALCHASSIS_CUSTOMFIELDSENTRY']._serialized_end=7258 - _globals['_VIRTUALCIRCUIT']._serialized_start=125427 - _globals['_VIRTUALCIRCUIT']._serialized_end=126277 - _globals['_VIRTUALCIRCUIT_CUSTOMFIELDSENTRY']._serialized_start=7167 - _globals['_VIRTUALCIRCUIT_CUSTOMFIELDSENTRY']._serialized_end=7258 - _globals['_VIRTUALCIRCUITTERMINATION']._serialized_start=126280 - _globals['_VIRTUALCIRCUITTERMINATION']._serialized_end=126818 - _globals['_VIRTUALCIRCUITTERMINATION_CUSTOMFIELDSENTRY']._serialized_start=7167 - _globals['_VIRTUALCIRCUITTERMINATION_CUSTOMFIELDSENTRY']._serialized_end=7258 - _globals['_VIRTUALCIRCUITTYPE']._serialized_start=126821 - _globals['_VIRTUALCIRCUITTYPE']._serialized_end=127345 - _globals['_VIRTUALCIRCUITTYPE_CUSTOMFIELDSENTRY']._serialized_start=7167 - _globals['_VIRTUALCIRCUITTYPE_CUSTOMFIELDSENTRY']._serialized_end=7258 - _globals['_VIRTUALDEVICECONTEXT']._serialized_start=127348 - _globals['_VIRTUALDEVICECONTEXT']._serialized_end=128178 - _globals['_VIRTUALDEVICECONTEXT_CUSTOMFIELDSENTRY']._serialized_start=7167 - _globals['_VIRTUALDEVICECONTEXT_CUSTOMFIELDSENTRY']._serialized_end=7258 - _globals['_VIRTUALDISK']._serialized_start=128181 - _globals['_VIRTUALDISK']._serialized_end=128675 - _globals['_VIRTUALDISK_CUSTOMFIELDSENTRY']._serialized_start=7167 - _globals['_VIRTUALDISK_CUSTOMFIELDSENTRY']._serialized_end=7258 - _globals['_VIRTUALMACHINE']._serialized_start=128678 - _globals['_VIRTUALMACHINE']._serialized_end=130098 - _globals['_VIRTUALMACHINE_CUSTOMFIELDSENTRY']._serialized_start=7167 - _globals['_VIRTUALMACHINE_CUSTOMFIELDSENTRY']._serialized_end=7258 - _globals['_WIRELESSLAN']._serialized_start=130101 - _globals['_WIRELESSLAN']._serialized_end=131272 - _globals['_WIRELESSLAN_CUSTOMFIELDSENTRY']._serialized_start=7167 - _globals['_WIRELESSLAN_CUSTOMFIELDSENTRY']._serialized_end=7258 - _globals['_WIRELESSLANGROUP']._serialized_start=131275 - _globals['_WIRELESSLANGROUP']._serialized_end=131826 - _globals['_WIRELESSLANGROUP_CUSTOMFIELDSENTRY']._serialized_start=7167 - _globals['_WIRELESSLANGROUP_CUSTOMFIELDSENTRY']._serialized_end=7258 - _globals['_WIRELESSLINK']._serialized_start=131829 - _globals['_WIRELESSLINK']._serialized_end=132895 - _globals['_WIRELESSLINK_CUSTOMFIELDSENTRY']._serialized_start=7167 - _globals['_WIRELESSLINK_CUSTOMFIELDSENTRY']._serialized_end=7258 - _globals['_CUSTOMFIELD']._serialized_start=132898 - _globals['_CUSTOMFIELD']._serialized_end=138122 - _globals['_CUSTOMFIELDCHOICESET']._serialized_start=138125 - _globals['_CUSTOMFIELDCHOICESET']._serialized_end=138604 - _globals['_JOURNALENTRY']._serialized_start=138607 - _globals['_JOURNALENTRY']._serialized_end=147999 - _globals['_JOURNALENTRY_CUSTOMFIELDSENTRY']._serialized_start=7167 - _globals['_JOURNALENTRY_CUSTOMFIELDSENTRY']._serialized_end=7258 - _globals['_MODULETYPEPROFILE']._serialized_start=148002 - _globals['_MODULETYPEPROFILE']._serialized_end=148507 - _globals['_MODULETYPEPROFILE_CUSTOMFIELDSENTRY']._serialized_start=7167 - _globals['_MODULETYPEPROFILE_CUSTOMFIELDSENTRY']._serialized_end=7258 - _globals['_CUSTOMLINK']._serialized_start=148510 - _globals['_CUSTOMLINK']._serialized_end=150811 - _globals['_OWNER']._serialized_start=150814 - _globals['_OWNER']._serialized_end=151037 - _globals['_OWNERGROUP']._serialized_start=151040 - _globals['_OWNERGROUP']._serialized_end=151186 - _globals['_DEVICECONFIG']._serialized_start=151189 - _globals['_DEVICECONFIG']._serialized_end=151362 - _globals['_CABLEBUNDLE']._serialized_start=151365 - _globals['_CABLEBUNDLE']._serialized_end=151818 - _globals['_CABLEBUNDLE_CUSTOMFIELDSENTRY']._serialized_start=7167 - _globals['_CABLEBUNDLE_CUSTOMFIELDSENTRY']._serialized_end=7258 - _globals['_RACKGROUP']._serialized_start=151821 - _globals['_RACKGROUP']._serialized_end=152290 - _globals['_RACKGROUP_CUSTOMFIELDSENTRY']._serialized_start=7167 - _globals['_RACKGROUP_CUSTOMFIELDSENTRY']._serialized_end=7258 - _globals['_SCRIPTMODULE']._serialized_start=152292 - _globals['_SCRIPTMODULE']._serialized_end=152385 - _globals['_VIRTUALMACHINETYPE']._serialized_start=152388 - _globals['_VIRTUALMACHINETYPE']._serialized_end=153087 - _globals['_VIRTUALMACHINETYPE_CUSTOMFIELDSENTRY']._serialized_start=7167 - _globals['_VIRTUALMACHINETYPE_CUSTOMFIELDSENTRY']._serialized_end=7258 - _globals['_USER']._serialized_start=153089 - _globals['_USER']._serialized_end=153182 - _globals['_INGESTERSERVICE']._serialized_start=153184 - _globals['_INGESTERSERVICE']._serialized_end=153262 + _globals['_ENTITY']._serialized_end=6569 + _globals['_INGESTREQUEST']._serialized_start=6572 + _globals['_INGESTREQUEST']._serialized_end=6981 + _globals['_INGESTRESPONSE']._serialized_start=6983 + _globals['_INGESTRESPONSE']._serialized_end=7023 + _globals['_ASN']._serialized_start=7026 + _globals['_ASN']._serialized_end=7653 + _globals['_ASN_CUSTOMFIELDSENTRY']._serialized_start=7495 + _globals['_ASN_CUSTOMFIELDSENTRY']._serialized_end=7586 + _globals['_ASNRANGE']._serialized_start=7656 + _globals['_ASNRANGE']._serialized_end=8254 + _globals['_ASNRANGE_CUSTOMFIELDSENTRY']._serialized_start=7495 + _globals['_ASNRANGE_CUSTOMFIELDSENTRY']._serialized_end=7586 + _globals['_AGGREGATE']._serialized_start=8257 + _globals['_AGGREGATE']._serialized_end=8880 + _globals['_AGGREGATE_CUSTOMFIELDSENTRY']._serialized_start=7495 + _globals['_AGGREGATE_CUSTOMFIELDSENTRY']._serialized_end=7586 + _globals['_CABLE']._serialized_start=8883 + _globals['_CABLE']._serialized_end=10576 + _globals['_CABLE_CUSTOMFIELDSENTRY']._serialized_start=7495 + _globals['_CABLE_CUSTOMFIELDSENTRY']._serialized_end=7586 + _globals['_CABLEPATH']._serialized_start=10579 + _globals['_CABLEPATH']._serialized_end=10796 + _globals['_CABLETERMINATION']._serialized_start=10799 + _globals['_CABLETERMINATION']._serialized_end=11725 + _globals['_CIRCUIT']._serialized_start=11728 + _globals['_CIRCUIT']._serialized_end=12967 + _globals['_CIRCUIT_CUSTOMFIELDSENTRY']._serialized_start=7495 + _globals['_CIRCUIT_CUSTOMFIELDSENTRY']._serialized_end=7586 + _globals['_CIRCUITGROUP']._serialized_start=12970 + _globals['_CIRCUITGROUP']._serialized_end=13503 + _globals['_CIRCUITGROUP_CUSTOMFIELDSENTRY']._serialized_start=7495 + _globals['_CIRCUITGROUP_CUSTOMFIELDSENTRY']._serialized_end=7586 + _globals['_CIRCUITGROUPASSIGNMENT']._serialized_start=13506 + _globals['_CIRCUITGROUPASSIGNMENT']._serialized_end=13915 + _globals['_CIRCUITTERMINATION']._serialized_start=13918 + _globals['_CIRCUITTERMINATION']._serialized_end=15013 + _globals['_CIRCUITTERMINATION_CUSTOMFIELDSENTRY']._serialized_start=7495 + _globals['_CIRCUITTERMINATION_CUSTOMFIELDSENTRY']._serialized_end=7586 + _globals['_CIRCUITTYPE']._serialized_start=15016 + _globals['_CIRCUITTYPE']._serialized_end=15526 + _globals['_CIRCUITTYPE_CUSTOMFIELDSENTRY']._serialized_start=7495 + _globals['_CIRCUITTYPE_CUSTOMFIELDSENTRY']._serialized_end=7586 + _globals['_CLUSTER']._serialized_start=15529 + _globals['_CLUSTER']._serialized_end=16474 + _globals['_CLUSTER_CUSTOMFIELDSENTRY']._serialized_start=7495 + _globals['_CLUSTER_CUSTOMFIELDSENTRY']._serialized_end=7586 + _globals['_CLUSTERGROUP']._serialized_start=16477 + _globals['_CLUSTERGROUP']._serialized_end=16952 + _globals['_CLUSTERGROUP_CUSTOMFIELDSENTRY']._serialized_start=7495 + _globals['_CLUSTERGROUP_CUSTOMFIELDSENTRY']._serialized_end=7586 + _globals['_CLUSTERTYPE']._serialized_start=16955 + _globals['_CLUSTERTYPE']._serialized_end=17428 + _globals['_CLUSTERTYPE_CUSTOMFIELDSENTRY']._serialized_start=7495 + _globals['_CLUSTERTYPE_CUSTOMFIELDSENTRY']._serialized_end=7586 + _globals['_CONSOLEPORT']._serialized_start=17431 + _globals['_CONSOLEPORT']._serialized_end=18293 + _globals['_CONSOLEPORT_CUSTOMFIELDSENTRY']._serialized_start=7495 + _globals['_CONSOLEPORT_CUSTOMFIELDSENTRY']._serialized_end=7586 + _globals['_CONSOLESERVERPORT']._serialized_start=18296 + _globals['_CONSOLESERVERPORT']._serialized_end=19170 + _globals['_CONSOLESERVERPORT_CUSTOMFIELDSENTRY']._serialized_start=7495 + _globals['_CONSOLESERVERPORT_CUSTOMFIELDSENTRY']._serialized_end=7586 + _globals['_CONTACT']._serialized_start=19173 + _globals['_CONTACT']._serialized_end=19919 + _globals['_CONTACT_CUSTOMFIELDSENTRY']._serialized_start=7495 + _globals['_CONTACT_CUSTOMFIELDSENTRY']._serialized_end=7586 + _globals['_CONTACTASSIGNMENT']._serialized_start=19922 + _globals['_CONTACTASSIGNMENT']._serialized_end=28034 + _globals['_CONTACTASSIGNMENT_CUSTOMFIELDSENTRY']._serialized_start=7495 + _globals['_CONTACTASSIGNMENT_CUSTOMFIELDSENTRY']._serialized_end=7586 + _globals['_CONTACTGROUP']._serialized_start=28037 + _globals['_CONTACTGROUP']._serialized_end=28576 + _globals['_CONTACTGROUP_CUSTOMFIELDSENTRY']._serialized_start=7495 + _globals['_CONTACTGROUP_CUSTOMFIELDSENTRY']._serialized_end=7586 + _globals['_CONTACTROLE']._serialized_start=28579 + _globals['_CONTACTROLE']._serialized_end=29052 + _globals['_CONTACTROLE_CUSTOMFIELDSENTRY']._serialized_start=7495 + _globals['_CONTACTROLE_CUSTOMFIELDSENTRY']._serialized_end=7586 + _globals['_CUSTOMFIELDOBJECTREFERENCE']._serialized_start=29055 + _globals['_CUSTOMFIELDOBJECTREFERENCE']._serialized_end=35345 + _globals['_CUSTOMFIELDVALUE']._serialized_start=35348 + _globals['_CUSTOMFIELDVALUE']._serialized_end=35886 + _globals['_DEVICE']._serialized_start=35889 + _globals['_DEVICE']._serialized_end=37951 + _globals['_DEVICE_CUSTOMFIELDSENTRY']._serialized_start=7495 + _globals['_DEVICE_CUSTOMFIELDSENTRY']._serialized_end=7586 + _globals['_DEVICEBAY']._serialized_start=37954 + _globals['_DEVICEBAY']._serialized_end=38566 + _globals['_DEVICEBAY_CUSTOMFIELDSENTRY']._serialized_start=7495 + _globals['_DEVICEBAY_CUSTOMFIELDSENTRY']._serialized_end=7586 + _globals['_DEVICEROLE']._serialized_start=38569 + _globals['_DEVICEROLE']._serialized_end=39181 + _globals['_DEVICEROLE_CUSTOMFIELDSENTRY']._serialized_start=7495 + _globals['_DEVICEROLE_CUSTOMFIELDSENTRY']._serialized_end=7586 + _globals['_DEVICETYPE']._serialized_start=39184 + _globals['_DEVICETYPE']._serialized_end=40628 + _globals['_DEVICETYPE_CUSTOMFIELDSENTRY']._serialized_start=7495 + _globals['_DEVICETYPE_CUSTOMFIELDSENTRY']._serialized_end=7586 + _globals['_FHRPGROUP']._serialized_start=40631 + _globals['_FHRPGROUP']._serialized_end=41322 + _globals['_FHRPGROUP_CUSTOMFIELDSENTRY']._serialized_start=7495 + _globals['_FHRPGROUP_CUSTOMFIELDSENTRY']._serialized_end=7586 + _globals['_FHRPGROUPASSIGNMENT']._serialized_start=41325 + _globals['_FHRPGROUPASSIGNMENT']._serialized_end=49736 + _globals['_FRONTPORT']._serialized_start=49739 + _globals['_FRONTPORT']._serialized_end=51046 + _globals['_FRONTPORT_CUSTOMFIELDSENTRY']._serialized_start=7495 + _globals['_FRONTPORT_CUSTOMFIELDSENTRY']._serialized_end=7586 + _globals['_GENERICOBJECT']._serialized_start=51049 + _globals['_GENERICOBJECT']._serialized_end=58691 + _globals['_IKEPOLICY']._serialized_start=58694 + _globals['_IKEPOLICY']._serialized_end=59352 + _globals['_IKEPOLICY_CUSTOMFIELDSENTRY']._serialized_start=7495 + _globals['_IKEPOLICY_CUSTOMFIELDSENTRY']._serialized_end=7586 + _globals['_IKEPROPOSAL']._serialized_start=59355 + _globals['_IKEPROPOSAL']._serialized_end=60378 + _globals['_IKEPROPOSAL_CUSTOMFIELDSENTRY']._serialized_start=7495 + _globals['_IKEPROPOSAL_CUSTOMFIELDSENTRY']._serialized_end=7586 + _globals['_IPADDRESS']._serialized_start=60381 + _globals['_IPADDRESS']._serialized_end=61523 + _globals['_IPADDRESS_CUSTOMFIELDSENTRY']._serialized_start=7495 + _globals['_IPADDRESS_CUSTOMFIELDSENTRY']._serialized_end=7586 + _globals['_IPRANGE']._serialized_start=61526 + _globals['_IPRANGE']._serialized_end=62375 + _globals['_IPRANGE_CUSTOMFIELDSENTRY']._serialized_start=7495 + _globals['_IPRANGE_CUSTOMFIELDSENTRY']._serialized_end=7586 + _globals['_IPSECPOLICY']._serialized_start=62378 + _globals['_IPSECPOLICY']._serialized_end=62989 + _globals['_IPSECPOLICY_CUSTOMFIELDSENTRY']._serialized_start=7495 + _globals['_IPSECPOLICY_CUSTOMFIELDSENTRY']._serialized_end=7586 + _globals['_IPSECPROFILE']._serialized_start=62992 + _globals['_IPSECPROFILE']._serialized_end=63593 + _globals['_IPSECPROFILE_CUSTOMFIELDSENTRY']._serialized_start=7495 + _globals['_IPSECPROFILE_CUSTOMFIELDSENTRY']._serialized_end=7586 + _globals['_IPSECPROPOSAL']._serialized_start=63596 + _globals['_IPSECPROPOSAL']._serialized_end=64545 + _globals['_IPSECPROPOSAL_CUSTOMFIELDSENTRY']._serialized_start=7495 + _globals['_IPSECPROPOSAL_CUSTOMFIELDSENTRY']._serialized_end=7586 + _globals['_INTERFACE']._serialized_start=64548 + _globals['_INTERFACE']._serialized_end=73369 + _globals['_INTERFACE_CUSTOMFIELDSENTRY']._serialized_start=7495 + _globals['_INTERFACE_CUSTOMFIELDSENTRY']._serialized_end=7586 + _globals['_INVENTORYITEM']._serialized_start=73372 + _globals['_INVENTORYITEM']._serialized_end=75090 + _globals['_INVENTORYITEM_CUSTOMFIELDSENTRY']._serialized_start=7495 + _globals['_INVENTORYITEM_CUSTOMFIELDSENTRY']._serialized_end=7586 + _globals['_INVENTORYITEMROLE']._serialized_start=75093 + _globals['_INVENTORYITEMROLE']._serialized_end=75615 + _globals['_INVENTORYITEMROLE_CUSTOMFIELDSENTRY']._serialized_start=7495 + _globals['_INVENTORYITEMROLE_CUSTOMFIELDSENTRY']._serialized_end=7586 + _globals['_L2VPN']._serialized_start=75618 + _globals['_L2VPN']._serialized_end=76551 + _globals['_L2VPN_CUSTOMFIELDSENTRY']._serialized_start=7495 + _globals['_L2VPN_CUSTOMFIELDSENTRY']._serialized_end=7586 + _globals['_L2VPNTERMINATION']._serialized_start=76554 + _globals['_L2VPNTERMINATION']._serialized_end=86303 + _globals['_L2VPNTERMINATION_CUSTOMFIELDSENTRY']._serialized_start=7495 + _globals['_L2VPNTERMINATION_CUSTOMFIELDSENTRY']._serialized_end=7586 + _globals['_LOCATION']._serialized_start=86306 + _globals['_LOCATION']._serialized_end=87072 + _globals['_LOCATION_CUSTOMFIELDSENTRY']._serialized_start=7495 + _globals['_LOCATION_CUSTOMFIELDSENTRY']._serialized_end=7586 + _globals['_MACADDRESS']._serialized_start=87075 + _globals['_MACADDRESS']._serialized_end=87731 + _globals['_MACADDRESS_CUSTOMFIELDSENTRY']._serialized_start=7495 + _globals['_MACADDRESS_CUSTOMFIELDSENTRY']._serialized_end=7586 + _globals['_MANUFACTURER']._serialized_start=87734 + _globals['_MANUFACTURER']._serialized_end=88209 + _globals['_MANUFACTURER_CUSTOMFIELDSENTRY']._serialized_start=7495 + _globals['_MANUFACTURER_CUSTOMFIELDSENTRY']._serialized_end=7586 + _globals['_MODULE']._serialized_start=88212 + _globals['_MODULE']._serialized_end=89128 + _globals['_MODULE_CUSTOMFIELDSENTRY']._serialized_start=7495 + _globals['_MODULE_CUSTOMFIELDSENTRY']._serialized_end=7586 + _globals['_MODULEBAY']._serialized_start=89131 + _globals['_MODULEBAY']._serialized_end=89914 + _globals['_MODULEBAY_CUSTOMFIELDSENTRY']._serialized_start=7495 + _globals['_MODULEBAY_CUSTOMFIELDSENTRY']._serialized_end=7586 + _globals['_MODULETYPE']._serialized_start=89917 + _globals['_MODULETYPE']._serialized_end=91107 + _globals['_MODULETYPE_CUSTOMFIELDSENTRY']._serialized_start=7495 + _globals['_MODULETYPE_CUSTOMFIELDSENTRY']._serialized_end=7586 + _globals['_PLATFORM']._serialized_start=91110 + _globals['_PLATFORM']._serialized_end=91719 + _globals['_PLATFORM_CUSTOMFIELDSENTRY']._serialized_start=7495 + _globals['_PLATFORM_CUSTOMFIELDSENTRY']._serialized_end=7586 + _globals['_POWERFEED']._serialized_start=91722 + _globals['_POWERFEED']._serialized_end=92820 + _globals['_POWERFEED_CUSTOMFIELDSENTRY']._serialized_start=7495 + _globals['_POWERFEED_CUSTOMFIELDSENTRY']._serialized_end=7586 + _globals['_POWEROUTLET']._serialized_start=92823 + _globals['_POWEROUTLET']._serialized_end=95093 + _globals['_POWEROUTLET_CUSTOMFIELDSENTRY']._serialized_start=7495 + _globals['_POWEROUTLET_CUSTOMFIELDSENTRY']._serialized_end=7586 + _globals['_POWERPANEL']._serialized_start=95096 + _globals['_POWERPANEL']._serialized_end=95649 + _globals['_POWERPANEL_CUSTOMFIELDSENTRY']._serialized_start=7495 + _globals['_POWERPANEL_CUSTOMFIELDSENTRY']._serialized_end=7586 + _globals['_POWERPORT']._serialized_start=95652 + _globals['_POWERPORT']._serialized_end=97850 + _globals['_POWERPORT_CUSTOMFIELDSENTRY']._serialized_start=7495 + _globals['_POWERPORT_CUSTOMFIELDSENTRY']._serialized_end=7586 + _globals['_PREFIX']._serialized_start=97853 + _globals['_PREFIX']._serialized_end=98933 + _globals['_PREFIX_CUSTOMFIELDSENTRY']._serialized_start=7495 + _globals['_PREFIX_CUSTOMFIELDSENTRY']._serialized_end=7586 + _globals['_PROVIDER']._serialized_start=98936 + _globals['_PROVIDER']._serialized_end=99493 + _globals['_PROVIDER_CUSTOMFIELDSENTRY']._serialized_start=7495 + _globals['_PROVIDER_CUSTOMFIELDSENTRY']._serialized_end=7586 + _globals['_PROVIDERACCOUNT']._serialized_start=99496 + _globals['_PROVIDERACCOUNT']._serialized_end=100045 + _globals['_PROVIDERACCOUNT_CUSTOMFIELDSENTRY']._serialized_start=7495 + _globals['_PROVIDERACCOUNT_CUSTOMFIELDSENTRY']._serialized_end=7586 + _globals['_PROVIDERNETWORK']._serialized_start=100048 + _globals['_PROVIDERNETWORK']._serialized_end=100608 + _globals['_PROVIDERNETWORK_CUSTOMFIELDSENTRY']._serialized_start=7495 + _globals['_PROVIDERNETWORK_CUSTOMFIELDSENTRY']._serialized_end=7586 + _globals['_RIR']._serialized_start=100611 + _globals['_RIR']._serialized_end=101119 + _globals['_RIR_CUSTOMFIELDSENTRY']._serialized_start=7495 + _globals['_RIR_CUSTOMFIELDSENTRY']._serialized_end=7586 + _globals['_RACK']._serialized_start=101122 + _globals['_RACK']._serialized_end=103247 + _globals['_RACK_CUSTOMFIELDSENTRY']._serialized_start=7495 + _globals['_RACK_CUSTOMFIELDSENTRY']._serialized_end=7586 + _globals['_RACKRESERVATION']._serialized_start=103250 + _globals['_RACKRESERVATION']._serialized_end=103893 + _globals['_RACKRESERVATION_CUSTOMFIELDSENTRY']._serialized_start=7495 + _globals['_RACKRESERVATION_CUSTOMFIELDSENTRY']._serialized_end=7586 + _globals['_RACKROLE']._serialized_start=103896 + _globals['_RACKROLE']._serialized_end=104400 + _globals['_RACKROLE_CUSTOMFIELDSENTRY']._serialized_start=7495 + _globals['_RACKROLE_CUSTOMFIELDSENTRY']._serialized_end=7586 + _globals['_RACKTYPE']._serialized_start=104403 + _globals['_RACKTYPE']._serialized_end=105959 + _globals['_RACKTYPE_CUSTOMFIELDSENTRY']._serialized_start=7495 + _globals['_RACKTYPE_CUSTOMFIELDSENTRY']._serialized_end=7586 + _globals['_REARPORT']._serialized_start=105962 + _globals['_REARPORT']._serialized_end=107136 + _globals['_REARPORT_CUSTOMFIELDSENTRY']._serialized_start=7495 + _globals['_REARPORT_CUSTOMFIELDSENTRY']._serialized_end=7586 + _globals['_REGION']._serialized_start=107139 + _globals['_REGION']._serialized_end=107660 + _globals['_REGION_CUSTOMFIELDSENTRY']._serialized_start=7495 + _globals['_REGION_CUSTOMFIELDSENTRY']._serialized_end=7586 + _globals['_ROLE']._serialized_start=107663 + _globals['_ROLE']._serialized_end=108162 + _globals['_ROLE_CUSTOMFIELDSENTRY']._serialized_start=7495 + _globals['_ROLE_CUSTOMFIELDSENTRY']._serialized_end=7586 + _globals['_ROUTETARGET']._serialized_start=108165 + _globals['_ROUTETARGET']._serialized_end=108676 + _globals['_ROUTETARGET_CUSTOMFIELDSENTRY']._serialized_start=7495 + _globals['_ROUTETARGET_CUSTOMFIELDSENTRY']._serialized_end=7586 + _globals['_SERVICE']._serialized_start=108679 + _globals['_SERVICE']._serialized_end=109727 + _globals['_SERVICE_CUSTOMFIELDSENTRY']._serialized_start=7495 + _globals['_SERVICE_CUSTOMFIELDSENTRY']._serialized_end=7586 + _globals['_SITE']._serialized_start=109730 + _globals['_SITE']._serialized_end=110824 + _globals['_SITE_CUSTOMFIELDSENTRY']._serialized_start=7495 + _globals['_SITE_CUSTOMFIELDSENTRY']._serialized_end=7586 + _globals['_SITEGROUP']._serialized_start=110827 + _globals['_SITEGROUP']._serialized_end=111357 + _globals['_SITEGROUP_CUSTOMFIELDSENTRY']._serialized_start=7495 + _globals['_SITEGROUP_CUSTOMFIELDSENTRY']._serialized_end=7586 + _globals['_TAG']._serialized_start=111360 + _globals['_TAG']._serialized_end=113465 + _globals['_TENANT']._serialized_start=113468 + _globals['_TENANT']._serialized_end=113991 + _globals['_TENANT_CUSTOMFIELDSENTRY']._serialized_start=7495 + _globals['_TENANT_CUSTOMFIELDSENTRY']._serialized_end=7586 + _globals['_TENANTGROUP']._serialized_start=113994 + _globals['_TENANTGROUP']._serialized_end=114530 + _globals['_TENANTGROUP_CUSTOMFIELDSENTRY']._serialized_start=7495 + _globals['_TENANTGROUP_CUSTOMFIELDSENTRY']._serialized_end=7586 + _globals['_TUNNEL']._serialized_start=114533 + _globals['_TUNNEL']._serialized_end=115404 + _globals['_TUNNEL_CUSTOMFIELDSENTRY']._serialized_start=7495 + _globals['_TUNNEL_CUSTOMFIELDSENTRY']._serialized_end=7586 + _globals['_TUNNELGROUP']._serialized_start=115407 + _globals['_TUNNELGROUP']._serialized_end=115880 + _globals['_TUNNELGROUP_CUSTOMFIELDSENTRY']._serialized_start=7495 + _globals['_TUNNELGROUP_CUSTOMFIELDSENTRY']._serialized_end=7586 + _globals['_TUNNELTERMINATION']._serialized_start=115883 + _globals['_TUNNELTERMINATION']._serialized_end=125014 + _globals['_TUNNELTERMINATION_CUSTOMFIELDSENTRY']._serialized_start=7495 + _globals['_TUNNELTERMINATION_CUSTOMFIELDSENTRY']._serialized_end=7586 + _globals['_VLAN']._serialized_start=125017 + _globals['_VLAN']._serialized_end=125903 + _globals['_VLAN_CUSTOMFIELDSENTRY']._serialized_start=7495 + _globals['_VLAN_CUSTOMFIELDSENTRY']._serialized_end=7586 + _globals['_VLANGROUP']._serialized_start=125906 + _globals['_VLANGROUP']._serialized_end=126949 + _globals['_VLANGROUP_CUSTOMFIELDSENTRY']._serialized_start=7495 + _globals['_VLANGROUP_CUSTOMFIELDSENTRY']._serialized_end=7586 + _globals['_VLANTRANSLATIONPOLICY']._serialized_start=126952 + _globals['_VLANTRANSLATIONPOLICY']._serialized_end=127209 + _globals['_VLANTRANSLATIONRULE']._serialized_start=127212 + _globals['_VLANTRANSLATIONRULE']._serialized_end=127464 + _globals['_VMINTERFACE']._serialized_start=127467 + _globals['_VMINTERFACE']._serialized_end=128733 + _globals['_VMINTERFACE_CUSTOMFIELDSENTRY']._serialized_start=7495 + _globals['_VMINTERFACE_CUSTOMFIELDSENTRY']._serialized_end=7586 + _globals['_VRF']._serialized_start=128736 + _globals['_VRF']._serialized_end=129446 + _globals['_VRF_CUSTOMFIELDSENTRY']._serialized_start=7495 + _globals['_VRF_CUSTOMFIELDSENTRY']._serialized_end=7586 + _globals['_VIRTUALCHASSIS']._serialized_start=129449 + _globals['_VIRTUALCHASSIS']._serialized_end=130006 + _globals['_VIRTUALCHASSIS_CUSTOMFIELDSENTRY']._serialized_start=7495 + _globals['_VIRTUALCHASSIS_CUSTOMFIELDSENTRY']._serialized_end=7586 + _globals['_VIRTUALCIRCUIT']._serialized_start=130009 + _globals['_VIRTUALCIRCUIT']._serialized_end=130859 + _globals['_VIRTUALCIRCUIT_CUSTOMFIELDSENTRY']._serialized_start=7495 + _globals['_VIRTUALCIRCUIT_CUSTOMFIELDSENTRY']._serialized_end=7586 + _globals['_VIRTUALCIRCUITTERMINATION']._serialized_start=130862 + _globals['_VIRTUALCIRCUITTERMINATION']._serialized_end=131400 + _globals['_VIRTUALCIRCUITTERMINATION_CUSTOMFIELDSENTRY']._serialized_start=7495 + _globals['_VIRTUALCIRCUITTERMINATION_CUSTOMFIELDSENTRY']._serialized_end=7586 + _globals['_VIRTUALCIRCUITTYPE']._serialized_start=131403 + _globals['_VIRTUALCIRCUITTYPE']._serialized_end=131927 + _globals['_VIRTUALCIRCUITTYPE_CUSTOMFIELDSENTRY']._serialized_start=7495 + _globals['_VIRTUALCIRCUITTYPE_CUSTOMFIELDSENTRY']._serialized_end=7586 + _globals['_VIRTUALDEVICECONTEXT']._serialized_start=131930 + _globals['_VIRTUALDEVICECONTEXT']._serialized_end=132760 + _globals['_VIRTUALDEVICECONTEXT_CUSTOMFIELDSENTRY']._serialized_start=7495 + _globals['_VIRTUALDEVICECONTEXT_CUSTOMFIELDSENTRY']._serialized_end=7586 + _globals['_VIRTUALDISK']._serialized_start=132763 + _globals['_VIRTUALDISK']._serialized_end=133257 + _globals['_VIRTUALDISK_CUSTOMFIELDSENTRY']._serialized_start=7495 + _globals['_VIRTUALDISK_CUSTOMFIELDSENTRY']._serialized_end=7586 + _globals['_VIRTUALMACHINE']._serialized_start=133260 + _globals['_VIRTUALMACHINE']._serialized_end=134680 + _globals['_VIRTUALMACHINE_CUSTOMFIELDSENTRY']._serialized_start=7495 + _globals['_VIRTUALMACHINE_CUSTOMFIELDSENTRY']._serialized_end=7586 + _globals['_WIRELESSLAN']._serialized_start=134683 + _globals['_WIRELESSLAN']._serialized_end=135854 + _globals['_WIRELESSLAN_CUSTOMFIELDSENTRY']._serialized_start=7495 + _globals['_WIRELESSLAN_CUSTOMFIELDSENTRY']._serialized_end=7586 + _globals['_WIRELESSLANGROUP']._serialized_start=135857 + _globals['_WIRELESSLANGROUP']._serialized_end=136408 + _globals['_WIRELESSLANGROUP_CUSTOMFIELDSENTRY']._serialized_start=7495 + _globals['_WIRELESSLANGROUP_CUSTOMFIELDSENTRY']._serialized_end=7586 + _globals['_WIRELESSLINK']._serialized_start=136411 + _globals['_WIRELESSLINK']._serialized_end=137477 + _globals['_WIRELESSLINK_CUSTOMFIELDSENTRY']._serialized_start=7495 + _globals['_WIRELESSLINK_CUSTOMFIELDSENTRY']._serialized_end=7586 + _globals['_CUSTOMFIELD']._serialized_start=137480 + _globals['_CUSTOMFIELD']._serialized_end=142956 + _globals['_CUSTOMFIELDCHOICESET']._serialized_start=142959 + _globals['_CUSTOMFIELDCHOICESET']._serialized_end=143438 + _globals['_JOURNALENTRY']._serialized_start=143441 + _globals['_JOURNALENTRY']._serialized_end=153311 + _globals['_JOURNALENTRY_CUSTOMFIELDSENTRY']._serialized_start=7495 + _globals['_JOURNALENTRY_CUSTOMFIELDSENTRY']._serialized_end=7586 + _globals['_MODULETYPEPROFILE']._serialized_start=153314 + _globals['_MODULETYPEPROFILE']._serialized_end=153819 + _globals['_MODULETYPEPROFILE_CUSTOMFIELDSENTRY']._serialized_start=7495 + _globals['_MODULETYPEPROFILE_CUSTOMFIELDSENTRY']._serialized_end=7586 + _globals['_CUSTOMLINK']._serialized_start=153822 + _globals['_CUSTOMLINK']._serialized_end=156222 + _globals['_OWNER']._serialized_start=156225 + _globals['_OWNER']._serialized_end=156448 + _globals['_OWNERGROUP']._serialized_start=156451 + _globals['_OWNERGROUP']._serialized_end=156597 + _globals['_DEVICECONFIG']._serialized_start=156600 + _globals['_DEVICECONFIG']._serialized_end=156773 + _globals['_CABLEBUNDLE']._serialized_start=156776 + _globals['_CABLEBUNDLE']._serialized_end=157229 + _globals['_CABLEBUNDLE_CUSTOMFIELDSENTRY']._serialized_start=7495 + _globals['_CABLEBUNDLE_CUSTOMFIELDSENTRY']._serialized_end=7586 + _globals['_RACKGROUP']._serialized_start=157232 + _globals['_RACKGROUP']._serialized_end=157701 + _globals['_RACKGROUP_CUSTOMFIELDSENTRY']._serialized_start=7495 + _globals['_RACKGROUP_CUSTOMFIELDSENTRY']._serialized_end=7586 + _globals['_SCRIPTMODULE']._serialized_start=157703 + _globals['_SCRIPTMODULE']._serialized_end=157796 + _globals['_VIRTUALMACHINETYPE']._serialized_start=157799 + _globals['_VIRTUALMACHINETYPE']._serialized_end=158498 + _globals['_VIRTUALMACHINETYPE_CUSTOMFIELDSENTRY']._serialized_start=7495 + _globals['_VIRTUALMACHINETYPE_CUSTOMFIELDSENTRY']._serialized_end=7586 + _globals['_USER']._serialized_start=158500 + _globals['_USER']._serialized_end=158593 + _globals['_COOLINGFEED']._serialized_start=158596 + _globals['_COOLINGFEED']._serialized_end=159498 + _globals['_COOLINGFEED_CUSTOMFIELDSENTRY']._serialized_start=7495 + _globals['_COOLINGFEED_CUSTOMFIELDSENTRY']._serialized_end=7586 + _globals['_COOLINGINTAKE']._serialized_start=159501 + _globals['_COOLINGINTAKE']._serialized_end=160482 + _globals['_COOLINGINTAKE_CUSTOMFIELDSENTRY']._serialized_start=7495 + _globals['_COOLINGINTAKE_CUSTOMFIELDSENTRY']._serialized_end=7586 + _globals['_COOLINGOUTFLOW']._serialized_start=160485 + _globals['_COOLINGOUTFLOW']._serialized_end=161337 + _globals['_COOLINGOUTFLOW_CUSTOMFIELDSENTRY']._serialized_start=7495 + _globals['_COOLINGOUTFLOW_CUSTOMFIELDSENTRY']._serialized_end=7586 + _globals['_COOLINGSOURCE']._serialized_start=161340 + _globals['_COOLINGSOURCE']._serialized_end=162228 + _globals['_COOLINGSOURCE_CUSTOMFIELDSENTRY']._serialized_start=7495 + _globals['_COOLINGSOURCE_CUSTOMFIELDSENTRY']._serialized_end=7586 + _globals['_MODULEBAYTYPE']._serialized_start=162231 + _globals['_MODULEBAYTYPE']._serialized_end=162827 + _globals['_MODULEBAYTYPE_CUSTOMFIELDSENTRY']._serialized_start=7495 + _globals['_MODULEBAYTYPE_CUSTOMFIELDSENTRY']._serialized_end=7586 + _globals['_INGESTERSERVICE']._serialized_start=162829 + _globals['_INGESTERSERVICE']._serialized_end=162907 # @@protoc_insertion_point(module_scope) diff --git a/netboxlabs/diode/sdk/diode/v1/ingester_pb2.pyi b/netboxlabs/diode/sdk/diode/v1/ingester_pb2.pyi index dee3be1..a8a831a 100644 --- a/netboxlabs/diode/sdk/diode/v1/ingester_pb2.pyi +++ b/netboxlabs/diode/sdk/diode/v1/ingester_pb2.pyi @@ -12,7 +12,7 @@ NETBOX_SUPPORTED_FIELD_NUMBER: _ClassVar[int] netbox_supported: _descriptor.FieldDescriptor class Entity(_message.Message): - __slots__ = ("timestamp", "asn", "asn_range", "aggregate", "cable", "cable_path", "cable_termination", "circuit", "circuit_group", "circuit_group_assignment", "circuit_termination", "circuit_type", "cluster", "cluster_group", "cluster_type", "console_port", "console_server_port", "contact", "contact_assignment", "contact_group", "contact_role", "device", "device_bay", "device_role", "device_type", "fhrp_group", "fhrp_group_assignment", "front_port", "ike_policy", "ike_proposal", "ip_address", "ip_range", "ip_sec_policy", "ip_sec_profile", "ip_sec_proposal", "interface", "inventory_item", "inventory_item_role", "l2vpn", "l2vpn_termination", "location", "mac_address", "manufacturer", "module", "module_bay", "module_type", "platform", "power_feed", "power_outlet", "power_panel", "power_port", "prefix", "provider", "provider_account", "provider_network", "rir", "rack", "rack_reservation", "rack_role", "rack_type", "rear_port", "region", "role", "route_target", "service", "site", "site_group", "tag", "tenant", "tenant_group", "tunnel", "tunnel_group", "tunnel_termination", "vlan", "vlan_group", "vlan_translation_policy", "vlan_translation_rule", "vm_interface", "vrf", "virtual_chassis", "virtual_circuit", "virtual_circuit_termination", "virtual_circuit_type", "virtual_device_context", "virtual_disk", "virtual_machine", "wireless_lan", "wireless_lan_group", "wireless_link", "custom_field", "custom_field_choice_set", "journal_entry", "module_type_profile", "custom_link", "owner", "owner_group", "device_config", "cable_bundle", "rack_group", "script_module", "virtual_machine_type", "user") + __slots__ = ("timestamp", "asn", "asn_range", "aggregate", "cable", "cable_path", "cable_termination", "circuit", "circuit_group", "circuit_group_assignment", "circuit_termination", "circuit_type", "cluster", "cluster_group", "cluster_type", "console_port", "console_server_port", "contact", "contact_assignment", "contact_group", "contact_role", "device", "device_bay", "device_role", "device_type", "fhrp_group", "fhrp_group_assignment", "front_port", "ike_policy", "ike_proposal", "ip_address", "ip_range", "ip_sec_policy", "ip_sec_profile", "ip_sec_proposal", "interface", "inventory_item", "inventory_item_role", "l2vpn", "l2vpn_termination", "location", "mac_address", "manufacturer", "module", "module_bay", "module_type", "platform", "power_feed", "power_outlet", "power_panel", "power_port", "prefix", "provider", "provider_account", "provider_network", "rir", "rack", "rack_reservation", "rack_role", "rack_type", "rear_port", "region", "role", "route_target", "service", "site", "site_group", "tag", "tenant", "tenant_group", "tunnel", "tunnel_group", "tunnel_termination", "vlan", "vlan_group", "vlan_translation_policy", "vlan_translation_rule", "vm_interface", "vrf", "virtual_chassis", "virtual_circuit", "virtual_circuit_termination", "virtual_circuit_type", "virtual_device_context", "virtual_disk", "virtual_machine", "wireless_lan", "wireless_lan_group", "wireless_link", "custom_field", "custom_field_choice_set", "journal_entry", "module_type_profile", "custom_link", "owner", "owner_group", "device_config", "cable_bundle", "rack_group", "script_module", "virtual_machine_type", "user", "cooling_feed", "cooling_intake", "cooling_outflow", "cooling_source", "module_bay_type") TIMESTAMP_FIELD_NUMBER: _ClassVar[int] ASN_FIELD_NUMBER: _ClassVar[int] ASN_RANGE_FIELD_NUMBER: _ClassVar[int] @@ -115,6 +115,11 @@ class Entity(_message.Message): SCRIPT_MODULE_FIELD_NUMBER: _ClassVar[int] VIRTUAL_MACHINE_TYPE_FIELD_NUMBER: _ClassVar[int] USER_FIELD_NUMBER: _ClassVar[int] + COOLING_FEED_FIELD_NUMBER: _ClassVar[int] + COOLING_INTAKE_FIELD_NUMBER: _ClassVar[int] + COOLING_OUTFLOW_FIELD_NUMBER: _ClassVar[int] + COOLING_SOURCE_FIELD_NUMBER: _ClassVar[int] + MODULE_BAY_TYPE_FIELD_NUMBER: _ClassVar[int] timestamp: _timestamp_pb2.Timestamp asn: ASN asn_range: ASNRange @@ -217,7 +222,12 @@ class Entity(_message.Message): script_module: ScriptModule virtual_machine_type: VirtualMachineType user: User - def __init__(self, timestamp: _Optional[_Union[_timestamp_pb2.Timestamp, _Mapping]] = ..., asn: _Optional[_Union[ASN, _Mapping]] = ..., asn_range: _Optional[_Union[ASNRange, _Mapping]] = ..., aggregate: _Optional[_Union[Aggregate, _Mapping]] = ..., cable: _Optional[_Union[Cable, _Mapping]] = ..., cable_path: _Optional[_Union[CablePath, _Mapping]] = ..., cable_termination: _Optional[_Union[CableTermination, _Mapping]] = ..., circuit: _Optional[_Union[Circuit, _Mapping]] = ..., circuit_group: _Optional[_Union[CircuitGroup, _Mapping]] = ..., circuit_group_assignment: _Optional[_Union[CircuitGroupAssignment, _Mapping]] = ..., circuit_termination: _Optional[_Union[CircuitTermination, _Mapping]] = ..., circuit_type: _Optional[_Union[CircuitType, _Mapping]] = ..., cluster: _Optional[_Union[Cluster, _Mapping]] = ..., cluster_group: _Optional[_Union[ClusterGroup, _Mapping]] = ..., cluster_type: _Optional[_Union[ClusterType, _Mapping]] = ..., console_port: _Optional[_Union[ConsolePort, _Mapping]] = ..., console_server_port: _Optional[_Union[ConsoleServerPort, _Mapping]] = ..., contact: _Optional[_Union[Contact, _Mapping]] = ..., contact_assignment: _Optional[_Union[ContactAssignment, _Mapping]] = ..., contact_group: _Optional[_Union[ContactGroup, _Mapping]] = ..., contact_role: _Optional[_Union[ContactRole, _Mapping]] = ..., device: _Optional[_Union[Device, _Mapping]] = ..., device_bay: _Optional[_Union[DeviceBay, _Mapping]] = ..., device_role: _Optional[_Union[DeviceRole, _Mapping]] = ..., device_type: _Optional[_Union[DeviceType, _Mapping]] = ..., fhrp_group: _Optional[_Union[FHRPGroup, _Mapping]] = ..., fhrp_group_assignment: _Optional[_Union[FHRPGroupAssignment, _Mapping]] = ..., front_port: _Optional[_Union[FrontPort, _Mapping]] = ..., ike_policy: _Optional[_Union[IKEPolicy, _Mapping]] = ..., ike_proposal: _Optional[_Union[IKEProposal, _Mapping]] = ..., ip_address: _Optional[_Union[IPAddress, _Mapping]] = ..., ip_range: _Optional[_Union[IPRange, _Mapping]] = ..., ip_sec_policy: _Optional[_Union[IPSecPolicy, _Mapping]] = ..., ip_sec_profile: _Optional[_Union[IPSecProfile, _Mapping]] = ..., ip_sec_proposal: _Optional[_Union[IPSecProposal, _Mapping]] = ..., interface: _Optional[_Union[Interface, _Mapping]] = ..., inventory_item: _Optional[_Union[InventoryItem, _Mapping]] = ..., inventory_item_role: _Optional[_Union[InventoryItemRole, _Mapping]] = ..., l2vpn: _Optional[_Union[L2VPN, _Mapping]] = ..., l2vpn_termination: _Optional[_Union[L2VPNTermination, _Mapping]] = ..., location: _Optional[_Union[Location, _Mapping]] = ..., mac_address: _Optional[_Union[MACAddress, _Mapping]] = ..., manufacturer: _Optional[_Union[Manufacturer, _Mapping]] = ..., module: _Optional[_Union[Module, _Mapping]] = ..., module_bay: _Optional[_Union[ModuleBay, _Mapping]] = ..., module_type: _Optional[_Union[ModuleType, _Mapping]] = ..., platform: _Optional[_Union[Platform, _Mapping]] = ..., power_feed: _Optional[_Union[PowerFeed, _Mapping]] = ..., power_outlet: _Optional[_Union[PowerOutlet, _Mapping]] = ..., power_panel: _Optional[_Union[PowerPanel, _Mapping]] = ..., power_port: _Optional[_Union[PowerPort, _Mapping]] = ..., prefix: _Optional[_Union[Prefix, _Mapping]] = ..., provider: _Optional[_Union[Provider, _Mapping]] = ..., provider_account: _Optional[_Union[ProviderAccount, _Mapping]] = ..., provider_network: _Optional[_Union[ProviderNetwork, _Mapping]] = ..., rir: _Optional[_Union[RIR, _Mapping]] = ..., rack: _Optional[_Union[Rack, _Mapping]] = ..., rack_reservation: _Optional[_Union[RackReservation, _Mapping]] = ..., rack_role: _Optional[_Union[RackRole, _Mapping]] = ..., rack_type: _Optional[_Union[RackType, _Mapping]] = ..., rear_port: _Optional[_Union[RearPort, _Mapping]] = ..., region: _Optional[_Union[Region, _Mapping]] = ..., role: _Optional[_Union[Role, _Mapping]] = ..., route_target: _Optional[_Union[RouteTarget, _Mapping]] = ..., service: _Optional[_Union[Service, _Mapping]] = ..., site: _Optional[_Union[Site, _Mapping]] = ..., site_group: _Optional[_Union[SiteGroup, _Mapping]] = ..., tag: _Optional[_Union[Tag, _Mapping]] = ..., tenant: _Optional[_Union[Tenant, _Mapping]] = ..., tenant_group: _Optional[_Union[TenantGroup, _Mapping]] = ..., tunnel: _Optional[_Union[Tunnel, _Mapping]] = ..., tunnel_group: _Optional[_Union[TunnelGroup, _Mapping]] = ..., tunnel_termination: _Optional[_Union[TunnelTermination, _Mapping]] = ..., vlan: _Optional[_Union[VLAN, _Mapping]] = ..., vlan_group: _Optional[_Union[VLANGroup, _Mapping]] = ..., vlan_translation_policy: _Optional[_Union[VLANTranslationPolicy, _Mapping]] = ..., vlan_translation_rule: _Optional[_Union[VLANTranslationRule, _Mapping]] = ..., vm_interface: _Optional[_Union[VMInterface, _Mapping]] = ..., vrf: _Optional[_Union[VRF, _Mapping]] = ..., virtual_chassis: _Optional[_Union[VirtualChassis, _Mapping]] = ..., virtual_circuit: _Optional[_Union[VirtualCircuit, _Mapping]] = ..., virtual_circuit_termination: _Optional[_Union[VirtualCircuitTermination, _Mapping]] = ..., virtual_circuit_type: _Optional[_Union[VirtualCircuitType, _Mapping]] = ..., virtual_device_context: _Optional[_Union[VirtualDeviceContext, _Mapping]] = ..., virtual_disk: _Optional[_Union[VirtualDisk, _Mapping]] = ..., virtual_machine: _Optional[_Union[VirtualMachine, _Mapping]] = ..., wireless_lan: _Optional[_Union[WirelessLAN, _Mapping]] = ..., wireless_lan_group: _Optional[_Union[WirelessLANGroup, _Mapping]] = ..., wireless_link: _Optional[_Union[WirelessLink, _Mapping]] = ..., custom_field: _Optional[_Union[CustomField, _Mapping]] = ..., custom_field_choice_set: _Optional[_Union[CustomFieldChoiceSet, _Mapping]] = ..., journal_entry: _Optional[_Union[JournalEntry, _Mapping]] = ..., module_type_profile: _Optional[_Union[ModuleTypeProfile, _Mapping]] = ..., custom_link: _Optional[_Union[CustomLink, _Mapping]] = ..., owner: _Optional[_Union[Owner, _Mapping]] = ..., owner_group: _Optional[_Union[OwnerGroup, _Mapping]] = ..., device_config: _Optional[_Union[DeviceConfig, _Mapping]] = ..., cable_bundle: _Optional[_Union[CableBundle, _Mapping]] = ..., rack_group: _Optional[_Union[RackGroup, _Mapping]] = ..., script_module: _Optional[_Union[ScriptModule, _Mapping]] = ..., virtual_machine_type: _Optional[_Union[VirtualMachineType, _Mapping]] = ..., user: _Optional[_Union[User, _Mapping]] = ...) -> None: ... + cooling_feed: CoolingFeed + cooling_intake: CoolingIntake + cooling_outflow: CoolingOutflow + cooling_source: CoolingSource + module_bay_type: ModuleBayType + def __init__(self, timestamp: _Optional[_Union[_timestamp_pb2.Timestamp, _Mapping]] = ..., asn: _Optional[_Union[ASN, _Mapping]] = ..., asn_range: _Optional[_Union[ASNRange, _Mapping]] = ..., aggregate: _Optional[_Union[Aggregate, _Mapping]] = ..., cable: _Optional[_Union[Cable, _Mapping]] = ..., cable_path: _Optional[_Union[CablePath, _Mapping]] = ..., cable_termination: _Optional[_Union[CableTermination, _Mapping]] = ..., circuit: _Optional[_Union[Circuit, _Mapping]] = ..., circuit_group: _Optional[_Union[CircuitGroup, _Mapping]] = ..., circuit_group_assignment: _Optional[_Union[CircuitGroupAssignment, _Mapping]] = ..., circuit_termination: _Optional[_Union[CircuitTermination, _Mapping]] = ..., circuit_type: _Optional[_Union[CircuitType, _Mapping]] = ..., cluster: _Optional[_Union[Cluster, _Mapping]] = ..., cluster_group: _Optional[_Union[ClusterGroup, _Mapping]] = ..., cluster_type: _Optional[_Union[ClusterType, _Mapping]] = ..., console_port: _Optional[_Union[ConsolePort, _Mapping]] = ..., console_server_port: _Optional[_Union[ConsoleServerPort, _Mapping]] = ..., contact: _Optional[_Union[Contact, _Mapping]] = ..., contact_assignment: _Optional[_Union[ContactAssignment, _Mapping]] = ..., contact_group: _Optional[_Union[ContactGroup, _Mapping]] = ..., contact_role: _Optional[_Union[ContactRole, _Mapping]] = ..., device: _Optional[_Union[Device, _Mapping]] = ..., device_bay: _Optional[_Union[DeviceBay, _Mapping]] = ..., device_role: _Optional[_Union[DeviceRole, _Mapping]] = ..., device_type: _Optional[_Union[DeviceType, _Mapping]] = ..., fhrp_group: _Optional[_Union[FHRPGroup, _Mapping]] = ..., fhrp_group_assignment: _Optional[_Union[FHRPGroupAssignment, _Mapping]] = ..., front_port: _Optional[_Union[FrontPort, _Mapping]] = ..., ike_policy: _Optional[_Union[IKEPolicy, _Mapping]] = ..., ike_proposal: _Optional[_Union[IKEProposal, _Mapping]] = ..., ip_address: _Optional[_Union[IPAddress, _Mapping]] = ..., ip_range: _Optional[_Union[IPRange, _Mapping]] = ..., ip_sec_policy: _Optional[_Union[IPSecPolicy, _Mapping]] = ..., ip_sec_profile: _Optional[_Union[IPSecProfile, _Mapping]] = ..., ip_sec_proposal: _Optional[_Union[IPSecProposal, _Mapping]] = ..., interface: _Optional[_Union[Interface, _Mapping]] = ..., inventory_item: _Optional[_Union[InventoryItem, _Mapping]] = ..., inventory_item_role: _Optional[_Union[InventoryItemRole, _Mapping]] = ..., l2vpn: _Optional[_Union[L2VPN, _Mapping]] = ..., l2vpn_termination: _Optional[_Union[L2VPNTermination, _Mapping]] = ..., location: _Optional[_Union[Location, _Mapping]] = ..., mac_address: _Optional[_Union[MACAddress, _Mapping]] = ..., manufacturer: _Optional[_Union[Manufacturer, _Mapping]] = ..., module: _Optional[_Union[Module, _Mapping]] = ..., module_bay: _Optional[_Union[ModuleBay, _Mapping]] = ..., module_type: _Optional[_Union[ModuleType, _Mapping]] = ..., platform: _Optional[_Union[Platform, _Mapping]] = ..., power_feed: _Optional[_Union[PowerFeed, _Mapping]] = ..., power_outlet: _Optional[_Union[PowerOutlet, _Mapping]] = ..., power_panel: _Optional[_Union[PowerPanel, _Mapping]] = ..., power_port: _Optional[_Union[PowerPort, _Mapping]] = ..., prefix: _Optional[_Union[Prefix, _Mapping]] = ..., provider: _Optional[_Union[Provider, _Mapping]] = ..., provider_account: _Optional[_Union[ProviderAccount, _Mapping]] = ..., provider_network: _Optional[_Union[ProviderNetwork, _Mapping]] = ..., rir: _Optional[_Union[RIR, _Mapping]] = ..., rack: _Optional[_Union[Rack, _Mapping]] = ..., rack_reservation: _Optional[_Union[RackReservation, _Mapping]] = ..., rack_role: _Optional[_Union[RackRole, _Mapping]] = ..., rack_type: _Optional[_Union[RackType, _Mapping]] = ..., rear_port: _Optional[_Union[RearPort, _Mapping]] = ..., region: _Optional[_Union[Region, _Mapping]] = ..., role: _Optional[_Union[Role, _Mapping]] = ..., route_target: _Optional[_Union[RouteTarget, _Mapping]] = ..., service: _Optional[_Union[Service, _Mapping]] = ..., site: _Optional[_Union[Site, _Mapping]] = ..., site_group: _Optional[_Union[SiteGroup, _Mapping]] = ..., tag: _Optional[_Union[Tag, _Mapping]] = ..., tenant: _Optional[_Union[Tenant, _Mapping]] = ..., tenant_group: _Optional[_Union[TenantGroup, _Mapping]] = ..., tunnel: _Optional[_Union[Tunnel, _Mapping]] = ..., tunnel_group: _Optional[_Union[TunnelGroup, _Mapping]] = ..., tunnel_termination: _Optional[_Union[TunnelTermination, _Mapping]] = ..., vlan: _Optional[_Union[VLAN, _Mapping]] = ..., vlan_group: _Optional[_Union[VLANGroup, _Mapping]] = ..., vlan_translation_policy: _Optional[_Union[VLANTranslationPolicy, _Mapping]] = ..., vlan_translation_rule: _Optional[_Union[VLANTranslationRule, _Mapping]] = ..., vm_interface: _Optional[_Union[VMInterface, _Mapping]] = ..., vrf: _Optional[_Union[VRF, _Mapping]] = ..., virtual_chassis: _Optional[_Union[VirtualChassis, _Mapping]] = ..., virtual_circuit: _Optional[_Union[VirtualCircuit, _Mapping]] = ..., virtual_circuit_termination: _Optional[_Union[VirtualCircuitTermination, _Mapping]] = ..., virtual_circuit_type: _Optional[_Union[VirtualCircuitType, _Mapping]] = ..., virtual_device_context: _Optional[_Union[VirtualDeviceContext, _Mapping]] = ..., virtual_disk: _Optional[_Union[VirtualDisk, _Mapping]] = ..., virtual_machine: _Optional[_Union[VirtualMachine, _Mapping]] = ..., wireless_lan: _Optional[_Union[WirelessLAN, _Mapping]] = ..., wireless_lan_group: _Optional[_Union[WirelessLANGroup, _Mapping]] = ..., wireless_link: _Optional[_Union[WirelessLink, _Mapping]] = ..., custom_field: _Optional[_Union[CustomField, _Mapping]] = ..., custom_field_choice_set: _Optional[_Union[CustomFieldChoiceSet, _Mapping]] = ..., journal_entry: _Optional[_Union[JournalEntry, _Mapping]] = ..., module_type_profile: _Optional[_Union[ModuleTypeProfile, _Mapping]] = ..., custom_link: _Optional[_Union[CustomLink, _Mapping]] = ..., owner: _Optional[_Union[Owner, _Mapping]] = ..., owner_group: _Optional[_Union[OwnerGroup, _Mapping]] = ..., device_config: _Optional[_Union[DeviceConfig, _Mapping]] = ..., cable_bundle: _Optional[_Union[CableBundle, _Mapping]] = ..., rack_group: _Optional[_Union[RackGroup, _Mapping]] = ..., script_module: _Optional[_Union[ScriptModule, _Mapping]] = ..., virtual_machine_type: _Optional[_Union[VirtualMachineType, _Mapping]] = ..., user: _Optional[_Union[User, _Mapping]] = ..., cooling_feed: _Optional[_Union[CoolingFeed, _Mapping]] = ..., cooling_intake: _Optional[_Union[CoolingIntake, _Mapping]] = ..., cooling_outflow: _Optional[_Union[CoolingOutflow, _Mapping]] = ..., cooling_source: _Optional[_Union[CoolingSource, _Mapping]] = ..., module_bay_type: _Optional[_Union[ModuleBayType, _Mapping]] = ...) -> None: ... class IngestRequest(_message.Message): __slots__ = ("stream", "entities", "id", "producer_app_name", "producer_app_version", "sdk_name", "sdk_version", "metadata") @@ -798,7 +808,7 @@ class Contact(_message.Message): def __init__(self, group: _Optional[_Union[ContactGroup, _Mapping]] = ..., name: _Optional[str] = ..., title: _Optional[str] = ..., phone: _Optional[str] = ..., email: _Optional[str] = ..., address: _Optional[str] = ..., link: _Optional[str] = ..., description: _Optional[str] = ..., comments: _Optional[str] = ..., tags: _Optional[_Iterable[_Union[Tag, _Mapping]]] = ..., custom_fields: _Optional[_Mapping[str, CustomFieldValue]] = ..., groups: _Optional[_Iterable[_Union[ContactGroup, _Mapping]]] = ..., metadata: _Optional[_Union[_struct_pb2.Struct, _Mapping]] = ..., owner: _Optional[_Union[Owner, _Mapping]] = ...) -> None: ... class ContactAssignment(_message.Message): - __slots__ = ("object_asn", "object_asn_range", "object_aggregate", "object_cable", "object_cable_path", "object_cable_termination", "object_circuit", "object_circuit_group", "object_circuit_group_assignment", "object_circuit_termination", "object_circuit_type", "object_cluster", "object_cluster_group", "object_cluster_type", "object_console_port", "object_console_server_port", "object_contact", "object_contact_assignment", "object_contact_group", "object_contact_role", "object_device", "object_device_bay", "object_device_role", "object_device_type", "object_fhrp_group", "object_fhrp_group_assignment", "object_front_port", "object_ike_policy", "object_ike_proposal", "object_ip_address", "object_ip_range", "object_ip_sec_policy", "object_ip_sec_profile", "object_ip_sec_proposal", "object_interface", "object_inventory_item", "object_inventory_item_role", "object_l2vpn", "object_l2vpn_termination", "object_location", "object_mac_address", "object_manufacturer", "object_module", "object_module_bay", "object_module_type", "object_platform", "object_power_feed", "object_power_outlet", "object_power_panel", "object_power_port", "object_prefix", "object_provider", "object_provider_account", "object_provider_network", "object_rir", "object_rack", "object_rack_reservation", "object_rack_role", "object_rack_type", "object_rear_port", "object_region", "object_role", "object_route_target", "object_service", "object_site", "object_site_group", "object_tag", "object_tenant", "object_tenant_group", "object_tunnel", "object_tunnel_group", "object_tunnel_termination", "object_vlan", "object_vlan_group", "object_vlan_translation_policy", "object_vlan_translation_rule", "object_vm_interface", "object_vrf", "object_virtual_chassis", "object_virtual_circuit", "object_virtual_circuit_termination", "object_virtual_circuit_type", "object_virtual_device_context", "object_virtual_disk", "object_virtual_machine", "object_wireless_lan", "object_wireless_lan_group", "object_wireless_link", "object_custom_field", "object_custom_field_choice_set", "object_journal_entry", "object_module_type_profile", "object_custom_link", "object_owner", "object_owner_group", "object_cable_bundle", "object_rack_group", "object_script_module", "object_virtual_machine_type", "object_user", "contact", "role", "priority", "tags", "custom_fields", "metadata") + __slots__ = ("object_asn", "object_asn_range", "object_aggregate", "object_cable", "object_cable_path", "object_cable_termination", "object_circuit", "object_circuit_group", "object_circuit_group_assignment", "object_circuit_termination", "object_circuit_type", "object_cluster", "object_cluster_group", "object_cluster_type", "object_console_port", "object_console_server_port", "object_contact", "object_contact_assignment", "object_contact_group", "object_contact_role", "object_device", "object_device_bay", "object_device_role", "object_device_type", "object_fhrp_group", "object_fhrp_group_assignment", "object_front_port", "object_ike_policy", "object_ike_proposal", "object_ip_address", "object_ip_range", "object_ip_sec_policy", "object_ip_sec_profile", "object_ip_sec_proposal", "object_interface", "object_inventory_item", "object_inventory_item_role", "object_l2vpn", "object_l2vpn_termination", "object_location", "object_mac_address", "object_manufacturer", "object_module", "object_module_bay", "object_module_type", "object_platform", "object_power_feed", "object_power_outlet", "object_power_panel", "object_power_port", "object_prefix", "object_provider", "object_provider_account", "object_provider_network", "object_rir", "object_rack", "object_rack_reservation", "object_rack_role", "object_rack_type", "object_rear_port", "object_region", "object_role", "object_route_target", "object_service", "object_site", "object_site_group", "object_tag", "object_tenant", "object_tenant_group", "object_tunnel", "object_tunnel_group", "object_tunnel_termination", "object_vlan", "object_vlan_group", "object_vlan_translation_policy", "object_vlan_translation_rule", "object_vm_interface", "object_vrf", "object_virtual_chassis", "object_virtual_circuit", "object_virtual_circuit_termination", "object_virtual_circuit_type", "object_virtual_device_context", "object_virtual_disk", "object_virtual_machine", "object_wireless_lan", "object_wireless_lan_group", "object_wireless_link", "object_custom_field", "object_custom_field_choice_set", "object_journal_entry", "object_module_type_profile", "object_custom_link", "object_owner", "object_owner_group", "object_cable_bundle", "object_rack_group", "object_script_module", "object_virtual_machine_type", "object_user", "object_cooling_feed", "object_cooling_intake", "object_cooling_outflow", "object_cooling_source", "object_module_bay_type", "contact", "role", "priority", "tags", "custom_fields", "metadata") class CustomFieldsEntry(_message.Message): __slots__ = ("key", "value") KEY_FIELD_NUMBER: _ClassVar[int] @@ -906,6 +916,11 @@ class ContactAssignment(_message.Message): OBJECT_SCRIPT_MODULE_FIELD_NUMBER: _ClassVar[int] OBJECT_VIRTUAL_MACHINE_TYPE_FIELD_NUMBER: _ClassVar[int] OBJECT_USER_FIELD_NUMBER: _ClassVar[int] + OBJECT_COOLING_FEED_FIELD_NUMBER: _ClassVar[int] + OBJECT_COOLING_INTAKE_FIELD_NUMBER: _ClassVar[int] + OBJECT_COOLING_OUTFLOW_FIELD_NUMBER: _ClassVar[int] + OBJECT_COOLING_SOURCE_FIELD_NUMBER: _ClassVar[int] + OBJECT_MODULE_BAY_TYPE_FIELD_NUMBER: _ClassVar[int] CONTACT_FIELD_NUMBER: _ClassVar[int] ROLE_FIELD_NUMBER: _ClassVar[int] PRIORITY_FIELD_NUMBER: _ClassVar[int] @@ -1012,13 +1027,18 @@ class ContactAssignment(_message.Message): object_script_module: ScriptModule object_virtual_machine_type: VirtualMachineType object_user: User + object_cooling_feed: CoolingFeed + object_cooling_intake: CoolingIntake + object_cooling_outflow: CoolingOutflow + object_cooling_source: CoolingSource + object_module_bay_type: ModuleBayType contact: Contact role: ContactRole priority: str tags: _containers.RepeatedCompositeFieldContainer[Tag] custom_fields: _containers.MessageMap[str, CustomFieldValue] metadata: _struct_pb2.Struct - def __init__(self, object_asn: _Optional[_Union[ASN, _Mapping]] = ..., object_asn_range: _Optional[_Union[ASNRange, _Mapping]] = ..., object_aggregate: _Optional[_Union[Aggregate, _Mapping]] = ..., object_cable: _Optional[_Union[Cable, _Mapping]] = ..., object_cable_path: _Optional[_Union[CablePath, _Mapping]] = ..., object_cable_termination: _Optional[_Union[CableTermination, _Mapping]] = ..., object_circuit: _Optional[_Union[Circuit, _Mapping]] = ..., object_circuit_group: _Optional[_Union[CircuitGroup, _Mapping]] = ..., object_circuit_group_assignment: _Optional[_Union[CircuitGroupAssignment, _Mapping]] = ..., object_circuit_termination: _Optional[_Union[CircuitTermination, _Mapping]] = ..., object_circuit_type: _Optional[_Union[CircuitType, _Mapping]] = ..., object_cluster: _Optional[_Union[Cluster, _Mapping]] = ..., object_cluster_group: _Optional[_Union[ClusterGroup, _Mapping]] = ..., object_cluster_type: _Optional[_Union[ClusterType, _Mapping]] = ..., object_console_port: _Optional[_Union[ConsolePort, _Mapping]] = ..., object_console_server_port: _Optional[_Union[ConsoleServerPort, _Mapping]] = ..., object_contact: _Optional[_Union[Contact, _Mapping]] = ..., object_contact_assignment: _Optional[_Union[ContactAssignment, _Mapping]] = ..., object_contact_group: _Optional[_Union[ContactGroup, _Mapping]] = ..., object_contact_role: _Optional[_Union[ContactRole, _Mapping]] = ..., object_device: _Optional[_Union[Device, _Mapping]] = ..., object_device_bay: _Optional[_Union[DeviceBay, _Mapping]] = ..., object_device_role: _Optional[_Union[DeviceRole, _Mapping]] = ..., object_device_type: _Optional[_Union[DeviceType, _Mapping]] = ..., object_fhrp_group: _Optional[_Union[FHRPGroup, _Mapping]] = ..., object_fhrp_group_assignment: _Optional[_Union[FHRPGroupAssignment, _Mapping]] = ..., object_front_port: _Optional[_Union[FrontPort, _Mapping]] = ..., object_ike_policy: _Optional[_Union[IKEPolicy, _Mapping]] = ..., object_ike_proposal: _Optional[_Union[IKEProposal, _Mapping]] = ..., object_ip_address: _Optional[_Union[IPAddress, _Mapping]] = ..., object_ip_range: _Optional[_Union[IPRange, _Mapping]] = ..., object_ip_sec_policy: _Optional[_Union[IPSecPolicy, _Mapping]] = ..., object_ip_sec_profile: _Optional[_Union[IPSecProfile, _Mapping]] = ..., object_ip_sec_proposal: _Optional[_Union[IPSecProposal, _Mapping]] = ..., object_interface: _Optional[_Union[Interface, _Mapping]] = ..., object_inventory_item: _Optional[_Union[InventoryItem, _Mapping]] = ..., object_inventory_item_role: _Optional[_Union[InventoryItemRole, _Mapping]] = ..., object_l2vpn: _Optional[_Union[L2VPN, _Mapping]] = ..., object_l2vpn_termination: _Optional[_Union[L2VPNTermination, _Mapping]] = ..., object_location: _Optional[_Union[Location, _Mapping]] = ..., object_mac_address: _Optional[_Union[MACAddress, _Mapping]] = ..., object_manufacturer: _Optional[_Union[Manufacturer, _Mapping]] = ..., object_module: _Optional[_Union[Module, _Mapping]] = ..., object_module_bay: _Optional[_Union[ModuleBay, _Mapping]] = ..., object_module_type: _Optional[_Union[ModuleType, _Mapping]] = ..., object_platform: _Optional[_Union[Platform, _Mapping]] = ..., object_power_feed: _Optional[_Union[PowerFeed, _Mapping]] = ..., object_power_outlet: _Optional[_Union[PowerOutlet, _Mapping]] = ..., object_power_panel: _Optional[_Union[PowerPanel, _Mapping]] = ..., object_power_port: _Optional[_Union[PowerPort, _Mapping]] = ..., object_prefix: _Optional[_Union[Prefix, _Mapping]] = ..., object_provider: _Optional[_Union[Provider, _Mapping]] = ..., object_provider_account: _Optional[_Union[ProviderAccount, _Mapping]] = ..., object_provider_network: _Optional[_Union[ProviderNetwork, _Mapping]] = ..., object_rir: _Optional[_Union[RIR, _Mapping]] = ..., object_rack: _Optional[_Union[Rack, _Mapping]] = ..., object_rack_reservation: _Optional[_Union[RackReservation, _Mapping]] = ..., object_rack_role: _Optional[_Union[RackRole, _Mapping]] = ..., object_rack_type: _Optional[_Union[RackType, _Mapping]] = ..., object_rear_port: _Optional[_Union[RearPort, _Mapping]] = ..., object_region: _Optional[_Union[Region, _Mapping]] = ..., object_role: _Optional[_Union[Role, _Mapping]] = ..., object_route_target: _Optional[_Union[RouteTarget, _Mapping]] = ..., object_service: _Optional[_Union[Service, _Mapping]] = ..., object_site: _Optional[_Union[Site, _Mapping]] = ..., object_site_group: _Optional[_Union[SiteGroup, _Mapping]] = ..., object_tag: _Optional[_Union[Tag, _Mapping]] = ..., object_tenant: _Optional[_Union[Tenant, _Mapping]] = ..., object_tenant_group: _Optional[_Union[TenantGroup, _Mapping]] = ..., object_tunnel: _Optional[_Union[Tunnel, _Mapping]] = ..., object_tunnel_group: _Optional[_Union[TunnelGroup, _Mapping]] = ..., object_tunnel_termination: _Optional[_Union[TunnelTermination, _Mapping]] = ..., object_vlan: _Optional[_Union[VLAN, _Mapping]] = ..., object_vlan_group: _Optional[_Union[VLANGroup, _Mapping]] = ..., object_vlan_translation_policy: _Optional[_Union[VLANTranslationPolicy, _Mapping]] = ..., object_vlan_translation_rule: _Optional[_Union[VLANTranslationRule, _Mapping]] = ..., object_vm_interface: _Optional[_Union[VMInterface, _Mapping]] = ..., object_vrf: _Optional[_Union[VRF, _Mapping]] = ..., object_virtual_chassis: _Optional[_Union[VirtualChassis, _Mapping]] = ..., object_virtual_circuit: _Optional[_Union[VirtualCircuit, _Mapping]] = ..., object_virtual_circuit_termination: _Optional[_Union[VirtualCircuitTermination, _Mapping]] = ..., object_virtual_circuit_type: _Optional[_Union[VirtualCircuitType, _Mapping]] = ..., object_virtual_device_context: _Optional[_Union[VirtualDeviceContext, _Mapping]] = ..., object_virtual_disk: _Optional[_Union[VirtualDisk, _Mapping]] = ..., object_virtual_machine: _Optional[_Union[VirtualMachine, _Mapping]] = ..., object_wireless_lan: _Optional[_Union[WirelessLAN, _Mapping]] = ..., object_wireless_lan_group: _Optional[_Union[WirelessLANGroup, _Mapping]] = ..., object_wireless_link: _Optional[_Union[WirelessLink, _Mapping]] = ..., object_custom_field: _Optional[_Union[CustomField, _Mapping]] = ..., object_custom_field_choice_set: _Optional[_Union[CustomFieldChoiceSet, _Mapping]] = ..., object_journal_entry: _Optional[_Union[JournalEntry, _Mapping]] = ..., object_module_type_profile: _Optional[_Union[ModuleTypeProfile, _Mapping]] = ..., object_custom_link: _Optional[_Union[CustomLink, _Mapping]] = ..., object_owner: _Optional[_Union[Owner, _Mapping]] = ..., object_owner_group: _Optional[_Union[OwnerGroup, _Mapping]] = ..., object_cable_bundle: _Optional[_Union[CableBundle, _Mapping]] = ..., object_rack_group: _Optional[_Union[RackGroup, _Mapping]] = ..., object_script_module: _Optional[_Union[ScriptModule, _Mapping]] = ..., object_virtual_machine_type: _Optional[_Union[VirtualMachineType, _Mapping]] = ..., object_user: _Optional[_Union[User, _Mapping]] = ..., contact: _Optional[_Union[Contact, _Mapping]] = ..., role: _Optional[_Union[ContactRole, _Mapping]] = ..., priority: _Optional[str] = ..., tags: _Optional[_Iterable[_Union[Tag, _Mapping]]] = ..., custom_fields: _Optional[_Mapping[str, CustomFieldValue]] = ..., metadata: _Optional[_Union[_struct_pb2.Struct, _Mapping]] = ...) -> None: ... + def __init__(self, object_asn: _Optional[_Union[ASN, _Mapping]] = ..., object_asn_range: _Optional[_Union[ASNRange, _Mapping]] = ..., object_aggregate: _Optional[_Union[Aggregate, _Mapping]] = ..., object_cable: _Optional[_Union[Cable, _Mapping]] = ..., object_cable_path: _Optional[_Union[CablePath, _Mapping]] = ..., object_cable_termination: _Optional[_Union[CableTermination, _Mapping]] = ..., object_circuit: _Optional[_Union[Circuit, _Mapping]] = ..., object_circuit_group: _Optional[_Union[CircuitGroup, _Mapping]] = ..., object_circuit_group_assignment: _Optional[_Union[CircuitGroupAssignment, _Mapping]] = ..., object_circuit_termination: _Optional[_Union[CircuitTermination, _Mapping]] = ..., object_circuit_type: _Optional[_Union[CircuitType, _Mapping]] = ..., object_cluster: _Optional[_Union[Cluster, _Mapping]] = ..., object_cluster_group: _Optional[_Union[ClusterGroup, _Mapping]] = ..., object_cluster_type: _Optional[_Union[ClusterType, _Mapping]] = ..., object_console_port: _Optional[_Union[ConsolePort, _Mapping]] = ..., object_console_server_port: _Optional[_Union[ConsoleServerPort, _Mapping]] = ..., object_contact: _Optional[_Union[Contact, _Mapping]] = ..., object_contact_assignment: _Optional[_Union[ContactAssignment, _Mapping]] = ..., object_contact_group: _Optional[_Union[ContactGroup, _Mapping]] = ..., object_contact_role: _Optional[_Union[ContactRole, _Mapping]] = ..., object_device: _Optional[_Union[Device, _Mapping]] = ..., object_device_bay: _Optional[_Union[DeviceBay, _Mapping]] = ..., object_device_role: _Optional[_Union[DeviceRole, _Mapping]] = ..., object_device_type: _Optional[_Union[DeviceType, _Mapping]] = ..., object_fhrp_group: _Optional[_Union[FHRPGroup, _Mapping]] = ..., object_fhrp_group_assignment: _Optional[_Union[FHRPGroupAssignment, _Mapping]] = ..., object_front_port: _Optional[_Union[FrontPort, _Mapping]] = ..., object_ike_policy: _Optional[_Union[IKEPolicy, _Mapping]] = ..., object_ike_proposal: _Optional[_Union[IKEProposal, _Mapping]] = ..., object_ip_address: _Optional[_Union[IPAddress, _Mapping]] = ..., object_ip_range: _Optional[_Union[IPRange, _Mapping]] = ..., object_ip_sec_policy: _Optional[_Union[IPSecPolicy, _Mapping]] = ..., object_ip_sec_profile: _Optional[_Union[IPSecProfile, _Mapping]] = ..., object_ip_sec_proposal: _Optional[_Union[IPSecProposal, _Mapping]] = ..., object_interface: _Optional[_Union[Interface, _Mapping]] = ..., object_inventory_item: _Optional[_Union[InventoryItem, _Mapping]] = ..., object_inventory_item_role: _Optional[_Union[InventoryItemRole, _Mapping]] = ..., object_l2vpn: _Optional[_Union[L2VPN, _Mapping]] = ..., object_l2vpn_termination: _Optional[_Union[L2VPNTermination, _Mapping]] = ..., object_location: _Optional[_Union[Location, _Mapping]] = ..., object_mac_address: _Optional[_Union[MACAddress, _Mapping]] = ..., object_manufacturer: _Optional[_Union[Manufacturer, _Mapping]] = ..., object_module: _Optional[_Union[Module, _Mapping]] = ..., object_module_bay: _Optional[_Union[ModuleBay, _Mapping]] = ..., object_module_type: _Optional[_Union[ModuleType, _Mapping]] = ..., object_platform: _Optional[_Union[Platform, _Mapping]] = ..., object_power_feed: _Optional[_Union[PowerFeed, _Mapping]] = ..., object_power_outlet: _Optional[_Union[PowerOutlet, _Mapping]] = ..., object_power_panel: _Optional[_Union[PowerPanel, _Mapping]] = ..., object_power_port: _Optional[_Union[PowerPort, _Mapping]] = ..., object_prefix: _Optional[_Union[Prefix, _Mapping]] = ..., object_provider: _Optional[_Union[Provider, _Mapping]] = ..., object_provider_account: _Optional[_Union[ProviderAccount, _Mapping]] = ..., object_provider_network: _Optional[_Union[ProviderNetwork, _Mapping]] = ..., object_rir: _Optional[_Union[RIR, _Mapping]] = ..., object_rack: _Optional[_Union[Rack, _Mapping]] = ..., object_rack_reservation: _Optional[_Union[RackReservation, _Mapping]] = ..., object_rack_role: _Optional[_Union[RackRole, _Mapping]] = ..., object_rack_type: _Optional[_Union[RackType, _Mapping]] = ..., object_rear_port: _Optional[_Union[RearPort, _Mapping]] = ..., object_region: _Optional[_Union[Region, _Mapping]] = ..., object_role: _Optional[_Union[Role, _Mapping]] = ..., object_route_target: _Optional[_Union[RouteTarget, _Mapping]] = ..., object_service: _Optional[_Union[Service, _Mapping]] = ..., object_site: _Optional[_Union[Site, _Mapping]] = ..., object_site_group: _Optional[_Union[SiteGroup, _Mapping]] = ..., object_tag: _Optional[_Union[Tag, _Mapping]] = ..., object_tenant: _Optional[_Union[Tenant, _Mapping]] = ..., object_tenant_group: _Optional[_Union[TenantGroup, _Mapping]] = ..., object_tunnel: _Optional[_Union[Tunnel, _Mapping]] = ..., object_tunnel_group: _Optional[_Union[TunnelGroup, _Mapping]] = ..., object_tunnel_termination: _Optional[_Union[TunnelTermination, _Mapping]] = ..., object_vlan: _Optional[_Union[VLAN, _Mapping]] = ..., object_vlan_group: _Optional[_Union[VLANGroup, _Mapping]] = ..., object_vlan_translation_policy: _Optional[_Union[VLANTranslationPolicy, _Mapping]] = ..., object_vlan_translation_rule: _Optional[_Union[VLANTranslationRule, _Mapping]] = ..., object_vm_interface: _Optional[_Union[VMInterface, _Mapping]] = ..., object_vrf: _Optional[_Union[VRF, _Mapping]] = ..., object_virtual_chassis: _Optional[_Union[VirtualChassis, _Mapping]] = ..., object_virtual_circuit: _Optional[_Union[VirtualCircuit, _Mapping]] = ..., object_virtual_circuit_termination: _Optional[_Union[VirtualCircuitTermination, _Mapping]] = ..., object_virtual_circuit_type: _Optional[_Union[VirtualCircuitType, _Mapping]] = ..., object_virtual_device_context: _Optional[_Union[VirtualDeviceContext, _Mapping]] = ..., object_virtual_disk: _Optional[_Union[VirtualDisk, _Mapping]] = ..., object_virtual_machine: _Optional[_Union[VirtualMachine, _Mapping]] = ..., object_wireless_lan: _Optional[_Union[WirelessLAN, _Mapping]] = ..., object_wireless_lan_group: _Optional[_Union[WirelessLANGroup, _Mapping]] = ..., object_wireless_link: _Optional[_Union[WirelessLink, _Mapping]] = ..., object_custom_field: _Optional[_Union[CustomField, _Mapping]] = ..., object_custom_field_choice_set: _Optional[_Union[CustomFieldChoiceSet, _Mapping]] = ..., object_journal_entry: _Optional[_Union[JournalEntry, _Mapping]] = ..., object_module_type_profile: _Optional[_Union[ModuleTypeProfile, _Mapping]] = ..., object_custom_link: _Optional[_Union[CustomLink, _Mapping]] = ..., object_owner: _Optional[_Union[Owner, _Mapping]] = ..., object_owner_group: _Optional[_Union[OwnerGroup, _Mapping]] = ..., object_cable_bundle: _Optional[_Union[CableBundle, _Mapping]] = ..., object_rack_group: _Optional[_Union[RackGroup, _Mapping]] = ..., object_script_module: _Optional[_Union[ScriptModule, _Mapping]] = ..., object_virtual_machine_type: _Optional[_Union[VirtualMachineType, _Mapping]] = ..., object_user: _Optional[_Union[User, _Mapping]] = ..., object_cooling_feed: _Optional[_Union[CoolingFeed, _Mapping]] = ..., object_cooling_intake: _Optional[_Union[CoolingIntake, _Mapping]] = ..., object_cooling_outflow: _Optional[_Union[CoolingOutflow, _Mapping]] = ..., object_cooling_source: _Optional[_Union[CoolingSource, _Mapping]] = ..., object_module_bay_type: _Optional[_Union[ModuleBayType, _Mapping]] = ..., contact: _Optional[_Union[Contact, _Mapping]] = ..., role: _Optional[_Union[ContactRole, _Mapping]] = ..., priority: _Optional[str] = ..., tags: _Optional[_Iterable[_Union[Tag, _Mapping]]] = ..., custom_fields: _Optional[_Mapping[str, CustomFieldValue]] = ..., metadata: _Optional[_Union[_struct_pb2.Struct, _Mapping]] = ...) -> None: ... class ContactGroup(_message.Message): __slots__ = ("name", "slug", "parent", "description", "tags", "custom_fields", "comments", "metadata", "owner") @@ -1077,7 +1097,7 @@ class ContactRole(_message.Message): def __init__(self, name: _Optional[str] = ..., slug: _Optional[str] = ..., description: _Optional[str] = ..., tags: _Optional[_Iterable[_Union[Tag, _Mapping]]] = ..., custom_fields: _Optional[_Mapping[str, CustomFieldValue]] = ..., metadata: _Optional[_Union[_struct_pb2.Struct, _Mapping]] = ..., owner: _Optional[_Union[Owner, _Mapping]] = ..., comments: _Optional[str] = ...) -> None: ... class CustomFieldObjectReference(_message.Message): - __slots__ = ("asn", "asn_range", "aggregate", "cable", "cable_path", "cable_termination", "circuit", "circuit_group", "circuit_group_assignment", "circuit_termination", "circuit_type", "cluster", "cluster_group", "cluster_type", "console_port", "console_server_port", "contact", "contact_assignment", "contact_group", "contact_role", "device", "device_bay", "device_role", "device_type", "fhrp_group", "fhrp_group_assignment", "front_port", "ike_policy", "ike_proposal", "ip_address", "ip_range", "ip_sec_policy", "ip_sec_profile", "ip_sec_proposal", "interface", "inventory_item", "inventory_item_role", "l2vpn", "l2vpn_termination", "location", "mac_address", "manufacturer", "module", "module_bay", "module_type", "platform", "power_feed", "power_outlet", "power_panel", "power_port", "prefix", "provider", "provider_account", "provider_network", "rir", "rack", "rack_reservation", "rack_role", "rack_type", "rear_port", "region", "role", "route_target", "service", "site", "site_group", "tag", "tenant", "tenant_group", "tunnel", "tunnel_group", "tunnel_termination", "vlan", "vlan_group", "vlan_translation_policy", "vlan_translation_rule", "vm_interface", "vrf", "virtual_chassis", "virtual_circuit", "virtual_circuit_termination", "virtual_circuit_type", "virtual_device_context", "virtual_disk", "virtual_machine", "wireless_lan", "wireless_lan_group", "wireless_link", "custom_field", "custom_field_choice_set", "journal_entry", "module_type_profile", "custom_link", "owner", "owner_group", "cable_bundle", "rack_group", "script_module", "virtual_machine_type", "user") + __slots__ = ("asn", "asn_range", "aggregate", "cable", "cable_path", "cable_termination", "circuit", "circuit_group", "circuit_group_assignment", "circuit_termination", "circuit_type", "cluster", "cluster_group", "cluster_type", "console_port", "console_server_port", "contact", "contact_assignment", "contact_group", "contact_role", "device", "device_bay", "device_role", "device_type", "fhrp_group", "fhrp_group_assignment", "front_port", "ike_policy", "ike_proposal", "ip_address", "ip_range", "ip_sec_policy", "ip_sec_profile", "ip_sec_proposal", "interface", "inventory_item", "inventory_item_role", "l2vpn", "l2vpn_termination", "location", "mac_address", "manufacturer", "module", "module_bay", "module_type", "platform", "power_feed", "power_outlet", "power_panel", "power_port", "prefix", "provider", "provider_account", "provider_network", "rir", "rack", "rack_reservation", "rack_role", "rack_type", "rear_port", "region", "role", "route_target", "service", "site", "site_group", "tag", "tenant", "tenant_group", "tunnel", "tunnel_group", "tunnel_termination", "vlan", "vlan_group", "vlan_translation_policy", "vlan_translation_rule", "vm_interface", "vrf", "virtual_chassis", "virtual_circuit", "virtual_circuit_termination", "virtual_circuit_type", "virtual_device_context", "virtual_disk", "virtual_machine", "wireless_lan", "wireless_lan_group", "wireless_link", "custom_field", "custom_field_choice_set", "journal_entry", "module_type_profile", "custom_link", "owner", "owner_group", "cable_bundle", "rack_group", "script_module", "virtual_machine_type", "user", "cooling_feed", "cooling_intake", "cooling_outflow", "cooling_source", "module_bay_type") ASN_FIELD_NUMBER: _ClassVar[int] ASN_RANGE_FIELD_NUMBER: _ClassVar[int] AGGREGATE_FIELD_NUMBER: _ClassVar[int] @@ -1178,6 +1198,11 @@ class CustomFieldObjectReference(_message.Message): SCRIPT_MODULE_FIELD_NUMBER: _ClassVar[int] VIRTUAL_MACHINE_TYPE_FIELD_NUMBER: _ClassVar[int] USER_FIELD_NUMBER: _ClassVar[int] + COOLING_FEED_FIELD_NUMBER: _ClassVar[int] + COOLING_INTAKE_FIELD_NUMBER: _ClassVar[int] + COOLING_OUTFLOW_FIELD_NUMBER: _ClassVar[int] + COOLING_SOURCE_FIELD_NUMBER: _ClassVar[int] + MODULE_BAY_TYPE_FIELD_NUMBER: _ClassVar[int] asn: ASN asn_range: ASNRange aggregate: Aggregate @@ -1278,7 +1303,12 @@ class CustomFieldObjectReference(_message.Message): script_module: ScriptModule virtual_machine_type: VirtualMachineType user: User - def __init__(self, asn: _Optional[_Union[ASN, _Mapping]] = ..., asn_range: _Optional[_Union[ASNRange, _Mapping]] = ..., aggregate: _Optional[_Union[Aggregate, _Mapping]] = ..., cable: _Optional[_Union[Cable, _Mapping]] = ..., cable_path: _Optional[_Union[CablePath, _Mapping]] = ..., cable_termination: _Optional[_Union[CableTermination, _Mapping]] = ..., circuit: _Optional[_Union[Circuit, _Mapping]] = ..., circuit_group: _Optional[_Union[CircuitGroup, _Mapping]] = ..., circuit_group_assignment: _Optional[_Union[CircuitGroupAssignment, _Mapping]] = ..., circuit_termination: _Optional[_Union[CircuitTermination, _Mapping]] = ..., circuit_type: _Optional[_Union[CircuitType, _Mapping]] = ..., cluster: _Optional[_Union[Cluster, _Mapping]] = ..., cluster_group: _Optional[_Union[ClusterGroup, _Mapping]] = ..., cluster_type: _Optional[_Union[ClusterType, _Mapping]] = ..., console_port: _Optional[_Union[ConsolePort, _Mapping]] = ..., console_server_port: _Optional[_Union[ConsoleServerPort, _Mapping]] = ..., contact: _Optional[_Union[Contact, _Mapping]] = ..., contact_assignment: _Optional[_Union[ContactAssignment, _Mapping]] = ..., contact_group: _Optional[_Union[ContactGroup, _Mapping]] = ..., contact_role: _Optional[_Union[ContactRole, _Mapping]] = ..., device: _Optional[_Union[Device, _Mapping]] = ..., device_bay: _Optional[_Union[DeviceBay, _Mapping]] = ..., device_role: _Optional[_Union[DeviceRole, _Mapping]] = ..., device_type: _Optional[_Union[DeviceType, _Mapping]] = ..., fhrp_group: _Optional[_Union[FHRPGroup, _Mapping]] = ..., fhrp_group_assignment: _Optional[_Union[FHRPGroupAssignment, _Mapping]] = ..., front_port: _Optional[_Union[FrontPort, _Mapping]] = ..., ike_policy: _Optional[_Union[IKEPolicy, _Mapping]] = ..., ike_proposal: _Optional[_Union[IKEProposal, _Mapping]] = ..., ip_address: _Optional[_Union[IPAddress, _Mapping]] = ..., ip_range: _Optional[_Union[IPRange, _Mapping]] = ..., ip_sec_policy: _Optional[_Union[IPSecPolicy, _Mapping]] = ..., ip_sec_profile: _Optional[_Union[IPSecProfile, _Mapping]] = ..., ip_sec_proposal: _Optional[_Union[IPSecProposal, _Mapping]] = ..., interface: _Optional[_Union[Interface, _Mapping]] = ..., inventory_item: _Optional[_Union[InventoryItem, _Mapping]] = ..., inventory_item_role: _Optional[_Union[InventoryItemRole, _Mapping]] = ..., l2vpn: _Optional[_Union[L2VPN, _Mapping]] = ..., l2vpn_termination: _Optional[_Union[L2VPNTermination, _Mapping]] = ..., location: _Optional[_Union[Location, _Mapping]] = ..., mac_address: _Optional[_Union[MACAddress, _Mapping]] = ..., manufacturer: _Optional[_Union[Manufacturer, _Mapping]] = ..., module: _Optional[_Union[Module, _Mapping]] = ..., module_bay: _Optional[_Union[ModuleBay, _Mapping]] = ..., module_type: _Optional[_Union[ModuleType, _Mapping]] = ..., platform: _Optional[_Union[Platform, _Mapping]] = ..., power_feed: _Optional[_Union[PowerFeed, _Mapping]] = ..., power_outlet: _Optional[_Union[PowerOutlet, _Mapping]] = ..., power_panel: _Optional[_Union[PowerPanel, _Mapping]] = ..., power_port: _Optional[_Union[PowerPort, _Mapping]] = ..., prefix: _Optional[_Union[Prefix, _Mapping]] = ..., provider: _Optional[_Union[Provider, _Mapping]] = ..., provider_account: _Optional[_Union[ProviderAccount, _Mapping]] = ..., provider_network: _Optional[_Union[ProviderNetwork, _Mapping]] = ..., rir: _Optional[_Union[RIR, _Mapping]] = ..., rack: _Optional[_Union[Rack, _Mapping]] = ..., rack_reservation: _Optional[_Union[RackReservation, _Mapping]] = ..., rack_role: _Optional[_Union[RackRole, _Mapping]] = ..., rack_type: _Optional[_Union[RackType, _Mapping]] = ..., rear_port: _Optional[_Union[RearPort, _Mapping]] = ..., region: _Optional[_Union[Region, _Mapping]] = ..., role: _Optional[_Union[Role, _Mapping]] = ..., route_target: _Optional[_Union[RouteTarget, _Mapping]] = ..., service: _Optional[_Union[Service, _Mapping]] = ..., site: _Optional[_Union[Site, _Mapping]] = ..., site_group: _Optional[_Union[SiteGroup, _Mapping]] = ..., tag: _Optional[_Union[Tag, _Mapping]] = ..., tenant: _Optional[_Union[Tenant, _Mapping]] = ..., tenant_group: _Optional[_Union[TenantGroup, _Mapping]] = ..., tunnel: _Optional[_Union[Tunnel, _Mapping]] = ..., tunnel_group: _Optional[_Union[TunnelGroup, _Mapping]] = ..., tunnel_termination: _Optional[_Union[TunnelTermination, _Mapping]] = ..., vlan: _Optional[_Union[VLAN, _Mapping]] = ..., vlan_group: _Optional[_Union[VLANGroup, _Mapping]] = ..., vlan_translation_policy: _Optional[_Union[VLANTranslationPolicy, _Mapping]] = ..., vlan_translation_rule: _Optional[_Union[VLANTranslationRule, _Mapping]] = ..., vm_interface: _Optional[_Union[VMInterface, _Mapping]] = ..., vrf: _Optional[_Union[VRF, _Mapping]] = ..., virtual_chassis: _Optional[_Union[VirtualChassis, _Mapping]] = ..., virtual_circuit: _Optional[_Union[VirtualCircuit, _Mapping]] = ..., virtual_circuit_termination: _Optional[_Union[VirtualCircuitTermination, _Mapping]] = ..., virtual_circuit_type: _Optional[_Union[VirtualCircuitType, _Mapping]] = ..., virtual_device_context: _Optional[_Union[VirtualDeviceContext, _Mapping]] = ..., virtual_disk: _Optional[_Union[VirtualDisk, _Mapping]] = ..., virtual_machine: _Optional[_Union[VirtualMachine, _Mapping]] = ..., wireless_lan: _Optional[_Union[WirelessLAN, _Mapping]] = ..., wireless_lan_group: _Optional[_Union[WirelessLANGroup, _Mapping]] = ..., wireless_link: _Optional[_Union[WirelessLink, _Mapping]] = ..., custom_field: _Optional[_Union[CustomField, _Mapping]] = ..., custom_field_choice_set: _Optional[_Union[CustomFieldChoiceSet, _Mapping]] = ..., journal_entry: _Optional[_Union[JournalEntry, _Mapping]] = ..., module_type_profile: _Optional[_Union[ModuleTypeProfile, _Mapping]] = ..., custom_link: _Optional[_Union[CustomLink, _Mapping]] = ..., owner: _Optional[_Union[Owner, _Mapping]] = ..., owner_group: _Optional[_Union[OwnerGroup, _Mapping]] = ..., cable_bundle: _Optional[_Union[CableBundle, _Mapping]] = ..., rack_group: _Optional[_Union[RackGroup, _Mapping]] = ..., script_module: _Optional[_Union[ScriptModule, _Mapping]] = ..., virtual_machine_type: _Optional[_Union[VirtualMachineType, _Mapping]] = ..., user: _Optional[_Union[User, _Mapping]] = ...) -> None: ... + cooling_feed: CoolingFeed + cooling_intake: CoolingIntake + cooling_outflow: CoolingOutflow + cooling_source: CoolingSource + module_bay_type: ModuleBayType + def __init__(self, asn: _Optional[_Union[ASN, _Mapping]] = ..., asn_range: _Optional[_Union[ASNRange, _Mapping]] = ..., aggregate: _Optional[_Union[Aggregate, _Mapping]] = ..., cable: _Optional[_Union[Cable, _Mapping]] = ..., cable_path: _Optional[_Union[CablePath, _Mapping]] = ..., cable_termination: _Optional[_Union[CableTermination, _Mapping]] = ..., circuit: _Optional[_Union[Circuit, _Mapping]] = ..., circuit_group: _Optional[_Union[CircuitGroup, _Mapping]] = ..., circuit_group_assignment: _Optional[_Union[CircuitGroupAssignment, _Mapping]] = ..., circuit_termination: _Optional[_Union[CircuitTermination, _Mapping]] = ..., circuit_type: _Optional[_Union[CircuitType, _Mapping]] = ..., cluster: _Optional[_Union[Cluster, _Mapping]] = ..., cluster_group: _Optional[_Union[ClusterGroup, _Mapping]] = ..., cluster_type: _Optional[_Union[ClusterType, _Mapping]] = ..., console_port: _Optional[_Union[ConsolePort, _Mapping]] = ..., console_server_port: _Optional[_Union[ConsoleServerPort, _Mapping]] = ..., contact: _Optional[_Union[Contact, _Mapping]] = ..., contact_assignment: _Optional[_Union[ContactAssignment, _Mapping]] = ..., contact_group: _Optional[_Union[ContactGroup, _Mapping]] = ..., contact_role: _Optional[_Union[ContactRole, _Mapping]] = ..., device: _Optional[_Union[Device, _Mapping]] = ..., device_bay: _Optional[_Union[DeviceBay, _Mapping]] = ..., device_role: _Optional[_Union[DeviceRole, _Mapping]] = ..., device_type: _Optional[_Union[DeviceType, _Mapping]] = ..., fhrp_group: _Optional[_Union[FHRPGroup, _Mapping]] = ..., fhrp_group_assignment: _Optional[_Union[FHRPGroupAssignment, _Mapping]] = ..., front_port: _Optional[_Union[FrontPort, _Mapping]] = ..., ike_policy: _Optional[_Union[IKEPolicy, _Mapping]] = ..., ike_proposal: _Optional[_Union[IKEProposal, _Mapping]] = ..., ip_address: _Optional[_Union[IPAddress, _Mapping]] = ..., ip_range: _Optional[_Union[IPRange, _Mapping]] = ..., ip_sec_policy: _Optional[_Union[IPSecPolicy, _Mapping]] = ..., ip_sec_profile: _Optional[_Union[IPSecProfile, _Mapping]] = ..., ip_sec_proposal: _Optional[_Union[IPSecProposal, _Mapping]] = ..., interface: _Optional[_Union[Interface, _Mapping]] = ..., inventory_item: _Optional[_Union[InventoryItem, _Mapping]] = ..., inventory_item_role: _Optional[_Union[InventoryItemRole, _Mapping]] = ..., l2vpn: _Optional[_Union[L2VPN, _Mapping]] = ..., l2vpn_termination: _Optional[_Union[L2VPNTermination, _Mapping]] = ..., location: _Optional[_Union[Location, _Mapping]] = ..., mac_address: _Optional[_Union[MACAddress, _Mapping]] = ..., manufacturer: _Optional[_Union[Manufacturer, _Mapping]] = ..., module: _Optional[_Union[Module, _Mapping]] = ..., module_bay: _Optional[_Union[ModuleBay, _Mapping]] = ..., module_type: _Optional[_Union[ModuleType, _Mapping]] = ..., platform: _Optional[_Union[Platform, _Mapping]] = ..., power_feed: _Optional[_Union[PowerFeed, _Mapping]] = ..., power_outlet: _Optional[_Union[PowerOutlet, _Mapping]] = ..., power_panel: _Optional[_Union[PowerPanel, _Mapping]] = ..., power_port: _Optional[_Union[PowerPort, _Mapping]] = ..., prefix: _Optional[_Union[Prefix, _Mapping]] = ..., provider: _Optional[_Union[Provider, _Mapping]] = ..., provider_account: _Optional[_Union[ProviderAccount, _Mapping]] = ..., provider_network: _Optional[_Union[ProviderNetwork, _Mapping]] = ..., rir: _Optional[_Union[RIR, _Mapping]] = ..., rack: _Optional[_Union[Rack, _Mapping]] = ..., rack_reservation: _Optional[_Union[RackReservation, _Mapping]] = ..., rack_role: _Optional[_Union[RackRole, _Mapping]] = ..., rack_type: _Optional[_Union[RackType, _Mapping]] = ..., rear_port: _Optional[_Union[RearPort, _Mapping]] = ..., region: _Optional[_Union[Region, _Mapping]] = ..., role: _Optional[_Union[Role, _Mapping]] = ..., route_target: _Optional[_Union[RouteTarget, _Mapping]] = ..., service: _Optional[_Union[Service, _Mapping]] = ..., site: _Optional[_Union[Site, _Mapping]] = ..., site_group: _Optional[_Union[SiteGroup, _Mapping]] = ..., tag: _Optional[_Union[Tag, _Mapping]] = ..., tenant: _Optional[_Union[Tenant, _Mapping]] = ..., tenant_group: _Optional[_Union[TenantGroup, _Mapping]] = ..., tunnel: _Optional[_Union[Tunnel, _Mapping]] = ..., tunnel_group: _Optional[_Union[TunnelGroup, _Mapping]] = ..., tunnel_termination: _Optional[_Union[TunnelTermination, _Mapping]] = ..., vlan: _Optional[_Union[VLAN, _Mapping]] = ..., vlan_group: _Optional[_Union[VLANGroup, _Mapping]] = ..., vlan_translation_policy: _Optional[_Union[VLANTranslationPolicy, _Mapping]] = ..., vlan_translation_rule: _Optional[_Union[VLANTranslationRule, _Mapping]] = ..., vm_interface: _Optional[_Union[VMInterface, _Mapping]] = ..., vrf: _Optional[_Union[VRF, _Mapping]] = ..., virtual_chassis: _Optional[_Union[VirtualChassis, _Mapping]] = ..., virtual_circuit: _Optional[_Union[VirtualCircuit, _Mapping]] = ..., virtual_circuit_termination: _Optional[_Union[VirtualCircuitTermination, _Mapping]] = ..., virtual_circuit_type: _Optional[_Union[VirtualCircuitType, _Mapping]] = ..., virtual_device_context: _Optional[_Union[VirtualDeviceContext, _Mapping]] = ..., virtual_disk: _Optional[_Union[VirtualDisk, _Mapping]] = ..., virtual_machine: _Optional[_Union[VirtualMachine, _Mapping]] = ..., wireless_lan: _Optional[_Union[WirelessLAN, _Mapping]] = ..., wireless_lan_group: _Optional[_Union[WirelessLANGroup, _Mapping]] = ..., wireless_link: _Optional[_Union[WirelessLink, _Mapping]] = ..., custom_field: _Optional[_Union[CustomField, _Mapping]] = ..., custom_field_choice_set: _Optional[_Union[CustomFieldChoiceSet, _Mapping]] = ..., journal_entry: _Optional[_Union[JournalEntry, _Mapping]] = ..., module_type_profile: _Optional[_Union[ModuleTypeProfile, _Mapping]] = ..., custom_link: _Optional[_Union[CustomLink, _Mapping]] = ..., owner: _Optional[_Union[Owner, _Mapping]] = ..., owner_group: _Optional[_Union[OwnerGroup, _Mapping]] = ..., cable_bundle: _Optional[_Union[CableBundle, _Mapping]] = ..., rack_group: _Optional[_Union[RackGroup, _Mapping]] = ..., script_module: _Optional[_Union[ScriptModule, _Mapping]] = ..., virtual_machine_type: _Optional[_Union[VirtualMachineType, _Mapping]] = ..., user: _Optional[_Union[User, _Mapping]] = ..., cooling_feed: _Optional[_Union[CoolingFeed, _Mapping]] = ..., cooling_intake: _Optional[_Union[CoolingIntake, _Mapping]] = ..., cooling_outflow: _Optional[_Union[CoolingOutflow, _Mapping]] = ..., cooling_source: _Optional[_Union[CoolingSource, _Mapping]] = ..., module_bay_type: _Optional[_Union[ModuleBayType, _Mapping]] = ...) -> None: ... class CustomFieldValue(_message.Message): __slots__ = ("multiple_selection", "multiple_objects", "text", "long_text", "integer", "decimal", "boolean", "date", "datetime", "url", "json", "selection", "object") @@ -1311,7 +1341,7 @@ class CustomFieldValue(_message.Message): def __init__(self, multiple_selection: _Optional[_Iterable[str]] = ..., multiple_objects: _Optional[_Iterable[_Union[CustomFieldObjectReference, _Mapping]]] = ..., text: _Optional[str] = ..., long_text: _Optional[str] = ..., integer: _Optional[int] = ..., decimal: _Optional[float] = ..., boolean: bool = ..., date: _Optional[_Union[_timestamp_pb2.Timestamp, _Mapping]] = ..., datetime: _Optional[_Union[_timestamp_pb2.Timestamp, _Mapping]] = ..., url: _Optional[str] = ..., json: _Optional[str] = ..., selection: _Optional[str] = ..., object: _Optional[_Union[CustomFieldObjectReference, _Mapping]] = ...) -> None: ... class Device(_message.Message): - __slots__ = ("name", "device_type", "role", "tenant", "platform", "serial", "asset_tag", "site", "location", "rack", "position", "face", "latitude", "longitude", "status", "airflow", "primary_ip4", "primary_ip6", "oob_ip", "cluster", "virtual_chassis", "vc_position", "vc_priority", "description", "comments", "tags", "custom_fields", "metadata", "owner", "config") + __slots__ = ("name", "device_type", "role", "tenant", "platform", "serial", "asset_tag", "site", "location", "rack", "position", "face", "latitude", "longitude", "status", "airflow", "primary_ip4", "primary_ip6", "oob_ip", "cluster", "virtual_chassis", "vc_position", "vc_priority", "description", "comments", "tags", "custom_fields", "metadata", "owner", "config", "cooling_method") class CustomFieldsEntry(_message.Message): __slots__ = ("key", "value") KEY_FIELD_NUMBER: _ClassVar[int] @@ -1349,6 +1379,7 @@ class Device(_message.Message): METADATA_FIELD_NUMBER: _ClassVar[int] OWNER_FIELD_NUMBER: _ClassVar[int] CONFIG_FIELD_NUMBER: _ClassVar[int] + COOLING_METHOD_FIELD_NUMBER: _ClassVar[int] name: str device_type: DeviceType role: DeviceRole @@ -1379,7 +1410,8 @@ class Device(_message.Message): metadata: _struct_pb2.Struct owner: Owner config: DeviceConfig - def __init__(self, name: _Optional[str] = ..., device_type: _Optional[_Union[DeviceType, _Mapping]] = ..., role: _Optional[_Union[DeviceRole, _Mapping]] = ..., tenant: _Optional[_Union[Tenant, _Mapping]] = ..., platform: _Optional[_Union[Platform, _Mapping]] = ..., serial: _Optional[str] = ..., asset_tag: _Optional[str] = ..., site: _Optional[_Union[Site, _Mapping]] = ..., location: _Optional[_Union[Location, _Mapping]] = ..., rack: _Optional[_Union[Rack, _Mapping]] = ..., position: _Optional[float] = ..., face: _Optional[str] = ..., latitude: _Optional[float] = ..., longitude: _Optional[float] = ..., status: _Optional[str] = ..., airflow: _Optional[str] = ..., primary_ip4: _Optional[_Union[IPAddress, _Mapping]] = ..., primary_ip6: _Optional[_Union[IPAddress, _Mapping]] = ..., oob_ip: _Optional[_Union[IPAddress, _Mapping]] = ..., cluster: _Optional[_Union[Cluster, _Mapping]] = ..., virtual_chassis: _Optional[_Union[VirtualChassis, _Mapping]] = ..., vc_position: _Optional[int] = ..., vc_priority: _Optional[int] = ..., description: _Optional[str] = ..., comments: _Optional[str] = ..., tags: _Optional[_Iterable[_Union[Tag, _Mapping]]] = ..., custom_fields: _Optional[_Mapping[str, CustomFieldValue]] = ..., metadata: _Optional[_Union[_struct_pb2.Struct, _Mapping]] = ..., owner: _Optional[_Union[Owner, _Mapping]] = ..., config: _Optional[_Union[DeviceConfig, _Mapping]] = ...) -> None: ... + cooling_method: str + def __init__(self, name: _Optional[str] = ..., device_type: _Optional[_Union[DeviceType, _Mapping]] = ..., role: _Optional[_Union[DeviceRole, _Mapping]] = ..., tenant: _Optional[_Union[Tenant, _Mapping]] = ..., platform: _Optional[_Union[Platform, _Mapping]] = ..., serial: _Optional[str] = ..., asset_tag: _Optional[str] = ..., site: _Optional[_Union[Site, _Mapping]] = ..., location: _Optional[_Union[Location, _Mapping]] = ..., rack: _Optional[_Union[Rack, _Mapping]] = ..., position: _Optional[float] = ..., face: _Optional[str] = ..., latitude: _Optional[float] = ..., longitude: _Optional[float] = ..., status: _Optional[str] = ..., airflow: _Optional[str] = ..., primary_ip4: _Optional[_Union[IPAddress, _Mapping]] = ..., primary_ip6: _Optional[_Union[IPAddress, _Mapping]] = ..., oob_ip: _Optional[_Union[IPAddress, _Mapping]] = ..., cluster: _Optional[_Union[Cluster, _Mapping]] = ..., virtual_chassis: _Optional[_Union[VirtualChassis, _Mapping]] = ..., vc_position: _Optional[int] = ..., vc_priority: _Optional[int] = ..., description: _Optional[str] = ..., comments: _Optional[str] = ..., tags: _Optional[_Iterable[_Union[Tag, _Mapping]]] = ..., custom_fields: _Optional[_Mapping[str, CustomFieldValue]] = ..., metadata: _Optional[_Union[_struct_pb2.Struct, _Mapping]] = ..., owner: _Optional[_Union[Owner, _Mapping]] = ..., config: _Optional[_Union[DeviceConfig, _Mapping]] = ..., cooling_method: _Optional[str] = ...) -> None: ... class DeviceBay(_message.Message): __slots__ = ("device", "name", "label", "description", "installed_device", "tags", "custom_fields", "metadata", "owner", "enabled") @@ -1446,7 +1478,7 @@ class DeviceRole(_message.Message): def __init__(self, name: _Optional[str] = ..., slug: _Optional[str] = ..., color: _Optional[str] = ..., vm_role: bool = ..., description: _Optional[str] = ..., tags: _Optional[_Iterable[_Union[Tag, _Mapping]]] = ..., custom_fields: _Optional[_Mapping[str, CustomFieldValue]] = ..., parent: _Optional[_Union[DeviceRole, _Mapping]] = ..., comments: _Optional[str] = ..., metadata: _Optional[_Union[_struct_pb2.Struct, _Mapping]] = ..., owner: _Optional[_Union[Owner, _Mapping]] = ...) -> None: ... class DeviceType(_message.Message): - __slots__ = ("manufacturer", "default_platform", "model", "slug", "part_number", "u_height", "exclude_from_utilization", "is_full_depth", "subdevice_role", "airflow", "weight", "weight_unit", "description", "comments", "tags", "custom_fields", "metadata", "owner") + __slots__ = ("manufacturer", "default_platform", "model", "slug", "part_number", "u_height", "exclude_from_utilization", "is_full_depth", "subdevice_role", "airflow", "weight", "weight_unit", "description", "comments", "tags", "custom_fields", "metadata", "owner", "cooling_method", "end_of_life") class CustomFieldsEntry(_message.Message): __slots__ = ("key", "value") KEY_FIELD_NUMBER: _ClassVar[int] @@ -1472,6 +1504,8 @@ class DeviceType(_message.Message): CUSTOM_FIELDS_FIELD_NUMBER: _ClassVar[int] METADATA_FIELD_NUMBER: _ClassVar[int] OWNER_FIELD_NUMBER: _ClassVar[int] + COOLING_METHOD_FIELD_NUMBER: _ClassVar[int] + END_OF_LIFE_FIELD_NUMBER: _ClassVar[int] manufacturer: Manufacturer default_platform: Platform model: str @@ -1490,7 +1524,9 @@ class DeviceType(_message.Message): custom_fields: _containers.MessageMap[str, CustomFieldValue] metadata: _struct_pb2.Struct owner: Owner - def __init__(self, manufacturer: _Optional[_Union[Manufacturer, _Mapping]] = ..., default_platform: _Optional[_Union[Platform, _Mapping]] = ..., model: _Optional[str] = ..., slug: _Optional[str] = ..., part_number: _Optional[str] = ..., u_height: _Optional[float] = ..., exclude_from_utilization: bool = ..., is_full_depth: bool = ..., subdevice_role: _Optional[str] = ..., airflow: _Optional[str] = ..., weight: _Optional[float] = ..., weight_unit: _Optional[str] = ..., description: _Optional[str] = ..., comments: _Optional[str] = ..., tags: _Optional[_Iterable[_Union[Tag, _Mapping]]] = ..., custom_fields: _Optional[_Mapping[str, CustomFieldValue]] = ..., metadata: _Optional[_Union[_struct_pb2.Struct, _Mapping]] = ..., owner: _Optional[_Union[Owner, _Mapping]] = ...) -> None: ... + cooling_method: str + end_of_life: _timestamp_pb2.Timestamp + def __init__(self, manufacturer: _Optional[_Union[Manufacturer, _Mapping]] = ..., default_platform: _Optional[_Union[Platform, _Mapping]] = ..., model: _Optional[str] = ..., slug: _Optional[str] = ..., part_number: _Optional[str] = ..., u_height: _Optional[float] = ..., exclude_from_utilization: bool = ..., is_full_depth: bool = ..., subdevice_role: _Optional[str] = ..., airflow: _Optional[str] = ..., weight: _Optional[float] = ..., weight_unit: _Optional[str] = ..., description: _Optional[str] = ..., comments: _Optional[str] = ..., tags: _Optional[_Iterable[_Union[Tag, _Mapping]]] = ..., custom_fields: _Optional[_Mapping[str, CustomFieldValue]] = ..., metadata: _Optional[_Union[_struct_pb2.Struct, _Mapping]] = ..., owner: _Optional[_Union[Owner, _Mapping]] = ..., cooling_method: _Optional[str] = ..., end_of_life: _Optional[_Union[_timestamp_pb2.Timestamp, _Mapping]] = ...) -> None: ... class FHRPGroup(_message.Message): __slots__ = ("name", "protocol", "group_id", "auth_type", "auth_key", "description", "comments", "tags", "custom_fields", "metadata", "owner") @@ -1526,7 +1562,7 @@ class FHRPGroup(_message.Message): def __init__(self, name: _Optional[str] = ..., protocol: _Optional[str] = ..., group_id: _Optional[int] = ..., auth_type: _Optional[str] = ..., auth_key: _Optional[str] = ..., description: _Optional[str] = ..., comments: _Optional[str] = ..., tags: _Optional[_Iterable[_Union[Tag, _Mapping]]] = ..., custom_fields: _Optional[_Mapping[str, CustomFieldValue]] = ..., metadata: _Optional[_Union[_struct_pb2.Struct, _Mapping]] = ..., owner: _Optional[_Union[Owner, _Mapping]] = ...) -> None: ... class FHRPGroupAssignment(_message.Message): - __slots__ = ("group", "interface_asn", "interface_asn_range", "interface_aggregate", "interface_cable", "interface_cable_path", "interface_cable_termination", "interface_circuit", "interface_circuit_group", "interface_circuit_group_assignment", "interface_circuit_termination", "interface_circuit_type", "interface_cluster", "interface_cluster_group", "interface_cluster_type", "interface_console_port", "interface_console_server_port", "interface_contact", "interface_contact_assignment", "interface_contact_group", "interface_contact_role", "interface_device", "interface_device_bay", "interface_device_role", "interface_device_type", "interface_fhrp_group", "interface_fhrp_group_assignment", "interface_front_port", "interface_ike_policy", "interface_ike_proposal", "interface_ip_address", "interface_ip_range", "interface_ip_sec_policy", "interface_ip_sec_profile", "interface_ip_sec_proposal", "interface_interface", "interface_inventory_item", "interface_inventory_item_role", "interface_l2vpn", "interface_l2vpn_termination", "interface_location", "interface_mac_address", "interface_manufacturer", "interface_module", "interface_module_bay", "interface_module_type", "interface_platform", "interface_power_feed", "interface_power_outlet", "interface_power_panel", "interface_power_port", "interface_prefix", "interface_provider", "interface_provider_account", "interface_provider_network", "interface_rir", "interface_rack", "interface_rack_reservation", "interface_rack_role", "interface_rack_type", "interface_rear_port", "interface_region", "interface_role", "interface_route_target", "interface_service", "interface_site", "interface_site_group", "interface_tag", "interface_tenant", "interface_tenant_group", "interface_tunnel", "interface_tunnel_group", "interface_tunnel_termination", "interface_vlan", "interface_vlan_group", "interface_vlan_translation_policy", "interface_vlan_translation_rule", "interface_vm_interface", "interface_vrf", "interface_virtual_chassis", "interface_virtual_circuit", "interface_virtual_circuit_termination", "interface_virtual_circuit_type", "interface_virtual_device_context", "interface_virtual_disk", "interface_virtual_machine", "interface_wireless_lan", "interface_wireless_lan_group", "interface_wireless_link", "interface_custom_field", "interface_custom_field_choice_set", "interface_journal_entry", "interface_module_type_profile", "interface_custom_link", "interface_owner", "interface_owner_group", "interface_cable_bundle", "interface_rack_group", "interface_script_module", "interface_virtual_machine_type", "interface_user", "priority", "metadata") + __slots__ = ("group", "interface_asn", "interface_asn_range", "interface_aggregate", "interface_cable", "interface_cable_path", "interface_cable_termination", "interface_circuit", "interface_circuit_group", "interface_circuit_group_assignment", "interface_circuit_termination", "interface_circuit_type", "interface_cluster", "interface_cluster_group", "interface_cluster_type", "interface_console_port", "interface_console_server_port", "interface_contact", "interface_contact_assignment", "interface_contact_group", "interface_contact_role", "interface_device", "interface_device_bay", "interface_device_role", "interface_device_type", "interface_fhrp_group", "interface_fhrp_group_assignment", "interface_front_port", "interface_ike_policy", "interface_ike_proposal", "interface_ip_address", "interface_ip_range", "interface_ip_sec_policy", "interface_ip_sec_profile", "interface_ip_sec_proposal", "interface_interface", "interface_inventory_item", "interface_inventory_item_role", "interface_l2vpn", "interface_l2vpn_termination", "interface_location", "interface_mac_address", "interface_manufacturer", "interface_module", "interface_module_bay", "interface_module_type", "interface_platform", "interface_power_feed", "interface_power_outlet", "interface_power_panel", "interface_power_port", "interface_prefix", "interface_provider", "interface_provider_account", "interface_provider_network", "interface_rir", "interface_rack", "interface_rack_reservation", "interface_rack_role", "interface_rack_type", "interface_rear_port", "interface_region", "interface_role", "interface_route_target", "interface_service", "interface_site", "interface_site_group", "interface_tag", "interface_tenant", "interface_tenant_group", "interface_tunnel", "interface_tunnel_group", "interface_tunnel_termination", "interface_vlan", "interface_vlan_group", "interface_vlan_translation_policy", "interface_vlan_translation_rule", "interface_vm_interface", "interface_vrf", "interface_virtual_chassis", "interface_virtual_circuit", "interface_virtual_circuit_termination", "interface_virtual_circuit_type", "interface_virtual_device_context", "interface_virtual_disk", "interface_virtual_machine", "interface_wireless_lan", "interface_wireless_lan_group", "interface_wireless_link", "interface_custom_field", "interface_custom_field_choice_set", "interface_journal_entry", "interface_module_type_profile", "interface_custom_link", "interface_owner", "interface_owner_group", "interface_cable_bundle", "interface_rack_group", "interface_script_module", "interface_virtual_machine_type", "interface_user", "interface_cooling_feed", "interface_cooling_intake", "interface_cooling_outflow", "interface_cooling_source", "interface_module_bay_type", "priority", "metadata") GROUP_FIELD_NUMBER: _ClassVar[int] INTERFACE_ASN_FIELD_NUMBER: _ClassVar[int] INTERFACE_ASN_RANGE_FIELD_NUMBER: _ClassVar[int] @@ -1628,6 +1664,11 @@ class FHRPGroupAssignment(_message.Message): INTERFACE_SCRIPT_MODULE_FIELD_NUMBER: _ClassVar[int] INTERFACE_VIRTUAL_MACHINE_TYPE_FIELD_NUMBER: _ClassVar[int] INTERFACE_USER_FIELD_NUMBER: _ClassVar[int] + INTERFACE_COOLING_FEED_FIELD_NUMBER: _ClassVar[int] + INTERFACE_COOLING_INTAKE_FIELD_NUMBER: _ClassVar[int] + INTERFACE_COOLING_OUTFLOW_FIELD_NUMBER: _ClassVar[int] + INTERFACE_COOLING_SOURCE_FIELD_NUMBER: _ClassVar[int] + INTERFACE_MODULE_BAY_TYPE_FIELD_NUMBER: _ClassVar[int] PRIORITY_FIELD_NUMBER: _ClassVar[int] METADATA_FIELD_NUMBER: _ClassVar[int] group: FHRPGroup @@ -1731,9 +1772,14 @@ class FHRPGroupAssignment(_message.Message): interface_script_module: ScriptModule interface_virtual_machine_type: VirtualMachineType interface_user: User + interface_cooling_feed: CoolingFeed + interface_cooling_intake: CoolingIntake + interface_cooling_outflow: CoolingOutflow + interface_cooling_source: CoolingSource + interface_module_bay_type: ModuleBayType priority: int metadata: _struct_pb2.Struct - def __init__(self, group: _Optional[_Union[FHRPGroup, _Mapping]] = ..., interface_asn: _Optional[_Union[ASN, _Mapping]] = ..., interface_asn_range: _Optional[_Union[ASNRange, _Mapping]] = ..., interface_aggregate: _Optional[_Union[Aggregate, _Mapping]] = ..., interface_cable: _Optional[_Union[Cable, _Mapping]] = ..., interface_cable_path: _Optional[_Union[CablePath, _Mapping]] = ..., interface_cable_termination: _Optional[_Union[CableTermination, _Mapping]] = ..., interface_circuit: _Optional[_Union[Circuit, _Mapping]] = ..., interface_circuit_group: _Optional[_Union[CircuitGroup, _Mapping]] = ..., interface_circuit_group_assignment: _Optional[_Union[CircuitGroupAssignment, _Mapping]] = ..., interface_circuit_termination: _Optional[_Union[CircuitTermination, _Mapping]] = ..., interface_circuit_type: _Optional[_Union[CircuitType, _Mapping]] = ..., interface_cluster: _Optional[_Union[Cluster, _Mapping]] = ..., interface_cluster_group: _Optional[_Union[ClusterGroup, _Mapping]] = ..., interface_cluster_type: _Optional[_Union[ClusterType, _Mapping]] = ..., interface_console_port: _Optional[_Union[ConsolePort, _Mapping]] = ..., interface_console_server_port: _Optional[_Union[ConsoleServerPort, _Mapping]] = ..., interface_contact: _Optional[_Union[Contact, _Mapping]] = ..., interface_contact_assignment: _Optional[_Union[ContactAssignment, _Mapping]] = ..., interface_contact_group: _Optional[_Union[ContactGroup, _Mapping]] = ..., interface_contact_role: _Optional[_Union[ContactRole, _Mapping]] = ..., interface_device: _Optional[_Union[Device, _Mapping]] = ..., interface_device_bay: _Optional[_Union[DeviceBay, _Mapping]] = ..., interface_device_role: _Optional[_Union[DeviceRole, _Mapping]] = ..., interface_device_type: _Optional[_Union[DeviceType, _Mapping]] = ..., interface_fhrp_group: _Optional[_Union[FHRPGroup, _Mapping]] = ..., interface_fhrp_group_assignment: _Optional[_Union[FHRPGroupAssignment, _Mapping]] = ..., interface_front_port: _Optional[_Union[FrontPort, _Mapping]] = ..., interface_ike_policy: _Optional[_Union[IKEPolicy, _Mapping]] = ..., interface_ike_proposal: _Optional[_Union[IKEProposal, _Mapping]] = ..., interface_ip_address: _Optional[_Union[IPAddress, _Mapping]] = ..., interface_ip_range: _Optional[_Union[IPRange, _Mapping]] = ..., interface_ip_sec_policy: _Optional[_Union[IPSecPolicy, _Mapping]] = ..., interface_ip_sec_profile: _Optional[_Union[IPSecProfile, _Mapping]] = ..., interface_ip_sec_proposal: _Optional[_Union[IPSecProposal, _Mapping]] = ..., interface_interface: _Optional[_Union[Interface, _Mapping]] = ..., interface_inventory_item: _Optional[_Union[InventoryItem, _Mapping]] = ..., interface_inventory_item_role: _Optional[_Union[InventoryItemRole, _Mapping]] = ..., interface_l2vpn: _Optional[_Union[L2VPN, _Mapping]] = ..., interface_l2vpn_termination: _Optional[_Union[L2VPNTermination, _Mapping]] = ..., interface_location: _Optional[_Union[Location, _Mapping]] = ..., interface_mac_address: _Optional[_Union[MACAddress, _Mapping]] = ..., interface_manufacturer: _Optional[_Union[Manufacturer, _Mapping]] = ..., interface_module: _Optional[_Union[Module, _Mapping]] = ..., interface_module_bay: _Optional[_Union[ModuleBay, _Mapping]] = ..., interface_module_type: _Optional[_Union[ModuleType, _Mapping]] = ..., interface_platform: _Optional[_Union[Platform, _Mapping]] = ..., interface_power_feed: _Optional[_Union[PowerFeed, _Mapping]] = ..., interface_power_outlet: _Optional[_Union[PowerOutlet, _Mapping]] = ..., interface_power_panel: _Optional[_Union[PowerPanel, _Mapping]] = ..., interface_power_port: _Optional[_Union[PowerPort, _Mapping]] = ..., interface_prefix: _Optional[_Union[Prefix, _Mapping]] = ..., interface_provider: _Optional[_Union[Provider, _Mapping]] = ..., interface_provider_account: _Optional[_Union[ProviderAccount, _Mapping]] = ..., interface_provider_network: _Optional[_Union[ProviderNetwork, _Mapping]] = ..., interface_rir: _Optional[_Union[RIR, _Mapping]] = ..., interface_rack: _Optional[_Union[Rack, _Mapping]] = ..., interface_rack_reservation: _Optional[_Union[RackReservation, _Mapping]] = ..., interface_rack_role: _Optional[_Union[RackRole, _Mapping]] = ..., interface_rack_type: _Optional[_Union[RackType, _Mapping]] = ..., interface_rear_port: _Optional[_Union[RearPort, _Mapping]] = ..., interface_region: _Optional[_Union[Region, _Mapping]] = ..., interface_role: _Optional[_Union[Role, _Mapping]] = ..., interface_route_target: _Optional[_Union[RouteTarget, _Mapping]] = ..., interface_service: _Optional[_Union[Service, _Mapping]] = ..., interface_site: _Optional[_Union[Site, _Mapping]] = ..., interface_site_group: _Optional[_Union[SiteGroup, _Mapping]] = ..., interface_tag: _Optional[_Union[Tag, _Mapping]] = ..., interface_tenant: _Optional[_Union[Tenant, _Mapping]] = ..., interface_tenant_group: _Optional[_Union[TenantGroup, _Mapping]] = ..., interface_tunnel: _Optional[_Union[Tunnel, _Mapping]] = ..., interface_tunnel_group: _Optional[_Union[TunnelGroup, _Mapping]] = ..., interface_tunnel_termination: _Optional[_Union[TunnelTermination, _Mapping]] = ..., interface_vlan: _Optional[_Union[VLAN, _Mapping]] = ..., interface_vlan_group: _Optional[_Union[VLANGroup, _Mapping]] = ..., interface_vlan_translation_policy: _Optional[_Union[VLANTranslationPolicy, _Mapping]] = ..., interface_vlan_translation_rule: _Optional[_Union[VLANTranslationRule, _Mapping]] = ..., interface_vm_interface: _Optional[_Union[VMInterface, _Mapping]] = ..., interface_vrf: _Optional[_Union[VRF, _Mapping]] = ..., interface_virtual_chassis: _Optional[_Union[VirtualChassis, _Mapping]] = ..., interface_virtual_circuit: _Optional[_Union[VirtualCircuit, _Mapping]] = ..., interface_virtual_circuit_termination: _Optional[_Union[VirtualCircuitTermination, _Mapping]] = ..., interface_virtual_circuit_type: _Optional[_Union[VirtualCircuitType, _Mapping]] = ..., interface_virtual_device_context: _Optional[_Union[VirtualDeviceContext, _Mapping]] = ..., interface_virtual_disk: _Optional[_Union[VirtualDisk, _Mapping]] = ..., interface_virtual_machine: _Optional[_Union[VirtualMachine, _Mapping]] = ..., interface_wireless_lan: _Optional[_Union[WirelessLAN, _Mapping]] = ..., interface_wireless_lan_group: _Optional[_Union[WirelessLANGroup, _Mapping]] = ..., interface_wireless_link: _Optional[_Union[WirelessLink, _Mapping]] = ..., interface_custom_field: _Optional[_Union[CustomField, _Mapping]] = ..., interface_custom_field_choice_set: _Optional[_Union[CustomFieldChoiceSet, _Mapping]] = ..., interface_journal_entry: _Optional[_Union[JournalEntry, _Mapping]] = ..., interface_module_type_profile: _Optional[_Union[ModuleTypeProfile, _Mapping]] = ..., interface_custom_link: _Optional[_Union[CustomLink, _Mapping]] = ..., interface_owner: _Optional[_Union[Owner, _Mapping]] = ..., interface_owner_group: _Optional[_Union[OwnerGroup, _Mapping]] = ..., interface_cable_bundle: _Optional[_Union[CableBundle, _Mapping]] = ..., interface_rack_group: _Optional[_Union[RackGroup, _Mapping]] = ..., interface_script_module: _Optional[_Union[ScriptModule, _Mapping]] = ..., interface_virtual_machine_type: _Optional[_Union[VirtualMachineType, _Mapping]] = ..., interface_user: _Optional[_Union[User, _Mapping]] = ..., priority: _Optional[int] = ..., metadata: _Optional[_Union[_struct_pb2.Struct, _Mapping]] = ...) -> None: ... + def __init__(self, group: _Optional[_Union[FHRPGroup, _Mapping]] = ..., interface_asn: _Optional[_Union[ASN, _Mapping]] = ..., interface_asn_range: _Optional[_Union[ASNRange, _Mapping]] = ..., interface_aggregate: _Optional[_Union[Aggregate, _Mapping]] = ..., interface_cable: _Optional[_Union[Cable, _Mapping]] = ..., interface_cable_path: _Optional[_Union[CablePath, _Mapping]] = ..., interface_cable_termination: _Optional[_Union[CableTermination, _Mapping]] = ..., interface_circuit: _Optional[_Union[Circuit, _Mapping]] = ..., interface_circuit_group: _Optional[_Union[CircuitGroup, _Mapping]] = ..., interface_circuit_group_assignment: _Optional[_Union[CircuitGroupAssignment, _Mapping]] = ..., interface_circuit_termination: _Optional[_Union[CircuitTermination, _Mapping]] = ..., interface_circuit_type: _Optional[_Union[CircuitType, _Mapping]] = ..., interface_cluster: _Optional[_Union[Cluster, _Mapping]] = ..., interface_cluster_group: _Optional[_Union[ClusterGroup, _Mapping]] = ..., interface_cluster_type: _Optional[_Union[ClusterType, _Mapping]] = ..., interface_console_port: _Optional[_Union[ConsolePort, _Mapping]] = ..., interface_console_server_port: _Optional[_Union[ConsoleServerPort, _Mapping]] = ..., interface_contact: _Optional[_Union[Contact, _Mapping]] = ..., interface_contact_assignment: _Optional[_Union[ContactAssignment, _Mapping]] = ..., interface_contact_group: _Optional[_Union[ContactGroup, _Mapping]] = ..., interface_contact_role: _Optional[_Union[ContactRole, _Mapping]] = ..., interface_device: _Optional[_Union[Device, _Mapping]] = ..., interface_device_bay: _Optional[_Union[DeviceBay, _Mapping]] = ..., interface_device_role: _Optional[_Union[DeviceRole, _Mapping]] = ..., interface_device_type: _Optional[_Union[DeviceType, _Mapping]] = ..., interface_fhrp_group: _Optional[_Union[FHRPGroup, _Mapping]] = ..., interface_fhrp_group_assignment: _Optional[_Union[FHRPGroupAssignment, _Mapping]] = ..., interface_front_port: _Optional[_Union[FrontPort, _Mapping]] = ..., interface_ike_policy: _Optional[_Union[IKEPolicy, _Mapping]] = ..., interface_ike_proposal: _Optional[_Union[IKEProposal, _Mapping]] = ..., interface_ip_address: _Optional[_Union[IPAddress, _Mapping]] = ..., interface_ip_range: _Optional[_Union[IPRange, _Mapping]] = ..., interface_ip_sec_policy: _Optional[_Union[IPSecPolicy, _Mapping]] = ..., interface_ip_sec_profile: _Optional[_Union[IPSecProfile, _Mapping]] = ..., interface_ip_sec_proposal: _Optional[_Union[IPSecProposal, _Mapping]] = ..., interface_interface: _Optional[_Union[Interface, _Mapping]] = ..., interface_inventory_item: _Optional[_Union[InventoryItem, _Mapping]] = ..., interface_inventory_item_role: _Optional[_Union[InventoryItemRole, _Mapping]] = ..., interface_l2vpn: _Optional[_Union[L2VPN, _Mapping]] = ..., interface_l2vpn_termination: _Optional[_Union[L2VPNTermination, _Mapping]] = ..., interface_location: _Optional[_Union[Location, _Mapping]] = ..., interface_mac_address: _Optional[_Union[MACAddress, _Mapping]] = ..., interface_manufacturer: _Optional[_Union[Manufacturer, _Mapping]] = ..., interface_module: _Optional[_Union[Module, _Mapping]] = ..., interface_module_bay: _Optional[_Union[ModuleBay, _Mapping]] = ..., interface_module_type: _Optional[_Union[ModuleType, _Mapping]] = ..., interface_platform: _Optional[_Union[Platform, _Mapping]] = ..., interface_power_feed: _Optional[_Union[PowerFeed, _Mapping]] = ..., interface_power_outlet: _Optional[_Union[PowerOutlet, _Mapping]] = ..., interface_power_panel: _Optional[_Union[PowerPanel, _Mapping]] = ..., interface_power_port: _Optional[_Union[PowerPort, _Mapping]] = ..., interface_prefix: _Optional[_Union[Prefix, _Mapping]] = ..., interface_provider: _Optional[_Union[Provider, _Mapping]] = ..., interface_provider_account: _Optional[_Union[ProviderAccount, _Mapping]] = ..., interface_provider_network: _Optional[_Union[ProviderNetwork, _Mapping]] = ..., interface_rir: _Optional[_Union[RIR, _Mapping]] = ..., interface_rack: _Optional[_Union[Rack, _Mapping]] = ..., interface_rack_reservation: _Optional[_Union[RackReservation, _Mapping]] = ..., interface_rack_role: _Optional[_Union[RackRole, _Mapping]] = ..., interface_rack_type: _Optional[_Union[RackType, _Mapping]] = ..., interface_rear_port: _Optional[_Union[RearPort, _Mapping]] = ..., interface_region: _Optional[_Union[Region, _Mapping]] = ..., interface_role: _Optional[_Union[Role, _Mapping]] = ..., interface_route_target: _Optional[_Union[RouteTarget, _Mapping]] = ..., interface_service: _Optional[_Union[Service, _Mapping]] = ..., interface_site: _Optional[_Union[Site, _Mapping]] = ..., interface_site_group: _Optional[_Union[SiteGroup, _Mapping]] = ..., interface_tag: _Optional[_Union[Tag, _Mapping]] = ..., interface_tenant: _Optional[_Union[Tenant, _Mapping]] = ..., interface_tenant_group: _Optional[_Union[TenantGroup, _Mapping]] = ..., interface_tunnel: _Optional[_Union[Tunnel, _Mapping]] = ..., interface_tunnel_group: _Optional[_Union[TunnelGroup, _Mapping]] = ..., interface_tunnel_termination: _Optional[_Union[TunnelTermination, _Mapping]] = ..., interface_vlan: _Optional[_Union[VLAN, _Mapping]] = ..., interface_vlan_group: _Optional[_Union[VLANGroup, _Mapping]] = ..., interface_vlan_translation_policy: _Optional[_Union[VLANTranslationPolicy, _Mapping]] = ..., interface_vlan_translation_rule: _Optional[_Union[VLANTranslationRule, _Mapping]] = ..., interface_vm_interface: _Optional[_Union[VMInterface, _Mapping]] = ..., interface_vrf: _Optional[_Union[VRF, _Mapping]] = ..., interface_virtual_chassis: _Optional[_Union[VirtualChassis, _Mapping]] = ..., interface_virtual_circuit: _Optional[_Union[VirtualCircuit, _Mapping]] = ..., interface_virtual_circuit_termination: _Optional[_Union[VirtualCircuitTermination, _Mapping]] = ..., interface_virtual_circuit_type: _Optional[_Union[VirtualCircuitType, _Mapping]] = ..., interface_virtual_device_context: _Optional[_Union[VirtualDeviceContext, _Mapping]] = ..., interface_virtual_disk: _Optional[_Union[VirtualDisk, _Mapping]] = ..., interface_virtual_machine: _Optional[_Union[VirtualMachine, _Mapping]] = ..., interface_wireless_lan: _Optional[_Union[WirelessLAN, _Mapping]] = ..., interface_wireless_lan_group: _Optional[_Union[WirelessLANGroup, _Mapping]] = ..., interface_wireless_link: _Optional[_Union[WirelessLink, _Mapping]] = ..., interface_custom_field: _Optional[_Union[CustomField, _Mapping]] = ..., interface_custom_field_choice_set: _Optional[_Union[CustomFieldChoiceSet, _Mapping]] = ..., interface_journal_entry: _Optional[_Union[JournalEntry, _Mapping]] = ..., interface_module_type_profile: _Optional[_Union[ModuleTypeProfile, _Mapping]] = ..., interface_custom_link: _Optional[_Union[CustomLink, _Mapping]] = ..., interface_owner: _Optional[_Union[Owner, _Mapping]] = ..., interface_owner_group: _Optional[_Union[OwnerGroup, _Mapping]] = ..., interface_cable_bundle: _Optional[_Union[CableBundle, _Mapping]] = ..., interface_rack_group: _Optional[_Union[RackGroup, _Mapping]] = ..., interface_script_module: _Optional[_Union[ScriptModule, _Mapping]] = ..., interface_virtual_machine_type: _Optional[_Union[VirtualMachineType, _Mapping]] = ..., interface_user: _Optional[_Union[User, _Mapping]] = ..., interface_cooling_feed: _Optional[_Union[CoolingFeed, _Mapping]] = ..., interface_cooling_intake: _Optional[_Union[CoolingIntake, _Mapping]] = ..., interface_cooling_outflow: _Optional[_Union[CoolingOutflow, _Mapping]] = ..., interface_cooling_source: _Optional[_Union[CoolingSource, _Mapping]] = ..., interface_module_bay_type: _Optional[_Union[ModuleBayType, _Mapping]] = ..., priority: _Optional[int] = ..., metadata: _Optional[_Union[_struct_pb2.Struct, _Mapping]] = ...) -> None: ... class FrontPort(_message.Message): __slots__ = ("device", "module", "name", "label", "type", "color", "rear_port", "rear_port_position", "description", "mark_connected", "tags", "custom_fields", "metadata", "positions", "owner") @@ -1777,7 +1823,7 @@ class FrontPort(_message.Message): def __init__(self, device: _Optional[_Union[Device, _Mapping]] = ..., module: _Optional[_Union[Module, _Mapping]] = ..., name: _Optional[str] = ..., label: _Optional[str] = ..., type: _Optional[str] = ..., color: _Optional[str] = ..., rear_port: _Optional[_Union[RearPort, _Mapping]] = ..., rear_port_position: _Optional[int] = ..., description: _Optional[str] = ..., mark_connected: bool = ..., tags: _Optional[_Iterable[_Union[Tag, _Mapping]]] = ..., custom_fields: _Optional[_Mapping[str, CustomFieldValue]] = ..., metadata: _Optional[_Union[_struct_pb2.Struct, _Mapping]] = ..., positions: _Optional[int] = ..., owner: _Optional[_Union[Owner, _Mapping]] = ...) -> None: ... class GenericObject(_message.Message): - __slots__ = ("object_asn", "object_asn_range", "object_aggregate", "object_cable", "object_cable_path", "object_cable_termination", "object_circuit", "object_circuit_group", "object_circuit_group_assignment", "object_circuit_termination", "object_circuit_type", "object_cluster", "object_cluster_group", "object_cluster_type", "object_console_port", "object_console_server_port", "object_contact", "object_contact_assignment", "object_contact_group", "object_contact_role", "object_device", "object_device_bay", "object_device_role", "object_device_type", "object_fhrp_group", "object_fhrp_group_assignment", "object_front_port", "object_ike_policy", "object_ike_proposal", "object_ip_address", "object_ip_range", "object_ip_sec_policy", "object_ip_sec_profile", "object_ip_sec_proposal", "object_interface", "object_inventory_item", "object_inventory_item_role", "object_l2vpn", "object_l2vpn_termination", "object_location", "object_mac_address", "object_manufacturer", "object_module", "object_module_bay", "object_module_type", "object_platform", "object_power_feed", "object_power_outlet", "object_power_panel", "object_power_port", "object_prefix", "object_provider", "object_provider_account", "object_provider_network", "object_rir", "object_rack", "object_rack_reservation", "object_rack_role", "object_rack_type", "object_rear_port", "object_region", "object_role", "object_route_target", "object_service", "object_site", "object_site_group", "object_tag", "object_tenant", "object_tenant_group", "object_tunnel", "object_tunnel_group", "object_tunnel_termination", "object_vlan", "object_vlan_group", "object_vlan_translation_policy", "object_vlan_translation_rule", "object_vm_interface", "object_vrf", "object_virtual_chassis", "object_virtual_circuit", "object_virtual_circuit_termination", "object_virtual_circuit_type", "object_virtual_device_context", "object_virtual_disk", "object_virtual_machine", "object_wireless_lan", "object_wireless_lan_group", "object_wireless_link", "object_custom_field", "object_custom_field_choice_set", "object_journal_entry", "object_module_type_profile", "object_custom_link", "object_owner", "object_owner_group", "object_cable_bundle", "object_rack_group", "object_script_module", "object_virtual_machine_type", "object_user") + __slots__ = ("object_asn", "object_asn_range", "object_aggregate", "object_cable", "object_cable_path", "object_cable_termination", "object_circuit", "object_circuit_group", "object_circuit_group_assignment", "object_circuit_termination", "object_circuit_type", "object_cluster", "object_cluster_group", "object_cluster_type", "object_console_port", "object_console_server_port", "object_contact", "object_contact_assignment", "object_contact_group", "object_contact_role", "object_device", "object_device_bay", "object_device_role", "object_device_type", "object_fhrp_group", "object_fhrp_group_assignment", "object_front_port", "object_ike_policy", "object_ike_proposal", "object_ip_address", "object_ip_range", "object_ip_sec_policy", "object_ip_sec_profile", "object_ip_sec_proposal", "object_interface", "object_inventory_item", "object_inventory_item_role", "object_l2vpn", "object_l2vpn_termination", "object_location", "object_mac_address", "object_manufacturer", "object_module", "object_module_bay", "object_module_type", "object_platform", "object_power_feed", "object_power_outlet", "object_power_panel", "object_power_port", "object_prefix", "object_provider", "object_provider_account", "object_provider_network", "object_rir", "object_rack", "object_rack_reservation", "object_rack_role", "object_rack_type", "object_rear_port", "object_region", "object_role", "object_route_target", "object_service", "object_site", "object_site_group", "object_tag", "object_tenant", "object_tenant_group", "object_tunnel", "object_tunnel_group", "object_tunnel_termination", "object_vlan", "object_vlan_group", "object_vlan_translation_policy", "object_vlan_translation_rule", "object_vm_interface", "object_vrf", "object_virtual_chassis", "object_virtual_circuit", "object_virtual_circuit_termination", "object_virtual_circuit_type", "object_virtual_device_context", "object_virtual_disk", "object_virtual_machine", "object_wireless_lan", "object_wireless_lan_group", "object_wireless_link", "object_custom_field", "object_custom_field_choice_set", "object_journal_entry", "object_module_type_profile", "object_custom_link", "object_owner", "object_owner_group", "object_cable_bundle", "object_rack_group", "object_script_module", "object_virtual_machine_type", "object_user", "object_cooling_feed", "object_cooling_intake", "object_cooling_outflow", "object_cooling_source", "object_module_bay_type") OBJECT_ASN_FIELD_NUMBER: _ClassVar[int] OBJECT_ASN_RANGE_FIELD_NUMBER: _ClassVar[int] OBJECT_AGGREGATE_FIELD_NUMBER: _ClassVar[int] @@ -1878,6 +1924,11 @@ class GenericObject(_message.Message): OBJECT_SCRIPT_MODULE_FIELD_NUMBER: _ClassVar[int] OBJECT_VIRTUAL_MACHINE_TYPE_FIELD_NUMBER: _ClassVar[int] OBJECT_USER_FIELD_NUMBER: _ClassVar[int] + OBJECT_COOLING_FEED_FIELD_NUMBER: _ClassVar[int] + OBJECT_COOLING_INTAKE_FIELD_NUMBER: _ClassVar[int] + OBJECT_COOLING_OUTFLOW_FIELD_NUMBER: _ClassVar[int] + OBJECT_COOLING_SOURCE_FIELD_NUMBER: _ClassVar[int] + OBJECT_MODULE_BAY_TYPE_FIELD_NUMBER: _ClassVar[int] object_asn: ASN object_asn_range: ASNRange object_aggregate: Aggregate @@ -1978,7 +2029,12 @@ class GenericObject(_message.Message): object_script_module: ScriptModule object_virtual_machine_type: VirtualMachineType object_user: User - def __init__(self, object_asn: _Optional[_Union[ASN, _Mapping]] = ..., object_asn_range: _Optional[_Union[ASNRange, _Mapping]] = ..., object_aggregate: _Optional[_Union[Aggregate, _Mapping]] = ..., object_cable: _Optional[_Union[Cable, _Mapping]] = ..., object_cable_path: _Optional[_Union[CablePath, _Mapping]] = ..., object_cable_termination: _Optional[_Union[CableTermination, _Mapping]] = ..., object_circuit: _Optional[_Union[Circuit, _Mapping]] = ..., object_circuit_group: _Optional[_Union[CircuitGroup, _Mapping]] = ..., object_circuit_group_assignment: _Optional[_Union[CircuitGroupAssignment, _Mapping]] = ..., object_circuit_termination: _Optional[_Union[CircuitTermination, _Mapping]] = ..., object_circuit_type: _Optional[_Union[CircuitType, _Mapping]] = ..., object_cluster: _Optional[_Union[Cluster, _Mapping]] = ..., object_cluster_group: _Optional[_Union[ClusterGroup, _Mapping]] = ..., object_cluster_type: _Optional[_Union[ClusterType, _Mapping]] = ..., object_console_port: _Optional[_Union[ConsolePort, _Mapping]] = ..., object_console_server_port: _Optional[_Union[ConsoleServerPort, _Mapping]] = ..., object_contact: _Optional[_Union[Contact, _Mapping]] = ..., object_contact_assignment: _Optional[_Union[ContactAssignment, _Mapping]] = ..., object_contact_group: _Optional[_Union[ContactGroup, _Mapping]] = ..., object_contact_role: _Optional[_Union[ContactRole, _Mapping]] = ..., object_device: _Optional[_Union[Device, _Mapping]] = ..., object_device_bay: _Optional[_Union[DeviceBay, _Mapping]] = ..., object_device_role: _Optional[_Union[DeviceRole, _Mapping]] = ..., object_device_type: _Optional[_Union[DeviceType, _Mapping]] = ..., object_fhrp_group: _Optional[_Union[FHRPGroup, _Mapping]] = ..., object_fhrp_group_assignment: _Optional[_Union[FHRPGroupAssignment, _Mapping]] = ..., object_front_port: _Optional[_Union[FrontPort, _Mapping]] = ..., object_ike_policy: _Optional[_Union[IKEPolicy, _Mapping]] = ..., object_ike_proposal: _Optional[_Union[IKEProposal, _Mapping]] = ..., object_ip_address: _Optional[_Union[IPAddress, _Mapping]] = ..., object_ip_range: _Optional[_Union[IPRange, _Mapping]] = ..., object_ip_sec_policy: _Optional[_Union[IPSecPolicy, _Mapping]] = ..., object_ip_sec_profile: _Optional[_Union[IPSecProfile, _Mapping]] = ..., object_ip_sec_proposal: _Optional[_Union[IPSecProposal, _Mapping]] = ..., object_interface: _Optional[_Union[Interface, _Mapping]] = ..., object_inventory_item: _Optional[_Union[InventoryItem, _Mapping]] = ..., object_inventory_item_role: _Optional[_Union[InventoryItemRole, _Mapping]] = ..., object_l2vpn: _Optional[_Union[L2VPN, _Mapping]] = ..., object_l2vpn_termination: _Optional[_Union[L2VPNTermination, _Mapping]] = ..., object_location: _Optional[_Union[Location, _Mapping]] = ..., object_mac_address: _Optional[_Union[MACAddress, _Mapping]] = ..., object_manufacturer: _Optional[_Union[Manufacturer, _Mapping]] = ..., object_module: _Optional[_Union[Module, _Mapping]] = ..., object_module_bay: _Optional[_Union[ModuleBay, _Mapping]] = ..., object_module_type: _Optional[_Union[ModuleType, _Mapping]] = ..., object_platform: _Optional[_Union[Platform, _Mapping]] = ..., object_power_feed: _Optional[_Union[PowerFeed, _Mapping]] = ..., object_power_outlet: _Optional[_Union[PowerOutlet, _Mapping]] = ..., object_power_panel: _Optional[_Union[PowerPanel, _Mapping]] = ..., object_power_port: _Optional[_Union[PowerPort, _Mapping]] = ..., object_prefix: _Optional[_Union[Prefix, _Mapping]] = ..., object_provider: _Optional[_Union[Provider, _Mapping]] = ..., object_provider_account: _Optional[_Union[ProviderAccount, _Mapping]] = ..., object_provider_network: _Optional[_Union[ProviderNetwork, _Mapping]] = ..., object_rir: _Optional[_Union[RIR, _Mapping]] = ..., object_rack: _Optional[_Union[Rack, _Mapping]] = ..., object_rack_reservation: _Optional[_Union[RackReservation, _Mapping]] = ..., object_rack_role: _Optional[_Union[RackRole, _Mapping]] = ..., object_rack_type: _Optional[_Union[RackType, _Mapping]] = ..., object_rear_port: _Optional[_Union[RearPort, _Mapping]] = ..., object_region: _Optional[_Union[Region, _Mapping]] = ..., object_role: _Optional[_Union[Role, _Mapping]] = ..., object_route_target: _Optional[_Union[RouteTarget, _Mapping]] = ..., object_service: _Optional[_Union[Service, _Mapping]] = ..., object_site: _Optional[_Union[Site, _Mapping]] = ..., object_site_group: _Optional[_Union[SiteGroup, _Mapping]] = ..., object_tag: _Optional[_Union[Tag, _Mapping]] = ..., object_tenant: _Optional[_Union[Tenant, _Mapping]] = ..., object_tenant_group: _Optional[_Union[TenantGroup, _Mapping]] = ..., object_tunnel: _Optional[_Union[Tunnel, _Mapping]] = ..., object_tunnel_group: _Optional[_Union[TunnelGroup, _Mapping]] = ..., object_tunnel_termination: _Optional[_Union[TunnelTermination, _Mapping]] = ..., object_vlan: _Optional[_Union[VLAN, _Mapping]] = ..., object_vlan_group: _Optional[_Union[VLANGroup, _Mapping]] = ..., object_vlan_translation_policy: _Optional[_Union[VLANTranslationPolicy, _Mapping]] = ..., object_vlan_translation_rule: _Optional[_Union[VLANTranslationRule, _Mapping]] = ..., object_vm_interface: _Optional[_Union[VMInterface, _Mapping]] = ..., object_vrf: _Optional[_Union[VRF, _Mapping]] = ..., object_virtual_chassis: _Optional[_Union[VirtualChassis, _Mapping]] = ..., object_virtual_circuit: _Optional[_Union[VirtualCircuit, _Mapping]] = ..., object_virtual_circuit_termination: _Optional[_Union[VirtualCircuitTermination, _Mapping]] = ..., object_virtual_circuit_type: _Optional[_Union[VirtualCircuitType, _Mapping]] = ..., object_virtual_device_context: _Optional[_Union[VirtualDeviceContext, _Mapping]] = ..., object_virtual_disk: _Optional[_Union[VirtualDisk, _Mapping]] = ..., object_virtual_machine: _Optional[_Union[VirtualMachine, _Mapping]] = ..., object_wireless_lan: _Optional[_Union[WirelessLAN, _Mapping]] = ..., object_wireless_lan_group: _Optional[_Union[WirelessLANGroup, _Mapping]] = ..., object_wireless_link: _Optional[_Union[WirelessLink, _Mapping]] = ..., object_custom_field: _Optional[_Union[CustomField, _Mapping]] = ..., object_custom_field_choice_set: _Optional[_Union[CustomFieldChoiceSet, _Mapping]] = ..., object_journal_entry: _Optional[_Union[JournalEntry, _Mapping]] = ..., object_module_type_profile: _Optional[_Union[ModuleTypeProfile, _Mapping]] = ..., object_custom_link: _Optional[_Union[CustomLink, _Mapping]] = ..., object_owner: _Optional[_Union[Owner, _Mapping]] = ..., object_owner_group: _Optional[_Union[OwnerGroup, _Mapping]] = ..., object_cable_bundle: _Optional[_Union[CableBundle, _Mapping]] = ..., object_rack_group: _Optional[_Union[RackGroup, _Mapping]] = ..., object_script_module: _Optional[_Union[ScriptModule, _Mapping]] = ..., object_virtual_machine_type: _Optional[_Union[VirtualMachineType, _Mapping]] = ..., object_user: _Optional[_Union[User, _Mapping]] = ...) -> None: ... + object_cooling_feed: CoolingFeed + object_cooling_intake: CoolingIntake + object_cooling_outflow: CoolingOutflow + object_cooling_source: CoolingSource + object_module_bay_type: ModuleBayType + def __init__(self, object_asn: _Optional[_Union[ASN, _Mapping]] = ..., object_asn_range: _Optional[_Union[ASNRange, _Mapping]] = ..., object_aggregate: _Optional[_Union[Aggregate, _Mapping]] = ..., object_cable: _Optional[_Union[Cable, _Mapping]] = ..., object_cable_path: _Optional[_Union[CablePath, _Mapping]] = ..., object_cable_termination: _Optional[_Union[CableTermination, _Mapping]] = ..., object_circuit: _Optional[_Union[Circuit, _Mapping]] = ..., object_circuit_group: _Optional[_Union[CircuitGroup, _Mapping]] = ..., object_circuit_group_assignment: _Optional[_Union[CircuitGroupAssignment, _Mapping]] = ..., object_circuit_termination: _Optional[_Union[CircuitTermination, _Mapping]] = ..., object_circuit_type: _Optional[_Union[CircuitType, _Mapping]] = ..., object_cluster: _Optional[_Union[Cluster, _Mapping]] = ..., object_cluster_group: _Optional[_Union[ClusterGroup, _Mapping]] = ..., object_cluster_type: _Optional[_Union[ClusterType, _Mapping]] = ..., object_console_port: _Optional[_Union[ConsolePort, _Mapping]] = ..., object_console_server_port: _Optional[_Union[ConsoleServerPort, _Mapping]] = ..., object_contact: _Optional[_Union[Contact, _Mapping]] = ..., object_contact_assignment: _Optional[_Union[ContactAssignment, _Mapping]] = ..., object_contact_group: _Optional[_Union[ContactGroup, _Mapping]] = ..., object_contact_role: _Optional[_Union[ContactRole, _Mapping]] = ..., object_device: _Optional[_Union[Device, _Mapping]] = ..., object_device_bay: _Optional[_Union[DeviceBay, _Mapping]] = ..., object_device_role: _Optional[_Union[DeviceRole, _Mapping]] = ..., object_device_type: _Optional[_Union[DeviceType, _Mapping]] = ..., object_fhrp_group: _Optional[_Union[FHRPGroup, _Mapping]] = ..., object_fhrp_group_assignment: _Optional[_Union[FHRPGroupAssignment, _Mapping]] = ..., object_front_port: _Optional[_Union[FrontPort, _Mapping]] = ..., object_ike_policy: _Optional[_Union[IKEPolicy, _Mapping]] = ..., object_ike_proposal: _Optional[_Union[IKEProposal, _Mapping]] = ..., object_ip_address: _Optional[_Union[IPAddress, _Mapping]] = ..., object_ip_range: _Optional[_Union[IPRange, _Mapping]] = ..., object_ip_sec_policy: _Optional[_Union[IPSecPolicy, _Mapping]] = ..., object_ip_sec_profile: _Optional[_Union[IPSecProfile, _Mapping]] = ..., object_ip_sec_proposal: _Optional[_Union[IPSecProposal, _Mapping]] = ..., object_interface: _Optional[_Union[Interface, _Mapping]] = ..., object_inventory_item: _Optional[_Union[InventoryItem, _Mapping]] = ..., object_inventory_item_role: _Optional[_Union[InventoryItemRole, _Mapping]] = ..., object_l2vpn: _Optional[_Union[L2VPN, _Mapping]] = ..., object_l2vpn_termination: _Optional[_Union[L2VPNTermination, _Mapping]] = ..., object_location: _Optional[_Union[Location, _Mapping]] = ..., object_mac_address: _Optional[_Union[MACAddress, _Mapping]] = ..., object_manufacturer: _Optional[_Union[Manufacturer, _Mapping]] = ..., object_module: _Optional[_Union[Module, _Mapping]] = ..., object_module_bay: _Optional[_Union[ModuleBay, _Mapping]] = ..., object_module_type: _Optional[_Union[ModuleType, _Mapping]] = ..., object_platform: _Optional[_Union[Platform, _Mapping]] = ..., object_power_feed: _Optional[_Union[PowerFeed, _Mapping]] = ..., object_power_outlet: _Optional[_Union[PowerOutlet, _Mapping]] = ..., object_power_panel: _Optional[_Union[PowerPanel, _Mapping]] = ..., object_power_port: _Optional[_Union[PowerPort, _Mapping]] = ..., object_prefix: _Optional[_Union[Prefix, _Mapping]] = ..., object_provider: _Optional[_Union[Provider, _Mapping]] = ..., object_provider_account: _Optional[_Union[ProviderAccount, _Mapping]] = ..., object_provider_network: _Optional[_Union[ProviderNetwork, _Mapping]] = ..., object_rir: _Optional[_Union[RIR, _Mapping]] = ..., object_rack: _Optional[_Union[Rack, _Mapping]] = ..., object_rack_reservation: _Optional[_Union[RackReservation, _Mapping]] = ..., object_rack_role: _Optional[_Union[RackRole, _Mapping]] = ..., object_rack_type: _Optional[_Union[RackType, _Mapping]] = ..., object_rear_port: _Optional[_Union[RearPort, _Mapping]] = ..., object_region: _Optional[_Union[Region, _Mapping]] = ..., object_role: _Optional[_Union[Role, _Mapping]] = ..., object_route_target: _Optional[_Union[RouteTarget, _Mapping]] = ..., object_service: _Optional[_Union[Service, _Mapping]] = ..., object_site: _Optional[_Union[Site, _Mapping]] = ..., object_site_group: _Optional[_Union[SiteGroup, _Mapping]] = ..., object_tag: _Optional[_Union[Tag, _Mapping]] = ..., object_tenant: _Optional[_Union[Tenant, _Mapping]] = ..., object_tenant_group: _Optional[_Union[TenantGroup, _Mapping]] = ..., object_tunnel: _Optional[_Union[Tunnel, _Mapping]] = ..., object_tunnel_group: _Optional[_Union[TunnelGroup, _Mapping]] = ..., object_tunnel_termination: _Optional[_Union[TunnelTermination, _Mapping]] = ..., object_vlan: _Optional[_Union[VLAN, _Mapping]] = ..., object_vlan_group: _Optional[_Union[VLANGroup, _Mapping]] = ..., object_vlan_translation_policy: _Optional[_Union[VLANTranslationPolicy, _Mapping]] = ..., object_vlan_translation_rule: _Optional[_Union[VLANTranslationRule, _Mapping]] = ..., object_vm_interface: _Optional[_Union[VMInterface, _Mapping]] = ..., object_vrf: _Optional[_Union[VRF, _Mapping]] = ..., object_virtual_chassis: _Optional[_Union[VirtualChassis, _Mapping]] = ..., object_virtual_circuit: _Optional[_Union[VirtualCircuit, _Mapping]] = ..., object_virtual_circuit_termination: _Optional[_Union[VirtualCircuitTermination, _Mapping]] = ..., object_virtual_circuit_type: _Optional[_Union[VirtualCircuitType, _Mapping]] = ..., object_virtual_device_context: _Optional[_Union[VirtualDeviceContext, _Mapping]] = ..., object_virtual_disk: _Optional[_Union[VirtualDisk, _Mapping]] = ..., object_virtual_machine: _Optional[_Union[VirtualMachine, _Mapping]] = ..., object_wireless_lan: _Optional[_Union[WirelessLAN, _Mapping]] = ..., object_wireless_lan_group: _Optional[_Union[WirelessLANGroup, _Mapping]] = ..., object_wireless_link: _Optional[_Union[WirelessLink, _Mapping]] = ..., object_custom_field: _Optional[_Union[CustomField, _Mapping]] = ..., object_custom_field_choice_set: _Optional[_Union[CustomFieldChoiceSet, _Mapping]] = ..., object_journal_entry: _Optional[_Union[JournalEntry, _Mapping]] = ..., object_module_type_profile: _Optional[_Union[ModuleTypeProfile, _Mapping]] = ..., object_custom_link: _Optional[_Union[CustomLink, _Mapping]] = ..., object_owner: _Optional[_Union[Owner, _Mapping]] = ..., object_owner_group: _Optional[_Union[OwnerGroup, _Mapping]] = ..., object_cable_bundle: _Optional[_Union[CableBundle, _Mapping]] = ..., object_rack_group: _Optional[_Union[RackGroup, _Mapping]] = ..., object_script_module: _Optional[_Union[ScriptModule, _Mapping]] = ..., object_virtual_machine_type: _Optional[_Union[VirtualMachineType, _Mapping]] = ..., object_user: _Optional[_Union[User, _Mapping]] = ..., object_cooling_feed: _Optional[_Union[CoolingFeed, _Mapping]] = ..., object_cooling_intake: _Optional[_Union[CoolingIntake, _Mapping]] = ..., object_cooling_outflow: _Optional[_Union[CoolingOutflow, _Mapping]] = ..., object_cooling_source: _Optional[_Union[CoolingSource, _Mapping]] = ..., object_module_bay_type: _Optional[_Union[ModuleBayType, _Mapping]] = ...) -> None: ... class IKEPolicy(_message.Message): __slots__ = ("name", "description", "version", "mode", "preshared_key", "comments", "tags", "custom_fields", "proposals", "metadata", "owner") @@ -2224,7 +2280,7 @@ class IPSecProposal(_message.Message): def __init__(self, name: _Optional[str] = ..., description: _Optional[str] = ..., encryption_algorithm: _Optional[str] = ..., authentication_algorithm: _Optional[str] = ..., sa_lifetime_seconds: _Optional[int] = ..., sa_lifetime_data: _Optional[int] = ..., comments: _Optional[str] = ..., tags: _Optional[_Iterable[_Union[Tag, _Mapping]]] = ..., custom_fields: _Optional[_Mapping[str, CustomFieldValue]] = ..., metadata: _Optional[_Union[_struct_pb2.Struct, _Mapping]] = ..., owner: _Optional[_Union[Owner, _Mapping]] = ...) -> None: ... class Interface(_message.Message): - __slots__ = ("device", "module", "name", "label", "type", "enabled", "parent", "bridge", "lag", "mtu", "primary_mac_address", "speed", "duplex", "wwn", "mgmt_only", "description", "mode", "rf_role", "rf_channel", "poe_mode", "poe_type", "rf_channel_frequency", "rf_channel_width", "tx_power", "untagged_vlan", "qinq_svlan", "vlan_translation_policy", "mark_connected", "vrf", "tags", "custom_fields", "vdcs", "tagged_vlans", "wireless_lans", "metadata", "owner") + __slots__ = ("device", "module", "name", "label", "type", "enabled", "parent", "bridge", "lag", "mtu", "primary_mac_address", "speed", "duplex", "wwn", "mgmt_only", "description", "mode", "rf_role", "rf_channel", "poe_mode", "poe_type", "rf_channel_frequency", "rf_channel_width", "tx_power", "untagged_vlan", "qinq_svlan", "vlan_translation_policy", "mark_connected", "vrf", "tags", "custom_fields", "vdcs", "tagged_vlans", "wireless_lans", "metadata", "owner", "channels", "channel_id", "mac_address") class CustomFieldsEntry(_message.Message): __slots__ = ("key", "value") KEY_FIELD_NUMBER: _ClassVar[int] @@ -2268,6 +2324,9 @@ class Interface(_message.Message): WIRELESS_LANS_FIELD_NUMBER: _ClassVar[int] METADATA_FIELD_NUMBER: _ClassVar[int] OWNER_FIELD_NUMBER: _ClassVar[int] + CHANNELS_FIELD_NUMBER: _ClassVar[int] + CHANNEL_ID_FIELD_NUMBER: _ClassVar[int] + MAC_ADDRESS_FIELD_NUMBER: _ClassVar[int] device: Device module: Module name: str @@ -2304,10 +2363,13 @@ class Interface(_message.Message): wireless_lans: _containers.RepeatedCompositeFieldContainer[WirelessLAN] metadata: _struct_pb2.Struct owner: Owner - def __init__(self, device: _Optional[_Union[Device, _Mapping]] = ..., module: _Optional[_Union[Module, _Mapping]] = ..., name: _Optional[str] = ..., label: _Optional[str] = ..., type: _Optional[str] = ..., enabled: bool = ..., parent: _Optional[_Union[Interface, _Mapping]] = ..., bridge: _Optional[_Union[Interface, _Mapping]] = ..., lag: _Optional[_Union[Interface, _Mapping]] = ..., mtu: _Optional[int] = ..., primary_mac_address: _Optional[_Union[MACAddress, _Mapping]] = ..., speed: _Optional[int] = ..., duplex: _Optional[str] = ..., wwn: _Optional[str] = ..., mgmt_only: bool = ..., description: _Optional[str] = ..., mode: _Optional[str] = ..., rf_role: _Optional[str] = ..., rf_channel: _Optional[str] = ..., poe_mode: _Optional[str] = ..., poe_type: _Optional[str] = ..., rf_channel_frequency: _Optional[float] = ..., rf_channel_width: _Optional[float] = ..., tx_power: _Optional[int] = ..., untagged_vlan: _Optional[_Union[VLAN, _Mapping]] = ..., qinq_svlan: _Optional[_Union[VLAN, _Mapping]] = ..., vlan_translation_policy: _Optional[_Union[VLANTranslationPolicy, _Mapping]] = ..., mark_connected: bool = ..., vrf: _Optional[_Union[VRF, _Mapping]] = ..., tags: _Optional[_Iterable[_Union[Tag, _Mapping]]] = ..., custom_fields: _Optional[_Mapping[str, CustomFieldValue]] = ..., vdcs: _Optional[_Iterable[_Union[VirtualDeviceContext, _Mapping]]] = ..., tagged_vlans: _Optional[_Iterable[_Union[VLAN, _Mapping]]] = ..., wireless_lans: _Optional[_Iterable[_Union[WirelessLAN, _Mapping]]] = ..., metadata: _Optional[_Union[_struct_pb2.Struct, _Mapping]] = ..., owner: _Optional[_Union[Owner, _Mapping]] = ...) -> None: ... + channels: int + channel_id: int + mac_address: str + def __init__(self, device: _Optional[_Union[Device, _Mapping]] = ..., module: _Optional[_Union[Module, _Mapping]] = ..., name: _Optional[str] = ..., label: _Optional[str] = ..., type: _Optional[str] = ..., enabled: bool = ..., parent: _Optional[_Union[Interface, _Mapping]] = ..., bridge: _Optional[_Union[Interface, _Mapping]] = ..., lag: _Optional[_Union[Interface, _Mapping]] = ..., mtu: _Optional[int] = ..., primary_mac_address: _Optional[_Union[MACAddress, _Mapping]] = ..., speed: _Optional[int] = ..., duplex: _Optional[str] = ..., wwn: _Optional[str] = ..., mgmt_only: bool = ..., description: _Optional[str] = ..., mode: _Optional[str] = ..., rf_role: _Optional[str] = ..., rf_channel: _Optional[str] = ..., poe_mode: _Optional[str] = ..., poe_type: _Optional[str] = ..., rf_channel_frequency: _Optional[float] = ..., rf_channel_width: _Optional[float] = ..., tx_power: _Optional[int] = ..., untagged_vlan: _Optional[_Union[VLAN, _Mapping]] = ..., qinq_svlan: _Optional[_Union[VLAN, _Mapping]] = ..., vlan_translation_policy: _Optional[_Union[VLANTranslationPolicy, _Mapping]] = ..., mark_connected: bool = ..., vrf: _Optional[_Union[VRF, _Mapping]] = ..., tags: _Optional[_Iterable[_Union[Tag, _Mapping]]] = ..., custom_fields: _Optional[_Mapping[str, CustomFieldValue]] = ..., vdcs: _Optional[_Iterable[_Union[VirtualDeviceContext, _Mapping]]] = ..., tagged_vlans: _Optional[_Iterable[_Union[VLAN, _Mapping]]] = ..., wireless_lans: _Optional[_Iterable[_Union[WirelessLAN, _Mapping]]] = ..., metadata: _Optional[_Union[_struct_pb2.Struct, _Mapping]] = ..., owner: _Optional[_Union[Owner, _Mapping]] = ..., channels: _Optional[int] = ..., channel_id: _Optional[int] = ..., mac_address: _Optional[str] = ...) -> None: ... class InventoryItem(_message.Message): - __slots__ = ("device", "parent", "name", "label", "status", "role", "manufacturer", "part_id", "serial", "asset_tag", "discovered", "description", "component_console_port", "component_console_server_port", "component_front_port", "component_interface", "component_power_outlet", "component_power_port", "component_rear_port", "tags", "custom_fields", "metadata", "owner") + __slots__ = ("device", "parent", "name", "label", "status", "role", "manufacturer", "part_id", "serial", "asset_tag", "discovered", "description", "component_console_port", "component_console_server_port", "component_front_port", "component_interface", "component_power_outlet", "component_power_port", "component_rear_port", "component_cooling_intake", "component_cooling_outflow", "tags", "custom_fields", "metadata", "owner") class CustomFieldsEntry(_message.Message): __slots__ = ("key", "value") KEY_FIELD_NUMBER: _ClassVar[int] @@ -2334,6 +2396,8 @@ class InventoryItem(_message.Message): COMPONENT_POWER_OUTLET_FIELD_NUMBER: _ClassVar[int] COMPONENT_POWER_PORT_FIELD_NUMBER: _ClassVar[int] COMPONENT_REAR_PORT_FIELD_NUMBER: _ClassVar[int] + COMPONENT_COOLING_INTAKE_FIELD_NUMBER: _ClassVar[int] + COMPONENT_COOLING_OUTFLOW_FIELD_NUMBER: _ClassVar[int] TAGS_FIELD_NUMBER: _ClassVar[int] CUSTOM_FIELDS_FIELD_NUMBER: _ClassVar[int] METADATA_FIELD_NUMBER: _ClassVar[int] @@ -2357,11 +2421,13 @@ class InventoryItem(_message.Message): component_power_outlet: PowerOutlet component_power_port: PowerPort component_rear_port: RearPort + component_cooling_intake: CoolingIntake + component_cooling_outflow: CoolingOutflow tags: _containers.RepeatedCompositeFieldContainer[Tag] custom_fields: _containers.MessageMap[str, CustomFieldValue] metadata: _struct_pb2.Struct owner: Owner - def __init__(self, device: _Optional[_Union[Device, _Mapping]] = ..., parent: _Optional[_Union[InventoryItem, _Mapping]] = ..., name: _Optional[str] = ..., label: _Optional[str] = ..., status: _Optional[str] = ..., role: _Optional[_Union[InventoryItemRole, _Mapping]] = ..., manufacturer: _Optional[_Union[Manufacturer, _Mapping]] = ..., part_id: _Optional[str] = ..., serial: _Optional[str] = ..., asset_tag: _Optional[str] = ..., discovered: bool = ..., description: _Optional[str] = ..., component_console_port: _Optional[_Union[ConsolePort, _Mapping]] = ..., component_console_server_port: _Optional[_Union[ConsoleServerPort, _Mapping]] = ..., component_front_port: _Optional[_Union[FrontPort, _Mapping]] = ..., component_interface: _Optional[_Union[Interface, _Mapping]] = ..., component_power_outlet: _Optional[_Union[PowerOutlet, _Mapping]] = ..., component_power_port: _Optional[_Union[PowerPort, _Mapping]] = ..., component_rear_port: _Optional[_Union[RearPort, _Mapping]] = ..., tags: _Optional[_Iterable[_Union[Tag, _Mapping]]] = ..., custom_fields: _Optional[_Mapping[str, CustomFieldValue]] = ..., metadata: _Optional[_Union[_struct_pb2.Struct, _Mapping]] = ..., owner: _Optional[_Union[Owner, _Mapping]] = ...) -> None: ... + def __init__(self, device: _Optional[_Union[Device, _Mapping]] = ..., parent: _Optional[_Union[InventoryItem, _Mapping]] = ..., name: _Optional[str] = ..., label: _Optional[str] = ..., status: _Optional[str] = ..., role: _Optional[_Union[InventoryItemRole, _Mapping]] = ..., manufacturer: _Optional[_Union[Manufacturer, _Mapping]] = ..., part_id: _Optional[str] = ..., serial: _Optional[str] = ..., asset_tag: _Optional[str] = ..., discovered: bool = ..., description: _Optional[str] = ..., component_console_port: _Optional[_Union[ConsolePort, _Mapping]] = ..., component_console_server_port: _Optional[_Union[ConsoleServerPort, _Mapping]] = ..., component_front_port: _Optional[_Union[FrontPort, _Mapping]] = ..., component_interface: _Optional[_Union[Interface, _Mapping]] = ..., component_power_outlet: _Optional[_Union[PowerOutlet, _Mapping]] = ..., component_power_port: _Optional[_Union[PowerPort, _Mapping]] = ..., component_rear_port: _Optional[_Union[RearPort, _Mapping]] = ..., component_cooling_intake: _Optional[_Union[CoolingIntake, _Mapping]] = ..., component_cooling_outflow: _Optional[_Union[CoolingOutflow, _Mapping]] = ..., tags: _Optional[_Iterable[_Union[Tag, _Mapping]]] = ..., custom_fields: _Optional[_Mapping[str, CustomFieldValue]] = ..., metadata: _Optional[_Union[_struct_pb2.Struct, _Mapping]] = ..., owner: _Optional[_Union[Owner, _Mapping]] = ...) -> None: ... class InventoryItemRole(_message.Message): __slots__ = ("name", "slug", "color", "description", "tags", "custom_fields", "metadata", "owner", "comments") @@ -2432,7 +2498,7 @@ class L2VPN(_message.Message): def __init__(self, identifier: _Optional[int] = ..., name: _Optional[str] = ..., slug: _Optional[str] = ..., type: _Optional[str] = ..., description: _Optional[str] = ..., comments: _Optional[str] = ..., tenant: _Optional[_Union[Tenant, _Mapping]] = ..., tags: _Optional[_Iterable[_Union[Tag, _Mapping]]] = ..., custom_fields: _Optional[_Mapping[str, CustomFieldValue]] = ..., import_targets: _Optional[_Iterable[_Union[RouteTarget, _Mapping]]] = ..., export_targets: _Optional[_Iterable[_Union[RouteTarget, _Mapping]]] = ..., status: _Optional[str] = ..., metadata: _Optional[_Union[_struct_pb2.Struct, _Mapping]] = ..., owner: _Optional[_Union[Owner, _Mapping]] = ...) -> None: ... class L2VPNTermination(_message.Message): - __slots__ = ("l2vpn", "assigned_object_interface", "assigned_object_vlan", "assigned_object_vm_interface", "assigned_object_asn", "assigned_object_asn_range", "assigned_object_aggregate", "assigned_object_cable", "assigned_object_cable_path", "assigned_object_cable_termination", "assigned_object_circuit", "assigned_object_circuit_group", "assigned_object_circuit_group_assignment", "assigned_object_circuit_termination", "assigned_object_circuit_type", "assigned_object_cluster", "assigned_object_cluster_group", "assigned_object_cluster_type", "assigned_object_console_port", "assigned_object_console_server_port", "assigned_object_contact", "assigned_object_contact_assignment", "assigned_object_contact_group", "assigned_object_contact_role", "assigned_object_custom_field", "assigned_object_custom_field_choice_set", "assigned_object_device", "assigned_object_device_bay", "assigned_object_device_role", "assigned_object_device_type", "assigned_object_fhrp_group", "assigned_object_fhrp_group_assignment", "assigned_object_front_port", "assigned_object_ike_policy", "assigned_object_ike_proposal", "assigned_object_ip_address", "assigned_object_ip_range", "assigned_object_ip_sec_policy", "assigned_object_ip_sec_profile", "assigned_object_ip_sec_proposal", "assigned_object_inventory_item", "assigned_object_inventory_item_role", "assigned_object_journal_entry", "assigned_object_l2vpn", "assigned_object_l2vpn_termination", "assigned_object_location", "assigned_object_mac_address", "assigned_object_manufacturer", "assigned_object_module", "assigned_object_module_bay", "assigned_object_module_type", "assigned_object_module_type_profile", "assigned_object_platform", "assigned_object_power_feed", "assigned_object_power_outlet", "assigned_object_power_panel", "assigned_object_power_port", "assigned_object_prefix", "assigned_object_provider", "assigned_object_provider_account", "assigned_object_provider_network", "assigned_object_rir", "assigned_object_rack", "assigned_object_rack_reservation", "assigned_object_rack_role", "assigned_object_rack_type", "assigned_object_rear_port", "assigned_object_region", "assigned_object_role", "assigned_object_route_target", "assigned_object_service", "assigned_object_site", "assigned_object_site_group", "assigned_object_tag", "assigned_object_tenant", "assigned_object_tenant_group", "assigned_object_tunnel", "assigned_object_tunnel_group", "assigned_object_tunnel_termination", "assigned_object_vlan_group", "assigned_object_vlan_translation_policy", "assigned_object_vlan_translation_rule", "assigned_object_vrf", "assigned_object_virtual_chassis", "assigned_object_virtual_circuit", "assigned_object_virtual_circuit_termination", "assigned_object_virtual_circuit_type", "assigned_object_virtual_device_context", "assigned_object_virtual_disk", "assigned_object_virtual_machine", "assigned_object_wireless_lan", "assigned_object_wireless_lan_group", "assigned_object_wireless_link", "assigned_object_custom_link", "assigned_object_owner", "assigned_object_owner_group", "assigned_object_cable_bundle", "assigned_object_rack_group", "assigned_object_script_module", "assigned_object_virtual_machine_type", "assigned_object_user", "tags", "custom_fields", "metadata") + __slots__ = ("l2vpn", "assigned_object_interface", "assigned_object_vlan", "assigned_object_vm_interface", "assigned_object_asn", "assigned_object_asn_range", "assigned_object_aggregate", "assigned_object_cable", "assigned_object_cable_path", "assigned_object_cable_termination", "assigned_object_circuit", "assigned_object_circuit_group", "assigned_object_circuit_group_assignment", "assigned_object_circuit_termination", "assigned_object_circuit_type", "assigned_object_cluster", "assigned_object_cluster_group", "assigned_object_cluster_type", "assigned_object_console_port", "assigned_object_console_server_port", "assigned_object_contact", "assigned_object_contact_assignment", "assigned_object_contact_group", "assigned_object_contact_role", "assigned_object_custom_field", "assigned_object_custom_field_choice_set", "assigned_object_device", "assigned_object_device_bay", "assigned_object_device_role", "assigned_object_device_type", "assigned_object_fhrp_group", "assigned_object_fhrp_group_assignment", "assigned_object_front_port", "assigned_object_ike_policy", "assigned_object_ike_proposal", "assigned_object_ip_address", "assigned_object_ip_range", "assigned_object_ip_sec_policy", "assigned_object_ip_sec_profile", "assigned_object_ip_sec_proposal", "assigned_object_inventory_item", "assigned_object_inventory_item_role", "assigned_object_journal_entry", "assigned_object_l2vpn", "assigned_object_l2vpn_termination", "assigned_object_location", "assigned_object_mac_address", "assigned_object_manufacturer", "assigned_object_module", "assigned_object_module_bay", "assigned_object_module_type", "assigned_object_module_type_profile", "assigned_object_platform", "assigned_object_power_feed", "assigned_object_power_outlet", "assigned_object_power_panel", "assigned_object_power_port", "assigned_object_prefix", "assigned_object_provider", "assigned_object_provider_account", "assigned_object_provider_network", "assigned_object_rir", "assigned_object_rack", "assigned_object_rack_reservation", "assigned_object_rack_role", "assigned_object_rack_type", "assigned_object_rear_port", "assigned_object_region", "assigned_object_role", "assigned_object_route_target", "assigned_object_service", "assigned_object_site", "assigned_object_site_group", "assigned_object_tag", "assigned_object_tenant", "assigned_object_tenant_group", "assigned_object_tunnel", "assigned_object_tunnel_group", "assigned_object_tunnel_termination", "assigned_object_vlan_group", "assigned_object_vlan_translation_policy", "assigned_object_vlan_translation_rule", "assigned_object_vrf", "assigned_object_virtual_chassis", "assigned_object_virtual_circuit", "assigned_object_virtual_circuit_termination", "assigned_object_virtual_circuit_type", "assigned_object_virtual_device_context", "assigned_object_virtual_disk", "assigned_object_virtual_machine", "assigned_object_wireless_lan", "assigned_object_wireless_lan_group", "assigned_object_wireless_link", "assigned_object_custom_link", "assigned_object_owner", "assigned_object_owner_group", "assigned_object_cable_bundle", "assigned_object_rack_group", "assigned_object_script_module", "assigned_object_virtual_machine_type", "assigned_object_user", "assigned_object_cooling_feed", "assigned_object_cooling_intake", "assigned_object_cooling_outflow", "assigned_object_cooling_source", "assigned_object_module_bay_type", "tags", "custom_fields", "metadata") class CustomFieldsEntry(_message.Message): __slots__ = ("key", "value") KEY_FIELD_NUMBER: _ClassVar[int] @@ -2541,6 +2607,11 @@ class L2VPNTermination(_message.Message): ASSIGNED_OBJECT_SCRIPT_MODULE_FIELD_NUMBER: _ClassVar[int] ASSIGNED_OBJECT_VIRTUAL_MACHINE_TYPE_FIELD_NUMBER: _ClassVar[int] ASSIGNED_OBJECT_USER_FIELD_NUMBER: _ClassVar[int] + ASSIGNED_OBJECT_COOLING_FEED_FIELD_NUMBER: _ClassVar[int] + ASSIGNED_OBJECT_COOLING_INTAKE_FIELD_NUMBER: _ClassVar[int] + ASSIGNED_OBJECT_COOLING_OUTFLOW_FIELD_NUMBER: _ClassVar[int] + ASSIGNED_OBJECT_COOLING_SOURCE_FIELD_NUMBER: _ClassVar[int] + ASSIGNED_OBJECT_MODULE_BAY_TYPE_FIELD_NUMBER: _ClassVar[int] TAGS_FIELD_NUMBER: _ClassVar[int] CUSTOM_FIELDS_FIELD_NUMBER: _ClassVar[int] METADATA_FIELD_NUMBER: _ClassVar[int] @@ -2645,10 +2716,15 @@ class L2VPNTermination(_message.Message): assigned_object_script_module: ScriptModule assigned_object_virtual_machine_type: VirtualMachineType assigned_object_user: User + assigned_object_cooling_feed: CoolingFeed + assigned_object_cooling_intake: CoolingIntake + assigned_object_cooling_outflow: CoolingOutflow + assigned_object_cooling_source: CoolingSource + assigned_object_module_bay_type: ModuleBayType tags: _containers.RepeatedCompositeFieldContainer[Tag] custom_fields: _containers.MessageMap[str, CustomFieldValue] metadata: _struct_pb2.Struct - def __init__(self, l2vpn: _Optional[_Union[L2VPN, _Mapping]] = ..., assigned_object_interface: _Optional[_Union[Interface, _Mapping]] = ..., assigned_object_vlan: _Optional[_Union[VLAN, _Mapping]] = ..., assigned_object_vm_interface: _Optional[_Union[VMInterface, _Mapping]] = ..., assigned_object_asn: _Optional[_Union[ASN, _Mapping]] = ..., assigned_object_asn_range: _Optional[_Union[ASNRange, _Mapping]] = ..., assigned_object_aggregate: _Optional[_Union[Aggregate, _Mapping]] = ..., assigned_object_cable: _Optional[_Union[Cable, _Mapping]] = ..., assigned_object_cable_path: _Optional[_Union[CablePath, _Mapping]] = ..., assigned_object_cable_termination: _Optional[_Union[CableTermination, _Mapping]] = ..., assigned_object_circuit: _Optional[_Union[Circuit, _Mapping]] = ..., assigned_object_circuit_group: _Optional[_Union[CircuitGroup, _Mapping]] = ..., assigned_object_circuit_group_assignment: _Optional[_Union[CircuitGroupAssignment, _Mapping]] = ..., assigned_object_circuit_termination: _Optional[_Union[CircuitTermination, _Mapping]] = ..., assigned_object_circuit_type: _Optional[_Union[CircuitType, _Mapping]] = ..., assigned_object_cluster: _Optional[_Union[Cluster, _Mapping]] = ..., assigned_object_cluster_group: _Optional[_Union[ClusterGroup, _Mapping]] = ..., assigned_object_cluster_type: _Optional[_Union[ClusterType, _Mapping]] = ..., assigned_object_console_port: _Optional[_Union[ConsolePort, _Mapping]] = ..., assigned_object_console_server_port: _Optional[_Union[ConsoleServerPort, _Mapping]] = ..., assigned_object_contact: _Optional[_Union[Contact, _Mapping]] = ..., assigned_object_contact_assignment: _Optional[_Union[ContactAssignment, _Mapping]] = ..., assigned_object_contact_group: _Optional[_Union[ContactGroup, _Mapping]] = ..., assigned_object_contact_role: _Optional[_Union[ContactRole, _Mapping]] = ..., assigned_object_custom_field: _Optional[_Union[CustomField, _Mapping]] = ..., assigned_object_custom_field_choice_set: _Optional[_Union[CustomFieldChoiceSet, _Mapping]] = ..., assigned_object_device: _Optional[_Union[Device, _Mapping]] = ..., assigned_object_device_bay: _Optional[_Union[DeviceBay, _Mapping]] = ..., assigned_object_device_role: _Optional[_Union[DeviceRole, _Mapping]] = ..., assigned_object_device_type: _Optional[_Union[DeviceType, _Mapping]] = ..., assigned_object_fhrp_group: _Optional[_Union[FHRPGroup, _Mapping]] = ..., assigned_object_fhrp_group_assignment: _Optional[_Union[FHRPGroupAssignment, _Mapping]] = ..., assigned_object_front_port: _Optional[_Union[FrontPort, _Mapping]] = ..., assigned_object_ike_policy: _Optional[_Union[IKEPolicy, _Mapping]] = ..., assigned_object_ike_proposal: _Optional[_Union[IKEProposal, _Mapping]] = ..., assigned_object_ip_address: _Optional[_Union[IPAddress, _Mapping]] = ..., assigned_object_ip_range: _Optional[_Union[IPRange, _Mapping]] = ..., assigned_object_ip_sec_policy: _Optional[_Union[IPSecPolicy, _Mapping]] = ..., assigned_object_ip_sec_profile: _Optional[_Union[IPSecProfile, _Mapping]] = ..., assigned_object_ip_sec_proposal: _Optional[_Union[IPSecProposal, _Mapping]] = ..., assigned_object_inventory_item: _Optional[_Union[InventoryItem, _Mapping]] = ..., assigned_object_inventory_item_role: _Optional[_Union[InventoryItemRole, _Mapping]] = ..., assigned_object_journal_entry: _Optional[_Union[JournalEntry, _Mapping]] = ..., assigned_object_l2vpn: _Optional[_Union[L2VPN, _Mapping]] = ..., assigned_object_l2vpn_termination: _Optional[_Union[L2VPNTermination, _Mapping]] = ..., assigned_object_location: _Optional[_Union[Location, _Mapping]] = ..., assigned_object_mac_address: _Optional[_Union[MACAddress, _Mapping]] = ..., assigned_object_manufacturer: _Optional[_Union[Manufacturer, _Mapping]] = ..., assigned_object_module: _Optional[_Union[Module, _Mapping]] = ..., assigned_object_module_bay: _Optional[_Union[ModuleBay, _Mapping]] = ..., assigned_object_module_type: _Optional[_Union[ModuleType, _Mapping]] = ..., assigned_object_module_type_profile: _Optional[_Union[ModuleTypeProfile, _Mapping]] = ..., assigned_object_platform: _Optional[_Union[Platform, _Mapping]] = ..., assigned_object_power_feed: _Optional[_Union[PowerFeed, _Mapping]] = ..., assigned_object_power_outlet: _Optional[_Union[PowerOutlet, _Mapping]] = ..., assigned_object_power_panel: _Optional[_Union[PowerPanel, _Mapping]] = ..., assigned_object_power_port: _Optional[_Union[PowerPort, _Mapping]] = ..., assigned_object_prefix: _Optional[_Union[Prefix, _Mapping]] = ..., assigned_object_provider: _Optional[_Union[Provider, _Mapping]] = ..., assigned_object_provider_account: _Optional[_Union[ProviderAccount, _Mapping]] = ..., assigned_object_provider_network: _Optional[_Union[ProviderNetwork, _Mapping]] = ..., assigned_object_rir: _Optional[_Union[RIR, _Mapping]] = ..., assigned_object_rack: _Optional[_Union[Rack, _Mapping]] = ..., assigned_object_rack_reservation: _Optional[_Union[RackReservation, _Mapping]] = ..., assigned_object_rack_role: _Optional[_Union[RackRole, _Mapping]] = ..., assigned_object_rack_type: _Optional[_Union[RackType, _Mapping]] = ..., assigned_object_rear_port: _Optional[_Union[RearPort, _Mapping]] = ..., assigned_object_region: _Optional[_Union[Region, _Mapping]] = ..., assigned_object_role: _Optional[_Union[Role, _Mapping]] = ..., assigned_object_route_target: _Optional[_Union[RouteTarget, _Mapping]] = ..., assigned_object_service: _Optional[_Union[Service, _Mapping]] = ..., assigned_object_site: _Optional[_Union[Site, _Mapping]] = ..., assigned_object_site_group: _Optional[_Union[SiteGroup, _Mapping]] = ..., assigned_object_tag: _Optional[_Union[Tag, _Mapping]] = ..., assigned_object_tenant: _Optional[_Union[Tenant, _Mapping]] = ..., assigned_object_tenant_group: _Optional[_Union[TenantGroup, _Mapping]] = ..., assigned_object_tunnel: _Optional[_Union[Tunnel, _Mapping]] = ..., assigned_object_tunnel_group: _Optional[_Union[TunnelGroup, _Mapping]] = ..., assigned_object_tunnel_termination: _Optional[_Union[TunnelTermination, _Mapping]] = ..., assigned_object_vlan_group: _Optional[_Union[VLANGroup, _Mapping]] = ..., assigned_object_vlan_translation_policy: _Optional[_Union[VLANTranslationPolicy, _Mapping]] = ..., assigned_object_vlan_translation_rule: _Optional[_Union[VLANTranslationRule, _Mapping]] = ..., assigned_object_vrf: _Optional[_Union[VRF, _Mapping]] = ..., assigned_object_virtual_chassis: _Optional[_Union[VirtualChassis, _Mapping]] = ..., assigned_object_virtual_circuit: _Optional[_Union[VirtualCircuit, _Mapping]] = ..., assigned_object_virtual_circuit_termination: _Optional[_Union[VirtualCircuitTermination, _Mapping]] = ..., assigned_object_virtual_circuit_type: _Optional[_Union[VirtualCircuitType, _Mapping]] = ..., assigned_object_virtual_device_context: _Optional[_Union[VirtualDeviceContext, _Mapping]] = ..., assigned_object_virtual_disk: _Optional[_Union[VirtualDisk, _Mapping]] = ..., assigned_object_virtual_machine: _Optional[_Union[VirtualMachine, _Mapping]] = ..., assigned_object_wireless_lan: _Optional[_Union[WirelessLAN, _Mapping]] = ..., assigned_object_wireless_lan_group: _Optional[_Union[WirelessLANGroup, _Mapping]] = ..., assigned_object_wireless_link: _Optional[_Union[WirelessLink, _Mapping]] = ..., assigned_object_custom_link: _Optional[_Union[CustomLink, _Mapping]] = ..., assigned_object_owner: _Optional[_Union[Owner, _Mapping]] = ..., assigned_object_owner_group: _Optional[_Union[OwnerGroup, _Mapping]] = ..., assigned_object_cable_bundle: _Optional[_Union[CableBundle, _Mapping]] = ..., assigned_object_rack_group: _Optional[_Union[RackGroup, _Mapping]] = ..., assigned_object_script_module: _Optional[_Union[ScriptModule, _Mapping]] = ..., assigned_object_virtual_machine_type: _Optional[_Union[VirtualMachineType, _Mapping]] = ..., assigned_object_user: _Optional[_Union[User, _Mapping]] = ..., tags: _Optional[_Iterable[_Union[Tag, _Mapping]]] = ..., custom_fields: _Optional[_Mapping[str, CustomFieldValue]] = ..., metadata: _Optional[_Union[_struct_pb2.Struct, _Mapping]] = ...) -> None: ... + def __init__(self, l2vpn: _Optional[_Union[L2VPN, _Mapping]] = ..., assigned_object_interface: _Optional[_Union[Interface, _Mapping]] = ..., assigned_object_vlan: _Optional[_Union[VLAN, _Mapping]] = ..., assigned_object_vm_interface: _Optional[_Union[VMInterface, _Mapping]] = ..., assigned_object_asn: _Optional[_Union[ASN, _Mapping]] = ..., assigned_object_asn_range: _Optional[_Union[ASNRange, _Mapping]] = ..., assigned_object_aggregate: _Optional[_Union[Aggregate, _Mapping]] = ..., assigned_object_cable: _Optional[_Union[Cable, _Mapping]] = ..., assigned_object_cable_path: _Optional[_Union[CablePath, _Mapping]] = ..., assigned_object_cable_termination: _Optional[_Union[CableTermination, _Mapping]] = ..., assigned_object_circuit: _Optional[_Union[Circuit, _Mapping]] = ..., assigned_object_circuit_group: _Optional[_Union[CircuitGroup, _Mapping]] = ..., assigned_object_circuit_group_assignment: _Optional[_Union[CircuitGroupAssignment, _Mapping]] = ..., assigned_object_circuit_termination: _Optional[_Union[CircuitTermination, _Mapping]] = ..., assigned_object_circuit_type: _Optional[_Union[CircuitType, _Mapping]] = ..., assigned_object_cluster: _Optional[_Union[Cluster, _Mapping]] = ..., assigned_object_cluster_group: _Optional[_Union[ClusterGroup, _Mapping]] = ..., assigned_object_cluster_type: _Optional[_Union[ClusterType, _Mapping]] = ..., assigned_object_console_port: _Optional[_Union[ConsolePort, _Mapping]] = ..., assigned_object_console_server_port: _Optional[_Union[ConsoleServerPort, _Mapping]] = ..., assigned_object_contact: _Optional[_Union[Contact, _Mapping]] = ..., assigned_object_contact_assignment: _Optional[_Union[ContactAssignment, _Mapping]] = ..., assigned_object_contact_group: _Optional[_Union[ContactGroup, _Mapping]] = ..., assigned_object_contact_role: _Optional[_Union[ContactRole, _Mapping]] = ..., assigned_object_custom_field: _Optional[_Union[CustomField, _Mapping]] = ..., assigned_object_custom_field_choice_set: _Optional[_Union[CustomFieldChoiceSet, _Mapping]] = ..., assigned_object_device: _Optional[_Union[Device, _Mapping]] = ..., assigned_object_device_bay: _Optional[_Union[DeviceBay, _Mapping]] = ..., assigned_object_device_role: _Optional[_Union[DeviceRole, _Mapping]] = ..., assigned_object_device_type: _Optional[_Union[DeviceType, _Mapping]] = ..., assigned_object_fhrp_group: _Optional[_Union[FHRPGroup, _Mapping]] = ..., assigned_object_fhrp_group_assignment: _Optional[_Union[FHRPGroupAssignment, _Mapping]] = ..., assigned_object_front_port: _Optional[_Union[FrontPort, _Mapping]] = ..., assigned_object_ike_policy: _Optional[_Union[IKEPolicy, _Mapping]] = ..., assigned_object_ike_proposal: _Optional[_Union[IKEProposal, _Mapping]] = ..., assigned_object_ip_address: _Optional[_Union[IPAddress, _Mapping]] = ..., assigned_object_ip_range: _Optional[_Union[IPRange, _Mapping]] = ..., assigned_object_ip_sec_policy: _Optional[_Union[IPSecPolicy, _Mapping]] = ..., assigned_object_ip_sec_profile: _Optional[_Union[IPSecProfile, _Mapping]] = ..., assigned_object_ip_sec_proposal: _Optional[_Union[IPSecProposal, _Mapping]] = ..., assigned_object_inventory_item: _Optional[_Union[InventoryItem, _Mapping]] = ..., assigned_object_inventory_item_role: _Optional[_Union[InventoryItemRole, _Mapping]] = ..., assigned_object_journal_entry: _Optional[_Union[JournalEntry, _Mapping]] = ..., assigned_object_l2vpn: _Optional[_Union[L2VPN, _Mapping]] = ..., assigned_object_l2vpn_termination: _Optional[_Union[L2VPNTermination, _Mapping]] = ..., assigned_object_location: _Optional[_Union[Location, _Mapping]] = ..., assigned_object_mac_address: _Optional[_Union[MACAddress, _Mapping]] = ..., assigned_object_manufacturer: _Optional[_Union[Manufacturer, _Mapping]] = ..., assigned_object_module: _Optional[_Union[Module, _Mapping]] = ..., assigned_object_module_bay: _Optional[_Union[ModuleBay, _Mapping]] = ..., assigned_object_module_type: _Optional[_Union[ModuleType, _Mapping]] = ..., assigned_object_module_type_profile: _Optional[_Union[ModuleTypeProfile, _Mapping]] = ..., assigned_object_platform: _Optional[_Union[Platform, _Mapping]] = ..., assigned_object_power_feed: _Optional[_Union[PowerFeed, _Mapping]] = ..., assigned_object_power_outlet: _Optional[_Union[PowerOutlet, _Mapping]] = ..., assigned_object_power_panel: _Optional[_Union[PowerPanel, _Mapping]] = ..., assigned_object_power_port: _Optional[_Union[PowerPort, _Mapping]] = ..., assigned_object_prefix: _Optional[_Union[Prefix, _Mapping]] = ..., assigned_object_provider: _Optional[_Union[Provider, _Mapping]] = ..., assigned_object_provider_account: _Optional[_Union[ProviderAccount, _Mapping]] = ..., assigned_object_provider_network: _Optional[_Union[ProviderNetwork, _Mapping]] = ..., assigned_object_rir: _Optional[_Union[RIR, _Mapping]] = ..., assigned_object_rack: _Optional[_Union[Rack, _Mapping]] = ..., assigned_object_rack_reservation: _Optional[_Union[RackReservation, _Mapping]] = ..., assigned_object_rack_role: _Optional[_Union[RackRole, _Mapping]] = ..., assigned_object_rack_type: _Optional[_Union[RackType, _Mapping]] = ..., assigned_object_rear_port: _Optional[_Union[RearPort, _Mapping]] = ..., assigned_object_region: _Optional[_Union[Region, _Mapping]] = ..., assigned_object_role: _Optional[_Union[Role, _Mapping]] = ..., assigned_object_route_target: _Optional[_Union[RouteTarget, _Mapping]] = ..., assigned_object_service: _Optional[_Union[Service, _Mapping]] = ..., assigned_object_site: _Optional[_Union[Site, _Mapping]] = ..., assigned_object_site_group: _Optional[_Union[SiteGroup, _Mapping]] = ..., assigned_object_tag: _Optional[_Union[Tag, _Mapping]] = ..., assigned_object_tenant: _Optional[_Union[Tenant, _Mapping]] = ..., assigned_object_tenant_group: _Optional[_Union[TenantGroup, _Mapping]] = ..., assigned_object_tunnel: _Optional[_Union[Tunnel, _Mapping]] = ..., assigned_object_tunnel_group: _Optional[_Union[TunnelGroup, _Mapping]] = ..., assigned_object_tunnel_termination: _Optional[_Union[TunnelTermination, _Mapping]] = ..., assigned_object_vlan_group: _Optional[_Union[VLANGroup, _Mapping]] = ..., assigned_object_vlan_translation_policy: _Optional[_Union[VLANTranslationPolicy, _Mapping]] = ..., assigned_object_vlan_translation_rule: _Optional[_Union[VLANTranslationRule, _Mapping]] = ..., assigned_object_vrf: _Optional[_Union[VRF, _Mapping]] = ..., assigned_object_virtual_chassis: _Optional[_Union[VirtualChassis, _Mapping]] = ..., assigned_object_virtual_circuit: _Optional[_Union[VirtualCircuit, _Mapping]] = ..., assigned_object_virtual_circuit_termination: _Optional[_Union[VirtualCircuitTermination, _Mapping]] = ..., assigned_object_virtual_circuit_type: _Optional[_Union[VirtualCircuitType, _Mapping]] = ..., assigned_object_virtual_device_context: _Optional[_Union[VirtualDeviceContext, _Mapping]] = ..., assigned_object_virtual_disk: _Optional[_Union[VirtualDisk, _Mapping]] = ..., assigned_object_virtual_machine: _Optional[_Union[VirtualMachine, _Mapping]] = ..., assigned_object_wireless_lan: _Optional[_Union[WirelessLAN, _Mapping]] = ..., assigned_object_wireless_lan_group: _Optional[_Union[WirelessLANGroup, _Mapping]] = ..., assigned_object_wireless_link: _Optional[_Union[WirelessLink, _Mapping]] = ..., assigned_object_custom_link: _Optional[_Union[CustomLink, _Mapping]] = ..., assigned_object_owner: _Optional[_Union[Owner, _Mapping]] = ..., assigned_object_owner_group: _Optional[_Union[OwnerGroup, _Mapping]] = ..., assigned_object_cable_bundle: _Optional[_Union[CableBundle, _Mapping]] = ..., assigned_object_rack_group: _Optional[_Union[RackGroup, _Mapping]] = ..., assigned_object_script_module: _Optional[_Union[ScriptModule, _Mapping]] = ..., assigned_object_virtual_machine_type: _Optional[_Union[VirtualMachineType, _Mapping]] = ..., assigned_object_user: _Optional[_Union[User, _Mapping]] = ..., assigned_object_cooling_feed: _Optional[_Union[CoolingFeed, _Mapping]] = ..., assigned_object_cooling_intake: _Optional[_Union[CoolingIntake, _Mapping]] = ..., assigned_object_cooling_outflow: _Optional[_Union[CoolingOutflow, _Mapping]] = ..., assigned_object_cooling_source: _Optional[_Union[CoolingSource, _Mapping]] = ..., assigned_object_module_bay_type: _Optional[_Union[ModuleBayType, _Mapping]] = ..., tags: _Optional[_Iterable[_Union[Tag, _Mapping]]] = ..., custom_fields: _Optional[_Mapping[str, CustomFieldValue]] = ..., metadata: _Optional[_Union[_struct_pb2.Struct, _Mapping]] = ...) -> None: ... class Location(_message.Message): __slots__ = ("name", "slug", "site", "parent", "status", "tenant", "facility", "description", "tags", "custom_fields", "comments", "metadata", "owner") @@ -2783,7 +2859,7 @@ class Module(_message.Message): def __init__(self, device: _Optional[_Union[Device, _Mapping]] = ..., module_bay: _Optional[_Union[ModuleBay, _Mapping]] = ..., module_type: _Optional[_Union[ModuleType, _Mapping]] = ..., status: _Optional[str] = ..., serial: _Optional[str] = ..., asset_tag: _Optional[str] = ..., description: _Optional[str] = ..., comments: _Optional[str] = ..., tags: _Optional[_Iterable[_Union[Tag, _Mapping]]] = ..., custom_fields: _Optional[_Mapping[str, CustomFieldValue]] = ..., metadata: _Optional[_Union[_struct_pb2.Struct, _Mapping]] = ..., owner: _Optional[_Union[Owner, _Mapping]] = ..., replicate_components: bool = ..., adopt_components: bool = ...) -> None: ... class ModuleBay(_message.Message): - __slots__ = ("device", "module", "name", "installed_module", "label", "position", "description", "tags", "custom_fields", "metadata", "owner", "enabled") + __slots__ = ("device", "module", "name", "installed_module", "label", "position", "description", "tags", "custom_fields", "metadata", "owner", "enabled", "module_bay_types") class CustomFieldsEntry(_message.Message): __slots__ = ("key", "value") KEY_FIELD_NUMBER: _ClassVar[int] @@ -2803,6 +2879,7 @@ class ModuleBay(_message.Message): METADATA_FIELD_NUMBER: _ClassVar[int] OWNER_FIELD_NUMBER: _ClassVar[int] ENABLED_FIELD_NUMBER: _ClassVar[int] + MODULE_BAY_TYPES_FIELD_NUMBER: _ClassVar[int] device: Device module: Module name: str @@ -2815,10 +2892,11 @@ class ModuleBay(_message.Message): metadata: _struct_pb2.Struct owner: Owner enabled: bool - def __init__(self, device: _Optional[_Union[Device, _Mapping]] = ..., module: _Optional[_Union[Module, _Mapping]] = ..., name: _Optional[str] = ..., installed_module: _Optional[_Union[Module, _Mapping]] = ..., label: _Optional[str] = ..., position: _Optional[str] = ..., description: _Optional[str] = ..., tags: _Optional[_Iterable[_Union[Tag, _Mapping]]] = ..., custom_fields: _Optional[_Mapping[str, CustomFieldValue]] = ..., metadata: _Optional[_Union[_struct_pb2.Struct, _Mapping]] = ..., owner: _Optional[_Union[Owner, _Mapping]] = ..., enabled: bool = ...) -> None: ... + module_bay_types: _containers.RepeatedCompositeFieldContainer[ModuleBayType] + def __init__(self, device: _Optional[_Union[Device, _Mapping]] = ..., module: _Optional[_Union[Module, _Mapping]] = ..., name: _Optional[str] = ..., installed_module: _Optional[_Union[Module, _Mapping]] = ..., label: _Optional[str] = ..., position: _Optional[str] = ..., description: _Optional[str] = ..., tags: _Optional[_Iterable[_Union[Tag, _Mapping]]] = ..., custom_fields: _Optional[_Mapping[str, CustomFieldValue]] = ..., metadata: _Optional[_Union[_struct_pb2.Struct, _Mapping]] = ..., owner: _Optional[_Union[Owner, _Mapping]] = ..., enabled: bool = ..., module_bay_types: _Optional[_Iterable[_Union[ModuleBayType, _Mapping]]] = ...) -> None: ... class ModuleType(_message.Message): - __slots__ = ("manufacturer", "model", "part_number", "airflow", "weight", "weight_unit", "description", "comments", "tags", "custom_fields", "profile", "attributes", "metadata", "owner") + __slots__ = ("manufacturer", "model", "part_number", "airflow", "weight", "weight_unit", "description", "comments", "tags", "custom_fields", "profile", "attributes", "metadata", "owner", "cooling_method", "end_of_life", "module_bay_types") class CustomFieldsEntry(_message.Message): __slots__ = ("key", "value") KEY_FIELD_NUMBER: _ClassVar[int] @@ -2840,6 +2918,9 @@ class ModuleType(_message.Message): ATTRIBUTES_FIELD_NUMBER: _ClassVar[int] METADATA_FIELD_NUMBER: _ClassVar[int] OWNER_FIELD_NUMBER: _ClassVar[int] + COOLING_METHOD_FIELD_NUMBER: _ClassVar[int] + END_OF_LIFE_FIELD_NUMBER: _ClassVar[int] + MODULE_BAY_TYPES_FIELD_NUMBER: _ClassVar[int] manufacturer: Manufacturer model: str part_number: str @@ -2854,7 +2935,10 @@ class ModuleType(_message.Message): attributes: str metadata: _struct_pb2.Struct owner: Owner - def __init__(self, manufacturer: _Optional[_Union[Manufacturer, _Mapping]] = ..., model: _Optional[str] = ..., part_number: _Optional[str] = ..., airflow: _Optional[str] = ..., weight: _Optional[float] = ..., weight_unit: _Optional[str] = ..., description: _Optional[str] = ..., comments: _Optional[str] = ..., tags: _Optional[_Iterable[_Union[Tag, _Mapping]]] = ..., custom_fields: _Optional[_Mapping[str, CustomFieldValue]] = ..., profile: _Optional[_Union[ModuleTypeProfile, _Mapping]] = ..., attributes: _Optional[str] = ..., metadata: _Optional[_Union[_struct_pb2.Struct, _Mapping]] = ..., owner: _Optional[_Union[Owner, _Mapping]] = ...) -> None: ... + cooling_method: str + end_of_life: _timestamp_pb2.Timestamp + module_bay_types: _containers.RepeatedCompositeFieldContainer[ModuleBayType] + def __init__(self, manufacturer: _Optional[_Union[Manufacturer, _Mapping]] = ..., model: _Optional[str] = ..., part_number: _Optional[str] = ..., airflow: _Optional[str] = ..., weight: _Optional[float] = ..., weight_unit: _Optional[str] = ..., description: _Optional[str] = ..., comments: _Optional[str] = ..., tags: _Optional[_Iterable[_Union[Tag, _Mapping]]] = ..., custom_fields: _Optional[_Mapping[str, CustomFieldValue]] = ..., profile: _Optional[_Union[ModuleTypeProfile, _Mapping]] = ..., attributes: _Optional[str] = ..., metadata: _Optional[_Union[_struct_pb2.Struct, _Mapping]] = ..., owner: _Optional[_Union[Owner, _Mapping]] = ..., cooling_method: _Optional[str] = ..., end_of_life: _Optional[_Union[_timestamp_pb2.Timestamp, _Mapping]] = ..., module_bay_types: _Optional[_Iterable[_Union[ModuleBayType, _Mapping]]] = ...) -> None: ... class Platform(_message.Message): __slots__ = ("name", "slug", "manufacturer", "description", "tags", "custom_fields", "parent", "comments", "metadata", "owner") @@ -3207,7 +3291,7 @@ class RIR(_message.Message): def __init__(self, name: _Optional[str] = ..., slug: _Optional[str] = ..., is_private: bool = ..., description: _Optional[str] = ..., tags: _Optional[_Iterable[_Union[Tag, _Mapping]]] = ..., custom_fields: _Optional[_Mapping[str, CustomFieldValue]] = ..., metadata: _Optional[_Union[_struct_pb2.Struct, _Mapping]] = ..., owner: _Optional[_Union[Owner, _Mapping]] = ..., comments: _Optional[str] = ...) -> None: ... class Rack(_message.Message): - __slots__ = ("name", "facility_id", "site", "location", "tenant", "status", "role", "serial", "asset_tag", "rack_type", "form_factor", "width", "u_height", "starting_unit", "weight", "max_weight", "weight_unit", "desc_units", "outer_width", "outer_depth", "outer_unit", "mounting_depth", "airflow", "description", "comments", "tags", "custom_fields", "outer_height", "metadata", "owner", "group") + __slots__ = ("name", "facility_id", "site", "location", "tenant", "status", "role", "serial", "asset_tag", "rack_type", "form_factor", "width", "u_height", "starting_unit", "weight", "max_weight", "weight_unit", "desc_units", "outer_width", "outer_depth", "outer_unit", "mounting_depth", "airflow", "description", "comments", "tags", "custom_fields", "outer_height", "metadata", "owner", "group", "cooling_capability", "cooling_capacity") class CustomFieldsEntry(_message.Message): __slots__ = ("key", "value") KEY_FIELD_NUMBER: _ClassVar[int] @@ -3246,6 +3330,8 @@ class Rack(_message.Message): METADATA_FIELD_NUMBER: _ClassVar[int] OWNER_FIELD_NUMBER: _ClassVar[int] GROUP_FIELD_NUMBER: _ClassVar[int] + COOLING_CAPABILITY_FIELD_NUMBER: _ClassVar[int] + COOLING_CAPACITY_FIELD_NUMBER: _ClassVar[int] name: str facility_id: str site: Site @@ -3277,7 +3363,9 @@ class Rack(_message.Message): metadata: _struct_pb2.Struct owner: Owner group: RackGroup - def __init__(self, name: _Optional[str] = ..., facility_id: _Optional[str] = ..., site: _Optional[_Union[Site, _Mapping]] = ..., location: _Optional[_Union[Location, _Mapping]] = ..., tenant: _Optional[_Union[Tenant, _Mapping]] = ..., status: _Optional[str] = ..., role: _Optional[_Union[RackRole, _Mapping]] = ..., serial: _Optional[str] = ..., asset_tag: _Optional[str] = ..., rack_type: _Optional[_Union[RackType, _Mapping]] = ..., form_factor: _Optional[str] = ..., width: _Optional[int] = ..., u_height: _Optional[int] = ..., starting_unit: _Optional[int] = ..., weight: _Optional[float] = ..., max_weight: _Optional[int] = ..., weight_unit: _Optional[str] = ..., desc_units: bool = ..., outer_width: _Optional[int] = ..., outer_depth: _Optional[int] = ..., outer_unit: _Optional[str] = ..., mounting_depth: _Optional[int] = ..., airflow: _Optional[str] = ..., description: _Optional[str] = ..., comments: _Optional[str] = ..., tags: _Optional[_Iterable[_Union[Tag, _Mapping]]] = ..., custom_fields: _Optional[_Mapping[str, CustomFieldValue]] = ..., outer_height: _Optional[int] = ..., metadata: _Optional[_Union[_struct_pb2.Struct, _Mapping]] = ..., owner: _Optional[_Union[Owner, _Mapping]] = ..., group: _Optional[_Union[RackGroup, _Mapping]] = ...) -> None: ... + cooling_capability: str + cooling_capacity: float + def __init__(self, name: _Optional[str] = ..., facility_id: _Optional[str] = ..., site: _Optional[_Union[Site, _Mapping]] = ..., location: _Optional[_Union[Location, _Mapping]] = ..., tenant: _Optional[_Union[Tenant, _Mapping]] = ..., status: _Optional[str] = ..., role: _Optional[_Union[RackRole, _Mapping]] = ..., serial: _Optional[str] = ..., asset_tag: _Optional[str] = ..., rack_type: _Optional[_Union[RackType, _Mapping]] = ..., form_factor: _Optional[str] = ..., width: _Optional[int] = ..., u_height: _Optional[int] = ..., starting_unit: _Optional[int] = ..., weight: _Optional[float] = ..., max_weight: _Optional[int] = ..., weight_unit: _Optional[str] = ..., desc_units: bool = ..., outer_width: _Optional[int] = ..., outer_depth: _Optional[int] = ..., outer_unit: _Optional[str] = ..., mounting_depth: _Optional[int] = ..., airflow: _Optional[str] = ..., description: _Optional[str] = ..., comments: _Optional[str] = ..., tags: _Optional[_Iterable[_Union[Tag, _Mapping]]] = ..., custom_fields: _Optional[_Mapping[str, CustomFieldValue]] = ..., outer_height: _Optional[int] = ..., metadata: _Optional[_Union[_struct_pb2.Struct, _Mapping]] = ..., owner: _Optional[_Union[Owner, _Mapping]] = ..., group: _Optional[_Union[RackGroup, _Mapping]] = ..., cooling_capability: _Optional[str] = ..., cooling_capacity: _Optional[float] = ...) -> None: ... class RackReservation(_message.Message): __slots__ = ("rack", "units", "tenant", "description", "comments", "tags", "custom_fields", "status", "metadata", "owner", "user") @@ -3342,7 +3430,7 @@ class RackRole(_message.Message): def __init__(self, name: _Optional[str] = ..., slug: _Optional[str] = ..., color: _Optional[str] = ..., description: _Optional[str] = ..., tags: _Optional[_Iterable[_Union[Tag, _Mapping]]] = ..., custom_fields: _Optional[_Mapping[str, CustomFieldValue]] = ..., metadata: _Optional[_Union[_struct_pb2.Struct, _Mapping]] = ..., owner: _Optional[_Union[Owner, _Mapping]] = ..., comments: _Optional[str] = ...) -> None: ... class RackType(_message.Message): - __slots__ = ("manufacturer", "model", "slug", "description", "form_factor", "width", "u_height", "starting_unit", "desc_units", "outer_width", "outer_depth", "outer_unit", "weight", "max_weight", "weight_unit", "mounting_depth", "comments", "tags", "custom_fields", "outer_height", "metadata", "owner") + __slots__ = ("manufacturer", "model", "slug", "description", "form_factor", "width", "u_height", "starting_unit", "desc_units", "outer_width", "outer_depth", "outer_unit", "weight", "max_weight", "weight_unit", "mounting_depth", "comments", "tags", "custom_fields", "outer_height", "metadata", "owner", "cooling_capability", "cooling_capacity") class CustomFieldsEntry(_message.Message): __slots__ = ("key", "value") KEY_FIELD_NUMBER: _ClassVar[int] @@ -3372,6 +3460,8 @@ class RackType(_message.Message): OUTER_HEIGHT_FIELD_NUMBER: _ClassVar[int] METADATA_FIELD_NUMBER: _ClassVar[int] OWNER_FIELD_NUMBER: _ClassVar[int] + COOLING_CAPABILITY_FIELD_NUMBER: _ClassVar[int] + COOLING_CAPACITY_FIELD_NUMBER: _ClassVar[int] manufacturer: Manufacturer model: str slug: str @@ -3394,7 +3484,9 @@ class RackType(_message.Message): outer_height: int metadata: _struct_pb2.Struct owner: Owner - def __init__(self, manufacturer: _Optional[_Union[Manufacturer, _Mapping]] = ..., model: _Optional[str] = ..., slug: _Optional[str] = ..., description: _Optional[str] = ..., form_factor: _Optional[str] = ..., width: _Optional[int] = ..., u_height: _Optional[int] = ..., starting_unit: _Optional[int] = ..., desc_units: bool = ..., outer_width: _Optional[int] = ..., outer_depth: _Optional[int] = ..., outer_unit: _Optional[str] = ..., weight: _Optional[float] = ..., max_weight: _Optional[int] = ..., weight_unit: _Optional[str] = ..., mounting_depth: _Optional[int] = ..., comments: _Optional[str] = ..., tags: _Optional[_Iterable[_Union[Tag, _Mapping]]] = ..., custom_fields: _Optional[_Mapping[str, CustomFieldValue]] = ..., outer_height: _Optional[int] = ..., metadata: _Optional[_Union[_struct_pb2.Struct, _Mapping]] = ..., owner: _Optional[_Union[Owner, _Mapping]] = ...) -> None: ... + cooling_capability: str + cooling_capacity: float + def __init__(self, manufacturer: _Optional[_Union[Manufacturer, _Mapping]] = ..., model: _Optional[str] = ..., slug: _Optional[str] = ..., description: _Optional[str] = ..., form_factor: _Optional[str] = ..., width: _Optional[int] = ..., u_height: _Optional[int] = ..., starting_unit: _Optional[int] = ..., desc_units: bool = ..., outer_width: _Optional[int] = ..., outer_depth: _Optional[int] = ..., outer_unit: _Optional[str] = ..., weight: _Optional[float] = ..., max_weight: _Optional[int] = ..., weight_unit: _Optional[str] = ..., mounting_depth: _Optional[int] = ..., comments: _Optional[str] = ..., tags: _Optional[_Iterable[_Union[Tag, _Mapping]]] = ..., custom_fields: _Optional[_Mapping[str, CustomFieldValue]] = ..., outer_height: _Optional[int] = ..., metadata: _Optional[_Union[_struct_pb2.Struct, _Mapping]] = ..., owner: _Optional[_Union[Owner, _Mapping]] = ..., cooling_capability: _Optional[str] = ..., cooling_capacity: _Optional[float] = ...) -> None: ... class RearPort(_message.Message): __slots__ = ("device", "module", "name", "label", "type", "color", "positions", "description", "mark_connected", "tags", "custom_fields", "metadata", "owner") @@ -3519,7 +3611,7 @@ class RouteTarget(_message.Message): def __init__(self, name: _Optional[str] = ..., tenant: _Optional[_Union[Tenant, _Mapping]] = ..., description: _Optional[str] = ..., comments: _Optional[str] = ..., tags: _Optional[_Iterable[_Union[Tag, _Mapping]]] = ..., custom_fields: _Optional[_Mapping[str, CustomFieldValue]] = ..., metadata: _Optional[_Union[_struct_pb2.Struct, _Mapping]] = ..., owner: _Optional[_Union[Owner, _Mapping]] = ...) -> None: ... class Service(_message.Message): - __slots__ = ("device", "virtual_machine", "name", "protocol", "ports", "description", "comments", "tags", "custom_fields", "ipaddresses", "parent_object_device", "parent_object_fhrp_group", "parent_object_virtual_machine", "metadata", "owner") + __slots__ = ("device", "virtual_machine", "name", "protocol", "ports", "description", "comments", "tags", "custom_fields", "ipaddresses", "parent_object_device", "parent_object_fhrp_group", "parent_object_virtual_machine", "metadata", "owner", "port_mappings") class CustomFieldsEntry(_message.Message): __slots__ = ("key", "value") KEY_FIELD_NUMBER: _ClassVar[int] @@ -3542,6 +3634,7 @@ class Service(_message.Message): PARENT_OBJECT_VIRTUAL_MACHINE_FIELD_NUMBER: _ClassVar[int] METADATA_FIELD_NUMBER: _ClassVar[int] OWNER_FIELD_NUMBER: _ClassVar[int] + PORT_MAPPINGS_FIELD_NUMBER: _ClassVar[int] device: Device virtual_machine: VirtualMachine name: str @@ -3557,7 +3650,8 @@ class Service(_message.Message): parent_object_virtual_machine: VirtualMachine metadata: _struct_pb2.Struct owner: Owner - def __init__(self, device: _Optional[_Union[Device, _Mapping]] = ..., virtual_machine: _Optional[_Union[VirtualMachine, _Mapping]] = ..., name: _Optional[str] = ..., protocol: _Optional[str] = ..., ports: _Optional[_Iterable[int]] = ..., description: _Optional[str] = ..., comments: _Optional[str] = ..., tags: _Optional[_Iterable[_Union[Tag, _Mapping]]] = ..., custom_fields: _Optional[_Mapping[str, CustomFieldValue]] = ..., ipaddresses: _Optional[_Iterable[_Union[IPAddress, _Mapping]]] = ..., parent_object_device: _Optional[_Union[Device, _Mapping]] = ..., parent_object_fhrp_group: _Optional[_Union[FHRPGroup, _Mapping]] = ..., parent_object_virtual_machine: _Optional[_Union[VirtualMachine, _Mapping]] = ..., metadata: _Optional[_Union[_struct_pb2.Struct, _Mapping]] = ..., owner: _Optional[_Union[Owner, _Mapping]] = ...) -> None: ... + port_mappings: _containers.RepeatedScalarFieldContainer[str] + def __init__(self, device: _Optional[_Union[Device, _Mapping]] = ..., virtual_machine: _Optional[_Union[VirtualMachine, _Mapping]] = ..., name: _Optional[str] = ..., protocol: _Optional[str] = ..., ports: _Optional[_Iterable[int]] = ..., description: _Optional[str] = ..., comments: _Optional[str] = ..., tags: _Optional[_Iterable[_Union[Tag, _Mapping]]] = ..., custom_fields: _Optional[_Mapping[str, CustomFieldValue]] = ..., ipaddresses: _Optional[_Iterable[_Union[IPAddress, _Mapping]]] = ..., parent_object_device: _Optional[_Union[Device, _Mapping]] = ..., parent_object_fhrp_group: _Optional[_Union[FHRPGroup, _Mapping]] = ..., parent_object_virtual_machine: _Optional[_Union[VirtualMachine, _Mapping]] = ..., metadata: _Optional[_Union[_struct_pb2.Struct, _Mapping]] = ..., owner: _Optional[_Union[Owner, _Mapping]] = ..., port_mappings: _Optional[_Iterable[str]] = ...) -> None: ... class Site(_message.Message): __slots__ = ("name", "slug", "status", "region", "group", "tenant", "facility", "time_zone", "description", "physical_address", "shipping_address", "latitude", "longitude", "comments", "tags", "custom_fields", "asns", "metadata", "owner") @@ -3778,7 +3872,7 @@ class TunnelGroup(_message.Message): def __init__(self, name: _Optional[str] = ..., slug: _Optional[str] = ..., description: _Optional[str] = ..., tags: _Optional[_Iterable[_Union[Tag, _Mapping]]] = ..., custom_fields: _Optional[_Mapping[str, CustomFieldValue]] = ..., metadata: _Optional[_Union[_struct_pb2.Struct, _Mapping]] = ..., owner: _Optional[_Union[Owner, _Mapping]] = ..., comments: _Optional[str] = ...) -> None: ... class TunnelTermination(_message.Message): - __slots__ = ("tunnel", "role", "termination_asn", "termination_asn_range", "termination_aggregate", "termination_cable", "termination_cable_path", "termination_cable_termination", "termination_circuit", "termination_circuit_group", "termination_circuit_group_assignment", "termination_circuit_termination", "termination_circuit_type", "termination_cluster", "termination_cluster_group", "termination_cluster_type", "termination_console_port", "termination_console_server_port", "termination_contact", "termination_contact_assignment", "termination_contact_group", "termination_contact_role", "termination_device", "termination_device_bay", "termination_device_role", "termination_device_type", "termination_fhrp_group", "termination_fhrp_group_assignment", "termination_front_port", "termination_ike_policy", "termination_ike_proposal", "termination_ip_address", "termination_ip_range", "termination_ip_sec_policy", "termination_ip_sec_profile", "termination_ip_sec_proposal", "termination_interface", "termination_inventory_item", "termination_inventory_item_role", "termination_l2vpn", "termination_l2vpn_termination", "termination_location", "termination_mac_address", "termination_manufacturer", "termination_module", "termination_module_bay", "termination_module_type", "termination_platform", "termination_power_feed", "termination_power_outlet", "termination_power_panel", "termination_power_port", "termination_prefix", "termination_provider", "termination_provider_account", "termination_provider_network", "termination_rir", "termination_rack", "termination_rack_reservation", "termination_rack_role", "termination_rack_type", "termination_rear_port", "termination_region", "termination_role", "termination_route_target", "termination_service", "termination_site", "termination_site_group", "termination_tag", "termination_tenant", "termination_tenant_group", "termination_tunnel", "termination_tunnel_group", "termination_tunnel_termination", "termination_vlan", "termination_vlan_group", "termination_vlan_translation_policy", "termination_vlan_translation_rule", "termination_vm_interface", "termination_vrf", "termination_virtual_chassis", "termination_virtual_circuit", "termination_virtual_circuit_termination", "termination_virtual_circuit_type", "termination_virtual_device_context", "termination_virtual_disk", "termination_virtual_machine", "termination_wireless_lan", "termination_wireless_lan_group", "termination_wireless_link", "termination_custom_field", "termination_custom_field_choice_set", "termination_journal_entry", "termination_module_type_profile", "termination_custom_link", "termination_owner", "termination_owner_group", "termination_cable_bundle", "termination_rack_group", "termination_script_module", "termination_virtual_machine_type", "termination_user", "outside_ip", "tags", "custom_fields", "metadata") + __slots__ = ("tunnel", "role", "termination_asn", "termination_asn_range", "termination_aggregate", "termination_cable", "termination_cable_path", "termination_cable_termination", "termination_circuit", "termination_circuit_group", "termination_circuit_group_assignment", "termination_circuit_termination", "termination_circuit_type", "termination_cluster", "termination_cluster_group", "termination_cluster_type", "termination_console_port", "termination_console_server_port", "termination_contact", "termination_contact_assignment", "termination_contact_group", "termination_contact_role", "termination_device", "termination_device_bay", "termination_device_role", "termination_device_type", "termination_fhrp_group", "termination_fhrp_group_assignment", "termination_front_port", "termination_ike_policy", "termination_ike_proposal", "termination_ip_address", "termination_ip_range", "termination_ip_sec_policy", "termination_ip_sec_profile", "termination_ip_sec_proposal", "termination_interface", "termination_inventory_item", "termination_inventory_item_role", "termination_l2vpn", "termination_l2vpn_termination", "termination_location", "termination_mac_address", "termination_manufacturer", "termination_module", "termination_module_bay", "termination_module_type", "termination_platform", "termination_power_feed", "termination_power_outlet", "termination_power_panel", "termination_power_port", "termination_prefix", "termination_provider", "termination_provider_account", "termination_provider_network", "termination_rir", "termination_rack", "termination_rack_reservation", "termination_rack_role", "termination_rack_type", "termination_rear_port", "termination_region", "termination_role", "termination_route_target", "termination_service", "termination_site", "termination_site_group", "termination_tag", "termination_tenant", "termination_tenant_group", "termination_tunnel", "termination_tunnel_group", "termination_tunnel_termination", "termination_vlan", "termination_vlan_group", "termination_vlan_translation_policy", "termination_vlan_translation_rule", "termination_vm_interface", "termination_vrf", "termination_virtual_chassis", "termination_virtual_circuit", "termination_virtual_circuit_termination", "termination_virtual_circuit_type", "termination_virtual_device_context", "termination_virtual_disk", "termination_virtual_machine", "termination_wireless_lan", "termination_wireless_lan_group", "termination_wireless_link", "termination_custom_field", "termination_custom_field_choice_set", "termination_journal_entry", "termination_module_type_profile", "termination_custom_link", "termination_owner", "termination_owner_group", "termination_cable_bundle", "termination_rack_group", "termination_script_module", "termination_virtual_machine_type", "termination_user", "termination_cooling_feed", "termination_cooling_intake", "termination_cooling_outflow", "termination_cooling_source", "termination_module_bay_type", "outside_ip", "tags", "custom_fields", "metadata") class CustomFieldsEntry(_message.Message): __slots__ = ("key", "value") KEY_FIELD_NUMBER: _ClassVar[int] @@ -3888,6 +3982,11 @@ class TunnelTermination(_message.Message): TERMINATION_SCRIPT_MODULE_FIELD_NUMBER: _ClassVar[int] TERMINATION_VIRTUAL_MACHINE_TYPE_FIELD_NUMBER: _ClassVar[int] TERMINATION_USER_FIELD_NUMBER: _ClassVar[int] + TERMINATION_COOLING_FEED_FIELD_NUMBER: _ClassVar[int] + TERMINATION_COOLING_INTAKE_FIELD_NUMBER: _ClassVar[int] + TERMINATION_COOLING_OUTFLOW_FIELD_NUMBER: _ClassVar[int] + TERMINATION_COOLING_SOURCE_FIELD_NUMBER: _ClassVar[int] + TERMINATION_MODULE_BAY_TYPE_FIELD_NUMBER: _ClassVar[int] OUTSIDE_IP_FIELD_NUMBER: _ClassVar[int] TAGS_FIELD_NUMBER: _ClassVar[int] CUSTOM_FIELDS_FIELD_NUMBER: _ClassVar[int] @@ -3994,11 +4093,16 @@ class TunnelTermination(_message.Message): termination_script_module: ScriptModule termination_virtual_machine_type: VirtualMachineType termination_user: User + termination_cooling_feed: CoolingFeed + termination_cooling_intake: CoolingIntake + termination_cooling_outflow: CoolingOutflow + termination_cooling_source: CoolingSource + termination_module_bay_type: ModuleBayType outside_ip: IPAddress tags: _containers.RepeatedCompositeFieldContainer[Tag] custom_fields: _containers.MessageMap[str, CustomFieldValue] metadata: _struct_pb2.Struct - def __init__(self, tunnel: _Optional[_Union[Tunnel, _Mapping]] = ..., role: _Optional[str] = ..., termination_asn: _Optional[_Union[ASN, _Mapping]] = ..., termination_asn_range: _Optional[_Union[ASNRange, _Mapping]] = ..., termination_aggregate: _Optional[_Union[Aggregate, _Mapping]] = ..., termination_cable: _Optional[_Union[Cable, _Mapping]] = ..., termination_cable_path: _Optional[_Union[CablePath, _Mapping]] = ..., termination_cable_termination: _Optional[_Union[CableTermination, _Mapping]] = ..., termination_circuit: _Optional[_Union[Circuit, _Mapping]] = ..., termination_circuit_group: _Optional[_Union[CircuitGroup, _Mapping]] = ..., termination_circuit_group_assignment: _Optional[_Union[CircuitGroupAssignment, _Mapping]] = ..., termination_circuit_termination: _Optional[_Union[CircuitTermination, _Mapping]] = ..., termination_circuit_type: _Optional[_Union[CircuitType, _Mapping]] = ..., termination_cluster: _Optional[_Union[Cluster, _Mapping]] = ..., termination_cluster_group: _Optional[_Union[ClusterGroup, _Mapping]] = ..., termination_cluster_type: _Optional[_Union[ClusterType, _Mapping]] = ..., termination_console_port: _Optional[_Union[ConsolePort, _Mapping]] = ..., termination_console_server_port: _Optional[_Union[ConsoleServerPort, _Mapping]] = ..., termination_contact: _Optional[_Union[Contact, _Mapping]] = ..., termination_contact_assignment: _Optional[_Union[ContactAssignment, _Mapping]] = ..., termination_contact_group: _Optional[_Union[ContactGroup, _Mapping]] = ..., termination_contact_role: _Optional[_Union[ContactRole, _Mapping]] = ..., termination_device: _Optional[_Union[Device, _Mapping]] = ..., termination_device_bay: _Optional[_Union[DeviceBay, _Mapping]] = ..., termination_device_role: _Optional[_Union[DeviceRole, _Mapping]] = ..., termination_device_type: _Optional[_Union[DeviceType, _Mapping]] = ..., termination_fhrp_group: _Optional[_Union[FHRPGroup, _Mapping]] = ..., termination_fhrp_group_assignment: _Optional[_Union[FHRPGroupAssignment, _Mapping]] = ..., termination_front_port: _Optional[_Union[FrontPort, _Mapping]] = ..., termination_ike_policy: _Optional[_Union[IKEPolicy, _Mapping]] = ..., termination_ike_proposal: _Optional[_Union[IKEProposal, _Mapping]] = ..., termination_ip_address: _Optional[_Union[IPAddress, _Mapping]] = ..., termination_ip_range: _Optional[_Union[IPRange, _Mapping]] = ..., termination_ip_sec_policy: _Optional[_Union[IPSecPolicy, _Mapping]] = ..., termination_ip_sec_profile: _Optional[_Union[IPSecProfile, _Mapping]] = ..., termination_ip_sec_proposal: _Optional[_Union[IPSecProposal, _Mapping]] = ..., termination_interface: _Optional[_Union[Interface, _Mapping]] = ..., termination_inventory_item: _Optional[_Union[InventoryItem, _Mapping]] = ..., termination_inventory_item_role: _Optional[_Union[InventoryItemRole, _Mapping]] = ..., termination_l2vpn: _Optional[_Union[L2VPN, _Mapping]] = ..., termination_l2vpn_termination: _Optional[_Union[L2VPNTermination, _Mapping]] = ..., termination_location: _Optional[_Union[Location, _Mapping]] = ..., termination_mac_address: _Optional[_Union[MACAddress, _Mapping]] = ..., termination_manufacturer: _Optional[_Union[Manufacturer, _Mapping]] = ..., termination_module: _Optional[_Union[Module, _Mapping]] = ..., termination_module_bay: _Optional[_Union[ModuleBay, _Mapping]] = ..., termination_module_type: _Optional[_Union[ModuleType, _Mapping]] = ..., termination_platform: _Optional[_Union[Platform, _Mapping]] = ..., termination_power_feed: _Optional[_Union[PowerFeed, _Mapping]] = ..., termination_power_outlet: _Optional[_Union[PowerOutlet, _Mapping]] = ..., termination_power_panel: _Optional[_Union[PowerPanel, _Mapping]] = ..., termination_power_port: _Optional[_Union[PowerPort, _Mapping]] = ..., termination_prefix: _Optional[_Union[Prefix, _Mapping]] = ..., termination_provider: _Optional[_Union[Provider, _Mapping]] = ..., termination_provider_account: _Optional[_Union[ProviderAccount, _Mapping]] = ..., termination_provider_network: _Optional[_Union[ProviderNetwork, _Mapping]] = ..., termination_rir: _Optional[_Union[RIR, _Mapping]] = ..., termination_rack: _Optional[_Union[Rack, _Mapping]] = ..., termination_rack_reservation: _Optional[_Union[RackReservation, _Mapping]] = ..., termination_rack_role: _Optional[_Union[RackRole, _Mapping]] = ..., termination_rack_type: _Optional[_Union[RackType, _Mapping]] = ..., termination_rear_port: _Optional[_Union[RearPort, _Mapping]] = ..., termination_region: _Optional[_Union[Region, _Mapping]] = ..., termination_role: _Optional[_Union[Role, _Mapping]] = ..., termination_route_target: _Optional[_Union[RouteTarget, _Mapping]] = ..., termination_service: _Optional[_Union[Service, _Mapping]] = ..., termination_site: _Optional[_Union[Site, _Mapping]] = ..., termination_site_group: _Optional[_Union[SiteGroup, _Mapping]] = ..., termination_tag: _Optional[_Union[Tag, _Mapping]] = ..., termination_tenant: _Optional[_Union[Tenant, _Mapping]] = ..., termination_tenant_group: _Optional[_Union[TenantGroup, _Mapping]] = ..., termination_tunnel: _Optional[_Union[Tunnel, _Mapping]] = ..., termination_tunnel_group: _Optional[_Union[TunnelGroup, _Mapping]] = ..., termination_tunnel_termination: _Optional[_Union[TunnelTermination, _Mapping]] = ..., termination_vlan: _Optional[_Union[VLAN, _Mapping]] = ..., termination_vlan_group: _Optional[_Union[VLANGroup, _Mapping]] = ..., termination_vlan_translation_policy: _Optional[_Union[VLANTranslationPolicy, _Mapping]] = ..., termination_vlan_translation_rule: _Optional[_Union[VLANTranslationRule, _Mapping]] = ..., termination_vm_interface: _Optional[_Union[VMInterface, _Mapping]] = ..., termination_vrf: _Optional[_Union[VRF, _Mapping]] = ..., termination_virtual_chassis: _Optional[_Union[VirtualChassis, _Mapping]] = ..., termination_virtual_circuit: _Optional[_Union[VirtualCircuit, _Mapping]] = ..., termination_virtual_circuit_termination: _Optional[_Union[VirtualCircuitTermination, _Mapping]] = ..., termination_virtual_circuit_type: _Optional[_Union[VirtualCircuitType, _Mapping]] = ..., termination_virtual_device_context: _Optional[_Union[VirtualDeviceContext, _Mapping]] = ..., termination_virtual_disk: _Optional[_Union[VirtualDisk, _Mapping]] = ..., termination_virtual_machine: _Optional[_Union[VirtualMachine, _Mapping]] = ..., termination_wireless_lan: _Optional[_Union[WirelessLAN, _Mapping]] = ..., termination_wireless_lan_group: _Optional[_Union[WirelessLANGroup, _Mapping]] = ..., termination_wireless_link: _Optional[_Union[WirelessLink, _Mapping]] = ..., termination_custom_field: _Optional[_Union[CustomField, _Mapping]] = ..., termination_custom_field_choice_set: _Optional[_Union[CustomFieldChoiceSet, _Mapping]] = ..., termination_journal_entry: _Optional[_Union[JournalEntry, _Mapping]] = ..., termination_module_type_profile: _Optional[_Union[ModuleTypeProfile, _Mapping]] = ..., termination_custom_link: _Optional[_Union[CustomLink, _Mapping]] = ..., termination_owner: _Optional[_Union[Owner, _Mapping]] = ..., termination_owner_group: _Optional[_Union[OwnerGroup, _Mapping]] = ..., termination_cable_bundle: _Optional[_Union[CableBundle, _Mapping]] = ..., termination_rack_group: _Optional[_Union[RackGroup, _Mapping]] = ..., termination_script_module: _Optional[_Union[ScriptModule, _Mapping]] = ..., termination_virtual_machine_type: _Optional[_Union[VirtualMachineType, _Mapping]] = ..., termination_user: _Optional[_Union[User, _Mapping]] = ..., outside_ip: _Optional[_Union[IPAddress, _Mapping]] = ..., tags: _Optional[_Iterable[_Union[Tag, _Mapping]]] = ..., custom_fields: _Optional[_Mapping[str, CustomFieldValue]] = ..., metadata: _Optional[_Union[_struct_pb2.Struct, _Mapping]] = ...) -> None: ... + def __init__(self, tunnel: _Optional[_Union[Tunnel, _Mapping]] = ..., role: _Optional[str] = ..., termination_asn: _Optional[_Union[ASN, _Mapping]] = ..., termination_asn_range: _Optional[_Union[ASNRange, _Mapping]] = ..., termination_aggregate: _Optional[_Union[Aggregate, _Mapping]] = ..., termination_cable: _Optional[_Union[Cable, _Mapping]] = ..., termination_cable_path: _Optional[_Union[CablePath, _Mapping]] = ..., termination_cable_termination: _Optional[_Union[CableTermination, _Mapping]] = ..., termination_circuit: _Optional[_Union[Circuit, _Mapping]] = ..., termination_circuit_group: _Optional[_Union[CircuitGroup, _Mapping]] = ..., termination_circuit_group_assignment: _Optional[_Union[CircuitGroupAssignment, _Mapping]] = ..., termination_circuit_termination: _Optional[_Union[CircuitTermination, _Mapping]] = ..., termination_circuit_type: _Optional[_Union[CircuitType, _Mapping]] = ..., termination_cluster: _Optional[_Union[Cluster, _Mapping]] = ..., termination_cluster_group: _Optional[_Union[ClusterGroup, _Mapping]] = ..., termination_cluster_type: _Optional[_Union[ClusterType, _Mapping]] = ..., termination_console_port: _Optional[_Union[ConsolePort, _Mapping]] = ..., termination_console_server_port: _Optional[_Union[ConsoleServerPort, _Mapping]] = ..., termination_contact: _Optional[_Union[Contact, _Mapping]] = ..., termination_contact_assignment: _Optional[_Union[ContactAssignment, _Mapping]] = ..., termination_contact_group: _Optional[_Union[ContactGroup, _Mapping]] = ..., termination_contact_role: _Optional[_Union[ContactRole, _Mapping]] = ..., termination_device: _Optional[_Union[Device, _Mapping]] = ..., termination_device_bay: _Optional[_Union[DeviceBay, _Mapping]] = ..., termination_device_role: _Optional[_Union[DeviceRole, _Mapping]] = ..., termination_device_type: _Optional[_Union[DeviceType, _Mapping]] = ..., termination_fhrp_group: _Optional[_Union[FHRPGroup, _Mapping]] = ..., termination_fhrp_group_assignment: _Optional[_Union[FHRPGroupAssignment, _Mapping]] = ..., termination_front_port: _Optional[_Union[FrontPort, _Mapping]] = ..., termination_ike_policy: _Optional[_Union[IKEPolicy, _Mapping]] = ..., termination_ike_proposal: _Optional[_Union[IKEProposal, _Mapping]] = ..., termination_ip_address: _Optional[_Union[IPAddress, _Mapping]] = ..., termination_ip_range: _Optional[_Union[IPRange, _Mapping]] = ..., termination_ip_sec_policy: _Optional[_Union[IPSecPolicy, _Mapping]] = ..., termination_ip_sec_profile: _Optional[_Union[IPSecProfile, _Mapping]] = ..., termination_ip_sec_proposal: _Optional[_Union[IPSecProposal, _Mapping]] = ..., termination_interface: _Optional[_Union[Interface, _Mapping]] = ..., termination_inventory_item: _Optional[_Union[InventoryItem, _Mapping]] = ..., termination_inventory_item_role: _Optional[_Union[InventoryItemRole, _Mapping]] = ..., termination_l2vpn: _Optional[_Union[L2VPN, _Mapping]] = ..., termination_l2vpn_termination: _Optional[_Union[L2VPNTermination, _Mapping]] = ..., termination_location: _Optional[_Union[Location, _Mapping]] = ..., termination_mac_address: _Optional[_Union[MACAddress, _Mapping]] = ..., termination_manufacturer: _Optional[_Union[Manufacturer, _Mapping]] = ..., termination_module: _Optional[_Union[Module, _Mapping]] = ..., termination_module_bay: _Optional[_Union[ModuleBay, _Mapping]] = ..., termination_module_type: _Optional[_Union[ModuleType, _Mapping]] = ..., termination_platform: _Optional[_Union[Platform, _Mapping]] = ..., termination_power_feed: _Optional[_Union[PowerFeed, _Mapping]] = ..., termination_power_outlet: _Optional[_Union[PowerOutlet, _Mapping]] = ..., termination_power_panel: _Optional[_Union[PowerPanel, _Mapping]] = ..., termination_power_port: _Optional[_Union[PowerPort, _Mapping]] = ..., termination_prefix: _Optional[_Union[Prefix, _Mapping]] = ..., termination_provider: _Optional[_Union[Provider, _Mapping]] = ..., termination_provider_account: _Optional[_Union[ProviderAccount, _Mapping]] = ..., termination_provider_network: _Optional[_Union[ProviderNetwork, _Mapping]] = ..., termination_rir: _Optional[_Union[RIR, _Mapping]] = ..., termination_rack: _Optional[_Union[Rack, _Mapping]] = ..., termination_rack_reservation: _Optional[_Union[RackReservation, _Mapping]] = ..., termination_rack_role: _Optional[_Union[RackRole, _Mapping]] = ..., termination_rack_type: _Optional[_Union[RackType, _Mapping]] = ..., termination_rear_port: _Optional[_Union[RearPort, _Mapping]] = ..., termination_region: _Optional[_Union[Region, _Mapping]] = ..., termination_role: _Optional[_Union[Role, _Mapping]] = ..., termination_route_target: _Optional[_Union[RouteTarget, _Mapping]] = ..., termination_service: _Optional[_Union[Service, _Mapping]] = ..., termination_site: _Optional[_Union[Site, _Mapping]] = ..., termination_site_group: _Optional[_Union[SiteGroup, _Mapping]] = ..., termination_tag: _Optional[_Union[Tag, _Mapping]] = ..., termination_tenant: _Optional[_Union[Tenant, _Mapping]] = ..., termination_tenant_group: _Optional[_Union[TenantGroup, _Mapping]] = ..., termination_tunnel: _Optional[_Union[Tunnel, _Mapping]] = ..., termination_tunnel_group: _Optional[_Union[TunnelGroup, _Mapping]] = ..., termination_tunnel_termination: _Optional[_Union[TunnelTermination, _Mapping]] = ..., termination_vlan: _Optional[_Union[VLAN, _Mapping]] = ..., termination_vlan_group: _Optional[_Union[VLANGroup, _Mapping]] = ..., termination_vlan_translation_policy: _Optional[_Union[VLANTranslationPolicy, _Mapping]] = ..., termination_vlan_translation_rule: _Optional[_Union[VLANTranslationRule, _Mapping]] = ..., termination_vm_interface: _Optional[_Union[VMInterface, _Mapping]] = ..., termination_vrf: _Optional[_Union[VRF, _Mapping]] = ..., termination_virtual_chassis: _Optional[_Union[VirtualChassis, _Mapping]] = ..., termination_virtual_circuit: _Optional[_Union[VirtualCircuit, _Mapping]] = ..., termination_virtual_circuit_termination: _Optional[_Union[VirtualCircuitTermination, _Mapping]] = ..., termination_virtual_circuit_type: _Optional[_Union[VirtualCircuitType, _Mapping]] = ..., termination_virtual_device_context: _Optional[_Union[VirtualDeviceContext, _Mapping]] = ..., termination_virtual_disk: _Optional[_Union[VirtualDisk, _Mapping]] = ..., termination_virtual_machine: _Optional[_Union[VirtualMachine, _Mapping]] = ..., termination_wireless_lan: _Optional[_Union[WirelessLAN, _Mapping]] = ..., termination_wireless_lan_group: _Optional[_Union[WirelessLANGroup, _Mapping]] = ..., termination_wireless_link: _Optional[_Union[WirelessLink, _Mapping]] = ..., termination_custom_field: _Optional[_Union[CustomField, _Mapping]] = ..., termination_custom_field_choice_set: _Optional[_Union[CustomFieldChoiceSet, _Mapping]] = ..., termination_journal_entry: _Optional[_Union[JournalEntry, _Mapping]] = ..., termination_module_type_profile: _Optional[_Union[ModuleTypeProfile, _Mapping]] = ..., termination_custom_link: _Optional[_Union[CustomLink, _Mapping]] = ..., termination_owner: _Optional[_Union[Owner, _Mapping]] = ..., termination_owner_group: _Optional[_Union[OwnerGroup, _Mapping]] = ..., termination_cable_bundle: _Optional[_Union[CableBundle, _Mapping]] = ..., termination_rack_group: _Optional[_Union[RackGroup, _Mapping]] = ..., termination_script_module: _Optional[_Union[ScriptModule, _Mapping]] = ..., termination_virtual_machine_type: _Optional[_Union[VirtualMachineType, _Mapping]] = ..., termination_user: _Optional[_Union[User, _Mapping]] = ..., termination_cooling_feed: _Optional[_Union[CoolingFeed, _Mapping]] = ..., termination_cooling_intake: _Optional[_Union[CoolingIntake, _Mapping]] = ..., termination_cooling_outflow: _Optional[_Union[CoolingOutflow, _Mapping]] = ..., termination_cooling_source: _Optional[_Union[CoolingSource, _Mapping]] = ..., termination_module_bay_type: _Optional[_Union[ModuleBayType, _Mapping]] = ..., outside_ip: _Optional[_Union[IPAddress, _Mapping]] = ..., tags: _Optional[_Iterable[_Union[Tag, _Mapping]]] = ..., custom_fields: _Optional[_Mapping[str, CustomFieldValue]] = ..., metadata: _Optional[_Union[_struct_pb2.Struct, _Mapping]] = ...) -> None: ... class VLAN(_message.Message): __slots__ = ("site", "group", "vid", "name", "tenant", "status", "role", "description", "qinq_role", "qinq_svlan", "comments", "tags", "custom_fields", "metadata", "owner") @@ -4117,7 +4221,7 @@ class VLANTranslationRule(_message.Message): def __init__(self, policy: _Optional[_Union[VLANTranslationPolicy, _Mapping]] = ..., local_vid: _Optional[int] = ..., remote_vid: _Optional[int] = ..., description: _Optional[str] = ..., metadata: _Optional[_Union[_struct_pb2.Struct, _Mapping]] = ...) -> None: ... class VMInterface(_message.Message): - __slots__ = ("virtual_machine", "name", "enabled", "parent", "bridge", "mtu", "primary_mac_address", "description", "mode", "untagged_vlan", "qinq_svlan", "vlan_translation_policy", "vrf", "tags", "custom_fields", "tagged_vlans", "metadata", "owner") + __slots__ = ("virtual_machine", "name", "enabled", "parent", "bridge", "mtu", "primary_mac_address", "description", "mode", "untagged_vlan", "qinq_svlan", "vlan_translation_policy", "vrf", "tags", "custom_fields", "tagged_vlans", "metadata", "owner", "mac_address") class CustomFieldsEntry(_message.Message): __slots__ = ("key", "value") KEY_FIELD_NUMBER: _ClassVar[int] @@ -4143,6 +4247,7 @@ class VMInterface(_message.Message): TAGGED_VLANS_FIELD_NUMBER: _ClassVar[int] METADATA_FIELD_NUMBER: _ClassVar[int] OWNER_FIELD_NUMBER: _ClassVar[int] + MAC_ADDRESS_FIELD_NUMBER: _ClassVar[int] virtual_machine: VirtualMachine name: str enabled: bool @@ -4161,7 +4266,8 @@ class VMInterface(_message.Message): tagged_vlans: _containers.RepeatedCompositeFieldContainer[VLAN] metadata: _struct_pb2.Struct owner: Owner - def __init__(self, virtual_machine: _Optional[_Union[VirtualMachine, _Mapping]] = ..., name: _Optional[str] = ..., enabled: bool = ..., parent: _Optional[_Union[VMInterface, _Mapping]] = ..., bridge: _Optional[_Union[VMInterface, _Mapping]] = ..., mtu: _Optional[int] = ..., primary_mac_address: _Optional[_Union[MACAddress, _Mapping]] = ..., description: _Optional[str] = ..., mode: _Optional[str] = ..., untagged_vlan: _Optional[_Union[VLAN, _Mapping]] = ..., qinq_svlan: _Optional[_Union[VLAN, _Mapping]] = ..., vlan_translation_policy: _Optional[_Union[VLANTranslationPolicy, _Mapping]] = ..., vrf: _Optional[_Union[VRF, _Mapping]] = ..., tags: _Optional[_Iterable[_Union[Tag, _Mapping]]] = ..., custom_fields: _Optional[_Mapping[str, CustomFieldValue]] = ..., tagged_vlans: _Optional[_Iterable[_Union[VLAN, _Mapping]]] = ..., metadata: _Optional[_Union[_struct_pb2.Struct, _Mapping]] = ..., owner: _Optional[_Union[Owner, _Mapping]] = ...) -> None: ... + mac_address: str + def __init__(self, virtual_machine: _Optional[_Union[VirtualMachine, _Mapping]] = ..., name: _Optional[str] = ..., enabled: bool = ..., parent: _Optional[_Union[VMInterface, _Mapping]] = ..., bridge: _Optional[_Union[VMInterface, _Mapping]] = ..., mtu: _Optional[int] = ..., primary_mac_address: _Optional[_Union[MACAddress, _Mapping]] = ..., description: _Optional[str] = ..., mode: _Optional[str] = ..., untagged_vlan: _Optional[_Union[VLAN, _Mapping]] = ..., qinq_svlan: _Optional[_Union[VLAN, _Mapping]] = ..., vlan_translation_policy: _Optional[_Union[VLANTranslationPolicy, _Mapping]] = ..., vrf: _Optional[_Union[VRF, _Mapping]] = ..., tags: _Optional[_Iterable[_Union[Tag, _Mapping]]] = ..., custom_fields: _Optional[_Mapping[str, CustomFieldValue]] = ..., tagged_vlans: _Optional[_Iterable[_Union[VLAN, _Mapping]]] = ..., metadata: _Optional[_Union[_struct_pb2.Struct, _Mapping]] = ..., owner: _Optional[_Union[Owner, _Mapping]] = ..., mac_address: _Optional[str] = ...) -> None: ... class VRF(_message.Message): __slots__ = ("name", "rd", "tenant", "enforce_unique", "description", "comments", "tags", "custom_fields", "import_targets", "export_targets", "metadata", "owner") @@ -4555,7 +4661,7 @@ class WirelessLink(_message.Message): def __init__(self, interface_a: _Optional[_Union[Interface, _Mapping]] = ..., interface_b: _Optional[_Union[Interface, _Mapping]] = ..., ssid: _Optional[str] = ..., status: _Optional[str] = ..., tenant: _Optional[_Union[Tenant, _Mapping]] = ..., auth_type: _Optional[str] = ..., auth_cipher: _Optional[str] = ..., auth_psk: _Optional[str] = ..., distance: _Optional[float] = ..., distance_unit: _Optional[str] = ..., description: _Optional[str] = ..., comments: _Optional[str] = ..., tags: _Optional[_Iterable[_Union[Tag, _Mapping]]] = ..., custom_fields: _Optional[_Mapping[str, CustomFieldValue]] = ..., metadata: _Optional[_Union[_struct_pb2.Struct, _Mapping]] = ..., owner: _Optional[_Union[Owner, _Mapping]] = ...) -> None: ... class CustomField(_message.Message): - __slots__ = ("type", "related_object_type", "name", "label", "group_name", "description", "required", "unique", "search_weight", "filter_logic", "ui_visible", "ui_editable", "is_cloneable", "default", "related_object_filter", "weight", "validation_minimum", "validation_maximum", "validation_regex", "choice_set", "comments", "object_types", "metadata", "owner", "validation_schema") + __slots__ = ("type", "related_object_type", "name", "label", "group_name", "description", "required", "unique", "search_weight", "filter_logic", "ui_visible", "ui_editable", "is_cloneable", "default", "related_object_filter", "weight", "validation_minimum", "validation_maximum", "validation_regex", "choice_set", "comments", "object_types", "metadata", "owner", "validation_schema", "nulls_first") TYPE_FIELD_NUMBER: _ClassVar[int] RELATED_OBJECT_TYPE_FIELD_NUMBER: _ClassVar[int] NAME_FIELD_NUMBER: _ClassVar[int] @@ -4581,6 +4687,7 @@ class CustomField(_message.Message): METADATA_FIELD_NUMBER: _ClassVar[int] OWNER_FIELD_NUMBER: _ClassVar[int] VALIDATION_SCHEMA_FIELD_NUMBER: _ClassVar[int] + NULLS_FIRST_FIELD_NUMBER: _ClassVar[int] type: str related_object_type: str name: str @@ -4606,7 +4713,8 @@ class CustomField(_message.Message): metadata: _struct_pb2.Struct owner: Owner validation_schema: str - def __init__(self, type: _Optional[str] = ..., related_object_type: _Optional[str] = ..., name: _Optional[str] = ..., label: _Optional[str] = ..., group_name: _Optional[str] = ..., description: _Optional[str] = ..., required: bool = ..., unique: bool = ..., search_weight: _Optional[int] = ..., filter_logic: _Optional[str] = ..., ui_visible: _Optional[str] = ..., ui_editable: _Optional[str] = ..., is_cloneable: bool = ..., default: _Optional[str] = ..., related_object_filter: _Optional[str] = ..., weight: _Optional[int] = ..., validation_minimum: _Optional[float] = ..., validation_maximum: _Optional[float] = ..., validation_regex: _Optional[str] = ..., choice_set: _Optional[_Union[CustomFieldChoiceSet, _Mapping]] = ..., comments: _Optional[str] = ..., object_types: _Optional[_Iterable[str]] = ..., metadata: _Optional[_Union[_struct_pb2.Struct, _Mapping]] = ..., owner: _Optional[_Union[Owner, _Mapping]] = ..., validation_schema: _Optional[str] = ...) -> None: ... + nulls_first: bool + def __init__(self, type: _Optional[str] = ..., related_object_type: _Optional[str] = ..., name: _Optional[str] = ..., label: _Optional[str] = ..., group_name: _Optional[str] = ..., description: _Optional[str] = ..., required: bool = ..., unique: bool = ..., search_weight: _Optional[int] = ..., filter_logic: _Optional[str] = ..., ui_visible: _Optional[str] = ..., ui_editable: _Optional[str] = ..., is_cloneable: bool = ..., default: _Optional[str] = ..., related_object_filter: _Optional[str] = ..., weight: _Optional[int] = ..., validation_minimum: _Optional[float] = ..., validation_maximum: _Optional[float] = ..., validation_regex: _Optional[str] = ..., choice_set: _Optional[_Union[CustomFieldChoiceSet, _Mapping]] = ..., comments: _Optional[str] = ..., object_types: _Optional[_Iterable[str]] = ..., metadata: _Optional[_Union[_struct_pb2.Struct, _Mapping]] = ..., owner: _Optional[_Union[Owner, _Mapping]] = ..., validation_schema: _Optional[str] = ..., nulls_first: bool = ...) -> None: ... class CustomFieldChoiceSet(_message.Message): __slots__ = ("name", "description", "base_choices", "order_alphabetically", "extra_choices", "metadata", "owner", "choice_colors") @@ -4629,7 +4737,7 @@ class CustomFieldChoiceSet(_message.Message): def __init__(self, name: _Optional[str] = ..., description: _Optional[str] = ..., base_choices: _Optional[str] = ..., order_alphabetically: bool = ..., extra_choices: _Optional[_Iterable[str]] = ..., metadata: _Optional[_Union[_struct_pb2.Struct, _Mapping]] = ..., owner: _Optional[_Union[Owner, _Mapping]] = ..., choice_colors: _Optional[str] = ...) -> None: ... class JournalEntry(_message.Message): - __slots__ = ("assigned_object_asn", "assigned_object_asn_range", "assigned_object_aggregate", "assigned_object_cable", "assigned_object_cable_path", "assigned_object_cable_termination", "assigned_object_circuit", "assigned_object_circuit_group", "assigned_object_circuit_group_assignment", "assigned_object_circuit_termination", "assigned_object_circuit_type", "assigned_object_cluster", "assigned_object_cluster_group", "assigned_object_cluster_type", "assigned_object_console_port", "assigned_object_console_server_port", "assigned_object_contact", "assigned_object_contact_assignment", "assigned_object_contact_group", "assigned_object_contact_role", "assigned_object_custom_field", "assigned_object_custom_field_choice_set", "assigned_object_device", "assigned_object_device_bay", "assigned_object_device_role", "assigned_object_device_type", "assigned_object_fhrp_group", "assigned_object_fhrp_group_assignment", "assigned_object_front_port", "assigned_object_ike_policy", "assigned_object_ike_proposal", "assigned_object_ip_address", "assigned_object_ip_range", "assigned_object_ip_sec_policy", "assigned_object_ip_sec_profile", "assigned_object_ip_sec_proposal", "assigned_object_interface", "assigned_object_inventory_item", "assigned_object_inventory_item_role", "assigned_object_journal_entry", "assigned_object_l2vpn", "assigned_object_l2vpn_termination", "assigned_object_location", "assigned_object_mac_address", "assigned_object_manufacturer", "assigned_object_module", "assigned_object_module_bay", "assigned_object_module_type", "assigned_object_module_type_profile", "assigned_object_platform", "assigned_object_power_feed", "assigned_object_power_outlet", "assigned_object_power_panel", "assigned_object_power_port", "assigned_object_prefix", "assigned_object_provider", "assigned_object_provider_account", "assigned_object_provider_network", "assigned_object_rir", "assigned_object_rack", "assigned_object_rack_reservation", "assigned_object_rack_role", "assigned_object_rack_type", "assigned_object_rear_port", "assigned_object_region", "assigned_object_role", "assigned_object_route_target", "assigned_object_service", "assigned_object_site", "assigned_object_site_group", "assigned_object_tag", "assigned_object_tenant", "assigned_object_tenant_group", "assigned_object_tunnel", "assigned_object_tunnel_group", "assigned_object_tunnel_termination", "assigned_object_vlan", "assigned_object_vlan_group", "assigned_object_vlan_translation_policy", "assigned_object_vlan_translation_rule", "assigned_object_vm_interface", "assigned_object_vrf", "assigned_object_virtual_chassis", "assigned_object_virtual_circuit", "assigned_object_virtual_circuit_termination", "assigned_object_virtual_circuit_type", "assigned_object_virtual_device_context", "assigned_object_virtual_disk", "assigned_object_virtual_machine", "assigned_object_wireless_lan", "assigned_object_wireless_lan_group", "assigned_object_wireless_link", "assigned_object_custom_link", "assigned_object_owner", "assigned_object_owner_group", "assigned_object_cable_bundle", "assigned_object_rack_group", "assigned_object_script_module", "assigned_object_virtual_machine_type", "assigned_object_user", "kind", "comments", "tags", "custom_fields", "metadata", "created_by") + __slots__ = ("assigned_object_asn", "assigned_object_asn_range", "assigned_object_aggregate", "assigned_object_cable", "assigned_object_cable_path", "assigned_object_cable_termination", "assigned_object_circuit", "assigned_object_circuit_group", "assigned_object_circuit_group_assignment", "assigned_object_circuit_termination", "assigned_object_circuit_type", "assigned_object_cluster", "assigned_object_cluster_group", "assigned_object_cluster_type", "assigned_object_console_port", "assigned_object_console_server_port", "assigned_object_contact", "assigned_object_contact_assignment", "assigned_object_contact_group", "assigned_object_contact_role", "assigned_object_custom_field", "assigned_object_custom_field_choice_set", "assigned_object_device", "assigned_object_device_bay", "assigned_object_device_role", "assigned_object_device_type", "assigned_object_fhrp_group", "assigned_object_fhrp_group_assignment", "assigned_object_front_port", "assigned_object_ike_policy", "assigned_object_ike_proposal", "assigned_object_ip_address", "assigned_object_ip_range", "assigned_object_ip_sec_policy", "assigned_object_ip_sec_profile", "assigned_object_ip_sec_proposal", "assigned_object_interface", "assigned_object_inventory_item", "assigned_object_inventory_item_role", "assigned_object_journal_entry", "assigned_object_l2vpn", "assigned_object_l2vpn_termination", "assigned_object_location", "assigned_object_mac_address", "assigned_object_manufacturer", "assigned_object_module", "assigned_object_module_bay", "assigned_object_module_type", "assigned_object_module_type_profile", "assigned_object_platform", "assigned_object_power_feed", "assigned_object_power_outlet", "assigned_object_power_panel", "assigned_object_power_port", "assigned_object_prefix", "assigned_object_provider", "assigned_object_provider_account", "assigned_object_provider_network", "assigned_object_rir", "assigned_object_rack", "assigned_object_rack_reservation", "assigned_object_rack_role", "assigned_object_rack_type", "assigned_object_rear_port", "assigned_object_region", "assigned_object_role", "assigned_object_route_target", "assigned_object_service", "assigned_object_site", "assigned_object_site_group", "assigned_object_tag", "assigned_object_tenant", "assigned_object_tenant_group", "assigned_object_tunnel", "assigned_object_tunnel_group", "assigned_object_tunnel_termination", "assigned_object_vlan", "assigned_object_vlan_group", "assigned_object_vlan_translation_policy", "assigned_object_vlan_translation_rule", "assigned_object_vm_interface", "assigned_object_vrf", "assigned_object_virtual_chassis", "assigned_object_virtual_circuit", "assigned_object_virtual_circuit_termination", "assigned_object_virtual_circuit_type", "assigned_object_virtual_device_context", "assigned_object_virtual_disk", "assigned_object_virtual_machine", "assigned_object_wireless_lan", "assigned_object_wireless_lan_group", "assigned_object_wireless_link", "assigned_object_custom_link", "assigned_object_owner", "assigned_object_owner_group", "assigned_object_cable_bundle", "assigned_object_rack_group", "assigned_object_script_module", "assigned_object_virtual_machine_type", "assigned_object_user", "assigned_object_cooling_feed", "assigned_object_cooling_intake", "assigned_object_cooling_outflow", "assigned_object_cooling_source", "assigned_object_module_bay_type", "kind", "comments", "tags", "custom_fields", "metadata", "created_by") class CustomFieldsEntry(_message.Message): __slots__ = ("key", "value") KEY_FIELD_NUMBER: _ClassVar[int] @@ -4737,6 +4845,11 @@ class JournalEntry(_message.Message): ASSIGNED_OBJECT_SCRIPT_MODULE_FIELD_NUMBER: _ClassVar[int] ASSIGNED_OBJECT_VIRTUAL_MACHINE_TYPE_FIELD_NUMBER: _ClassVar[int] ASSIGNED_OBJECT_USER_FIELD_NUMBER: _ClassVar[int] + ASSIGNED_OBJECT_COOLING_FEED_FIELD_NUMBER: _ClassVar[int] + ASSIGNED_OBJECT_COOLING_INTAKE_FIELD_NUMBER: _ClassVar[int] + ASSIGNED_OBJECT_COOLING_OUTFLOW_FIELD_NUMBER: _ClassVar[int] + ASSIGNED_OBJECT_COOLING_SOURCE_FIELD_NUMBER: _ClassVar[int] + ASSIGNED_OBJECT_MODULE_BAY_TYPE_FIELD_NUMBER: _ClassVar[int] KIND_FIELD_NUMBER: _ClassVar[int] COMMENTS_FIELD_NUMBER: _ClassVar[int] TAGS_FIELD_NUMBER: _ClassVar[int] @@ -4843,13 +4956,18 @@ class JournalEntry(_message.Message): assigned_object_script_module: ScriptModule assigned_object_virtual_machine_type: VirtualMachineType assigned_object_user: User + assigned_object_cooling_feed: CoolingFeed + assigned_object_cooling_intake: CoolingIntake + assigned_object_cooling_outflow: CoolingOutflow + assigned_object_cooling_source: CoolingSource + assigned_object_module_bay_type: ModuleBayType kind: str comments: str tags: _containers.RepeatedCompositeFieldContainer[Tag] custom_fields: _containers.MessageMap[str, CustomFieldValue] metadata: _struct_pb2.Struct created_by: User - def __init__(self, assigned_object_asn: _Optional[_Union[ASN, _Mapping]] = ..., assigned_object_asn_range: _Optional[_Union[ASNRange, _Mapping]] = ..., assigned_object_aggregate: _Optional[_Union[Aggregate, _Mapping]] = ..., assigned_object_cable: _Optional[_Union[Cable, _Mapping]] = ..., assigned_object_cable_path: _Optional[_Union[CablePath, _Mapping]] = ..., assigned_object_cable_termination: _Optional[_Union[CableTermination, _Mapping]] = ..., assigned_object_circuit: _Optional[_Union[Circuit, _Mapping]] = ..., assigned_object_circuit_group: _Optional[_Union[CircuitGroup, _Mapping]] = ..., assigned_object_circuit_group_assignment: _Optional[_Union[CircuitGroupAssignment, _Mapping]] = ..., assigned_object_circuit_termination: _Optional[_Union[CircuitTermination, _Mapping]] = ..., assigned_object_circuit_type: _Optional[_Union[CircuitType, _Mapping]] = ..., assigned_object_cluster: _Optional[_Union[Cluster, _Mapping]] = ..., assigned_object_cluster_group: _Optional[_Union[ClusterGroup, _Mapping]] = ..., assigned_object_cluster_type: _Optional[_Union[ClusterType, _Mapping]] = ..., assigned_object_console_port: _Optional[_Union[ConsolePort, _Mapping]] = ..., assigned_object_console_server_port: _Optional[_Union[ConsoleServerPort, _Mapping]] = ..., assigned_object_contact: _Optional[_Union[Contact, _Mapping]] = ..., assigned_object_contact_assignment: _Optional[_Union[ContactAssignment, _Mapping]] = ..., assigned_object_contact_group: _Optional[_Union[ContactGroup, _Mapping]] = ..., assigned_object_contact_role: _Optional[_Union[ContactRole, _Mapping]] = ..., assigned_object_custom_field: _Optional[_Union[CustomField, _Mapping]] = ..., assigned_object_custom_field_choice_set: _Optional[_Union[CustomFieldChoiceSet, _Mapping]] = ..., assigned_object_device: _Optional[_Union[Device, _Mapping]] = ..., assigned_object_device_bay: _Optional[_Union[DeviceBay, _Mapping]] = ..., assigned_object_device_role: _Optional[_Union[DeviceRole, _Mapping]] = ..., assigned_object_device_type: _Optional[_Union[DeviceType, _Mapping]] = ..., assigned_object_fhrp_group: _Optional[_Union[FHRPGroup, _Mapping]] = ..., assigned_object_fhrp_group_assignment: _Optional[_Union[FHRPGroupAssignment, _Mapping]] = ..., assigned_object_front_port: _Optional[_Union[FrontPort, _Mapping]] = ..., assigned_object_ike_policy: _Optional[_Union[IKEPolicy, _Mapping]] = ..., assigned_object_ike_proposal: _Optional[_Union[IKEProposal, _Mapping]] = ..., assigned_object_ip_address: _Optional[_Union[IPAddress, _Mapping]] = ..., assigned_object_ip_range: _Optional[_Union[IPRange, _Mapping]] = ..., assigned_object_ip_sec_policy: _Optional[_Union[IPSecPolicy, _Mapping]] = ..., assigned_object_ip_sec_profile: _Optional[_Union[IPSecProfile, _Mapping]] = ..., assigned_object_ip_sec_proposal: _Optional[_Union[IPSecProposal, _Mapping]] = ..., assigned_object_interface: _Optional[_Union[Interface, _Mapping]] = ..., assigned_object_inventory_item: _Optional[_Union[InventoryItem, _Mapping]] = ..., assigned_object_inventory_item_role: _Optional[_Union[InventoryItemRole, _Mapping]] = ..., assigned_object_journal_entry: _Optional[_Union[JournalEntry, _Mapping]] = ..., assigned_object_l2vpn: _Optional[_Union[L2VPN, _Mapping]] = ..., assigned_object_l2vpn_termination: _Optional[_Union[L2VPNTermination, _Mapping]] = ..., assigned_object_location: _Optional[_Union[Location, _Mapping]] = ..., assigned_object_mac_address: _Optional[_Union[MACAddress, _Mapping]] = ..., assigned_object_manufacturer: _Optional[_Union[Manufacturer, _Mapping]] = ..., assigned_object_module: _Optional[_Union[Module, _Mapping]] = ..., assigned_object_module_bay: _Optional[_Union[ModuleBay, _Mapping]] = ..., assigned_object_module_type: _Optional[_Union[ModuleType, _Mapping]] = ..., assigned_object_module_type_profile: _Optional[_Union[ModuleTypeProfile, _Mapping]] = ..., assigned_object_platform: _Optional[_Union[Platform, _Mapping]] = ..., assigned_object_power_feed: _Optional[_Union[PowerFeed, _Mapping]] = ..., assigned_object_power_outlet: _Optional[_Union[PowerOutlet, _Mapping]] = ..., assigned_object_power_panel: _Optional[_Union[PowerPanel, _Mapping]] = ..., assigned_object_power_port: _Optional[_Union[PowerPort, _Mapping]] = ..., assigned_object_prefix: _Optional[_Union[Prefix, _Mapping]] = ..., assigned_object_provider: _Optional[_Union[Provider, _Mapping]] = ..., assigned_object_provider_account: _Optional[_Union[ProviderAccount, _Mapping]] = ..., assigned_object_provider_network: _Optional[_Union[ProviderNetwork, _Mapping]] = ..., assigned_object_rir: _Optional[_Union[RIR, _Mapping]] = ..., assigned_object_rack: _Optional[_Union[Rack, _Mapping]] = ..., assigned_object_rack_reservation: _Optional[_Union[RackReservation, _Mapping]] = ..., assigned_object_rack_role: _Optional[_Union[RackRole, _Mapping]] = ..., assigned_object_rack_type: _Optional[_Union[RackType, _Mapping]] = ..., assigned_object_rear_port: _Optional[_Union[RearPort, _Mapping]] = ..., assigned_object_region: _Optional[_Union[Region, _Mapping]] = ..., assigned_object_role: _Optional[_Union[Role, _Mapping]] = ..., assigned_object_route_target: _Optional[_Union[RouteTarget, _Mapping]] = ..., assigned_object_service: _Optional[_Union[Service, _Mapping]] = ..., assigned_object_site: _Optional[_Union[Site, _Mapping]] = ..., assigned_object_site_group: _Optional[_Union[SiteGroup, _Mapping]] = ..., assigned_object_tag: _Optional[_Union[Tag, _Mapping]] = ..., assigned_object_tenant: _Optional[_Union[Tenant, _Mapping]] = ..., assigned_object_tenant_group: _Optional[_Union[TenantGroup, _Mapping]] = ..., assigned_object_tunnel: _Optional[_Union[Tunnel, _Mapping]] = ..., assigned_object_tunnel_group: _Optional[_Union[TunnelGroup, _Mapping]] = ..., assigned_object_tunnel_termination: _Optional[_Union[TunnelTermination, _Mapping]] = ..., assigned_object_vlan: _Optional[_Union[VLAN, _Mapping]] = ..., assigned_object_vlan_group: _Optional[_Union[VLANGroup, _Mapping]] = ..., assigned_object_vlan_translation_policy: _Optional[_Union[VLANTranslationPolicy, _Mapping]] = ..., assigned_object_vlan_translation_rule: _Optional[_Union[VLANTranslationRule, _Mapping]] = ..., assigned_object_vm_interface: _Optional[_Union[VMInterface, _Mapping]] = ..., assigned_object_vrf: _Optional[_Union[VRF, _Mapping]] = ..., assigned_object_virtual_chassis: _Optional[_Union[VirtualChassis, _Mapping]] = ..., assigned_object_virtual_circuit: _Optional[_Union[VirtualCircuit, _Mapping]] = ..., assigned_object_virtual_circuit_termination: _Optional[_Union[VirtualCircuitTermination, _Mapping]] = ..., assigned_object_virtual_circuit_type: _Optional[_Union[VirtualCircuitType, _Mapping]] = ..., assigned_object_virtual_device_context: _Optional[_Union[VirtualDeviceContext, _Mapping]] = ..., assigned_object_virtual_disk: _Optional[_Union[VirtualDisk, _Mapping]] = ..., assigned_object_virtual_machine: _Optional[_Union[VirtualMachine, _Mapping]] = ..., assigned_object_wireless_lan: _Optional[_Union[WirelessLAN, _Mapping]] = ..., assigned_object_wireless_lan_group: _Optional[_Union[WirelessLANGroup, _Mapping]] = ..., assigned_object_wireless_link: _Optional[_Union[WirelessLink, _Mapping]] = ..., assigned_object_custom_link: _Optional[_Union[CustomLink, _Mapping]] = ..., assigned_object_owner: _Optional[_Union[Owner, _Mapping]] = ..., assigned_object_owner_group: _Optional[_Union[OwnerGroup, _Mapping]] = ..., assigned_object_cable_bundle: _Optional[_Union[CableBundle, _Mapping]] = ..., assigned_object_rack_group: _Optional[_Union[RackGroup, _Mapping]] = ..., assigned_object_script_module: _Optional[_Union[ScriptModule, _Mapping]] = ..., assigned_object_virtual_machine_type: _Optional[_Union[VirtualMachineType, _Mapping]] = ..., assigned_object_user: _Optional[_Union[User, _Mapping]] = ..., kind: _Optional[str] = ..., comments: _Optional[str] = ..., tags: _Optional[_Iterable[_Union[Tag, _Mapping]]] = ..., custom_fields: _Optional[_Mapping[str, CustomFieldValue]] = ..., metadata: _Optional[_Union[_struct_pb2.Struct, _Mapping]] = ..., created_by: _Optional[_Union[User, _Mapping]] = ...) -> None: ... + def __init__(self, assigned_object_asn: _Optional[_Union[ASN, _Mapping]] = ..., assigned_object_asn_range: _Optional[_Union[ASNRange, _Mapping]] = ..., assigned_object_aggregate: _Optional[_Union[Aggregate, _Mapping]] = ..., assigned_object_cable: _Optional[_Union[Cable, _Mapping]] = ..., assigned_object_cable_path: _Optional[_Union[CablePath, _Mapping]] = ..., assigned_object_cable_termination: _Optional[_Union[CableTermination, _Mapping]] = ..., assigned_object_circuit: _Optional[_Union[Circuit, _Mapping]] = ..., assigned_object_circuit_group: _Optional[_Union[CircuitGroup, _Mapping]] = ..., assigned_object_circuit_group_assignment: _Optional[_Union[CircuitGroupAssignment, _Mapping]] = ..., assigned_object_circuit_termination: _Optional[_Union[CircuitTermination, _Mapping]] = ..., assigned_object_circuit_type: _Optional[_Union[CircuitType, _Mapping]] = ..., assigned_object_cluster: _Optional[_Union[Cluster, _Mapping]] = ..., assigned_object_cluster_group: _Optional[_Union[ClusterGroup, _Mapping]] = ..., assigned_object_cluster_type: _Optional[_Union[ClusterType, _Mapping]] = ..., assigned_object_console_port: _Optional[_Union[ConsolePort, _Mapping]] = ..., assigned_object_console_server_port: _Optional[_Union[ConsoleServerPort, _Mapping]] = ..., assigned_object_contact: _Optional[_Union[Contact, _Mapping]] = ..., assigned_object_contact_assignment: _Optional[_Union[ContactAssignment, _Mapping]] = ..., assigned_object_contact_group: _Optional[_Union[ContactGroup, _Mapping]] = ..., assigned_object_contact_role: _Optional[_Union[ContactRole, _Mapping]] = ..., assigned_object_custom_field: _Optional[_Union[CustomField, _Mapping]] = ..., assigned_object_custom_field_choice_set: _Optional[_Union[CustomFieldChoiceSet, _Mapping]] = ..., assigned_object_device: _Optional[_Union[Device, _Mapping]] = ..., assigned_object_device_bay: _Optional[_Union[DeviceBay, _Mapping]] = ..., assigned_object_device_role: _Optional[_Union[DeviceRole, _Mapping]] = ..., assigned_object_device_type: _Optional[_Union[DeviceType, _Mapping]] = ..., assigned_object_fhrp_group: _Optional[_Union[FHRPGroup, _Mapping]] = ..., assigned_object_fhrp_group_assignment: _Optional[_Union[FHRPGroupAssignment, _Mapping]] = ..., assigned_object_front_port: _Optional[_Union[FrontPort, _Mapping]] = ..., assigned_object_ike_policy: _Optional[_Union[IKEPolicy, _Mapping]] = ..., assigned_object_ike_proposal: _Optional[_Union[IKEProposal, _Mapping]] = ..., assigned_object_ip_address: _Optional[_Union[IPAddress, _Mapping]] = ..., assigned_object_ip_range: _Optional[_Union[IPRange, _Mapping]] = ..., assigned_object_ip_sec_policy: _Optional[_Union[IPSecPolicy, _Mapping]] = ..., assigned_object_ip_sec_profile: _Optional[_Union[IPSecProfile, _Mapping]] = ..., assigned_object_ip_sec_proposal: _Optional[_Union[IPSecProposal, _Mapping]] = ..., assigned_object_interface: _Optional[_Union[Interface, _Mapping]] = ..., assigned_object_inventory_item: _Optional[_Union[InventoryItem, _Mapping]] = ..., assigned_object_inventory_item_role: _Optional[_Union[InventoryItemRole, _Mapping]] = ..., assigned_object_journal_entry: _Optional[_Union[JournalEntry, _Mapping]] = ..., assigned_object_l2vpn: _Optional[_Union[L2VPN, _Mapping]] = ..., assigned_object_l2vpn_termination: _Optional[_Union[L2VPNTermination, _Mapping]] = ..., assigned_object_location: _Optional[_Union[Location, _Mapping]] = ..., assigned_object_mac_address: _Optional[_Union[MACAddress, _Mapping]] = ..., assigned_object_manufacturer: _Optional[_Union[Manufacturer, _Mapping]] = ..., assigned_object_module: _Optional[_Union[Module, _Mapping]] = ..., assigned_object_module_bay: _Optional[_Union[ModuleBay, _Mapping]] = ..., assigned_object_module_type: _Optional[_Union[ModuleType, _Mapping]] = ..., assigned_object_module_type_profile: _Optional[_Union[ModuleTypeProfile, _Mapping]] = ..., assigned_object_platform: _Optional[_Union[Platform, _Mapping]] = ..., assigned_object_power_feed: _Optional[_Union[PowerFeed, _Mapping]] = ..., assigned_object_power_outlet: _Optional[_Union[PowerOutlet, _Mapping]] = ..., assigned_object_power_panel: _Optional[_Union[PowerPanel, _Mapping]] = ..., assigned_object_power_port: _Optional[_Union[PowerPort, _Mapping]] = ..., assigned_object_prefix: _Optional[_Union[Prefix, _Mapping]] = ..., assigned_object_provider: _Optional[_Union[Provider, _Mapping]] = ..., assigned_object_provider_account: _Optional[_Union[ProviderAccount, _Mapping]] = ..., assigned_object_provider_network: _Optional[_Union[ProviderNetwork, _Mapping]] = ..., assigned_object_rir: _Optional[_Union[RIR, _Mapping]] = ..., assigned_object_rack: _Optional[_Union[Rack, _Mapping]] = ..., assigned_object_rack_reservation: _Optional[_Union[RackReservation, _Mapping]] = ..., assigned_object_rack_role: _Optional[_Union[RackRole, _Mapping]] = ..., assigned_object_rack_type: _Optional[_Union[RackType, _Mapping]] = ..., assigned_object_rear_port: _Optional[_Union[RearPort, _Mapping]] = ..., assigned_object_region: _Optional[_Union[Region, _Mapping]] = ..., assigned_object_role: _Optional[_Union[Role, _Mapping]] = ..., assigned_object_route_target: _Optional[_Union[RouteTarget, _Mapping]] = ..., assigned_object_service: _Optional[_Union[Service, _Mapping]] = ..., assigned_object_site: _Optional[_Union[Site, _Mapping]] = ..., assigned_object_site_group: _Optional[_Union[SiteGroup, _Mapping]] = ..., assigned_object_tag: _Optional[_Union[Tag, _Mapping]] = ..., assigned_object_tenant: _Optional[_Union[Tenant, _Mapping]] = ..., assigned_object_tenant_group: _Optional[_Union[TenantGroup, _Mapping]] = ..., assigned_object_tunnel: _Optional[_Union[Tunnel, _Mapping]] = ..., assigned_object_tunnel_group: _Optional[_Union[TunnelGroup, _Mapping]] = ..., assigned_object_tunnel_termination: _Optional[_Union[TunnelTermination, _Mapping]] = ..., assigned_object_vlan: _Optional[_Union[VLAN, _Mapping]] = ..., assigned_object_vlan_group: _Optional[_Union[VLANGroup, _Mapping]] = ..., assigned_object_vlan_translation_policy: _Optional[_Union[VLANTranslationPolicy, _Mapping]] = ..., assigned_object_vlan_translation_rule: _Optional[_Union[VLANTranslationRule, _Mapping]] = ..., assigned_object_vm_interface: _Optional[_Union[VMInterface, _Mapping]] = ..., assigned_object_vrf: _Optional[_Union[VRF, _Mapping]] = ..., assigned_object_virtual_chassis: _Optional[_Union[VirtualChassis, _Mapping]] = ..., assigned_object_virtual_circuit: _Optional[_Union[VirtualCircuit, _Mapping]] = ..., assigned_object_virtual_circuit_termination: _Optional[_Union[VirtualCircuitTermination, _Mapping]] = ..., assigned_object_virtual_circuit_type: _Optional[_Union[VirtualCircuitType, _Mapping]] = ..., assigned_object_virtual_device_context: _Optional[_Union[VirtualDeviceContext, _Mapping]] = ..., assigned_object_virtual_disk: _Optional[_Union[VirtualDisk, _Mapping]] = ..., assigned_object_virtual_machine: _Optional[_Union[VirtualMachine, _Mapping]] = ..., assigned_object_wireless_lan: _Optional[_Union[WirelessLAN, _Mapping]] = ..., assigned_object_wireless_lan_group: _Optional[_Union[WirelessLANGroup, _Mapping]] = ..., assigned_object_wireless_link: _Optional[_Union[WirelessLink, _Mapping]] = ..., assigned_object_custom_link: _Optional[_Union[CustomLink, _Mapping]] = ..., assigned_object_owner: _Optional[_Union[Owner, _Mapping]] = ..., assigned_object_owner_group: _Optional[_Union[OwnerGroup, _Mapping]] = ..., assigned_object_cable_bundle: _Optional[_Union[CableBundle, _Mapping]] = ..., assigned_object_rack_group: _Optional[_Union[RackGroup, _Mapping]] = ..., assigned_object_script_module: _Optional[_Union[ScriptModule, _Mapping]] = ..., assigned_object_virtual_machine_type: _Optional[_Union[VirtualMachineType, _Mapping]] = ..., assigned_object_user: _Optional[_Union[User, _Mapping]] = ..., assigned_object_cooling_feed: _Optional[_Union[CoolingFeed, _Mapping]] = ..., assigned_object_cooling_intake: _Optional[_Union[CoolingIntake, _Mapping]] = ..., assigned_object_cooling_outflow: _Optional[_Union[CoolingOutflow, _Mapping]] = ..., assigned_object_cooling_source: _Optional[_Union[CoolingSource, _Mapping]] = ..., assigned_object_module_bay_type: _Optional[_Union[ModuleBayType, _Mapping]] = ..., kind: _Optional[str] = ..., comments: _Optional[str] = ..., tags: _Optional[_Iterable[_Union[Tag, _Mapping]]] = ..., custom_fields: _Optional[_Mapping[str, CustomFieldValue]] = ..., metadata: _Optional[_Union[_struct_pb2.Struct, _Mapping]] = ..., created_by: _Optional[_Union[User, _Mapping]] = ...) -> None: ... class ModuleTypeProfile(_message.Message): __slots__ = ("name", "description", "schema", "comments", "tags", "custom_fields", "metadata", "owner") @@ -5040,3 +5158,188 @@ class User(_message.Message): username: str metadata: _struct_pb2.Struct def __init__(self, username: _Optional[str] = ..., metadata: _Optional[_Union[_struct_pb2.Struct, _Mapping]] = ...) -> None: ... + +class CoolingFeed(_message.Message): + __slots__ = ("cooling_source", "rack", "name", "status", "cooling_capacity", "max_flow", "max_flow_unit", "description", "tenant", "owner", "comments", "tags", "custom_fields", "metadata") + class CustomFieldsEntry(_message.Message): + __slots__ = ("key", "value") + KEY_FIELD_NUMBER: _ClassVar[int] + VALUE_FIELD_NUMBER: _ClassVar[int] + key: str + value: CustomFieldValue + def __init__(self, key: _Optional[str] = ..., value: _Optional[_Union[CustomFieldValue, _Mapping]] = ...) -> None: ... + COOLING_SOURCE_FIELD_NUMBER: _ClassVar[int] + RACK_FIELD_NUMBER: _ClassVar[int] + NAME_FIELD_NUMBER: _ClassVar[int] + STATUS_FIELD_NUMBER: _ClassVar[int] + COOLING_CAPACITY_FIELD_NUMBER: _ClassVar[int] + MAX_FLOW_FIELD_NUMBER: _ClassVar[int] + MAX_FLOW_UNIT_FIELD_NUMBER: _ClassVar[int] + DESCRIPTION_FIELD_NUMBER: _ClassVar[int] + TENANT_FIELD_NUMBER: _ClassVar[int] + OWNER_FIELD_NUMBER: _ClassVar[int] + COMMENTS_FIELD_NUMBER: _ClassVar[int] + TAGS_FIELD_NUMBER: _ClassVar[int] + CUSTOM_FIELDS_FIELD_NUMBER: _ClassVar[int] + METADATA_FIELD_NUMBER: _ClassVar[int] + cooling_source: CoolingSource + rack: Rack + name: str + status: str + cooling_capacity: float + max_flow: float + max_flow_unit: str + description: str + tenant: Tenant + owner: Owner + comments: str + tags: _containers.RepeatedCompositeFieldContainer[Tag] + custom_fields: _containers.MessageMap[str, CustomFieldValue] + metadata: _struct_pb2.Struct + def __init__(self, cooling_source: _Optional[_Union[CoolingSource, _Mapping]] = ..., rack: _Optional[_Union[Rack, _Mapping]] = ..., name: _Optional[str] = ..., status: _Optional[str] = ..., cooling_capacity: _Optional[float] = ..., max_flow: _Optional[float] = ..., max_flow_unit: _Optional[str] = ..., description: _Optional[str] = ..., tenant: _Optional[_Union[Tenant, _Mapping]] = ..., owner: _Optional[_Union[Owner, _Mapping]] = ..., comments: _Optional[str] = ..., tags: _Optional[_Iterable[_Union[Tag, _Mapping]]] = ..., custom_fields: _Optional[_Mapping[str, CustomFieldValue]] = ..., metadata: _Optional[_Union[_struct_pb2.Struct, _Mapping]] = ...) -> None: ... + +class CoolingIntake(_message.Message): + __slots__ = ("device", "module", "name", "label", "type", "diameter", "diameter_unit", "max_flow", "max_flow_unit", "cooling_outflow", "description", "owner", "tags", "custom_fields", "metadata") + class CustomFieldsEntry(_message.Message): + __slots__ = ("key", "value") + KEY_FIELD_NUMBER: _ClassVar[int] + VALUE_FIELD_NUMBER: _ClassVar[int] + key: str + value: CustomFieldValue + def __init__(self, key: _Optional[str] = ..., value: _Optional[_Union[CustomFieldValue, _Mapping]] = ...) -> None: ... + DEVICE_FIELD_NUMBER: _ClassVar[int] + MODULE_FIELD_NUMBER: _ClassVar[int] + NAME_FIELD_NUMBER: _ClassVar[int] + LABEL_FIELD_NUMBER: _ClassVar[int] + TYPE_FIELD_NUMBER: _ClassVar[int] + DIAMETER_FIELD_NUMBER: _ClassVar[int] + DIAMETER_UNIT_FIELD_NUMBER: _ClassVar[int] + MAX_FLOW_FIELD_NUMBER: _ClassVar[int] + MAX_FLOW_UNIT_FIELD_NUMBER: _ClassVar[int] + COOLING_OUTFLOW_FIELD_NUMBER: _ClassVar[int] + DESCRIPTION_FIELD_NUMBER: _ClassVar[int] + OWNER_FIELD_NUMBER: _ClassVar[int] + TAGS_FIELD_NUMBER: _ClassVar[int] + CUSTOM_FIELDS_FIELD_NUMBER: _ClassVar[int] + METADATA_FIELD_NUMBER: _ClassVar[int] + device: Device + module: Module + name: str + label: str + type: str + diameter: float + diameter_unit: str + max_flow: float + max_flow_unit: str + cooling_outflow: CoolingOutflow + description: str + owner: Owner + tags: _containers.RepeatedCompositeFieldContainer[Tag] + custom_fields: _containers.MessageMap[str, CustomFieldValue] + metadata: _struct_pb2.Struct + def __init__(self, device: _Optional[_Union[Device, _Mapping]] = ..., module: _Optional[_Union[Module, _Mapping]] = ..., name: _Optional[str] = ..., label: _Optional[str] = ..., type: _Optional[str] = ..., diameter: _Optional[float] = ..., diameter_unit: _Optional[str] = ..., max_flow: _Optional[float] = ..., max_flow_unit: _Optional[str] = ..., cooling_outflow: _Optional[_Union[CoolingOutflow, _Mapping]] = ..., description: _Optional[str] = ..., owner: _Optional[_Union[Owner, _Mapping]] = ..., tags: _Optional[_Iterable[_Union[Tag, _Mapping]]] = ..., custom_fields: _Optional[_Mapping[str, CustomFieldValue]] = ..., metadata: _Optional[_Union[_struct_pb2.Struct, _Mapping]] = ...) -> None: ... + +class CoolingOutflow(_message.Message): + __slots__ = ("device", "module", "name", "label", "type", "diameter", "diameter_unit", "cooling_intake", "description", "owner", "tags", "custom_fields", "metadata") + class CustomFieldsEntry(_message.Message): + __slots__ = ("key", "value") + KEY_FIELD_NUMBER: _ClassVar[int] + VALUE_FIELD_NUMBER: _ClassVar[int] + key: str + value: CustomFieldValue + def __init__(self, key: _Optional[str] = ..., value: _Optional[_Union[CustomFieldValue, _Mapping]] = ...) -> None: ... + DEVICE_FIELD_NUMBER: _ClassVar[int] + MODULE_FIELD_NUMBER: _ClassVar[int] + NAME_FIELD_NUMBER: _ClassVar[int] + LABEL_FIELD_NUMBER: _ClassVar[int] + TYPE_FIELD_NUMBER: _ClassVar[int] + DIAMETER_FIELD_NUMBER: _ClassVar[int] + DIAMETER_UNIT_FIELD_NUMBER: _ClassVar[int] + COOLING_INTAKE_FIELD_NUMBER: _ClassVar[int] + DESCRIPTION_FIELD_NUMBER: _ClassVar[int] + OWNER_FIELD_NUMBER: _ClassVar[int] + TAGS_FIELD_NUMBER: _ClassVar[int] + CUSTOM_FIELDS_FIELD_NUMBER: _ClassVar[int] + METADATA_FIELD_NUMBER: _ClassVar[int] + device: Device + module: Module + name: str + label: str + type: str + diameter: float + diameter_unit: str + cooling_intake: CoolingIntake + description: str + owner: Owner + tags: _containers.RepeatedCompositeFieldContainer[Tag] + custom_fields: _containers.MessageMap[str, CustomFieldValue] + metadata: _struct_pb2.Struct + def __init__(self, device: _Optional[_Union[Device, _Mapping]] = ..., module: _Optional[_Union[Module, _Mapping]] = ..., name: _Optional[str] = ..., label: _Optional[str] = ..., type: _Optional[str] = ..., diameter: _Optional[float] = ..., diameter_unit: _Optional[str] = ..., cooling_intake: _Optional[_Union[CoolingIntake, _Mapping]] = ..., description: _Optional[str] = ..., owner: _Optional[_Union[Owner, _Mapping]] = ..., tags: _Optional[_Iterable[_Union[Tag, _Mapping]]] = ..., custom_fields: _Optional[_Mapping[str, CustomFieldValue]] = ..., metadata: _Optional[_Union[_struct_pb2.Struct, _Mapping]] = ...) -> None: ... + +class CoolingSource(_message.Message): + __slots__ = ("site", "location", "name", "type", "status", "fluid_type", "cooling_capacity", "description", "owner", "comments", "tags", "custom_fields", "metadata") + class CustomFieldsEntry(_message.Message): + __slots__ = ("key", "value") + KEY_FIELD_NUMBER: _ClassVar[int] + VALUE_FIELD_NUMBER: _ClassVar[int] + key: str + value: CustomFieldValue + def __init__(self, key: _Optional[str] = ..., value: _Optional[_Union[CustomFieldValue, _Mapping]] = ...) -> None: ... + SITE_FIELD_NUMBER: _ClassVar[int] + LOCATION_FIELD_NUMBER: _ClassVar[int] + NAME_FIELD_NUMBER: _ClassVar[int] + TYPE_FIELD_NUMBER: _ClassVar[int] + STATUS_FIELD_NUMBER: _ClassVar[int] + FLUID_TYPE_FIELD_NUMBER: _ClassVar[int] + COOLING_CAPACITY_FIELD_NUMBER: _ClassVar[int] + DESCRIPTION_FIELD_NUMBER: _ClassVar[int] + OWNER_FIELD_NUMBER: _ClassVar[int] + COMMENTS_FIELD_NUMBER: _ClassVar[int] + TAGS_FIELD_NUMBER: _ClassVar[int] + CUSTOM_FIELDS_FIELD_NUMBER: _ClassVar[int] + METADATA_FIELD_NUMBER: _ClassVar[int] + site: Site + location: Location + name: str + type: str + status: str + fluid_type: str + cooling_capacity: float + description: str + owner: Owner + comments: str + tags: _containers.RepeatedCompositeFieldContainer[Tag] + custom_fields: _containers.MessageMap[str, CustomFieldValue] + metadata: _struct_pb2.Struct + def __init__(self, site: _Optional[_Union[Site, _Mapping]] = ..., location: _Optional[_Union[Location, _Mapping]] = ..., name: _Optional[str] = ..., type: _Optional[str] = ..., status: _Optional[str] = ..., fluid_type: _Optional[str] = ..., cooling_capacity: _Optional[float] = ..., description: _Optional[str] = ..., owner: _Optional[_Union[Owner, _Mapping]] = ..., comments: _Optional[str] = ..., tags: _Optional[_Iterable[_Union[Tag, _Mapping]]] = ..., custom_fields: _Optional[_Mapping[str, CustomFieldValue]] = ..., metadata: _Optional[_Union[_struct_pb2.Struct, _Mapping]] = ...) -> None: ... + +class ModuleBayType(_message.Message): + __slots__ = ("name", "slug", "manufacturer", "color", "description", "owner", "comments", "tags", "custom_fields", "metadata") + class CustomFieldsEntry(_message.Message): + __slots__ = ("key", "value") + KEY_FIELD_NUMBER: _ClassVar[int] + VALUE_FIELD_NUMBER: _ClassVar[int] + key: str + value: CustomFieldValue + def __init__(self, key: _Optional[str] = ..., value: _Optional[_Union[CustomFieldValue, _Mapping]] = ...) -> None: ... + NAME_FIELD_NUMBER: _ClassVar[int] + SLUG_FIELD_NUMBER: _ClassVar[int] + MANUFACTURER_FIELD_NUMBER: _ClassVar[int] + COLOR_FIELD_NUMBER: _ClassVar[int] + DESCRIPTION_FIELD_NUMBER: _ClassVar[int] + OWNER_FIELD_NUMBER: _ClassVar[int] + COMMENTS_FIELD_NUMBER: _ClassVar[int] + TAGS_FIELD_NUMBER: _ClassVar[int] + CUSTOM_FIELDS_FIELD_NUMBER: _ClassVar[int] + METADATA_FIELD_NUMBER: _ClassVar[int] + name: str + slug: str + manufacturer: Manufacturer + color: str + description: str + owner: Owner + comments: str + tags: _containers.RepeatedCompositeFieldContainer[Tag] + custom_fields: _containers.MessageMap[str, CustomFieldValue] + metadata: _struct_pb2.Struct + def __init__(self, name: _Optional[str] = ..., slug: _Optional[str] = ..., manufacturer: _Optional[_Union[Manufacturer, _Mapping]] = ..., color: _Optional[str] = ..., description: _Optional[str] = ..., owner: _Optional[_Union[Owner, _Mapping]] = ..., comments: _Optional[str] = ..., tags: _Optional[_Iterable[_Union[Tag, _Mapping]]] = ..., custom_fields: _Optional[_Mapping[str, CustomFieldValue]] = ..., metadata: _Optional[_Union[_struct_pb2.Struct, _Mapping]] = ...) -> None: ... diff --git a/netboxlabs/diode/sdk/ingester.py b/netboxlabs/diode/sdk/ingester.py index c37d7c0..0b3f7df 100644 --- a/netboxlabs/diode/sdk/ingester.py +++ b/netboxlabs/diode/sdk/ingester.py @@ -2,8 +2,8 @@ # # Generated code. DO NOT EDIT. -# Source: NetBox v4.6.0 -# Timestamp: 2026-07-08 14:57:56Z +# Source: NetBox v4.7.0 +# Timestamp: 2026-09-02 20:52:38Z # # ruff: noqa: C901 @@ -101,6 +101,11 @@ "RackGroup": "name", "VirtualMachineType": "name", "User": "username", + "CoolingFeed": "name", + "CoolingIntake": "name", + "CoolingOutflow": "name", + "CoolingSource": "name", + "ModuleBayType": "name", } @@ -290,6 +295,11 @@ def __new__( str | VirtualMachineType | pb.VirtualMachineType | None ) = None, user: str | User | pb.User | None = None, + cooling_feed: str | CoolingFeed | pb.CoolingFeed | None = None, + cooling_intake: str | CoolingIntake | pb.CoolingIntake | None = None, + cooling_outflow: str | CoolingOutflow | pb.CoolingOutflow | None = None, + cooling_source: str | CoolingSource | pb.CoolingSource | None = None, + module_bay_type: str | ModuleBayType | pb.ModuleBayType | None = None, ) -> pb.Entity: """Create a new Entity.""" asn = convert_to_protobuf(asn, pb.ASN) @@ -425,6 +435,11 @@ def __new__( virtual_machine_type, pb.VirtualMachineType ) user = convert_to_protobuf(user, pb.User) + cooling_feed = convert_to_protobuf(cooling_feed, pb.CoolingFeed) + cooling_intake = convert_to_protobuf(cooling_intake, pb.CoolingIntake) + cooling_outflow = convert_to_protobuf(cooling_outflow, pb.CoolingOutflow) + cooling_source = convert_to_protobuf(cooling_source, pb.CoolingSource) + module_bay_type = convert_to_protobuf(module_bay_type, pb.ModuleBayType) if timestamp is None: ts = _timestamp_pb2.Timestamp() ts.GetCurrentTime() @@ -532,6 +547,11 @@ def __new__( script_module=script_module, virtual_machine_type=virtual_machine_type, user=user, + cooling_feed=cooling_feed, + cooling_intake=cooling_intake, + cooling_outflow=cooling_outflow, + cooling_source=cooling_source, + module_bay_type=module_bay_type, ) return result @@ -1404,6 +1424,11 @@ def __new__( str | VirtualMachineType | pb.VirtualMachineType | None ) = None, object_user: str | User | pb.User | None = None, + object_cooling_feed: str | CoolingFeed | pb.CoolingFeed | None = None, + object_cooling_intake: str | CoolingIntake | pb.CoolingIntake | None = None, + object_cooling_outflow: str | CoolingOutflow | pb.CoolingOutflow | None = None, + object_cooling_source: str | CoolingSource | pb.CoolingSource | None = None, + object_module_bay_type: str | ModuleBayType | pb.ModuleBayType | None = None, contact: str | Contact | pb.Contact | None = None, role: str | ContactRole | pb.ContactRole | None = None, priority: str | None = None, @@ -1578,6 +1603,19 @@ def __new__( object_virtual_machine_type, pb.VirtualMachineType ) object_user = convert_to_protobuf(object_user, pb.User) + object_cooling_feed = convert_to_protobuf(object_cooling_feed, pb.CoolingFeed) + object_cooling_intake = convert_to_protobuf( + object_cooling_intake, pb.CoolingIntake + ) + object_cooling_outflow = convert_to_protobuf( + object_cooling_outflow, pb.CoolingOutflow + ) + object_cooling_source = convert_to_protobuf( + object_cooling_source, pb.CoolingSource + ) + object_module_bay_type = convert_to_protobuf( + object_module_bay_type, pb.ModuleBayType + ) contact = convert_to_protobuf(contact, pb.Contact) role = convert_to_protobuf(role, pb.ContactRole) tags = convert_to_protobuf_list(tags, pb.Tag) @@ -1684,6 +1722,11 @@ def __new__( object_script_module=object_script_module, object_virtual_machine_type=object_virtual_machine_type, object_user=object_user, + object_cooling_feed=object_cooling_feed, + object_cooling_intake=object_cooling_intake, + object_cooling_outflow=object_cooling_outflow, + object_cooling_source=object_cooling_source, + object_module_bay_type=object_module_bay_type, contact=contact, role=role, priority=priority, @@ -1890,6 +1933,11 @@ def __new__( str | VirtualMachineType | pb.VirtualMachineType | None ) = None, user: str | User | pb.User | None = None, + cooling_feed: str | CoolingFeed | pb.CoolingFeed | None = None, + cooling_intake: str | CoolingIntake | pb.CoolingIntake | None = None, + cooling_outflow: str | CoolingOutflow | pb.CoolingOutflow | None = None, + cooling_source: str | CoolingSource | pb.CoolingSource | None = None, + module_bay_type: str | ModuleBayType | pb.ModuleBayType | None = None, ) -> pb.CustomFieldObjectReference: """Create a new CustomFieldObjectReference.""" asn = convert_to_protobuf(asn, pb.ASN) @@ -2024,6 +2072,11 @@ def __new__( virtual_machine_type, pb.VirtualMachineType ) user = convert_to_protobuf(user, pb.User) + cooling_feed = convert_to_protobuf(cooling_feed, pb.CoolingFeed) + cooling_intake = convert_to_protobuf(cooling_intake, pb.CoolingIntake) + cooling_outflow = convert_to_protobuf(cooling_outflow, pb.CoolingOutflow) + cooling_source = convert_to_protobuf(cooling_source, pb.CoolingSource) + module_bay_type = convert_to_protobuf(module_bay_type, pb.ModuleBayType) result = pb.CustomFieldObjectReference( asn=asn, asn_range=asn_range, @@ -2125,6 +2178,11 @@ def __new__( script_module=script_module, virtual_machine_type=virtual_machine_type, user=user, + cooling_feed=cooling_feed, + cooling_intake=cooling_intake, + cooling_outflow=cooling_outflow, + cooling_source=cooling_source, + module_bay_type=module_bay_type, ) return result @@ -2210,6 +2268,7 @@ def __new__( metadata: dict[str, Any] | None = None, owner: str | Owner | pb.Owner | None = None, config: DeviceConfig | pb.DeviceConfig | None = None, + cooling_method: str | None = None, # shortcuts manufacturer: str | Manufacturer | pb.Manufacturer = None, ) -> pb.Device: @@ -2272,6 +2331,7 @@ def __new__( metadata=metadata, owner=owner, config=config, + cooling_method=cooling_method, ) return result @@ -2376,6 +2436,8 @@ def __new__( custom_fields: dict[str, CustomFieldValue | pb.CustomFieldValue] | None = None, metadata: dict[str, Any] | None = None, owner: str | Owner | pb.Owner | None = None, + cooling_method: str | None = None, + end_of_life: datetime.datetime | None = None, ) -> pb.DeviceType: """Create a new DeviceType.""" manufacturer = convert_to_protobuf(manufacturer, pb.Manufacturer) @@ -2403,6 +2465,8 @@ def __new__( custom_fields=custom_fields, metadata=metadata, owner=owner, + cooling_method=cooling_method, + end_of_life=end_of_life, ) return result @@ -2597,6 +2661,13 @@ def __new__( str | VirtualMachineType | pb.VirtualMachineType | None ) = None, interface_user: str | User | pb.User | None = None, + interface_cooling_feed: str | CoolingFeed | pb.CoolingFeed | None = None, + interface_cooling_intake: str | CoolingIntake | pb.CoolingIntake | None = None, + interface_cooling_outflow: ( + str | CoolingOutflow | pb.CoolingOutflow | None + ) = None, + interface_cooling_source: str | CoolingSource | pb.CoolingSource | None = None, + interface_module_bay_type: str | ModuleBayType | pb.ModuleBayType | None = None, priority: int | None = None, metadata: dict[str, Any] | None = None, ) -> pb.FHRPGroupAssignment: @@ -2814,6 +2885,21 @@ def __new__( interface_virtual_machine_type, pb.VirtualMachineType ) interface_user = convert_to_protobuf(interface_user, pb.User) + interface_cooling_feed = convert_to_protobuf( + interface_cooling_feed, pb.CoolingFeed + ) + interface_cooling_intake = convert_to_protobuf( + interface_cooling_intake, pb.CoolingIntake + ) + interface_cooling_outflow = convert_to_protobuf( + interface_cooling_outflow, pb.CoolingOutflow + ) + interface_cooling_source = convert_to_protobuf( + interface_cooling_source, pb.CoolingSource + ) + interface_module_bay_type = convert_to_protobuf( + interface_module_bay_type, pb.ModuleBayType + ) metadata = convert_dict_to_struct(metadata) result = pb.FHRPGroupAssignment( group=group, @@ -2917,6 +3003,11 @@ def __new__( interface_script_module=interface_script_module, interface_virtual_machine_type=interface_virtual_machine_type, interface_user=interface_user, + interface_cooling_feed=interface_cooling_feed, + interface_cooling_intake=interface_cooling_intake, + interface_cooling_outflow=interface_cooling_outflow, + interface_cooling_source=interface_cooling_source, + interface_module_bay_type=interface_module_bay_type, priority=priority, metadata=metadata, ) @@ -3113,6 +3204,11 @@ def __new__( str | VirtualMachineType | pb.VirtualMachineType | None ) = None, object_user: str | User | pb.User | None = None, + object_cooling_feed: str | CoolingFeed | pb.CoolingFeed | None = None, + object_cooling_intake: str | CoolingIntake | pb.CoolingIntake | None = None, + object_cooling_outflow: str | CoolingOutflow | pb.CoolingOutflow | None = None, + object_cooling_source: str | CoolingSource | pb.CoolingSource | None = None, + object_module_bay_type: str | ModuleBayType | pb.ModuleBayType | None = None, ) -> pb.GenericObject: """Create a new GenericObject.""" object_asn = convert_to_protobuf(object_asn, pb.ASN) @@ -3281,6 +3377,19 @@ def __new__( object_virtual_machine_type, pb.VirtualMachineType ) object_user = convert_to_protobuf(object_user, pb.User) + object_cooling_feed = convert_to_protobuf(object_cooling_feed, pb.CoolingFeed) + object_cooling_intake = convert_to_protobuf( + object_cooling_intake, pb.CoolingIntake + ) + object_cooling_outflow = convert_to_protobuf( + object_cooling_outflow, pb.CoolingOutflow + ) + object_cooling_source = convert_to_protobuf( + object_cooling_source, pb.CoolingSource + ) + object_module_bay_type = convert_to_protobuf( + object_module_bay_type, pb.ModuleBayType + ) result = pb.GenericObject( object_asn=object_asn, object_asn_range=object_asn_range, @@ -3382,6 +3491,11 @@ def __new__( object_script_module=object_script_module, object_virtual_machine_type=object_virtual_machine_type, object_user=object_user, + object_cooling_feed=object_cooling_feed, + object_cooling_intake=object_cooling_intake, + object_cooling_outflow=object_cooling_outflow, + object_cooling_source=object_cooling_source, + object_module_bay_type=object_module_bay_type, ) return result @@ -3771,6 +3885,9 @@ def __new__( wireless_lans: list[str | WirelessLAN | pb.WirelessLAN] | None = None, metadata: dict[str, Any] | None = None, owner: str | Owner | pb.Owner | None = None, + channels: int | None = None, + channel_id: int | None = None, + mac_address: str | None = None, # shortcuts manufacturer: str | Manufacturer | pb.Manufacturer = None, device_type: str | DeviceType | pb.DeviceType = None, @@ -3861,6 +3978,9 @@ def __new__( wireless_lans=wireless_lans, metadata=metadata, owner=owner, + channels=channels, + channel_id=channel_id, + mac_address=mac_address, ) return result @@ -3891,6 +4011,10 @@ def __new__( component_power_outlet: str | PowerOutlet | pb.PowerOutlet | None = None, component_power_port: str | PowerPort | pb.PowerPort | None = None, component_rear_port: str | RearPort | pb.RearPort | None = None, + component_cooling_intake: str | CoolingIntake | pb.CoolingIntake | None = None, + component_cooling_outflow: ( + str | CoolingOutflow | pb.CoolingOutflow | None + ) = None, tags: list[str | Tag | pb.Tag] | None = None, custom_fields: dict[str, CustomFieldValue | pb.CustomFieldValue] | None = None, metadata: dict[str, Any] | None = None, @@ -3914,6 +4038,12 @@ def __new__( ) component_power_port = convert_to_protobuf(component_power_port, pb.PowerPort) component_rear_port = convert_to_protobuf(component_rear_port, pb.RearPort) + component_cooling_intake = convert_to_protobuf( + component_cooling_intake, pb.CoolingIntake + ) + component_cooling_outflow = convert_to_protobuf( + component_cooling_outflow, pb.CoolingOutflow + ) tags = convert_to_protobuf_list(tags, pb.Tag) custom_fields = convert_to_protobuf_dict(custom_fields, pb.CustomFieldValue) metadata = convert_dict_to_struct(metadata) @@ -3938,6 +4068,8 @@ def __new__( component_power_outlet=component_power_outlet, component_power_port=component_power_port, component_rear_port=component_rear_port, + component_cooling_intake=component_cooling_intake, + component_cooling_outflow=component_cooling_outflow, tags=tags, custom_fields=custom_fields, metadata=metadata, @@ -4195,6 +4327,19 @@ def __new__( str | VirtualMachineType | pb.VirtualMachineType | None ) = None, assigned_object_user: str | User | pb.User | None = None, + assigned_object_cooling_feed: str | CoolingFeed | pb.CoolingFeed | None = None, + assigned_object_cooling_intake: ( + str | CoolingIntake | pb.CoolingIntake | None + ) = None, + assigned_object_cooling_outflow: ( + str | CoolingOutflow | pb.CoolingOutflow | None + ) = None, + assigned_object_cooling_source: ( + str | CoolingSource | pb.CoolingSource | None + ) = None, + assigned_object_module_bay_type: ( + str | ModuleBayType | pb.ModuleBayType | None + ) = None, tags: list[str | Tag | pb.Tag] | None = None, custom_fields: dict[str, CustomFieldValue | pb.CustomFieldValue] | None = None, metadata: dict[str, Any] | None = None, @@ -4465,6 +4610,21 @@ def __new__( assigned_object_virtual_machine_type, pb.VirtualMachineType ) assigned_object_user = convert_to_protobuf(assigned_object_user, pb.User) + assigned_object_cooling_feed = convert_to_protobuf( + assigned_object_cooling_feed, pb.CoolingFeed + ) + assigned_object_cooling_intake = convert_to_protobuf( + assigned_object_cooling_intake, pb.CoolingIntake + ) + assigned_object_cooling_outflow = convert_to_protobuf( + assigned_object_cooling_outflow, pb.CoolingOutflow + ) + assigned_object_cooling_source = convert_to_protobuf( + assigned_object_cooling_source, pb.CoolingSource + ) + assigned_object_module_bay_type = convert_to_protobuf( + assigned_object_module_bay_type, pb.ModuleBayType + ) tags = convert_to_protobuf_list(tags, pb.Tag) custom_fields = convert_to_protobuf_dict(custom_fields, pb.CustomFieldValue) metadata = convert_dict_to_struct(metadata) @@ -4570,6 +4730,11 @@ def __new__( assigned_object_script_module=assigned_object_script_module, assigned_object_virtual_machine_type=assigned_object_virtual_machine_type, assigned_object_user=assigned_object_user, + assigned_object_cooling_feed=assigned_object_cooling_feed, + assigned_object_cooling_intake=assigned_object_cooling_intake, + assigned_object_cooling_outflow=assigned_object_cooling_outflow, + assigned_object_cooling_source=assigned_object_cooling_source, + assigned_object_module_bay_type=assigned_object_module_bay_type, tags=tags, custom_fields=custom_fields, metadata=metadata, @@ -4758,6 +4923,7 @@ def __new__( metadata: dict[str, Any] | None = None, owner: str | Owner | pb.Owner | None = None, enabled: bool | None = None, + module_bay_types: list[str | ModuleBayType | pb.ModuleBayType] | None = None, ) -> pb.ModuleBay: """Create a new ModuleBay.""" device = convert_to_protobuf(device, pb.Device) @@ -4767,6 +4933,7 @@ def __new__( custom_fields = convert_to_protobuf_dict(custom_fields, pb.CustomFieldValue) metadata = convert_dict_to_struct(metadata) owner = convert_to_protobuf(owner, pb.Owner) + module_bay_types = convert_to_protobuf_list(module_bay_types, pb.ModuleBayType) result = pb.ModuleBay( device=device, module=module, @@ -4780,6 +4947,7 @@ def __new__( metadata=metadata, owner=owner, enabled=enabled, + module_bay_types=module_bay_types, ) return result @@ -4803,6 +4971,9 @@ def __new__( attributes: str | None = None, metadata: dict[str, Any] | None = None, owner: str | Owner | pb.Owner | None = None, + cooling_method: str | None = None, + end_of_life: datetime.datetime | None = None, + module_bay_types: list[str | ModuleBayType | pb.ModuleBayType] | None = None, ) -> pb.ModuleType: """Create a new ModuleType.""" manufacturer = convert_to_protobuf(manufacturer, pb.Manufacturer) @@ -4811,6 +4982,7 @@ def __new__( profile = convert_to_protobuf(profile, pb.ModuleTypeProfile) metadata = convert_dict_to_struct(metadata) owner = convert_to_protobuf(owner, pb.Owner) + module_bay_types = convert_to_protobuf_list(module_bay_types, pb.ModuleBayType) result = pb.ModuleType( manufacturer=manufacturer, model=model, @@ -4826,6 +4998,9 @@ def __new__( attributes=attributes, metadata=metadata, owner=owner, + cooling_method=cooling_method, + end_of_life=end_of_life, + module_bay_types=module_bay_types, ) return result @@ -5290,6 +5465,8 @@ def __new__( metadata: dict[str, Any] | None = None, owner: str | Owner | pb.Owner | None = None, group: str | RackGroup | pb.RackGroup | None = None, + cooling_capability: str | None = None, + cooling_capacity: float | None = None, ) -> pb.Rack: """Create a new Rack.""" site = convert_to_protobuf(site, pb.Site) @@ -5334,6 +5511,8 @@ def __new__( metadata=metadata, owner=owner, group=group, + cooling_capability=cooling_capability, + cooling_capacity=cooling_capacity, ) return result @@ -5440,6 +5619,8 @@ def __new__( outer_height: int | None = None, metadata: dict[str, Any] | None = None, owner: str | Owner | pb.Owner | None = None, + cooling_capability: str | None = None, + cooling_capacity: float | None = None, ) -> pb.RackType: """Create a new RackType.""" manufacturer = convert_to_protobuf(manufacturer, pb.Manufacturer) @@ -5470,6 +5651,8 @@ def __new__( outer_height=outer_height, metadata=metadata, owner=owner, + cooling_capability=cooling_capability, + cooling_capacity=cooling_capacity, ) return result @@ -5642,6 +5825,7 @@ def __new__( ) = None, metadata: dict[str, Any] | None = None, owner: str | Owner | pb.Owner | None = None, + port_mappings: list[str] | None = None, ) -> pb.Service: """Create a new Service.""" device = convert_to_protobuf(device, pb.Device) @@ -5674,6 +5858,7 @@ def __new__( parent_object_virtual_machine=parent_object_virtual_machine, metadata=metadata, owner=owner, + port_mappings=port_mappings, ) return result @@ -6104,6 +6289,19 @@ def __new__( str | VirtualMachineType | pb.VirtualMachineType | None ) = None, termination_user: str | User | pb.User | None = None, + termination_cooling_feed: str | CoolingFeed | pb.CoolingFeed | None = None, + termination_cooling_intake: ( + str | CoolingIntake | pb.CoolingIntake | None + ) = None, + termination_cooling_outflow: ( + str | CoolingOutflow | pb.CoolingOutflow | None + ) = None, + termination_cooling_source: ( + str | CoolingSource | pb.CoolingSource | None + ) = None, + termination_module_bay_type: ( + str | ModuleBayType | pb.ModuleBayType | None + ) = None, outside_ip: str | IPAddress | pb.IPAddress | None = None, tags: list[str | Tag | pb.Tag] | None = None, custom_fields: dict[str, CustomFieldValue | pb.CustomFieldValue] | None = None, @@ -6347,6 +6545,21 @@ def __new__( termination_virtual_machine_type, pb.VirtualMachineType ) termination_user = convert_to_protobuf(termination_user, pb.User) + termination_cooling_feed = convert_to_protobuf( + termination_cooling_feed, pb.CoolingFeed + ) + termination_cooling_intake = convert_to_protobuf( + termination_cooling_intake, pb.CoolingIntake + ) + termination_cooling_outflow = convert_to_protobuf( + termination_cooling_outflow, pb.CoolingOutflow + ) + termination_cooling_source = convert_to_protobuf( + termination_cooling_source, pb.CoolingSource + ) + termination_module_bay_type = convert_to_protobuf( + termination_module_bay_type, pb.ModuleBayType + ) outside_ip = convert_to_protobuf(outside_ip, pb.IPAddress) tags = convert_to_protobuf_list(tags, pb.Tag) custom_fields = convert_to_protobuf_dict(custom_fields, pb.CustomFieldValue) @@ -6454,6 +6667,11 @@ def __new__( termination_script_module=termination_script_module, termination_virtual_machine_type=termination_virtual_machine_type, termination_user=termination_user, + termination_cooling_feed=termination_cooling_feed, + termination_cooling_intake=termination_cooling_intake, + termination_cooling_outflow=termination_cooling_outflow, + termination_cooling_source=termination_cooling_source, + termination_module_bay_type=termination_module_bay_type, outside_ip=outside_ip, tags=tags, custom_fields=custom_fields, @@ -6647,6 +6865,7 @@ def __new__( tagged_vlans: list[str | VLAN | pb.VLAN] | None = None, metadata: dict[str, Any] | None = None, owner: str | Owner | pb.Owner | None = None, + mac_address: str | None = None, ) -> pb.VMInterface: """Create a new VMInterface.""" virtual_machine = convert_to_protobuf(virtual_machine, pb.VirtualMachine) @@ -6683,6 +6902,7 @@ def __new__( tagged_vlans=tagged_vlans, metadata=metadata, owner=owner, + mac_address=mac_address, ) return result @@ -7214,6 +7434,7 @@ def __new__( metadata: dict[str, Any] | None = None, owner: str | Owner | pb.Owner | None = None, validation_schema: str | None = None, + nulls_first: bool | None = None, ) -> pb.CustomField: """Create a new CustomField.""" choice_set = convert_to_protobuf(choice_set, pb.CustomFieldChoiceSet) @@ -7245,6 +7466,7 @@ def __new__( metadata=metadata, owner=owner, validation_schema=validation_schema, + nulls_first=nulls_first, ) return result @@ -7446,6 +7668,19 @@ def __new__( str | VirtualMachineType | pb.VirtualMachineType | None ) = None, assigned_object_user: str | User | pb.User | None = None, + assigned_object_cooling_feed: str | CoolingFeed | pb.CoolingFeed | None = None, + assigned_object_cooling_intake: ( + str | CoolingIntake | pb.CoolingIntake | None + ) = None, + assigned_object_cooling_outflow: ( + str | CoolingOutflow | pb.CoolingOutflow | None + ) = None, + assigned_object_cooling_source: ( + str | CoolingSource | pb.CoolingSource | None + ) = None, + assigned_object_module_bay_type: ( + str | ModuleBayType | pb.ModuleBayType | None + ) = None, kind: str | None = None, comments: str | None = None, tags: list[str | Tag | pb.Tag] | None = None, @@ -7718,6 +7953,21 @@ def __new__( assigned_object_virtual_machine_type, pb.VirtualMachineType ) assigned_object_user = convert_to_protobuf(assigned_object_user, pb.User) + assigned_object_cooling_feed = convert_to_protobuf( + assigned_object_cooling_feed, pb.CoolingFeed + ) + assigned_object_cooling_intake = convert_to_protobuf( + assigned_object_cooling_intake, pb.CoolingIntake + ) + assigned_object_cooling_outflow = convert_to_protobuf( + assigned_object_cooling_outflow, pb.CoolingOutflow + ) + assigned_object_cooling_source = convert_to_protobuf( + assigned_object_cooling_source, pb.CoolingSource + ) + assigned_object_module_bay_type = convert_to_protobuf( + assigned_object_module_bay_type, pb.ModuleBayType + ) tags = convert_to_protobuf_list(tags, pb.Tag) custom_fields = convert_to_protobuf_dict(custom_fields, pb.CustomFieldValue) metadata = convert_dict_to_struct(metadata) @@ -7823,6 +8073,11 @@ def __new__( assigned_object_script_module=assigned_object_script_module, assigned_object_virtual_machine_type=assigned_object_virtual_machine_type, assigned_object_user=assigned_object_user, + assigned_object_cooling_feed=assigned_object_cooling_feed, + assigned_object_cooling_intake=assigned_object_cooling_intake, + assigned_object_cooling_outflow=assigned_object_cooling_outflow, + assigned_object_cooling_source=assigned_object_cooling_source, + assigned_object_module_bay_type=assigned_object_module_bay_type, kind=kind, comments=comments, tags=tags, @@ -8099,3 +8354,225 @@ def __new__( metadata=metadata, ) return result + + +class CoolingFeed: + """wrapper for netboxlabs.diode.sdk.diode.v1.ingester_pb2.CoolingFeed.""" + + def __new__( + cls, + cooling_source: str | CoolingSource | pb.CoolingSource | None = None, + rack: str | Rack | pb.Rack | None = None, + name: str | None = None, + status: str | None = None, + cooling_capacity: float | None = None, + max_flow: float | None = None, + max_flow_unit: str | None = None, + description: str | None = None, + tenant: str | Tenant | pb.Tenant | None = None, + owner: str | Owner | pb.Owner | None = None, + comments: str | None = None, + tags: list[str | Tag | pb.Tag] | None = None, + custom_fields: dict[str, CustomFieldValue | pb.CustomFieldValue] | None = None, + metadata: dict[str, Any] | None = None, + ) -> pb.CoolingFeed: + """Create a new CoolingFeed.""" + cooling_source = convert_to_protobuf(cooling_source, pb.CoolingSource) + rack = convert_to_protobuf(rack, pb.Rack) + tenant = convert_to_protobuf(tenant, pb.Tenant) + owner = convert_to_protobuf(owner, pb.Owner) + tags = convert_to_protobuf_list(tags, pb.Tag) + custom_fields = convert_to_protobuf_dict(custom_fields, pb.CustomFieldValue) + metadata = convert_dict_to_struct(metadata) + result = pb.CoolingFeed( + cooling_source=cooling_source, + rack=rack, + name=name, + status=status, + cooling_capacity=cooling_capacity, + max_flow=max_flow, + max_flow_unit=max_flow_unit, + description=description, + tenant=tenant, + owner=owner, + comments=comments, + tags=tags, + custom_fields=custom_fields, + metadata=metadata, + ) + return result + + +class CoolingIntake: + """wrapper for netboxlabs.diode.sdk.diode.v1.ingester_pb2.CoolingIntake.""" + + def __new__( + cls, + device: str | Device | pb.Device | None = None, + module: Module | pb.Module | None = None, + name: str | None = None, + label: str | None = None, + type: str | None = None, + diameter: float | None = None, + diameter_unit: str | None = None, + max_flow: float | None = None, + max_flow_unit: str | None = None, + cooling_outflow: str | CoolingOutflow | pb.CoolingOutflow | None = None, + description: str | None = None, + owner: str | Owner | pb.Owner | None = None, + tags: list[str | Tag | pb.Tag] | None = None, + custom_fields: dict[str, CustomFieldValue | pb.CustomFieldValue] | None = None, + metadata: dict[str, Any] | None = None, + ) -> pb.CoolingIntake: + """Create a new CoolingIntake.""" + device = convert_to_protobuf(device, pb.Device) + module = convert_to_protobuf(module, pb.Module) + cooling_outflow = convert_to_protobuf(cooling_outflow, pb.CoolingOutflow) + owner = convert_to_protobuf(owner, pb.Owner) + tags = convert_to_protobuf_list(tags, pb.Tag) + custom_fields = convert_to_protobuf_dict(custom_fields, pb.CustomFieldValue) + metadata = convert_dict_to_struct(metadata) + result = pb.CoolingIntake( + device=device, + module=module, + name=name, + label=label, + type=type, + diameter=diameter, + diameter_unit=diameter_unit, + max_flow=max_flow, + max_flow_unit=max_flow_unit, + cooling_outflow=cooling_outflow, + description=description, + owner=owner, + tags=tags, + custom_fields=custom_fields, + metadata=metadata, + ) + return result + + +class CoolingOutflow: + """wrapper for netboxlabs.diode.sdk.diode.v1.ingester_pb2.CoolingOutflow.""" + + def __new__( + cls, + device: str | Device | pb.Device | None = None, + module: Module | pb.Module | None = None, + name: str | None = None, + label: str | None = None, + type: str | None = None, + diameter: float | None = None, + diameter_unit: str | None = None, + cooling_intake: str | CoolingIntake | pb.CoolingIntake | None = None, + description: str | None = None, + owner: str | Owner | pb.Owner | None = None, + tags: list[str | Tag | pb.Tag] | None = None, + custom_fields: dict[str, CustomFieldValue | pb.CustomFieldValue] | None = None, + metadata: dict[str, Any] | None = None, + ) -> pb.CoolingOutflow: + """Create a new CoolingOutflow.""" + device = convert_to_protobuf(device, pb.Device) + module = convert_to_protobuf(module, pb.Module) + cooling_intake = convert_to_protobuf(cooling_intake, pb.CoolingIntake) + owner = convert_to_protobuf(owner, pb.Owner) + tags = convert_to_protobuf_list(tags, pb.Tag) + custom_fields = convert_to_protobuf_dict(custom_fields, pb.CustomFieldValue) + metadata = convert_dict_to_struct(metadata) + result = pb.CoolingOutflow( + device=device, + module=module, + name=name, + label=label, + type=type, + diameter=diameter, + diameter_unit=diameter_unit, + cooling_intake=cooling_intake, + description=description, + owner=owner, + tags=tags, + custom_fields=custom_fields, + metadata=metadata, + ) + return result + + +class CoolingSource: + """wrapper for netboxlabs.diode.sdk.diode.v1.ingester_pb2.CoolingSource.""" + + def __new__( + cls, + site: str | Site | pb.Site | None = None, + location: str | Location | pb.Location | None = None, + name: str | None = None, + type: str | None = None, + status: str | None = None, + fluid_type: str | None = None, + cooling_capacity: float | None = None, + description: str | None = None, + owner: str | Owner | pb.Owner | None = None, + comments: str | None = None, + tags: list[str | Tag | pb.Tag] | None = None, + custom_fields: dict[str, CustomFieldValue | pb.CustomFieldValue] | None = None, + metadata: dict[str, Any] | None = None, + ) -> pb.CoolingSource: + """Create a new CoolingSource.""" + site = convert_to_protobuf(site, pb.Site) + location = convert_to_protobuf(location, pb.Location) + owner = convert_to_protobuf(owner, pb.Owner) + tags = convert_to_protobuf_list(tags, pb.Tag) + custom_fields = convert_to_protobuf_dict(custom_fields, pb.CustomFieldValue) + metadata = convert_dict_to_struct(metadata) + result = pb.CoolingSource( + site=site, + location=location, + name=name, + type=type, + status=status, + fluid_type=fluid_type, + cooling_capacity=cooling_capacity, + description=description, + owner=owner, + comments=comments, + tags=tags, + custom_fields=custom_fields, + metadata=metadata, + ) + return result + + +class ModuleBayType: + """wrapper for netboxlabs.diode.sdk.diode.v1.ingester_pb2.ModuleBayType.""" + + def __new__( + cls, + name: str | None = None, + slug: str | None = None, + manufacturer: str | Manufacturer | pb.Manufacturer | None = None, + color: str | None = None, + description: str | None = None, + owner: str | Owner | pb.Owner | None = None, + comments: str | None = None, + tags: list[str | Tag | pb.Tag] | None = None, + custom_fields: dict[str, CustomFieldValue | pb.CustomFieldValue] | None = None, + metadata: dict[str, Any] | None = None, + ) -> pb.ModuleBayType: + """Create a new ModuleBayType.""" + manufacturer = convert_to_protobuf(manufacturer, pb.Manufacturer) + owner = convert_to_protobuf(owner, pb.Owner) + tags = convert_to_protobuf_list(tags, pb.Tag) + custom_fields = convert_to_protobuf_dict(custom_fields, pb.CustomFieldValue) + metadata = convert_dict_to_struct(metadata) + result = pb.ModuleBayType( + name=name, + slug=slug, + manufacturer=manufacturer, + color=color, + description=description, + owner=owner, + comments=comments, + tags=tags, + custom_fields=custom_fields, + metadata=metadata, + ) + return result