latitudesh-python-sdk 2.3.0__py3-none-any.whl

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.
Files changed (242) hide show
  1. latitudesh_python_sdk/__init__.py +18 -0
  2. latitudesh_python_sdk/_hooks/__init__.py +5 -0
  3. latitudesh_python_sdk/_hooks/registration.py +13 -0
  4. latitudesh_python_sdk/_hooks/sdkhooks.py +76 -0
  5. latitudesh_python_sdk/_hooks/types.py +113 -0
  6. latitudesh_python_sdk/_version.py +17 -0
  7. latitudesh_python_sdk/apikeys.py +703 -0
  8. latitudesh_python_sdk/basesdk.py +374 -0
  9. latitudesh_python_sdk/billing.py +197 -0
  10. latitudesh_python_sdk/events_sdk.py +298 -0
  11. latitudesh_python_sdk/firewalls_sdk.py +1786 -0
  12. latitudesh_python_sdk/httpclient.py +125 -0
  13. latitudesh_python_sdk/ipaddresses_sdk.py +470 -0
  14. latitudesh_python_sdk/models/__init__.py +3581 -0
  15. latitudesh_python_sdk/models/api_key.py +81 -0
  16. latitudesh_python_sdk/models/apierror.py +40 -0
  17. latitudesh_python_sdk/models/assign_server_virtual_networkop.py +43 -0
  18. latitudesh_python_sdk/models/bandwidth_packages.py +67 -0
  19. latitudesh_python_sdk/models/bandwidth_plan_data.py +72 -0
  20. latitudesh_python_sdk/models/bandwidth_plans.py +26 -0
  21. latitudesh_python_sdk/models/billing_usage.py +249 -0
  22. latitudesh_python_sdk/models/container_plan_data.py +163 -0
  23. latitudesh_python_sdk/models/create_api_key.py +40 -0
  24. latitudesh_python_sdk/models/create_firewall_assignmentop.py +61 -0
  25. latitudesh_python_sdk/models/create_firewallop.py +73 -0
  26. latitudesh_python_sdk/models/create_ipmi_sessionop.py +16 -0
  27. latitudesh_python_sdk/models/create_projectop.py +79 -0
  28. latitudesh_python_sdk/models/create_server_actionop.py +69 -0
  29. latitudesh_python_sdk/models/create_server_out_of_bandop.py +61 -0
  30. latitudesh_python_sdk/models/create_server_reinstallop.py +140 -0
  31. latitudesh_python_sdk/models/create_serverop.py +173 -0
  32. latitudesh_python_sdk/models/create_tagop.py +50 -0
  33. latitudesh_python_sdk/models/create_virtual_machine_actionop.py +63 -0
  34. latitudesh_python_sdk/models/create_virtual_networkop.py +72 -0
  35. latitudesh_python_sdk/models/custom_tag.py +26 -0
  36. latitudesh_python_sdk/models/custom_tag_data.py +54 -0
  37. latitudesh_python_sdk/models/custom_tags.py +26 -0
  38. latitudesh_python_sdk/models/delete_api_keyop.py +16 -0
  39. latitudesh_python_sdk/models/delete_firewall_assignmentop.py +25 -0
  40. latitudesh_python_sdk/models/delete_firewallop.py +18 -0
  41. latitudesh_python_sdk/models/delete_project_ssh_keyop.py +23 -0
  42. latitudesh_python_sdk/models/delete_project_user_dataop.py +23 -0
  43. latitudesh_python_sdk/models/delete_projectop.py +18 -0
  44. latitudesh_python_sdk/models/delete_ssh_keyop.py +16 -0
  45. latitudesh_python_sdk/models/delete_storage_filesystemsop.py +16 -0
  46. latitudesh_python_sdk/models/delete_storage_volumesop.py +16 -0
  47. latitudesh_python_sdk/models/delete_user_dataop.py +16 -0
  48. latitudesh_python_sdk/models/delete_virtual_networks_assignmentsop.py +16 -0
  49. latitudesh_python_sdk/models/delete_vpn_sessionop.py +16 -0
  50. latitudesh_python_sdk/models/deploy_config.py +62 -0
  51. latitudesh_python_sdk/models/destroy_serverop.py +31 -0
  52. latitudesh_python_sdk/models/destroy_tagop.py +16 -0
  53. latitudesh_python_sdk/models/destroy_team_memberop.py +18 -0
  54. latitudesh_python_sdk/models/destroy_virtual_machineop.py +16 -0
  55. latitudesh_python_sdk/models/destroy_virtual_networkop.py +18 -0
  56. latitudesh_python_sdk/models/event_data.py +98 -0
  57. latitudesh_python_sdk/models/events.py +26 -0
  58. latitudesh_python_sdk/models/filesystem_data.py +57 -0
  59. latitudesh_python_sdk/models/firewall.py +26 -0
  60. latitudesh_python_sdk/models/firewall_assignment_data.py +50 -0
  61. latitudesh_python_sdk/models/firewall_assignments.py +29 -0
  62. latitudesh_python_sdk/models/firewall_data.py +75 -0
  63. latitudesh_python_sdk/models/firewall_server.py +36 -0
  64. latitudesh_python_sdk/models/firewalls.py +26 -0
  65. latitudesh_python_sdk/models/get_all_firewall_assignmentsop.py +51 -0
  66. latitudesh_python_sdk/models/get_bandwidth_plansop.py +62 -0
  67. latitudesh_python_sdk/models/get_billing_usageop.py +46 -0
  68. latitudesh_python_sdk/models/get_containers_planop.py +18 -0
  69. latitudesh_python_sdk/models/get_eventsop.py +126 -0
  70. latitudesh_python_sdk/models/get_firewall_assignmentsop.py +53 -0
  71. latitudesh_python_sdk/models/get_firewallop.py +18 -0
  72. latitudesh_python_sdk/models/get_ipop.py +33 -0
  73. latitudesh_python_sdk/models/get_ipsop.py +120 -0
  74. latitudesh_python_sdk/models/get_planop.py +16 -0
  75. latitudesh_python_sdk/models/get_plans_operating_systemop.py +54 -0
  76. latitudesh_python_sdk/models/get_plansop.py +125 -0
  77. latitudesh_python_sdk/models/get_project_ssh_keyop.py +37 -0
  78. latitudesh_python_sdk/models/get_project_ssh_keysop.py +33 -0
  79. latitudesh_python_sdk/models/get_project_user_dataop.py +38 -0
  80. latitudesh_python_sdk/models/get_project_users_dataop.py +46 -0
  81. latitudesh_python_sdk/models/get_projectsop.py +105 -0
  82. latitudesh_python_sdk/models/get_regionop.py +18 -0
  83. latitudesh_python_sdk/models/get_regionsop.py +42 -0
  84. latitudesh_python_sdk/models/get_role_idop.py +16 -0
  85. latitudesh_python_sdk/models/get_rolesop.py +54 -0
  86. latitudesh_python_sdk/models/get_server_deploy_configop.py +18 -0
  87. latitudesh_python_sdk/models/get_server_out_of_bandop.py +18 -0
  88. latitudesh_python_sdk/models/get_serverop.py +33 -0
  89. latitudesh_python_sdk/models/get_serversop.py +185 -0
  90. latitudesh_python_sdk/models/get_ssh_keyop.py +30 -0
  91. latitudesh_python_sdk/models/get_ssh_keysop.py +31 -0
  92. latitudesh_python_sdk/models/get_storage_filesystemsop.py +22 -0
  93. latitudesh_python_sdk/models/get_storage_volumeop.py +32 -0
  94. latitudesh_python_sdk/models/get_storage_volumesop.py +35 -0
  95. latitudesh_python_sdk/models/get_team_membersop.py +42 -0
  96. latitudesh_python_sdk/models/get_traffic_consumptionop.py +49 -0
  97. latitudesh_python_sdk/models/get_traffic_quotaop.py +20 -0
  98. latitudesh_python_sdk/models/get_user_dataop.py +31 -0
  99. latitudesh_python_sdk/models/get_user_profileop.py +19 -0
  100. latitudesh_python_sdk/models/get_users_dataop.py +44 -0
  101. latitudesh_python_sdk/models/get_virtual_networkop.py +32 -0
  102. latitudesh_python_sdk/models/get_virtual_networks_assignmentsop.py +72 -0
  103. latitudesh_python_sdk/models/get_virtual_networksop.py +69 -0
  104. latitudesh_python_sdk/models/get_vpn_sessionsop.py +70 -0
  105. latitudesh_python_sdk/models/index_virtual_machineop.py +31 -0
  106. latitudesh_python_sdk/models/ip_address.py +122 -0
  107. latitudesh_python_sdk/models/ip_addresses.py +15 -0
  108. latitudesh_python_sdk/models/ipmi_session.py +53 -0
  109. latitudesh_python_sdk/models/latitudesherror.py +30 -0
  110. latitudesh_python_sdk/models/list_firewallsop.py +49 -0
  111. latitudesh_python_sdk/models/membership.py +63 -0
  112. latitudesh_python_sdk/models/no_response_error.py +17 -0
  113. latitudesh_python_sdk/models/operating_system_data.py +65 -0
  114. latitudesh_python_sdk/models/operating_systems.py +26 -0
  115. latitudesh_python_sdk/models/out_of_band_connection.py +88 -0
  116. latitudesh_python_sdk/models/patch_current_teamop.py +91 -0
  117. latitudesh_python_sdk/models/patch_storage_filesystemsop.py +79 -0
  118. latitudesh_python_sdk/models/patch_user_dataop.py +69 -0
  119. latitudesh_python_sdk/models/patch_user_profileop.py +88 -0
  120. latitudesh_python_sdk/models/plan.py +15 -0
  121. latitudesh_python_sdk/models/plan_data.py +210 -0
  122. latitudesh_python_sdk/models/post_api_keyop.py +19 -0
  123. latitudesh_python_sdk/models/post_project_ssh_keyop.py +81 -0
  124. latitudesh_python_sdk/models/post_project_user_dataop.py +68 -0
  125. latitudesh_python_sdk/models/post_ssh_keyop.py +63 -0
  126. latitudesh_python_sdk/models/post_storage_filesystemsop.py +63 -0
  127. latitudesh_python_sdk/models/post_storage_volumes_mountop.py +62 -0
  128. latitudesh_python_sdk/models/post_storage_volumesop.py +63 -0
  129. latitudesh_python_sdk/models/post_team_membersop.py +54 -0
  130. latitudesh_python_sdk/models/post_teamop.py +67 -0
  131. latitudesh_python_sdk/models/post_user_dataop.py +50 -0
  132. latitudesh_python_sdk/models/post_vpn_sessionop.py +63 -0
  133. latitudesh_python_sdk/models/project.py +131 -0
  134. latitudesh_python_sdk/models/project_include.py +75 -0
  135. latitudesh_python_sdk/models/projects.py +15 -0
  136. latitudesh_python_sdk/models/put_project_ssh_keyop.py +87 -0
  137. latitudesh_python_sdk/models/put_project_user_dataop.py +76 -0
  138. latitudesh_python_sdk/models/put_ssh_keyop.py +80 -0
  139. latitudesh_python_sdk/models/put_vpn_sessionop.py +16 -0
  140. latitudesh_python_sdk/models/region.py +50 -0
  141. latitudesh_python_sdk/models/region_resource_data.py +37 -0
  142. latitudesh_python_sdk/models/regions.py +50 -0
  143. latitudesh_python_sdk/models/responsevalidationerror.py +27 -0
  144. latitudesh_python_sdk/models/role.py +26 -0
  145. latitudesh_python_sdk/models/role_data.py +35 -0
  146. latitudesh_python_sdk/models/security.py +25 -0
  147. latitudesh_python_sdk/models/server.py +26 -0
  148. latitudesh_python_sdk/models/server_action.py +52 -0
  149. latitudesh_python_sdk/models/server_data.py +280 -0
  150. latitudesh_python_sdk/models/server_exit_rescue_modeop.py +16 -0
  151. latitudesh_python_sdk/models/server_lockop.py +16 -0
  152. latitudesh_python_sdk/models/server_region_resource_data.py +40 -0
  153. latitudesh_python_sdk/models/server_rescue.py +22 -0
  154. latitudesh_python_sdk/models/server_schedule_deletion.py +44 -0
  155. latitudesh_python_sdk/models/server_schedule_deletionop.py +16 -0
  156. latitudesh_python_sdk/models/server_start_rescue_modeop.py +16 -0
  157. latitudesh_python_sdk/models/server_unlockop.py +16 -0
  158. latitudesh_python_sdk/models/server_unschedule_deletionop.py +16 -0
  159. latitudesh_python_sdk/models/servers.py +26 -0
  160. latitudesh_python_sdk/models/show_virtual_machineop.py +16 -0
  161. latitudesh_python_sdk/models/ssh_key_data.py +55 -0
  162. latitudesh_python_sdk/models/ssh_keys.py +26 -0
  163. latitudesh_python_sdk/models/storage_plan_data.py +47 -0
  164. latitudesh_python_sdk/models/storage_plans.py +26 -0
  165. latitudesh_python_sdk/models/team.py +74 -0
  166. latitudesh_python_sdk/models/team_include.py +43 -0
  167. latitudesh_python_sdk/models/team_members.py +51 -0
  168. latitudesh_python_sdk/models/teams.py +26 -0
  169. latitudesh_python_sdk/models/traffic.py +133 -0
  170. latitudesh_python_sdk/models/traffic_quota.py +106 -0
  171. latitudesh_python_sdk/models/update_api_key.py +48 -0
  172. latitudesh_python_sdk/models/update_api_keyop.py +41 -0
  173. latitudesh_python_sdk/models/update_firewallop.py +89 -0
  174. latitudesh_python_sdk/models/update_plans_bandwidthop.py +50 -0
  175. latitudesh_python_sdk/models/update_projectop.py +95 -0
  176. latitudesh_python_sdk/models/update_server_deploy_configop.py +122 -0
  177. latitudesh_python_sdk/models/update_serverop.py +85 -0
  178. latitudesh_python_sdk/models/update_tagop.py +74 -0
  179. latitudesh_python_sdk/models/update_virtual_networkop.py +67 -0
  180. latitudesh_python_sdk/models/user.py +59 -0
  181. latitudesh_python_sdk/models/user_data.py +26 -0
  182. latitudesh_python_sdk/models/user_data_properties.py +46 -0
  183. latitudesh_python_sdk/models/user_include.py +52 -0
  184. latitudesh_python_sdk/models/user_team.py +61 -0
  185. latitudesh_python_sdk/models/user_teams.py +26 -0
  186. latitudesh_python_sdk/models/user_update.py +37 -0
  187. latitudesh_python_sdk/models/virtual_machine.py +29 -0
  188. latitudesh_python_sdk/models/virtual_machine_attributes.py +115 -0
  189. latitudesh_python_sdk/models/virtual_machine_payload.py +47 -0
  190. latitudesh_python_sdk/models/virtual_machine_plans.py +181 -0
  191. latitudesh_python_sdk/models/virtual_network.py +26 -0
  192. latitudesh_python_sdk/models/virtual_network_assignment.py +29 -0
  193. latitudesh_python_sdk/models/virtual_network_assignment_data.py +65 -0
  194. latitudesh_python_sdk/models/virtual_network_assignments.py +29 -0
  195. latitudesh_python_sdk/models/virtual_network_data.py +114 -0
  196. latitudesh_python_sdk/models/virtual_networks.py +26 -0
  197. latitudesh_python_sdk/models/volume_data.py +111 -0
  198. latitudesh_python_sdk/models/vpn_session_data_with_password.py +77 -0
  199. latitudesh_python_sdk/models/vpn_session_with_password.py +18 -0
  200. latitudesh_python_sdk/operatingsystems_sdk.py +238 -0
  201. latitudesh_python_sdk/plans.py +1304 -0
  202. latitudesh_python_sdk/privatenetworks.py +1612 -0
  203. latitudesh_python_sdk/projects_sdk.py +830 -0
  204. latitudesh_python_sdk/py.typed +1 -0
  205. latitudesh_python_sdk/regions_sdk.py +398 -0
  206. latitudesh_python_sdk/roles.py +398 -0
  207. latitudesh_python_sdk/sdk.py +264 -0
  208. latitudesh_python_sdk/sdkconfiguration.py +50 -0
  209. latitudesh_python_sdk/servers_sdk.py +3414 -0
  210. latitudesh_python_sdk/sshkeys_sdk.py +1882 -0
  211. latitudesh_python_sdk/storage.py +1651 -0
  212. latitudesh_python_sdk/tags.py +715 -0
  213. latitudesh_python_sdk/teams_sdk.py +527 -0
  214. latitudesh_python_sdk/teamsmembers.py +576 -0
  215. latitudesh_python_sdk/traffic_sdk.py +357 -0
  216. latitudesh_python_sdk/types/__init__.py +21 -0
  217. latitudesh_python_sdk/types/basemodel.py +39 -0
  218. latitudesh_python_sdk/userdata_sdk.py +1888 -0
  219. latitudesh_python_sdk/userprofile.py +531 -0
  220. latitudesh_python_sdk/utils/__init__.py +200 -0
  221. latitudesh_python_sdk/utils/annotations.py +79 -0
  222. latitudesh_python_sdk/utils/datetimes.py +23 -0
  223. latitudesh_python_sdk/utils/enums.py +74 -0
  224. latitudesh_python_sdk/utils/eventstreaming.py +248 -0
  225. latitudesh_python_sdk/utils/forms.py +234 -0
  226. latitudesh_python_sdk/utils/headers.py +136 -0
  227. latitudesh_python_sdk/utils/logger.py +27 -0
  228. latitudesh_python_sdk/utils/metadata.py +118 -0
  229. latitudesh_python_sdk/utils/queryparams.py +217 -0
  230. latitudesh_python_sdk/utils/requestbodies.py +66 -0
  231. latitudesh_python_sdk/utils/retries.py +281 -0
  232. latitudesh_python_sdk/utils/security.py +192 -0
  233. latitudesh_python_sdk/utils/serializers.py +249 -0
  234. latitudesh_python_sdk/utils/unmarshal_json_response.py +38 -0
  235. latitudesh_python_sdk/utils/url.py +155 -0
  236. latitudesh_python_sdk/utils/values.py +137 -0
  237. latitudesh_python_sdk/virtualmachines.py +941 -0
  238. latitudesh_python_sdk/vpnsessions.py +715 -0
  239. latitudesh_python_sdk-2.3.0.dist-info/METADATA +787 -0
  240. latitudesh_python_sdk-2.3.0.dist-info/RECORD +242 -0
  241. latitudesh_python_sdk-2.3.0.dist-info/WHEEL +4 -0
  242. latitudesh_python_sdk-2.3.0.dist-info/licenses/LICENSE +21 -0
