boxd 0.2.16.dev829__tar.gz → 0.2.16.dev832__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- {boxd-0.2.16.dev829/src/boxd.egg-info → boxd-0.2.16.dev832}/PKG-INFO +1 -1
- {boxd-0.2.16.dev829 → boxd-0.2.16.dev832}/pyproject.toml +1 -1
- {boxd-0.2.16.dev829 → boxd-0.2.16.dev832}/src/boxd/__init__.py +2 -0
- {boxd-0.2.16.dev829 → boxd-0.2.16.dev832}/src/boxd/_generated/api_pb2.py +78 -78
- {boxd-0.2.16.dev829 → boxd-0.2.16.dev832}/src/boxd/_mappers.py +10 -0
- {boxd-0.2.16.dev829 → boxd-0.2.16.dev832}/src/boxd/models.py +14 -0
- {boxd-0.2.16.dev829 → boxd-0.2.16.dev832}/src/boxd/resources/orgs.py +39 -18
- {boxd-0.2.16.dev829 → boxd-0.2.16.dev832/src/boxd.egg-info}/PKG-INFO +1 -1
- {boxd-0.2.16.dev829 → boxd-0.2.16.dev832}/tests/test_namespaces.py +22 -3
- {boxd-0.2.16.dev829 → boxd-0.2.16.dev832}/LICENSE +0 -0
- {boxd-0.2.16.dev829 → boxd-0.2.16.dev832}/README.md +0 -0
- {boxd-0.2.16.dev829 → boxd-0.2.16.dev832}/setup.cfg +0 -0
- {boxd-0.2.16.dev829 → boxd-0.2.16.dev832}/src/boxd/_client.py +0 -0
- {boxd-0.2.16.dev829 → boxd-0.2.16.dev832}/src/boxd/_credentials.py +0 -0
- {boxd-0.2.16.dev829 → boxd-0.2.16.dev832}/src/boxd/_generated/__init__.py +0 -0
- {boxd-0.2.16.dev829 → boxd-0.2.16.dev832}/src/boxd/_generated/api_pb2_grpc.py +0 -0
- {boxd-0.2.16.dev829 → boxd-0.2.16.dev832}/src/boxd/_requests.py +0 -0
- {boxd-0.2.16.dev829 → boxd-0.2.16.dev832}/src/boxd/_streaming.py +0 -0
- {boxd-0.2.16.dev829 → boxd-0.2.16.dev832}/src/boxd/_transport.py +0 -0
- {boxd-0.2.16.dev829 → boxd-0.2.16.dev832}/src/boxd/_urls.py +0 -0
- {boxd-0.2.16.dev829 → boxd-0.2.16.dev832}/src/boxd/_version_check.py +0 -0
- {boxd-0.2.16.dev829 → boxd-0.2.16.dev832}/src/boxd/errors.py +0 -0
- {boxd-0.2.16.dev829 → boxd-0.2.16.dev832}/src/boxd/resources/__init__.py +0 -0
- {boxd-0.2.16.dev829 → boxd-0.2.16.dev832}/src/boxd/resources/account.py +0 -0
- {boxd-0.2.16.dev829 → boxd-0.2.16.dev832}/src/boxd/resources/credentials.py +0 -0
- {boxd-0.2.16.dev829 → boxd-0.2.16.dev832}/src/boxd/resources/disks.py +0 -0
- {boxd-0.2.16.dev829 → boxd-0.2.16.dev832}/src/boxd/resources/domains.py +0 -0
- {boxd-0.2.16.dev829 → boxd-0.2.16.dev832}/src/boxd/resources/machines.py +0 -0
- {boxd-0.2.16.dev829 → boxd-0.2.16.dev832}/src/boxd/resources/snapshots.py +0 -0
- {boxd-0.2.16.dev829 → boxd-0.2.16.dev832}/src/boxd/resources/teams.py +0 -0
- {boxd-0.2.16.dev829 → boxd-0.2.16.dev832}/src/boxd/resources/vars.py +0 -0
- {boxd-0.2.16.dev829 → boxd-0.2.16.dev832}/src/boxd.egg-info/SOURCES.txt +0 -0
- {boxd-0.2.16.dev829 → boxd-0.2.16.dev832}/src/boxd.egg-info/dependency_links.txt +0 -0
- {boxd-0.2.16.dev829 → boxd-0.2.16.dev832}/src/boxd.egg-info/requires.txt +0 -0
- {boxd-0.2.16.dev829 → boxd-0.2.16.dev832}/src/boxd.egg-info/top_level.txt +0 -0
- {boxd-0.2.16.dev829 → boxd-0.2.16.dev832}/tests/test_credentials.py +0 -0
- {boxd-0.2.16.dev829 → boxd-0.2.16.dev832}/tests/test_delete_self.py +0 -0
- {boxd-0.2.16.dev829 → boxd-0.2.16.dev832}/tests/test_mappers.py +0 -0
- {boxd-0.2.16.dev829 → boxd-0.2.16.dev832}/tests/test_requests.py +0 -0
- {boxd-0.2.16.dev829 → boxd-0.2.16.dev832}/tests/test_streaming.py +0 -0
- {boxd-0.2.16.dev829 → boxd-0.2.16.dev832}/tests/test_transport.py +0 -0
- {boxd-0.2.16.dev829 → boxd-0.2.16.dev832}/tests/test_urls.py +0 -0
- {boxd-0.2.16.dev829 → boxd-0.2.16.dev832}/tests/test_version_check.py +0 -0
|
@@ -69,6 +69,7 @@ from .models import (
|
|
|
69
69
|
MachineUsageReport,
|
|
70
70
|
Org,
|
|
71
71
|
OrgBotProtectionDefault,
|
|
72
|
+
OrgBotProtectionDefaultResult,
|
|
72
73
|
OrgDomain,
|
|
73
74
|
OrgIdleIgnoreOutboundDefault,
|
|
74
75
|
OrgIdleIgnoreOutboundDefaultResult,
|
|
@@ -151,6 +152,7 @@ __all__ = [
|
|
|
151
152
|
"MachineUsageReport",
|
|
152
153
|
"Org",
|
|
153
154
|
"OrgBotProtectionDefault",
|
|
155
|
+
"OrgBotProtectionDefaultResult",
|
|
154
156
|
"OrgDomain",
|
|
155
157
|
"OrgIdleIgnoreOutboundDefault",
|
|
156
158
|
"OrgIdleIgnoreOutboundDefaultResult",
|
|
@@ -24,7 +24,7 @@ _sym_db = _symbol_database.Default()
|
|
|
24
24
|
|
|
25
25
|
|
|
26
26
|
|
|
27
|
-
DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n\tapi.proto\x12\x0b\x62oxd.api.v1\"\xfb\x01\n\x08VmConfig\x12\x0c\n\x04vcpu\x18\x01 \x01(\r\x12\x14\n\x0cmemory_bytes\x18\x02 \x01(\x04\x12\x12\n\ndisk_bytes\x18\x03 \x01(\x04\x12#\n\x03srf\x18\x04 \x01(\x0b\x32\x16.boxd.api.v1.SrfConfig\x12+\n\x07network\x18\x05 \x01(\x0b\x32\x1a.boxd.api.v1.NetworkConfig\x12)\n\x07volumes\x18\x06 \x03(\x0b\x32\x18.boxd.api.v1.VolumeMount\x12!\n\x14idle_ignore_outbound\x18\x07 \x01(\x08H\x00\x88\x01\x01\x42\x17\n\x15_idle_ignore_outbound\"t\n\tSrfConfig\x12&\n\x19\x61uto_suspend_timeout_secs\x18\x01 \x01(\rH\x00\x88\x01\x01\x12!\n\x19\x61uto_destroy_timeout_secs\x18\x02 \x01(\rB\x1c\n\x1a_auto_suspend_timeout_secs\"F\n\rNetworkConfig\x12\x0b\n\x03ssh\x18\x01 \x01(\x08\x12(\n\x07proxies\x18\x02 \x03(\x0b\x32\x17.boxd.api.v1.ProxyEntry\"(\n\nProxyEntry\x12\x0c\n\x04name\x18\x01 \x01(\t\x12\x0c\n\x04port\x18\x02 \x01(\r\"E\n\x0bVolumeMount\x12\x0f\n\x07\x64isk_id\x18\x01 \x01(\t\x12\x12\n\nmount_path\x18\x02 \x01(\t\x12\x11\n\tread_only\x18\x03 \x01(\x08\"\xfb\x01\n\x0f\x43reateVmRequest\x12\x0c\n\x04name\x18\x01 \x01(\t\x12\x11\n\timage_ref\x18\x02 \x01(\t\x12 \n\x03\x65nv\x18\x05 \x03(\x0b\x32\x13.boxd.api.v1.EnvVar\x12\x0b\n\x03\x63md\x18\x06 \x03(\t\x12\x16\n\x0erestart_policy\x18\x07 \x01(\t\x12%\n\x06\x63onfig\x18\x08 \x01(\x0b\x32\x15.boxd.api.v1.VmConfig\x12\x0b\n\x03org\x18\t \x01(\t\x12\x0e\n\x06shared\x18\n \x01(\x08\x12\x10\n\x08networks\x18\x0b \x03(\t\x12\x10\n\x08isolated\x18\x0c \x01(\x08\x12\x0c\n\x04team\x18\r \x01(\tJ\x04\x08\x03\x10\x04J\x04\x08\x04\x10\x05\"$\n\x06\x45nvVar\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t\"\x84\x01\n\x10\x43reateVmResponse\x12\r\n\x05vm_id\x18\x01 \x01(\t\x12\x0c\n\x04name\x18\x02 \x01(\t\x12\x11\n\tpublic_ip\x18\x03 \x01(\t\x12\x0b\n\x03url\x18\x04 \x01(\t\x12\r\n\x05image\x18\x05 \x01(\t\x12\x0e\n\x06status\x18\x06 \x01(\t\x12\x14\n\x0c\x62oot_time_ms\x18\x07 \x01(\x04\"!\n\x10\x44\x65stroyVmRequest\x12\r\n\x05vm_id\x18\x01 \x01(\t\"\x13\n\x11\x44\x65stroyVmResponse\"\x16\n\x14SuggestVmNameRequest\"%\n\x15SuggestVmNameResponse\x12\x0c\n\x04name\x18\x01 \x01(\t\"2\n\x0fRenameVmRequest\x12\r\n\x05vm_id\x18\x01 \x01(\t\x12\x10\n\x08new_name\x18\x02 \x01(\t\" \n\x10RenameVmResponse\x12\x0c\n\x04name\x18\x01 \x01(\t\"7\n\x14SetVmNetworksRequest\x12\r\n\x05vm_id\x18\x01 \x01(\t\x12\x10\n\x08networks\x18\x02 \x03(\t\")\n\x15SetVmNetworksResponse\x12\x10\n\x08networks\x18\x01 \x03(\t\"6\n\x17SetVmEgressAllowRequest\x12\n\n\x02vm\x18\x01 \x01(\t\x12\x0f\n\x07\x65ntries\x18\x02 \x03(\t\"+\n\x18SetVmEgressAllowResponse\x12\x0f\n\x07\x65ntries\x18\x01 \x03(\t\"U\n\x11\x45xposePortRequest\x12\x11\n\x05vm_id\x18\x01 \x01(\tB\x02\x18\x01\x12\x0f\n\x07vm_port\x18\x02 \x01(\r\x12\x10\n\x08protocol\x18\x03 \x01(\t\x12\n\n\x02vm\x18\x04 \x01(\t\"y\n\x12\x45xposePortResponse\x12\x0f\n\x07vm_name\x18\x01 \x01(\t\x12\x0b\n\x03\x64ns\x18\x02 \x01(\t\x12\x13\n\x0bpublic_port\x18\x03 \x01(\r\x12\x0f\n\x07vm_port\x18\x04 \x01(\r\x12\x10\n\x08protocol\x18\x05 \x01(\t\x12\r\n\x05vm_id\x18\x06 \x01(\t\"E\n\x13UnexposePortRequest\x12\x11\n\x05vm_id\x18\x01 \x01(\tB\x02\x18\x01\x12\x0f\n\x07vm_port\x18\x02 \x01(\r\x12\n\n\x02vm\x18\x03 \x01(\t\"H\n\x14UnexposePortResponse\x12\x30\n\x07\x66orward\x18\x01 \x01(\x0b\x32\x1f.boxd.api.v1.ExposePortResponse\"%\n\x17ListExposedPortsRequest\x12\n\n\x02vm\x18\x01 \x01(\t\"M\n\x18ListExposedPortsResponse\x12\x31\n\x08\x66orwards\x18\x01 \x03(\x0b\x32\x1f.boxd.api.v1.ExposePortResponse\"g\n\rSetVarRequest\x12\x0b\n\x03org\x18\x01 \x01(\t\x12\x0c\n\x04kind\x18\x02 \x01(\t\x12\x0c\n\x04name\x18\x03 \x01(\t\x12\r\n\x05value\x18\x04 \x01(\t\x12\r\n\x05scope\x18\x05 \x01(\t\x12\x0f\n\x07\x64omains\x18\x06 \x03(\t\"\x1b\n\x08VarReply\x12\x0f\n\x07message\x18\x01 \x01(\t\",\n\x0fListVarsRequest\x12\x0b\n\x03org\x18\x01 \x01(\t\x12\x0c\n\x04kind\x18\x02 \x01(\t\"Z\n\x07VarItem\x12\x0c\n\x04name\x18\x01 \x01(\t\x12\x0c\n\x04kind\x18\x02 \x01(\t\x12\r\n\x05scope\x18\x03 \x01(\t\x12\r\n\x05value\x18\x04 \x01(\t\x12\x0f\n\x07\x64omains\x18\x06 \x03(\tJ\x04\x08\x05\x10\x06\"2\n\x0cVarListReply\x12\"\n\x04vars\x18\x01 \x03(\x0b\x32\x14.boxd.api.v1.VarItem\"J\n\x10RemoveVarRequest\x12\x0b\n\x03org\x18\x01 \x01(\t\x12\x0c\n\x04kind\x18\x02 \x01(\t\x12\x0c\n\x04name\x18\x03 \x01(\t\x12\r\n\x05scope\x18\x04 \x01(\t\"L\n\x15SetSecretScopeRequest\x12\x0b\n\x03org\x18\x01 \x01(\t\x12\x0c\n\x04name\x18\x02 \x01(\t\x12\x0c\n\x04\x66rom\x18\x03 \x01(\t\x12\n\n\x02to\x18\x04 \x01(\t\"\x1f\n\x0eStartVmRequest\x12\r\n\x05vm_id\x18\x01 \x01(\t\"\x11\n\x0fStartVmResponse\"\x1e\n\rStopVmRequest\x12\r\n\x05vm_id\x18\x01 \x01(\t\"\x10\n\x0eStopVmResponse\" \n\x0fRebootVmRequest\x12\r\n\x05vm_id\x18\x01 \x01(\t\"\x12\n\x10RebootVmResponse\"!\n\x10SuspendVmRequest\x12\r\n\x05vm_id\x18\x01 \x01(\t\"\'\n\x11SuspendVmResponse\x12\x12\n\nsuspend_us\x18\x01 \x01(\x04\" \n\x0fResumeVmRequest\x12\r\n\x05vm_id\x18\x01 \x01(\t\"%\n\x10ResumeVmResponse\x12\x11\n\tresume_us\x18\x01 \x01(\x04\"#\n\x12HibernateVmRequest\x12\r\n\x05vm_id\x18\x01 \x01(\t\"\x15\n\x13HibernateVmResponse\"\x1e\n\rWakeVmRequest\x12\r\n\x05vm_id\x18\x01 \x01(\t\"\x10\n\x0eWakeVmResponse\"\x1d\n\x0cGetVmRequest\x12\r\n\x05vm_id\x18\x01 \x01(\t\"\xa0\x06\n\rGetVmResponse\x12\r\n\x05vm_id\x18\x01 \x01(\t\x12\x0c\n\x04name\x18\x02 \x01(\t\x12\x11\n\timage_ref\x18\x03 \x01(\t\x12\x11\n\tpublic_ip\x18\x04 \x01(\t\x12\x0e\n\x06status\x18\x05 \x01(\t\x12\x16\n\x0erestart_policy\x18\x06 \x01(\t\x12\x12\n\ndisk_bytes\x18\x07 \x01(\x04\x12!\n\x19\x61uto_suspend_timeout_secs\x18\x08 \x01(\r\x12\x10\n\x08ssh_port\x18\t \x01(\r\x12\x0b\n\x03org\x18\n \x01(\t\x12\x13\n\x0b\x62illing_org\x18\x0b \x01(\t\x12\x15\n\raccess_domain\x18\x0c \x01(\t\x12#\n\x1b\x61uto_hibernate_timeout_secs\x18\r \x01(\r\x12\x0e\n\x06source\x18\x0e \x01(\t\x12\x0c\n\x04vcpu\x18\x0f \x01(\r\x12\x14\n\x0cmemory_bytes\x18\x10 \x01(\x04\x12\x12\n\ncreated_at\x18\x11 \x01(\x03\x12\x18\n\x10hibernated_at_ms\x18\x12 \x01(\x03\x12!\n\x19\x61uto_destroy_timeout_secs\x18\x13 \x01(\r\x12\x14\n\x0c\x62oot_time_ms\x18\x14 \x01(\x03\x12\x19\n\x11last_connected_ms\x18\x15 \x01(\x03\x12\x0e\n\x06org_id\x18\x16 \x01(\t\x12\x16\n\x0e\x62illing_org_id\x18\x17 \x01(\t\x12*\n\x0bsource_info\x18\x18 \x01(\x0b\x32\x15.boxd.api.v1.VmSource\x12\x10\n\x08networks\x18\x19 \x03(\t\x12\x10\n\x08isolated\x18\x1a \x01(\x08\x12\x35\n\x0e\x63ustom_domains\x18\x1b \x03(\x0b\x32\x1d.boxd.api.v1.CustomDomainInfo\x12\x14\n\x0c\x65gress_allow\x18\x1c \x03(\t\x12\x16\n\x0e\x62ot_protection\x18\x1d \x01(\x08\x12\x14\n\x0c\x64\x65lete_at_ms\x18\x1e \x01(\x03\x12\x19\n\x11\x64\x65lete_after_cron\x18\x1f \x01(\t\x12\x1c\n\x14idle_ignore_outbound\x18 \x01(\x08\x12\x1b\n\x13\x62ot_protection_mode\x18! \x01(\t\"C\n\x08VmSource\x12\x0c\n\x04kind\x18\x01 \x01(\t\x12\x0c\n\x04name\x18\x02 \x01(\t\x12\x0f\n\x07version\x18\x03 \x01(\x04\x12\n\n\x02id\x18\x04 \x01(\t\"3\n\x0eListVmsRequest\x12\x0b\n\x03org\x18\x01 \x01(\t\x12\x14\n\x0c\x61ll_contexts\x18\x02 \x01(\x08\"P\n\x0fListVmsResponse\x12\'\n\x03vms\x18\x01 \x03(\x0b\x32\x1a.boxd.api.v1.GetVmResponse\x12\x14\n\x0cssh_host_key\x18\x02 \x01(\t\"2\n\x11StreamLogsRequest\x12\r\n\x05vm_id\x18\x01 \x01(\t\x12\x0e\n\x06\x66ollow\x18\x02 \x01(\x08\"\x18\n\x08LogChunk\x12\x0c\n\x04\x64\x61ta\x18\x01 \x01(\x0c\"\xc1\x01\n\tExecChunk\x12\x0c\n\x04\x64\x61ta\x18\x01 \x01(\x0c\x12\r\n\x05stdin\x18\x02 \x01(\x08\x12\x0b\n\x03tty\x18\x03 \x01(\x08\x12\x0f\n\x07\x63ommand\x18\x04 \x01(\t\x12\r\n\x05vm_id\x18\x05 \x01(\t\x12\x11\n\texit_code\x18\x06 \x01(\x05\x12\x0c\n\x04\x63ols\x18\x07 \x01(\r\x12\x0c\n\x04rows\x18\x08 \x01(\r\x12\x15\n\rwindow_change\x18\t \x01(\x08\x12\x11\n\tis_stderr\x18\n \x01(\x08\x12\x11\n\tdevice_id\x18\x0b \x01(\t\"+\n\x0c\x44\x65sktopChunk\x12\r\n\x05vm_id\x18\x01 \x01(\t\x12\x0c\n\x04\x64\x61ta\x18\x02 \x01(\x0c\"$\n\x14\x43reateNetworkRequest\x12\x0c\n\x04name\x18\x01 \x01(\t\"+\n\x15\x43reateNetworkResponse\x12\x12\n\nnetwork_id\x18\x01 \x01(\t\"\x15\n\x13ListNetworksRequest\"B\n\x14ListNetworksResponse\x12*\n\x08networks\x18\x01 \x03(\x0b\x32\x18.boxd.api.v1.NetworkInfo\"A\n\x0bNetworkInfo\x12\x12\n\nnetwork_id\x18\x01 \x01(\t\x12\x0e\n\x06subnet\x18\x02 \x01(\t\x12\x0e\n\x06status\x18\x03 \x01(\t\"7\n\x16\x41\x64\x64\x43ustomDomainRequest\x12\r\n\x05vm_id\x18\x01 \x01(\t\x12\x0e\n\x06\x64omain\x18\x02 \x01(\t\"H\n\x17\x41\x64\x64\x43ustomDomainResponse\x12-\n\x06\x64omain\x18\x01 \x01(\x0b\x32\x1d.boxd.api.v1.CustomDomainInfo\"\x1a\n\x18ListCustomDomainsRequest\"K\n\x19ListCustomDomainsResponse\x12.\n\x07\x64omains\x18\x01 \x03(\x0b\x32\x1d.boxd.api.v1.CustomDomainInfo\"+\n\x19RemoveCustomDomainRequest\x12\x0e\n\x06\x64omain\x18\x01 \x01(\t\"\x1c\n\x1aRemoveCustomDomainResponse\"f\n\x10\x43ustomDomainInfo\x12\x0e\n\x06\x64omain\x18\x01 \x01(\t\x12\r\n\x05vm_id\x18\x02 \x01(\t\x12\x0f\n\x07vm_name\x18\x03 \x01(\t\x12\x0e\n\x06status\x18\x04 \x01(\t\x12\x12\n\nlast_error\x18\x05 \x01(\t\"5\n\x13SetOrgDomainRequest\x12\x0e\n\x06org_id\x18\x01 \x01(\t\x12\x0e\n\x06\x64omain\x18\x02 \x01(\t\"B\n\x14SetOrgDomainResponse\x12*\n\x06\x64omain\x18\x01 \x01(\x0b\x32\x1a.boxd.api.v1.OrgDomainInfo\"%\n\x13GetOrgDomainRequest\x12\x0e\n\x06org_id\x18\x01 \x01(\t\"B\n\x14GetOrgDomainResponse\x12*\n\x06\x64omain\x18\x01 \x01(\x0b\x32\x1a.boxd.api.v1.OrgDomainInfo\"\'\n\x15\x43learOrgDomainRequest\x12\x0e\n\x06org_id\x18\x01 \x01(\t\"\x18\n\x16\x43learOrgDomainResponse\"S\n\rOrgDomainInfo\x12\x0e\n\x06org_id\x18\x01 \x01(\t\x12\x0e\n\x06\x64omain\x18\x02 \x01(\t\x12\x0e\n\x06status\x18\x03 \x01(\t\x12\x12\n\nlast_error\x18\x04 \x01(\t\"\x12\n\x10GetConfigRequest\"8\n\x11GetConfigResponse\x12\x15\n\rdefault_image\x18\x01 \x01(\t\x12\x0c\n\x04zone\x18\x02 \x01(\t\"\x0f\n\rWhoamiRequest\"\x99\x01\n\x0eWhoamiResponse\x12\x0f\n\x07user_id\x18\x01 \x01(\t\x12\x1b\n\x13pubkey_fingerprints\x18\x02 \x03(\t\x12)\n\x07\x62illing\x18\x04 \x01(\x0b\x32\x18.boxd.api.v1.BillingInfo\x12\x14\n\x0c\x64isplay_name\x18\x05 \x01(\tJ\x04\x08\x03\x10\x04R\x12\x64\x65\x66\x61ult_network_id\"\xbb\x02\n\x0b\x42illingInfo\x12\x1b\n\x13subscription_status\x18\x03 \x01(\t\x12\x16\n\x0epast_due_since\x18\x06 \x01(\x03\x12\x0f\n\x07max_vms\x18\x07 \x01(\r\x12\x0c\n\x04vcpu\x18\x08 \x01(\r\x12\x14\n\x0cmemory_bytes\x18\t \x01(\x04\x12\x15\n\rbalance_micro\x18\n \x01(\x03\x12\x14\n\x0c\x62illing_mode\x18\x0b \x01(\t\x12\x10\n\x08\x63urrency\x18\x0c \x01(\t\x12\x14\n\x0c\x63\x65iling_vcpu\x18\r \x01(\r\x12\x1c\n\x14\x63\x65iling_memory_bytes\x18\x0e \x01(\x04J\x04\x08\x01\x10\x02J\x04\x08\x02\x10\x03J\x04\x08\x04\x10\x05J\x04\x08\x05\x10\x06R\x04tierR\x05shapeR\x12stripe_customer_idR\x16stripe_subscription_id\"\x12\n\x10ListPlansRequest\"9\n\x11ListPlansResponse\x12$\n\x05plans\x18\x01 \x03(\x0b\x32\x15.boxd.api.v1.PlanInfo\"\x85\x01\n\x08PlanInfo\x12\x13\n\x0bmonthly_eur\x18\x03 \x01(\r\x12\x12\n\nlookup_key\x18\x04 \x01(\t\x12\x13\n\x0b\x64\x65scription\x18\x05 \x01(\t\x12\x0c\n\x04vcpu\x18\x06 \x01(\r\x12\x14\n\x0cmemory_bytes\x18\x07 \x01(\x04J\x04\x08\x01\x10\x02J\x04\x08\x02\x10\x03R\x04tierR\x05shape\"\x13\n\x11GetBillingRequest\"?\n\x12GetBillingResponse\x12)\n\x07\x62illing\x18\x01 \x01(\x0b\x32\x18.boxd.api.v1.BillingInfo\"T\n\x1c\x43reateCheckoutSessionRequest\x12\x13\n\x0bsuccess_url\x18\x02 \x01(\t\x12\x12\n\ncancel_url\x18\x03 \x01(\tJ\x04\x08\x01\x10\x02R\x05shape\"5\n\x1d\x43reateCheckoutSessionResponse\x12\x14\n\x0c\x63heckout_url\x18\x01 \x01(\t\"7\n!CreateBillingPortalSessionRequest\x12\x12\n\nreturn_url\x18\x01 \x01(\t\"8\n\"CreateBillingPortalSessionResponse\x12\x12\n\nportal_url\x18\x01 \x01(\t\"-\n\x12\x43reateTokenRequest\x12\x17\n\x0f\x65xpires_in_secs\x18\x01 \x01(\x04\"8\n\x13\x43reateTokenResponse\x12\r\n\x05token\x18\x01 \x01(\t\x12\x12\n\nexpires_at\x18\x02 \x01(\x03\"\x13\n\x11ListTokensRequest\"<\n\x12ListTokensResponse\x12&\n\x06tokens\x18\x01 \x03(\x0b\x32\x16.boxd.api.v1.TokenInfo\"@\n\tTokenInfo\x12\x0b\n\x03jti\x18\x01 \x01(\t\x12\x12\n\ncreated_at\x18\x02 \x01(\x03\x12\x12\n\nexpires_at\x18\x03 \x01(\x03\"!\n\x12RevokeTokenRequest\x12\x0b\n\x03jti\x18\x01 \x01(\t\"\x15\n\x13RevokeTokenResponse\"E\n\x11LinkSshKeyRequest\x12\x0e\n\x06pubkey\x18\x01 \x01(\t\x12\x11\n\tdevice_id\x18\x02 \x01(\t\x12\r\n\x05label\x18\x03 \x01(\t\"\x14\n\x12LinkSshKeyResponse\"\x8e\x01\n\rForkVmRequest\x12\x14\n\x0csource_vm_id\x18\x01 \x01(\t\x12\x0c\n\x04name\x18\x02 \x01(\t\x12%\n\x06\x63onfig\x18\x03 \x01(\x0b\x32\x15.boxd.api.v1.VmConfig\x12\x0e\n\x06shared\x18\x04 \x01(\x08\x12\x10\n\x08networks\x18\x05 \x03(\t\x12\x10\n\x08isolated\x18\x06 \x01(\x08\"\x97\x01\n\x0e\x46orkVmResponse\x12\r\n\x05vm_id\x18\x01 \x01(\t\x12\x0c\n\x04name\x18\x02 \x01(\t\x12\x11\n\tpublic_ip\x18\x03 \x01(\t\x12\x0b\n\x03url\x18\x04 \x01(\t\x12\r\n\x05image\x18\x05 \x01(\t\x12\x0e\n\x06status\x18\x06 \x01(\t\x12\x13\n\x0b\x66orked_from\x18\x07 \x01(\t\x12\x14\n\x0c\x62oot_time_ms\x18\x08 \x01(\x04\"5\n\x12ListProxiesRequest\x12\x13\n\x07vm_name\x18\x01 \x01(\tB\x02\x18\x01\x12\n\n\x02vm\x18\x02 \x01(\t\">\n\x13ListProxiesResponse\x12\'\n\x07proxies\x18\x01 \x03(\x0b\x32\x16.boxd.api.v1.ProxyInfo\"\xac\x01\n\tProxyInfo\x12\x0c\n\x04name\x18\x01 \x01(\t\x12\x0f\n\x07vm_name\x18\x02 \x01(\t\x12\x0e\n\x06\x64omain\x18\x03 \x01(\t\x12\x0c\n\x04port\x18\x04 \x01(\r\x12\x12\n\nis_default\x18\x05 \x01(\x08\x12\x14\n\x0cport_display\x18\x06 \x01(\t\x12\r\n\x05vm_id\x18\x07 \x01(\t\x12\x11\n\tport_mode\x18\x08 \x01(\t\x12\x16\n\x0e\x65\x66\x66\x65\x63tive_port\x18\t \x01(\r\"\x17\n\x15ListProxyNodesRequest\"E\n\x16ListProxyNodesResponse\x12+\n\x07proxies\x18\x01 \x03(\x0b\x32\x1a.boxd.api.v1.ProxyNodeInfo\"-\n\rProxyNodeInfo\x12\n\n\x02id\x18\x01 \x01(\t\x12\x10\n\x08\x65ndpoint\x18\x02 \x01(\t\"Q\n\x12\x43reateProxyRequest\x12\x0c\n\x04name\x18\x01 \x01(\t\x12\x13\n\x07vm_name\x18\x02 \x01(\tB\x02\x18\x01\x12\x0c\n\x04port\x18\x03 \x01(\r\x12\n\n\x02vm\x18\x04 \x01(\t\"R\n\x13\x43reateProxyResponse\x12\x0c\n\x04name\x18\x01 \x01(\t\x12\x0f\n\x07vm_name\x18\x02 \x01(\t\x12\x0e\n\x06\x64omain\x18\x03 \x01(\t\x12\x0c\n\x04port\x18\x04 \x01(\r\"C\n\x12\x44\x65leteProxyRequest\x12\x0c\n\x04name\x18\x01 \x01(\t\x12\x13\n\x07vm_name\x18\x02 \x01(\tB\x02\x18\x01\x12\n\n\x02vm\x18\x03 \x01(\t\"\x15\n\x13\x44\x65leteProxyResponse\"R\n\x13SetProxyPortRequest\x12\x0c\n\x04name\x18\x01 \x01(\t\x12\x13\n\x07vm_name\x18\x02 \x01(\tB\x02\x18\x01\x12\x0c\n\x04port\x18\x03 \x01(\t\x12\n\n\x02vm\x18\x04 \x01(\t\"\x16\n\x14SetProxyPortResponse\">\n\x11UploadFileRequest\x12\r\n\x05vm_id\x18\x01 \x01(\t\x12\x0c\n\x04path\x18\x02 \x01(\t\x12\x0c\n\x04\x64\x61ta\x18\x03 \x01(\x0c\"+\n\x12UploadFileResponse\x12\x15\n\rbytes_written\x18\x01 \x01(\x04\"P\n\x0fUploadFileChunk\x12\r\n\x05vm_id\x18\x01 \x01(\t\x12\x0c\n\x04path\x18\x02 \x01(\t\x12\x12\n\ntotal_size\x18\x03 \x01(\x04\x12\x0c\n\x04\x64\x61ta\x18\x04 \x01(\x0c\"2\n\x13\x44ownloadFileRequest\x12\r\n\x05vm_id\x18\x01 \x01(\t\x12\x0c\n\x04path\x18\x02 \x01(\t\"$\n\x14\x44ownloadFileResponse\x12\x0c\n\x04\x64\x61ta\x18\x01 \x01(\x0c\"5\n\x11\x44ownloadFileChunk\x12\x12\n\ntotal_size\x18\x01 \x01(\x04\x12\x0c\n\x04\x64\x61ta\x18\x02 \x01(\x0c\"-\n\x0eListDirRequest\x12\r\n\x05vm_id\x18\x01 \x01(\t\x12\x0c\n\x04path\x18\x02 \x01(\t\"x\n\x08\x44irEntry\x12\x0c\n\x04name\x18\x01 \x01(\t\x12\x0e\n\x06is_dir\x18\x02 \x01(\x08\x12\x12\n\nsize_bytes\x18\x03 \x01(\x04\x12\x13\n\x0bpermissions\x18\x04 \x01(\t\x12\x13\n\x0bmodified_at\x18\x05 \x01(\x03\x12\x10\n\x08\x61\x64\x64\x65\x64_at\x18\x06 \x01(\x03\"L\n\x0fListDirResponse\x12&\n\x07\x65ntries\x18\x01 \x03(\x0b\x32\x15.boxd.api.v1.DirEntry\x12\x11\n\ttruncated\x18\x02 \x01(\x08\"+\n\x0cMkdirRequest\x12\r\n\x05vm_id\x18\x01 \x01(\t\x12\x0c\n\x04path\x18\x02 \x01(\t\"\x0f\n\rMkdirResponse\"F\n\x11RenamePathRequest\x12\r\n\x05vm_id\x18\x01 \x01(\t\x12\x10\n\x08old_path\x18\x02 \x01(\t\x12\x10\n\x08new_path\x18\x03 \x01(\t\"\x14\n\x12RenamePathResponse\"0\n\x11\x44\x65letePathRequest\x12\r\n\x05vm_id\x18\x01 \x01(\t\x12\x0c\n\x04path\x18\x02 \x01(\t\"\x14\n\x12\x44\x65letePathResponse\"D\n\x0f\x43opyPathRequest\x12\r\n\x05vm_id\x18\x01 \x01(\t\x12\x10\n\x08old_path\x18\x02 \x01(\t\x12\x10\n\x08new_path\x18\x03 \x01(\t\"\x12\n\x10\x43opyPathResponse\"1\n\x15\x43reateSnapshotRequest\x12\n\n\x02vm\x18\x01 \x01(\t\x12\x0c\n\x04name\x18\x02 \x01(\t\"\\\n\x16\x43reateSnapshotResponse\x12\x13\n\x0bsnapshot_id\x18\x01 \x01(\t\x12\x0c\n\x04name\x18\x02 \x01(\t\x12\x0f\n\x07version\x18\x03 \x01(\x04\x12\x0e\n\x06status\x18\x04 \x01(\t\"#\n\x14ListSnapshotsRequest\x12\x0b\n\x03org\x18\x01 \x01(\t\"E\n\x15ListSnapshotsResponse\x12,\n\tsnapshots\x18\x01 \x03(\x0b\x32\x19.boxd.api.v1.SnapshotInfo\"/\n\x12GetSnapshotRequest\x12\x0c\n\x04name\x18\x01 \x01(\t\x12\x0b\n\x03org\x18\x02 \x01(\t\"B\n\x13GetSnapshotResponse\x12+\n\x08snapshot\x18\x01 \x01(\x0b\x32\x19.boxd.api.v1.SnapshotInfo\"2\n\x15\x44\x65leteSnapshotRequest\x12\x0c\n\x04name\x18\x01 \x01(\t\x12\x0b\n\x03org\x18\x02 \x01(\t\"\x18\n\x16\x44\x65leteSnapshotResponse\"\x83\x01\n\x1b\x43reateVmFromSnapshotRequest\x12\x10\n\x08snapshot\x18\x01 \x01(\t\x12\x0c\n\x04name\x18\x02 \x01(\t\x12%\n\x06\x63onfig\x18\x03 \x01(\x0b\x32\x15.boxd.api.v1.VmConfig\x12\x0b\n\x03org\x18\x04 \x01(\t\x12\x10\n\x08isolated\x18\x05 \x01(\x08\"\xa3\x02\n\x0cSnapshotInfo\x12\x13\n\x0bsnapshot_id\x18\x01 \x01(\t\x12\x0c\n\x04name\x18\x02 \x01(\t\x12\x0f\n\x07version\x18\x03 \x01(\x04\x12\x0e\n\x06status\x18\x04 \x01(\t\x12\x12\n\nsize_bytes\x18\x07 \x01(\x04\x12\x12\n\nupdated_at\x18\x08 \x01(\x03\x12\x0c\n\x04vcpu\x18\t \x01(\r\x12\x14\n\x0cmemory_bytes\x18\n \x01(\x04\x12\x11\n\tuse_count\x18\x0b \x01(\x04\x12\x12\n\ncreated_at\x18\x0c \x01(\x03\x12\x16\n\x0e\x66\x61iled_version\x18\r \x01(\x04\x12\x16\n\x0e\x66\x61ilure_reason\x18\x0e \x01(\tJ\x04\x08\x05\x10\x06J\x04\x08\x06\x10\x07R\x0eready_replicasR\x10\x64\x65sired_replicas\"3\n\x17\x43reateCheckpointRequest\x12\n\n\x02vm\x18\x01 \x01(\t\x12\x0c\n\x04name\x18\x02 \x01(\t\"O\n\x18\x43reateCheckpointResponse\x12\x15\n\rcheckpoint_id\x18\x01 \x01(\t\x12\x0c\n\x04name\x18\x02 \x01(\t\x12\x0e\n\x06status\x18\x03 \x01(\t\"$\n\x16ListCheckpointsRequest\x12\n\n\x02vm\x18\x01 \x01(\t\"K\n\x17ListCheckpointsResponse\x12\x30\n\x0b\x63heckpoints\x18\x01 \x03(\x0b\x32\x1b.boxd.api.v1.CheckpointInfo\"3\n\x17\x44\x65leteCheckpointRequest\x12\n\n\x02vm\x18\x01 \x01(\t\x12\x0c\n\x04name\x18\x02 \x01(\t\"\x1a\n\x18\x44\x65leteCheckpointResponse\"4\n\x18RestoreCheckpointRequest\x12\n\n\x02vm\x18\x01 \x01(\t\x12\x0c\n\x04name\x18\x02 \x01(\t\"\x1b\n\x19RestoreCheckpointResponse\"\x94\x01\n\x0e\x43heckpointInfo\x12\x15\n\rcheckpoint_id\x18\x01 \x01(\t\x12\x0c\n\x04name\x18\x02 \x01(\t\x12\x0e\n\x06status\x18\x03 \x01(\t\x12\x12\n\nsize_bytes\x18\x04 \x01(\x04\x12\x12\n\ncreated_at\x18\x05 \x01(\x03\x12\x12\n\ncreated_by\x18\x06 \x01(\t\x12\x11\n\tavailable\x18\x07 \x01(\x08\";\n\x11\x43reateDiskRequest\x12\x0c\n\x04name\x18\x01 \x01(\t\x12\x12\n\nsize_bytes\x18\x02 \x01(\x04J\x04\x08\x03\x10\x04\"]\n\x12\x43reateDiskResponse\x12\x0f\n\x07\x64isk_id\x18\x01 \x01(\t\x12\x0c\n\x04name\x18\x02 \x01(\t\x12\x12\n\nsize_bytes\x18\x03 \x01(\x04\x12\x0e\n\x06status\x18\x04 \x01(\tJ\x04\x08\x05\x10\x06\"\x12\n\x10ListDisksRequest\"9\n\x11ListDisksResponse\x12$\n\x05\x64isks\x18\x01 \x03(\x0b\x32\x15.boxd.api.v1.DiskInfo\"\xaa\x01\n\x08\x44iskInfo\x12\x0f\n\x07\x64isk_id\x18\x01 \x01(\t\x12\x0c\n\x04name\x18\x02 \x01(\t\x12\x12\n\nsize_bytes\x18\x03 \x01(\x04\x12\x0e\n\x06status\x18\x04 \x01(\t\x12\x30\n\x0b\x61ttachments\x18\x06 \x03(\x0b\x32\x1b.boxd.api.v1.DiskAttachment\x12\x12\n\ncreated_at\x18\x08 \x01(\x03J\x04\x08\x05\x10\x06J\x04\x08\x07\x10\x08R\tworker_id\"X\n\x0e\x44iskAttachment\x12\r\n\x05vm_id\x18\x01 \x01(\t\x12\x0f\n\x07vm_name\x18\x02 \x01(\t\x12\x12\n\nmount_path\x18\x03 \x01(\t\x12\x12\n\nmount_mode\x18\x04 \x01(\t\"Z\n\x11\x41ttachDiskRequest\x12\x0f\n\x07\x64isk_id\x18\x01 \x01(\t\x12\r\n\x05vm_id\x18\x02 \x01(\t\x12\x12\n\nmount_path\x18\x03 \x01(\t\x12\x11\n\tread_only\x18\x04 \x01(\x08\"\x14\n\x12\x41ttachDiskResponse\"3\n\x11\x44\x65tachDiskRequest\x12\x0f\n\x07\x64isk_id\x18\x01 \x01(\t\x12\r\n\x05vm_id\x18\x02 \x01(\t\"\x14\n\x12\x44\x65tachDiskResponse\"%\n\x12\x44\x65stroyDiskRequest\x12\x0f\n\x07\x64isk_id\x18\x01 \x01(\t\"\x15\n\x13\x44\x65stroyDiskResponse\"C\n\x1cSetAutoSuspendTimeoutRequest\x12\r\n\x05vm_id\x18\x01 \x01(\t\x12\x14\n\x0ctimeout_secs\x18\x02 \x01(\r\"\x1f\n\x1dSetAutoSuspendTimeoutResponse\"E\n\x1eSetAutoHibernateTimeoutRequest\x12\r\n\x05vm_id\x18\x01 \x01(\t\x12\x14\n\x0ctimeout_secs\x18\x02 \x01(\r\"!\n\x1fSetAutoHibernateTimeoutResponse\"\\\n\x15SetDeleteAfterRequest\x12\r\n\x05vm_id\x18\x01 \x01(\t\x12\x19\n\x11\x64\x65lete_after_secs\x18\x02 \x01(\x04\x12\x19\n\x11\x64\x65lete_after_cron\x18\x03 \x01(\t\".\n\x16SetDeleteAfterResponse\x12\x14\n\x0c\x64\x65lete_at_ms\x18\x01 \x01(\x03\"G\n\x17SetBotProtectionRequest\x12\r\n\x05vm_id\x18\x01 \x01(\t\x12\x0f\n\x07\x65nabled\x18\x02 \x01(\x08\x12\x0c\n\x04mode\x18\x03 \x01(\t\"\x1a\n\x18SetBotProtectionResponse\">\n\x1cSetIdleIgnoreOutboundRequest\x12\r\n\x05vm_id\x18\x01 \x01(\t\x12\x0f\n\x07\x65nabled\x18\x02 \x01(\x08\"\x1f\n\x1dSetIdleIgnoreOutboundResponse\"W\n\x13\x43reateApiKeyRequest\x12\x0c\n\x04name\x18\x01 \x01(\t\x12\x17\n\x0f\x65xpires_in_secs\x18\x02 \x01(\x04\x12\x0b\n\x03org\x18\x03 \x01(\t\x12\x0c\n\x04kind\x18\x04 \x01(\t\"G\n\x14\x43reateApiKeyResponse\x12\n\n\x02id\x18\x01 \x01(\t\x12\x0f\n\x07\x61pi_key\x18\x02 \x01(\t\x12\x12\n\nexpires_at\x18\x03 \x01(\x03\"\x14\n\x12ListApiKeysRequest\"<\n\x13ListApiKeysResponse\x12%\n\x04keys\x18\x01 \x03(\x0b\x32\x17.boxd.api.v1.ApiKeyInfo\"\x93\x01\n\nApiKeyInfo\x12\n\n\x02id\x18\x01 \x01(\t\x12\x0c\n\x04name\x18\x02 \x01(\t\x12\x12\n\nkey_prefix\x18\x03 \x01(\t\x12\x12\n\ncreated_at\x18\x04 \x01(\x03\x12\x14\n\x0clast_used_at\x18\x05 \x01(\x03\x12\x12\n\nexpires_at\x18\x06 \x01(\x03\x12\x0b\n\x03org\x18\x07 \x01(\t\x12\x0c\n\x04kind\x18\x08 \x01(\t\"!\n\x13\x44\x65leteApiKeyRequest\x12\n\n\x02id\x18\x01 \x01(\t\"\x16\n\x14\x44\x65leteApiKeyResponse\"\x1f\n\x0eShareVmRequest\x12\r\n\x05vm_id\x18\x01 \x01(\t\"\x11\n\x0fShareVmResponse\"\x11\n\x0fListOrgsRequest\"W\n\x10ListOrgsResponse\x12%\n\x04orgs\x18\x01 \x03(\x0b\x32\x17.boxd.api.v1.OrgSummary\x12\x16\n\x0e\x64\x65\x66\x61ult_org_id\x18\x03 \x01(\tJ\x04\x08\x02\x10\x03\"F\n\nOrgSummary\x12\n\n\x02id\x18\x01 \x01(\t\x12\x0c\n\x04name\x18\x02 \x01(\t\x12\x10\n\x08is_admin\x18\x03 \x01(\x08\x12\x0c\n\x04slug\x18\x04 \x01(\t\"#\n\x14GetOrgBillingRequest\x12\x0b\n\x03org\x18\x01 \x01(\t\"\xd4\x02\n\x15GetOrgBillingResponse\x12\n\n\x02id\x18\x01 \x01(\t\x12\x0c\n\x04name\x18\x02 \x01(\t\x12\x10\n\x08is_admin\x18\x03 \x01(\x08\x12\x0f\n\x07max_vms\x18\x04 \x01(\r\x12\x0c\n\x04vcpu\x18\x05 \x01(\r\x12\x14\n\x0cmemory_bytes\x18\x06 \x01(\x04\x12\x10\n\x08vm_count\x18\x07 \x01(\r\x12%\n\x03vms\x18\x08 \x03(\x0b\x32\x18.boxd.api.v1.OrgBilledVm\x12\x15\n\rbalance_micro\x18\t \x01(\x03\x12\x14\n\x0c\x62illing_mode\x18\n \x01(\t\x12\x1b\n\x0e\x61\x63\x63ruing_micro\x18\x0b \x01(\x03H\x00\x88\x01\x01\x12\x10\n\x08\x63urrency\x18\x0c \x01(\t\x12\x14\n\x0c\x63\x65iling_vcpu\x18\r \x01(\r\x12\x1c\n\x14\x63\x65iling_memory_bytes\x18\x0e \x01(\x04\x42\x11\n\x0f_accruing_micro\"l\n\x0bOrgBilledVm\x12\x0c\n\x04name\x18\x01 \x01(\t\x12\r\n\x05owner\x18\x02 \x01(\t\x12\x0e\n\x06status\x18\x03 \x01(\t\x12\x0f\n\x07\x62illing\x18\x05 \x01(\t\x12\x12\n\nowner_name\x18\x06 \x01(\tJ\x04\x08\x04\x10\x05R\x05shape\"^\n\nUsageRates\x12\x17\n\x0fvcpu_hour_micro\x18\x01 \x01(\x03\x12\x1a\n\x12ram_gib_hour_micro\x18\x02 \x01(\x03\x12\x1b\n\x13\x64isk_gib_hour_micro\x18\x03 \x01(\x03\"U\n\x0cStateSeconds\x12\x0f\n\x07running\x18\x01 \x01(\x04\x12\x0f\n\x07standby\x18\x02 \x01(\x04\x12\x12\n\nhibernated\x18\x03 \x01(\x04\x12\x0f\n\x07stopped\x18\x04 \x01(\x04\"\xb7\x02\n\x07VmUsage\x12\r\n\x05vm_id\x18\x01 \x01(\t\x12\x0c\n\x04name\x18\x02 \x01(\t\x12\r\n\x05owner\x18\x03 \x01(\t\x12\x12\n\nowner_name\x18\x04 \x01(\t\x12\x0f\n\x07sharing\x18\x05 \x01(\t\x12\x0e\n\x06status\x18\x06 \x01(\t\x12\x0c\n\x04vcpu\x18\x07 \x01(\r\x12\x14\n\x0cmemory_bytes\x18\x08 \x01(\x04\x12\x12\n\ndisk_bytes\x18\t \x01(\x04\x12*\n\x07seconds\x18\n \x01(\x0b\x32\x19.boxd.api.v1.StateSeconds\x12\x12\n\nvcpu_hours\x18\x0b \x01(\x01\x12\x15\n\rram_gib_hours\x18\x0c \x01(\x01\x12\x16\n\x0e\x64isk_gib_hours\x18\r \x01(\x01\x12\x12\n\ncost_micro\x18\x0e \x01(\x03\x12\x10\n\x08\x63omplete\x18\x0f \x01(\x08\"?\n\x12GetOrgUsageRequest\x12\x0b\n\x03org\x18\x01 \x01(\t\x12\r\n\x05since\x18\x02 \x01(\x03\x12\r\n\x05until\x18\x03 \x01(\x03\"\xe5\x01\n\x13GetOrgUsageResponse\x12\x0e\n\x06org_id\x18\x01 \x01(\t\x12\x0b\n\x03org\x18\x02 \x01(\t\x12\x14\n\x0cperiod_start\x18\x03 \x01(\x03\x12\x12\n\nperiod_end\x18\x04 \x01(\x03\x12\x10\n\x08\x63urrency\x18\x05 \x01(\t\x12&\n\x05rates\x18\x06 \x01(\x0b\x32\x17.boxd.api.v1.UsageRates\x12\x18\n\x10total_cost_micro\x18\x07 \x01(\x03\x12!\n\x03vms\x18\x08 \x03(\x0b\x32\x14.boxd.api.v1.VmUsage\x12\x10\n\x08\x63omplete\x18\t \x01(\x08\"M\n\x11GetVmUsageRequest\x12\r\n\x05vm_id\x18\x01 \x01(\t\x12\r\n\x05since\x18\x02 \x01(\x03\x12\r\n\x05until\x18\x03 \x01(\x03\x12\x0b\n\x03org\x18\x04 \x01(\t\"\x9d\x01\n\x12GetVmUsageResponse\x12\x14\n\x0cperiod_start\x18\x01 \x01(\x03\x12\x12\n\nperiod_end\x18\x02 \x01(\x03\x12\x10\n\x08\x63urrency\x18\x03 \x01(\t\x12&\n\x05rates\x18\x04 \x01(\x0b\x32\x17.boxd.api.v1.UsageRates\x12#\n\x05usage\x18\x05 \x01(\x0b\x32\x14.boxd.api.v1.VmUsage\"n\n\x1aListBillingActivityRequest\x12\x0b\n\x03org\x18\x01 \x01(\t\x12\r\n\x05since\x18\x02 \x01(\x03\x12\r\n\x05until\x18\x03 \x01(\x03\x12\x12\n\npage_token\x18\x04 \x01(\t\x12\x11\n\tpage_size\x18\x05 \x01(\r\"`\n\x14\x42illingActivityEntry\x12\x10\n\x08\x65ntry_id\x18\x01 \x01(\t\x12\x0c\n\x04kind\x18\x02 \x01(\t\x12\x14\n\x0c\x61mount_micro\x18\x03 \x01(\x03\x12\x12\n\ncreated_at\x18\x04 \x01(\x03\"\x93\x01\n\x1bListBillingActivityResponse\x12\x10\n\x08\x63urrency\x18\x01 \x01(\t\x12\x15\n\rbalance_micro\x18\x02 \x01(\x03\x12\x32\n\x07\x65ntries\x18\x03 \x03(\x0b\x32!.boxd.api.v1.BillingActivityEntry\x12\x17\n\x0fnext_page_token\x18\x04 \x01(\t\"!\n\x10UnshareVmRequest\x12\r\n\x05vm_id\x18\x01 \x01(\t\"\x13\n\x11UnshareVmResponse\"m\n\x18SetBackupScheduleRequest\x12\n\n\x02vm\x18\x01 \x01(\t\x12\x15\n\rschedule_kind\x18\x02 \x01(\t\x12\x16\n\x0eschedule_value\x18\x03 \x01(\t\x12\x16\n\x0eretention_secs\x18\x04 \x01(\r\"\x1b\n\x19SetBackupScheduleResponse\"(\n\x1a\x43learBackupScheduleRequest\x12\n\n\x02vm\x18\x01 \x01(\t\"\x1d\n\x1b\x43learBackupScheduleResponse\"&\n\x18GetBackupScheduleRequest\x12\n\n\x02vm\x18\x01 \x01(\t\"\xa3\x01\n\x19GetBackupScheduleResponse\x12\x0f\n\x07\x65nabled\x18\x01 \x01(\x08\x12\x15\n\rschedule_kind\x18\x02 \x01(\t\x12\x16\n\x0eschedule_value\x18\x03 \x01(\t\x12\x16\n\x0eretention_secs\x18\x04 \x01(\r\x12\x16\n\x0enext_backup_at\x18\x05 \x01(\x03\x12\x16\n\x0elast_backup_at\x18\x06 \x01(\x03\" \n\x12ListBackupsRequest\x12\n\n\x02vm\x18\x01 \x01(\t\"\x9a\x01\n\nBackupInfo\x12\x11\n\tbackup_id\x18\x01 \x01(\t\x12\x0e\n\x06status\x18\x02 \x01(\t\x12\x12\n\nsize_bytes\x18\x03 \x01(\x04\x12\x10\n\x08\x63hecksum\x18\x04 \x01(\t\x12\x1b\n\x13points_to_backup_id\x18\x05 \x01(\t\x12\x12\n\ncreated_at\x18\x06 \x01(\x03\x12\x12\n\nexpires_at\x18\x07 \x01(\x03\"?\n\x13ListBackupsResponse\x12(\n\x07\x62\x61\x63kups\x18\x01 \x03(\x0b\x32\x17.boxd.api.v1.BackupInfo\"\"\n\x14TriggerBackupRequest\x12\n\n\x02vm\x18\x01 \x01(\t\"*\n\x15TriggerBackupResponse\x12\x11\n\tbackup_id\x18\x01 \x01(\t\"4\n\x13\x44\x65leteBackupRequest\x12\n\n\x02vm\x18\x01 \x01(\t\x12\x11\n\tbackup_id\x18\x02 \x01(\t\"\x16\n\x14\x44\x65leteBackupResponse\"5\n\x14RestoreBackupRequest\x12\n\n\x02vm\x18\x01 \x01(\t\x12\x11\n\tbackup_id\x18\x02 \x01(\t\"\x17\n\x15RestoreBackupResponse\"\x87\x01\n\x1bSetOrgBackupsDefaultRequest\x12\x0e\n\x06org_id\x18\x01 \x01(\t\x12\x18\n\x0bperiod_secs\x18\x02 \x01(\rH\x00\x88\x01\x01\x12\x1b\n\x0eretention_secs\x18\x03 \x01(\rH\x01\x88\x01\x01\x42\x0e\n\x0c_period_secsB\x11\n\x0f_retention_secs\"\\\n\x1cSetOrgBackupsDefaultResponse\x12\x0f\n\x07\x65nabled\x18\x01 \x01(\x08\x12\x13\n\x0bperiod_secs\x18\x02 \x01(\r\x12\x16\n\x0eretention_secs\x18\x03 \x01(\r\"-\n\x1bGetOrgBackupsDefaultRequest\x12\x0e\n\x06org_id\x18\x01 \x01(\t\"\\\n\x1cGetOrgBackupsDefaultResponse\x12\x0f\n\x07\x65nabled\x18\x01 \x01(\x08\x12\x13\n\x0bperiod_secs\x18\x02 \x01(\r\x12\x16\n\x0eretention_secs\x18\x03 \x01(\r\"v\n\x1cSetOrgMachineDefaultsRequest\x12\x0e\n\x06org_id\x18\x01 \x01(\t\x12\x11\n\x04vcpu\x18\x02 \x01(\rH\x00\x88\x01\x01\x12\x19\n\x0cmemory_bytes\x18\x03 \x01(\x04H\x01\x88\x01\x01\x42\x07\n\x05_vcpuB\x0f\n\r_memory_bytes\"\x1f\n\x1dSetOrgMachineDefaultsResponse\".\n\x1cGetOrgMachineDefaultsRequest\x12\x0e\n\x06org_id\x18\x01 \x01(\t\"D\n\x0fResizeVmRequest\x12\r\n\x05vm_id\x18\x01 \x01(\t\x12\x0c\n\x04vcpu\x18\x02 \x01(\r\x12\x14\n\x0cmemory_bytes\x18\x03 \x01(\x04\"H\n\x10ResizeVmResponse\x12\x0c\n\x04vcpu\x18\x01 \x01(\r\x12\x14\n\x0cmemory_bytes\x18\x02 \x01(\x04\x12\x10\n\x08rebooted\x18\x03 \x01(\x08\"\x84\x01\n\x1dGetOrgMachineDefaultsResponse\x12\x0b\n\x03set\x18\x01 \x01(\x08\x12\x0c\n\x04vcpu\x18\x02 \x01(\r\x12\x14\n\x0cmemory_bytes\x18\x03 \x01(\x04\x12\x14\n\x0c\x63\x65iling_vcpu\x18\x04 \x01(\r\x12\x1c\n\x14\x63\x65iling_memory_bytes\x18\x05 \x01(\x04\"r\n&SetOrgIdleIgnoreOutboundDefaultRequest\x12\x0e\n\x06org_id\x18\x01 \x01(\t\x12\x14\n\x07\x65nabled\x18\x02 \x01(\x08H\x00\x88\x01\x01\x12\x16\n\x0e\x61pply_existing\x18\x03 \x01(\x08\x42\n\n\x08_enabled\"]\n\'SetOrgIdleIgnoreOutboundDefaultResponse\x12\x18\n\x10machines_changed\x18\x01 \x01(\r\x12\x18\n\x10machines_skipped\x18\x02 \x01(\r\"8\n&GetOrgIdleIgnoreOutboundDefaultRequest\x12\x0e\n\x06org_id\x18\x01 \x01(\t\"G\n\'GetOrgIdleIgnoreOutboundDefaultResponse\x12\x0b\n\x03set\x18\x01 \x01(\x08\x12\x0f\n\x07\x65nabled\x18\x02 \x01(\x08\"A\n!SetOrgBotProtectionDefaultRequest\x12\x0e\n\x06org_id\x18\x01 \x01(\t\x12\x0c\n\x04mode\x18\x02 \x01(\t\"$\n\"SetOrgBotProtectionDefaultResponse\"3\n!GetOrgBotProtectionDefaultRequest\x12\x0e\n\x06org_id\x18\x01 \x01(\t\"?\n\"GetOrgBotProtectionDefaultResponse\x12\x0b\n\x03set\x18\x01 \x01(\x08\x12\x0c\n\x04mode\x18\x02 \x01(\t\" \n\x10\x43reateOrgRequest\x12\x0c\n\x04name\x18\x01 \x01(\t\"-\n\x11\x43reateOrgResponse\x12\n\n\x02id\x18\x01 \x01(\t\x12\x0c\n\x04name\x18\x02 \x01(\t\"0\n\x10RenameOrgRequest\x12\x0e\n\x06org_id\x18\x01 \x01(\t\x12\x0c\n\x04name\x18\x02 \x01(\t\"\x13\n\x11RenameOrgResponse\"&\n\x14GetOrgMembersRequest\x12\x0e\n\x06org_id\x18\x01 \x01(\t\"q\n\x15GetOrgMembersResponse\x12+\n\x07members\x18\x01 \x03(\x0b\x32\x1a.boxd.api.v1.OrgMemberInfo\x12+\n\x07invites\x18\x02 \x03(\x0b\x32\x1a.boxd.api.v1.OrgInviteInfo\"]\n\rOrgMemberInfo\x12\x0f\n\x07user_id\x18\x01 \x01(\t\x12\x0c\n\x04role\x18\x02 \x01(\t\x12\x14\n\x0c\x64isplay_name\x18\x03 \x01(\t\x12\x17\n\x0fgithub_username\x18\x04 \x01(\t\"w\n\rOrgInviteInfo\x12\r\n\x05token\x18\x01 \x01(\t\x12\r\n\x05\x65mail\x18\x02 \x01(\t\x12\x12\n\naccept_url\x18\x03 \x01(\t\x12\x12\n\ncreated_at\x18\x04 \x01(\x03\x12\x12\n\nexpires_at\x18\x05 \x01(\x03\x12\x0c\n\x04role\x18\x06 \x01(\t\"E\n\x16InviteOrgMemberRequest\x12\x0e\n\x06org_id\x18\x01 \x01(\t\x12\r\n\x05\x65mail\x18\x02 \x01(\t\x12\x0c\n\x04role\x18\x03 \x01(\t\"d\n\x17InviteOrgMemberResponse\x12\r\n\x05token\x18\x01 \x01(\t\x12\x12\n\naccept_url\x18\x02 \x01(\t\x12\x12\n\nexpires_at\x18\x03 \x01(\x03\x12\x12\n\ncreated_at\x18\x04 \x01(\x03\"\'\n\x16RevokeOrgInviteRequest\x12\r\n\x05token\x18\x01 \x01(\t\"\x19\n\x17RevokeOrgInviteResponse\"9\n\x16RemoveOrgMemberRequest\x12\x0e\n\x06org_id\x18\x01 \x01(\t\x12\x0f\n\x07user_id\x18\x02 \x01(\t\"\x19\n\x17RemoveOrgMemberResponse\"H\n\x17SetOrgMemberRoleRequest\x12\x0e\n\x06org_id\x18\x01 \x01(\t\x12\x0f\n\x07user_id\x18\x02 \x01(\t\x12\x0c\n\x04role\x18\x03 \x01(\t\"\x1a\n\x18SetOrgMemberRoleResponse\"\xc1\x01\n\x08TeamInfo\x12\n\n\x02id\x18\x01 \x01(\t\x12\x0e\n\x06org_id\x18\x02 \x01(\t\x12\x0c\n\x04name\x18\x03 \x01(\t\x12\x1a\n\x12\x63reated_by_user_id\x18\x04 \x01(\t\x12\x12\n\ncreated_at\x18\x05 \x01(\x03\x12\x10\n\x08is_admin\x18\x06 \x01(\x08\x12,\n\x07members\x18\x07 \x03(\x0b\x32\x1b.boxd.api.v1.TeamMemberInfo\x12\x1b\n\x13\x64\x65\x66\x61ult_snapshot_id\x18\x08 \x01(\t\"p\n\x0eTeamMemberInfo\x12\x0f\n\x07user_id\x18\x01 \x01(\t\x12\x0c\n\x04role\x18\x02 \x01(\t\x12\x14\n\x0c\x64isplay_name\x18\x03 \x01(\t\x12\x17\n\x0fgithub_username\x18\x04 \x01(\t\x12\x10\n\x08\x61\x64\x64\x65\x64_at\x18\x05 \x01(\x03\"\"\n\x10ListTeamsRequest\x12\x0e\n\x06org_id\x18\x01 \x01(\t\"9\n\x11ListTeamsResponse\x12$\n\x05teams\x18\x01 \x03(\x0b\x32\x15.boxd.api.v1.TeamInfo\"!\n\x0eGetTeamRequest\x12\x0f\n\x07team_id\x18\x01 \x01(\t\"1\n\x11\x43reateTeamRequest\x12\x0e\n\x06org_id\x18\x01 \x01(\t\x12\x0c\n\x04name\x18\x02 \x01(\t\"2\n\x11RenameTeamRequest\x12\x0f\n\x07team_id\x18\x01 \x01(\t\x12\x0c\n\x04name\x18\x02 \x01(\t\"\x14\n\x12RenameTeamResponse\"%\n\x12\x44\x65stroyTeamRequest\x12\x0f\n\x07team_id\x18\x01 \x01(\t\"\x15\n\x13\x44\x65stroyTeamResponse\"8\n\x14\x41\x64\x64TeamMemberRequest\x12\x0f\n\x07team_id\x18\x01 \x01(\t\x12\x0f\n\x07user_id\x18\x02 \x01(\t\"\x17\n\x15\x41\x64\x64TeamMemberResponse\";\n\x17RemoveTeamMemberRequest\x12\x0f\n\x07team_id\x18\x01 \x01(\t\x12\x0f\n\x07user_id\x18\x02 \x01(\t\"\x1a\n\x18RemoveTeamMemberResponse\"J\n\x18SetTeamMemberRoleRequest\x12\x0f\n\x07team_id\x18\x01 \x01(\t\x12\x0f\n\x07user_id\x18\x02 \x01(\t\x12\x0c\n\x04role\x18\x03 \x01(\t\"\x1b\n\x19SetTeamMemberRoleResponse\"E\n\x1dSetTeamDefaultSnapshotRequest\x12\x0f\n\x07team_id\x18\x01 \x01(\t\x12\x13\n\x0bsnapshot_id\x18\x02 \x01(\t\" \n\x1eSetTeamDefaultSnapshotResponse2\xeeP\n\x07\x42oxdApi\x12G\n\x08\x43reateVm\x12\x1c.boxd.api.v1.CreateVmRequest\x1a\x1d.boxd.api.v1.CreateVmResponse\x12J\n\tDestroyVm\x12\x1d.boxd.api.v1.DestroyVmRequest\x1a\x1e.boxd.api.v1.DestroyVmResponse\x12G\n\x08RenameVm\x12\x1c.boxd.api.v1.RenameVmRequest\x1a\x1d.boxd.api.v1.RenameVmResponse\x12V\n\rSetVmNetworks\x12!.boxd.api.v1.SetVmNetworksRequest\x1a\".boxd.api.v1.SetVmNetworksResponse\x12_\n\x10SetVmEgressAllow\x12$.boxd.api.v1.SetVmEgressAllowRequest\x1a%.boxd.api.v1.SetVmEgressAllowResponse\x12\x44\n\x07StartVm\x12\x1b.boxd.api.v1.StartVmRequest\x1a\x1c.boxd.api.v1.StartVmResponse\x12\x41\n\x06StopVm\x12\x1a.boxd.api.v1.StopVmRequest\x1a\x1b.boxd.api.v1.StopVmResponse\x12G\n\x08RebootVm\x12\x1c.boxd.api.v1.RebootVmRequest\x1a\x1d.boxd.api.v1.RebootVmResponse\x12>\n\x05GetVm\x12\x19.boxd.api.v1.GetVmRequest\x1a\x1a.boxd.api.v1.GetVmResponse\x12\x44\n\x07ListVms\x12\x1b.boxd.api.v1.ListVmsRequest\x1a\x1c.boxd.api.v1.ListVmsResponse\x12V\n\rSuggestVmName\x12!.boxd.api.v1.SuggestVmNameRequest\x1a\".boxd.api.v1.SuggestVmNameResponse\x12M\n\nExposePort\x12\x1e.boxd.api.v1.ExposePortRequest\x1a\x1f.boxd.api.v1.ExposePortResponse\x12S\n\x0cUnexposePort\x12 .boxd.api.v1.UnexposePortRequest\x1a!.boxd.api.v1.UnexposePortResponse\x12_\n\x10ListExposedPorts\x12$.boxd.api.v1.ListExposedPortsRequest\x1a%.boxd.api.v1.ListExposedPortsResponse\x12;\n\x06SetVar\x12\x1a.boxd.api.v1.SetVarRequest\x1a\x15.boxd.api.v1.VarReply\x12\x43\n\x08ListVars\x12\x1c.boxd.api.v1.ListVarsRequest\x1a\x19.boxd.api.v1.VarListReply\x12\x41\n\tRemoveVar\x12\x1d.boxd.api.v1.RemoveVarRequest\x1a\x15.boxd.api.v1.VarReply\x12K\n\x0eSetSecretScope\x12\".boxd.api.v1.SetSecretScopeRequest\x1a\x15.boxd.api.v1.VarReply\x12\x45\n\nStreamLogs\x12\x1e.boxd.api.v1.StreamLogsRequest\x1a\x15.boxd.api.v1.LogChunk0\x01\x12:\n\x04\x45xec\x12\x16.boxd.api.v1.ExecChunk\x1a\x16.boxd.api.v1.ExecChunk(\x01\x30\x01\x12I\n\rDesktopTunnel\x12\x19.boxd.api.v1.DesktopChunk\x1a\x19.boxd.api.v1.DesktopChunk(\x01\x30\x01\x12V\n\rCreateNetwork\x12!.boxd.api.v1.CreateNetworkRequest\x1a\".boxd.api.v1.CreateNetworkResponse\x12S\n\x0cListNetworks\x12 .boxd.api.v1.ListNetworksRequest\x1a!.boxd.api.v1.ListNetworksResponse\x12\\\n\x0f\x41\x64\x64\x43ustomDomain\x12#.boxd.api.v1.AddCustomDomainRequest\x1a$.boxd.api.v1.AddCustomDomainResponse\x12\x62\n\x11ListCustomDomains\x12%.boxd.api.v1.ListCustomDomainsRequest\x1a&.boxd.api.v1.ListCustomDomainsResponse\x12\x65\n\x12RemoveCustomDomain\x12&.boxd.api.v1.RemoveCustomDomainRequest\x1a\'.boxd.api.v1.RemoveCustomDomainResponse\x12S\n\x0cSetOrgDomain\x12 .boxd.api.v1.SetOrgDomainRequest\x1a!.boxd.api.v1.SetOrgDomainResponse\x12S\n\x0cGetOrgDomain\x12 .boxd.api.v1.GetOrgDomainRequest\x1a!.boxd.api.v1.GetOrgDomainResponse\x12Y\n\x0e\x43learOrgDomain\x12\".boxd.api.v1.ClearOrgDomainRequest\x1a#.boxd.api.v1.ClearOrgDomainResponse\x12\x41\n\x06Whoami\x12\x1a.boxd.api.v1.WhoamiRequest\x1a\x1b.boxd.api.v1.WhoamiResponse\x12P\n\x0b\x43reateToken\x12\x1f.boxd.api.v1.CreateTokenRequest\x1a .boxd.api.v1.CreateTokenResponse\x12M\n\nListTokens\x12\x1e.boxd.api.v1.ListTokensRequest\x1a\x1f.boxd.api.v1.ListTokensResponse\x12P\n\x0bRevokeToken\x12\x1f.boxd.api.v1.RevokeTokenRequest\x1a .boxd.api.v1.RevokeTokenResponse\x12M\n\nLinkSshKey\x12\x1e.boxd.api.v1.LinkSshKeyRequest\x1a\x1f.boxd.api.v1.LinkSshKeyResponse\x12J\n\tGetConfig\x12\x1d.boxd.api.v1.GetConfigRequest\x1a\x1e.boxd.api.v1.GetConfigResponse\x12\x41\n\x06\x46orkVm\x12\x1a.boxd.api.v1.ForkVmRequest\x1a\x1b.boxd.api.v1.ForkVmResponse\x12P\n\x0bListProxies\x12\x1f.boxd.api.v1.ListProxiesRequest\x1a .boxd.api.v1.ListProxiesResponse\x12Y\n\x0eListProxyNodes\x12\".boxd.api.v1.ListProxyNodesRequest\x1a#.boxd.api.v1.ListProxyNodesResponse\x12P\n\x0b\x43reateProxy\x12\x1f.boxd.api.v1.CreateProxyRequest\x1a .boxd.api.v1.CreateProxyResponse\x12P\n\x0b\x44\x65leteProxy\x12\x1f.boxd.api.v1.DeleteProxyRequest\x1a .boxd.api.v1.DeleteProxyResponse\x12S\n\x0cSetProxyPort\x12 .boxd.api.v1.SetProxyPortRequest\x1a!.boxd.api.v1.SetProxyPortResponse\x12M\n\nUploadFile\x12\x1e.boxd.api.v1.UploadFileRequest\x1a\x1f.boxd.api.v1.UploadFileResponse\x12S\n\x10UploadFileStream\x12\x1c.boxd.api.v1.UploadFileChunk\x1a\x1f.boxd.api.v1.UploadFileResponse(\x01\x12S\n\x0c\x44ownloadFile\x12 .boxd.api.v1.DownloadFileRequest\x1a!.boxd.api.v1.DownloadFileResponse\x12X\n\x12\x44ownloadFileStream\x12 .boxd.api.v1.DownloadFileRequest\x1a\x1e.boxd.api.v1.DownloadFileChunk0\x01\x12\x44\n\x07ListDir\x12\x1b.boxd.api.v1.ListDirRequest\x1a\x1c.boxd.api.v1.ListDirResponse\x12>\n\x05Mkdir\x12\x19.boxd.api.v1.MkdirRequest\x1a\x1a.boxd.api.v1.MkdirResponse\x12M\n\nRenamePath\x12\x1e.boxd.api.v1.RenamePathRequest\x1a\x1f.boxd.api.v1.RenamePathResponse\x12M\n\nDeletePath\x12\x1e.boxd.api.v1.DeletePathRequest\x1a\x1f.boxd.api.v1.DeletePathResponse\x12G\n\x08\x43opyPath\x12\x1c.boxd.api.v1.CopyPathRequest\x1a\x1d.boxd.api.v1.CopyPathResponse\x12J\n\tSuspendVm\x12\x1d.boxd.api.v1.SuspendVmRequest\x1a\x1e.boxd.api.v1.SuspendVmResponse\x12G\n\x08ResumeVm\x12\x1c.boxd.api.v1.ResumeVmRequest\x1a\x1d.boxd.api.v1.ResumeVmResponse\x12P\n\x0bHibernateVm\x12\x1f.boxd.api.v1.HibernateVmRequest\x1a .boxd.api.v1.HibernateVmResponse\x12\x41\n\x06WakeVm\x12\x1a.boxd.api.v1.WakeVmRequest\x1a\x1b.boxd.api.v1.WakeVmResponse\x12Y\n\x0e\x43reateSnapshot\x12\".boxd.api.v1.CreateSnapshotRequest\x1a#.boxd.api.v1.CreateSnapshotResponse\x12V\n\rListSnapshots\x12!.boxd.api.v1.ListSnapshotsRequest\x1a\".boxd.api.v1.ListSnapshotsResponse\x12P\n\x0bGetSnapshot\x12\x1f.boxd.api.v1.GetSnapshotRequest\x1a .boxd.api.v1.GetSnapshotResponse\x12Y\n\x0e\x44\x65leteSnapshot\x12\".boxd.api.v1.DeleteSnapshotRequest\x1a#.boxd.api.v1.DeleteSnapshotResponse\x12_\n\x14\x43reateVmFromSnapshot\x12(.boxd.api.v1.CreateVmFromSnapshotRequest\x1a\x1d.boxd.api.v1.CreateVmResponse\x12_\n\x10\x43reateCheckpoint\x12$.boxd.api.v1.CreateCheckpointRequest\x1a%.boxd.api.v1.CreateCheckpointResponse\x12\\\n\x0fListCheckpoints\x12#.boxd.api.v1.ListCheckpointsRequest\x1a$.boxd.api.v1.ListCheckpointsResponse\x12_\n\x10\x44\x65leteCheckpoint\x12$.boxd.api.v1.DeleteCheckpointRequest\x1a%.boxd.api.v1.DeleteCheckpointResponse\x12\x62\n\x11RestoreCheckpoint\x12%.boxd.api.v1.RestoreCheckpointRequest\x1a&.boxd.api.v1.RestoreCheckpointResponse\x12n\n\x15SetAutoSuspendTimeout\x12).boxd.api.v1.SetAutoSuspendTimeoutRequest\x1a*.boxd.api.v1.SetAutoSuspendTimeoutResponse\x12t\n\x17SetAutoHibernateTimeout\x12+.boxd.api.v1.SetAutoHibernateTimeoutRequest\x1a,.boxd.api.v1.SetAutoHibernateTimeoutResponse\x12_\n\x10SetBotProtection\x12$.boxd.api.v1.SetBotProtectionRequest\x1a%.boxd.api.v1.SetBotProtectionResponse\x12n\n\x15SetIdleIgnoreOutbound\x12).boxd.api.v1.SetIdleIgnoreOutboundRequest\x1a*.boxd.api.v1.SetIdleIgnoreOutboundResponse\x12Y\n\x0eSetDeleteAfter\x12\".boxd.api.v1.SetDeleteAfterRequest\x1a#.boxd.api.v1.SetDeleteAfterResponse\x12M\n\nCreateDisk\x12\x1e.boxd.api.v1.CreateDiskRequest\x1a\x1f.boxd.api.v1.CreateDiskResponse\x12J\n\tListDisks\x12\x1d.boxd.api.v1.ListDisksRequest\x1a\x1e.boxd.api.v1.ListDisksResponse\x12M\n\nAttachDisk\x12\x1e.boxd.api.v1.AttachDiskRequest\x1a\x1f.boxd.api.v1.AttachDiskResponse\x12M\n\nDetachDisk\x12\x1e.boxd.api.v1.DetachDiskRequest\x1a\x1f.boxd.api.v1.DetachDiskResponse\x12P\n\x0b\x44\x65stroyDisk\x12\x1f.boxd.api.v1.DestroyDiskRequest\x1a .boxd.api.v1.DestroyDiskResponse\x12S\n\x0c\x43reateApiKey\x12 .boxd.api.v1.CreateApiKeyRequest\x1a!.boxd.api.v1.CreateApiKeyResponse\x12P\n\x0bListApiKeys\x12\x1f.boxd.api.v1.ListApiKeysRequest\x1a .boxd.api.v1.ListApiKeysResponse\x12S\n\x0c\x44\x65leteApiKey\x12 .boxd.api.v1.DeleteApiKeyRequest\x1a!.boxd.api.v1.DeleteApiKeyResponse\x12J\n\tListPlans\x12\x1d.boxd.api.v1.ListPlansRequest\x1a\x1e.boxd.api.v1.ListPlansResponse\x12M\n\nGetBilling\x12\x1e.boxd.api.v1.GetBillingRequest\x1a\x1f.boxd.api.v1.GetBillingResponse\x12n\n\x15\x43reateCheckoutSession\x12).boxd.api.v1.CreateCheckoutSessionRequest\x1a*.boxd.api.v1.CreateCheckoutSessionResponse\x12}\n\x1a\x43reateBillingPortalSession\x12..boxd.api.v1.CreateBillingPortalSessionRequest\x1a/.boxd.api.v1.CreateBillingPortalSessionResponse\x12\x44\n\x07ShareVm\x12\x1b.boxd.api.v1.ShareVmRequest\x1a\x1c.boxd.api.v1.ShareVmResponse\x12J\n\tUnshareVm\x12\x1d.boxd.api.v1.UnshareVmRequest\x1a\x1e.boxd.api.v1.UnshareVmResponse\x12G\n\x08ListOrgs\x12\x1c.boxd.api.v1.ListOrgsRequest\x1a\x1d.boxd.api.v1.ListOrgsResponse\x12V\n\rGetOrgBilling\x12!.boxd.api.v1.GetOrgBillingRequest\x1a\".boxd.api.v1.GetOrgBillingResponse\x12P\n\x0bGetOrgUsage\x12\x1f.boxd.api.v1.GetOrgUsageRequest\x1a .boxd.api.v1.GetOrgUsageResponse\x12M\n\nGetVmUsage\x12\x1e.boxd.api.v1.GetVmUsageRequest\x1a\x1f.boxd.api.v1.GetVmUsageResponse\x12h\n\x13ListBillingActivity\x12\'.boxd.api.v1.ListBillingActivityRequest\x1a(.boxd.api.v1.ListBillingActivityResponse\x12\x62\n\x11SetBackupSchedule\x12%.boxd.api.v1.SetBackupScheduleRequest\x1a&.boxd.api.v1.SetBackupScheduleResponse\x12h\n\x13\x43learBackupSchedule\x12\'.boxd.api.v1.ClearBackupScheduleRequest\x1a(.boxd.api.v1.ClearBackupScheduleResponse\x12\x62\n\x11GetBackupSchedule\x12%.boxd.api.v1.GetBackupScheduleRequest\x1a&.boxd.api.v1.GetBackupScheduleResponse\x12P\n\x0bListBackups\x12\x1f.boxd.api.v1.ListBackupsRequest\x1a .boxd.api.v1.ListBackupsResponse\x12V\n\rTriggerBackup\x12!.boxd.api.v1.TriggerBackupRequest\x1a\".boxd.api.v1.TriggerBackupResponse\x12S\n\x0c\x44\x65leteBackup\x12 .boxd.api.v1.DeleteBackupRequest\x1a!.boxd.api.v1.DeleteBackupResponse\x12V\n\rRestoreBackup\x12!.boxd.api.v1.RestoreBackupRequest\x1a\".boxd.api.v1.RestoreBackupResponse\x12k\n\x14SetOrgBackupsDefault\x12(.boxd.api.v1.SetOrgBackupsDefaultRequest\x1a).boxd.api.v1.SetOrgBackupsDefaultResponse\x12k\n\x14GetOrgBackupsDefault\x12(.boxd.api.v1.GetOrgBackupsDefaultRequest\x1a).boxd.api.v1.GetOrgBackupsDefaultResponse\x12n\n\x15SetOrgMachineDefaults\x12).boxd.api.v1.SetOrgMachineDefaultsRequest\x1a*.boxd.api.v1.SetOrgMachineDefaultsResponse\x12n\n\x15GetOrgMachineDefaults\x12).boxd.api.v1.GetOrgMachineDefaultsRequest\x1a*.boxd.api.v1.GetOrgMachineDefaultsResponse\x12\x8c\x01\n\x1fSetOrgIdleIgnoreOutboundDefault\x12\x33.boxd.api.v1.SetOrgIdleIgnoreOutboundDefaultRequest\x1a\x34.boxd.api.v1.SetOrgIdleIgnoreOutboundDefaultResponse\x12\x8c\x01\n\x1fGetOrgIdleIgnoreOutboundDefault\x12\x33.boxd.api.v1.GetOrgIdleIgnoreOutboundDefaultRequest\x1a\x34.boxd.api.v1.GetOrgIdleIgnoreOutboundDefaultResponse\x12}\n\x1aSetOrgBotProtectionDefault\x12..boxd.api.v1.SetOrgBotProtectionDefaultRequest\x1a/.boxd.api.v1.SetOrgBotProtectionDefaultResponse\x12}\n\x1aGetOrgBotProtectionDefault\x12..boxd.api.v1.GetOrgBotProtectionDefaultRequest\x1a/.boxd.api.v1.GetOrgBotProtectionDefaultResponse\x12J\n\tCreateOrg\x12\x1d.boxd.api.v1.CreateOrgRequest\x1a\x1e.boxd.api.v1.CreateOrgResponse\x12J\n\tRenameOrg\x12\x1d.boxd.api.v1.RenameOrgRequest\x1a\x1e.boxd.api.v1.RenameOrgResponse\x12V\n\rGetOrgMembers\x12!.boxd.api.v1.GetOrgMembersRequest\x1a\".boxd.api.v1.GetOrgMembersResponse\x12\\\n\x0fInviteOrgMember\x12#.boxd.api.v1.InviteOrgMemberRequest\x1a$.boxd.api.v1.InviteOrgMemberResponse\x12\\\n\x0fRevokeOrgInvite\x12#.boxd.api.v1.RevokeOrgInviteRequest\x1a$.boxd.api.v1.RevokeOrgInviteResponse\x12\\\n\x0fRemoveOrgMember\x12#.boxd.api.v1.RemoveOrgMemberRequest\x1a$.boxd.api.v1.RemoveOrgMemberResponse\x12_\n\x10SetOrgMemberRole\x12$.boxd.api.v1.SetOrgMemberRoleRequest\x1a%.boxd.api.v1.SetOrgMemberRoleResponse\x12J\n\tListTeams\x12\x1d.boxd.api.v1.ListTeamsRequest\x1a\x1e.boxd.api.v1.ListTeamsResponse\x12=\n\x07GetTeam\x12\x1b.boxd.api.v1.GetTeamRequest\x1a\x15.boxd.api.v1.TeamInfo\x12\x43\n\nCreateTeam\x12\x1e.boxd.api.v1.CreateTeamRequest\x1a\x15.boxd.api.v1.TeamInfo\x12M\n\nRenameTeam\x12\x1e.boxd.api.v1.RenameTeamRequest\x1a\x1f.boxd.api.v1.RenameTeamResponse\x12P\n\x0b\x44\x65stroyTeam\x12\x1f.boxd.api.v1.DestroyTeamRequest\x1a .boxd.api.v1.DestroyTeamResponse\x12V\n\rAddTeamMember\x12!.boxd.api.v1.AddTeamMemberRequest\x1a\".boxd.api.v1.AddTeamMemberResponse\x12_\n\x10RemoveTeamMember\x12$.boxd.api.v1.RemoveTeamMemberRequest\x1a%.boxd.api.v1.RemoveTeamMemberResponse\x12\x62\n\x11SetTeamMemberRole\x12%.boxd.api.v1.SetTeamMemberRoleRequest\x1a&.boxd.api.v1.SetTeamMemberRoleResponse\x12q\n\x16SetTeamDefaultSnapshot\x12*.boxd.api.v1.SetTeamDefaultSnapshotRequest\x1a+.boxd.api.v1.SetTeamDefaultSnapshotResponse\x12G\n\x08ResizeVm\x12\x1c.boxd.api.v1.ResizeVmRequest\x1a\x1d.boxd.api.v1.ResizeVmResponseb\x06proto3')
|
|
27
|
+
DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n\tapi.proto\x12\x0b\x62oxd.api.v1\"\xfb\x01\n\x08VmConfig\x12\x0c\n\x04vcpu\x18\x01 \x01(\r\x12\x14\n\x0cmemory_bytes\x18\x02 \x01(\x04\x12\x12\n\ndisk_bytes\x18\x03 \x01(\x04\x12#\n\x03srf\x18\x04 \x01(\x0b\x32\x16.boxd.api.v1.SrfConfig\x12+\n\x07network\x18\x05 \x01(\x0b\x32\x1a.boxd.api.v1.NetworkConfig\x12)\n\x07volumes\x18\x06 \x03(\x0b\x32\x18.boxd.api.v1.VolumeMount\x12!\n\x14idle_ignore_outbound\x18\x07 \x01(\x08H\x00\x88\x01\x01\x42\x17\n\x15_idle_ignore_outbound\"t\n\tSrfConfig\x12&\n\x19\x61uto_suspend_timeout_secs\x18\x01 \x01(\rH\x00\x88\x01\x01\x12!\n\x19\x61uto_destroy_timeout_secs\x18\x02 \x01(\rB\x1c\n\x1a_auto_suspend_timeout_secs\"F\n\rNetworkConfig\x12\x0b\n\x03ssh\x18\x01 \x01(\x08\x12(\n\x07proxies\x18\x02 \x03(\x0b\x32\x17.boxd.api.v1.ProxyEntry\"(\n\nProxyEntry\x12\x0c\n\x04name\x18\x01 \x01(\t\x12\x0c\n\x04port\x18\x02 \x01(\r\"E\n\x0bVolumeMount\x12\x0f\n\x07\x64isk_id\x18\x01 \x01(\t\x12\x12\n\nmount_path\x18\x02 \x01(\t\x12\x11\n\tread_only\x18\x03 \x01(\x08\"\xfb\x01\n\x0f\x43reateVmRequest\x12\x0c\n\x04name\x18\x01 \x01(\t\x12\x11\n\timage_ref\x18\x02 \x01(\t\x12 \n\x03\x65nv\x18\x05 \x03(\x0b\x32\x13.boxd.api.v1.EnvVar\x12\x0b\n\x03\x63md\x18\x06 \x03(\t\x12\x16\n\x0erestart_policy\x18\x07 \x01(\t\x12%\n\x06\x63onfig\x18\x08 \x01(\x0b\x32\x15.boxd.api.v1.VmConfig\x12\x0b\n\x03org\x18\t \x01(\t\x12\x0e\n\x06shared\x18\n \x01(\x08\x12\x10\n\x08networks\x18\x0b \x03(\t\x12\x10\n\x08isolated\x18\x0c \x01(\x08\x12\x0c\n\x04team\x18\r \x01(\tJ\x04\x08\x03\x10\x04J\x04\x08\x04\x10\x05\"$\n\x06\x45nvVar\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t\"\x84\x01\n\x10\x43reateVmResponse\x12\r\n\x05vm_id\x18\x01 \x01(\t\x12\x0c\n\x04name\x18\x02 \x01(\t\x12\x11\n\tpublic_ip\x18\x03 \x01(\t\x12\x0b\n\x03url\x18\x04 \x01(\t\x12\r\n\x05image\x18\x05 \x01(\t\x12\x0e\n\x06status\x18\x06 \x01(\t\x12\x14\n\x0c\x62oot_time_ms\x18\x07 \x01(\x04\"!\n\x10\x44\x65stroyVmRequest\x12\r\n\x05vm_id\x18\x01 \x01(\t\"\x13\n\x11\x44\x65stroyVmResponse\"\x16\n\x14SuggestVmNameRequest\"%\n\x15SuggestVmNameResponse\x12\x0c\n\x04name\x18\x01 \x01(\t\"2\n\x0fRenameVmRequest\x12\r\n\x05vm_id\x18\x01 \x01(\t\x12\x10\n\x08new_name\x18\x02 \x01(\t\" \n\x10RenameVmResponse\x12\x0c\n\x04name\x18\x01 \x01(\t\"7\n\x14SetVmNetworksRequest\x12\r\n\x05vm_id\x18\x01 \x01(\t\x12\x10\n\x08networks\x18\x02 \x03(\t\")\n\x15SetVmNetworksResponse\x12\x10\n\x08networks\x18\x01 \x03(\t\"6\n\x17SetVmEgressAllowRequest\x12\n\n\x02vm\x18\x01 \x01(\t\x12\x0f\n\x07\x65ntries\x18\x02 \x03(\t\"+\n\x18SetVmEgressAllowResponse\x12\x0f\n\x07\x65ntries\x18\x01 \x03(\t\"U\n\x11\x45xposePortRequest\x12\x11\n\x05vm_id\x18\x01 \x01(\tB\x02\x18\x01\x12\x0f\n\x07vm_port\x18\x02 \x01(\r\x12\x10\n\x08protocol\x18\x03 \x01(\t\x12\n\n\x02vm\x18\x04 \x01(\t\"y\n\x12\x45xposePortResponse\x12\x0f\n\x07vm_name\x18\x01 \x01(\t\x12\x0b\n\x03\x64ns\x18\x02 \x01(\t\x12\x13\n\x0bpublic_port\x18\x03 \x01(\r\x12\x0f\n\x07vm_port\x18\x04 \x01(\r\x12\x10\n\x08protocol\x18\x05 \x01(\t\x12\r\n\x05vm_id\x18\x06 \x01(\t\"E\n\x13UnexposePortRequest\x12\x11\n\x05vm_id\x18\x01 \x01(\tB\x02\x18\x01\x12\x0f\n\x07vm_port\x18\x02 \x01(\r\x12\n\n\x02vm\x18\x03 \x01(\t\"H\n\x14UnexposePortResponse\x12\x30\n\x07\x66orward\x18\x01 \x01(\x0b\x32\x1f.boxd.api.v1.ExposePortResponse\"%\n\x17ListExposedPortsRequest\x12\n\n\x02vm\x18\x01 \x01(\t\"M\n\x18ListExposedPortsResponse\x12\x31\n\x08\x66orwards\x18\x01 \x03(\x0b\x32\x1f.boxd.api.v1.ExposePortResponse\"g\n\rSetVarRequest\x12\x0b\n\x03org\x18\x01 \x01(\t\x12\x0c\n\x04kind\x18\x02 \x01(\t\x12\x0c\n\x04name\x18\x03 \x01(\t\x12\r\n\x05value\x18\x04 \x01(\t\x12\r\n\x05scope\x18\x05 \x01(\t\x12\x0f\n\x07\x64omains\x18\x06 \x03(\t\"\x1b\n\x08VarReply\x12\x0f\n\x07message\x18\x01 \x01(\t\",\n\x0fListVarsRequest\x12\x0b\n\x03org\x18\x01 \x01(\t\x12\x0c\n\x04kind\x18\x02 \x01(\t\"Z\n\x07VarItem\x12\x0c\n\x04name\x18\x01 \x01(\t\x12\x0c\n\x04kind\x18\x02 \x01(\t\x12\r\n\x05scope\x18\x03 \x01(\t\x12\r\n\x05value\x18\x04 \x01(\t\x12\x0f\n\x07\x64omains\x18\x06 \x03(\tJ\x04\x08\x05\x10\x06\"2\n\x0cVarListReply\x12\"\n\x04vars\x18\x01 \x03(\x0b\x32\x14.boxd.api.v1.VarItem\"J\n\x10RemoveVarRequest\x12\x0b\n\x03org\x18\x01 \x01(\t\x12\x0c\n\x04kind\x18\x02 \x01(\t\x12\x0c\n\x04name\x18\x03 \x01(\t\x12\r\n\x05scope\x18\x04 \x01(\t\"L\n\x15SetSecretScopeRequest\x12\x0b\n\x03org\x18\x01 \x01(\t\x12\x0c\n\x04name\x18\x02 \x01(\t\x12\x0c\n\x04\x66rom\x18\x03 \x01(\t\x12\n\n\x02to\x18\x04 \x01(\t\"\x1f\n\x0eStartVmRequest\x12\r\n\x05vm_id\x18\x01 \x01(\t\"\x11\n\x0fStartVmResponse\"\x1e\n\rStopVmRequest\x12\r\n\x05vm_id\x18\x01 \x01(\t\"\x10\n\x0eStopVmResponse\" \n\x0fRebootVmRequest\x12\r\n\x05vm_id\x18\x01 \x01(\t\"\x12\n\x10RebootVmResponse\"!\n\x10SuspendVmRequest\x12\r\n\x05vm_id\x18\x01 \x01(\t\"\'\n\x11SuspendVmResponse\x12\x12\n\nsuspend_us\x18\x01 \x01(\x04\" \n\x0fResumeVmRequest\x12\r\n\x05vm_id\x18\x01 \x01(\t\"%\n\x10ResumeVmResponse\x12\x11\n\tresume_us\x18\x01 \x01(\x04\"#\n\x12HibernateVmRequest\x12\r\n\x05vm_id\x18\x01 \x01(\t\"\x15\n\x13HibernateVmResponse\"\x1e\n\rWakeVmRequest\x12\r\n\x05vm_id\x18\x01 \x01(\t\"\x10\n\x0eWakeVmResponse\"\x1d\n\x0cGetVmRequest\x12\r\n\x05vm_id\x18\x01 \x01(\t\"\xa0\x06\n\rGetVmResponse\x12\r\n\x05vm_id\x18\x01 \x01(\t\x12\x0c\n\x04name\x18\x02 \x01(\t\x12\x11\n\timage_ref\x18\x03 \x01(\t\x12\x11\n\tpublic_ip\x18\x04 \x01(\t\x12\x0e\n\x06status\x18\x05 \x01(\t\x12\x16\n\x0erestart_policy\x18\x06 \x01(\t\x12\x12\n\ndisk_bytes\x18\x07 \x01(\x04\x12!\n\x19\x61uto_suspend_timeout_secs\x18\x08 \x01(\r\x12\x10\n\x08ssh_port\x18\t \x01(\r\x12\x0b\n\x03org\x18\n \x01(\t\x12\x13\n\x0b\x62illing_org\x18\x0b \x01(\t\x12\x15\n\raccess_domain\x18\x0c \x01(\t\x12#\n\x1b\x61uto_hibernate_timeout_secs\x18\r \x01(\r\x12\x0e\n\x06source\x18\x0e \x01(\t\x12\x0c\n\x04vcpu\x18\x0f \x01(\r\x12\x14\n\x0cmemory_bytes\x18\x10 \x01(\x04\x12\x12\n\ncreated_at\x18\x11 \x01(\x03\x12\x18\n\x10hibernated_at_ms\x18\x12 \x01(\x03\x12!\n\x19\x61uto_destroy_timeout_secs\x18\x13 \x01(\r\x12\x14\n\x0c\x62oot_time_ms\x18\x14 \x01(\x03\x12\x19\n\x11last_connected_ms\x18\x15 \x01(\x03\x12\x0e\n\x06org_id\x18\x16 \x01(\t\x12\x16\n\x0e\x62illing_org_id\x18\x17 \x01(\t\x12*\n\x0bsource_info\x18\x18 \x01(\x0b\x32\x15.boxd.api.v1.VmSource\x12\x10\n\x08networks\x18\x19 \x03(\t\x12\x10\n\x08isolated\x18\x1a \x01(\x08\x12\x35\n\x0e\x63ustom_domains\x18\x1b \x03(\x0b\x32\x1d.boxd.api.v1.CustomDomainInfo\x12\x14\n\x0c\x65gress_allow\x18\x1c \x03(\t\x12\x16\n\x0e\x62ot_protection\x18\x1d \x01(\x08\x12\x14\n\x0c\x64\x65lete_at_ms\x18\x1e \x01(\x03\x12\x19\n\x11\x64\x65lete_after_cron\x18\x1f \x01(\t\x12\x1c\n\x14idle_ignore_outbound\x18 \x01(\x08\x12\x1b\n\x13\x62ot_protection_mode\x18! \x01(\t\"C\n\x08VmSource\x12\x0c\n\x04kind\x18\x01 \x01(\t\x12\x0c\n\x04name\x18\x02 \x01(\t\x12\x0f\n\x07version\x18\x03 \x01(\x04\x12\n\n\x02id\x18\x04 \x01(\t\"3\n\x0eListVmsRequest\x12\x0b\n\x03org\x18\x01 \x01(\t\x12\x14\n\x0c\x61ll_contexts\x18\x02 \x01(\x08\"P\n\x0fListVmsResponse\x12\'\n\x03vms\x18\x01 \x03(\x0b\x32\x1a.boxd.api.v1.GetVmResponse\x12\x14\n\x0cssh_host_key\x18\x02 \x01(\t\"2\n\x11StreamLogsRequest\x12\r\n\x05vm_id\x18\x01 \x01(\t\x12\x0e\n\x06\x66ollow\x18\x02 \x01(\x08\"\x18\n\x08LogChunk\x12\x0c\n\x04\x64\x61ta\x18\x01 \x01(\x0c\"\xc1\x01\n\tExecChunk\x12\x0c\n\x04\x64\x61ta\x18\x01 \x01(\x0c\x12\r\n\x05stdin\x18\x02 \x01(\x08\x12\x0b\n\x03tty\x18\x03 \x01(\x08\x12\x0f\n\x07\x63ommand\x18\x04 \x01(\t\x12\r\n\x05vm_id\x18\x05 \x01(\t\x12\x11\n\texit_code\x18\x06 \x01(\x05\x12\x0c\n\x04\x63ols\x18\x07 \x01(\r\x12\x0c\n\x04rows\x18\x08 \x01(\r\x12\x15\n\rwindow_change\x18\t \x01(\x08\x12\x11\n\tis_stderr\x18\n \x01(\x08\x12\x11\n\tdevice_id\x18\x0b \x01(\t\"+\n\x0c\x44\x65sktopChunk\x12\r\n\x05vm_id\x18\x01 \x01(\t\x12\x0c\n\x04\x64\x61ta\x18\x02 \x01(\x0c\"$\n\x14\x43reateNetworkRequest\x12\x0c\n\x04name\x18\x01 \x01(\t\"+\n\x15\x43reateNetworkResponse\x12\x12\n\nnetwork_id\x18\x01 \x01(\t\"\x15\n\x13ListNetworksRequest\"B\n\x14ListNetworksResponse\x12*\n\x08networks\x18\x01 \x03(\x0b\x32\x18.boxd.api.v1.NetworkInfo\"A\n\x0bNetworkInfo\x12\x12\n\nnetwork_id\x18\x01 \x01(\t\x12\x0e\n\x06subnet\x18\x02 \x01(\t\x12\x0e\n\x06status\x18\x03 \x01(\t\"7\n\x16\x41\x64\x64\x43ustomDomainRequest\x12\r\n\x05vm_id\x18\x01 \x01(\t\x12\x0e\n\x06\x64omain\x18\x02 \x01(\t\"H\n\x17\x41\x64\x64\x43ustomDomainResponse\x12-\n\x06\x64omain\x18\x01 \x01(\x0b\x32\x1d.boxd.api.v1.CustomDomainInfo\"\x1a\n\x18ListCustomDomainsRequest\"K\n\x19ListCustomDomainsResponse\x12.\n\x07\x64omains\x18\x01 \x03(\x0b\x32\x1d.boxd.api.v1.CustomDomainInfo\"+\n\x19RemoveCustomDomainRequest\x12\x0e\n\x06\x64omain\x18\x01 \x01(\t\"\x1c\n\x1aRemoveCustomDomainResponse\"f\n\x10\x43ustomDomainInfo\x12\x0e\n\x06\x64omain\x18\x01 \x01(\t\x12\r\n\x05vm_id\x18\x02 \x01(\t\x12\x0f\n\x07vm_name\x18\x03 \x01(\t\x12\x0e\n\x06status\x18\x04 \x01(\t\x12\x12\n\nlast_error\x18\x05 \x01(\t\"5\n\x13SetOrgDomainRequest\x12\x0e\n\x06org_id\x18\x01 \x01(\t\x12\x0e\n\x06\x64omain\x18\x02 \x01(\t\"B\n\x14SetOrgDomainResponse\x12*\n\x06\x64omain\x18\x01 \x01(\x0b\x32\x1a.boxd.api.v1.OrgDomainInfo\"%\n\x13GetOrgDomainRequest\x12\x0e\n\x06org_id\x18\x01 \x01(\t\"B\n\x14GetOrgDomainResponse\x12*\n\x06\x64omain\x18\x01 \x01(\x0b\x32\x1a.boxd.api.v1.OrgDomainInfo\"\'\n\x15\x43learOrgDomainRequest\x12\x0e\n\x06org_id\x18\x01 \x01(\t\"\x18\n\x16\x43learOrgDomainResponse\"S\n\rOrgDomainInfo\x12\x0e\n\x06org_id\x18\x01 \x01(\t\x12\x0e\n\x06\x64omain\x18\x02 \x01(\t\x12\x0e\n\x06status\x18\x03 \x01(\t\x12\x12\n\nlast_error\x18\x04 \x01(\t\"\x12\n\x10GetConfigRequest\"8\n\x11GetConfigResponse\x12\x15\n\rdefault_image\x18\x01 \x01(\t\x12\x0c\n\x04zone\x18\x02 \x01(\t\"\x0f\n\rWhoamiRequest\"\x99\x01\n\x0eWhoamiResponse\x12\x0f\n\x07user_id\x18\x01 \x01(\t\x12\x1b\n\x13pubkey_fingerprints\x18\x02 \x03(\t\x12)\n\x07\x62illing\x18\x04 \x01(\x0b\x32\x18.boxd.api.v1.BillingInfo\x12\x14\n\x0c\x64isplay_name\x18\x05 \x01(\tJ\x04\x08\x03\x10\x04R\x12\x64\x65\x66\x61ult_network_id\"\xbb\x02\n\x0b\x42illingInfo\x12\x1b\n\x13subscription_status\x18\x03 \x01(\t\x12\x16\n\x0epast_due_since\x18\x06 \x01(\x03\x12\x0f\n\x07max_vms\x18\x07 \x01(\r\x12\x0c\n\x04vcpu\x18\x08 \x01(\r\x12\x14\n\x0cmemory_bytes\x18\t \x01(\x04\x12\x15\n\rbalance_micro\x18\n \x01(\x03\x12\x14\n\x0c\x62illing_mode\x18\x0b \x01(\t\x12\x10\n\x08\x63urrency\x18\x0c \x01(\t\x12\x14\n\x0c\x63\x65iling_vcpu\x18\r \x01(\r\x12\x1c\n\x14\x63\x65iling_memory_bytes\x18\x0e \x01(\x04J\x04\x08\x01\x10\x02J\x04\x08\x02\x10\x03J\x04\x08\x04\x10\x05J\x04\x08\x05\x10\x06R\x04tierR\x05shapeR\x12stripe_customer_idR\x16stripe_subscription_id\"\x12\n\x10ListPlansRequest\"9\n\x11ListPlansResponse\x12$\n\x05plans\x18\x01 \x03(\x0b\x32\x15.boxd.api.v1.PlanInfo\"\x85\x01\n\x08PlanInfo\x12\x13\n\x0bmonthly_eur\x18\x03 \x01(\r\x12\x12\n\nlookup_key\x18\x04 \x01(\t\x12\x13\n\x0b\x64\x65scription\x18\x05 \x01(\t\x12\x0c\n\x04vcpu\x18\x06 \x01(\r\x12\x14\n\x0cmemory_bytes\x18\x07 \x01(\x04J\x04\x08\x01\x10\x02J\x04\x08\x02\x10\x03R\x04tierR\x05shape\"\x13\n\x11GetBillingRequest\"?\n\x12GetBillingResponse\x12)\n\x07\x62illing\x18\x01 \x01(\x0b\x32\x18.boxd.api.v1.BillingInfo\"T\n\x1c\x43reateCheckoutSessionRequest\x12\x13\n\x0bsuccess_url\x18\x02 \x01(\t\x12\x12\n\ncancel_url\x18\x03 \x01(\tJ\x04\x08\x01\x10\x02R\x05shape\"5\n\x1d\x43reateCheckoutSessionResponse\x12\x14\n\x0c\x63heckout_url\x18\x01 \x01(\t\"7\n!CreateBillingPortalSessionRequest\x12\x12\n\nreturn_url\x18\x01 \x01(\t\"8\n\"CreateBillingPortalSessionResponse\x12\x12\n\nportal_url\x18\x01 \x01(\t\"-\n\x12\x43reateTokenRequest\x12\x17\n\x0f\x65xpires_in_secs\x18\x01 \x01(\x04\"8\n\x13\x43reateTokenResponse\x12\r\n\x05token\x18\x01 \x01(\t\x12\x12\n\nexpires_at\x18\x02 \x01(\x03\"\x13\n\x11ListTokensRequest\"<\n\x12ListTokensResponse\x12&\n\x06tokens\x18\x01 \x03(\x0b\x32\x16.boxd.api.v1.TokenInfo\"@\n\tTokenInfo\x12\x0b\n\x03jti\x18\x01 \x01(\t\x12\x12\n\ncreated_at\x18\x02 \x01(\x03\x12\x12\n\nexpires_at\x18\x03 \x01(\x03\"!\n\x12RevokeTokenRequest\x12\x0b\n\x03jti\x18\x01 \x01(\t\"\x15\n\x13RevokeTokenResponse\"E\n\x11LinkSshKeyRequest\x12\x0e\n\x06pubkey\x18\x01 \x01(\t\x12\x11\n\tdevice_id\x18\x02 \x01(\t\x12\r\n\x05label\x18\x03 \x01(\t\"\x14\n\x12LinkSshKeyResponse\"\x8e\x01\n\rForkVmRequest\x12\x14\n\x0csource_vm_id\x18\x01 \x01(\t\x12\x0c\n\x04name\x18\x02 \x01(\t\x12%\n\x06\x63onfig\x18\x03 \x01(\x0b\x32\x15.boxd.api.v1.VmConfig\x12\x0e\n\x06shared\x18\x04 \x01(\x08\x12\x10\n\x08networks\x18\x05 \x03(\t\x12\x10\n\x08isolated\x18\x06 \x01(\x08\"\x97\x01\n\x0e\x46orkVmResponse\x12\r\n\x05vm_id\x18\x01 \x01(\t\x12\x0c\n\x04name\x18\x02 \x01(\t\x12\x11\n\tpublic_ip\x18\x03 \x01(\t\x12\x0b\n\x03url\x18\x04 \x01(\t\x12\r\n\x05image\x18\x05 \x01(\t\x12\x0e\n\x06status\x18\x06 \x01(\t\x12\x13\n\x0b\x66orked_from\x18\x07 \x01(\t\x12\x14\n\x0c\x62oot_time_ms\x18\x08 \x01(\x04\"5\n\x12ListProxiesRequest\x12\x13\n\x07vm_name\x18\x01 \x01(\tB\x02\x18\x01\x12\n\n\x02vm\x18\x02 \x01(\t\">\n\x13ListProxiesResponse\x12\'\n\x07proxies\x18\x01 \x03(\x0b\x32\x16.boxd.api.v1.ProxyInfo\"\xac\x01\n\tProxyInfo\x12\x0c\n\x04name\x18\x01 \x01(\t\x12\x0f\n\x07vm_name\x18\x02 \x01(\t\x12\x0e\n\x06\x64omain\x18\x03 \x01(\t\x12\x0c\n\x04port\x18\x04 \x01(\r\x12\x12\n\nis_default\x18\x05 \x01(\x08\x12\x14\n\x0cport_display\x18\x06 \x01(\t\x12\r\n\x05vm_id\x18\x07 \x01(\t\x12\x11\n\tport_mode\x18\x08 \x01(\t\x12\x16\n\x0e\x65\x66\x66\x65\x63tive_port\x18\t \x01(\r\"\x17\n\x15ListProxyNodesRequest\"E\n\x16ListProxyNodesResponse\x12+\n\x07proxies\x18\x01 \x03(\x0b\x32\x1a.boxd.api.v1.ProxyNodeInfo\"-\n\rProxyNodeInfo\x12\n\n\x02id\x18\x01 \x01(\t\x12\x10\n\x08\x65ndpoint\x18\x02 \x01(\t\"Q\n\x12\x43reateProxyRequest\x12\x0c\n\x04name\x18\x01 \x01(\t\x12\x13\n\x07vm_name\x18\x02 \x01(\tB\x02\x18\x01\x12\x0c\n\x04port\x18\x03 \x01(\r\x12\n\n\x02vm\x18\x04 \x01(\t\"R\n\x13\x43reateProxyResponse\x12\x0c\n\x04name\x18\x01 \x01(\t\x12\x0f\n\x07vm_name\x18\x02 \x01(\t\x12\x0e\n\x06\x64omain\x18\x03 \x01(\t\x12\x0c\n\x04port\x18\x04 \x01(\r\"C\n\x12\x44\x65leteProxyRequest\x12\x0c\n\x04name\x18\x01 \x01(\t\x12\x13\n\x07vm_name\x18\x02 \x01(\tB\x02\x18\x01\x12\n\n\x02vm\x18\x03 \x01(\t\"\x15\n\x13\x44\x65leteProxyResponse\"R\n\x13SetProxyPortRequest\x12\x0c\n\x04name\x18\x01 \x01(\t\x12\x13\n\x07vm_name\x18\x02 \x01(\tB\x02\x18\x01\x12\x0c\n\x04port\x18\x03 \x01(\t\x12\n\n\x02vm\x18\x04 \x01(\t\"\x16\n\x14SetProxyPortResponse\">\n\x11UploadFileRequest\x12\r\n\x05vm_id\x18\x01 \x01(\t\x12\x0c\n\x04path\x18\x02 \x01(\t\x12\x0c\n\x04\x64\x61ta\x18\x03 \x01(\x0c\"+\n\x12UploadFileResponse\x12\x15\n\rbytes_written\x18\x01 \x01(\x04\"P\n\x0fUploadFileChunk\x12\r\n\x05vm_id\x18\x01 \x01(\t\x12\x0c\n\x04path\x18\x02 \x01(\t\x12\x12\n\ntotal_size\x18\x03 \x01(\x04\x12\x0c\n\x04\x64\x61ta\x18\x04 \x01(\x0c\"2\n\x13\x44ownloadFileRequest\x12\r\n\x05vm_id\x18\x01 \x01(\t\x12\x0c\n\x04path\x18\x02 \x01(\t\"$\n\x14\x44ownloadFileResponse\x12\x0c\n\x04\x64\x61ta\x18\x01 \x01(\x0c\"5\n\x11\x44ownloadFileChunk\x12\x12\n\ntotal_size\x18\x01 \x01(\x04\x12\x0c\n\x04\x64\x61ta\x18\x02 \x01(\x0c\"-\n\x0eListDirRequest\x12\r\n\x05vm_id\x18\x01 \x01(\t\x12\x0c\n\x04path\x18\x02 \x01(\t\"x\n\x08\x44irEntry\x12\x0c\n\x04name\x18\x01 \x01(\t\x12\x0e\n\x06is_dir\x18\x02 \x01(\x08\x12\x12\n\nsize_bytes\x18\x03 \x01(\x04\x12\x13\n\x0bpermissions\x18\x04 \x01(\t\x12\x13\n\x0bmodified_at\x18\x05 \x01(\x03\x12\x10\n\x08\x61\x64\x64\x65\x64_at\x18\x06 \x01(\x03\"L\n\x0fListDirResponse\x12&\n\x07\x65ntries\x18\x01 \x03(\x0b\x32\x15.boxd.api.v1.DirEntry\x12\x11\n\ttruncated\x18\x02 \x01(\x08\"+\n\x0cMkdirRequest\x12\r\n\x05vm_id\x18\x01 \x01(\t\x12\x0c\n\x04path\x18\x02 \x01(\t\"\x0f\n\rMkdirResponse\"F\n\x11RenamePathRequest\x12\r\n\x05vm_id\x18\x01 \x01(\t\x12\x10\n\x08old_path\x18\x02 \x01(\t\x12\x10\n\x08new_path\x18\x03 \x01(\t\"\x14\n\x12RenamePathResponse\"0\n\x11\x44\x65letePathRequest\x12\r\n\x05vm_id\x18\x01 \x01(\t\x12\x0c\n\x04path\x18\x02 \x01(\t\"\x14\n\x12\x44\x65letePathResponse\"D\n\x0f\x43opyPathRequest\x12\r\n\x05vm_id\x18\x01 \x01(\t\x12\x10\n\x08old_path\x18\x02 \x01(\t\x12\x10\n\x08new_path\x18\x03 \x01(\t\"\x12\n\x10\x43opyPathResponse\"1\n\x15\x43reateSnapshotRequest\x12\n\n\x02vm\x18\x01 \x01(\t\x12\x0c\n\x04name\x18\x02 \x01(\t\"\\\n\x16\x43reateSnapshotResponse\x12\x13\n\x0bsnapshot_id\x18\x01 \x01(\t\x12\x0c\n\x04name\x18\x02 \x01(\t\x12\x0f\n\x07version\x18\x03 \x01(\x04\x12\x0e\n\x06status\x18\x04 \x01(\t\"#\n\x14ListSnapshotsRequest\x12\x0b\n\x03org\x18\x01 \x01(\t\"E\n\x15ListSnapshotsResponse\x12,\n\tsnapshots\x18\x01 \x03(\x0b\x32\x19.boxd.api.v1.SnapshotInfo\"/\n\x12GetSnapshotRequest\x12\x0c\n\x04name\x18\x01 \x01(\t\x12\x0b\n\x03org\x18\x02 \x01(\t\"B\n\x13GetSnapshotResponse\x12+\n\x08snapshot\x18\x01 \x01(\x0b\x32\x19.boxd.api.v1.SnapshotInfo\"2\n\x15\x44\x65leteSnapshotRequest\x12\x0c\n\x04name\x18\x01 \x01(\t\x12\x0b\n\x03org\x18\x02 \x01(\t\"\x18\n\x16\x44\x65leteSnapshotResponse\"\x83\x01\n\x1b\x43reateVmFromSnapshotRequest\x12\x10\n\x08snapshot\x18\x01 \x01(\t\x12\x0c\n\x04name\x18\x02 \x01(\t\x12%\n\x06\x63onfig\x18\x03 \x01(\x0b\x32\x15.boxd.api.v1.VmConfig\x12\x0b\n\x03org\x18\x04 \x01(\t\x12\x10\n\x08isolated\x18\x05 \x01(\x08\"\xa3\x02\n\x0cSnapshotInfo\x12\x13\n\x0bsnapshot_id\x18\x01 \x01(\t\x12\x0c\n\x04name\x18\x02 \x01(\t\x12\x0f\n\x07version\x18\x03 \x01(\x04\x12\x0e\n\x06status\x18\x04 \x01(\t\x12\x12\n\nsize_bytes\x18\x07 \x01(\x04\x12\x12\n\nupdated_at\x18\x08 \x01(\x03\x12\x0c\n\x04vcpu\x18\t \x01(\r\x12\x14\n\x0cmemory_bytes\x18\n \x01(\x04\x12\x11\n\tuse_count\x18\x0b \x01(\x04\x12\x12\n\ncreated_at\x18\x0c \x01(\x03\x12\x16\n\x0e\x66\x61iled_version\x18\r \x01(\x04\x12\x16\n\x0e\x66\x61ilure_reason\x18\x0e \x01(\tJ\x04\x08\x05\x10\x06J\x04\x08\x06\x10\x07R\x0eready_replicasR\x10\x64\x65sired_replicas\"3\n\x17\x43reateCheckpointRequest\x12\n\n\x02vm\x18\x01 \x01(\t\x12\x0c\n\x04name\x18\x02 \x01(\t\"O\n\x18\x43reateCheckpointResponse\x12\x15\n\rcheckpoint_id\x18\x01 \x01(\t\x12\x0c\n\x04name\x18\x02 \x01(\t\x12\x0e\n\x06status\x18\x03 \x01(\t\"$\n\x16ListCheckpointsRequest\x12\n\n\x02vm\x18\x01 \x01(\t\"K\n\x17ListCheckpointsResponse\x12\x30\n\x0b\x63heckpoints\x18\x01 \x03(\x0b\x32\x1b.boxd.api.v1.CheckpointInfo\"3\n\x17\x44\x65leteCheckpointRequest\x12\n\n\x02vm\x18\x01 \x01(\t\x12\x0c\n\x04name\x18\x02 \x01(\t\"\x1a\n\x18\x44\x65leteCheckpointResponse\"4\n\x18RestoreCheckpointRequest\x12\n\n\x02vm\x18\x01 \x01(\t\x12\x0c\n\x04name\x18\x02 \x01(\t\"\x1b\n\x19RestoreCheckpointResponse\"\x94\x01\n\x0e\x43heckpointInfo\x12\x15\n\rcheckpoint_id\x18\x01 \x01(\t\x12\x0c\n\x04name\x18\x02 \x01(\t\x12\x0e\n\x06status\x18\x03 \x01(\t\x12\x12\n\nsize_bytes\x18\x04 \x01(\x04\x12\x12\n\ncreated_at\x18\x05 \x01(\x03\x12\x12\n\ncreated_by\x18\x06 \x01(\t\x12\x11\n\tavailable\x18\x07 \x01(\x08\";\n\x11\x43reateDiskRequest\x12\x0c\n\x04name\x18\x01 \x01(\t\x12\x12\n\nsize_bytes\x18\x02 \x01(\x04J\x04\x08\x03\x10\x04\"]\n\x12\x43reateDiskResponse\x12\x0f\n\x07\x64isk_id\x18\x01 \x01(\t\x12\x0c\n\x04name\x18\x02 \x01(\t\x12\x12\n\nsize_bytes\x18\x03 \x01(\x04\x12\x0e\n\x06status\x18\x04 \x01(\tJ\x04\x08\x05\x10\x06\"\x12\n\x10ListDisksRequest\"9\n\x11ListDisksResponse\x12$\n\x05\x64isks\x18\x01 \x03(\x0b\x32\x15.boxd.api.v1.DiskInfo\"\xaa\x01\n\x08\x44iskInfo\x12\x0f\n\x07\x64isk_id\x18\x01 \x01(\t\x12\x0c\n\x04name\x18\x02 \x01(\t\x12\x12\n\nsize_bytes\x18\x03 \x01(\x04\x12\x0e\n\x06status\x18\x04 \x01(\t\x12\x30\n\x0b\x61ttachments\x18\x06 \x03(\x0b\x32\x1b.boxd.api.v1.DiskAttachment\x12\x12\n\ncreated_at\x18\x08 \x01(\x03J\x04\x08\x05\x10\x06J\x04\x08\x07\x10\x08R\tworker_id\"X\n\x0e\x44iskAttachment\x12\r\n\x05vm_id\x18\x01 \x01(\t\x12\x0f\n\x07vm_name\x18\x02 \x01(\t\x12\x12\n\nmount_path\x18\x03 \x01(\t\x12\x12\n\nmount_mode\x18\x04 \x01(\t\"Z\n\x11\x41ttachDiskRequest\x12\x0f\n\x07\x64isk_id\x18\x01 \x01(\t\x12\r\n\x05vm_id\x18\x02 \x01(\t\x12\x12\n\nmount_path\x18\x03 \x01(\t\x12\x11\n\tread_only\x18\x04 \x01(\x08\"\x14\n\x12\x41ttachDiskResponse\"3\n\x11\x44\x65tachDiskRequest\x12\x0f\n\x07\x64isk_id\x18\x01 \x01(\t\x12\r\n\x05vm_id\x18\x02 \x01(\t\"\x14\n\x12\x44\x65tachDiskResponse\"%\n\x12\x44\x65stroyDiskRequest\x12\x0f\n\x07\x64isk_id\x18\x01 \x01(\t\"\x15\n\x13\x44\x65stroyDiskResponse\"C\n\x1cSetAutoSuspendTimeoutRequest\x12\r\n\x05vm_id\x18\x01 \x01(\t\x12\x14\n\x0ctimeout_secs\x18\x02 \x01(\r\"\x1f\n\x1dSetAutoSuspendTimeoutResponse\"E\n\x1eSetAutoHibernateTimeoutRequest\x12\r\n\x05vm_id\x18\x01 \x01(\t\x12\x14\n\x0ctimeout_secs\x18\x02 \x01(\r\"!\n\x1fSetAutoHibernateTimeoutResponse\"\\\n\x15SetDeleteAfterRequest\x12\r\n\x05vm_id\x18\x01 \x01(\t\x12\x19\n\x11\x64\x65lete_after_secs\x18\x02 \x01(\x04\x12\x19\n\x11\x64\x65lete_after_cron\x18\x03 \x01(\t\".\n\x16SetDeleteAfterResponse\x12\x14\n\x0c\x64\x65lete_at_ms\x18\x01 \x01(\x03\"G\n\x17SetBotProtectionRequest\x12\r\n\x05vm_id\x18\x01 \x01(\t\x12\x0f\n\x07\x65nabled\x18\x02 \x01(\x08\x12\x0c\n\x04mode\x18\x03 \x01(\t\"\x1a\n\x18SetBotProtectionResponse\">\n\x1cSetIdleIgnoreOutboundRequest\x12\r\n\x05vm_id\x18\x01 \x01(\t\x12\x0f\n\x07\x65nabled\x18\x02 \x01(\x08\"\x1f\n\x1dSetIdleIgnoreOutboundResponse\"W\n\x13\x43reateApiKeyRequest\x12\x0c\n\x04name\x18\x01 \x01(\t\x12\x17\n\x0f\x65xpires_in_secs\x18\x02 \x01(\x04\x12\x0b\n\x03org\x18\x03 \x01(\t\x12\x0c\n\x04kind\x18\x04 \x01(\t\"G\n\x14\x43reateApiKeyResponse\x12\n\n\x02id\x18\x01 \x01(\t\x12\x0f\n\x07\x61pi_key\x18\x02 \x01(\t\x12\x12\n\nexpires_at\x18\x03 \x01(\x03\"\x14\n\x12ListApiKeysRequest\"<\n\x13ListApiKeysResponse\x12%\n\x04keys\x18\x01 \x03(\x0b\x32\x17.boxd.api.v1.ApiKeyInfo\"\x93\x01\n\nApiKeyInfo\x12\n\n\x02id\x18\x01 \x01(\t\x12\x0c\n\x04name\x18\x02 \x01(\t\x12\x12\n\nkey_prefix\x18\x03 \x01(\t\x12\x12\n\ncreated_at\x18\x04 \x01(\x03\x12\x14\n\x0clast_used_at\x18\x05 \x01(\x03\x12\x12\n\nexpires_at\x18\x06 \x01(\x03\x12\x0b\n\x03org\x18\x07 \x01(\t\x12\x0c\n\x04kind\x18\x08 \x01(\t\"!\n\x13\x44\x65leteApiKeyRequest\x12\n\n\x02id\x18\x01 \x01(\t\"\x16\n\x14\x44\x65leteApiKeyResponse\"\x1f\n\x0eShareVmRequest\x12\r\n\x05vm_id\x18\x01 \x01(\t\"\x11\n\x0fShareVmResponse\"\x11\n\x0fListOrgsRequest\"W\n\x10ListOrgsResponse\x12%\n\x04orgs\x18\x01 \x03(\x0b\x32\x17.boxd.api.v1.OrgSummary\x12\x16\n\x0e\x64\x65\x66\x61ult_org_id\x18\x03 \x01(\tJ\x04\x08\x02\x10\x03\"F\n\nOrgSummary\x12\n\n\x02id\x18\x01 \x01(\t\x12\x0c\n\x04name\x18\x02 \x01(\t\x12\x10\n\x08is_admin\x18\x03 \x01(\x08\x12\x0c\n\x04slug\x18\x04 \x01(\t\"#\n\x14GetOrgBillingRequest\x12\x0b\n\x03org\x18\x01 \x01(\t\"\xd4\x02\n\x15GetOrgBillingResponse\x12\n\n\x02id\x18\x01 \x01(\t\x12\x0c\n\x04name\x18\x02 \x01(\t\x12\x10\n\x08is_admin\x18\x03 \x01(\x08\x12\x0f\n\x07max_vms\x18\x04 \x01(\r\x12\x0c\n\x04vcpu\x18\x05 \x01(\r\x12\x14\n\x0cmemory_bytes\x18\x06 \x01(\x04\x12\x10\n\x08vm_count\x18\x07 \x01(\r\x12%\n\x03vms\x18\x08 \x03(\x0b\x32\x18.boxd.api.v1.OrgBilledVm\x12\x15\n\rbalance_micro\x18\t \x01(\x03\x12\x14\n\x0c\x62illing_mode\x18\n \x01(\t\x12\x1b\n\x0e\x61\x63\x63ruing_micro\x18\x0b \x01(\x03H\x00\x88\x01\x01\x12\x10\n\x08\x63urrency\x18\x0c \x01(\t\x12\x14\n\x0c\x63\x65iling_vcpu\x18\r \x01(\r\x12\x1c\n\x14\x63\x65iling_memory_bytes\x18\x0e \x01(\x04\x42\x11\n\x0f_accruing_micro\"l\n\x0bOrgBilledVm\x12\x0c\n\x04name\x18\x01 \x01(\t\x12\r\n\x05owner\x18\x02 \x01(\t\x12\x0e\n\x06status\x18\x03 \x01(\t\x12\x0f\n\x07\x62illing\x18\x05 \x01(\t\x12\x12\n\nowner_name\x18\x06 \x01(\tJ\x04\x08\x04\x10\x05R\x05shape\"^\n\nUsageRates\x12\x17\n\x0fvcpu_hour_micro\x18\x01 \x01(\x03\x12\x1a\n\x12ram_gib_hour_micro\x18\x02 \x01(\x03\x12\x1b\n\x13\x64isk_gib_hour_micro\x18\x03 \x01(\x03\"U\n\x0cStateSeconds\x12\x0f\n\x07running\x18\x01 \x01(\x04\x12\x0f\n\x07standby\x18\x02 \x01(\x04\x12\x12\n\nhibernated\x18\x03 \x01(\x04\x12\x0f\n\x07stopped\x18\x04 \x01(\x04\"\xb7\x02\n\x07VmUsage\x12\r\n\x05vm_id\x18\x01 \x01(\t\x12\x0c\n\x04name\x18\x02 \x01(\t\x12\r\n\x05owner\x18\x03 \x01(\t\x12\x12\n\nowner_name\x18\x04 \x01(\t\x12\x0f\n\x07sharing\x18\x05 \x01(\t\x12\x0e\n\x06status\x18\x06 \x01(\t\x12\x0c\n\x04vcpu\x18\x07 \x01(\r\x12\x14\n\x0cmemory_bytes\x18\x08 \x01(\x04\x12\x12\n\ndisk_bytes\x18\t \x01(\x04\x12*\n\x07seconds\x18\n \x01(\x0b\x32\x19.boxd.api.v1.StateSeconds\x12\x12\n\nvcpu_hours\x18\x0b \x01(\x01\x12\x15\n\rram_gib_hours\x18\x0c \x01(\x01\x12\x16\n\x0e\x64isk_gib_hours\x18\r \x01(\x01\x12\x12\n\ncost_micro\x18\x0e \x01(\x03\x12\x10\n\x08\x63omplete\x18\x0f \x01(\x08\"?\n\x12GetOrgUsageRequest\x12\x0b\n\x03org\x18\x01 \x01(\t\x12\r\n\x05since\x18\x02 \x01(\x03\x12\r\n\x05until\x18\x03 \x01(\x03\"\xe5\x01\n\x13GetOrgUsageResponse\x12\x0e\n\x06org_id\x18\x01 \x01(\t\x12\x0b\n\x03org\x18\x02 \x01(\t\x12\x14\n\x0cperiod_start\x18\x03 \x01(\x03\x12\x12\n\nperiod_end\x18\x04 \x01(\x03\x12\x10\n\x08\x63urrency\x18\x05 \x01(\t\x12&\n\x05rates\x18\x06 \x01(\x0b\x32\x17.boxd.api.v1.UsageRates\x12\x18\n\x10total_cost_micro\x18\x07 \x01(\x03\x12!\n\x03vms\x18\x08 \x03(\x0b\x32\x14.boxd.api.v1.VmUsage\x12\x10\n\x08\x63omplete\x18\t \x01(\x08\"M\n\x11GetVmUsageRequest\x12\r\n\x05vm_id\x18\x01 \x01(\t\x12\r\n\x05since\x18\x02 \x01(\x03\x12\r\n\x05until\x18\x03 \x01(\x03\x12\x0b\n\x03org\x18\x04 \x01(\t\"\x9d\x01\n\x12GetVmUsageResponse\x12\x14\n\x0cperiod_start\x18\x01 \x01(\x03\x12\x12\n\nperiod_end\x18\x02 \x01(\x03\x12\x10\n\x08\x63urrency\x18\x03 \x01(\t\x12&\n\x05rates\x18\x04 \x01(\x0b\x32\x17.boxd.api.v1.UsageRates\x12#\n\x05usage\x18\x05 \x01(\x0b\x32\x14.boxd.api.v1.VmUsage\"n\n\x1aListBillingActivityRequest\x12\x0b\n\x03org\x18\x01 \x01(\t\x12\r\n\x05since\x18\x02 \x01(\x03\x12\r\n\x05until\x18\x03 \x01(\x03\x12\x12\n\npage_token\x18\x04 \x01(\t\x12\x11\n\tpage_size\x18\x05 \x01(\r\"`\n\x14\x42illingActivityEntry\x12\x10\n\x08\x65ntry_id\x18\x01 \x01(\t\x12\x0c\n\x04kind\x18\x02 \x01(\t\x12\x14\n\x0c\x61mount_micro\x18\x03 \x01(\x03\x12\x12\n\ncreated_at\x18\x04 \x01(\x03\"\x93\x01\n\x1bListBillingActivityResponse\x12\x10\n\x08\x63urrency\x18\x01 \x01(\t\x12\x15\n\rbalance_micro\x18\x02 \x01(\x03\x12\x32\n\x07\x65ntries\x18\x03 \x03(\x0b\x32!.boxd.api.v1.BillingActivityEntry\x12\x17\n\x0fnext_page_token\x18\x04 \x01(\t\"!\n\x10UnshareVmRequest\x12\r\n\x05vm_id\x18\x01 \x01(\t\"\x13\n\x11UnshareVmResponse\"m\n\x18SetBackupScheduleRequest\x12\n\n\x02vm\x18\x01 \x01(\t\x12\x15\n\rschedule_kind\x18\x02 \x01(\t\x12\x16\n\x0eschedule_value\x18\x03 \x01(\t\x12\x16\n\x0eretention_secs\x18\x04 \x01(\r\"\x1b\n\x19SetBackupScheduleResponse\"(\n\x1a\x43learBackupScheduleRequest\x12\n\n\x02vm\x18\x01 \x01(\t\"\x1d\n\x1b\x43learBackupScheduleResponse\"&\n\x18GetBackupScheduleRequest\x12\n\n\x02vm\x18\x01 \x01(\t\"\xa3\x01\n\x19GetBackupScheduleResponse\x12\x0f\n\x07\x65nabled\x18\x01 \x01(\x08\x12\x15\n\rschedule_kind\x18\x02 \x01(\t\x12\x16\n\x0eschedule_value\x18\x03 \x01(\t\x12\x16\n\x0eretention_secs\x18\x04 \x01(\r\x12\x16\n\x0enext_backup_at\x18\x05 \x01(\x03\x12\x16\n\x0elast_backup_at\x18\x06 \x01(\x03\" \n\x12ListBackupsRequest\x12\n\n\x02vm\x18\x01 \x01(\t\"\x9a\x01\n\nBackupInfo\x12\x11\n\tbackup_id\x18\x01 \x01(\t\x12\x0e\n\x06status\x18\x02 \x01(\t\x12\x12\n\nsize_bytes\x18\x03 \x01(\x04\x12\x10\n\x08\x63hecksum\x18\x04 \x01(\t\x12\x1b\n\x13points_to_backup_id\x18\x05 \x01(\t\x12\x12\n\ncreated_at\x18\x06 \x01(\x03\x12\x12\n\nexpires_at\x18\x07 \x01(\x03\"?\n\x13ListBackupsResponse\x12(\n\x07\x62\x61\x63kups\x18\x01 \x03(\x0b\x32\x17.boxd.api.v1.BackupInfo\"\"\n\x14TriggerBackupRequest\x12\n\n\x02vm\x18\x01 \x01(\t\"*\n\x15TriggerBackupResponse\x12\x11\n\tbackup_id\x18\x01 \x01(\t\"4\n\x13\x44\x65leteBackupRequest\x12\n\n\x02vm\x18\x01 \x01(\t\x12\x11\n\tbackup_id\x18\x02 \x01(\t\"\x16\n\x14\x44\x65leteBackupResponse\"5\n\x14RestoreBackupRequest\x12\n\n\x02vm\x18\x01 \x01(\t\x12\x11\n\tbackup_id\x18\x02 \x01(\t\"\x17\n\x15RestoreBackupResponse\"\x87\x01\n\x1bSetOrgBackupsDefaultRequest\x12\x0e\n\x06org_id\x18\x01 \x01(\t\x12\x18\n\x0bperiod_secs\x18\x02 \x01(\rH\x00\x88\x01\x01\x12\x1b\n\x0eretention_secs\x18\x03 \x01(\rH\x01\x88\x01\x01\x42\x0e\n\x0c_period_secsB\x11\n\x0f_retention_secs\"\\\n\x1cSetOrgBackupsDefaultResponse\x12\x0f\n\x07\x65nabled\x18\x01 \x01(\x08\x12\x13\n\x0bperiod_secs\x18\x02 \x01(\r\x12\x16\n\x0eretention_secs\x18\x03 \x01(\r\"-\n\x1bGetOrgBackupsDefaultRequest\x12\x0e\n\x06org_id\x18\x01 \x01(\t\"\\\n\x1cGetOrgBackupsDefaultResponse\x12\x0f\n\x07\x65nabled\x18\x01 \x01(\x08\x12\x13\n\x0bperiod_secs\x18\x02 \x01(\r\x12\x16\n\x0eretention_secs\x18\x03 \x01(\r\"v\n\x1cSetOrgMachineDefaultsRequest\x12\x0e\n\x06org_id\x18\x01 \x01(\t\x12\x11\n\x04vcpu\x18\x02 \x01(\rH\x00\x88\x01\x01\x12\x19\n\x0cmemory_bytes\x18\x03 \x01(\x04H\x01\x88\x01\x01\x42\x07\n\x05_vcpuB\x0f\n\r_memory_bytes\"\x1f\n\x1dSetOrgMachineDefaultsResponse\".\n\x1cGetOrgMachineDefaultsRequest\x12\x0e\n\x06org_id\x18\x01 \x01(\t\"D\n\x0fResizeVmRequest\x12\r\n\x05vm_id\x18\x01 \x01(\t\x12\x0c\n\x04vcpu\x18\x02 \x01(\r\x12\x14\n\x0cmemory_bytes\x18\x03 \x01(\x04\"H\n\x10ResizeVmResponse\x12\x0c\n\x04vcpu\x18\x01 \x01(\r\x12\x14\n\x0cmemory_bytes\x18\x02 \x01(\x04\x12\x10\n\x08rebooted\x18\x03 \x01(\x08\"\x84\x01\n\x1dGetOrgMachineDefaultsResponse\x12\x0b\n\x03set\x18\x01 \x01(\x08\x12\x0c\n\x04vcpu\x18\x02 \x01(\r\x12\x14\n\x0cmemory_bytes\x18\x03 \x01(\x04\x12\x14\n\x0c\x63\x65iling_vcpu\x18\x04 \x01(\r\x12\x1c\n\x14\x63\x65iling_memory_bytes\x18\x05 \x01(\x04\"r\n&SetOrgIdleIgnoreOutboundDefaultRequest\x12\x0e\n\x06org_id\x18\x01 \x01(\t\x12\x14\n\x07\x65nabled\x18\x02 \x01(\x08H\x00\x88\x01\x01\x12\x16\n\x0e\x61pply_existing\x18\x03 \x01(\x08\x42\n\n\x08_enabled\"]\n\'SetOrgIdleIgnoreOutboundDefaultResponse\x12\x18\n\x10machines_changed\x18\x01 \x01(\r\x12\x18\n\x10machines_skipped\x18\x02 \x01(\r\"8\n&GetOrgIdleIgnoreOutboundDefaultRequest\x12\x0e\n\x06org_id\x18\x01 \x01(\t\"G\n\'GetOrgIdleIgnoreOutboundDefaultResponse\x12\x0b\n\x03set\x18\x01 \x01(\x08\x12\x0f\n\x07\x65nabled\x18\x02 \x01(\x08\"\\\n!SetOrgBotProtectionDefaultRequest\x12\x0e\n\x06org_id\x18\x01 \x01(\t\x12\x0c\n\x04mode\x18\x02 \x01(\t\x12\x19\n\x11new_machines_only\x18\x03 \x01(\x08\"\x89\x01\n\"SetOrgBotProtectionDefaultResponse\x12\x18\n\x10machines_changed\x18\x01 \x01(\r\x12\x19\n\x11snapshots_changed\x18\x02 \x01(\r\x12\x14\n\x0cmachines_off\x18\x03 \x01(\r\x12\x18\n\x10machines_skipped\x18\x04 \x01(\r\"3\n!GetOrgBotProtectionDefaultRequest\x12\x0e\n\x06org_id\x18\x01 \x01(\t\"?\n\"GetOrgBotProtectionDefaultResponse\x12\x0b\n\x03set\x18\x01 \x01(\x08\x12\x0c\n\x04mode\x18\x02 \x01(\t\" \n\x10\x43reateOrgRequest\x12\x0c\n\x04name\x18\x01 \x01(\t\"-\n\x11\x43reateOrgResponse\x12\n\n\x02id\x18\x01 \x01(\t\x12\x0c\n\x04name\x18\x02 \x01(\t\"0\n\x10RenameOrgRequest\x12\x0e\n\x06org_id\x18\x01 \x01(\t\x12\x0c\n\x04name\x18\x02 \x01(\t\"\x13\n\x11RenameOrgResponse\"&\n\x14GetOrgMembersRequest\x12\x0e\n\x06org_id\x18\x01 \x01(\t\"q\n\x15GetOrgMembersResponse\x12+\n\x07members\x18\x01 \x03(\x0b\x32\x1a.boxd.api.v1.OrgMemberInfo\x12+\n\x07invites\x18\x02 \x03(\x0b\x32\x1a.boxd.api.v1.OrgInviteInfo\"]\n\rOrgMemberInfo\x12\x0f\n\x07user_id\x18\x01 \x01(\t\x12\x0c\n\x04role\x18\x02 \x01(\t\x12\x14\n\x0c\x64isplay_name\x18\x03 \x01(\t\x12\x17\n\x0fgithub_username\x18\x04 \x01(\t\"w\n\rOrgInviteInfo\x12\r\n\x05token\x18\x01 \x01(\t\x12\r\n\x05\x65mail\x18\x02 \x01(\t\x12\x12\n\naccept_url\x18\x03 \x01(\t\x12\x12\n\ncreated_at\x18\x04 \x01(\x03\x12\x12\n\nexpires_at\x18\x05 \x01(\x03\x12\x0c\n\x04role\x18\x06 \x01(\t\"E\n\x16InviteOrgMemberRequest\x12\x0e\n\x06org_id\x18\x01 \x01(\t\x12\r\n\x05\x65mail\x18\x02 \x01(\t\x12\x0c\n\x04role\x18\x03 \x01(\t\"d\n\x17InviteOrgMemberResponse\x12\r\n\x05token\x18\x01 \x01(\t\x12\x12\n\naccept_url\x18\x02 \x01(\t\x12\x12\n\nexpires_at\x18\x03 \x01(\x03\x12\x12\n\ncreated_at\x18\x04 \x01(\x03\"\'\n\x16RevokeOrgInviteRequest\x12\r\n\x05token\x18\x01 \x01(\t\"\x19\n\x17RevokeOrgInviteResponse\"9\n\x16RemoveOrgMemberRequest\x12\x0e\n\x06org_id\x18\x01 \x01(\t\x12\x0f\n\x07user_id\x18\x02 \x01(\t\"\x19\n\x17RemoveOrgMemberResponse\"H\n\x17SetOrgMemberRoleRequest\x12\x0e\n\x06org_id\x18\x01 \x01(\t\x12\x0f\n\x07user_id\x18\x02 \x01(\t\x12\x0c\n\x04role\x18\x03 \x01(\t\"\x1a\n\x18SetOrgMemberRoleResponse\"\xc1\x01\n\x08TeamInfo\x12\n\n\x02id\x18\x01 \x01(\t\x12\x0e\n\x06org_id\x18\x02 \x01(\t\x12\x0c\n\x04name\x18\x03 \x01(\t\x12\x1a\n\x12\x63reated_by_user_id\x18\x04 \x01(\t\x12\x12\n\ncreated_at\x18\x05 \x01(\x03\x12\x10\n\x08is_admin\x18\x06 \x01(\x08\x12,\n\x07members\x18\x07 \x03(\x0b\x32\x1b.boxd.api.v1.TeamMemberInfo\x12\x1b\n\x13\x64\x65\x66\x61ult_snapshot_id\x18\x08 \x01(\t\"p\n\x0eTeamMemberInfo\x12\x0f\n\x07user_id\x18\x01 \x01(\t\x12\x0c\n\x04role\x18\x02 \x01(\t\x12\x14\n\x0c\x64isplay_name\x18\x03 \x01(\t\x12\x17\n\x0fgithub_username\x18\x04 \x01(\t\x12\x10\n\x08\x61\x64\x64\x65\x64_at\x18\x05 \x01(\x03\"\"\n\x10ListTeamsRequest\x12\x0e\n\x06org_id\x18\x01 \x01(\t\"9\n\x11ListTeamsResponse\x12$\n\x05teams\x18\x01 \x03(\x0b\x32\x15.boxd.api.v1.TeamInfo\"!\n\x0eGetTeamRequest\x12\x0f\n\x07team_id\x18\x01 \x01(\t\"1\n\x11\x43reateTeamRequest\x12\x0e\n\x06org_id\x18\x01 \x01(\t\x12\x0c\n\x04name\x18\x02 \x01(\t\"2\n\x11RenameTeamRequest\x12\x0f\n\x07team_id\x18\x01 \x01(\t\x12\x0c\n\x04name\x18\x02 \x01(\t\"\x14\n\x12RenameTeamResponse\"%\n\x12\x44\x65stroyTeamRequest\x12\x0f\n\x07team_id\x18\x01 \x01(\t\"\x15\n\x13\x44\x65stroyTeamResponse\"8\n\x14\x41\x64\x64TeamMemberRequest\x12\x0f\n\x07team_id\x18\x01 \x01(\t\x12\x0f\n\x07user_id\x18\x02 \x01(\t\"\x17\n\x15\x41\x64\x64TeamMemberResponse\";\n\x17RemoveTeamMemberRequest\x12\x0f\n\x07team_id\x18\x01 \x01(\t\x12\x0f\n\x07user_id\x18\x02 \x01(\t\"\x1a\n\x18RemoveTeamMemberResponse\"J\n\x18SetTeamMemberRoleRequest\x12\x0f\n\x07team_id\x18\x01 \x01(\t\x12\x0f\n\x07user_id\x18\x02 \x01(\t\x12\x0c\n\x04role\x18\x03 \x01(\t\"\x1b\n\x19SetTeamMemberRoleResponse\"E\n\x1dSetTeamDefaultSnapshotRequest\x12\x0f\n\x07team_id\x18\x01 \x01(\t\x12\x13\n\x0bsnapshot_id\x18\x02 \x01(\t\" \n\x1eSetTeamDefaultSnapshotResponse2\xeeP\n\x07\x42oxdApi\x12G\n\x08\x43reateVm\x12\x1c.boxd.api.v1.CreateVmRequest\x1a\x1d.boxd.api.v1.CreateVmResponse\x12J\n\tDestroyVm\x12\x1d.boxd.api.v1.DestroyVmRequest\x1a\x1e.boxd.api.v1.DestroyVmResponse\x12G\n\x08RenameVm\x12\x1c.boxd.api.v1.RenameVmRequest\x1a\x1d.boxd.api.v1.RenameVmResponse\x12V\n\rSetVmNetworks\x12!.boxd.api.v1.SetVmNetworksRequest\x1a\".boxd.api.v1.SetVmNetworksResponse\x12_\n\x10SetVmEgressAllow\x12$.boxd.api.v1.SetVmEgressAllowRequest\x1a%.boxd.api.v1.SetVmEgressAllowResponse\x12\x44\n\x07StartVm\x12\x1b.boxd.api.v1.StartVmRequest\x1a\x1c.boxd.api.v1.StartVmResponse\x12\x41\n\x06StopVm\x12\x1a.boxd.api.v1.StopVmRequest\x1a\x1b.boxd.api.v1.StopVmResponse\x12G\n\x08RebootVm\x12\x1c.boxd.api.v1.RebootVmRequest\x1a\x1d.boxd.api.v1.RebootVmResponse\x12>\n\x05GetVm\x12\x19.boxd.api.v1.GetVmRequest\x1a\x1a.boxd.api.v1.GetVmResponse\x12\x44\n\x07ListVms\x12\x1b.boxd.api.v1.ListVmsRequest\x1a\x1c.boxd.api.v1.ListVmsResponse\x12V\n\rSuggestVmName\x12!.boxd.api.v1.SuggestVmNameRequest\x1a\".boxd.api.v1.SuggestVmNameResponse\x12M\n\nExposePort\x12\x1e.boxd.api.v1.ExposePortRequest\x1a\x1f.boxd.api.v1.ExposePortResponse\x12S\n\x0cUnexposePort\x12 .boxd.api.v1.UnexposePortRequest\x1a!.boxd.api.v1.UnexposePortResponse\x12_\n\x10ListExposedPorts\x12$.boxd.api.v1.ListExposedPortsRequest\x1a%.boxd.api.v1.ListExposedPortsResponse\x12;\n\x06SetVar\x12\x1a.boxd.api.v1.SetVarRequest\x1a\x15.boxd.api.v1.VarReply\x12\x43\n\x08ListVars\x12\x1c.boxd.api.v1.ListVarsRequest\x1a\x19.boxd.api.v1.VarListReply\x12\x41\n\tRemoveVar\x12\x1d.boxd.api.v1.RemoveVarRequest\x1a\x15.boxd.api.v1.VarReply\x12K\n\x0eSetSecretScope\x12\".boxd.api.v1.SetSecretScopeRequest\x1a\x15.boxd.api.v1.VarReply\x12\x45\n\nStreamLogs\x12\x1e.boxd.api.v1.StreamLogsRequest\x1a\x15.boxd.api.v1.LogChunk0\x01\x12:\n\x04\x45xec\x12\x16.boxd.api.v1.ExecChunk\x1a\x16.boxd.api.v1.ExecChunk(\x01\x30\x01\x12I\n\rDesktopTunnel\x12\x19.boxd.api.v1.DesktopChunk\x1a\x19.boxd.api.v1.DesktopChunk(\x01\x30\x01\x12V\n\rCreateNetwork\x12!.boxd.api.v1.CreateNetworkRequest\x1a\".boxd.api.v1.CreateNetworkResponse\x12S\n\x0cListNetworks\x12 .boxd.api.v1.ListNetworksRequest\x1a!.boxd.api.v1.ListNetworksResponse\x12\\\n\x0f\x41\x64\x64\x43ustomDomain\x12#.boxd.api.v1.AddCustomDomainRequest\x1a$.boxd.api.v1.AddCustomDomainResponse\x12\x62\n\x11ListCustomDomains\x12%.boxd.api.v1.ListCustomDomainsRequest\x1a&.boxd.api.v1.ListCustomDomainsResponse\x12\x65\n\x12RemoveCustomDomain\x12&.boxd.api.v1.RemoveCustomDomainRequest\x1a\'.boxd.api.v1.RemoveCustomDomainResponse\x12S\n\x0cSetOrgDomain\x12 .boxd.api.v1.SetOrgDomainRequest\x1a!.boxd.api.v1.SetOrgDomainResponse\x12S\n\x0cGetOrgDomain\x12 .boxd.api.v1.GetOrgDomainRequest\x1a!.boxd.api.v1.GetOrgDomainResponse\x12Y\n\x0e\x43learOrgDomain\x12\".boxd.api.v1.ClearOrgDomainRequest\x1a#.boxd.api.v1.ClearOrgDomainResponse\x12\x41\n\x06Whoami\x12\x1a.boxd.api.v1.WhoamiRequest\x1a\x1b.boxd.api.v1.WhoamiResponse\x12P\n\x0b\x43reateToken\x12\x1f.boxd.api.v1.CreateTokenRequest\x1a .boxd.api.v1.CreateTokenResponse\x12M\n\nListTokens\x12\x1e.boxd.api.v1.ListTokensRequest\x1a\x1f.boxd.api.v1.ListTokensResponse\x12P\n\x0bRevokeToken\x12\x1f.boxd.api.v1.RevokeTokenRequest\x1a .boxd.api.v1.RevokeTokenResponse\x12M\n\nLinkSshKey\x12\x1e.boxd.api.v1.LinkSshKeyRequest\x1a\x1f.boxd.api.v1.LinkSshKeyResponse\x12J\n\tGetConfig\x12\x1d.boxd.api.v1.GetConfigRequest\x1a\x1e.boxd.api.v1.GetConfigResponse\x12\x41\n\x06\x46orkVm\x12\x1a.boxd.api.v1.ForkVmRequest\x1a\x1b.boxd.api.v1.ForkVmResponse\x12P\n\x0bListProxies\x12\x1f.boxd.api.v1.ListProxiesRequest\x1a .boxd.api.v1.ListProxiesResponse\x12Y\n\x0eListProxyNodes\x12\".boxd.api.v1.ListProxyNodesRequest\x1a#.boxd.api.v1.ListProxyNodesResponse\x12P\n\x0b\x43reateProxy\x12\x1f.boxd.api.v1.CreateProxyRequest\x1a .boxd.api.v1.CreateProxyResponse\x12P\n\x0b\x44\x65leteProxy\x12\x1f.boxd.api.v1.DeleteProxyRequest\x1a .boxd.api.v1.DeleteProxyResponse\x12S\n\x0cSetProxyPort\x12 .boxd.api.v1.SetProxyPortRequest\x1a!.boxd.api.v1.SetProxyPortResponse\x12M\n\nUploadFile\x12\x1e.boxd.api.v1.UploadFileRequest\x1a\x1f.boxd.api.v1.UploadFileResponse\x12S\n\x10UploadFileStream\x12\x1c.boxd.api.v1.UploadFileChunk\x1a\x1f.boxd.api.v1.UploadFileResponse(\x01\x12S\n\x0c\x44ownloadFile\x12 .boxd.api.v1.DownloadFileRequest\x1a!.boxd.api.v1.DownloadFileResponse\x12X\n\x12\x44ownloadFileStream\x12 .boxd.api.v1.DownloadFileRequest\x1a\x1e.boxd.api.v1.DownloadFileChunk0\x01\x12\x44\n\x07ListDir\x12\x1b.boxd.api.v1.ListDirRequest\x1a\x1c.boxd.api.v1.ListDirResponse\x12>\n\x05Mkdir\x12\x19.boxd.api.v1.MkdirRequest\x1a\x1a.boxd.api.v1.MkdirResponse\x12M\n\nRenamePath\x12\x1e.boxd.api.v1.RenamePathRequest\x1a\x1f.boxd.api.v1.RenamePathResponse\x12M\n\nDeletePath\x12\x1e.boxd.api.v1.DeletePathRequest\x1a\x1f.boxd.api.v1.DeletePathResponse\x12G\n\x08\x43opyPath\x12\x1c.boxd.api.v1.CopyPathRequest\x1a\x1d.boxd.api.v1.CopyPathResponse\x12J\n\tSuspendVm\x12\x1d.boxd.api.v1.SuspendVmRequest\x1a\x1e.boxd.api.v1.SuspendVmResponse\x12G\n\x08ResumeVm\x12\x1c.boxd.api.v1.ResumeVmRequest\x1a\x1d.boxd.api.v1.ResumeVmResponse\x12P\n\x0bHibernateVm\x12\x1f.boxd.api.v1.HibernateVmRequest\x1a .boxd.api.v1.HibernateVmResponse\x12\x41\n\x06WakeVm\x12\x1a.boxd.api.v1.WakeVmRequest\x1a\x1b.boxd.api.v1.WakeVmResponse\x12Y\n\x0e\x43reateSnapshot\x12\".boxd.api.v1.CreateSnapshotRequest\x1a#.boxd.api.v1.CreateSnapshotResponse\x12V\n\rListSnapshots\x12!.boxd.api.v1.ListSnapshotsRequest\x1a\".boxd.api.v1.ListSnapshotsResponse\x12P\n\x0bGetSnapshot\x12\x1f.boxd.api.v1.GetSnapshotRequest\x1a .boxd.api.v1.GetSnapshotResponse\x12Y\n\x0e\x44\x65leteSnapshot\x12\".boxd.api.v1.DeleteSnapshotRequest\x1a#.boxd.api.v1.DeleteSnapshotResponse\x12_\n\x14\x43reateVmFromSnapshot\x12(.boxd.api.v1.CreateVmFromSnapshotRequest\x1a\x1d.boxd.api.v1.CreateVmResponse\x12_\n\x10\x43reateCheckpoint\x12$.boxd.api.v1.CreateCheckpointRequest\x1a%.boxd.api.v1.CreateCheckpointResponse\x12\\\n\x0fListCheckpoints\x12#.boxd.api.v1.ListCheckpointsRequest\x1a$.boxd.api.v1.ListCheckpointsResponse\x12_\n\x10\x44\x65leteCheckpoint\x12$.boxd.api.v1.DeleteCheckpointRequest\x1a%.boxd.api.v1.DeleteCheckpointResponse\x12\x62\n\x11RestoreCheckpoint\x12%.boxd.api.v1.RestoreCheckpointRequest\x1a&.boxd.api.v1.RestoreCheckpointResponse\x12n\n\x15SetAutoSuspendTimeout\x12).boxd.api.v1.SetAutoSuspendTimeoutRequest\x1a*.boxd.api.v1.SetAutoSuspendTimeoutResponse\x12t\n\x17SetAutoHibernateTimeout\x12+.boxd.api.v1.SetAutoHibernateTimeoutRequest\x1a,.boxd.api.v1.SetAutoHibernateTimeoutResponse\x12_\n\x10SetBotProtection\x12$.boxd.api.v1.SetBotProtectionRequest\x1a%.boxd.api.v1.SetBotProtectionResponse\x12n\n\x15SetIdleIgnoreOutbound\x12).boxd.api.v1.SetIdleIgnoreOutboundRequest\x1a*.boxd.api.v1.SetIdleIgnoreOutboundResponse\x12Y\n\x0eSetDeleteAfter\x12\".boxd.api.v1.SetDeleteAfterRequest\x1a#.boxd.api.v1.SetDeleteAfterResponse\x12M\n\nCreateDisk\x12\x1e.boxd.api.v1.CreateDiskRequest\x1a\x1f.boxd.api.v1.CreateDiskResponse\x12J\n\tListDisks\x12\x1d.boxd.api.v1.ListDisksRequest\x1a\x1e.boxd.api.v1.ListDisksResponse\x12M\n\nAttachDisk\x12\x1e.boxd.api.v1.AttachDiskRequest\x1a\x1f.boxd.api.v1.AttachDiskResponse\x12M\n\nDetachDisk\x12\x1e.boxd.api.v1.DetachDiskRequest\x1a\x1f.boxd.api.v1.DetachDiskResponse\x12P\n\x0b\x44\x65stroyDisk\x12\x1f.boxd.api.v1.DestroyDiskRequest\x1a .boxd.api.v1.DestroyDiskResponse\x12S\n\x0c\x43reateApiKey\x12 .boxd.api.v1.CreateApiKeyRequest\x1a!.boxd.api.v1.CreateApiKeyResponse\x12P\n\x0bListApiKeys\x12\x1f.boxd.api.v1.ListApiKeysRequest\x1a .boxd.api.v1.ListApiKeysResponse\x12S\n\x0c\x44\x65leteApiKey\x12 .boxd.api.v1.DeleteApiKeyRequest\x1a!.boxd.api.v1.DeleteApiKeyResponse\x12J\n\tListPlans\x12\x1d.boxd.api.v1.ListPlansRequest\x1a\x1e.boxd.api.v1.ListPlansResponse\x12M\n\nGetBilling\x12\x1e.boxd.api.v1.GetBillingRequest\x1a\x1f.boxd.api.v1.GetBillingResponse\x12n\n\x15\x43reateCheckoutSession\x12).boxd.api.v1.CreateCheckoutSessionRequest\x1a*.boxd.api.v1.CreateCheckoutSessionResponse\x12}\n\x1a\x43reateBillingPortalSession\x12..boxd.api.v1.CreateBillingPortalSessionRequest\x1a/.boxd.api.v1.CreateBillingPortalSessionResponse\x12\x44\n\x07ShareVm\x12\x1b.boxd.api.v1.ShareVmRequest\x1a\x1c.boxd.api.v1.ShareVmResponse\x12J\n\tUnshareVm\x12\x1d.boxd.api.v1.UnshareVmRequest\x1a\x1e.boxd.api.v1.UnshareVmResponse\x12G\n\x08ListOrgs\x12\x1c.boxd.api.v1.ListOrgsRequest\x1a\x1d.boxd.api.v1.ListOrgsResponse\x12V\n\rGetOrgBilling\x12!.boxd.api.v1.GetOrgBillingRequest\x1a\".boxd.api.v1.GetOrgBillingResponse\x12P\n\x0bGetOrgUsage\x12\x1f.boxd.api.v1.GetOrgUsageRequest\x1a .boxd.api.v1.GetOrgUsageResponse\x12M\n\nGetVmUsage\x12\x1e.boxd.api.v1.GetVmUsageRequest\x1a\x1f.boxd.api.v1.GetVmUsageResponse\x12h\n\x13ListBillingActivity\x12\'.boxd.api.v1.ListBillingActivityRequest\x1a(.boxd.api.v1.ListBillingActivityResponse\x12\x62\n\x11SetBackupSchedule\x12%.boxd.api.v1.SetBackupScheduleRequest\x1a&.boxd.api.v1.SetBackupScheduleResponse\x12h\n\x13\x43learBackupSchedule\x12\'.boxd.api.v1.ClearBackupScheduleRequest\x1a(.boxd.api.v1.ClearBackupScheduleResponse\x12\x62\n\x11GetBackupSchedule\x12%.boxd.api.v1.GetBackupScheduleRequest\x1a&.boxd.api.v1.GetBackupScheduleResponse\x12P\n\x0bListBackups\x12\x1f.boxd.api.v1.ListBackupsRequest\x1a .boxd.api.v1.ListBackupsResponse\x12V\n\rTriggerBackup\x12!.boxd.api.v1.TriggerBackupRequest\x1a\".boxd.api.v1.TriggerBackupResponse\x12S\n\x0c\x44\x65leteBackup\x12 .boxd.api.v1.DeleteBackupRequest\x1a!.boxd.api.v1.DeleteBackupResponse\x12V\n\rRestoreBackup\x12!.boxd.api.v1.RestoreBackupRequest\x1a\".boxd.api.v1.RestoreBackupResponse\x12k\n\x14SetOrgBackupsDefault\x12(.boxd.api.v1.SetOrgBackupsDefaultRequest\x1a).boxd.api.v1.SetOrgBackupsDefaultResponse\x12k\n\x14GetOrgBackupsDefault\x12(.boxd.api.v1.GetOrgBackupsDefaultRequest\x1a).boxd.api.v1.GetOrgBackupsDefaultResponse\x12n\n\x15SetOrgMachineDefaults\x12).boxd.api.v1.SetOrgMachineDefaultsRequest\x1a*.boxd.api.v1.SetOrgMachineDefaultsResponse\x12n\n\x15GetOrgMachineDefaults\x12).boxd.api.v1.GetOrgMachineDefaultsRequest\x1a*.boxd.api.v1.GetOrgMachineDefaultsResponse\x12\x8c\x01\n\x1fSetOrgIdleIgnoreOutboundDefault\x12\x33.boxd.api.v1.SetOrgIdleIgnoreOutboundDefaultRequest\x1a\x34.boxd.api.v1.SetOrgIdleIgnoreOutboundDefaultResponse\x12\x8c\x01\n\x1fGetOrgIdleIgnoreOutboundDefault\x12\x33.boxd.api.v1.GetOrgIdleIgnoreOutboundDefaultRequest\x1a\x34.boxd.api.v1.GetOrgIdleIgnoreOutboundDefaultResponse\x12}\n\x1aSetOrgBotProtectionDefault\x12..boxd.api.v1.SetOrgBotProtectionDefaultRequest\x1a/.boxd.api.v1.SetOrgBotProtectionDefaultResponse\x12}\n\x1aGetOrgBotProtectionDefault\x12..boxd.api.v1.GetOrgBotProtectionDefaultRequest\x1a/.boxd.api.v1.GetOrgBotProtectionDefaultResponse\x12J\n\tCreateOrg\x12\x1d.boxd.api.v1.CreateOrgRequest\x1a\x1e.boxd.api.v1.CreateOrgResponse\x12J\n\tRenameOrg\x12\x1d.boxd.api.v1.RenameOrgRequest\x1a\x1e.boxd.api.v1.RenameOrgResponse\x12V\n\rGetOrgMembers\x12!.boxd.api.v1.GetOrgMembersRequest\x1a\".boxd.api.v1.GetOrgMembersResponse\x12\\\n\x0fInviteOrgMember\x12#.boxd.api.v1.InviteOrgMemberRequest\x1a$.boxd.api.v1.InviteOrgMemberResponse\x12\\\n\x0fRevokeOrgInvite\x12#.boxd.api.v1.RevokeOrgInviteRequest\x1a$.boxd.api.v1.RevokeOrgInviteResponse\x12\\\n\x0fRemoveOrgMember\x12#.boxd.api.v1.RemoveOrgMemberRequest\x1a$.boxd.api.v1.RemoveOrgMemberResponse\x12_\n\x10SetOrgMemberRole\x12$.boxd.api.v1.SetOrgMemberRoleRequest\x1a%.boxd.api.v1.SetOrgMemberRoleResponse\x12J\n\tListTeams\x12\x1d.boxd.api.v1.ListTeamsRequest\x1a\x1e.boxd.api.v1.ListTeamsResponse\x12=\n\x07GetTeam\x12\x1b.boxd.api.v1.GetTeamRequest\x1a\x15.boxd.api.v1.TeamInfo\x12\x43\n\nCreateTeam\x12\x1e.boxd.api.v1.CreateTeamRequest\x1a\x15.boxd.api.v1.TeamInfo\x12M\n\nRenameTeam\x12\x1e.boxd.api.v1.RenameTeamRequest\x1a\x1f.boxd.api.v1.RenameTeamResponse\x12P\n\x0b\x44\x65stroyTeam\x12\x1f.boxd.api.v1.DestroyTeamRequest\x1a .boxd.api.v1.DestroyTeamResponse\x12V\n\rAddTeamMember\x12!.boxd.api.v1.AddTeamMemberRequest\x1a\".boxd.api.v1.AddTeamMemberResponse\x12_\n\x10RemoveTeamMember\x12$.boxd.api.v1.RemoveTeamMemberRequest\x1a%.boxd.api.v1.RemoveTeamMemberResponse\x12\x62\n\x11SetTeamMemberRole\x12%.boxd.api.v1.SetTeamMemberRoleRequest\x1a&.boxd.api.v1.SetTeamMemberRoleResponse\x12q\n\x16SetTeamDefaultSnapshot\x12*.boxd.api.v1.SetTeamDefaultSnapshotRequest\x1a+.boxd.api.v1.SetTeamDefaultSnapshotResponse\x12G\n\x08ResizeVm\x12\x1c.boxd.api.v1.ResizeVmRequest\x1a\x1d.boxd.api.v1.ResizeVmResponseb\x06proto3')
|
|
28
28
|
|
|
29
29
|
_globals = globals()
|
|
30
30
|
_builder.BuildMessageAndEnumDescriptors(DESCRIPTOR, _globals)
|
|
@@ -492,81 +492,81 @@ if not _descriptor._USE_C_DESCRIPTORS:
|
|
|
492
492
|
_globals['_GETORGIDLEIGNOREOUTBOUNDDEFAULTRESPONSE']._serialized_start=16110
|
|
493
493
|
_globals['_GETORGIDLEIGNOREOUTBOUNDDEFAULTRESPONSE']._serialized_end=16181
|
|
494
494
|
_globals['_SETORGBOTPROTECTIONDEFAULTREQUEST']._serialized_start=16183
|
|
495
|
-
_globals['_SETORGBOTPROTECTIONDEFAULTREQUEST']._serialized_end=
|
|
496
|
-
_globals['_SETORGBOTPROTECTIONDEFAULTRESPONSE']._serialized_start=
|
|
497
|
-
_globals['_SETORGBOTPROTECTIONDEFAULTRESPONSE']._serialized_end=
|
|
498
|
-
_globals['_GETORGBOTPROTECTIONDEFAULTREQUEST']._serialized_start=
|
|
499
|
-
_globals['_GETORGBOTPROTECTIONDEFAULTREQUEST']._serialized_end=
|
|
500
|
-
_globals['_GETORGBOTPROTECTIONDEFAULTRESPONSE']._serialized_start=
|
|
501
|
-
_globals['_GETORGBOTPROTECTIONDEFAULTRESPONSE']._serialized_end=
|
|
502
|
-
_globals['_CREATEORGREQUEST']._serialized_start=
|
|
503
|
-
_globals['_CREATEORGREQUEST']._serialized_end=
|
|
504
|
-
_globals['_CREATEORGRESPONSE']._serialized_start=
|
|
505
|
-
_globals['_CREATEORGRESPONSE']._serialized_end=
|
|
506
|
-
_globals['_RENAMEORGREQUEST']._serialized_start=
|
|
507
|
-
_globals['_RENAMEORGREQUEST']._serialized_end=
|
|
508
|
-
_globals['_RENAMEORGRESPONSE']._serialized_start=
|
|
509
|
-
_globals['_RENAMEORGRESPONSE']._serialized_end=
|
|
510
|
-
_globals['_GETORGMEMBERSREQUEST']._serialized_start=
|
|
511
|
-
_globals['_GETORGMEMBERSREQUEST']._serialized_end=
|
|
512
|
-
_globals['_GETORGMEMBERSRESPONSE']._serialized_start=
|
|
513
|
-
_globals['_GETORGMEMBERSRESPONSE']._serialized_end=
|
|
514
|
-
_globals['_ORGMEMBERINFO']._serialized_start=
|
|
515
|
-
_globals['_ORGMEMBERINFO']._serialized_end=
|
|
516
|
-
_globals['_ORGINVITEINFO']._serialized_start=
|
|
517
|
-
_globals['_ORGINVITEINFO']._serialized_end=
|
|
518
|
-
_globals['_INVITEORGMEMBERREQUEST']._serialized_start=
|
|
519
|
-
_globals['_INVITEORGMEMBERREQUEST']._serialized_end=
|
|
520
|
-
_globals['_INVITEORGMEMBERRESPONSE']._serialized_start=
|
|
521
|
-
_globals['_INVITEORGMEMBERRESPONSE']._serialized_end=
|
|
522
|
-
_globals['_REVOKEORGINVITEREQUEST']._serialized_start=
|
|
523
|
-
_globals['_REVOKEORGINVITEREQUEST']._serialized_end=
|
|
524
|
-
_globals['_REVOKEORGINVITERESPONSE']._serialized_start=
|
|
525
|
-
_globals['_REVOKEORGINVITERESPONSE']._serialized_end=
|
|
526
|
-
_globals['_REMOVEORGMEMBERREQUEST']._serialized_start=
|
|
527
|
-
_globals['_REMOVEORGMEMBERREQUEST']._serialized_end=
|
|
528
|
-
_globals['_REMOVEORGMEMBERRESPONSE']._serialized_start=
|
|
529
|
-
_globals['_REMOVEORGMEMBERRESPONSE']._serialized_end=
|
|
530
|
-
_globals['_SETORGMEMBERROLEREQUEST']._serialized_start=
|
|
531
|
-
_globals['_SETORGMEMBERROLEREQUEST']._serialized_end=
|
|
532
|
-
_globals['_SETORGMEMBERROLERESPONSE']._serialized_start=
|
|
533
|
-
_globals['_SETORGMEMBERROLERESPONSE']._serialized_end=
|
|
534
|
-
_globals['_TEAMINFO']._serialized_start=
|
|
535
|
-
_globals['_TEAMINFO']._serialized_end=
|
|
536
|
-
_globals['_TEAMMEMBERINFO']._serialized_start=
|
|
537
|
-
_globals['_TEAMMEMBERINFO']._serialized_end=
|
|
538
|
-
_globals['_LISTTEAMSREQUEST']._serialized_start=
|
|
539
|
-
_globals['_LISTTEAMSREQUEST']._serialized_end=
|
|
540
|
-
_globals['_LISTTEAMSRESPONSE']._serialized_start=
|
|
541
|
-
_globals['_LISTTEAMSRESPONSE']._serialized_end=
|
|
542
|
-
_globals['_GETTEAMREQUEST']._serialized_start=
|
|
543
|
-
_globals['_GETTEAMREQUEST']._serialized_end=
|
|
544
|
-
_globals['_CREATETEAMREQUEST']._serialized_start=
|
|
545
|
-
_globals['_CREATETEAMREQUEST']._serialized_end=
|
|
546
|
-
_globals['_RENAMETEAMREQUEST']._serialized_start=
|
|
547
|
-
_globals['_RENAMETEAMREQUEST']._serialized_end=
|
|
548
|
-
_globals['_RENAMETEAMRESPONSE']._serialized_start=
|
|
549
|
-
_globals['_RENAMETEAMRESPONSE']._serialized_end=
|
|
550
|
-
_globals['_DESTROYTEAMREQUEST']._serialized_start=
|
|
551
|
-
_globals['_DESTROYTEAMREQUEST']._serialized_end=
|
|
552
|
-
_globals['_DESTROYTEAMRESPONSE']._serialized_start=
|
|
553
|
-
_globals['_DESTROYTEAMRESPONSE']._serialized_end=
|
|
554
|
-
_globals['_ADDTEAMMEMBERREQUEST']._serialized_start=
|
|
555
|
-
_globals['_ADDTEAMMEMBERREQUEST']._serialized_end=
|
|
556
|
-
_globals['_ADDTEAMMEMBERRESPONSE']._serialized_start=
|
|
557
|
-
_globals['_ADDTEAMMEMBERRESPONSE']._serialized_end=
|
|
558
|
-
_globals['_REMOVETEAMMEMBERREQUEST']._serialized_start=
|
|
559
|
-
_globals['_REMOVETEAMMEMBERREQUEST']._serialized_end=
|
|
560
|
-
_globals['_REMOVETEAMMEMBERRESPONSE']._serialized_start=
|
|
561
|
-
_globals['_REMOVETEAMMEMBERRESPONSE']._serialized_end=
|
|
562
|
-
_globals['_SETTEAMMEMBERROLEREQUEST']._serialized_start=
|
|
563
|
-
_globals['_SETTEAMMEMBERROLEREQUEST']._serialized_end=
|
|
564
|
-
_globals['_SETTEAMMEMBERROLERESPONSE']._serialized_start=
|
|
565
|
-
_globals['_SETTEAMMEMBERROLERESPONSE']._serialized_end=
|
|
566
|
-
_globals['_SETTEAMDEFAULTSNAPSHOTREQUEST']._serialized_start=
|
|
567
|
-
_globals['_SETTEAMDEFAULTSNAPSHOTREQUEST']._serialized_end=
|
|
568
|
-
_globals['_SETTEAMDEFAULTSNAPSHOTRESPONSE']._serialized_start=
|
|
569
|
-
_globals['_SETTEAMDEFAULTSNAPSHOTRESPONSE']._serialized_end=
|
|
570
|
-
_globals['_BOXDAPI']._serialized_start=
|
|
571
|
-
_globals['_BOXDAPI']._serialized_end=
|
|
495
|
+
_globals['_SETORGBOTPROTECTIONDEFAULTREQUEST']._serialized_end=16275
|
|
496
|
+
_globals['_SETORGBOTPROTECTIONDEFAULTRESPONSE']._serialized_start=16278
|
|
497
|
+
_globals['_SETORGBOTPROTECTIONDEFAULTRESPONSE']._serialized_end=16415
|
|
498
|
+
_globals['_GETORGBOTPROTECTIONDEFAULTREQUEST']._serialized_start=16417
|
|
499
|
+
_globals['_GETORGBOTPROTECTIONDEFAULTREQUEST']._serialized_end=16468
|
|
500
|
+
_globals['_GETORGBOTPROTECTIONDEFAULTRESPONSE']._serialized_start=16470
|
|
501
|
+
_globals['_GETORGBOTPROTECTIONDEFAULTRESPONSE']._serialized_end=16533
|
|
502
|
+
_globals['_CREATEORGREQUEST']._serialized_start=16535
|
|
503
|
+
_globals['_CREATEORGREQUEST']._serialized_end=16567
|
|
504
|
+
_globals['_CREATEORGRESPONSE']._serialized_start=16569
|
|
505
|
+
_globals['_CREATEORGRESPONSE']._serialized_end=16614
|
|
506
|
+
_globals['_RENAMEORGREQUEST']._serialized_start=16616
|
|
507
|
+
_globals['_RENAMEORGREQUEST']._serialized_end=16664
|
|
508
|
+
_globals['_RENAMEORGRESPONSE']._serialized_start=16666
|
|
509
|
+
_globals['_RENAMEORGRESPONSE']._serialized_end=16685
|
|
510
|
+
_globals['_GETORGMEMBERSREQUEST']._serialized_start=16687
|
|
511
|
+
_globals['_GETORGMEMBERSREQUEST']._serialized_end=16725
|
|
512
|
+
_globals['_GETORGMEMBERSRESPONSE']._serialized_start=16727
|
|
513
|
+
_globals['_GETORGMEMBERSRESPONSE']._serialized_end=16840
|
|
514
|
+
_globals['_ORGMEMBERINFO']._serialized_start=16842
|
|
515
|
+
_globals['_ORGMEMBERINFO']._serialized_end=16935
|
|
516
|
+
_globals['_ORGINVITEINFO']._serialized_start=16937
|
|
517
|
+
_globals['_ORGINVITEINFO']._serialized_end=17056
|
|
518
|
+
_globals['_INVITEORGMEMBERREQUEST']._serialized_start=17058
|
|
519
|
+
_globals['_INVITEORGMEMBERREQUEST']._serialized_end=17127
|
|
520
|
+
_globals['_INVITEORGMEMBERRESPONSE']._serialized_start=17129
|
|
521
|
+
_globals['_INVITEORGMEMBERRESPONSE']._serialized_end=17229
|
|
522
|
+
_globals['_REVOKEORGINVITEREQUEST']._serialized_start=17231
|
|
523
|
+
_globals['_REVOKEORGINVITEREQUEST']._serialized_end=17270
|
|
524
|
+
_globals['_REVOKEORGINVITERESPONSE']._serialized_start=17272
|
|
525
|
+
_globals['_REVOKEORGINVITERESPONSE']._serialized_end=17297
|
|
526
|
+
_globals['_REMOVEORGMEMBERREQUEST']._serialized_start=17299
|
|
527
|
+
_globals['_REMOVEORGMEMBERREQUEST']._serialized_end=17356
|
|
528
|
+
_globals['_REMOVEORGMEMBERRESPONSE']._serialized_start=17358
|
|
529
|
+
_globals['_REMOVEORGMEMBERRESPONSE']._serialized_end=17383
|
|
530
|
+
_globals['_SETORGMEMBERROLEREQUEST']._serialized_start=17385
|
|
531
|
+
_globals['_SETORGMEMBERROLEREQUEST']._serialized_end=17457
|
|
532
|
+
_globals['_SETORGMEMBERROLERESPONSE']._serialized_start=17459
|
|
533
|
+
_globals['_SETORGMEMBERROLERESPONSE']._serialized_end=17485
|
|
534
|
+
_globals['_TEAMINFO']._serialized_start=17488
|
|
535
|
+
_globals['_TEAMINFO']._serialized_end=17681
|
|
536
|
+
_globals['_TEAMMEMBERINFO']._serialized_start=17683
|
|
537
|
+
_globals['_TEAMMEMBERINFO']._serialized_end=17795
|
|
538
|
+
_globals['_LISTTEAMSREQUEST']._serialized_start=17797
|
|
539
|
+
_globals['_LISTTEAMSREQUEST']._serialized_end=17831
|
|
540
|
+
_globals['_LISTTEAMSRESPONSE']._serialized_start=17833
|
|
541
|
+
_globals['_LISTTEAMSRESPONSE']._serialized_end=17890
|
|
542
|
+
_globals['_GETTEAMREQUEST']._serialized_start=17892
|
|
543
|
+
_globals['_GETTEAMREQUEST']._serialized_end=17925
|
|
544
|
+
_globals['_CREATETEAMREQUEST']._serialized_start=17927
|
|
545
|
+
_globals['_CREATETEAMREQUEST']._serialized_end=17976
|
|
546
|
+
_globals['_RENAMETEAMREQUEST']._serialized_start=17978
|
|
547
|
+
_globals['_RENAMETEAMREQUEST']._serialized_end=18028
|
|
548
|
+
_globals['_RENAMETEAMRESPONSE']._serialized_start=18030
|
|
549
|
+
_globals['_RENAMETEAMRESPONSE']._serialized_end=18050
|
|
550
|
+
_globals['_DESTROYTEAMREQUEST']._serialized_start=18052
|
|
551
|
+
_globals['_DESTROYTEAMREQUEST']._serialized_end=18089
|
|
552
|
+
_globals['_DESTROYTEAMRESPONSE']._serialized_start=18091
|
|
553
|
+
_globals['_DESTROYTEAMRESPONSE']._serialized_end=18112
|
|
554
|
+
_globals['_ADDTEAMMEMBERREQUEST']._serialized_start=18114
|
|
555
|
+
_globals['_ADDTEAMMEMBERREQUEST']._serialized_end=18170
|
|
556
|
+
_globals['_ADDTEAMMEMBERRESPONSE']._serialized_start=18172
|
|
557
|
+
_globals['_ADDTEAMMEMBERRESPONSE']._serialized_end=18195
|
|
558
|
+
_globals['_REMOVETEAMMEMBERREQUEST']._serialized_start=18197
|
|
559
|
+
_globals['_REMOVETEAMMEMBERREQUEST']._serialized_end=18256
|
|
560
|
+
_globals['_REMOVETEAMMEMBERRESPONSE']._serialized_start=18258
|
|
561
|
+
_globals['_REMOVETEAMMEMBERRESPONSE']._serialized_end=18284
|
|
562
|
+
_globals['_SETTEAMMEMBERROLEREQUEST']._serialized_start=18286
|
|
563
|
+
_globals['_SETTEAMMEMBERROLEREQUEST']._serialized_end=18360
|
|
564
|
+
_globals['_SETTEAMMEMBERROLERESPONSE']._serialized_start=18362
|
|
565
|
+
_globals['_SETTEAMMEMBERROLERESPONSE']._serialized_end=18389
|
|
566
|
+
_globals['_SETTEAMDEFAULTSNAPSHOTREQUEST']._serialized_start=18391
|
|
567
|
+
_globals['_SETTEAMDEFAULTSNAPSHOTREQUEST']._serialized_end=18460
|
|
568
|
+
_globals['_SETTEAMDEFAULTSNAPSHOTRESPONSE']._serialized_start=18462
|
|
569
|
+
_globals['_SETTEAMDEFAULTSNAPSHOTRESPONSE']._serialized_end=18494
|
|
570
|
+
_globals['_BOXDAPI']._serialized_start=18497
|
|
571
|
+
_globals['_BOXDAPI']._serialized_end=28847
|
|
572
572
|
# @@protoc_insertion_point(module_scope)
|
|
@@ -46,6 +46,7 @@ from .models import (
|
|
|
46
46
|
MachineUsageReport,
|
|
47
47
|
Org,
|
|
48
48
|
OrgBotProtectionDefault,
|
|
49
|
+
OrgBotProtectionDefaultResult,
|
|
49
50
|
OrgDomain,
|
|
50
51
|
OrgIdleIgnoreOutboundDefault,
|
|
51
52
|
OrgIdleIgnoreOutboundDefaultResult,
|
|
@@ -445,6 +446,15 @@ def org_bot_protection_default(msg) -> OrgBotProtectionDefault:
|
|
|
445
446
|
return OrgBotProtectionDefault(is_set=msg.set, mode=msg.mode)
|
|
446
447
|
|
|
447
448
|
|
|
449
|
+
def org_bot_protection_default_result(msg) -> OrgBotProtectionDefaultResult:
|
|
450
|
+
return OrgBotProtectionDefaultResult(
|
|
451
|
+
machines_changed=msg.machines_changed,
|
|
452
|
+
snapshots_changed=msg.snapshots_changed,
|
|
453
|
+
machines_off=msg.machines_off,
|
|
454
|
+
machines_skipped=msg.machines_skipped,
|
|
455
|
+
)
|
|
456
|
+
|
|
457
|
+
|
|
448
458
|
def created_org(msg) -> CreatedOrg:
|
|
449
459
|
return CreatedOrg(id=msg.id, name=msg.name)
|
|
450
460
|
|
|
@@ -536,6 +536,20 @@ class OrgBotProtectionDefault(BaseModel):
|
|
|
536
536
|
"""What a machine created in the org right now starts with."""
|
|
537
537
|
|
|
538
538
|
|
|
539
|
+
class OrgBotProtectionDefaultResult(BaseModel):
|
|
540
|
+
"""What `orgs.set_bot_protection_default` did to the org's existing
|
|
541
|
+
machines. All counts are 0 with ``new_machines_only=True``."""
|
|
542
|
+
|
|
543
|
+
machines_changed: int
|
|
544
|
+
"""Existing machines whose mode was changed."""
|
|
545
|
+
snapshots_changed: int
|
|
546
|
+
"""Snapshots whose mode was changed (a restore takes its snapshot's)."""
|
|
547
|
+
machines_off: int
|
|
548
|
+
"""Machines with bot protection off, left off."""
|
|
549
|
+
machines_skipped: int
|
|
550
|
+
"""Other members' private machines, left as they were."""
|
|
551
|
+
|
|
552
|
+
|
|
539
553
|
class CreatedOrg(BaseModel):
|
|
540
554
|
id: str
|
|
541
555
|
name: str
|
|
@@ -15,6 +15,7 @@ from ..models import (
|
|
|
15
15
|
BillingActivityPage,
|
|
16
16
|
Org,
|
|
17
17
|
OrgBotProtectionDefault,
|
|
18
|
+
OrgBotProtectionDefaultResult,
|
|
18
19
|
OrgDomain,
|
|
19
20
|
OrgIdleIgnoreOutboundDefault,
|
|
20
21
|
OrgIdleIgnoreOutboundDefaultResult,
|
|
@@ -256,8 +257,12 @@ class Orgs(Namespace):
|
|
|
256
257
|
)
|
|
257
258
|
|
|
258
259
|
def set_bot_protection_default(
|
|
259
|
-
self,
|
|
260
|
-
|
|
260
|
+
self,
|
|
261
|
+
org: str = "",
|
|
262
|
+
*,
|
|
263
|
+
mode: BotProtectionMode,
|
|
264
|
+
new_machines_only: bool = False,
|
|
265
|
+
) -> OrgBotProtectionDefaultResult:
|
|
261
266
|
"""Set the bot protection mode machines in this org start with.
|
|
262
267
|
Requires org admin.
|
|
263
268
|
|
|
@@ -265,14 +270,22 @@ class Orgs(Namespace):
|
|
|
265
270
|
request would wake the machine, ``"off"`` never; see
|
|
266
271
|
:meth:`Machines.set_bot_protection`.
|
|
267
272
|
|
|
268
|
-
|
|
269
|
-
|
|
273
|
+
It is also set at once on the org's existing machines and snapshots
|
|
274
|
+
you can manage (your own and the shared ones), except machines whose
|
|
275
|
+
bot protection is off. Pass ``new_machines_only=True`` to leave
|
|
276
|
+
existing machines as they are. Other members' private machines are
|
|
277
|
+
never changed, and a fork or a restore keeps its source's mode. The
|
|
278
|
+
result counts what changed and what was left alone.
|
|
270
279
|
"""
|
|
271
|
-
|
|
272
|
-
|
|
273
|
-
|
|
274
|
-
|
|
275
|
-
|
|
280
|
+
return m.org_bot_protection_default_result(
|
|
281
|
+
self._transport.call(
|
|
282
|
+
"SetOrgBotProtectionDefault",
|
|
283
|
+
api_pb2.SetOrgBotProtectionDefaultRequest(
|
|
284
|
+
org_id=org,
|
|
285
|
+
mode=_bot_protection_default_mode(mode),
|
|
286
|
+
new_machines_only=new_machines_only,
|
|
287
|
+
),
|
|
288
|
+
)
|
|
276
289
|
)
|
|
277
290
|
|
|
278
291
|
def get_bot_protection_default(self, org: str = "") -> OrgBotProtectionDefault:
|
|
@@ -290,8 +303,8 @@ class Orgs(Namespace):
|
|
|
290
303
|
|
|
291
304
|
def clear_bot_protection_default(self, org: str = "") -> None:
|
|
292
305
|
"""Drop the org's default bot protection, so new machines follow the
|
|
293
|
-
platform's setting again. Requires org admin. Existing machines
|
|
294
|
-
|
|
306
|
+
platform's setting again. Requires org admin. Existing machines keep
|
|
307
|
+
their mode."""
|
|
295
308
|
self._transport.call(
|
|
296
309
|
"SetOrgBotProtectionDefault",
|
|
297
310
|
api_pb2.SetOrgBotProtectionDefaultRequest(org_id=org, mode=""),
|
|
@@ -594,14 +607,22 @@ class AsyncOrgs(Namespace):
|
|
|
594
607
|
)
|
|
595
608
|
|
|
596
609
|
async def set_bot_protection_default(
|
|
597
|
-
self,
|
|
598
|
-
|
|
610
|
+
self,
|
|
611
|
+
org: str = "",
|
|
612
|
+
*,
|
|
613
|
+
mode: BotProtectionMode,
|
|
614
|
+
new_machines_only: bool = False,
|
|
615
|
+
) -> OrgBotProtectionDefaultResult:
|
|
599
616
|
"""See :meth:`Orgs.set_bot_protection_default`."""
|
|
600
|
-
|
|
601
|
-
|
|
602
|
-
|
|
603
|
-
|
|
604
|
-
|
|
617
|
+
return m.org_bot_protection_default_result(
|
|
618
|
+
await self._transport.call(
|
|
619
|
+
"SetOrgBotProtectionDefault",
|
|
620
|
+
api_pb2.SetOrgBotProtectionDefaultRequest(
|
|
621
|
+
org_id=org,
|
|
622
|
+
mode=_bot_protection_default_mode(mode),
|
|
623
|
+
new_machines_only=new_machines_only,
|
|
624
|
+
),
|
|
625
|
+
)
|
|
605
626
|
)
|
|
606
627
|
|
|
607
628
|
async def get_bot_protection_default(
|
|
@@ -778,6 +778,9 @@ def test_orgs_set_get_clear_bot_protection_default():
|
|
|
778
778
|
|
|
779
779
|
transport = FakeTransport(
|
|
780
780
|
[
|
|
781
|
+
api_pb2.SetOrgBotProtectionDefaultResponse(
|
|
782
|
+
machines_changed=3, snapshots_changed=2, machines_off=1, machines_skipped=4
|
|
783
|
+
),
|
|
781
784
|
api_pb2.SetOrgBotProtectionDefaultResponse(),
|
|
782
785
|
api_pb2.GetOrgBotProtectionDefaultResponse(set=True, mode="sleep_only"),
|
|
783
786
|
api_pb2.SetOrgBotProtectionDefaultResponse(),
|
|
@@ -786,17 +789,33 @@ def test_orgs_set_get_clear_bot_protection_default():
|
|
|
786
789
|
)
|
|
787
790
|
ns = Orgs(transport)
|
|
788
791
|
|
|
789
|
-
|
|
792
|
+
# By default existing machines are changed too (BOX-541).
|
|
793
|
+
applied = ns.set_bot_protection_default("o1", mode="sleep_only")
|
|
790
794
|
method, request = transport.calls[0]
|
|
791
795
|
assert method == "SetOrgBotProtectionDefault"
|
|
792
|
-
assert (request.org_id, request.mode) == (
|
|
796
|
+
assert (request.org_id, request.mode, request.new_machines_only) == (
|
|
797
|
+
"o1",
|
|
798
|
+
"sleep_only",
|
|
799
|
+
False,
|
|
800
|
+
)
|
|
801
|
+
assert (
|
|
802
|
+
applied.machines_changed,
|
|
803
|
+
applied.snapshots_changed,
|
|
804
|
+
applied.machines_off,
|
|
805
|
+
applied.machines_skipped,
|
|
806
|
+
) == (3, 2, 1, 4)
|
|
807
|
+
|
|
808
|
+
plain = ns.set_bot_protection_default("o1", mode="on", new_machines_only=True)
|
|
809
|
+
_, request = transport.calls[1]
|
|
810
|
+
assert (request.mode, request.new_machines_only) == ("on", True)
|
|
811
|
+
assert plain.machines_changed == 0
|
|
793
812
|
|
|
794
813
|
default = ns.get_bot_protection_default("o1")
|
|
795
814
|
assert (default.is_set, default.mode) == (True, "sleep_only")
|
|
796
815
|
|
|
797
816
|
# Clearing is the same RPC with an EMPTY mode.
|
|
798
817
|
ns.clear_bot_protection_default("o1")
|
|
799
|
-
method, request = transport.calls[
|
|
818
|
+
method, request = transport.calls[3]
|
|
800
819
|
assert method == "SetOrgBotProtectionDefault"
|
|
801
820
|
assert (request.org_id, request.mode) == ("o1", "")
|
|
802
821
|
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|