From 3a8c1dcc19fbb9739e05035b2c8778da92f36305 Mon Sep 17 00:00:00 2001 From: Michal Fiedorowicz Date: Tue, 3 Feb 2026 09:42:10 +0100 Subject: [PATCH] feat: add DeviceConfig entity support (#82) Signed-off-by: Michal Fiedorowicz --- netboxlabs/diode/sdk/diode/v1/ingester_pb2.py | 754 +++++++++--------- .../diode/sdk/diode/v1/ingester_pb2.pyi | 24 +- netboxlabs/diode/sdk/ingester.py | 700 ++++++---------- 3 files changed, 667 insertions(+), 811 deletions(-) diff --git a/netboxlabs/diode/sdk/diode/v1/ingester_pb2.py b/netboxlabs/diode/sdk/diode/v1/ingester_pb2.py index f718a8a..acd2f7e 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\"\xd3,\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\nownerGroupB\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\"\xc1\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\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_owner\"\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\"\xb6\x0c\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\x81\x03\n\x07profile\x18\x0f \x01(\tB\xe1\x02\xfa\x42\xdd\x02r\xda\x02R\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\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_owner\"\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\"\xb9\x39\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\x12V\n\x18object_cable_termination\x18\x06 \x01(\x0b\x32\x1a.diode.v1.CableTerminationH\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\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\"\xa1,\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\nownerGroupB\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\"\xe2\x0e\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\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_owner\"\xb9\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\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_owner\"\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\"\xa8;\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.CableTerminationH\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\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\"\xe3\x35\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\x12V\n\x18object_cable_termination\x18\x06 \x01(\x0b\x32\x1a.diode.v1.CableTerminationH\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\x10objectOwnerGroupB\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\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\"\xfe\x05\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\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_owner\"\xa1\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\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_owner\"\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\"\xdd\x0e\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\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_owner\"\xdf\x04\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\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\"\x91\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\xa2\r\n\x0cobject_types\x18\x06 \x03(\tB\xfe\x0c\xfa\x42\xfa\x0c\x92\x01\xf6\x0c\"\xf3\x0cr\xf0\x0cR\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.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\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\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\"\xd0@\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`\n\x1dtermination_cable_termination\x18\x08 \x01(\x0b\x32\x1a.diode.v1.CableTerminationH\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\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\"\xd2\x07\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\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\"\x9e\n\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\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_owner\"\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\"\x8f\'\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\xdd\x0e\n\x13related_object_type\x18\x02 \x01(\tB\xa7\x0e\xfa\x42\xa3\x0er\xa0\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\x0e\x64\x63im.cablepathR\x15\x64\x63im.cableterminationR\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\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\x16virtualization.clusterR\x1bvirtualization.clustergroupR\x1avirtualization.clustertypeR\x1avirtualization.virtualdiskR\x1dvirtualization.virtualmachineR\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\xa2\r\n\x0cobject_types\x18\x16 \x03(\tB\xfe\x0c\xfa\x42\xfa\x0c\x92\x01\xf6\x0c\"\xf3\x0cr\xf0\x0cR\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.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\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\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\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_owner\"\xa3\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\x42\x0e\n\x0c_descriptionB\x0f\n\r_base_choicesB\x17\n\x15_order_alphabeticallyB\x08\n\x06_owner\"\xaa\x45\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\x12g\n!assigned_object_cable_termination\x18\x06 \x01(\x0b\x32\x1a.diode.v1.CableTerminationH\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\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\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_kind\"\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\"\xb8\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\x85\r\n\x0cobject_types\x18\t \x03(\tB\xe1\x0c\xfa\x42\xdd\x0c\x92\x01\xd9\x0c\"\xd6\x0cr\xd3\x0cR\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.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\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\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\"\xb9\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\x08metadataB\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_description2N\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\"\x98-\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\x65viceConfigB\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\"\xc1\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\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_owner\"\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\"\xb6\x0c\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\x81\x03\n\x07profile\x18\x0f \x01(\tB\xe1\x02\xfa\x42\xdd\x02r\xda\x02R\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\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_owner\"\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\"\xb9\x39\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\x12V\n\x18object_cable_termination\x18\x06 \x01(\x0b\x32\x1a.diode.v1.CableTerminationH\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\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\"\xa1,\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\nownerGroupB\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\"\xb9\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\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_owner\"\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\"\xa8;\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.CableTerminationH\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\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\"\xe3\x35\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\x12V\n\x18object_cable_termination\x18\x06 \x01(\x0b\x32\x1a.diode.v1.CableTerminationH\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\x10objectOwnerGroupB\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\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\"\xfe\x05\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\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_owner\"\xa1\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\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_owner\"\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\"\xdd\x0e\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\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_owner\"\xdf\x04\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\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\"\x91\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\xa2\r\n\x0cobject_types\x18\x06 \x03(\tB\xfe\x0c\xfa\x42\xfa\x0c\x92\x01\xf6\x0c\"\xf3\x0cr\xf0\x0cR\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.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\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\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\"\xd0@\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`\n\x1dtermination_cable_termination\x18\x08 \x01(\x0b\x32\x1a.diode.v1.CableTerminationH\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\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\"\xd2\x07\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\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\"\x9e\n\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\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_owner\"\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\"\x8f\'\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\xdd\x0e\n\x13related_object_type\x18\x02 \x01(\tB\xa7\x0e\xfa\x42\xa3\x0er\xa0\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\x0e\x64\x63im.cablepathR\x15\x64\x63im.cableterminationR\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\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\x16virtualization.clusterR\x1bvirtualization.clustergroupR\x1avirtualization.clustertypeR\x1avirtualization.virtualdiskR\x1dvirtualization.virtualmachineR\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\xa2\r\n\x0cobject_types\x18\x16 \x03(\tB\xfe\x0c\xfa\x42\xfa\x0c\x92\x01\xf6\x0c\"\xf3\x0cr\xf0\x0cR\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.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\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\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\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_owner\"\xa3\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\x42\x0e\n\x0c_descriptionB\x0f\n\r_base_choicesB\x17\n\x15_order_alphabeticallyB\x08\n\x06_owner\"\xaa\x45\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\x12g\n!assigned_object_cable_termination\x18\x06 \x01(\x0b\x32\x1a.diode.v1.CableTerminationH\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\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\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_kind\"\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\"\xb8\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\x85\r\n\x0cobject_types\x18\t \x03(\tB\xe1\x0c\xfa\x42\xdd\x0c\x92\x01\xd9\x0c\"\xd6\x0cr\xd3\x0cR\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.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\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\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\"\xb9\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\x08metadataB\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\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') _globals = globals() _builder.BuildMessageAndEnumDescriptors(DESCRIPTOR, _globals) @@ -30,6 +30,8 @@ _globals['_ENTITY'].fields_by_name['timestamp']._serialized_options = b'\372B\007\262\001\004\010\0018\001' _globals['_ENTITY'].fields_by_name['cable_termination']._loaded_options = None _globals['_ENTITY'].fields_by_name['cable_termination']._serialized_options = b'\030\001' + _globals['_ENTITY'].fields_by_name['device_config']._loaded_options = None + _globals['_ENTITY'].fields_by_name['device_config']._serialized_options = b'\210\265\030\000' _globals['_INGESTREQUEST'].fields_by_name['stream']._loaded_options = None _globals['_INGESTREQUEST'].fields_by_name['stream']._serialized_options = b'\372B\007r\005\020\001\030\377\001' _globals['_INGESTREQUEST'].fields_by_name['entities']._loaded_options = None @@ -162,6 +164,8 @@ _globals['_DEVICE'].fields_by_name['airflow']._serialized_options = b'\372B\211\001r\206\001R\rbottom-to-topR\rfront-to-rearR\rleft-to-rightR\005mixedR\007passiveR\rrear-to-frontR\014rear-to-sideR\rright-to-leftR\014side-to-rearR\rtop-to-bottom' _globals['_DEVICE'].fields_by_name['metadata']._loaded_options = None _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['_DEVICEBAY_CUSTOMFIELDSENTRY']._loaded_options = None _globals['_DEVICEBAY_CUSTOMFIELDSENTRY']._serialized_options = b'8\001' _globals['_DEVICEBAY'].fields_by_name['metadata']._loaded_options = None @@ -618,374 +622,384 @@ _globals['_OWNER'].fields_by_name['metadata']._serialized_options = b'\210\265\030\000' _globals['_OWNERGROUP'].fields_by_name['metadata']._loaded_options = None _globals['_OWNERGROUP'].fields_by_name['metadata']._serialized_options = b'\210\265\030\000' + _globals['_DEVICECONFIG'].fields_by_name['startup']._loaded_options = None + _globals['_DEVICECONFIG'].fields_by_name['startup']._serialized_options = b'\210\265\030\000' + _globals['_DEVICECONFIG'].fields_by_name['running']._loaded_options = None + _globals['_DEVICECONFIG'].fields_by_name['running']._serialized_options = b'\210\265\030\000' + _globals['_DEVICECONFIG'].fields_by_name['candidate']._loaded_options = None + _globals['_DEVICECONFIG'].fields_by_name['candidate']._serialized_options = b'\210\265\030\000' + _globals['_DEVICECONFIG'].fields_by_name['metadata']._loaded_options = None + _globals['_DEVICECONFIG'].fields_by_name['metadata']._serialized_options = b'\210\265\030\000' _globals['_ENTITY']._serialized_start=160 - _globals['_ENTITY']._serialized_end=5875 - _globals['_INGESTREQUEST']._serialized_start=5878 - _globals['_INGESTREQUEST']._serialized_end=6287 - _globals['_INGESTRESPONSE']._serialized_start=6289 - _globals['_INGESTRESPONSE']._serialized_end=6329 - _globals['_ASN']._serialized_start=6332 - _globals['_ASN']._serialized_end=6909 - _globals['_ASN_CUSTOMFIELDSENTRY']._serialized_start=6760 - _globals['_ASN_CUSTOMFIELDSENTRY']._serialized_end=6851 - _globals['_ASNRANGE']._serialized_start=6912 - _globals['_ASNRANGE']._serialized_end=7510 - _globals['_ASNRANGE_CUSTOMFIELDSENTRY']._serialized_start=6760 - _globals['_ASNRANGE_CUSTOMFIELDSENTRY']._serialized_end=6851 - _globals['_AGGREGATE']._serialized_start=7513 - _globals['_AGGREGATE']._serialized_end=8136 - _globals['_AGGREGATE_CUSTOMFIELDSENTRY']._serialized_start=6760 - _globals['_AGGREGATE_CUSTOMFIELDSENTRY']._serialized_end=6851 - _globals['_CABLE']._serialized_start=8139 - _globals['_CABLE']._serialized_end=9729 - _globals['_CABLE_CUSTOMFIELDSENTRY']._serialized_start=6760 - _globals['_CABLE_CUSTOMFIELDSENTRY']._serialized_end=6851 - _globals['_CABLEPATH']._serialized_start=9732 - _globals['_CABLEPATH']._serialized_end=9949 - _globals['_CABLETERMINATION']._serialized_start=9952 - _globals['_CABLETERMINATION']._serialized_end=10878 - _globals['_CIRCUIT']._serialized_start=10881 - _globals['_CIRCUIT']._serialized_end=12120 - _globals['_CIRCUIT_CUSTOMFIELDSENTRY']._serialized_start=6760 - _globals['_CIRCUIT_CUSTOMFIELDSENTRY']._serialized_end=6851 - _globals['_CIRCUITGROUP']._serialized_start=12123 - _globals['_CIRCUITGROUP']._serialized_end=12656 - _globals['_CIRCUITGROUP_CUSTOMFIELDSENTRY']._serialized_start=6760 - _globals['_CIRCUITGROUP_CUSTOMFIELDSENTRY']._serialized_end=6851 - _globals['_CIRCUITGROUPASSIGNMENT']._serialized_start=12659 - _globals['_CIRCUITGROUPASSIGNMENT']._serialized_end=13068 - _globals['_CIRCUITTERMINATION']._serialized_start=13071 - _globals['_CIRCUITTERMINATION']._serialized_end=14166 - _globals['_CIRCUITTERMINATION_CUSTOMFIELDSENTRY']._serialized_start=6760 - _globals['_CIRCUITTERMINATION_CUSTOMFIELDSENTRY']._serialized_end=6851 - _globals['_CIRCUITTYPE']._serialized_start=14169 - _globals['_CIRCUITTYPE']._serialized_end=14679 - _globals['_CIRCUITTYPE_CUSTOMFIELDSENTRY']._serialized_start=6760 - _globals['_CIRCUITTYPE_CUSTOMFIELDSENTRY']._serialized_end=6851 - _globals['_CLUSTER']._serialized_start=14682 - _globals['_CLUSTER']._serialized_end=15627 - _globals['_CLUSTER_CUSTOMFIELDSENTRY']._serialized_start=6760 - _globals['_CLUSTER_CUSTOMFIELDSENTRY']._serialized_end=6851 - _globals['_CLUSTERGROUP']._serialized_start=15630 - _globals['_CLUSTERGROUP']._serialized_end=16105 - _globals['_CLUSTERGROUP_CUSTOMFIELDSENTRY']._serialized_start=6760 - _globals['_CLUSTERGROUP_CUSTOMFIELDSENTRY']._serialized_end=6851 - _globals['_CLUSTERTYPE']._serialized_start=16108 - _globals['_CLUSTERTYPE']._serialized_end=16581 - _globals['_CLUSTERTYPE_CUSTOMFIELDSENTRY']._serialized_start=6760 - _globals['_CLUSTERTYPE_CUSTOMFIELDSENTRY']._serialized_end=6851 - _globals['_CONSOLEPORT']._serialized_start=16584 - _globals['_CONSOLEPORT']._serialized_end=17446 - _globals['_CONSOLEPORT_CUSTOMFIELDSENTRY']._serialized_start=6760 - _globals['_CONSOLEPORT_CUSTOMFIELDSENTRY']._serialized_end=6851 - _globals['_CONSOLESERVERPORT']._serialized_start=17449 - _globals['_CONSOLESERVERPORT']._serialized_end=18323 - _globals['_CONSOLESERVERPORT_CUSTOMFIELDSENTRY']._serialized_start=6760 - _globals['_CONSOLESERVERPORT_CUSTOMFIELDSENTRY']._serialized_end=6851 - _globals['_CONTACT']._serialized_start=18326 - _globals['_CONTACT']._serialized_end=19072 - _globals['_CONTACT_CUSTOMFIELDSENTRY']._serialized_start=6760 - _globals['_CONTACT_CUSTOMFIELDSENTRY']._serialized_end=6851 - _globals['_CONTACTASSIGNMENT']._serialized_start=19075 - _globals['_CONTACTASSIGNMENT']._serialized_end=26428 - _globals['_CONTACTASSIGNMENT_CUSTOMFIELDSENTRY']._serialized_start=6760 - _globals['_CONTACTASSIGNMENT_CUSTOMFIELDSENTRY']._serialized_end=6851 - _globals['_CONTACTGROUP']._serialized_start=26431 - _globals['_CONTACTGROUP']._serialized_end=26970 - _globals['_CONTACTGROUP_CUSTOMFIELDSENTRY']._serialized_start=6760 - _globals['_CONTACTGROUP_CUSTOMFIELDSENTRY']._serialized_end=6851 - _globals['_CONTACTROLE']._serialized_start=26973 - _globals['_CONTACTROLE']._serialized_end=27446 - _globals['_CONTACTROLE_CUSTOMFIELDSENTRY']._serialized_start=6760 - _globals['_CONTACTROLE_CUSTOMFIELDSENTRY']._serialized_end=6851 - _globals['_CUSTOMFIELDOBJECTREFERENCE']._serialized_start=27449 - _globals['_CUSTOMFIELDOBJECTREFERENCE']._serialized_end=33114 - _globals['_CUSTOMFIELDVALUE']._serialized_start=33117 - _globals['_CUSTOMFIELDVALUE']._serialized_end=33655 - _globals['_DEVICE']._serialized_start=33658 - _globals['_DEVICE']._serialized_end=35548 - _globals['_DEVICE_CUSTOMFIELDSENTRY']._serialized_start=6760 - _globals['_DEVICE_CUSTOMFIELDSENTRY']._serialized_end=6851 - _globals['_DEVICEBAY']._serialized_start=35551 - _globals['_DEVICEBAY']._serialized_end=36120 - _globals['_DEVICEBAY_CUSTOMFIELDSENTRY']._serialized_start=6760 - _globals['_DEVICEBAY_CUSTOMFIELDSENTRY']._serialized_end=6851 - _globals['_DEVICEROLE']._serialized_start=36123 - _globals['_DEVICEROLE']._serialized_end=36735 - _globals['_DEVICEROLE_CUSTOMFIELDSENTRY']._serialized_start=6760 - _globals['_DEVICEROLE_CUSTOMFIELDSENTRY']._serialized_end=6851 - _globals['_DEVICETYPE']._serialized_start=36738 - _globals['_DEVICETYPE']._serialized_end=37999 - _globals['_DEVICETYPE_CUSTOMFIELDSENTRY']._serialized_start=6760 - _globals['_DEVICETYPE_CUSTOMFIELDSENTRY']._serialized_end=6851 - _globals['_FHRPGROUP']._serialized_start=38002 - _globals['_FHRPGROUP']._serialized_end=38693 - _globals['_FHRPGROUP_CUSTOMFIELDSENTRY']._serialized_start=6760 - _globals['_FHRPGROUP_CUSTOMFIELDSENTRY']._serialized_end=6851 - _globals['_FHRPGROUPASSIGNMENT']._serialized_start=38696 - _globals['_FHRPGROUPASSIGNMENT']._serialized_end=46288 - _globals['_FRONTPORT']._serialized_start=46291 - _globals['_FRONTPORT']._serialized_end=47566 - _globals['_FRONTPORT_CUSTOMFIELDSENTRY']._serialized_start=6760 - _globals['_FRONTPORT_CUSTOMFIELDSENTRY']._serialized_end=6851 - _globals['_GENERICOBJECT']._serialized_start=47569 - _globals['_GENERICOBJECT']._serialized_end=54452 - _globals['_IKEPOLICY']._serialized_start=54455 - _globals['_IKEPOLICY']._serialized_end=55113 - _globals['_IKEPOLICY_CUSTOMFIELDSENTRY']._serialized_start=6760 - _globals['_IKEPOLICY_CUSTOMFIELDSENTRY']._serialized_end=6851 - _globals['_IKEPROPOSAL']._serialized_start=55116 - _globals['_IKEPROPOSAL']._serialized_end=56139 - _globals['_IKEPROPOSAL_CUSTOMFIELDSENTRY']._serialized_start=6760 - _globals['_IKEPROPOSAL_CUSTOMFIELDSENTRY']._serialized_end=6851 - _globals['_IPADDRESS']._serialized_start=56142 - _globals['_IPADDRESS']._serialized_end=57284 - _globals['_IPADDRESS_CUSTOMFIELDSENTRY']._serialized_start=6760 - _globals['_IPADDRESS_CUSTOMFIELDSENTRY']._serialized_end=6851 - _globals['_IPRANGE']._serialized_start=57287 - _globals['_IPRANGE']._serialized_end=58136 - _globals['_IPRANGE_CUSTOMFIELDSENTRY']._serialized_start=6760 - _globals['_IPRANGE_CUSTOMFIELDSENTRY']._serialized_end=6851 - _globals['_IPSECPOLICY']._serialized_start=58139 - _globals['_IPSECPOLICY']._serialized_end=58750 - _globals['_IPSECPOLICY_CUSTOMFIELDSENTRY']._serialized_start=6760 - _globals['_IPSECPOLICY_CUSTOMFIELDSENTRY']._serialized_end=6851 - _globals['_IPSECPROFILE']._serialized_start=58753 - _globals['_IPSECPROFILE']._serialized_end=59354 - _globals['_IPSECPROFILE_CUSTOMFIELDSENTRY']._serialized_start=6760 - _globals['_IPSECPROFILE_CUSTOMFIELDSENTRY']._serialized_end=6851 - _globals['_IPSECPROPOSAL']._serialized_start=59357 - _globals['_IPSECPROPOSAL']._serialized_end=60306 - _globals['_IPSECPROPOSAL_CUSTOMFIELDSENTRY']._serialized_start=6760 - _globals['_IPSECPROPOSAL_CUSTOMFIELDSENTRY']._serialized_end=6851 - _globals['_INTERFACE']._serialized_start=60309 - _globals['_INTERFACE']._serialized_end=68576 - _globals['_INTERFACE_CUSTOMFIELDSENTRY']._serialized_start=6760 - _globals['_INTERFACE_CUSTOMFIELDSENTRY']._serialized_end=6851 - _globals['_INVENTORYITEM']._serialized_start=68579 - _globals['_INVENTORYITEM']._serialized_end=70124 - _globals['_INVENTORYITEM_CUSTOMFIELDSENTRY']._serialized_start=6760 - _globals['_INVENTORYITEM_CUSTOMFIELDSENTRY']._serialized_end=6851 - _globals['_INVENTORYITEMROLE']._serialized_start=70127 - _globals['_INVENTORYITEMROLE']._serialized_end=70649 - _globals['_INVENTORYITEMROLE_CUSTOMFIELDSENTRY']._serialized_start=6760 - _globals['_INVENTORYITEMROLE_CUSTOMFIELDSENTRY']._serialized_end=6851 - _globals['_L2VPN']._serialized_start=70652 - _globals['_L2VPN']._serialized_end=71585 - _globals['_L2VPN_CUSTOMFIELDSENTRY']._serialized_start=6760 - _globals['_L2VPN_CUSTOMFIELDSENTRY']._serialized_end=6851 - _globals['_L2VPNTERMINATION']._serialized_start=71588 - _globals['_L2VPNTERMINATION']._serialized_end=80408 - _globals['_L2VPNTERMINATION_CUSTOMFIELDSENTRY']._serialized_start=6760 - _globals['_L2VPNTERMINATION_CUSTOMFIELDSENTRY']._serialized_end=6851 - _globals['_LOCATION']._serialized_start=80411 - _globals['_LOCATION']._serialized_end=81177 - _globals['_LOCATION_CUSTOMFIELDSENTRY']._serialized_start=6760 - _globals['_LOCATION_CUSTOMFIELDSENTRY']._serialized_end=6851 - _globals['_MACADDRESS']._serialized_start=81180 - _globals['_MACADDRESS']._serialized_end=81836 - _globals['_MACADDRESS_CUSTOMFIELDSENTRY']._serialized_start=6760 - _globals['_MACADDRESS_CUSTOMFIELDSENTRY']._serialized_end=6851 - _globals['_MANUFACTURER']._serialized_start=81839 - _globals['_MANUFACTURER']._serialized_end=82314 - _globals['_MANUFACTURER_CUSTOMFIELDSENTRY']._serialized_start=6760 - _globals['_MANUFACTURER_CUSTOMFIELDSENTRY']._serialized_end=6851 - _globals['_MODULE']._serialized_start=82317 - _globals['_MODULE']._serialized_end=83083 - _globals['_MODULE_CUSTOMFIELDSENTRY']._serialized_start=6760 - _globals['_MODULE_CUSTOMFIELDSENTRY']._serialized_end=6851 - _globals['_MODULEBAY']._serialized_start=83086 - _globals['_MODULEBAY']._serialized_end=83759 - _globals['_MODULEBAY_CUSTOMFIELDSENTRY']._serialized_start=6760 - _globals['_MODULEBAY_CUSTOMFIELDSENTRY']._serialized_end=6851 - _globals['_MODULETYPE']._serialized_start=83762 - _globals['_MODULETYPE']._serialized_end=84702 - _globals['_MODULETYPE_CUSTOMFIELDSENTRY']._serialized_start=6760 - _globals['_MODULETYPE_CUSTOMFIELDSENTRY']._serialized_end=6851 - _globals['_PLATFORM']._serialized_start=84705 - _globals['_PLATFORM']._serialized_end=85314 - _globals['_PLATFORM_CUSTOMFIELDSENTRY']._serialized_start=6760 - _globals['_PLATFORM_CUSTOMFIELDSENTRY']._serialized_end=6851 - _globals['_POWERFEED']._serialized_start=85317 - _globals['_POWERFEED']._serialized_end=86415 - _globals['_POWERFEED_CUSTOMFIELDSENTRY']._serialized_start=6760 - _globals['_POWERFEED_CUSTOMFIELDSENTRY']._serialized_end=6851 - _globals['_POWEROUTLET']._serialized_start=86418 - _globals['_POWEROUTLET']._serialized_end=88688 - _globals['_POWEROUTLET_CUSTOMFIELDSENTRY']._serialized_start=6760 - _globals['_POWEROUTLET_CUSTOMFIELDSENTRY']._serialized_end=6851 - _globals['_POWERPANEL']._serialized_start=88691 - _globals['_POWERPANEL']._serialized_end=89244 - _globals['_POWERPANEL_CUSTOMFIELDSENTRY']._serialized_start=6760 - _globals['_POWERPANEL_CUSTOMFIELDSENTRY']._serialized_end=6851 - _globals['_POWERPORT']._serialized_start=89247 - _globals['_POWERPORT']._serialized_end=91445 - _globals['_POWERPORT_CUSTOMFIELDSENTRY']._serialized_start=6760 - _globals['_POWERPORT_CUSTOMFIELDSENTRY']._serialized_end=6851 - _globals['_PREFIX']._serialized_start=91448 - _globals['_PREFIX']._serialized_end=92528 - _globals['_PREFIX_CUSTOMFIELDSENTRY']._serialized_start=6760 - _globals['_PREFIX_CUSTOMFIELDSENTRY']._serialized_end=6851 - _globals['_PROVIDER']._serialized_start=92531 - _globals['_PROVIDER']._serialized_end=93088 - _globals['_PROVIDER_CUSTOMFIELDSENTRY']._serialized_start=6760 - _globals['_PROVIDER_CUSTOMFIELDSENTRY']._serialized_end=6851 - _globals['_PROVIDERACCOUNT']._serialized_start=93091 - _globals['_PROVIDERACCOUNT']._serialized_end=93640 - _globals['_PROVIDERACCOUNT_CUSTOMFIELDSENTRY']._serialized_start=6760 - _globals['_PROVIDERACCOUNT_CUSTOMFIELDSENTRY']._serialized_end=6851 - _globals['_PROVIDERNETWORK']._serialized_start=93643 - _globals['_PROVIDERNETWORK']._serialized_end=94203 - _globals['_PROVIDERNETWORK_CUSTOMFIELDSENTRY']._serialized_start=6760 - _globals['_PROVIDERNETWORK_CUSTOMFIELDSENTRY']._serialized_end=6851 - _globals['_RIR']._serialized_start=94206 - _globals['_RIR']._serialized_end=94714 - _globals['_RIR_CUSTOMFIELDSENTRY']._serialized_start=6760 - _globals['_RIR_CUSTOMFIELDSENTRY']._serialized_end=6851 - _globals['_RACK']._serialized_start=94717 - _globals['_RACK']._serialized_end=96602 - _globals['_RACK_CUSTOMFIELDSENTRY']._serialized_start=6760 - _globals['_RACK_CUSTOMFIELDSENTRY']._serialized_end=6851 - _globals['_RACKRESERVATION']._serialized_start=96605 - _globals['_RACKRESERVATION']._serialized_end=97212 - _globals['_RACKRESERVATION_CUSTOMFIELDSENTRY']._serialized_start=6760 - _globals['_RACKRESERVATION_CUSTOMFIELDSENTRY']._serialized_end=6851 - _globals['_RACKROLE']._serialized_start=97215 - _globals['_RACKROLE']._serialized_end=97719 - _globals['_RACKROLE_CUSTOMFIELDSENTRY']._serialized_start=6760 - _globals['_RACKROLE_CUSTOMFIELDSENTRY']._serialized_end=6851 - _globals['_RACKTYPE']._serialized_start=97722 - _globals['_RACKTYPE']._serialized_end=99096 - _globals['_RACKTYPE_CUSTOMFIELDSENTRY']._serialized_start=6760 - _globals['_RACKTYPE_CUSTOMFIELDSENTRY']._serialized_end=6851 - _globals['_REARPORT']._serialized_start=99099 - _globals['_REARPORT']._serialized_end=100241 - _globals['_REARPORT_CUSTOMFIELDSENTRY']._serialized_start=6760 - _globals['_REARPORT_CUSTOMFIELDSENTRY']._serialized_end=6851 - _globals['_REGION']._serialized_start=100244 - _globals['_REGION']._serialized_end=100765 - _globals['_REGION_CUSTOMFIELDSENTRY']._serialized_start=6760 - _globals['_REGION_CUSTOMFIELDSENTRY']._serialized_end=6851 - _globals['_ROLE']._serialized_start=100768 - _globals['_ROLE']._serialized_end=101267 - _globals['_ROLE_CUSTOMFIELDSENTRY']._serialized_start=6760 - _globals['_ROLE_CUSTOMFIELDSENTRY']._serialized_end=6851 - _globals['_ROUTETARGET']._serialized_start=101270 - _globals['_ROUTETARGET']._serialized_end=101781 - _globals['_ROUTETARGET_CUSTOMFIELDSENTRY']._serialized_start=6760 - _globals['_ROUTETARGET_CUSTOMFIELDSENTRY']._serialized_end=6851 - _globals['_SERVICE']._serialized_start=101784 - _globals['_SERVICE']._serialized_end=102795 - _globals['_SERVICE_CUSTOMFIELDSENTRY']._serialized_start=6760 - _globals['_SERVICE_CUSTOMFIELDSENTRY']._serialized_end=6851 - _globals['_SITE']._serialized_start=102798 - _globals['_SITE']._serialized_end=103892 - _globals['_SITE_CUSTOMFIELDSENTRY']._serialized_start=6760 - _globals['_SITE_CUSTOMFIELDSENTRY']._serialized_end=6851 - _globals['_SITEGROUP']._serialized_start=103895 - _globals['_SITEGROUP']._serialized_end=104425 - _globals['_SITEGROUP_CUSTOMFIELDSENTRY']._serialized_start=6760 - _globals['_SITEGROUP_CUSTOMFIELDSENTRY']._serialized_end=6851 - _globals['_TAG']._serialized_start=104428 - _globals['_TAG']._serialized_end=106365 - _globals['_TENANT']._serialized_start=106368 - _globals['_TENANT']._serialized_end=106891 - _globals['_TENANT_CUSTOMFIELDSENTRY']._serialized_start=6760 - _globals['_TENANT_CUSTOMFIELDSENTRY']._serialized_end=6851 - _globals['_TENANTGROUP']._serialized_start=106894 - _globals['_TENANTGROUP']._serialized_end=107430 - _globals['_TENANTGROUP_CUSTOMFIELDSENTRY']._serialized_start=6760 - _globals['_TENANTGROUP_CUSTOMFIELDSENTRY']._serialized_end=6851 - _globals['_TUNNEL']._serialized_start=107433 - _globals['_TUNNEL']._serialized_end=108304 - _globals['_TUNNEL_CUSTOMFIELDSENTRY']._serialized_start=6760 - _globals['_TUNNEL_CUSTOMFIELDSENTRY']._serialized_end=6851 - _globals['_TUNNELGROUP']._serialized_start=108307 - _globals['_TUNNELGROUP']._serialized_end=108780 - _globals['_TUNNELGROUP_CUSTOMFIELDSENTRY']._serialized_start=6760 - _globals['_TUNNELGROUP_CUSTOMFIELDSENTRY']._serialized_end=6851 - _globals['_TUNNELTERMINATION']._serialized_start=108783 - _globals['_TUNNELTERMINATION']._serialized_end=117055 - _globals['_TUNNELTERMINATION_CUSTOMFIELDSENTRY']._serialized_start=6760 - _globals['_TUNNELTERMINATION_CUSTOMFIELDSENTRY']._serialized_end=6851 - _globals['_VLAN']._serialized_start=117058 - _globals['_VLAN']._serialized_end=117944 - _globals['_VLAN_CUSTOMFIELDSENTRY']._serialized_start=6760 - _globals['_VLAN_CUSTOMFIELDSENTRY']._serialized_end=6851 - _globals['_VLANGROUP']._serialized_start=117947 - _globals['_VLANGROUP']._serialized_end=118925 - _globals['_VLANGROUP_CUSTOMFIELDSENTRY']._serialized_start=6760 - _globals['_VLANGROUP_CUSTOMFIELDSENTRY']._serialized_end=6851 - _globals['_VLANTRANSLATIONPOLICY']._serialized_start=118928 - _globals['_VLANTRANSLATIONPOLICY']._serialized_end=119185 - _globals['_VLANTRANSLATIONRULE']._serialized_start=119188 - _globals['_VLANTRANSLATIONRULE']._serialized_end=119440 - _globals['_VMINTERFACE']._serialized_start=119443 - _globals['_VMINTERFACE']._serialized_end=120655 - _globals['_VMINTERFACE_CUSTOMFIELDSENTRY']._serialized_start=6760 - _globals['_VMINTERFACE_CUSTOMFIELDSENTRY']._serialized_end=6851 - _globals['_VRF']._serialized_start=120658 - _globals['_VRF']._serialized_end=121368 - _globals['_VRF_CUSTOMFIELDSENTRY']._serialized_start=6760 - _globals['_VRF_CUSTOMFIELDSENTRY']._serialized_end=6851 - _globals['_VIRTUALCHASSIS']._serialized_start=121371 - _globals['_VIRTUALCHASSIS']._serialized_end=121928 - _globals['_VIRTUALCHASSIS_CUSTOMFIELDSENTRY']._serialized_start=6760 - _globals['_VIRTUALCHASSIS_CUSTOMFIELDSENTRY']._serialized_end=6851 - _globals['_VIRTUALCIRCUIT']._serialized_start=121931 - _globals['_VIRTUALCIRCUIT']._serialized_end=122781 - _globals['_VIRTUALCIRCUIT_CUSTOMFIELDSENTRY']._serialized_start=6760 - _globals['_VIRTUALCIRCUIT_CUSTOMFIELDSENTRY']._serialized_end=6851 - _globals['_VIRTUALCIRCUITTERMINATION']._serialized_start=122784 - _globals['_VIRTUALCIRCUITTERMINATION']._serialized_end=123322 - _globals['_VIRTUALCIRCUITTERMINATION_CUSTOMFIELDSENTRY']._serialized_start=6760 - _globals['_VIRTUALCIRCUITTERMINATION_CUSTOMFIELDSENTRY']._serialized_end=6851 - _globals['_VIRTUALCIRCUITTYPE']._serialized_start=123325 - _globals['_VIRTUALCIRCUITTYPE']._serialized_end=123849 - _globals['_VIRTUALCIRCUITTYPE_CUSTOMFIELDSENTRY']._serialized_start=6760 - _globals['_VIRTUALCIRCUITTYPE_CUSTOMFIELDSENTRY']._serialized_end=6851 - _globals['_VIRTUALDEVICECONTEXT']._serialized_start=123852 - _globals['_VIRTUALDEVICECONTEXT']._serialized_end=124682 - _globals['_VIRTUALDEVICECONTEXT_CUSTOMFIELDSENTRY']._serialized_start=6760 - _globals['_VIRTUALDEVICECONTEXT_CUSTOMFIELDSENTRY']._serialized_end=6851 - _globals['_VIRTUALDISK']._serialized_start=124685 - _globals['_VIRTUALDISK']._serialized_end=125179 - _globals['_VIRTUALDISK_CUSTOMFIELDSENTRY']._serialized_start=6760 - _globals['_VIRTUALDISK_CUSTOMFIELDSENTRY']._serialized_end=6851 - _globals['_VIRTUALMACHINE']._serialized_start=125182 - _globals['_VIRTUALMACHINE']._serialized_end=126492 - _globals['_VIRTUALMACHINE_CUSTOMFIELDSENTRY']._serialized_start=6760 - _globals['_VIRTUALMACHINE_CUSTOMFIELDSENTRY']._serialized_end=6851 - _globals['_WIRELESSLAN']._serialized_start=126495 - _globals['_WIRELESSLAN']._serialized_end=127666 - _globals['_WIRELESSLAN_CUSTOMFIELDSENTRY']._serialized_start=6760 - _globals['_WIRELESSLAN_CUSTOMFIELDSENTRY']._serialized_end=6851 - _globals['_WIRELESSLANGROUP']._serialized_start=127669 - _globals['_WIRELESSLANGROUP']._serialized_end=128220 - _globals['_WIRELESSLANGROUP_CUSTOMFIELDSENTRY']._serialized_start=6760 - _globals['_WIRELESSLANGROUP_CUSTOMFIELDSENTRY']._serialized_end=6851 - _globals['_WIRELESSLINK']._serialized_start=128223 - _globals['_WIRELESSLINK']._serialized_end=129289 - _globals['_WIRELESSLINK_CUSTOMFIELDSENTRY']._serialized_start=6760 - _globals['_WIRELESSLINK_CUSTOMFIELDSENTRY']._serialized_end=6851 - _globals['_CUSTOMFIELD']._serialized_start=129292 - _globals['_CUSTOMFIELD']._serialized_end=134299 - _globals['_CUSTOMFIELDCHOICESET']._serialized_start=134302 - _globals['_CUSTOMFIELDCHOICESET']._serialized_end=134721 - _globals['_JOURNALENTRY']._serialized_start=134724 - _globals['_JOURNALENTRY']._serialized_end=143598 - _globals['_JOURNALENTRY_CUSTOMFIELDSENTRY']._serialized_start=6760 - _globals['_JOURNALENTRY_CUSTOMFIELDSENTRY']._serialized_end=6851 - _globals['_MODULETYPEPROFILE']._serialized_start=143601 - _globals['_MODULETYPEPROFILE']._serialized_end=144106 - _globals['_MODULETYPEPROFILE_CUSTOMFIELDSENTRY']._serialized_start=6760 - _globals['_MODULETYPEPROFILE_CUSTOMFIELDSENTRY']._serialized_end=6851 - _globals['_CUSTOMLINK']._serialized_start=144109 - _globals['_CUSTOMLINK']._serialized_end=146341 - _globals['_OWNER']._serialized_start=146344 - _globals['_OWNER']._serialized_end=146529 - _globals['_OWNERGROUP']._serialized_start=146532 - _globals['_OWNERGROUP']._serialized_end=146678 - _globals['_INGESTERSERVICE']._serialized_start=146680 - _globals['_INGESTERSERVICE']._serialized_end=146758 + _globals['_ENTITY']._serialized_end=5944 + _globals['_INGESTREQUEST']._serialized_start=5947 + _globals['_INGESTREQUEST']._serialized_end=6356 + _globals['_INGESTRESPONSE']._serialized_start=6358 + _globals['_INGESTRESPONSE']._serialized_end=6398 + _globals['_ASN']._serialized_start=6401 + _globals['_ASN']._serialized_end=6978 + _globals['_ASN_CUSTOMFIELDSENTRY']._serialized_start=6829 + _globals['_ASN_CUSTOMFIELDSENTRY']._serialized_end=6920 + _globals['_ASNRANGE']._serialized_start=6981 + _globals['_ASNRANGE']._serialized_end=7579 + _globals['_ASNRANGE_CUSTOMFIELDSENTRY']._serialized_start=6829 + _globals['_ASNRANGE_CUSTOMFIELDSENTRY']._serialized_end=6920 + _globals['_AGGREGATE']._serialized_start=7582 + _globals['_AGGREGATE']._serialized_end=8205 + _globals['_AGGREGATE_CUSTOMFIELDSENTRY']._serialized_start=6829 + _globals['_AGGREGATE_CUSTOMFIELDSENTRY']._serialized_end=6920 + _globals['_CABLE']._serialized_start=8208 + _globals['_CABLE']._serialized_end=9798 + _globals['_CABLE_CUSTOMFIELDSENTRY']._serialized_start=6829 + _globals['_CABLE_CUSTOMFIELDSENTRY']._serialized_end=6920 + _globals['_CABLEPATH']._serialized_start=9801 + _globals['_CABLEPATH']._serialized_end=10018 + _globals['_CABLETERMINATION']._serialized_start=10021 + _globals['_CABLETERMINATION']._serialized_end=10947 + _globals['_CIRCUIT']._serialized_start=10950 + _globals['_CIRCUIT']._serialized_end=12189 + _globals['_CIRCUIT_CUSTOMFIELDSENTRY']._serialized_start=6829 + _globals['_CIRCUIT_CUSTOMFIELDSENTRY']._serialized_end=6920 + _globals['_CIRCUITGROUP']._serialized_start=12192 + _globals['_CIRCUITGROUP']._serialized_end=12725 + _globals['_CIRCUITGROUP_CUSTOMFIELDSENTRY']._serialized_start=6829 + _globals['_CIRCUITGROUP_CUSTOMFIELDSENTRY']._serialized_end=6920 + _globals['_CIRCUITGROUPASSIGNMENT']._serialized_start=12728 + _globals['_CIRCUITGROUPASSIGNMENT']._serialized_end=13137 + _globals['_CIRCUITTERMINATION']._serialized_start=13140 + _globals['_CIRCUITTERMINATION']._serialized_end=14235 + _globals['_CIRCUITTERMINATION_CUSTOMFIELDSENTRY']._serialized_start=6829 + _globals['_CIRCUITTERMINATION_CUSTOMFIELDSENTRY']._serialized_end=6920 + _globals['_CIRCUITTYPE']._serialized_start=14238 + _globals['_CIRCUITTYPE']._serialized_end=14748 + _globals['_CIRCUITTYPE_CUSTOMFIELDSENTRY']._serialized_start=6829 + _globals['_CIRCUITTYPE_CUSTOMFIELDSENTRY']._serialized_end=6920 + _globals['_CLUSTER']._serialized_start=14751 + _globals['_CLUSTER']._serialized_end=15696 + _globals['_CLUSTER_CUSTOMFIELDSENTRY']._serialized_start=6829 + _globals['_CLUSTER_CUSTOMFIELDSENTRY']._serialized_end=6920 + _globals['_CLUSTERGROUP']._serialized_start=15699 + _globals['_CLUSTERGROUP']._serialized_end=16174 + _globals['_CLUSTERGROUP_CUSTOMFIELDSENTRY']._serialized_start=6829 + _globals['_CLUSTERGROUP_CUSTOMFIELDSENTRY']._serialized_end=6920 + _globals['_CLUSTERTYPE']._serialized_start=16177 + _globals['_CLUSTERTYPE']._serialized_end=16650 + _globals['_CLUSTERTYPE_CUSTOMFIELDSENTRY']._serialized_start=6829 + _globals['_CLUSTERTYPE_CUSTOMFIELDSENTRY']._serialized_end=6920 + _globals['_CONSOLEPORT']._serialized_start=16653 + _globals['_CONSOLEPORT']._serialized_end=17515 + _globals['_CONSOLEPORT_CUSTOMFIELDSENTRY']._serialized_start=6829 + _globals['_CONSOLEPORT_CUSTOMFIELDSENTRY']._serialized_end=6920 + _globals['_CONSOLESERVERPORT']._serialized_start=17518 + _globals['_CONSOLESERVERPORT']._serialized_end=18392 + _globals['_CONSOLESERVERPORT_CUSTOMFIELDSENTRY']._serialized_start=6829 + _globals['_CONSOLESERVERPORT_CUSTOMFIELDSENTRY']._serialized_end=6920 + _globals['_CONTACT']._serialized_start=18395 + _globals['_CONTACT']._serialized_end=19141 + _globals['_CONTACT_CUSTOMFIELDSENTRY']._serialized_start=6829 + _globals['_CONTACT_CUSTOMFIELDSENTRY']._serialized_end=6920 + _globals['_CONTACTASSIGNMENT']._serialized_start=19144 + _globals['_CONTACTASSIGNMENT']._serialized_end=26497 + _globals['_CONTACTASSIGNMENT_CUSTOMFIELDSENTRY']._serialized_start=6829 + _globals['_CONTACTASSIGNMENT_CUSTOMFIELDSENTRY']._serialized_end=6920 + _globals['_CONTACTGROUP']._serialized_start=26500 + _globals['_CONTACTGROUP']._serialized_end=27039 + _globals['_CONTACTGROUP_CUSTOMFIELDSENTRY']._serialized_start=6829 + _globals['_CONTACTGROUP_CUSTOMFIELDSENTRY']._serialized_end=6920 + _globals['_CONTACTROLE']._serialized_start=27042 + _globals['_CONTACTROLE']._serialized_end=27515 + _globals['_CONTACTROLE_CUSTOMFIELDSENTRY']._serialized_start=6829 + _globals['_CONTACTROLE_CUSTOMFIELDSENTRY']._serialized_end=6920 + _globals['_CUSTOMFIELDOBJECTREFERENCE']._serialized_start=27518 + _globals['_CUSTOMFIELDOBJECTREFERENCE']._serialized_end=33183 + _globals['_CUSTOMFIELDVALUE']._serialized_start=33186 + _globals['_CUSTOMFIELDVALUE']._serialized_end=33724 + _globals['_DEVICE']._serialized_start=33727 + _globals['_DEVICE']._serialized_end=35687 + _globals['_DEVICE_CUSTOMFIELDSENTRY']._serialized_start=6829 + _globals['_DEVICE_CUSTOMFIELDSENTRY']._serialized_end=6920 + _globals['_DEVICEBAY']._serialized_start=35690 + _globals['_DEVICEBAY']._serialized_end=36259 + _globals['_DEVICEBAY_CUSTOMFIELDSENTRY']._serialized_start=6829 + _globals['_DEVICEBAY_CUSTOMFIELDSENTRY']._serialized_end=6920 + _globals['_DEVICEROLE']._serialized_start=36262 + _globals['_DEVICEROLE']._serialized_end=36874 + _globals['_DEVICEROLE_CUSTOMFIELDSENTRY']._serialized_start=6829 + _globals['_DEVICEROLE_CUSTOMFIELDSENTRY']._serialized_end=6920 + _globals['_DEVICETYPE']._serialized_start=36877 + _globals['_DEVICETYPE']._serialized_end=38138 + _globals['_DEVICETYPE_CUSTOMFIELDSENTRY']._serialized_start=6829 + _globals['_DEVICETYPE_CUSTOMFIELDSENTRY']._serialized_end=6920 + _globals['_FHRPGROUP']._serialized_start=38141 + _globals['_FHRPGROUP']._serialized_end=38832 + _globals['_FHRPGROUP_CUSTOMFIELDSENTRY']._serialized_start=6829 + _globals['_FHRPGROUP_CUSTOMFIELDSENTRY']._serialized_end=6920 + _globals['_FHRPGROUPASSIGNMENT']._serialized_start=38835 + _globals['_FHRPGROUPASSIGNMENT']._serialized_end=46427 + _globals['_FRONTPORT']._serialized_start=46430 + _globals['_FRONTPORT']._serialized_end=47705 + _globals['_FRONTPORT_CUSTOMFIELDSENTRY']._serialized_start=6829 + _globals['_FRONTPORT_CUSTOMFIELDSENTRY']._serialized_end=6920 + _globals['_GENERICOBJECT']._serialized_start=47708 + _globals['_GENERICOBJECT']._serialized_end=54591 + _globals['_IKEPOLICY']._serialized_start=54594 + _globals['_IKEPOLICY']._serialized_end=55252 + _globals['_IKEPOLICY_CUSTOMFIELDSENTRY']._serialized_start=6829 + _globals['_IKEPOLICY_CUSTOMFIELDSENTRY']._serialized_end=6920 + _globals['_IKEPROPOSAL']._serialized_start=55255 + _globals['_IKEPROPOSAL']._serialized_end=56278 + _globals['_IKEPROPOSAL_CUSTOMFIELDSENTRY']._serialized_start=6829 + _globals['_IKEPROPOSAL_CUSTOMFIELDSENTRY']._serialized_end=6920 + _globals['_IPADDRESS']._serialized_start=56281 + _globals['_IPADDRESS']._serialized_end=57423 + _globals['_IPADDRESS_CUSTOMFIELDSENTRY']._serialized_start=6829 + _globals['_IPADDRESS_CUSTOMFIELDSENTRY']._serialized_end=6920 + _globals['_IPRANGE']._serialized_start=57426 + _globals['_IPRANGE']._serialized_end=58275 + _globals['_IPRANGE_CUSTOMFIELDSENTRY']._serialized_start=6829 + _globals['_IPRANGE_CUSTOMFIELDSENTRY']._serialized_end=6920 + _globals['_IPSECPOLICY']._serialized_start=58278 + _globals['_IPSECPOLICY']._serialized_end=58889 + _globals['_IPSECPOLICY_CUSTOMFIELDSENTRY']._serialized_start=6829 + _globals['_IPSECPOLICY_CUSTOMFIELDSENTRY']._serialized_end=6920 + _globals['_IPSECPROFILE']._serialized_start=58892 + _globals['_IPSECPROFILE']._serialized_end=59493 + _globals['_IPSECPROFILE_CUSTOMFIELDSENTRY']._serialized_start=6829 + _globals['_IPSECPROFILE_CUSTOMFIELDSENTRY']._serialized_end=6920 + _globals['_IPSECPROPOSAL']._serialized_start=59496 + _globals['_IPSECPROPOSAL']._serialized_end=60445 + _globals['_IPSECPROPOSAL_CUSTOMFIELDSENTRY']._serialized_start=6829 + _globals['_IPSECPROPOSAL_CUSTOMFIELDSENTRY']._serialized_end=6920 + _globals['_INTERFACE']._serialized_start=60448 + _globals['_INTERFACE']._serialized_end=68715 + _globals['_INTERFACE_CUSTOMFIELDSENTRY']._serialized_start=6829 + _globals['_INTERFACE_CUSTOMFIELDSENTRY']._serialized_end=6920 + _globals['_INVENTORYITEM']._serialized_start=68718 + _globals['_INVENTORYITEM']._serialized_end=70263 + _globals['_INVENTORYITEM_CUSTOMFIELDSENTRY']._serialized_start=6829 + _globals['_INVENTORYITEM_CUSTOMFIELDSENTRY']._serialized_end=6920 + _globals['_INVENTORYITEMROLE']._serialized_start=70266 + _globals['_INVENTORYITEMROLE']._serialized_end=70788 + _globals['_INVENTORYITEMROLE_CUSTOMFIELDSENTRY']._serialized_start=6829 + _globals['_INVENTORYITEMROLE_CUSTOMFIELDSENTRY']._serialized_end=6920 + _globals['_L2VPN']._serialized_start=70791 + _globals['_L2VPN']._serialized_end=71724 + _globals['_L2VPN_CUSTOMFIELDSENTRY']._serialized_start=6829 + _globals['_L2VPN_CUSTOMFIELDSENTRY']._serialized_end=6920 + _globals['_L2VPNTERMINATION']._serialized_start=71727 + _globals['_L2VPNTERMINATION']._serialized_end=80547 + _globals['_L2VPNTERMINATION_CUSTOMFIELDSENTRY']._serialized_start=6829 + _globals['_L2VPNTERMINATION_CUSTOMFIELDSENTRY']._serialized_end=6920 + _globals['_LOCATION']._serialized_start=80550 + _globals['_LOCATION']._serialized_end=81316 + _globals['_LOCATION_CUSTOMFIELDSENTRY']._serialized_start=6829 + _globals['_LOCATION_CUSTOMFIELDSENTRY']._serialized_end=6920 + _globals['_MACADDRESS']._serialized_start=81319 + _globals['_MACADDRESS']._serialized_end=81975 + _globals['_MACADDRESS_CUSTOMFIELDSENTRY']._serialized_start=6829 + _globals['_MACADDRESS_CUSTOMFIELDSENTRY']._serialized_end=6920 + _globals['_MANUFACTURER']._serialized_start=81978 + _globals['_MANUFACTURER']._serialized_end=82453 + _globals['_MANUFACTURER_CUSTOMFIELDSENTRY']._serialized_start=6829 + _globals['_MANUFACTURER_CUSTOMFIELDSENTRY']._serialized_end=6920 + _globals['_MODULE']._serialized_start=82456 + _globals['_MODULE']._serialized_end=83222 + _globals['_MODULE_CUSTOMFIELDSENTRY']._serialized_start=6829 + _globals['_MODULE_CUSTOMFIELDSENTRY']._serialized_end=6920 + _globals['_MODULEBAY']._serialized_start=83225 + _globals['_MODULEBAY']._serialized_end=83898 + _globals['_MODULEBAY_CUSTOMFIELDSENTRY']._serialized_start=6829 + _globals['_MODULEBAY_CUSTOMFIELDSENTRY']._serialized_end=6920 + _globals['_MODULETYPE']._serialized_start=83901 + _globals['_MODULETYPE']._serialized_end=84841 + _globals['_MODULETYPE_CUSTOMFIELDSENTRY']._serialized_start=6829 + _globals['_MODULETYPE_CUSTOMFIELDSENTRY']._serialized_end=6920 + _globals['_PLATFORM']._serialized_start=84844 + _globals['_PLATFORM']._serialized_end=85453 + _globals['_PLATFORM_CUSTOMFIELDSENTRY']._serialized_start=6829 + _globals['_PLATFORM_CUSTOMFIELDSENTRY']._serialized_end=6920 + _globals['_POWERFEED']._serialized_start=85456 + _globals['_POWERFEED']._serialized_end=86554 + _globals['_POWERFEED_CUSTOMFIELDSENTRY']._serialized_start=6829 + _globals['_POWERFEED_CUSTOMFIELDSENTRY']._serialized_end=6920 + _globals['_POWEROUTLET']._serialized_start=86557 + _globals['_POWEROUTLET']._serialized_end=88827 + _globals['_POWEROUTLET_CUSTOMFIELDSENTRY']._serialized_start=6829 + _globals['_POWEROUTLET_CUSTOMFIELDSENTRY']._serialized_end=6920 + _globals['_POWERPANEL']._serialized_start=88830 + _globals['_POWERPANEL']._serialized_end=89383 + _globals['_POWERPANEL_CUSTOMFIELDSENTRY']._serialized_start=6829 + _globals['_POWERPANEL_CUSTOMFIELDSENTRY']._serialized_end=6920 + _globals['_POWERPORT']._serialized_start=89386 + _globals['_POWERPORT']._serialized_end=91584 + _globals['_POWERPORT_CUSTOMFIELDSENTRY']._serialized_start=6829 + _globals['_POWERPORT_CUSTOMFIELDSENTRY']._serialized_end=6920 + _globals['_PREFIX']._serialized_start=91587 + _globals['_PREFIX']._serialized_end=92667 + _globals['_PREFIX_CUSTOMFIELDSENTRY']._serialized_start=6829 + _globals['_PREFIX_CUSTOMFIELDSENTRY']._serialized_end=6920 + _globals['_PROVIDER']._serialized_start=92670 + _globals['_PROVIDER']._serialized_end=93227 + _globals['_PROVIDER_CUSTOMFIELDSENTRY']._serialized_start=6829 + _globals['_PROVIDER_CUSTOMFIELDSENTRY']._serialized_end=6920 + _globals['_PROVIDERACCOUNT']._serialized_start=93230 + _globals['_PROVIDERACCOUNT']._serialized_end=93779 + _globals['_PROVIDERACCOUNT_CUSTOMFIELDSENTRY']._serialized_start=6829 + _globals['_PROVIDERACCOUNT_CUSTOMFIELDSENTRY']._serialized_end=6920 + _globals['_PROVIDERNETWORK']._serialized_start=93782 + _globals['_PROVIDERNETWORK']._serialized_end=94342 + _globals['_PROVIDERNETWORK_CUSTOMFIELDSENTRY']._serialized_start=6829 + _globals['_PROVIDERNETWORK_CUSTOMFIELDSENTRY']._serialized_end=6920 + _globals['_RIR']._serialized_start=94345 + _globals['_RIR']._serialized_end=94853 + _globals['_RIR_CUSTOMFIELDSENTRY']._serialized_start=6829 + _globals['_RIR_CUSTOMFIELDSENTRY']._serialized_end=6920 + _globals['_RACK']._serialized_start=94856 + _globals['_RACK']._serialized_end=96741 + _globals['_RACK_CUSTOMFIELDSENTRY']._serialized_start=6829 + _globals['_RACK_CUSTOMFIELDSENTRY']._serialized_end=6920 + _globals['_RACKRESERVATION']._serialized_start=96744 + _globals['_RACKRESERVATION']._serialized_end=97351 + _globals['_RACKRESERVATION_CUSTOMFIELDSENTRY']._serialized_start=6829 + _globals['_RACKRESERVATION_CUSTOMFIELDSENTRY']._serialized_end=6920 + _globals['_RACKROLE']._serialized_start=97354 + _globals['_RACKROLE']._serialized_end=97858 + _globals['_RACKROLE_CUSTOMFIELDSENTRY']._serialized_start=6829 + _globals['_RACKROLE_CUSTOMFIELDSENTRY']._serialized_end=6920 + _globals['_RACKTYPE']._serialized_start=97861 + _globals['_RACKTYPE']._serialized_end=99235 + _globals['_RACKTYPE_CUSTOMFIELDSENTRY']._serialized_start=6829 + _globals['_RACKTYPE_CUSTOMFIELDSENTRY']._serialized_end=6920 + _globals['_REARPORT']._serialized_start=99238 + _globals['_REARPORT']._serialized_end=100380 + _globals['_REARPORT_CUSTOMFIELDSENTRY']._serialized_start=6829 + _globals['_REARPORT_CUSTOMFIELDSENTRY']._serialized_end=6920 + _globals['_REGION']._serialized_start=100383 + _globals['_REGION']._serialized_end=100904 + _globals['_REGION_CUSTOMFIELDSENTRY']._serialized_start=6829 + _globals['_REGION_CUSTOMFIELDSENTRY']._serialized_end=6920 + _globals['_ROLE']._serialized_start=100907 + _globals['_ROLE']._serialized_end=101406 + _globals['_ROLE_CUSTOMFIELDSENTRY']._serialized_start=6829 + _globals['_ROLE_CUSTOMFIELDSENTRY']._serialized_end=6920 + _globals['_ROUTETARGET']._serialized_start=101409 + _globals['_ROUTETARGET']._serialized_end=101920 + _globals['_ROUTETARGET_CUSTOMFIELDSENTRY']._serialized_start=6829 + _globals['_ROUTETARGET_CUSTOMFIELDSENTRY']._serialized_end=6920 + _globals['_SERVICE']._serialized_start=101923 + _globals['_SERVICE']._serialized_end=102934 + _globals['_SERVICE_CUSTOMFIELDSENTRY']._serialized_start=6829 + _globals['_SERVICE_CUSTOMFIELDSENTRY']._serialized_end=6920 + _globals['_SITE']._serialized_start=102937 + _globals['_SITE']._serialized_end=104031 + _globals['_SITE_CUSTOMFIELDSENTRY']._serialized_start=6829 + _globals['_SITE_CUSTOMFIELDSENTRY']._serialized_end=6920 + _globals['_SITEGROUP']._serialized_start=104034 + _globals['_SITEGROUP']._serialized_end=104564 + _globals['_SITEGROUP_CUSTOMFIELDSENTRY']._serialized_start=6829 + _globals['_SITEGROUP_CUSTOMFIELDSENTRY']._serialized_end=6920 + _globals['_TAG']._serialized_start=104567 + _globals['_TAG']._serialized_end=106504 + _globals['_TENANT']._serialized_start=106507 + _globals['_TENANT']._serialized_end=107030 + _globals['_TENANT_CUSTOMFIELDSENTRY']._serialized_start=6829 + _globals['_TENANT_CUSTOMFIELDSENTRY']._serialized_end=6920 + _globals['_TENANTGROUP']._serialized_start=107033 + _globals['_TENANTGROUP']._serialized_end=107569 + _globals['_TENANTGROUP_CUSTOMFIELDSENTRY']._serialized_start=6829 + _globals['_TENANTGROUP_CUSTOMFIELDSENTRY']._serialized_end=6920 + _globals['_TUNNEL']._serialized_start=107572 + _globals['_TUNNEL']._serialized_end=108443 + _globals['_TUNNEL_CUSTOMFIELDSENTRY']._serialized_start=6829 + _globals['_TUNNEL_CUSTOMFIELDSENTRY']._serialized_end=6920 + _globals['_TUNNELGROUP']._serialized_start=108446 + _globals['_TUNNELGROUP']._serialized_end=108919 + _globals['_TUNNELGROUP_CUSTOMFIELDSENTRY']._serialized_start=6829 + _globals['_TUNNELGROUP_CUSTOMFIELDSENTRY']._serialized_end=6920 + _globals['_TUNNELTERMINATION']._serialized_start=108922 + _globals['_TUNNELTERMINATION']._serialized_end=117194 + _globals['_TUNNELTERMINATION_CUSTOMFIELDSENTRY']._serialized_start=6829 + _globals['_TUNNELTERMINATION_CUSTOMFIELDSENTRY']._serialized_end=6920 + _globals['_VLAN']._serialized_start=117197 + _globals['_VLAN']._serialized_end=118083 + _globals['_VLAN_CUSTOMFIELDSENTRY']._serialized_start=6829 + _globals['_VLAN_CUSTOMFIELDSENTRY']._serialized_end=6920 + _globals['_VLANGROUP']._serialized_start=118086 + _globals['_VLANGROUP']._serialized_end=119064 + _globals['_VLANGROUP_CUSTOMFIELDSENTRY']._serialized_start=6829 + _globals['_VLANGROUP_CUSTOMFIELDSENTRY']._serialized_end=6920 + _globals['_VLANTRANSLATIONPOLICY']._serialized_start=119067 + _globals['_VLANTRANSLATIONPOLICY']._serialized_end=119324 + _globals['_VLANTRANSLATIONRULE']._serialized_start=119327 + _globals['_VLANTRANSLATIONRULE']._serialized_end=119579 + _globals['_VMINTERFACE']._serialized_start=119582 + _globals['_VMINTERFACE']._serialized_end=120794 + _globals['_VMINTERFACE_CUSTOMFIELDSENTRY']._serialized_start=6829 + _globals['_VMINTERFACE_CUSTOMFIELDSENTRY']._serialized_end=6920 + _globals['_VRF']._serialized_start=120797 + _globals['_VRF']._serialized_end=121507 + _globals['_VRF_CUSTOMFIELDSENTRY']._serialized_start=6829 + _globals['_VRF_CUSTOMFIELDSENTRY']._serialized_end=6920 + _globals['_VIRTUALCHASSIS']._serialized_start=121510 + _globals['_VIRTUALCHASSIS']._serialized_end=122067 + _globals['_VIRTUALCHASSIS_CUSTOMFIELDSENTRY']._serialized_start=6829 + _globals['_VIRTUALCHASSIS_CUSTOMFIELDSENTRY']._serialized_end=6920 + _globals['_VIRTUALCIRCUIT']._serialized_start=122070 + _globals['_VIRTUALCIRCUIT']._serialized_end=122920 + _globals['_VIRTUALCIRCUIT_CUSTOMFIELDSENTRY']._serialized_start=6829 + _globals['_VIRTUALCIRCUIT_CUSTOMFIELDSENTRY']._serialized_end=6920 + _globals['_VIRTUALCIRCUITTERMINATION']._serialized_start=122923 + _globals['_VIRTUALCIRCUITTERMINATION']._serialized_end=123461 + _globals['_VIRTUALCIRCUITTERMINATION_CUSTOMFIELDSENTRY']._serialized_start=6829 + _globals['_VIRTUALCIRCUITTERMINATION_CUSTOMFIELDSENTRY']._serialized_end=6920 + _globals['_VIRTUALCIRCUITTYPE']._serialized_start=123464 + _globals['_VIRTUALCIRCUITTYPE']._serialized_end=123988 + _globals['_VIRTUALCIRCUITTYPE_CUSTOMFIELDSENTRY']._serialized_start=6829 + _globals['_VIRTUALCIRCUITTYPE_CUSTOMFIELDSENTRY']._serialized_end=6920 + _globals['_VIRTUALDEVICECONTEXT']._serialized_start=123991 + _globals['_VIRTUALDEVICECONTEXT']._serialized_end=124821 + _globals['_VIRTUALDEVICECONTEXT_CUSTOMFIELDSENTRY']._serialized_start=6829 + _globals['_VIRTUALDEVICECONTEXT_CUSTOMFIELDSENTRY']._serialized_end=6920 + _globals['_VIRTUALDISK']._serialized_start=124824 + _globals['_VIRTUALDISK']._serialized_end=125318 + _globals['_VIRTUALDISK_CUSTOMFIELDSENTRY']._serialized_start=6829 + _globals['_VIRTUALDISK_CUSTOMFIELDSENTRY']._serialized_end=6920 + _globals['_VIRTUALMACHINE']._serialized_start=125321 + _globals['_VIRTUALMACHINE']._serialized_end=126631 + _globals['_VIRTUALMACHINE_CUSTOMFIELDSENTRY']._serialized_start=6829 + _globals['_VIRTUALMACHINE_CUSTOMFIELDSENTRY']._serialized_end=6920 + _globals['_WIRELESSLAN']._serialized_start=126634 + _globals['_WIRELESSLAN']._serialized_end=127805 + _globals['_WIRELESSLAN_CUSTOMFIELDSENTRY']._serialized_start=6829 + _globals['_WIRELESSLAN_CUSTOMFIELDSENTRY']._serialized_end=6920 + _globals['_WIRELESSLANGROUP']._serialized_start=127808 + _globals['_WIRELESSLANGROUP']._serialized_end=128359 + _globals['_WIRELESSLANGROUP_CUSTOMFIELDSENTRY']._serialized_start=6829 + _globals['_WIRELESSLANGROUP_CUSTOMFIELDSENTRY']._serialized_end=6920 + _globals['_WIRELESSLINK']._serialized_start=128362 + _globals['_WIRELESSLINK']._serialized_end=129428 + _globals['_WIRELESSLINK_CUSTOMFIELDSENTRY']._serialized_start=6829 + _globals['_WIRELESSLINK_CUSTOMFIELDSENTRY']._serialized_end=6920 + _globals['_CUSTOMFIELD']._serialized_start=129431 + _globals['_CUSTOMFIELD']._serialized_end=134438 + _globals['_CUSTOMFIELDCHOICESET']._serialized_start=134441 + _globals['_CUSTOMFIELDCHOICESET']._serialized_end=134860 + _globals['_JOURNALENTRY']._serialized_start=134863 + _globals['_JOURNALENTRY']._serialized_end=143737 + _globals['_JOURNALENTRY_CUSTOMFIELDSENTRY']._serialized_start=6829 + _globals['_JOURNALENTRY_CUSTOMFIELDSENTRY']._serialized_end=6920 + _globals['_MODULETYPEPROFILE']._serialized_start=143740 + _globals['_MODULETYPEPROFILE']._serialized_end=144245 + _globals['_MODULETYPEPROFILE_CUSTOMFIELDSENTRY']._serialized_start=6829 + _globals['_MODULETYPEPROFILE_CUSTOMFIELDSENTRY']._serialized_end=6920 + _globals['_CUSTOMLINK']._serialized_start=144248 + _globals['_CUSTOMLINK']._serialized_end=146480 + _globals['_OWNER']._serialized_start=146483 + _globals['_OWNER']._serialized_end=146668 + _globals['_OWNERGROUP']._serialized_start=146671 + _globals['_OWNERGROUP']._serialized_end=146817 + _globals['_DEVICECONFIG']._serialized_start=146820 + _globals['_DEVICECONFIG']._serialized_end=146993 + _globals['_INGESTERSERVICE']._serialized_start=146995 + _globals['_INGESTERSERVICE']._serialized_end=147073 # @@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 bac2d9b..29ae6c1 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") + __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") TIMESTAMP_FIELD_NUMBER: _ClassVar[int] ASN_FIELD_NUMBER: _ClassVar[int] ASN_RANGE_FIELD_NUMBER: _ClassVar[int] @@ -109,6 +109,7 @@ class Entity(_message.Message): CUSTOM_LINK_FIELD_NUMBER: _ClassVar[int] OWNER_FIELD_NUMBER: _ClassVar[int] OWNER_GROUP_FIELD_NUMBER: _ClassVar[int] + DEVICE_CONFIG_FIELD_NUMBER: _ClassVar[int] timestamp: _timestamp_pb2.Timestamp asn: ASN asn_range: ASNRange @@ -205,7 +206,8 @@ class Entity(_message.Message): custom_link: CustomLink owner: Owner owner_group: OwnerGroup - 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]] = ...) -> None: ... + device_config: DeviceConfig + 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]] = ...) -> None: ... class IngestRequest(_message.Message): __slots__ = ("stream", "entities", "id", "producer_app_name", "producer_app_version", "sdk_name", "sdk_version", "metadata") @@ -1275,7 +1277,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") + __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") class CustomFieldsEntry(_message.Message): __slots__ = ("key", "value") KEY_FIELD_NUMBER: _ClassVar[int] @@ -1312,6 +1314,7 @@ class Device(_message.Message): CUSTOM_FIELDS_FIELD_NUMBER: _ClassVar[int] METADATA_FIELD_NUMBER: _ClassVar[int] OWNER_FIELD_NUMBER: _ClassVar[int] + CONFIG_FIELD_NUMBER: _ClassVar[int] name: str device_type: DeviceType role: DeviceRole @@ -1341,7 +1344,8 @@ class Device(_message.Message): custom_fields: _containers.MessageMap[str, CustomFieldValue] metadata: _struct_pb2.Struct owner: Owner - 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]] = ...) -> None: ... + 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: ... class DeviceBay(_message.Message): __slots__ = ("device", "name", "label", "description", "installed_device", "tags", "custom_fields", "metadata", "owner") @@ -4815,3 +4819,15 @@ class OwnerGroup(_message.Message): description: str metadata: _struct_pb2.Struct def __init__(self, name: _Optional[str] = ..., description: _Optional[str] = ..., metadata: _Optional[_Union[_struct_pb2.Struct, _Mapping]] = ...) -> None: ... + +class DeviceConfig(_message.Message): + __slots__ = ("startup", "running", "candidate", "metadata") + STARTUP_FIELD_NUMBER: _ClassVar[int] + RUNNING_FIELD_NUMBER: _ClassVar[int] + CANDIDATE_FIELD_NUMBER: _ClassVar[int] + METADATA_FIELD_NUMBER: _ClassVar[int] + startup: bytes + running: bytes + candidate: bytes + metadata: _struct_pb2.Struct + def __init__(self, startup: _Optional[bytes] = ..., running: _Optional[bytes] = ..., candidate: _Optional[bytes] = ..., metadata: _Optional[_Union[_struct_pb2.Struct, _Mapping]] = ...) -> None: ... diff --git a/netboxlabs/diode/sdk/ingester.py b/netboxlabs/diode/sdk/ingester.py index b6376c2..2ff6094 100644 --- a/netboxlabs/diode/sdk/ingester.py +++ b/netboxlabs/diode/sdk/ingester.py @@ -2,7 +2,7 @@ # # Generated code. DO NOT EDIT. -# Timestamp: 2026-01-12 10:39:06Z +# Timestamp: 2026-02-02 16:58:59Z # # ruff: noqa: C901 @@ -162,18 +162,16 @@ def __new__( timestamp: datetime.datetime | None = None, asn: str | ASN | pb.ASN | None = None, asn_range: str | ASNRange | pb.ASNRange | None = None, - aggregate: str | Aggregate | pb.Aggregate | None = None, - cable: str | Cable | pb.Cable | None = None, - cable_path: str | CablePath | pb.CablePath | None = None, - cable_termination: str | CableTermination | pb.CableTermination | None = None, + aggregate: Aggregate | pb.Aggregate | None = None, + cable: Cable | pb.Cable | None = None, + cable_path: CablePath | pb.CablePath | None = None, + cable_termination: CableTermination | pb.CableTermination | None = None, circuit: str | Circuit | pb.Circuit | None = None, circuit_group: str | CircuitGroup | pb.CircuitGroup | None = None, circuit_group_assignment: ( - str | CircuitGroupAssignment | pb.CircuitGroupAssignment | None - ) = None, - circuit_termination: ( - str | CircuitTermination | pb.CircuitTermination | None + CircuitGroupAssignment | pb.CircuitGroupAssignment | None ) = None, + circuit_termination: CircuitTermination | pb.CircuitTermination | None = None, circuit_type: str | CircuitType | pb.CircuitType | None = None, cluster: str | Cluster | pb.Cluster | None = None, cluster_group: str | ClusterGroup | pb.ClusterGroup | None = None, @@ -183,9 +181,7 @@ def __new__( str | ConsoleServerPort | pb.ConsoleServerPort | None ) = None, contact: str | Contact | pb.Contact | None = None, - contact_assignment: ( - str | ContactAssignment | pb.ContactAssignment | None - ) = None, + contact_assignment: ContactAssignment | pb.ContactAssignment | None = None, contact_group: str | ContactGroup | pb.ContactGroup | None = None, contact_role: str | ContactRole | pb.ContactRole | None = None, device: str | Device | pb.Device | None = None, @@ -194,13 +190,13 @@ def __new__( device_type: str | DeviceType | pb.DeviceType | None = None, fhrp_group: str | FHRPGroup | pb.FHRPGroup | None = None, fhrp_group_assignment: ( - str | FHRPGroupAssignment | pb.FHRPGroupAssignment | None + FHRPGroupAssignment | pb.FHRPGroupAssignment | None ) = None, front_port: str | FrontPort | pb.FrontPort | None = None, ike_policy: str | IKEPolicy | pb.IKEPolicy | None = None, ike_proposal: str | IKEProposal | pb.IKEProposal | None = None, ip_address: str | IPAddress | pb.IPAddress | None = None, - ip_range: str | IPRange | pb.IPRange | None = None, + ip_range: IPRange | pb.IPRange | None = None, ip_sec_policy: str | IPSecPolicy | pb.IPSecPolicy | None = None, ip_sec_profile: str | IPSecProfile | pb.IPSecProfile | None = None, ip_sec_proposal: str | IPSecProposal | pb.IPSecProposal | None = None, @@ -210,11 +206,11 @@ def __new__( str | InventoryItemRole | pb.InventoryItemRole | None ) = None, l2vpn: str | L2VPN | pb.L2VPN | None = None, - l2vpn_termination: str | L2VPNTermination | pb.L2VPNTermination | None = None, + l2vpn_termination: L2VPNTermination | pb.L2VPNTermination | None = None, location: str | Location | pb.Location | None = None, mac_address: str | MACAddress | pb.MACAddress | None = None, manufacturer: str | Manufacturer | pb.Manufacturer | None = None, - module: str | Module | pb.Module | None = None, + module: Module | pb.Module | None = None, module_bay: str | ModuleBay | pb.ModuleBay | None = None, module_type: str | ModuleType | pb.ModuleType | None = None, platform: str | Platform | pb.Platform | None = None, @@ -228,7 +224,7 @@ def __new__( provider_network: str | ProviderNetwork | pb.ProviderNetwork | None = None, rir: str | RIR | pb.RIR | None = None, rack: str | Rack | pb.Rack | None = None, - rack_reservation: str | RackReservation | pb.RackReservation | None = None, + rack_reservation: RackReservation | pb.RackReservation | None = None, rack_role: str | RackRole | pb.RackRole | None = None, rack_type: str | RackType | pb.RackType | None = None, rear_port: str | RearPort | pb.RearPort | None = None, @@ -243,23 +239,21 @@ def __new__( tenant_group: str | TenantGroup | pb.TenantGroup | None = None, tunnel: str | Tunnel | pb.Tunnel | None = None, tunnel_group: str | TunnelGroup | pb.TunnelGroup | None = None, - tunnel_termination: ( - str | TunnelTermination | pb.TunnelTermination | None - ) = None, + tunnel_termination: TunnelTermination | pb.TunnelTermination | None = None, vlan: str | VLAN | pb.VLAN | None = None, vlan_group: str | VLANGroup | pb.VLANGroup | None = None, vlan_translation_policy: ( str | VLANTranslationPolicy | pb.VLANTranslationPolicy | None ) = None, vlan_translation_rule: ( - str | VLANTranslationRule | pb.VLANTranslationRule | None + VLANTranslationRule | pb.VLANTranslationRule | None ) = None, vm_interface: str | VMInterface | pb.VMInterface | None = None, vrf: str | VRF | pb.VRF | None = None, virtual_chassis: str | VirtualChassis | pb.VirtualChassis | None = None, virtual_circuit: str | VirtualCircuit | pb.VirtualCircuit | None = None, virtual_circuit_termination: ( - str | VirtualCircuitTermination | pb.VirtualCircuitTermination | None + VirtualCircuitTermination | pb.VirtualCircuitTermination | None ) = None, virtual_circuit_type: ( str | VirtualCircuitType | pb.VirtualCircuitType | None @@ -271,18 +265,19 @@ def __new__( virtual_machine: str | VirtualMachine | pb.VirtualMachine | None = None, wireless_lan: str | WirelessLAN | pb.WirelessLAN | None = None, wireless_lan_group: str | WirelessLANGroup | pb.WirelessLANGroup | None = None, - wireless_link: str | WirelessLink | pb.WirelessLink | None = None, + wireless_link: WirelessLink | pb.WirelessLink | None = None, custom_field: str | CustomField | pb.CustomField | None = None, custom_field_choice_set: ( str | CustomFieldChoiceSet | pb.CustomFieldChoiceSet | None ) = None, - journal_entry: str | JournalEntry | pb.JournalEntry | None = None, + journal_entry: JournalEntry | pb.JournalEntry | None = None, module_type_profile: ( str | ModuleTypeProfile | pb.ModuleTypeProfile | None ) = None, custom_link: str | CustomLink | pb.CustomLink | None = None, owner: str | Owner | pb.Owner | None = None, owner_group: str | OwnerGroup | pb.OwnerGroup | None = None, + device_config: DeviceConfig | pb.DeviceConfig | None = None, ) -> pb.Entity: """Create a new Entity.""" asn = convert_to_protobuf(asn, pb.ASN) @@ -410,6 +405,7 @@ def __new__( custom_link = convert_to_protobuf(custom_link, pb.CustomLink) owner = convert_to_protobuf(owner, pb.Owner) owner_group = convert_to_protobuf(owner_group, pb.OwnerGroup) + device_config = convert_to_protobuf(device_config, pb.DeviceConfig) if timestamp is None: ts = _timestamp_pb2.Timestamp() ts.GetCurrentTime() @@ -511,6 +507,7 @@ def __new__( custom_link=custom_link, owner=owner, owner_group=owner_group, + device_config=device_config, ) return result @@ -526,9 +523,7 @@ def __new__( description: str | None = None, comments: str | None = None, tags: list[str | Tag | pb.Tag] | None = None, - custom_fields: ( - dict[str, str | CustomFieldValue | pb.CustomFieldValue] | None - ) = None, + custom_fields: dict[str, CustomFieldValue | pb.CustomFieldValue] | None = None, metadata: dict[str, Any] | None = None, owner: str | Owner | pb.Owner | None = None, sites: list[str | Site | pb.Site] | None = None, @@ -569,9 +564,7 @@ def __new__( tenant: str | Tenant | pb.Tenant | None = None, description: str | None = None, tags: list[str | Tag | pb.Tag] | None = None, - custom_fields: ( - dict[str, str | CustomFieldValue | pb.CustomFieldValue] | None - ) = None, + custom_fields: dict[str, CustomFieldValue | pb.CustomFieldValue] | None = None, metadata: dict[str, Any] | None = None, owner: str | Owner | pb.Owner | None = None, comments: str | None = None, @@ -612,9 +605,7 @@ def __new__( description: str | None = None, comments: str | None = None, tags: list[str | Tag | pb.Tag] | None = None, - custom_fields: ( - dict[str, str | CustomFieldValue | pb.CustomFieldValue] | None - ) = None, + custom_fields: dict[str, CustomFieldValue | pb.CustomFieldValue] | None = None, metadata: dict[str, Any] | None = None, owner: str | Owner | pb.Owner | None = None, ) -> pb.Aggregate: @@ -646,8 +637,8 @@ class Cable: def __new__( cls, type: str | None = None, - a_terminations: list[str | GenericObject | pb.GenericObject] | None = None, - b_terminations: list[str | GenericObject | pb.GenericObject] | None = None, + a_terminations: list[GenericObject | pb.GenericObject] | None = None, + b_terminations: list[GenericObject | pb.GenericObject] | None = None, status: str | None = None, tenant: str | Tenant | pb.Tenant | None = None, label: str | None = None, @@ -657,9 +648,7 @@ def __new__( description: str | None = None, comments: str | None = None, tags: list[str | Tag | pb.Tag] | None = None, - custom_fields: ( - dict[str, str | CustomFieldValue | pb.CustomFieldValue] | None - ) = None, + custom_fields: dict[str, CustomFieldValue | pb.CustomFieldValue] | None = None, metadata: dict[str, Any] | None = None, profile: str | None = None, owner: str | Owner | pb.Owner | None = None, @@ -719,10 +708,10 @@ class CableTermination: def __new__( cls, - cable: str | Cable | pb.Cable | None = None, + cable: Cable | pb.Cable | None = None, cable_end: str | None = None, termination_circuit_termination: ( - str | CircuitTermination | pb.CircuitTermination | None + CircuitTermination | pb.CircuitTermination | None ) = None, termination_console_port: str | ConsolePort | pb.ConsolePort | None = None, termination_console_server_port: ( @@ -799,11 +788,9 @@ def __new__( comments: str | None = None, tags: list[str | Tag | pb.Tag] | None = None, assignments: ( - list[str | CircuitGroupAssignment | pb.CircuitGroupAssignment] | None - ) = None, - custom_fields: ( - dict[str, str | CustomFieldValue | pb.CustomFieldValue] | None + list[CircuitGroupAssignment | pb.CircuitGroupAssignment] | None ) = None, + custom_fields: dict[str, CustomFieldValue | pb.CustomFieldValue] | None = None, metadata: dict[str, Any] | None = None, owner: str | Owner | pb.Owner | None = None, ) -> pb.Circuit: @@ -850,9 +837,7 @@ def __new__( description: str | None = None, tenant: str | Tenant | pb.Tenant | None = None, tags: list[str | Tag | pb.Tag] | None = None, - custom_fields: ( - dict[str, str | CustomFieldValue | pb.CustomFieldValue] | None - ) = None, + custom_fields: dict[str, CustomFieldValue | pb.CustomFieldValue] | None = None, metadata: dict[str, Any] | None = None, owner: str | Owner | pb.Owner | None = None, comments: str | None = None, @@ -929,9 +914,7 @@ def __new__( description: str | None = None, mark_connected: bool | None = None, tags: list[str | Tag | pb.Tag] | None = None, - custom_fields: ( - dict[str, str | CustomFieldValue | pb.CustomFieldValue] | None - ) = None, + custom_fields: dict[str, CustomFieldValue | pb.CustomFieldValue] | None = None, metadata: dict[str, Any] | None = None, ) -> pb.CircuitTermination: """Create a new CircuitTermination.""" @@ -979,9 +962,7 @@ def __new__( color: str | None = None, description: str | None = None, tags: list[str | Tag | pb.Tag] | None = None, - custom_fields: ( - dict[str, str | CustomFieldValue | pb.CustomFieldValue] | None - ) = None, + custom_fields: dict[str, CustomFieldValue | pb.CustomFieldValue] | None = None, metadata: dict[str, Any] | None = None, owner: str | Owner | pb.Owner | None = None, comments: str | None = None, @@ -1022,9 +1003,7 @@ def __new__( description: str | None = None, comments: str | None = None, tags: list[str | Tag | pb.Tag] | None = None, - custom_fields: ( - dict[str, str | CustomFieldValue | pb.CustomFieldValue] | None - ) = None, + custom_fields: dict[str, CustomFieldValue | pb.CustomFieldValue] | None = None, metadata: dict[str, Any] | None = None, owner: str | Owner | pb.Owner | None = None, ) -> pb.Cluster: @@ -1069,9 +1048,7 @@ def __new__( slug: str | None = None, description: str | None = None, tags: list[str | Tag | pb.Tag] | None = None, - custom_fields: ( - dict[str, str | CustomFieldValue | pb.CustomFieldValue] | None - ) = None, + custom_fields: dict[str, CustomFieldValue | pb.CustomFieldValue] | None = None, metadata: dict[str, Any] | None = None, owner: str | Owner | pb.Owner | None = None, comments: str | None = None, @@ -1103,9 +1080,7 @@ def __new__( slug: str | None = None, description: str | None = None, tags: list[str | Tag | pb.Tag] | None = None, - custom_fields: ( - dict[str, str | CustomFieldValue | pb.CustomFieldValue] | None - ) = None, + custom_fields: dict[str, CustomFieldValue | pb.CustomFieldValue] | None = None, metadata: dict[str, Any] | None = None, owner: str | Owner | pb.Owner | None = None, comments: str | None = None, @@ -1134,7 +1109,7 @@ class ConsolePort: def __new__( cls, device: str | Device | pb.Device | None = None, - module: str | Module | pb.Module | None = None, + module: Module | pb.Module | None = None, name: str | None = None, label: str | None = None, type: str | None = None, @@ -1142,9 +1117,7 @@ def __new__( description: str | None = None, mark_connected: bool | None = None, tags: list[str | Tag | pb.Tag] | None = None, - custom_fields: ( - dict[str, str | CustomFieldValue | pb.CustomFieldValue] | None - ) = None, + custom_fields: dict[str, CustomFieldValue | pb.CustomFieldValue] | None = None, metadata: dict[str, Any] | None = None, owner: str | Owner | pb.Owner | None = None, ) -> pb.ConsolePort: @@ -1178,7 +1151,7 @@ class ConsoleServerPort: def __new__( cls, device: str | Device | pb.Device | None = None, - module: str | Module | pb.Module | None = None, + module: Module | pb.Module | None = None, name: str | None = None, label: str | None = None, type: str | None = None, @@ -1186,9 +1159,7 @@ def __new__( description: str | None = None, mark_connected: bool | None = None, tags: list[str | Tag | pb.Tag] | None = None, - custom_fields: ( - dict[str, str | CustomFieldValue | pb.CustomFieldValue] | None - ) = None, + custom_fields: dict[str, CustomFieldValue | pb.CustomFieldValue] | None = None, metadata: dict[str, Any] | None = None, owner: str | Owner | pb.Owner | None = None, ) -> pb.ConsoleServerPort: @@ -1231,9 +1202,7 @@ def __new__( description: str | None = None, comments: str | None = None, tags: list[str | Tag | pb.Tag] | None = None, - custom_fields: ( - dict[str, str | CustomFieldValue | pb.CustomFieldValue] | None - ) = None, + custom_fields: dict[str, CustomFieldValue | pb.CustomFieldValue] | None = None, groups: list[str | ContactGroup | pb.ContactGroup] | None = None, metadata: dict[str, Any] | None = None, owner: str | Owner | pb.Owner | None = None, @@ -1271,19 +1240,17 @@ def __new__( cls, object_asn: str | ASN | pb.ASN | None = None, object_asn_range: str | ASNRange | pb.ASNRange | None = None, - object_aggregate: str | Aggregate | pb.Aggregate | None = None, - object_cable: str | Cable | pb.Cable | None = None, - object_cable_path: str | CablePath | pb.CablePath | None = None, - object_cable_termination: ( - str | CableTermination | pb.CableTermination | None - ) = None, + object_aggregate: Aggregate | pb.Aggregate | None = None, + object_cable: Cable | pb.Cable | None = None, + object_cable_path: CablePath | pb.CablePath | None = None, + object_cable_termination: CableTermination | pb.CableTermination | None = None, object_circuit: str | Circuit | pb.Circuit | None = None, object_circuit_group: str | CircuitGroup | pb.CircuitGroup | None = None, object_circuit_group_assignment: ( - str | CircuitGroupAssignment | pb.CircuitGroupAssignment | None + CircuitGroupAssignment | pb.CircuitGroupAssignment | None ) = None, object_circuit_termination: ( - str | CircuitTermination | pb.CircuitTermination | None + CircuitTermination | pb.CircuitTermination | None ) = None, object_circuit_type: str | CircuitType | pb.CircuitType | None = None, object_cluster: str | Cluster | pb.Cluster | None = None, @@ -1295,7 +1262,7 @@ def __new__( ) = None, object_contact: str | Contact | pb.Contact | None = None, object_contact_assignment: ( - str | ContactAssignment | pb.ContactAssignment | None + ContactAssignment | pb.ContactAssignment | None ) = None, object_contact_group: str | ContactGroup | pb.ContactGroup | None = None, object_contact_role: str | ContactRole | pb.ContactRole | None = None, @@ -1305,13 +1272,13 @@ def __new__( object_device_type: str | DeviceType | pb.DeviceType | None = None, object_fhrp_group: str | FHRPGroup | pb.FHRPGroup | None = None, object_fhrp_group_assignment: ( - str | FHRPGroupAssignment | pb.FHRPGroupAssignment | None + FHRPGroupAssignment | pb.FHRPGroupAssignment | None ) = None, object_front_port: str | FrontPort | pb.FrontPort | None = None, object_ike_policy: str | IKEPolicy | pb.IKEPolicy | None = None, object_ike_proposal: str | IKEProposal | pb.IKEProposal | None = None, object_ip_address: str | IPAddress | pb.IPAddress | None = None, - object_ip_range: str | IPRange | pb.IPRange | None = None, + object_ip_range: IPRange | pb.IPRange | None = None, object_ip_sec_policy: str | IPSecPolicy | pb.IPSecPolicy | None = None, object_ip_sec_profile: str | IPSecProfile | pb.IPSecProfile | None = None, object_ip_sec_proposal: str | IPSecProposal | pb.IPSecProposal | None = None, @@ -1321,13 +1288,11 @@ def __new__( str | InventoryItemRole | pb.InventoryItemRole | None ) = None, object_l2vpn: str | L2VPN | pb.L2VPN | None = None, - object_l2vpn_termination: ( - str | L2VPNTermination | pb.L2VPNTermination | None - ) = None, + object_l2vpn_termination: L2VPNTermination | pb.L2VPNTermination | None = None, object_location: str | Location | pb.Location | None = None, object_mac_address: str | MACAddress | pb.MACAddress | None = None, object_manufacturer: str | Manufacturer | pb.Manufacturer | None = None, - object_module: str | Module | pb.Module | None = None, + object_module: Module | pb.Module | None = None, object_module_bay: str | ModuleBay | pb.ModuleBay | None = None, object_module_type: str | ModuleType | pb.ModuleType | None = None, object_platform: str | Platform | pb.Platform | None = None, @@ -1345,9 +1310,7 @@ def __new__( ) = None, object_rir: str | RIR | pb.RIR | None = None, object_rack: str | Rack | pb.Rack | None = None, - object_rack_reservation: ( - str | RackReservation | pb.RackReservation | None - ) = None, + object_rack_reservation: RackReservation | pb.RackReservation | None = None, object_rack_role: str | RackRole | pb.RackRole | None = None, object_rack_type: str | RackType | pb.RackType | None = None, object_rear_port: str | RearPort | pb.RearPort | None = None, @@ -1363,7 +1326,7 @@ def __new__( object_tunnel: str | Tunnel | pb.Tunnel | None = None, object_tunnel_group: str | TunnelGroup | pb.TunnelGroup | None = None, object_tunnel_termination: ( - str | TunnelTermination | pb.TunnelTermination | None + TunnelTermination | pb.TunnelTermination | None ) = None, object_vlan: str | VLAN | pb.VLAN | None = None, object_vlan_group: str | VLANGroup | pb.VLANGroup | None = None, @@ -1371,14 +1334,14 @@ def __new__( str | VLANTranslationPolicy | pb.VLANTranslationPolicy | None ) = None, object_vlan_translation_rule: ( - str | VLANTranslationRule | pb.VLANTranslationRule | None + VLANTranslationRule | pb.VLANTranslationRule | None ) = None, object_vm_interface: str | VMInterface | pb.VMInterface | None = None, object_vrf: str | VRF | pb.VRF | None = None, object_virtual_chassis: str | VirtualChassis | pb.VirtualChassis | None = None, object_virtual_circuit: str | VirtualCircuit | pb.VirtualCircuit | None = None, object_virtual_circuit_termination: ( - str | VirtualCircuitTermination | pb.VirtualCircuitTermination | None + VirtualCircuitTermination | pb.VirtualCircuitTermination | None ) = None, object_virtual_circuit_type: ( str | VirtualCircuitType | pb.VirtualCircuitType | None @@ -1392,12 +1355,12 @@ def __new__( object_wireless_lan_group: ( str | WirelessLANGroup | pb.WirelessLANGroup | None ) = None, - object_wireless_link: str | WirelessLink | pb.WirelessLink | None = None, + object_wireless_link: WirelessLink | pb.WirelessLink | None = None, object_custom_field: str | CustomField | pb.CustomField | None = None, object_custom_field_choice_set: ( str | CustomFieldChoiceSet | pb.CustomFieldChoiceSet | None ) = None, - object_journal_entry: str | JournalEntry | pb.JournalEntry | None = None, + object_journal_entry: JournalEntry | pb.JournalEntry | None = None, object_module_type_profile: ( str | ModuleTypeProfile | pb.ModuleTypeProfile | None ) = None, @@ -1408,9 +1371,7 @@ def __new__( role: str | ContactRole | pb.ContactRole | None = None, priority: str | None = None, tags: list[str | Tag | pb.Tag] | None = None, - custom_fields: ( - dict[str, str | CustomFieldValue | pb.CustomFieldValue] | None - ) = None, + custom_fields: dict[str, CustomFieldValue | pb.CustomFieldValue] | None = None, metadata: dict[str, Any] | None = None, ) -> pb.ContactAssignment: """Create a new ContactAssignment.""" @@ -1692,9 +1653,7 @@ def __new__( parent: str | ContactGroup | pb.ContactGroup | None = None, description: str | None = None, tags: list[str | Tag | pb.Tag] | None = None, - custom_fields: ( - dict[str, str | CustomFieldValue | pb.CustomFieldValue] | None - ) = None, + custom_fields: dict[str, CustomFieldValue | pb.CustomFieldValue] | None = None, comments: str | None = None, metadata: dict[str, Any] | None = None, owner: str | Owner | pb.Owner | None = None, @@ -1728,9 +1687,7 @@ def __new__( slug: str | None = None, description: str | None = None, tags: list[str | Tag | pb.Tag] | None = None, - custom_fields: ( - dict[str, str | CustomFieldValue | pb.CustomFieldValue] | None - ) = None, + custom_fields: dict[str, CustomFieldValue | pb.CustomFieldValue] | None = None, metadata: dict[str, Any] | None = None, owner: str | Owner | pb.Owner | None = None, comments: str | None = None, @@ -1760,18 +1717,16 @@ def __new__( cls, asn: str | ASN | pb.ASN | None = None, asn_range: str | ASNRange | pb.ASNRange | None = None, - aggregate: str | Aggregate | pb.Aggregate | None = None, - cable: str | Cable | pb.Cable | None = None, - cable_path: str | CablePath | pb.CablePath | None = None, - cable_termination: str | CableTermination | pb.CableTermination | None = None, + aggregate: Aggregate | pb.Aggregate | None = None, + cable: Cable | pb.Cable | None = None, + cable_path: CablePath | pb.CablePath | None = None, + cable_termination: CableTermination | pb.CableTermination | None = None, circuit: str | Circuit | pb.Circuit | None = None, circuit_group: str | CircuitGroup | pb.CircuitGroup | None = None, circuit_group_assignment: ( - str | CircuitGroupAssignment | pb.CircuitGroupAssignment | None - ) = None, - circuit_termination: ( - str | CircuitTermination | pb.CircuitTermination | None + CircuitGroupAssignment | pb.CircuitGroupAssignment | None ) = None, + circuit_termination: CircuitTermination | pb.CircuitTermination | None = None, circuit_type: str | CircuitType | pb.CircuitType | None = None, cluster: str | Cluster | pb.Cluster | None = None, cluster_group: str | ClusterGroup | pb.ClusterGroup | None = None, @@ -1781,9 +1736,7 @@ def __new__( str | ConsoleServerPort | pb.ConsoleServerPort | None ) = None, contact: str | Contact | pb.Contact | None = None, - contact_assignment: ( - str | ContactAssignment | pb.ContactAssignment | None - ) = None, + contact_assignment: ContactAssignment | pb.ContactAssignment | None = None, contact_group: str | ContactGroup | pb.ContactGroup | None = None, contact_role: str | ContactRole | pb.ContactRole | None = None, device: str | Device | pb.Device | None = None, @@ -1792,13 +1745,13 @@ def __new__( device_type: str | DeviceType | pb.DeviceType | None = None, fhrp_group: str | FHRPGroup | pb.FHRPGroup | None = None, fhrp_group_assignment: ( - str | FHRPGroupAssignment | pb.FHRPGroupAssignment | None + FHRPGroupAssignment | pb.FHRPGroupAssignment | None ) = None, front_port: str | FrontPort | pb.FrontPort | None = None, ike_policy: str | IKEPolicy | pb.IKEPolicy | None = None, ike_proposal: str | IKEProposal | pb.IKEProposal | None = None, ip_address: str | IPAddress | pb.IPAddress | None = None, - ip_range: str | IPRange | pb.IPRange | None = None, + ip_range: IPRange | pb.IPRange | None = None, ip_sec_policy: str | IPSecPolicy | pb.IPSecPolicy | None = None, ip_sec_profile: str | IPSecProfile | pb.IPSecProfile | None = None, ip_sec_proposal: str | IPSecProposal | pb.IPSecProposal | None = None, @@ -1808,11 +1761,11 @@ def __new__( str | InventoryItemRole | pb.InventoryItemRole | None ) = None, l2vpn: str | L2VPN | pb.L2VPN | None = None, - l2vpn_termination: str | L2VPNTermination | pb.L2VPNTermination | None = None, + l2vpn_termination: L2VPNTermination | pb.L2VPNTermination | None = None, location: str | Location | pb.Location | None = None, mac_address: str | MACAddress | pb.MACAddress | None = None, manufacturer: str | Manufacturer | pb.Manufacturer | None = None, - module: str | Module | pb.Module | None = None, + module: Module | pb.Module | None = None, module_bay: str | ModuleBay | pb.ModuleBay | None = None, module_type: str | ModuleType | pb.ModuleType | None = None, platform: str | Platform | pb.Platform | None = None, @@ -1826,7 +1779,7 @@ def __new__( provider_network: str | ProviderNetwork | pb.ProviderNetwork | None = None, rir: str | RIR | pb.RIR | None = None, rack: str | Rack | pb.Rack | None = None, - rack_reservation: str | RackReservation | pb.RackReservation | None = None, + rack_reservation: RackReservation | pb.RackReservation | None = None, rack_role: str | RackRole | pb.RackRole | None = None, rack_type: str | RackType | pb.RackType | None = None, rear_port: str | RearPort | pb.RearPort | None = None, @@ -1841,23 +1794,21 @@ def __new__( tenant_group: str | TenantGroup | pb.TenantGroup | None = None, tunnel: str | Tunnel | pb.Tunnel | None = None, tunnel_group: str | TunnelGroup | pb.TunnelGroup | None = None, - tunnel_termination: ( - str | TunnelTermination | pb.TunnelTermination | None - ) = None, + tunnel_termination: TunnelTermination | pb.TunnelTermination | None = None, vlan: str | VLAN | pb.VLAN | None = None, vlan_group: str | VLANGroup | pb.VLANGroup | None = None, vlan_translation_policy: ( str | VLANTranslationPolicy | pb.VLANTranslationPolicy | None ) = None, vlan_translation_rule: ( - str | VLANTranslationRule | pb.VLANTranslationRule | None + VLANTranslationRule | pb.VLANTranslationRule | None ) = None, vm_interface: str | VMInterface | pb.VMInterface | None = None, vrf: str | VRF | pb.VRF | None = None, virtual_chassis: str | VirtualChassis | pb.VirtualChassis | None = None, virtual_circuit: str | VirtualCircuit | pb.VirtualCircuit | None = None, virtual_circuit_termination: ( - str | VirtualCircuitTermination | pb.VirtualCircuitTermination | None + VirtualCircuitTermination | pb.VirtualCircuitTermination | None ) = None, virtual_circuit_type: ( str | VirtualCircuitType | pb.VirtualCircuitType | None @@ -1869,12 +1820,12 @@ def __new__( virtual_machine: str | VirtualMachine | pb.VirtualMachine | None = None, wireless_lan: str | WirelessLAN | pb.WirelessLAN | None = None, wireless_lan_group: str | WirelessLANGroup | pb.WirelessLANGroup | None = None, - wireless_link: str | WirelessLink | pb.WirelessLink | None = None, + wireless_link: WirelessLink | pb.WirelessLink | None = None, custom_field: str | CustomField | pb.CustomField | None = None, custom_field_choice_set: ( str | CustomFieldChoiceSet | pb.CustomFieldChoiceSet | None ) = None, - journal_entry: str | JournalEntry | pb.JournalEntry | None = None, + journal_entry: JournalEntry | pb.JournalEntry | None = None, module_type_profile: ( str | ModuleTypeProfile | pb.ModuleTypeProfile | None ) = None, @@ -2115,8 +2066,7 @@ def __new__( cls, multiple_selection: list[str] | None = None, multiple_objects: ( - list[str | CustomFieldObjectReference | pb.CustomFieldObjectReference] - | None + list[CustomFieldObjectReference | pb.CustomFieldObjectReference] | None ) = None, text: str | None = None, long_text: str | None = None, @@ -2129,7 +2079,7 @@ def __new__( json: str | None = None, selection: str | None = None, object: ( - str | CustomFieldObjectReference | pb.CustomFieldObjectReference | None + CustomFieldObjectReference | pb.CustomFieldObjectReference | None ) = None, ) -> pb.CustomFieldValue: """Create a new CustomFieldValue.""" @@ -2186,11 +2136,10 @@ def __new__( description: str | None = None, comments: str | None = None, tags: list[str | Tag | pb.Tag] | None = None, - custom_fields: ( - dict[str, str | CustomFieldValue | pb.CustomFieldValue] | None - ) = None, + custom_fields: dict[str, CustomFieldValue | pb.CustomFieldValue] | None = None, metadata: dict[str, Any] | None = None, owner: str | Owner | pb.Owner | None = None, + config: DeviceConfig | pb.DeviceConfig | None = None, # shortcuts manufacturer: str | Manufacturer | pb.Manufacturer = None, ) -> pb.Device: @@ -2211,6 +2160,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) + config = convert_to_protobuf(config, pb.DeviceConfig) # shortcut types (not directly used) manufacturer = convert_to_protobuf(manufacturer, pb.Manufacturer) @@ -2251,6 +2201,7 @@ def __new__( custom_fields=custom_fields, metadata=metadata, owner=owner, + config=config, ) return result @@ -2266,9 +2217,7 @@ def __new__( description: str | None = None, installed_device: str | Device | pb.Device | None = None, tags: list[str | Tag | pb.Tag] | None = None, - custom_fields: ( - dict[str, str | CustomFieldValue | pb.CustomFieldValue] | None - ) = None, + custom_fields: dict[str, CustomFieldValue | pb.CustomFieldValue] | None = None, metadata: dict[str, Any] | None = None, owner: str | Owner | pb.Owner | None = None, ) -> pb.DeviceBay: @@ -2304,9 +2253,7 @@ def __new__( vm_role: bool | None = None, description: str | None = None, tags: list[str | Tag | pb.Tag] | None = None, - custom_fields: ( - dict[str, str | CustomFieldValue | pb.CustomFieldValue] | None - ) = None, + custom_fields: dict[str, CustomFieldValue | pb.CustomFieldValue] | None = None, parent: str | DeviceRole | pb.DeviceRole | None = None, comments: str | None = None, metadata: dict[str, Any] | None = None, @@ -2354,9 +2301,7 @@ def __new__( description: str | None = None, comments: str | None = None, tags: list[str | Tag | pb.Tag] | None = None, - custom_fields: ( - dict[str, str | CustomFieldValue | pb.CustomFieldValue] | None - ) = None, + custom_fields: dict[str, CustomFieldValue | pb.CustomFieldValue] | None = None, metadata: dict[str, Any] | None = None, owner: str | Owner | pb.Owner | None = None, ) -> pb.DeviceType: @@ -2403,9 +2348,7 @@ def __new__( description: str | None = None, comments: str | None = None, tags: list[str | Tag | pb.Tag] | None = None, - custom_fields: ( - dict[str, str | CustomFieldValue | pb.CustomFieldValue] | None - ) = None, + custom_fields: dict[str, CustomFieldValue | pb.CustomFieldValue] | None = None, metadata: dict[str, Any] | None = None, owner: str | Owner | pb.Owner | None = None, ) -> pb.FHRPGroup: @@ -2438,19 +2381,19 @@ def __new__( group: str | FHRPGroup | pb.FHRPGroup | None = None, interface_asn: str | ASN | pb.ASN | None = None, interface_asn_range: str | ASNRange | pb.ASNRange | None = None, - interface_aggregate: str | Aggregate | pb.Aggregate | None = None, - interface_cable: str | Cable | pb.Cable | None = None, - interface_cable_path: str | CablePath | pb.CablePath | None = None, + interface_aggregate: Aggregate | pb.Aggregate | None = None, + interface_cable: Cable | pb.Cable | None = None, + interface_cable_path: CablePath | pb.CablePath | None = None, interface_cable_termination: ( - str | CableTermination | pb.CableTermination | None + CableTermination | pb.CableTermination | None ) = None, interface_circuit: str | Circuit | pb.Circuit | None = None, interface_circuit_group: str | CircuitGroup | pb.CircuitGroup | None = None, interface_circuit_group_assignment: ( - str | CircuitGroupAssignment | pb.CircuitGroupAssignment | None + CircuitGroupAssignment | pb.CircuitGroupAssignment | None ) = None, interface_circuit_termination: ( - str | CircuitTermination | pb.CircuitTermination | None + CircuitTermination | pb.CircuitTermination | None ) = None, interface_circuit_type: str | CircuitType | pb.CircuitType | None = None, interface_cluster: str | Cluster | pb.Cluster | None = None, @@ -2462,7 +2405,7 @@ def __new__( ) = None, interface_contact: str | Contact | pb.Contact | None = None, interface_contact_assignment: ( - str | ContactAssignment | pb.ContactAssignment | None + ContactAssignment | pb.ContactAssignment | None ) = None, interface_contact_group: str | ContactGroup | pb.ContactGroup | None = None, interface_contact_role: str | ContactRole | pb.ContactRole | None = None, @@ -2472,13 +2415,13 @@ def __new__( interface_device_type: str | DeviceType | pb.DeviceType | None = None, interface_fhrp_group: str | FHRPGroup | pb.FHRPGroup | None = None, interface_fhrp_group_assignment: ( - str | FHRPGroupAssignment | pb.FHRPGroupAssignment | None + FHRPGroupAssignment | pb.FHRPGroupAssignment | None ) = None, interface_front_port: str | FrontPort | pb.FrontPort | None = None, interface_ike_policy: str | IKEPolicy | pb.IKEPolicy | None = None, interface_ike_proposal: str | IKEProposal | pb.IKEProposal | None = None, interface_ip_address: str | IPAddress | pb.IPAddress | None = None, - interface_ip_range: str | IPRange | pb.IPRange | None = None, + interface_ip_range: IPRange | pb.IPRange | None = None, interface_ip_sec_policy: str | IPSecPolicy | pb.IPSecPolicy | None = None, interface_ip_sec_profile: str | IPSecProfile | pb.IPSecProfile | None = None, interface_ip_sec_proposal: str | IPSecProposal | pb.IPSecProposal | None = None, @@ -2489,12 +2432,12 @@ def __new__( ) = None, interface_l2vpn: str | L2VPN | pb.L2VPN | None = None, interface_l2vpn_termination: ( - str | L2VPNTermination | pb.L2VPNTermination | None + L2VPNTermination | pb.L2VPNTermination | None ) = None, interface_location: str | Location | pb.Location | None = None, interface_mac_address: str | MACAddress | pb.MACAddress | None = None, interface_manufacturer: str | Manufacturer | pb.Manufacturer | None = None, - interface_module: str | Module | pb.Module | None = None, + interface_module: Module | pb.Module | None = None, interface_module_bay: str | ModuleBay | pb.ModuleBay | None = None, interface_module_type: str | ModuleType | pb.ModuleType | None = None, interface_platform: str | Platform | pb.Platform | None = None, @@ -2512,9 +2455,7 @@ def __new__( ) = None, interface_rir: str | RIR | pb.RIR | None = None, interface_rack: str | Rack | pb.Rack | None = None, - interface_rack_reservation: ( - str | RackReservation | pb.RackReservation | None - ) = None, + interface_rack_reservation: RackReservation | pb.RackReservation | None = None, interface_rack_role: str | RackRole | pb.RackRole | None = None, interface_rack_type: str | RackType | pb.RackType | None = None, interface_rear_port: str | RearPort | pb.RearPort | None = None, @@ -2530,7 +2471,7 @@ def __new__( interface_tunnel: str | Tunnel | pb.Tunnel | None = None, interface_tunnel_group: str | TunnelGroup | pb.TunnelGroup | None = None, interface_tunnel_termination: ( - str | TunnelTermination | pb.TunnelTermination | None + TunnelTermination | pb.TunnelTermination | None ) = None, interface_vlan: str | VLAN | pb.VLAN | None = None, interface_vlan_group: str | VLANGroup | pb.VLANGroup | None = None, @@ -2538,7 +2479,7 @@ def __new__( str | VLANTranslationPolicy | pb.VLANTranslationPolicy | None ) = None, interface_vlan_translation_rule: ( - str | VLANTranslationRule | pb.VLANTranslationRule | None + VLANTranslationRule | pb.VLANTranslationRule | None ) = None, interface_vm_interface: str | VMInterface | pb.VMInterface | None = None, interface_vrf: str | VRF | pb.VRF | None = None, @@ -2549,7 +2490,7 @@ def __new__( str | VirtualCircuit | pb.VirtualCircuit | None ) = None, interface_virtual_circuit_termination: ( - str | VirtualCircuitTermination | pb.VirtualCircuitTermination | None + VirtualCircuitTermination | pb.VirtualCircuitTermination | None ) = None, interface_virtual_circuit_type: ( str | VirtualCircuitType | pb.VirtualCircuitType | None @@ -2565,12 +2506,12 @@ def __new__( interface_wireless_lan_group: ( str | WirelessLANGroup | pb.WirelessLANGroup | None ) = None, - interface_wireless_link: str | WirelessLink | pb.WirelessLink | None = None, + interface_wireless_link: WirelessLink | pb.WirelessLink | None = None, interface_custom_field: str | CustomField | pb.CustomField | None = None, interface_custom_field_choice_set: ( str | CustomFieldChoiceSet | pb.CustomFieldChoiceSet | None ) = None, - interface_journal_entry: str | JournalEntry | pb.JournalEntry | None = None, + interface_journal_entry: JournalEntry | pb.JournalEntry | None = None, interface_module_type_profile: ( str | ModuleTypeProfile | pb.ModuleTypeProfile | None ) = None, @@ -2893,7 +2834,7 @@ class FrontPort: def __new__( cls, device: str | Device | pb.Device | None = None, - module: str | Module | pb.Module | None = None, + module: Module | pb.Module | None = None, name: str | None = None, label: str | None = None, type: str | None = None, @@ -2903,9 +2844,7 @@ def __new__( description: str | None = None, mark_connected: bool | None = None, tags: list[str | Tag | pb.Tag] | None = None, - custom_fields: ( - dict[str, str | CustomFieldValue | pb.CustomFieldValue] | None - ) = None, + custom_fields: dict[str, CustomFieldValue | pb.CustomFieldValue] | None = None, metadata: dict[str, Any] | None = None, positions: int | None = None, owner: str | Owner | pb.Owner | None = None, @@ -2945,19 +2884,17 @@ def __new__( cls, object_asn: str | ASN | pb.ASN | None = None, object_asn_range: str | ASNRange | pb.ASNRange | None = None, - object_aggregate: str | Aggregate | pb.Aggregate | None = None, - object_cable: str | Cable | pb.Cable | None = None, - object_cable_path: str | CablePath | pb.CablePath | None = None, - object_cable_termination: ( - str | CableTermination | pb.CableTermination | None - ) = None, + object_aggregate: Aggregate | pb.Aggregate | None = None, + object_cable: Cable | pb.Cable | None = None, + object_cable_path: CablePath | pb.CablePath | None = None, + object_cable_termination: CableTermination | pb.CableTermination | None = None, object_circuit: str | Circuit | pb.Circuit | None = None, object_circuit_group: str | CircuitGroup | pb.CircuitGroup | None = None, object_circuit_group_assignment: ( - str | CircuitGroupAssignment | pb.CircuitGroupAssignment | None + CircuitGroupAssignment | pb.CircuitGroupAssignment | None ) = None, object_circuit_termination: ( - str | CircuitTermination | pb.CircuitTermination | None + CircuitTermination | pb.CircuitTermination | None ) = None, object_circuit_type: str | CircuitType | pb.CircuitType | None = None, object_cluster: str | Cluster | pb.Cluster | None = None, @@ -2969,7 +2906,7 @@ def __new__( ) = None, object_contact: str | Contact | pb.Contact | None = None, object_contact_assignment: ( - str | ContactAssignment | pb.ContactAssignment | None + ContactAssignment | pb.ContactAssignment | None ) = None, object_contact_group: str | ContactGroup | pb.ContactGroup | None = None, object_contact_role: str | ContactRole | pb.ContactRole | None = None, @@ -2979,13 +2916,13 @@ def __new__( object_device_type: str | DeviceType | pb.DeviceType | None = None, object_fhrp_group: str | FHRPGroup | pb.FHRPGroup | None = None, object_fhrp_group_assignment: ( - str | FHRPGroupAssignment | pb.FHRPGroupAssignment | None + FHRPGroupAssignment | pb.FHRPGroupAssignment | None ) = None, object_front_port: str | FrontPort | pb.FrontPort | None = None, object_ike_policy: str | IKEPolicy | pb.IKEPolicy | None = None, object_ike_proposal: str | IKEProposal | pb.IKEProposal | None = None, object_ip_address: str | IPAddress | pb.IPAddress | None = None, - object_ip_range: str | IPRange | pb.IPRange | None = None, + object_ip_range: IPRange | pb.IPRange | None = None, object_ip_sec_policy: str | IPSecPolicy | pb.IPSecPolicy | None = None, object_ip_sec_profile: str | IPSecProfile | pb.IPSecProfile | None = None, object_ip_sec_proposal: str | IPSecProposal | pb.IPSecProposal | None = None, @@ -2995,13 +2932,11 @@ def __new__( str | InventoryItemRole | pb.InventoryItemRole | None ) = None, object_l2vpn: str | L2VPN | pb.L2VPN | None = None, - object_l2vpn_termination: ( - str | L2VPNTermination | pb.L2VPNTermination | None - ) = None, + object_l2vpn_termination: L2VPNTermination | pb.L2VPNTermination | None = None, object_location: str | Location | pb.Location | None = None, object_mac_address: str | MACAddress | pb.MACAddress | None = None, object_manufacturer: str | Manufacturer | pb.Manufacturer | None = None, - object_module: str | Module | pb.Module | None = None, + object_module: Module | pb.Module | None = None, object_module_bay: str | ModuleBay | pb.ModuleBay | None = None, object_module_type: str | ModuleType | pb.ModuleType | None = None, object_platform: str | Platform | pb.Platform | None = None, @@ -3019,9 +2954,7 @@ def __new__( ) = None, object_rir: str | RIR | pb.RIR | None = None, object_rack: str | Rack | pb.Rack | None = None, - object_rack_reservation: ( - str | RackReservation | pb.RackReservation | None - ) = None, + object_rack_reservation: RackReservation | pb.RackReservation | None = None, object_rack_role: str | RackRole | pb.RackRole | None = None, object_rack_type: str | RackType | pb.RackType | None = None, object_rear_port: str | RearPort | pb.RearPort | None = None, @@ -3037,7 +2970,7 @@ def __new__( object_tunnel: str | Tunnel | pb.Tunnel | None = None, object_tunnel_group: str | TunnelGroup | pb.TunnelGroup | None = None, object_tunnel_termination: ( - str | TunnelTermination | pb.TunnelTermination | None + TunnelTermination | pb.TunnelTermination | None ) = None, object_vlan: str | VLAN | pb.VLAN | None = None, object_vlan_group: str | VLANGroup | pb.VLANGroup | None = None, @@ -3045,14 +2978,14 @@ def __new__( str | VLANTranslationPolicy | pb.VLANTranslationPolicy | None ) = None, object_vlan_translation_rule: ( - str | VLANTranslationRule | pb.VLANTranslationRule | None + VLANTranslationRule | pb.VLANTranslationRule | None ) = None, object_vm_interface: str | VMInterface | pb.VMInterface | None = None, object_vrf: str | VRF | pb.VRF | None = None, object_virtual_chassis: str | VirtualChassis | pb.VirtualChassis | None = None, object_virtual_circuit: str | VirtualCircuit | pb.VirtualCircuit | None = None, object_virtual_circuit_termination: ( - str | VirtualCircuitTermination | pb.VirtualCircuitTermination | None + VirtualCircuitTermination | pb.VirtualCircuitTermination | None ) = None, object_virtual_circuit_type: ( str | VirtualCircuitType | pb.VirtualCircuitType | None @@ -3066,12 +2999,12 @@ def __new__( object_wireless_lan_group: ( str | WirelessLANGroup | pb.WirelessLANGroup | None ) = None, - object_wireless_link: str | WirelessLink | pb.WirelessLink | None = None, + object_wireless_link: WirelessLink | pb.WirelessLink | None = None, object_custom_field: str | CustomField | pb.CustomField | None = None, object_custom_field_choice_set: ( str | CustomFieldChoiceSet | pb.CustomFieldChoiceSet | None ) = None, - object_journal_entry: str | JournalEntry | pb.JournalEntry | None = None, + object_journal_entry: JournalEntry | pb.JournalEntry | None = None, object_module_type_profile: ( str | ModuleTypeProfile | pb.ModuleTypeProfile | None ) = None, @@ -3349,9 +3282,7 @@ def __new__( preshared_key: str | None = None, comments: str | None = None, tags: list[str | Tag | pb.Tag] | None = None, - custom_fields: ( - dict[str, str | CustomFieldValue | pb.CustomFieldValue] | None - ) = None, + custom_fields: dict[str, CustomFieldValue | pb.CustomFieldValue] | None = None, proposals: list[str | IKEProposal | pb.IKEProposal] | None = None, metadata: dict[str, Any] | None = None, owner: str | Owner | pb.Owner | None = None, @@ -3392,9 +3323,7 @@ def __new__( sa_lifetime: int | None = None, comments: str | None = None, tags: list[str | Tag | pb.Tag] | None = None, - custom_fields: ( - dict[str, str | CustomFieldValue | pb.CustomFieldValue] | None - ) = None, + custom_fields: dict[str, CustomFieldValue | pb.CustomFieldValue] | None = None, metadata: dict[str, Any] | None = None, owner: str | Owner | pb.Owner | None = None, ) -> pb.IKEProposal: @@ -3438,9 +3367,7 @@ def __new__( description: str | None = None, comments: str | None = None, tags: list[str | Tag | pb.Tag] | None = None, - custom_fields: ( - dict[str, str | CustomFieldValue | pb.CustomFieldValue] | None - ) = None, + custom_fields: dict[str, CustomFieldValue | pb.CustomFieldValue] | None = None, metadata: dict[str, Any] | None = None, owner: str | Owner | pb.Owner | None = None, # shortcuts @@ -3542,9 +3469,7 @@ def __new__( comments: str | None = None, tags: list[str | Tag | pb.Tag] | None = None, mark_utilized: bool | None = None, - custom_fields: ( - dict[str, str | CustomFieldValue | pb.CustomFieldValue] | None - ) = None, + custom_fields: dict[str, CustomFieldValue | pb.CustomFieldValue] | None = None, mark_populated: bool | None = None, metadata: dict[str, Any] | None = None, owner: str | Owner | pb.Owner | None = None, @@ -3586,9 +3511,7 @@ def __new__( pfs_group: int | None = None, comments: str | None = None, tags: list[str | Tag | pb.Tag] | None = None, - custom_fields: ( - dict[str, str | CustomFieldValue | pb.CustomFieldValue] | None - ) = None, + custom_fields: dict[str, CustomFieldValue | pb.CustomFieldValue] | None = None, proposals: list[str | IPSecProposal | pb.IPSecProposal] | None = None, metadata: dict[str, Any] | None = None, owner: str | Owner | pb.Owner | None = None, @@ -3625,9 +3548,7 @@ def __new__( ipsec_policy: str | IPSecPolicy | pb.IPSecPolicy | None = None, comments: str | None = None, tags: list[str | Tag | pb.Tag] | None = None, - custom_fields: ( - dict[str, str | CustomFieldValue | pb.CustomFieldValue] | None - ) = None, + custom_fields: dict[str, CustomFieldValue | pb.CustomFieldValue] | None = None, metadata: dict[str, Any] | None = None, owner: str | Owner | pb.Owner | None = None, ) -> pb.IPSecProfile: @@ -3666,9 +3587,7 @@ def __new__( sa_lifetime_data: int | None = None, comments: str | None = None, tags: list[str | Tag | pb.Tag] | None = None, - custom_fields: ( - dict[str, str | CustomFieldValue | pb.CustomFieldValue] | None - ) = None, + custom_fields: dict[str, CustomFieldValue | pb.CustomFieldValue] | None = None, metadata: dict[str, Any] | None = None, owner: str | Owner | pb.Owner | None = None, ) -> pb.IPSecProposal: @@ -3699,7 +3618,7 @@ class Interface: def __new__( cls, device: str | Device | pb.Device | None = None, - module: str | Module | pb.Module | None = None, + module: Module | pb.Module | None = None, name: str | None = None, label: str | None = None, type: str | None = None, @@ -3730,9 +3649,7 @@ def __new__( mark_connected: bool | None = None, vrf: str | VRF | pb.VRF | None = None, tags: list[str | Tag | pb.Tag] | None = None, - custom_fields: ( - dict[str, str | CustomFieldValue | pb.CustomFieldValue] | None - ) = None, + custom_fields: dict[str, CustomFieldValue | pb.CustomFieldValue] | None = None, vdcs: list[str | VirtualDeviceContext | pb.VirtualDeviceContext] | None = None, tagged_vlans: list[str | VLAN | pb.VLAN] | None = None, wireless_lans: list[str | WirelessLAN | pb.WirelessLAN] | None = None, @@ -3859,9 +3776,7 @@ def __new__( component_power_port: str | PowerPort | pb.PowerPort | None = None, component_rear_port: str | RearPort | pb.RearPort | None = None, tags: list[str | Tag | pb.Tag] | None = None, - custom_fields: ( - dict[str, str | CustomFieldValue | pb.CustomFieldValue] | None - ) = None, + custom_fields: dict[str, CustomFieldValue | pb.CustomFieldValue] | None = None, metadata: dict[str, Any] | None = None, owner: str | Owner | pb.Owner | None = None, ) -> pb.InventoryItem: @@ -3925,9 +3840,7 @@ def __new__( color: str | None = None, description: str | None = None, tags: list[str | Tag | pb.Tag] | None = None, - custom_fields: ( - dict[str, str | CustomFieldValue | pb.CustomFieldValue] | None - ) = None, + custom_fields: dict[str, CustomFieldValue | pb.CustomFieldValue] | None = None, metadata: dict[str, Any] | None = None, owner: str | Owner | pb.Owner | None = None, comments: str | None = None, @@ -3964,9 +3877,7 @@ def __new__( comments: str | None = None, tenant: str | Tenant | pb.Tenant | None = None, tags: list[str | Tag | pb.Tag] | None = None, - custom_fields: ( - dict[str, str | CustomFieldValue | pb.CustomFieldValue] | None - ) = None, + custom_fields: dict[str, CustomFieldValue | pb.CustomFieldValue] | None = None, import_targets: list[str | RouteTarget | pb.RouteTarget] | None = None, export_targets: list[str | RouteTarget | pb.RouteTarget] | None = None, status: str | None = None, @@ -4011,21 +3922,21 @@ def __new__( assigned_object_vm_interface: str | VMInterface | pb.VMInterface | None = None, assigned_object_asn: str | ASN | pb.ASN | None = None, assigned_object_asn_range: str | ASNRange | pb.ASNRange | None = None, - assigned_object_aggregate: str | Aggregate | pb.Aggregate | None = None, - assigned_object_cable: str | Cable | pb.Cable | None = None, - assigned_object_cable_path: str | CablePath | pb.CablePath | None = None, + assigned_object_aggregate: Aggregate | pb.Aggregate | None = None, + assigned_object_cable: Cable | pb.Cable | None = None, + assigned_object_cable_path: CablePath | pb.CablePath | None = None, assigned_object_cable_termination: ( - str | CableTermination | pb.CableTermination | None + CableTermination | pb.CableTermination | None ) = None, assigned_object_circuit: str | Circuit | pb.Circuit | None = None, assigned_object_circuit_group: ( str | CircuitGroup | pb.CircuitGroup | None ) = None, assigned_object_circuit_group_assignment: ( - str | CircuitGroupAssignment | pb.CircuitGroupAssignment | None + CircuitGroupAssignment | pb.CircuitGroupAssignment | None ) = None, assigned_object_circuit_termination: ( - str | CircuitTermination | pb.CircuitTermination | None + CircuitTermination | pb.CircuitTermination | None ) = None, assigned_object_circuit_type: str | CircuitType | pb.CircuitType | None = None, assigned_object_cluster: str | Cluster | pb.Cluster | None = None, @@ -4039,7 +3950,7 @@ def __new__( ) = None, assigned_object_contact: str | Contact | pb.Contact | None = None, assigned_object_contact_assignment: ( - str | ContactAssignment | pb.ContactAssignment | None + ContactAssignment | pb.ContactAssignment | None ) = None, assigned_object_contact_group: ( str | ContactGroup | pb.ContactGroup | None @@ -4055,13 +3966,13 @@ def __new__( assigned_object_device_type: str | DeviceType | pb.DeviceType | None = None, assigned_object_fhrp_group: str | FHRPGroup | pb.FHRPGroup | None = None, assigned_object_fhrp_group_assignment: ( - str | FHRPGroupAssignment | pb.FHRPGroupAssignment | None + FHRPGroupAssignment | pb.FHRPGroupAssignment | None ) = None, assigned_object_front_port: str | FrontPort | pb.FrontPort | None = None, assigned_object_ike_policy: str | IKEPolicy | pb.IKEPolicy | None = None, assigned_object_ike_proposal: str | IKEProposal | pb.IKEProposal | None = None, assigned_object_ip_address: str | IPAddress | pb.IPAddress | None = None, - assigned_object_ip_range: str | IPRange | pb.IPRange | None = None, + assigned_object_ip_range: IPRange | pb.IPRange | None = None, assigned_object_ip_sec_policy: str | IPSecPolicy | pb.IPSecPolicy | None = None, assigned_object_ip_sec_profile: ( str | IPSecProfile | pb.IPSecProfile | None @@ -4075,19 +3986,17 @@ def __new__( assigned_object_inventory_item_role: ( str | InventoryItemRole | pb.InventoryItemRole | None ) = None, - assigned_object_journal_entry: ( - str | JournalEntry | pb.JournalEntry | None - ) = None, + assigned_object_journal_entry: JournalEntry | pb.JournalEntry | None = None, assigned_object_l2vpn: str | L2VPN | pb.L2VPN | None = None, assigned_object_l2vpn_termination: ( - str | L2VPNTermination | pb.L2VPNTermination | None + L2VPNTermination | pb.L2VPNTermination | None ) = None, assigned_object_location: str | Location | pb.Location | None = None, assigned_object_mac_address: str | MACAddress | pb.MACAddress | None = None, assigned_object_manufacturer: ( str | Manufacturer | pb.Manufacturer | None ) = None, - assigned_object_module: str | Module | pb.Module | None = None, + assigned_object_module: Module | pb.Module | None = None, assigned_object_module_bay: str | ModuleBay | pb.ModuleBay | None = None, assigned_object_module_type: str | ModuleType | pb.ModuleType | None = None, assigned_object_module_type_profile: ( @@ -4109,7 +4018,7 @@ def __new__( assigned_object_rir: str | RIR | pb.RIR | None = None, assigned_object_rack: str | Rack | pb.Rack | None = None, assigned_object_rack_reservation: ( - str | RackReservation | pb.RackReservation | None + RackReservation | pb.RackReservation | None ) = None, assigned_object_rack_role: str | RackRole | pb.RackRole | None = None, assigned_object_rack_type: str | RackType | pb.RackType | None = None, @@ -4126,14 +4035,14 @@ def __new__( assigned_object_tunnel: str | Tunnel | pb.Tunnel | None = None, assigned_object_tunnel_group: str | TunnelGroup | pb.TunnelGroup | None = None, assigned_object_tunnel_termination: ( - str | TunnelTermination | pb.TunnelTermination | None + TunnelTermination | pb.TunnelTermination | None ) = None, assigned_object_vlan_group: str | VLANGroup | pb.VLANGroup | None = None, assigned_object_vlan_translation_policy: ( str | VLANTranslationPolicy | pb.VLANTranslationPolicy | None ) = None, assigned_object_vlan_translation_rule: ( - str | VLANTranslationRule | pb.VLANTranslationRule | None + VLANTranslationRule | pb.VLANTranslationRule | None ) = None, assigned_object_vrf: str | VRF | pb.VRF | None = None, assigned_object_virtual_chassis: ( @@ -4143,7 +4052,7 @@ def __new__( str | VirtualCircuit | pb.VirtualCircuit | None ) = None, assigned_object_virtual_circuit_termination: ( - str | VirtualCircuitTermination | pb.VirtualCircuitTermination | None + VirtualCircuitTermination | pb.VirtualCircuitTermination | None ) = None, assigned_object_virtual_circuit_type: ( str | VirtualCircuitType | pb.VirtualCircuitType | None @@ -4159,16 +4068,12 @@ def __new__( assigned_object_wireless_lan_group: ( str | WirelessLANGroup | pb.WirelessLANGroup | None ) = None, - assigned_object_wireless_link: ( - str | WirelessLink | pb.WirelessLink | None - ) = None, + assigned_object_wireless_link: WirelessLink | pb.WirelessLink | None = None, assigned_object_custom_link: str | CustomLink | pb.CustomLink | None = None, assigned_object_owner: str | Owner | pb.Owner | None = None, assigned_object_owner_group: str | OwnerGroup | pb.OwnerGroup | None = None, tags: list[str | Tag | pb.Tag] | None = None, - custom_fields: ( - dict[str, str | CustomFieldValue | pb.CustomFieldValue] | None - ) = None, + custom_fields: dict[str, CustomFieldValue | pb.CustomFieldValue] | None = None, metadata: dict[str, Any] | None = None, ) -> pb.L2VPNTermination: """Create a new L2VPNTermination.""" @@ -4545,9 +4450,7 @@ def __new__( facility: str | None = None, description: str | None = None, tags: list[str | Tag | pb.Tag] | None = None, - custom_fields: ( - dict[str, str | CustomFieldValue | pb.CustomFieldValue] | None - ) = None, + custom_fields: dict[str, CustomFieldValue | pb.CustomFieldValue] | None = None, comments: str | None = None, metadata: dict[str, Any] | None = None, owner: str | Owner | pb.Owner | None = None, @@ -4589,9 +4492,7 @@ def __new__( description: str | None = None, comments: str | None = None, tags: list[str | Tag | pb.Tag] | None = None, - custom_fields: ( - dict[str, str | CustomFieldValue | pb.CustomFieldValue] | None - ) = None, + custom_fields: dict[str, CustomFieldValue | pb.CustomFieldValue] | None = None, metadata: dict[str, Any] | None = None, owner: str | Owner | pb.Owner | None = None, ) -> pb.MACAddress: @@ -4629,9 +4530,7 @@ def __new__( slug: str | None = None, description: str | None = None, tags: list[str | Tag | pb.Tag] | None = None, - custom_fields: ( - dict[str, str | CustomFieldValue | pb.CustomFieldValue] | None - ) = None, + custom_fields: dict[str, CustomFieldValue | pb.CustomFieldValue] | None = None, metadata: dict[str, Any] | None = None, owner: str | Owner | pb.Owner | None = None, comments: str | None = None, @@ -4668,9 +4567,7 @@ def __new__( description: str | None = None, comments: str | None = None, tags: list[str | Tag | pb.Tag] | None = None, - custom_fields: ( - dict[str, str | CustomFieldValue | pb.CustomFieldValue] | None - ) = None, + custom_fields: dict[str, CustomFieldValue | pb.CustomFieldValue] | None = None, metadata: dict[str, Any] | None = None, owner: str | Owner | pb.Owner | None = None, ) -> pb.Module: @@ -4705,16 +4602,14 @@ class ModuleBay: def __new__( cls, device: str | Device | pb.Device | None = None, - module: str | Module | pb.Module | None = None, + module: Module | pb.Module | None = None, name: str | None = None, - installed_module: str | Module | pb.Module | None = None, + installed_module: Module | pb.Module | None = None, label: str | None = None, position: str | None = None, description: str | None = None, tags: list[str | Tag | pb.Tag] | None = None, - custom_fields: ( - dict[str, str | CustomFieldValue | pb.CustomFieldValue] | None - ) = None, + custom_fields: dict[str, CustomFieldValue | pb.CustomFieldValue] | None = None, metadata: dict[str, Any] | None = None, owner: str | Owner | pb.Owner | None = None, ) -> pb.ModuleBay: @@ -4756,9 +4651,7 @@ def __new__( description: str | None = None, comments: str | None = None, tags: list[str | Tag | pb.Tag] | None = None, - custom_fields: ( - dict[str, str | CustomFieldValue | pb.CustomFieldValue] | None - ) = None, + custom_fields: dict[str, CustomFieldValue | pb.CustomFieldValue] | None = None, profile: str | ModuleTypeProfile | pb.ModuleTypeProfile | None = None, attributes: str | None = None, metadata: dict[str, Any] | None = None, @@ -4800,9 +4693,7 @@ def __new__( manufacturer: str | Manufacturer | pb.Manufacturer | None = None, description: str | None = None, tags: list[str | Tag | pb.Tag] | None = None, - custom_fields: ( - dict[str, str | CustomFieldValue | pb.CustomFieldValue] | None - ) = None, + custom_fields: dict[str, CustomFieldValue | pb.CustomFieldValue] | None = None, parent: str | Platform | pb.Platform | None = None, comments: str | None = None, metadata: dict[str, Any] | None = None, @@ -4850,9 +4741,7 @@ def __new__( tenant: str | Tenant | pb.Tenant | None = None, comments: str | None = None, tags: list[str | Tag | pb.Tag] | None = None, - custom_fields: ( - dict[str, str | CustomFieldValue | pb.CustomFieldValue] | None - ) = None, + custom_fields: dict[str, CustomFieldValue | pb.CustomFieldValue] | None = None, metadata: dict[str, Any] | None = None, owner: str | Owner | pb.Owner | None = None, ) -> pb.PowerFeed: @@ -4893,7 +4782,7 @@ class PowerOutlet: def __new__( cls, device: str | Device | pb.Device | None = None, - module: str | Module | pb.Module | None = None, + module: Module | pb.Module | None = None, name: str | None = None, label: str | None = None, type: str | None = None, @@ -4903,9 +4792,7 @@ def __new__( description: str | None = None, mark_connected: bool | None = None, tags: list[str | Tag | pb.Tag] | None = None, - custom_fields: ( - dict[str, str | CustomFieldValue | pb.CustomFieldValue] | None - ) = None, + custom_fields: dict[str, CustomFieldValue | pb.CustomFieldValue] | None = None, status: str | None = None, metadata: dict[str, Any] | None = None, owner: str | Owner | pb.Owner | None = None, @@ -4949,9 +4836,7 @@ def __new__( description: str | None = None, comments: str | None = None, tags: list[str | Tag | pb.Tag] | None = None, - custom_fields: ( - dict[str, str | CustomFieldValue | pb.CustomFieldValue] | None - ) = None, + custom_fields: dict[str, CustomFieldValue | pb.CustomFieldValue] | None = None, metadata: dict[str, Any] | None = None, owner: str | Owner | pb.Owner | None = None, ) -> pb.PowerPanel: @@ -4982,7 +4867,7 @@ class PowerPort: def __new__( cls, device: str | Device | pb.Device | None = None, - module: str | Module | pb.Module | None = None, + module: Module | pb.Module | None = None, name: str | None = None, label: str | None = None, type: str | None = None, @@ -4991,9 +4876,7 @@ def __new__( description: str | None = None, mark_connected: bool | None = None, tags: list[str | Tag | pb.Tag] | None = None, - custom_fields: ( - dict[str, str | CustomFieldValue | pb.CustomFieldValue] | None - ) = None, + custom_fields: dict[str, CustomFieldValue | pb.CustomFieldValue] | None = None, metadata: dict[str, Any] | None = None, owner: str | Owner | pb.Owner | None = None, ) -> pb.PowerPort: @@ -5042,9 +4925,7 @@ def __new__( description: str | None = None, comments: str | None = None, tags: list[str | Tag | pb.Tag] | None = None, - custom_fields: ( - dict[str, str | CustomFieldValue | pb.CustomFieldValue] | None - ) = None, + custom_fields: dict[str, CustomFieldValue | pb.CustomFieldValue] | None = None, metadata: dict[str, Any] | None = None, owner: str | Owner | pb.Owner | None = None, ) -> pb.Prefix: @@ -5094,9 +4975,7 @@ def __new__( description: str | None = None, comments: str | None = None, tags: list[str | Tag | pb.Tag] | None = None, - custom_fields: ( - dict[str, str | CustomFieldValue | pb.CustomFieldValue] | None - ) = None, + custom_fields: dict[str, CustomFieldValue | pb.CustomFieldValue] | None = None, accounts: list[str | ProviderAccount | pb.ProviderAccount] | None = None, asns: list[str | ASN | pb.ASN] | None = None, metadata: dict[str, Any] | None = None, @@ -5135,9 +5014,7 @@ def __new__( description: str | None = None, comments: str | None = None, tags: list[str | Tag | pb.Tag] | None = None, - custom_fields: ( - dict[str, str | CustomFieldValue | pb.CustomFieldValue] | None - ) = None, + custom_fields: dict[str, CustomFieldValue | pb.CustomFieldValue] | None = None, metadata: dict[str, Any] | None = None, owner: str | Owner | pb.Owner | None = None, ) -> pb.ProviderAccount: @@ -5172,9 +5049,7 @@ def __new__( description: str | None = None, comments: str | None = None, tags: list[str | Tag | pb.Tag] | None = None, - custom_fields: ( - dict[str, str | CustomFieldValue | pb.CustomFieldValue] | None - ) = None, + custom_fields: dict[str, CustomFieldValue | pb.CustomFieldValue] | None = None, metadata: dict[str, Any] | None = None, owner: str | Owner | pb.Owner | None = None, ) -> pb.ProviderNetwork: @@ -5208,9 +5083,7 @@ def __new__( is_private: bool | None = None, description: str | None = None, tags: list[str | Tag | pb.Tag] | None = None, - custom_fields: ( - dict[str, str | CustomFieldValue | pb.CustomFieldValue] | None - ) = None, + custom_fields: dict[str, CustomFieldValue | pb.CustomFieldValue] | None = None, metadata: dict[str, Any] | None = None, owner: str | Owner | pb.Owner | None = None, comments: str | None = None, @@ -5265,9 +5138,7 @@ def __new__( description: str | None = None, comments: str | None = None, tags: list[str | Tag | pb.Tag] | None = None, - custom_fields: ( - dict[str, str | CustomFieldValue | pb.CustomFieldValue] | None - ) = None, + custom_fields: dict[str, CustomFieldValue | pb.CustomFieldValue] | None = None, outer_height: int | None = None, metadata: dict[str, Any] | None = None, owner: str | Owner | pb.Owner | None = None, @@ -5328,9 +5199,7 @@ def __new__( description: str | None = None, comments: str | None = None, tags: list[str | Tag | pb.Tag] | None = None, - custom_fields: ( - dict[str, str | CustomFieldValue | pb.CustomFieldValue] | None - ) = None, + custom_fields: dict[str, CustomFieldValue | pb.CustomFieldValue] | None = None, status: str | None = None, metadata: dict[str, Any] | None = None, owner: str | Owner | pb.Owner | None = None, @@ -5367,9 +5236,7 @@ def __new__( color: str | None = None, description: str | None = None, tags: list[str | Tag | pb.Tag] | None = None, - custom_fields: ( - dict[str, str | CustomFieldValue | pb.CustomFieldValue] | None - ) = None, + custom_fields: dict[str, CustomFieldValue | pb.CustomFieldValue] | None = None, metadata: dict[str, Any] | None = None, owner: str | Owner | pb.Owner | None = None, comments: str | None = None, @@ -5416,9 +5283,7 @@ def __new__( mounting_depth: int | None = None, comments: str | None = None, tags: list[str | Tag | pb.Tag] | None = None, - custom_fields: ( - dict[str, str | CustomFieldValue | pb.CustomFieldValue] | None - ) = None, + custom_fields: dict[str, CustomFieldValue | pb.CustomFieldValue] | None = None, outer_height: int | None = None, metadata: dict[str, Any] | None = None, owner: str | Owner | pb.Owner | None = None, @@ -5462,7 +5327,7 @@ class RearPort: def __new__( cls, device: str | Device | pb.Device | None = None, - module: str | Module | pb.Module | None = None, + module: Module | pb.Module | None = None, name: str | None = None, label: str | None = None, type: str | None = None, @@ -5471,9 +5336,7 @@ def __new__( description: str | None = None, mark_connected: bool | None = None, tags: list[str | Tag | pb.Tag] | None = None, - custom_fields: ( - dict[str, str | CustomFieldValue | pb.CustomFieldValue] | None - ) = None, + custom_fields: dict[str, CustomFieldValue | pb.CustomFieldValue] | None = None, metadata: dict[str, Any] | None = None, owner: str | Owner | pb.Owner | None = None, ) -> pb.RearPort: @@ -5512,9 +5375,7 @@ def __new__( parent: str | Region | pb.Region | None = None, description: str | None = None, tags: list[str | Tag | pb.Tag] | None = None, - custom_fields: ( - dict[str, str | CustomFieldValue | pb.CustomFieldValue] | None - ) = None, + custom_fields: dict[str, CustomFieldValue | pb.CustomFieldValue] | None = None, comments: str | None = None, metadata: dict[str, Any] | None = None, owner: str | Owner | pb.Owner | None = None, @@ -5549,9 +5410,7 @@ def __new__( weight: int | None = None, description: str | None = None, tags: list[str | Tag | pb.Tag] | None = None, - custom_fields: ( - dict[str, str | CustomFieldValue | pb.CustomFieldValue] | None - ) = None, + custom_fields: dict[str, CustomFieldValue | pb.CustomFieldValue] | None = None, metadata: dict[str, Any] | None = None, owner: str | Owner | pb.Owner | None = None, comments: str | None = None, @@ -5585,9 +5444,7 @@ def __new__( description: str | None = None, comments: str | None = None, tags: list[str | Tag | pb.Tag] | None = None, - custom_fields: ( - dict[str, str | CustomFieldValue | pb.CustomFieldValue] | None - ) = None, + custom_fields: dict[str, CustomFieldValue | pb.CustomFieldValue] | None = None, metadata: dict[str, Any] | None = None, owner: str | Owner | pb.Owner | None = None, ) -> pb.RouteTarget: @@ -5623,9 +5480,7 @@ def __new__( description: str | None = None, comments: str | None = None, tags: list[str | Tag | pb.Tag] | None = None, - custom_fields: ( - dict[str, str | CustomFieldValue | pb.CustomFieldValue] | None - ) = None, + custom_fields: dict[str, CustomFieldValue | pb.CustomFieldValue] | None = None, ipaddresses: list[str | IPAddress | pb.IPAddress] | None = None, parent_object_device: str | Device | pb.Device | None = None, parent_object_fhrp_group: str | FHRPGroup | pb.FHRPGroup | None = None, @@ -5690,9 +5545,7 @@ def __new__( longitude: float | None = None, comments: str | None = None, tags: list[str | Tag | pb.Tag] | None = None, - custom_fields: ( - dict[str, str | CustomFieldValue | pb.CustomFieldValue] | None - ) = None, + custom_fields: dict[str, CustomFieldValue | pb.CustomFieldValue] | None = None, asns: list[str | ASN | pb.ASN] | None = None, metadata: dict[str, Any] | None = None, owner: str | Owner | pb.Owner | None = None, @@ -5740,9 +5593,7 @@ def __new__( parent: str | SiteGroup | pb.SiteGroup | None = None, description: str | None = None, tags: list[str | Tag | pb.Tag] | None = None, - custom_fields: ( - dict[str, str | CustomFieldValue | pb.CustomFieldValue] | None - ) = None, + custom_fields: dict[str, CustomFieldValue | pb.CustomFieldValue] | None = None, comments: str | None = None, metadata: dict[str, Any] | None = None, owner: str | Owner | pb.Owner | None = None, @@ -5805,9 +5656,7 @@ def __new__( description: str | None = None, comments: str | None = None, tags: list[str | Tag | pb.Tag] | None = None, - custom_fields: ( - dict[str, str | CustomFieldValue | pb.CustomFieldValue] | None - ) = None, + custom_fields: dict[str, CustomFieldValue | pb.CustomFieldValue] | None = None, metadata: dict[str, Any] | None = None, owner: str | Owner | pb.Owner | None = None, ) -> pb.Tenant: @@ -5841,9 +5690,7 @@ def __new__( parent: str | TenantGroup | pb.TenantGroup | None = None, description: str | None = None, tags: list[str | Tag | pb.Tag] | None = None, - custom_fields: ( - dict[str, str | CustomFieldValue | pb.CustomFieldValue] | None - ) = None, + custom_fields: dict[str, CustomFieldValue | pb.CustomFieldValue] | None = None, comments: str | None = None, metadata: dict[str, Any] | None = None, owner: str | Owner | pb.Owner | None = None, @@ -5883,9 +5730,7 @@ def __new__( description: str | None = None, comments: str | None = None, tags: list[str | Tag | pb.Tag] | None = None, - custom_fields: ( - dict[str, str | CustomFieldValue | pb.CustomFieldValue] | None - ) = None, + custom_fields: dict[str, CustomFieldValue | pb.CustomFieldValue] | None = None, metadata: dict[str, Any] | None = None, owner: str | Owner | pb.Owner | None = None, ) -> pb.Tunnel: @@ -5924,9 +5769,7 @@ def __new__( slug: str | None = None, description: str | None = None, tags: list[str | Tag | pb.Tag] | None = None, - custom_fields: ( - dict[str, str | CustomFieldValue | pb.CustomFieldValue] | None - ) = None, + custom_fields: dict[str, CustomFieldValue | pb.CustomFieldValue] | None = None, metadata: dict[str, Any] | None = None, owner: str | Owner | pb.Owner | None = None, comments: str | None = None, @@ -5958,19 +5801,19 @@ def __new__( role: str | None = None, termination_asn: str | ASN | pb.ASN | None = None, termination_asn_range: str | ASNRange | pb.ASNRange | None = None, - termination_aggregate: str | Aggregate | pb.Aggregate | None = None, - termination_cable: str | Cable | pb.Cable | None = None, - termination_cable_path: str | CablePath | pb.CablePath | None = None, + termination_aggregate: Aggregate | pb.Aggregate | None = None, + termination_cable: Cable | pb.Cable | None = None, + termination_cable_path: CablePath | pb.CablePath | None = None, termination_cable_termination: ( - str | CableTermination | pb.CableTermination | None + CableTermination | pb.CableTermination | None ) = None, termination_circuit: str | Circuit | pb.Circuit | None = None, termination_circuit_group: str | CircuitGroup | pb.CircuitGroup | None = None, termination_circuit_group_assignment: ( - str | CircuitGroupAssignment | pb.CircuitGroupAssignment | None + CircuitGroupAssignment | pb.CircuitGroupAssignment | None ) = None, termination_circuit_termination: ( - str | CircuitTermination | pb.CircuitTermination | None + CircuitTermination | pb.CircuitTermination | None ) = None, termination_circuit_type: str | CircuitType | pb.CircuitType | None = None, termination_cluster: str | Cluster | pb.Cluster | None = None, @@ -5982,7 +5825,7 @@ def __new__( ) = None, termination_contact: str | Contact | pb.Contact | None = None, termination_contact_assignment: ( - str | ContactAssignment | pb.ContactAssignment | None + ContactAssignment | pb.ContactAssignment | None ) = None, termination_contact_group: str | ContactGroup | pb.ContactGroup | None = None, termination_contact_role: str | ContactRole | pb.ContactRole | None = None, @@ -5992,13 +5835,13 @@ def __new__( termination_device_type: str | DeviceType | pb.DeviceType | None = None, termination_fhrp_group: str | FHRPGroup | pb.FHRPGroup | None = None, termination_fhrp_group_assignment: ( - str | FHRPGroupAssignment | pb.FHRPGroupAssignment | None + FHRPGroupAssignment | pb.FHRPGroupAssignment | None ) = None, termination_front_port: str | FrontPort | pb.FrontPort | None = None, termination_ike_policy: str | IKEPolicy | pb.IKEPolicy | None = None, termination_ike_proposal: str | IKEProposal | pb.IKEProposal | None = None, termination_ip_address: str | IPAddress | pb.IPAddress | None = None, - termination_ip_range: str | IPRange | pb.IPRange | None = None, + termination_ip_range: IPRange | pb.IPRange | None = None, termination_ip_sec_policy: str | IPSecPolicy | pb.IPSecPolicy | None = None, termination_ip_sec_profile: str | IPSecProfile | pb.IPSecProfile | None = None, termination_ip_sec_proposal: ( @@ -6013,12 +5856,12 @@ def __new__( ) = None, termination_l2vpn: str | L2VPN | pb.L2VPN | None = None, termination_l2vpn_termination: ( - str | L2VPNTermination | pb.L2VPNTermination | None + L2VPNTermination | pb.L2VPNTermination | None ) = None, termination_location: str | Location | pb.Location | None = None, termination_mac_address: str | MACAddress | pb.MACAddress | None = None, termination_manufacturer: str | Manufacturer | pb.Manufacturer | None = None, - termination_module: str | Module | pb.Module | None = None, + termination_module: Module | pb.Module | None = None, termination_module_bay: str | ModuleBay | pb.ModuleBay | None = None, termination_module_type: str | ModuleType | pb.ModuleType | None = None, termination_platform: str | Platform | pb.Platform | None = None, @@ -6037,7 +5880,7 @@ def __new__( termination_rir: str | RIR | pb.RIR | None = None, termination_rack: str | Rack | pb.Rack | None = None, termination_rack_reservation: ( - str | RackReservation | pb.RackReservation | None + RackReservation | pb.RackReservation | None ) = None, termination_rack_role: str | RackRole | pb.RackRole | None = None, termination_rack_type: str | RackType | pb.RackType | None = None, @@ -6054,7 +5897,7 @@ def __new__( termination_tunnel: str | Tunnel | pb.Tunnel | None = None, termination_tunnel_group: str | TunnelGroup | pb.TunnelGroup | None = None, termination_tunnel_termination: ( - str | TunnelTermination | pb.TunnelTermination | None + TunnelTermination | pb.TunnelTermination | None ) = None, termination_vlan: str | VLAN | pb.VLAN | None = None, termination_vlan_group: str | VLANGroup | pb.VLANGroup | None = None, @@ -6062,7 +5905,7 @@ def __new__( str | VLANTranslationPolicy | pb.VLANTranslationPolicy | None ) = None, termination_vlan_translation_rule: ( - str | VLANTranslationRule | pb.VLANTranslationRule | None + VLANTranslationRule | pb.VLANTranslationRule | None ) = None, termination_vm_interface: str | VMInterface | pb.VMInterface | None = None, termination_vrf: str | VRF | pb.VRF | None = None, @@ -6073,7 +5916,7 @@ def __new__( str | VirtualCircuit | pb.VirtualCircuit | None ) = None, termination_virtual_circuit_termination: ( - str | VirtualCircuitTermination | pb.VirtualCircuitTermination | None + VirtualCircuitTermination | pb.VirtualCircuitTermination | None ) = None, termination_virtual_circuit_type: ( str | VirtualCircuitType | pb.VirtualCircuitType | None @@ -6089,12 +5932,12 @@ def __new__( termination_wireless_lan_group: ( str | WirelessLANGroup | pb.WirelessLANGroup | None ) = None, - termination_wireless_link: str | WirelessLink | pb.WirelessLink | None = None, + termination_wireless_link: WirelessLink | pb.WirelessLink | None = None, termination_custom_field: str | CustomField | pb.CustomField | None = None, termination_custom_field_choice_set: ( str | CustomFieldChoiceSet | pb.CustomFieldChoiceSet | None ) = None, - termination_journal_entry: str | JournalEntry | pb.JournalEntry | None = None, + termination_journal_entry: JournalEntry | pb.JournalEntry | None = None, termination_module_type_profile: ( str | ModuleTypeProfile | pb.ModuleTypeProfile | None ) = None, @@ -6103,9 +5946,7 @@ def __new__( termination_owner_group: str | OwnerGroup | pb.OwnerGroup | None = None, outside_ip: str | IPAddress | pb.IPAddress | None = None, tags: list[str | Tag | pb.Tag] | None = None, - custom_fields: ( - dict[str, str | CustomFieldValue | pb.CustomFieldValue] | None - ) = None, + custom_fields: dict[str, CustomFieldValue | pb.CustomFieldValue] | None = None, metadata: dict[str, Any] | None = None, ) -> pb.TunnelTermination: """Create a new TunnelTermination.""" @@ -6460,9 +6301,7 @@ def __new__( qinq_svlan: str | VLAN | pb.VLAN | None = None, comments: str | None = None, tags: list[str | Tag | pb.Tag] | None = None, - custom_fields: ( - dict[str, str | CustomFieldValue | pb.CustomFieldValue] | None - ) = None, + custom_fields: dict[str, CustomFieldValue | pb.CustomFieldValue] | None = None, metadata: dict[str, Any] | None = None, owner: str | Owner | pb.Owner | None = None, ) -> pb.VLAN: @@ -6513,9 +6352,7 @@ def __new__( vid_ranges: list[int] | None = None, description: str | None = None, tags: list[str | Tag | pb.Tag] | None = None, - custom_fields: ( - dict[str, str | CustomFieldValue | pb.CustomFieldValue] | None - ) = None, + custom_fields: dict[str, CustomFieldValue | pb.CustomFieldValue] | None = None, tenant: str | Tenant | pb.Tenant | None = None, metadata: dict[str, Any] | None = None, owner: str | Owner | pb.Owner | None = None, @@ -6625,9 +6462,7 @@ def __new__( ) = None, vrf: str | VRF | pb.VRF | None = None, tags: list[str | Tag | pb.Tag] | None = None, - custom_fields: ( - dict[str, str | CustomFieldValue | pb.CustomFieldValue] | None - ) = None, + custom_fields: dict[str, CustomFieldValue | pb.CustomFieldValue] | None = None, tagged_vlans: list[str | VLAN | pb.VLAN] | None = None, metadata: dict[str, Any] | None = None, owner: str | Owner | pb.Owner | None = None, @@ -6683,9 +6518,7 @@ def __new__( description: str | None = None, comments: str | None = None, tags: list[str | Tag | pb.Tag] | None = None, - custom_fields: ( - dict[str, str | CustomFieldValue | pb.CustomFieldValue] | None - ) = None, + custom_fields: dict[str, CustomFieldValue | pb.CustomFieldValue] | None = None, import_targets: list[str | RouteTarget | pb.RouteTarget] | None = None, export_targets: list[str | RouteTarget | pb.RouteTarget] | None = None, metadata: dict[str, Any] | None = None, @@ -6727,9 +6560,7 @@ def __new__( description: str | None = None, comments: str | None = None, tags: list[str | Tag | pb.Tag] | None = None, - custom_fields: ( - dict[str, str | CustomFieldValue | pb.CustomFieldValue] | None - ) = None, + custom_fields: dict[str, CustomFieldValue | pb.CustomFieldValue] | None = None, metadata: dict[str, Any] | None = None, owner: str | Owner | pb.Owner | None = None, ) -> pb.VirtualChassis: @@ -6767,9 +6598,7 @@ def __new__( description: str | None = None, comments: str | None = None, tags: list[str | Tag | pb.Tag] | None = None, - custom_fields: ( - dict[str, str | CustomFieldValue | pb.CustomFieldValue] | None - ) = None, + custom_fields: dict[str, CustomFieldValue | pb.CustomFieldValue] | None = None, metadata: dict[str, Any] | None = None, owner: str | Owner | pb.Owner | None = None, ) -> pb.VirtualCircuit: @@ -6809,9 +6638,7 @@ def __new__( interface: str | Interface | pb.Interface | None = None, description: str | None = None, tags: list[str | Tag | pb.Tag] | None = None, - custom_fields: ( - dict[str, str | CustomFieldValue | pb.CustomFieldValue] | None - ) = None, + custom_fields: dict[str, CustomFieldValue | pb.CustomFieldValue] | None = None, metadata: dict[str, Any] | None = None, ) -> pb.VirtualCircuitTermination: """Create a new VirtualCircuitTermination.""" @@ -6842,9 +6669,7 @@ def __new__( color: str | None = None, description: str | None = None, tags: list[str | Tag | pb.Tag] | None = None, - custom_fields: ( - dict[str, str | CustomFieldValue | pb.CustomFieldValue] | None - ) = None, + custom_fields: dict[str, CustomFieldValue | pb.CustomFieldValue] | None = None, metadata: dict[str, Any] | None = None, owner: str | Owner | pb.Owner | None = None, comments: str | None = None, @@ -6883,9 +6708,7 @@ def __new__( description: str | None = None, comments: str | None = None, tags: list[str | Tag | pb.Tag] | None = None, - custom_fields: ( - dict[str, str | CustomFieldValue | pb.CustomFieldValue] | None - ) = None, + custom_fields: dict[str, CustomFieldValue | pb.CustomFieldValue] | None = None, metadata: dict[str, Any] | None = None, owner: str | Owner | pb.Owner | None = None, ) -> pb.VirtualDeviceContext: @@ -6926,9 +6749,7 @@ def __new__( description: str | None = None, size: int | None = None, tags: list[str | Tag | pb.Tag] | None = None, - custom_fields: ( - dict[str, str | CustomFieldValue | pb.CustomFieldValue] | None - ) = None, + custom_fields: dict[str, CustomFieldValue | pb.CustomFieldValue] | None = None, metadata: dict[str, Any] | None = None, owner: str | Owner | pb.Owner | None = None, ) -> pb.VirtualDisk: @@ -6973,9 +6794,7 @@ def __new__( description: str | None = None, comments: str | None = None, tags: list[str | Tag | pb.Tag] | None = None, - custom_fields: ( - dict[str, str | CustomFieldValue | pb.CustomFieldValue] | None - ) = None, + custom_fields: dict[str, CustomFieldValue | pb.CustomFieldValue] | None = None, metadata: dict[str, Any] | None = None, start_on_boot: str | None = None, owner: str | Owner | pb.Owner | None = None, @@ -7052,9 +6871,7 @@ def __new__( auth_psk: str | None = None, comments: str | None = None, tags: list[str | Tag | pb.Tag] | None = None, - custom_fields: ( - dict[str, str | CustomFieldValue | pb.CustomFieldValue] | None - ) = None, + custom_fields: dict[str, CustomFieldValue | pb.CustomFieldValue] | None = None, metadata: dict[str, Any] | None = None, owner: str | Owner | pb.Owner | None = None, ) -> pb.WirelessLAN: @@ -7103,9 +6920,7 @@ def __new__( parent: str | WirelessLANGroup | pb.WirelessLANGroup | None = None, description: str | None = None, tags: list[str | Tag | pb.Tag] | None = None, - custom_fields: ( - dict[str, str | CustomFieldValue | pb.CustomFieldValue] | None - ) = None, + custom_fields: dict[str, CustomFieldValue | pb.CustomFieldValue] | None = None, comments: str | None = None, metadata: dict[str, Any] | None = None, owner: str | Owner | pb.Owner | None = None, @@ -7148,9 +6963,7 @@ def __new__( description: str | None = None, comments: str | None = None, tags: list[str | Tag | pb.Tag] | None = None, - custom_fields: ( - dict[str, str | CustomFieldValue | pb.CustomFieldValue] | None - ) = None, + custom_fields: dict[str, CustomFieldValue | pb.CustomFieldValue] | None = None, metadata: dict[str, Any] | None = None, owner: str | Owner | pb.Owner | None = None, ) -> pb.WirelessLink: @@ -7281,21 +7094,21 @@ def __new__( cls, assigned_object_asn: str | ASN | pb.ASN | None = None, assigned_object_asn_range: str | ASNRange | pb.ASNRange | None = None, - assigned_object_aggregate: str | Aggregate | pb.Aggregate | None = None, - assigned_object_cable: str | Cable | pb.Cable | None = None, - assigned_object_cable_path: str | CablePath | pb.CablePath | None = None, + assigned_object_aggregate: Aggregate | pb.Aggregate | None = None, + assigned_object_cable: Cable | pb.Cable | None = None, + assigned_object_cable_path: CablePath | pb.CablePath | None = None, assigned_object_cable_termination: ( - str | CableTermination | pb.CableTermination | None + CableTermination | pb.CableTermination | None ) = None, assigned_object_circuit: str | Circuit | pb.Circuit | None = None, assigned_object_circuit_group: ( str | CircuitGroup | pb.CircuitGroup | None ) = None, assigned_object_circuit_group_assignment: ( - str | CircuitGroupAssignment | pb.CircuitGroupAssignment | None + CircuitGroupAssignment | pb.CircuitGroupAssignment | None ) = None, assigned_object_circuit_termination: ( - str | CircuitTermination | pb.CircuitTermination | None + CircuitTermination | pb.CircuitTermination | None ) = None, assigned_object_circuit_type: str | CircuitType | pb.CircuitType | None = None, assigned_object_cluster: str | Cluster | pb.Cluster | None = None, @@ -7309,7 +7122,7 @@ def __new__( ) = None, assigned_object_contact: str | Contact | pb.Contact | None = None, assigned_object_contact_assignment: ( - str | ContactAssignment | pb.ContactAssignment | None + ContactAssignment | pb.ContactAssignment | None ) = None, assigned_object_contact_group: ( str | ContactGroup | pb.ContactGroup | None @@ -7325,13 +7138,13 @@ def __new__( assigned_object_device_type: str | DeviceType | pb.DeviceType | None = None, assigned_object_fhrp_group: str | FHRPGroup | pb.FHRPGroup | None = None, assigned_object_fhrp_group_assignment: ( - str | FHRPGroupAssignment | pb.FHRPGroupAssignment | None + FHRPGroupAssignment | pb.FHRPGroupAssignment | None ) = None, assigned_object_front_port: str | FrontPort | pb.FrontPort | None = None, assigned_object_ike_policy: str | IKEPolicy | pb.IKEPolicy | None = None, assigned_object_ike_proposal: str | IKEProposal | pb.IKEProposal | None = None, assigned_object_ip_address: str | IPAddress | pb.IPAddress | None = None, - assigned_object_ip_range: str | IPRange | pb.IPRange | None = None, + assigned_object_ip_range: IPRange | pb.IPRange | None = None, assigned_object_ip_sec_policy: str | IPSecPolicy | pb.IPSecPolicy | None = None, assigned_object_ip_sec_profile: ( str | IPSecProfile | pb.IPSecProfile | None @@ -7346,19 +7159,17 @@ def __new__( assigned_object_inventory_item_role: ( str | InventoryItemRole | pb.InventoryItemRole | None ) = None, - assigned_object_journal_entry: ( - str | JournalEntry | pb.JournalEntry | None - ) = None, + assigned_object_journal_entry: JournalEntry | pb.JournalEntry | None = None, assigned_object_l2vpn: str | L2VPN | pb.L2VPN | None = None, assigned_object_l2vpn_termination: ( - str | L2VPNTermination | pb.L2VPNTermination | None + L2VPNTermination | pb.L2VPNTermination | None ) = None, assigned_object_location: str | Location | pb.Location | None = None, assigned_object_mac_address: str | MACAddress | pb.MACAddress | None = None, assigned_object_manufacturer: ( str | Manufacturer | pb.Manufacturer | None ) = None, - assigned_object_module: str | Module | pb.Module | None = None, + assigned_object_module: Module | pb.Module | None = None, assigned_object_module_bay: str | ModuleBay | pb.ModuleBay | None = None, assigned_object_module_type: str | ModuleType | pb.ModuleType | None = None, assigned_object_module_type_profile: ( @@ -7380,7 +7191,7 @@ def __new__( assigned_object_rir: str | RIR | pb.RIR | None = None, assigned_object_rack: str | Rack | pb.Rack | None = None, assigned_object_rack_reservation: ( - str | RackReservation | pb.RackReservation | None + RackReservation | pb.RackReservation | None ) = None, assigned_object_rack_role: str | RackRole | pb.RackRole | None = None, assigned_object_rack_type: str | RackType | pb.RackType | None = None, @@ -7397,7 +7208,7 @@ def __new__( assigned_object_tunnel: str | Tunnel | pb.Tunnel | None = None, assigned_object_tunnel_group: str | TunnelGroup | pb.TunnelGroup | None = None, assigned_object_tunnel_termination: ( - str | TunnelTermination | pb.TunnelTermination | None + TunnelTermination | pb.TunnelTermination | None ) = None, assigned_object_vlan: str | VLAN | pb.VLAN | None = None, assigned_object_vlan_group: str | VLANGroup | pb.VLANGroup | None = None, @@ -7405,7 +7216,7 @@ def __new__( str | VLANTranslationPolicy | pb.VLANTranslationPolicy | None ) = None, assigned_object_vlan_translation_rule: ( - str | VLANTranslationRule | pb.VLANTranslationRule | None + VLANTranslationRule | pb.VLANTranslationRule | None ) = None, assigned_object_vm_interface: str | VMInterface | pb.VMInterface | None = None, assigned_object_vrf: str | VRF | pb.VRF | None = None, @@ -7416,7 +7227,7 @@ def __new__( str | VirtualCircuit | pb.VirtualCircuit | None ) = None, assigned_object_virtual_circuit_termination: ( - str | VirtualCircuitTermination | pb.VirtualCircuitTermination | None + VirtualCircuitTermination | pb.VirtualCircuitTermination | None ) = None, assigned_object_virtual_circuit_type: ( str | VirtualCircuitType | pb.VirtualCircuitType | None @@ -7432,18 +7243,14 @@ def __new__( assigned_object_wireless_lan_group: ( str | WirelessLANGroup | pb.WirelessLANGroup | None ) = None, - assigned_object_wireless_link: ( - str | WirelessLink | pb.WirelessLink | None - ) = None, + assigned_object_wireless_link: WirelessLink | pb.WirelessLink | None = None, assigned_object_custom_link: str | CustomLink | pb.CustomLink | None = None, assigned_object_owner: str | Owner | pb.Owner | None = None, assigned_object_owner_group: str | OwnerGroup | pb.OwnerGroup | None = None, kind: str | None = None, comments: str | None = None, tags: list[str | Tag | pb.Tag] | None = None, - custom_fields: ( - dict[str, str | CustomFieldValue | pb.CustomFieldValue] | None - ) = None, + custom_fields: dict[str, CustomFieldValue | pb.CustomFieldValue] | None = None, metadata: dict[str, Any] | None = None, ) -> pb.JournalEntry: """Create a new JournalEntry.""" @@ -7816,9 +7623,7 @@ def __new__( schema: str | None = None, comments: str | None = None, tags: list[str | Tag | pb.Tag] | None = None, - custom_fields: ( - dict[str, str | CustomFieldValue | pb.CustomFieldValue] | None - ) = None, + custom_fields: dict[str, CustomFieldValue | pb.CustomFieldValue] | None = None, metadata: dict[str, Any] | None = None, owner: str | Owner | pb.Owner | None = None, ) -> pb.ModuleTypeProfile: @@ -7915,3 +7720,24 @@ def __new__( metadata=metadata, ) return result + + +class DeviceConfig: + """wrapper for netboxlabs.diode.sdk.diode.v1.ingester_pb2.DeviceConfig.""" + + def __new__( + cls, + startup: bytes | None = None, + running: bytes | None = None, + candidate: bytes | None = None, + metadata: dict[str, Any] | None = None, + ) -> pb.DeviceConfig: + """Create a new DeviceConfig.""" + metadata = convert_dict_to_struct(metadata) + result = pb.DeviceConfig( + startup=startup, + running=running, + candidate=candidate, + metadata=metadata, + ) + return result