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,89 @@
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
+ import pydantic
12
+ from typing import List, Optional
13
+ from typing_extensions import Annotated, NotRequired, TypedDict
14
+
15
+
16
+ class UpdateFirewallFirewallsType(str, Enum):
17
+ FIREWALLS = "firewalls"
18
+
19
+
20
+ class UpdateFirewallFirewallsProtocol(str, Enum):
21
+ TCP = "TCP"
22
+ UDP = "UDP"
23
+
24
+
25
+ class UpdateFirewallFirewallsRulesTypedDict(TypedDict):
26
+ from_: NotRequired[str]
27
+ to: NotRequired[str]
28
+ protocol: NotRequired[UpdateFirewallFirewallsProtocol]
29
+ port: NotRequired[str]
30
+ r"""Port number or range (e.g., \"80\", \"80-443\")"""
31
+
32
+
33
+ class UpdateFirewallFirewallsRules(BaseModel):
34
+ from_: Annotated[Optional[str], pydantic.Field(alias="from")] = None
35
+
36
+ to: Optional[str] = None
37
+
38
+ protocol: Optional[UpdateFirewallFirewallsProtocol] = None
39
+
40
+ port: Optional[str] = None
41
+ r"""Port number or range (e.g., \"80\", \"80-443\")"""
42
+
43
+
44
+ class UpdateFirewallFirewallsAttributesTypedDict(TypedDict):
45
+ name: NotRequired[str]
46
+ rules: NotRequired[List[UpdateFirewallFirewallsRulesTypedDict]]
47
+
48
+
49
+ class UpdateFirewallFirewallsAttributes(BaseModel):
50
+ name: Optional[str] = None
51
+
52
+ rules: Optional[List[UpdateFirewallFirewallsRules]] = None
53
+
54
+
55
+ class UpdateFirewallFirewallsDataTypedDict(TypedDict):
56
+ type: UpdateFirewallFirewallsType
57
+ attributes: NotRequired[UpdateFirewallFirewallsAttributesTypedDict]
58
+
59
+
60
+ class UpdateFirewallFirewallsData(BaseModel):
61
+ type: UpdateFirewallFirewallsType
62
+
63
+ attributes: Optional[UpdateFirewallFirewallsAttributes] = None
64
+
65
+
66
+ class UpdateFirewallFirewallsRequestBodyTypedDict(TypedDict):
67
+ data: UpdateFirewallFirewallsDataTypedDict
68
+
69
+
70
+ class UpdateFirewallFirewallsRequestBody(BaseModel):
71
+ data: UpdateFirewallFirewallsData
72
+
73
+
74
+ class UpdateFirewallRequestTypedDict(TypedDict):
75
+ firewall_id: str
76
+ r"""The Firewall ID"""
77
+ request_body: UpdateFirewallFirewallsRequestBodyTypedDict
78
+
79
+
80
+ class UpdateFirewallRequest(BaseModel):
81
+ firewall_id: Annotated[
82
+ str, FieldMetadata(path=PathParamMetadata(style="simple", explode=False))
83
+ ]
84
+ r"""The Firewall ID"""
85
+
86
+ request_body: Annotated[
87
+ UpdateFirewallFirewallsRequestBody,
88
+ FieldMetadata(request=RequestMetadata(media_type="application/json")),
89
+ ]
@@ -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 UpdatePlansBandwidthPlansType(str, Enum):
11
+ BANDWIDTH_PACKAGES = "bandwidth_packages"
12
+
13
+
14
+ class UpdatePlansBandwidthPlansAttributesTypedDict(TypedDict):
15
+ project: NotRequired[str]
16
+ r"""The project (ID or Slug) to add bandwidth"""
17
+ quantity: NotRequired[int]
18
+ r"""The total amount you want to have"""
19
+ region_slug: NotRequired[str]
20
+ r"""The region to add bandwidth"""
21
+
22
+
23
+ class UpdatePlansBandwidthPlansAttributes(BaseModel):
24
+ project: Optional[str] = None
25
+ r"""The project (ID or Slug) to add bandwidth"""
26
+
27
+ quantity: Optional[int] = None
28
+ r"""The total amount you want to have"""
29
+
30
+ region_slug: Optional[str] = None
31
+ r"""The region to add bandwidth"""
32
+
33
+
34
+ class UpdatePlansBandwidthPlansDataTypedDict(TypedDict):
35
+ type: NotRequired[UpdatePlansBandwidthPlansType]
36
+ attributes: NotRequired[UpdatePlansBandwidthPlansAttributesTypedDict]
37
+
38
+
39
+ class UpdatePlansBandwidthPlansData(BaseModel):
40
+ type: Optional[UpdatePlansBandwidthPlansType] = None
41
+
42
+ attributes: Optional[UpdatePlansBandwidthPlansAttributes] = None
43
+
44
+
45
+ class UpdatePlansBandwidthPlansRequestBodyTypedDict(TypedDict):
46
+ data: NotRequired[UpdatePlansBandwidthPlansDataTypedDict]
47
+
48
+
49
+ class UpdatePlansBandwidthPlansRequestBody(BaseModel):
50
+ data: Optional[UpdatePlansBandwidthPlansData] = None
@@ -0,0 +1,95 @@
1
+ """Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
2
+
3
+ from __future__ import annotations
4
+ from .project import Project, ProjectTypedDict
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 List, Optional
13
+ from typing_extensions import Annotated, NotRequired, TypedDict
14
+
15
+
16
+ class UpdateProjectProjectsType(str, Enum):
17
+ PROJECTS = "projects"
18
+
19
+
20
+ class UpdateProjectProjectsEnvironment(str, Enum):
21
+ DEVELOPMENT = "Development"
22
+ STAGING = "Staging"
23
+ PRODUCTION = "Production"
24
+
25
+
26
+ class UpdateProjectProjectsAttributesTypedDict(TypedDict):
27
+ name: NotRequired[str]
28
+ description: NotRequired[str]
29
+ environment: NotRequired[UpdateProjectProjectsEnvironment]
30
+ bandwidth_alert: NotRequired[bool]
31
+ tags: NotRequired[List[str]]
32
+
33
+
34
+ class UpdateProjectProjectsAttributes(BaseModel):
35
+ name: Optional[str] = "A brand new name for the virtual network"
36
+
37
+ description: Optional[str] = "A brand new description for the virtual network"
38
+
39
+ environment: Optional[UpdateProjectProjectsEnvironment] = None
40
+
41
+ bandwidth_alert: Optional[bool] = False
42
+
43
+ tags: Optional[List[str]] = None
44
+
45
+
46
+ class UpdateProjectProjectsDataTypedDict(TypedDict):
47
+ type: UpdateProjectProjectsType
48
+ id: NotRequired[str]
49
+ attributes: NotRequired[UpdateProjectProjectsAttributesTypedDict]
50
+
51
+
52
+ class UpdateProjectProjectsData(BaseModel):
53
+ type: UpdateProjectProjectsType
54
+
55
+ id: Optional[str] = "proj_81EVOtR1N4J2Z"
56
+
57
+ attributes: Optional[UpdateProjectProjectsAttributes] = None
58
+
59
+
60
+ class UpdateProjectProjectsRequestBodyTypedDict(TypedDict):
61
+ data: UpdateProjectProjectsDataTypedDict
62
+
63
+
64
+ class UpdateProjectProjectsRequestBody(BaseModel):
65
+ data: UpdateProjectProjectsData
66
+
67
+
68
+ class UpdateProjectRequestTypedDict(TypedDict):
69
+ project_id: str
70
+ r"""The project ID or Slug"""
71
+ request_body: NotRequired[UpdateProjectProjectsRequestBodyTypedDict]
72
+
73
+
74
+ class UpdateProjectRequest(BaseModel):
75
+ project_id: Annotated[
76
+ str, FieldMetadata(path=PathParamMetadata(style="simple", explode=False))
77
+ ]
78
+ r"""The project ID or Slug"""
79
+
80
+ request_body: Annotated[
81
+ Optional[UpdateProjectProjectsRequestBody],
82
+ FieldMetadata(request=RequestMetadata(media_type="application/json")),
83
+ ] = None
84
+
85
+
86
+ class UpdateProjectResponseBodyTypedDict(TypedDict):
87
+ r"""Success"""
88
+
89
+ data: NotRequired[ProjectTypedDict]
90
+
91
+
92
+ class UpdateProjectResponseBody(BaseModel):
93
+ r"""Success"""
94
+
95
+ data: Optional[Project] = None
@@ -0,0 +1,122 @@
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 List, Optional
12
+ from typing_extensions import Annotated, NotRequired, TypedDict
13
+
14
+
15
+ class UpdateServerDeployConfigServersType(str, Enum):
16
+ DEPLOY_CONFIG = "deploy_config"
17
+
18
+
19
+ class UpdateServerDeployConfigServersOperatingSystem(str, Enum):
20
+ IPXE = "ipxe"
21
+ WINDOWS_SERVER_2019_STD_V1 = "windows_server_2019_std_v1"
22
+ UBUNTU_22_04_X64_LTS = "ubuntu_22_04_x64_lts"
23
+ DEBIAN_11 = "debian_11"
24
+ DEBIAN_10 = "debian_10"
25
+ RHEL8 = "rhel8"
26
+ WINDOWS_SERVER_2012_R2_STD_V28 = "windows_server_2012_r2_std_v28"
27
+ WINDOWS_SERVER_2012_R2_DC_V5 = "windows_server_2012_r2_dc_v5"
28
+ ESXI_6_7 = "esxi_6_7"
29
+ DEBIAN_9_4_X64 = "debian_9_4_x64"
30
+ CENTOS_7_4_X64 = "centos_7_4_x64"
31
+ CENTOS_8_X64 = "centos_8_x64"
32
+ UBUNTU_16_04_X64_LTS = "ubuntu_16_04_x64_lts"
33
+ UBUNTU_20_04_X64_LTS = "ubuntu_20_04_x64_lts"
34
+ WINDOWS_SERVER_2016_STD_V1 = "windows_server_2016_std_v1"
35
+ WINDOWS_SERVER_2016_DC_V1 = "windows_server_2016_dc_v1"
36
+ WINDOWS_SERVER_2019_DC_V1 = "windows_server_2019_dc_v1"
37
+ DEBIAN_12 = "debian_12"
38
+ UBUNTU22_ML_IN_A_BOX = "ubuntu22_ml_in_a_box"
39
+ UBUNTU_18_04_X64_LTS = "ubuntu_18_04_x64_lts"
40
+ WINDOWS_SERVER_2019_STD_UEFI = "windows_server_2019_std_uefi"
41
+ WINDOWS_2022_STD_UEFI = "windows_2022_std_uefi"
42
+ WINDOWS_2022_STD = "windows_2022_std"
43
+ UBUNTU_24_04_X64_LTS = "ubuntu_24_04_x64_lts"
44
+ ROCKYLINUX_8 = "rockylinux_8"
45
+
46
+
47
+ class UpdateServerDeployConfigServersRaid(str, Enum):
48
+ RAID_0 = "raid-0"
49
+ RAID_1 = "raid-1"
50
+
51
+
52
+ class UpdateServerDeployConfigServersPartitionsTypedDict(TypedDict):
53
+ size_in_gb: NotRequired[int]
54
+ path: NotRequired[str]
55
+ filesystem_type: NotRequired[str]
56
+
57
+
58
+ class UpdateServerDeployConfigServersPartitions(BaseModel):
59
+ size_in_gb: Optional[int] = None
60
+
61
+ path: Optional[str] = None
62
+
63
+ filesystem_type: Optional[str] = None
64
+
65
+
66
+ class UpdateServerDeployConfigServersAttributesTypedDict(TypedDict):
67
+ hostname: NotRequired[str]
68
+ operating_system: NotRequired[UpdateServerDeployConfigServersOperatingSystem]
69
+ raid: NotRequired[UpdateServerDeployConfigServersRaid]
70
+ user_data: NotRequired[str]
71
+ r"""User data to configure the server"""
72
+ ssh_keys: NotRequired[List[str]]
73
+ partitions: NotRequired[List[UpdateServerDeployConfigServersPartitionsTypedDict]]
74
+ ipxe_url: NotRequired[str]
75
+ r"""URL where iPXE script is stored on, necessary for custom image deployments. This attribute is required when operating system iPXE is selected."""
76
+
77
+
78
+ class UpdateServerDeployConfigServersAttributes(BaseModel):
79
+ hostname: Optional[str] = None
80
+
81
+ operating_system: Optional[UpdateServerDeployConfigServersOperatingSystem] = None
82
+
83
+ raid: Optional[UpdateServerDeployConfigServersRaid] = None
84
+
85
+ user_data: Optional[str] = None
86
+ r"""User data to configure the server"""
87
+
88
+ ssh_keys: Optional[List[str]] = None
89
+
90
+ partitions: Optional[List[UpdateServerDeployConfigServersPartitions]] = None
91
+
92
+ ipxe_url: Optional[str] = None
93
+ r"""URL where iPXE script is stored on, necessary for custom image deployments. This attribute is required when operating system iPXE is selected."""
94
+
95
+
96
+ class UpdateServerDeployConfigServersRequestBodyTypedDict(TypedDict):
97
+ type: UpdateServerDeployConfigServersType
98
+ attributes: NotRequired[UpdateServerDeployConfigServersAttributesTypedDict]
99
+
100
+
101
+ class UpdateServerDeployConfigServersRequestBody(BaseModel):
102
+ type: UpdateServerDeployConfigServersType
103
+
104
+ attributes: Optional[UpdateServerDeployConfigServersAttributes] = None
105
+
106
+
107
+ class UpdateServerDeployConfigRequestTypedDict(TypedDict):
108
+ server_id: str
109
+ r"""The Server ID"""
110
+ request_body: UpdateServerDeployConfigServersRequestBodyTypedDict
111
+
112
+
113
+ class UpdateServerDeployConfigRequest(BaseModel):
114
+ server_id: Annotated[
115
+ str, FieldMetadata(path=PathParamMetadata(style="simple", explode=False))
116
+ ]
117
+ r"""The Server ID"""
118
+
119
+ request_body: Annotated[
120
+ UpdateServerDeployConfigServersRequestBody,
121
+ FieldMetadata(request=RequestMetadata(media_type="application/json")),
122
+ ]
@@ -0,0 +1,85 @@
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 List, Optional
12
+ from typing_extensions import Annotated, NotRequired, TypedDict
13
+
14
+
15
+ class UpdateServerServersType(str, Enum):
16
+ SERVERS = "servers"
17
+
18
+
19
+ class UpdateServerServersBilling(str, Enum):
20
+ r"""The server billing type. Accepts `hourly` and `monthly` for on demand projects and `yearly` for reserved projects."""
21
+
22
+ HOURLY = "hourly"
23
+ MONTHLY = "monthly"
24
+ YEARLY = "yearly"
25
+
26
+
27
+ class UpdateServerServersAttributesTypedDict(TypedDict):
28
+ hostname: NotRequired[str]
29
+ billing: NotRequired[UpdateServerServersBilling]
30
+ r"""The server billing type. Accepts `hourly` and `monthly` for on demand projects and `yearly` for reserved projects."""
31
+ tags: NotRequired[List[str]]
32
+ r"""List of Tag IDs"""
33
+ project: NotRequired[str]
34
+ r"""Project ID or slug to move the server to"""
35
+
36
+
37
+ class UpdateServerServersAttributes(BaseModel):
38
+ hostname: Optional[str] = "new-hostname"
39
+
40
+ billing: Optional[UpdateServerServersBilling] = None
41
+ r"""The server billing type. Accepts `hourly` and `monthly` for on demand projects and `yearly` for reserved projects."""
42
+
43
+ tags: Optional[List[str]] = None
44
+ r"""List of Tag IDs"""
45
+
46
+ project: Optional[str] = None
47
+ r"""Project ID or slug to move the server to"""
48
+
49
+
50
+ class UpdateServerServersDataTypedDict(TypedDict):
51
+ id: NotRequired[str]
52
+ type: NotRequired[UpdateServerServersType]
53
+ attributes: NotRequired[UpdateServerServersAttributesTypedDict]
54
+
55
+
56
+ class UpdateServerServersData(BaseModel):
57
+ id: Optional[str] = "sv_81EVOtR1N4J2Z"
58
+
59
+ type: Optional[UpdateServerServersType] = None
60
+
61
+ attributes: Optional[UpdateServerServersAttributes] = None
62
+
63
+
64
+ class UpdateServerServersRequestBodyTypedDict(TypedDict):
65
+ data: NotRequired[UpdateServerServersDataTypedDict]
66
+
67
+
68
+ class UpdateServerServersRequestBody(BaseModel):
69
+ data: Optional[UpdateServerServersData] = None
70
+
71
+
72
+ class UpdateServerRequestTypedDict(TypedDict):
73
+ server_id: str
74
+ request_body: UpdateServerServersRequestBodyTypedDict
75
+
76
+
77
+ class UpdateServerRequest(BaseModel):
78
+ server_id: Annotated[
79
+ str, FieldMetadata(path=PathParamMetadata(style="simple", explode=False))
80
+ ]
81
+
82
+ request_body: Annotated[
83
+ UpdateServerServersRequestBody,
84
+ FieldMetadata(request=RequestMetadata(media_type="application/json")),
85
+ ]
@@ -0,0 +1,74 @@
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 UpdateTagTagsType(str, Enum):
16
+ TAGS = "tags"
17
+
18
+
19
+ class UpdateTagTagsAttributesTypedDict(TypedDict):
20
+ name: NotRequired[str]
21
+ r"""Name of the Tag"""
22
+ description: NotRequired[str]
23
+ r"""Description of the Tag"""
24
+ color: NotRequired[str]
25
+ r"""Color of the Tag"""
26
+
27
+
28
+ class UpdateTagTagsAttributes(BaseModel):
29
+ name: Optional[str] = None
30
+ r"""Name of the Tag"""
31
+
32
+ description: Optional[str] = None
33
+ r"""Description of the Tag"""
34
+
35
+ color: Optional[str] = "#ffffff"
36
+ r"""Color of the Tag"""
37
+
38
+
39
+ class UpdateTagTagsDataTypedDict(TypedDict):
40
+ id: NotRequired[str]
41
+ type: NotRequired[UpdateTagTagsType]
42
+ attributes: NotRequired[UpdateTagTagsAttributesTypedDict]
43
+
44
+
45
+ class UpdateTagTagsData(BaseModel):
46
+ id: Optional[str] = None
47
+
48
+ type: Optional[UpdateTagTagsType] = None
49
+
50
+ attributes: Optional[UpdateTagTagsAttributes] = None
51
+
52
+
53
+ class UpdateTagTagsRequestBodyTypedDict(TypedDict):
54
+ data: NotRequired[UpdateTagTagsDataTypedDict]
55
+
56
+
57
+ class UpdateTagTagsRequestBody(BaseModel):
58
+ data: Optional[UpdateTagTagsData] = None
59
+
60
+
61
+ class UpdateTagRequestTypedDict(TypedDict):
62
+ tag_id: str
63
+ request_body: UpdateTagTagsRequestBodyTypedDict
64
+
65
+
66
+ class UpdateTagRequest(BaseModel):
67
+ tag_id: Annotated[
68
+ str, FieldMetadata(path=PathParamMetadata(style="simple", explode=False))
69
+ ]
70
+
71
+ request_body: Annotated[
72
+ UpdateTagTagsRequestBody,
73
+ FieldMetadata(request=RequestMetadata(media_type="application/json")),
74
+ ]
@@ -0,0 +1,67 @@
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 List, Optional
12
+ from typing_extensions import Annotated, NotRequired, TypedDict
13
+
14
+
15
+ class UpdateVirtualNetworkPrivateNetworksType(str, Enum):
16
+ VIRTUAL_NETWORKS = "virtual_networks"
17
+
18
+
19
+ class UpdateVirtualNetworkPrivateNetworksAttributesTypedDict(TypedDict):
20
+ tags: NotRequired[List[str]]
21
+ description: NotRequired[str]
22
+
23
+
24
+ class UpdateVirtualNetworkPrivateNetworksAttributes(BaseModel):
25
+ tags: Optional[List[str]] = None
26
+
27
+ description: Optional[str] = "Test virtual network update"
28
+
29
+
30
+ class UpdateVirtualNetworkPrivateNetworksDataTypedDict(TypedDict):
31
+ id: str
32
+ type: UpdateVirtualNetworkPrivateNetworksType
33
+ attributes: NotRequired[UpdateVirtualNetworkPrivateNetworksAttributesTypedDict]
34
+
35
+
36
+ class UpdateVirtualNetworkPrivateNetworksData(BaseModel):
37
+ id: str
38
+
39
+ type: UpdateVirtualNetworkPrivateNetworksType
40
+
41
+ attributes: Optional[UpdateVirtualNetworkPrivateNetworksAttributes] = None
42
+
43
+
44
+ class UpdateVirtualNetworkPrivateNetworksRequestBodyTypedDict(TypedDict):
45
+ data: UpdateVirtualNetworkPrivateNetworksDataTypedDict
46
+
47
+
48
+ class UpdateVirtualNetworkPrivateNetworksRequestBody(BaseModel):
49
+ data: UpdateVirtualNetworkPrivateNetworksData
50
+
51
+
52
+ class UpdateVirtualNetworkRequestTypedDict(TypedDict):
53
+ vlan_id: str
54
+ r"""The Virtual Network ID"""
55
+ request_body: UpdateVirtualNetworkPrivateNetworksRequestBodyTypedDict
56
+
57
+
58
+ class UpdateVirtualNetworkRequest(BaseModel):
59
+ vlan_id: Annotated[
60
+ str, FieldMetadata(path=PathParamMetadata(style="simple", explode=False))
61
+ ]
62
+ r"""The Virtual Network ID"""
63
+
64
+ request_body: Annotated[
65
+ UpdateVirtualNetworkPrivateNetworksRequestBody,
66
+ FieldMetadata(request=RequestMetadata(media_type="application/json")),
67
+ ]
@@ -0,0 +1,59 @@
1
+ """Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
2
+
3
+ from __future__ import annotations
4
+ from .team_include import TeamInclude, TeamIncludeTypedDict
5
+ from datetime import datetime
6
+ from latitudesh_python_sdk.types import BaseModel
7
+ from typing import List, Optional
8
+ from typing_extensions import NotRequired, TypedDict
9
+
10
+
11
+ class UserRoleTypedDict(TypedDict):
12
+ id: NotRequired[str]
13
+ name: NotRequired[str]
14
+ created_at: NotRequired[datetime]
15
+ updated_at: NotRequired[datetime]
16
+
17
+
18
+ class UserRole(BaseModel):
19
+ id: Optional[str] = None
20
+
21
+ name: Optional[str] = None
22
+
23
+ created_at: Optional[datetime] = None
24
+
25
+ updated_at: Optional[datetime] = None
26
+
27
+
28
+ class UserAttributesTypedDict(TypedDict):
29
+ first_name: NotRequired[str]
30
+ last_name: NotRequired[str]
31
+ email: NotRequired[str]
32
+ authentication_factor_id: NotRequired[str]
33
+ role: NotRequired[UserRoleTypedDict]
34
+ teams: NotRequired[List[TeamIncludeTypedDict]]
35
+
36
+
37
+ class UserAttributes(BaseModel):
38
+ first_name: Optional[str] = None
39
+
40
+ last_name: Optional[str] = None
41
+
42
+ email: Optional[str] = None
43
+
44
+ authentication_factor_id: Optional[str] = None
45
+
46
+ role: Optional[UserRole] = None
47
+
48
+ teams: Optional[List[TeamInclude]] = None
49
+
50
+
51
+ class UserTypedDict(TypedDict):
52
+ id: NotRequired[str]
53
+ attributes: NotRequired[UserAttributesTypedDict]
54
+
55
+
56
+ class User(BaseModel):
57
+ id: Optional[str] = None
58
+
59
+ attributes: Optional[UserAttributes] = None
@@ -0,0 +1,26 @@
1
+ """Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
2
+
3
+ from __future__ import annotations
4
+ from .user_data_properties import UserDataProperties, UserDataPropertiesTypedDict
5
+ from latitudesh_python_sdk.types import BaseModel
6
+ from typing import Optional
7
+ from typing_extensions import NotRequired, TypedDict
8
+
9
+
10
+ class UserDataMetaTypedDict(TypedDict):
11
+ pass
12
+
13
+
14
+ class UserDataMeta(BaseModel):
15
+ pass
16
+
17
+
18
+ class UserDataTypedDict(TypedDict):
19
+ data: NotRequired[UserDataPropertiesTypedDict]
20
+ meta: NotRequired[UserDataMetaTypedDict]
21
+
22
+
23
+ class UserData(BaseModel):
24
+ data: Optional[UserDataProperties] = None
25
+
26
+ meta: Optional[UserDataMeta] = None