@@ -0,0 +1,81 @@
1
+ """Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
2
+
3
+ from __future__ import annotations
4
+ from .ssh_key_data import SSHKeyData, SSHKeyDataTypedDict
5
+ from enum import Enum
6
+ from latitudesh_python_sdk.types import BaseModel
7
+ from latitudesh_python_sdk.utils import (
8
+ FieldMetadata,
9
+ PathParamMetadata,
10
+ RequestMetadata,
11
+ )
12
+ from typing import Optional
13
+ from typing_extensions import Annotated, NotRequired, TypedDict
14
+
15
+
16
+ class PostProjectSSHKeySSHKeysType(str, Enum):
17
+ SSH_KEYS = "ssh_keys"
18
+
19
+
20
+ class PostProjectSSHKeySSHKeysAttributesTypedDict(TypedDict):
21
+ name: NotRequired[str]
22
+ r"""Name of the SSH Key"""
23
+ public_key: NotRequired[str]
24
+ r"""SSH Public Key"""
25
+
26
+
27
+ class PostProjectSSHKeySSHKeysAttributes(BaseModel):
28
+ name: Optional[str] = None
29
+ r"""Name of the SSH Key"""
30
+
31
+ public_key: Optional[str] = None
32
+ r"""SSH Public Key"""
33
+
34
+
35
+ class PostProjectSSHKeySSHKeysDataTypedDict(TypedDict):
36
+ type: PostProjectSSHKeySSHKeysType
37
+ attributes: NotRequired[PostProjectSSHKeySSHKeysAttributesTypedDict]
38
+
39
+
40
+ class PostProjectSSHKeySSHKeysData(BaseModel):
41
+ type: PostProjectSSHKeySSHKeysType
42
+
43
+ attributes: Optional[PostProjectSSHKeySSHKeysAttributes] = None
44
+
45
+
46
+ class PostProjectSSHKeySSHKeysRequestBodyTypedDict(TypedDict):
47
+ data: PostProjectSSHKeySSHKeysDataTypedDict
48
+
49
+
50
+ class PostProjectSSHKeySSHKeysRequestBody(BaseModel):
51
+ data: PostProjectSSHKeySSHKeysData
52
+
53
+
54
+ class PostProjectSSHKeyRequestTypedDict(TypedDict):
55
+ project_id: str
56
+ r"""Project ID or Slug"""
57
+ request_body: PostProjectSSHKeySSHKeysRequestBodyTypedDict
58
+
59
+
60
+ class PostProjectSSHKeyRequest(BaseModel):
61
+ project_id: Annotated[
62
+ str, FieldMetadata(path=PathParamMetadata(style="simple", explode=False))
63
+ ]
64
+ r"""Project ID or Slug"""
65
+
66
+ request_body: Annotated[
67
+ PostProjectSSHKeySSHKeysRequestBody,
68
+ FieldMetadata(request=RequestMetadata(media_type="application/json")),
69
+ ]
70
+
71
+
72
+ class PostProjectSSHKeyResponseBodyTypedDict(TypedDict):
73
+ r"""Created"""
74
+
75
+ data: NotRequired[SSHKeyDataTypedDict]
76
+
77
+
78
+ class PostProjectSSHKeyResponseBody(BaseModel):
79
+ r"""Created"""
80
+
81
+ data: Optional[SSHKeyData] = None
@@ -0,0 +1,68 @@
1
+ """Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
2
+
3
+ from __future__ import annotations
4
+ from enum import Enum
5
+ from latitudesh_python_sdk.types import BaseModel
6
+ from latitudesh_python_sdk.utils import (
7
+ FieldMetadata,
8
+ PathParamMetadata,
9
+ RequestMetadata,
10
+ )
11
+ from typing import Optional
12
+ from typing_extensions import Annotated, NotRequired, TypedDict
13
+
14
+
15
+ class PostProjectUserDataUserDataType(str, Enum):
16
+ USER_DATA = "user_data"
17
+
18
+
19
+ class PostProjectUserDataUserDataAttributesTypedDict(TypedDict):
20
+ description: str
21
+ r"""description of the User Data"""
22
+ content: str
23
+ r"""base64 encoded content of the User Data"""
24
+
25
+
26
+ class PostProjectUserDataUserDataAttributes(BaseModel):
27
+ description: str
28
+ r"""description of the User Data"""
29
+
30
+ content: str
31
+ r"""base64 encoded content of the User Data"""
32
+
33
+
34
+ class PostProjectUserDataUserDataDataTypedDict(TypedDict):
35
+ type: PostProjectUserDataUserDataType
36
+ attributes: NotRequired[PostProjectUserDataUserDataAttributesTypedDict]
37
+
38
+
39
+ class PostProjectUserDataUserDataData(BaseModel):
40
+ type: PostProjectUserDataUserDataType
41
+
42
+ attributes: Optional[PostProjectUserDataUserDataAttributes] = None
43
+
44
+
45
+ class PostProjectUserDataUserDataRequestBodyTypedDict(TypedDict):
46
+ data: PostProjectUserDataUserDataDataTypedDict
47
+
48
+
49
+ class PostProjectUserDataUserDataRequestBody(BaseModel):
50
+ data: PostProjectUserDataUserDataData
51
+
52
+
53
+ class PostProjectUserDataRequestTypedDict(TypedDict):
54
+ project_id: str
55
+ r"""Project ID or Slug"""
56
+ request_body: PostProjectUserDataUserDataRequestBodyTypedDict
57
+
58
+
59
+ class PostProjectUserDataRequest(BaseModel):
60
+ project_id: Annotated[
61
+ str, FieldMetadata(path=PathParamMetadata(style="simple", explode=False))
62
+ ]
63
+ r"""Project ID or Slug"""
64
+
65
+ request_body: Annotated[
66
+ PostProjectUserDataUserDataRequestBody,
67
+ FieldMetadata(request=RequestMetadata(media_type="application/json")),
68
+ ]
@@ -0,0 +1,63 @@
1
+ """Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
2
+
3
+ from __future__ import annotations
4
+ from .ssh_key_data import SSHKeyData, SSHKeyDataTypedDict
5
+ from enum import Enum
6
+ from latitudesh_python_sdk.types import BaseModel
7
+ from typing import Optional
8
+ from typing_extensions import NotRequired, TypedDict
9
+
10
+
11
+ class PostSSHKeySSHKeysType(str, Enum):
12
+ SSH_KEYS = "ssh_keys"
13
+
14
+
15
+ class PostSSHKeySSHKeysAttributesTypedDict(TypedDict):
16
+ name: NotRequired[str]
17
+ r"""Name of the SSH Key"""
18
+ project: NotRequired[str]
19
+ r"""Project ID or slug"""
20
+ public_key: NotRequired[str]
21
+ r"""SSH Public Key"""
22
+
23
+
24
+ class PostSSHKeySSHKeysAttributes(BaseModel):
25
+ name: Optional[str] = None
26
+ r"""Name of the SSH Key"""
27
+
28
+ project: Optional[str] = None
29
+ r"""Project ID or slug"""
30
+
31
+ public_key: Optional[str] = None
32
+ r"""SSH Public Key"""
33
+
34
+
35
+ class PostSSHKeySSHKeysDataTypedDict(TypedDict):
36
+ type: PostSSHKeySSHKeysType
37
+ attributes: NotRequired[PostSSHKeySSHKeysAttributesTypedDict]
38
+
39
+
40
+ class PostSSHKeySSHKeysData(BaseModel):
41
+ type: PostSSHKeySSHKeysType
42
+
43
+ attributes: Optional[PostSSHKeySSHKeysAttributes] = None
44
+
45
+
46
+ class PostSSHKeySSHKeysRequestBodyTypedDict(TypedDict):
47
+ data: PostSSHKeySSHKeysDataTypedDict
48
+
49
+
50
+ class PostSSHKeySSHKeysRequestBody(BaseModel):
51
+ data: PostSSHKeySSHKeysData
52
+
53
+
54
+ class PostSSHKeyResponseBodyTypedDict(TypedDict):
55
+ r"""Created"""
56
+
57
+ data: NotRequired[SSHKeyDataTypedDict]
58
+
59
+
60
+ class PostSSHKeyResponseBody(BaseModel):
61
+ r"""Created"""
62
+
63
+ data: Optional[SSHKeyData] = None
@@ -0,0 +1,63 @@
1
+ """Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
2
+
3
+ from __future__ import annotations
4
+ from .filesystem_data import FilesystemData, FilesystemDataTypedDict
5
+ from enum import Enum
6
+ from latitudesh_python_sdk.types import BaseModel
7
+ from typing import Optional
8
+ from typing_extensions import NotRequired, TypedDict
9
+
10
+
11
+ class PostStorageFilesystemsStorageType(str, Enum):
12
+ FILESYSTEMS = "filesystems"
13
+
14
+
15
+ class PostStorageFilesystemsStorageAttributesTypedDict(TypedDict):
16
+ project: str
17
+ r"""Project ID or slug"""
18
+ name: str
19
+ r"""Storage name"""
20
+ size_in_gb: NotRequired[int]
21
+ r"""Size in GB (not required, default is 1500)"""
22
+
23
+
24
+ class PostStorageFilesystemsStorageAttributes(BaseModel):
25
+ project: str
26
+ r"""Project ID or slug"""
27
+
28
+ name: str
29
+ r"""Storage name"""
30
+
31
+ size_in_gb: Optional[int] = 1500
32
+ r"""Size in GB (not required, default is 1500)"""
33
+
34
+
35
+ class PostStorageFilesystemsStorageDataTypedDict(TypedDict):
36
+ type: PostStorageFilesystemsStorageType
37
+ attributes: PostStorageFilesystemsStorageAttributesTypedDict
38
+
39
+
40
+ class PostStorageFilesystemsStorageData(BaseModel):
41
+ type: PostStorageFilesystemsStorageType
42
+
43
+ attributes: PostStorageFilesystemsStorageAttributes
44
+
45
+
46
+ class PostStorageFilesystemsStorageRequestBodyTypedDict(TypedDict):
47
+ data: PostStorageFilesystemsStorageDataTypedDict
48
+
49
+
50
+ class PostStorageFilesystemsStorageRequestBody(BaseModel):
51
+ data: PostStorageFilesystemsStorageData
52
+
53
+
54
+ class PostStorageFilesystemsResponseBodyTypedDict(TypedDict):
55
+ r"""Created"""
56
+
57
+ data: NotRequired[FilesystemDataTypedDict]
58
+
59
+
60
+ class PostStorageFilesystemsResponseBody(BaseModel):
61
+ r"""Created"""
62
+
63
+ data: Optional[FilesystemData] = None
@@ -0,0 +1,62 @@
1
+ """Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
2
+
3
+ from __future__ import annotations
4
+ from enum import Enum
5
+ from latitudesh_python_sdk.types import BaseModel
6
+ from latitudesh_python_sdk.utils import (
7
+ FieldMetadata,
8
+ PathParamMetadata,
9
+ RequestMetadata,
10
+ )
11
+ from typing_extensions import Annotated, TypedDict
12
+
13
+
14
+ class PostStorageVolumesMountType(str, Enum):
15
+ VOLUMES = "volumes"
16
+
17
+
18
+ class PostStorageVolumesMountAttributesTypedDict(TypedDict):
19
+ nqn: str
20
+ r"""NVMe Qualified Name (NQN) of the client/server that will access the volume storage. Format: nqn.YYYY-MM.domain:identifier (e.g., \"nqn.2024-01.com.example:server01\"). This uniquely identifies the NVMe client and must be configured on the client server."""
21
+
22
+
23
+ class PostStorageVolumesMountAttributes(BaseModel):
24
+ nqn: str
25
+ r"""NVMe Qualified Name (NQN) of the client/server that will access the volume storage. Format: nqn.YYYY-MM.domain:identifier (e.g., \"nqn.2024-01.com.example:server01\"). This uniquely identifies the NVMe client and must be configured on the client server."""
26
+
27
+
28
+ class PostStorageVolumesMountDataTypedDict(TypedDict):
29
+ type: PostStorageVolumesMountType
30
+ attributes: PostStorageVolumesMountAttributesTypedDict
31
+
32
+
33
+ class PostStorageVolumesMountData(BaseModel):
34
+ type: PostStorageVolumesMountType
35
+
36
+ attributes: PostStorageVolumesMountAttributes
37
+
38
+
39
+ class PostStorageVolumesMountRequestBodyTypedDict(TypedDict):
40
+ data: PostStorageVolumesMountDataTypedDict
41
+
42
+
43
+ class PostStorageVolumesMountRequestBody(BaseModel):
44
+ data: PostStorageVolumesMountData
45
+
46
+
47
+ class PostStorageVolumesMountRequestTypedDict(TypedDict):
48
+ id: str
49
+ r"""Volume storage ID"""
50
+ request_body: PostStorageVolumesMountRequestBodyTypedDict
51
+
52
+
53
+ class PostStorageVolumesMountRequest(BaseModel):
54
+ id: Annotated[
55
+ str, FieldMetadata(path=PathParamMetadata(style="simple", explode=False))
56
+ ]
57
+ r"""Volume storage ID"""
58
+
59
+ request_body: Annotated[
60
+ PostStorageVolumesMountRequestBody,
61
+ FieldMetadata(request=RequestMetadata(media_type="application/json")),
62
+ ]
@@ -0,0 +1,63 @@
1
+ """Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
2
+
3
+ from __future__ import annotations
4
+ from .volume_data import VolumeData, VolumeDataTypedDict
5
+ from enum import Enum
6
+ from latitudesh_python_sdk.types import BaseModel
7
+ from typing import Optional
8
+ from typing_extensions import NotRequired, TypedDict
9
+
10
+
11
+ class PostStorageVolumesStorageType(str, Enum):
12
+ VOLUMES = "volumes"
13
+
14
+
15
+ class PostStorageVolumesStorageAttributesTypedDict(TypedDict):
16
+ project: str
17
+ r"""Project ID or slug"""
18
+ name: str
19
+ r"""Storage name"""
20
+ size_in_gb: NotRequired[int]
21
+ r"""Size in GB (not required, default is 1500)"""
22
+
23
+
24
+ class PostStorageVolumesStorageAttributes(BaseModel):
25
+ project: str
26
+ r"""Project ID or slug"""
27
+
28
+ name: str
29
+ r"""Storage name"""
30
+
31
+ size_in_gb: Optional[int] = 1500
32
+ r"""Size in GB (not required, default is 1500)"""
33
+
34
+
35
+ class PostStorageVolumesStorageDataTypedDict(TypedDict):
36
+ type: PostStorageVolumesStorageType
37
+ attributes: PostStorageVolumesStorageAttributesTypedDict
38
+
39
+
40
+ class PostStorageVolumesStorageData(BaseModel):
41
+ type: PostStorageVolumesStorageType
42
+
43
+ attributes: PostStorageVolumesStorageAttributes
44
+
45
+
46
+ class PostStorageVolumesStorageRequestBodyTypedDict(TypedDict):
47
+ data: PostStorageVolumesStorageDataTypedDict
48
+
49
+
50
+ class PostStorageVolumesStorageRequestBody(BaseModel):
51
+ data: PostStorageVolumesStorageData
52
+
53
+
54
+ class PostStorageVolumesResponseBodyTypedDict(TypedDict):
55
+ r"""Created"""
56
+
57
+ data: NotRequired[VolumeDataTypedDict]
58
+
59
+
60
+ class PostStorageVolumesResponseBody(BaseModel):
61
+ r"""Created"""
62
+
63
+ data: Optional[VolumeData] = None
@@ -0,0 +1,54 @@
1
+ """Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
2
+
3
+ from __future__ import annotations
4
+ from enum import Enum
5
+ from latitudesh_python_sdk.types import BaseModel
6
+ from typing import Optional
7
+ from typing_extensions import NotRequired, TypedDict
8
+
9
+
10
+ class PostTeamMembersTeamsMembersType(str, Enum):
11
+ MEMBERSHIPS = "memberships"
12
+
13
+
14
+ class PostTeamMembersTeamsMembersRole(str, Enum):
15
+ OWNER = "owner"
16
+ ADMINISTRATOR = "administrator"
17
+ COLLABORATOR = "collaborator"
18
+ BILLING = "billing"
19
+
20
+
21
+ class PostTeamMembersTeamsMembersAttributesTypedDict(TypedDict):
22
+ email: str
23
+ role: PostTeamMembersTeamsMembersRole
24
+ first_name: NotRequired[str]
25
+ last_name: NotRequired[str]
26
+
27
+
28
+ class PostTeamMembersTeamsMembersAttributes(BaseModel):
29
+ email: str
30
+
31
+ role: PostTeamMembersTeamsMembersRole
32
+
33
+ first_name: Optional[str] = None
34
+
35
+ last_name: Optional[str] = None
36
+
37
+
38
+ class PostTeamMembersTeamsMembersDataTypedDict(TypedDict):
39
+ type: PostTeamMembersTeamsMembersType
40
+ attributes: NotRequired[PostTeamMembersTeamsMembersAttributesTypedDict]
41
+
42
+
43
+ class PostTeamMembersTeamsMembersData(BaseModel):
44
+ type: PostTeamMembersTeamsMembersType
45
+
46
+ attributes: Optional[PostTeamMembersTeamsMembersAttributes] = None
47
+
48
+
49
+ class PostTeamMembersTeamsMembersRequestBodyTypedDict(TypedDict):
50
+ data: PostTeamMembersTeamsMembersDataTypedDict
51
+
52
+
53
+ class PostTeamMembersTeamsMembersRequestBody(BaseModel):
54
+ data: PostTeamMembersTeamsMembersData
@@ -0,0 +1,67 @@
1
+ """Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
2
+
3
+ from __future__ import annotations
4
+ from .team import Team, TeamTypedDict
5
+ from enum import Enum
6
+ from latitudesh_python_sdk.types import BaseModel
7
+ from typing import Optional
8
+ from typing_extensions import NotRequired, TypedDict
9
+
10
+
11
+ class PostTeamTeamsType(str, Enum):
12
+ TEAMS = "teams"
13
+
14
+
15
+ class PostTeamTeamsCurrency(str, Enum):
16
+ USD = "USD"
17
+ BRL = "BRL"
18
+
19
+
20
+ class PostTeamTeamsAttributesTypedDict(TypedDict):
21
+ name: str
22
+ currency: PostTeamTeamsCurrency
23
+ address: NotRequired[str]
24
+ referred_code: NotRequired[str]
25
+ r"""Supported only for first team creation"""
26
+
27
+
28
+ class PostTeamTeamsAttributes(BaseModel):
29
+ name: str
30
+
31
+ currency: PostTeamTeamsCurrency
32
+
33
+ address: Optional[str] = None
34
+
35
+ referred_code: Optional[str] = None
36
+ r"""Supported only for first team creation"""
37
+
38
+
39
+ class PostTeamTeamsDataTypedDict(TypedDict):
40
+ type: PostTeamTeamsType
41
+ attributes: NotRequired[PostTeamTeamsAttributesTypedDict]
42
+
43
+
44
+ class PostTeamTeamsData(BaseModel):
45
+ type: PostTeamTeamsType
46
+
47
+ attributes: Optional[PostTeamTeamsAttributes] = None
48
+
49
+
50
+ class PostTeamTeamsRequestBodyTypedDict(TypedDict):
51
+ data: PostTeamTeamsDataTypedDict
52
+
53
+
54
+ class PostTeamTeamsRequestBody(BaseModel):
55
+ data: PostTeamTeamsData
56
+
57
+
58
+ class PostTeamResponseBodyTypedDict(TypedDict):
59
+ r"""Created"""
60
+
61
+ data: NotRequired[TeamTypedDict]
62
+
63
+
64
+ class PostTeamResponseBody(BaseModel):
65
+ r"""Created"""
66
+
67
+ data: Optional[Team] = None
@@ -0,0 +1,50 @@
1
+ """Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
2
+
3
+ from __future__ import annotations
4
+ from enum import Enum
5
+ from latitudesh_python_sdk.types import BaseModel
6
+ from typing import Optional
7
+ from typing_extensions import NotRequired, TypedDict
8
+
9
+
10
+ class PostUserDataUserDataType(str, Enum):
11
+ USER_DATA = "user_data"
12
+
13
+
14
+ class PostUserDataUserDataAttributesTypedDict(TypedDict):
15
+ description: str
16
+ r"""description of the User Data"""
17
+ content: str
18
+ r"""base64 encoded content of the User Data"""
19
+ project: NotRequired[str]
20
+ r"""Project ID or slug"""
21
+
22
+
23
+ class PostUserDataUserDataAttributes(BaseModel):
24
+ description: str
25
+ r"""description of the User Data"""
26
+
27
+ content: str
28
+ r"""base64 encoded content of the User Data"""
29
+
30
+ project: Optional[str] = None
31
+ r"""Project ID or slug"""
32
+
33
+
34
+ class PostUserDataUserDataDataTypedDict(TypedDict):
35
+ type: PostUserDataUserDataType
36
+ attributes: NotRequired[PostUserDataUserDataAttributesTypedDict]
37
+
38
+
39
+ class PostUserDataUserDataData(BaseModel):
40
+ type: PostUserDataUserDataType
41
+
42
+ attributes: Optional[PostUserDataUserDataAttributes] = None
43
+
44
+
45
+ class PostUserDataUserDataRequestBodyTypedDict(TypedDict):
46
+ data: PostUserDataUserDataDataTypedDict
47
+
48
+
49
+ class PostUserDataUserDataRequestBody(BaseModel):
50
+ data: PostUserDataUserDataData
@@ -0,0 +1,63 @@
1
+ """Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
2
+
3
+ from __future__ import annotations
4
+ from enum import Enum
5
+ from latitudesh_python_sdk.types import BaseModel
6
+ from typing import Optional
7
+ from typing_extensions import NotRequired, TypedDict
8
+
9
+
10
+ class PostVpnSessionVpnSessionsType(str, Enum):
11
+ VPN_SESSIONS = "vpn_sessions"
12
+
13
+
14
+ class PostVpnSessionVpnSessionsSite(str, Enum):
15
+ ASH = "ASH"
16
+ BGT = "BGT"
17
+ BUE = "BUE"
18
+ CHI = "CHI"
19
+ DAL = "DAL"
20
+ FRA = "FRA"
21
+ LAX = "LAX"
22
+ LON = "LON"
23
+ MEX = "MEX"
24
+ MEX2 = "MEX2"
25
+ MIA = "MIA"
26
+ MIA2 = "MIA2"
27
+ NYC = "NYC"
28
+ SAN = "SAN"
29
+ SAO = "SAO"
30
+ SAO2 = "SAO2"
31
+ SYD = "SYD"
32
+ TYO = "TYO"
33
+ TYO2 = "TYO2"
34
+
35
+
36
+ class PostVpnSessionVpnSessionsAttributesTypedDict(TypedDict):
37
+ site: NotRequired[PostVpnSessionVpnSessionsSite]
38
+ server_id: NotRequired[str]
39
+
40
+
41
+ class PostVpnSessionVpnSessionsAttributes(BaseModel):
42
+ site: Optional[PostVpnSessionVpnSessionsSite] = None
43
+
44
+ server_id: Optional[str] = None
45
+
46
+
47
+ class PostVpnSessionVpnSessionsDataTypedDict(TypedDict):
48
+ type: NotRequired[PostVpnSessionVpnSessionsType]
49
+ attributes: NotRequired[PostVpnSessionVpnSessionsAttributesTypedDict]
50
+
51
+
52
+ class PostVpnSessionVpnSessionsData(BaseModel):
53
+ type: Optional[PostVpnSessionVpnSessionsType] = None
54
+
55
+ attributes: Optional[PostVpnSessionVpnSessionsAttributes] = None
56
+
57
+
58
+ class PostVpnSessionVpnSessionsRequestBodyTypedDict(TypedDict):
59
+ data: NotRequired[PostVpnSessionVpnSessionsDataTypedDict]
60
+
61
+
62
+ class PostVpnSessionVpnSessionsRequestBody(BaseModel):
63
+ data: Optional[PostVpnSessionVpnSessionsData] = None