latitudesh-python-sdk 0.0.6__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.

Potentially problematic release.


This version of latitudesh-python-sdk might be problematic. Click here for more details.

Files changed (206) 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 +106 -0
  6. latitudesh_python_sdk/_version.py +15 -0
  7. latitudesh_python_sdk/apikeys.py +802 -0
  8. latitudesh_python_sdk/basesdk.py +366 -0
  9. latitudesh_python_sdk/billing.py +210 -0
  10. latitudesh_python_sdk/events_sdk.py +240 -0
  11. latitudesh_python_sdk/firewalls_sdk.py +1640 -0
  12. latitudesh_python_sdk/httpclient.py +136 -0
  13. latitudesh_python_sdk/ipaddresses_sdk.py +448 -0
  14. latitudesh_python_sdk/models/__init__.py +1927 -0
  15. latitudesh_python_sdk/models/api_key.py +81 -0
  16. latitudesh_python_sdk/models/apierror.py +22 -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.py +72 -0
  20. latitudesh_python_sdk/models/bandwidth_plans.py +15 -0
  21. latitudesh_python_sdk/models/billing_usage.py +158 -0
  22. latitudesh_python_sdk/models/create_api_key.py +40 -0
  23. latitudesh_python_sdk/models/create_firewall_assignmentop.py +61 -0
  24. latitudesh_python_sdk/models/create_firewallop.py +69 -0
  25. latitudesh_python_sdk/models/create_ipmi_sessionop.py +16 -0
  26. latitudesh_python_sdk/models/create_projectop.py +79 -0
  27. latitudesh_python_sdk/models/create_server_actionop.py +69 -0
  28. latitudesh_python_sdk/models/create_server_out_of_bandop.py +61 -0
  29. latitudesh_python_sdk/models/create_server_reinstallop.py +140 -0
  30. latitudesh_python_sdk/models/create_serverop.py +173 -0
  31. latitudesh_python_sdk/models/create_tagop.py +50 -0
  32. latitudesh_python_sdk/models/create_virtual_networkop.py +72 -0
  33. latitudesh_python_sdk/models/custom_tag.py +54 -0
  34. latitudesh_python_sdk/models/delete_api_keyop.py +16 -0
  35. latitudesh_python_sdk/models/delete_firewall_assignmentop.py +25 -0
  36. latitudesh_python_sdk/models/delete_firewallop.py +18 -0
  37. latitudesh_python_sdk/models/delete_project_ssh_keyop.py +23 -0
  38. latitudesh_python_sdk/models/delete_project_user_dataop.py +23 -0
  39. latitudesh_python_sdk/models/delete_projectop.py +18 -0
  40. latitudesh_python_sdk/models/delete_storage_filesystemsop.py +16 -0
  41. latitudesh_python_sdk/models/delete_virtual_networks_assignmentsop.py +16 -0
  42. latitudesh_python_sdk/models/delete_vpn_sessionop.py +16 -0
  43. latitudesh_python_sdk/models/deploy_config.py +74 -0
  44. latitudesh_python_sdk/models/destroy_serverop.py +31 -0
  45. latitudesh_python_sdk/models/destroy_tagop.py +16 -0
  46. latitudesh_python_sdk/models/destroy_team_memberop.py +18 -0
  47. latitudesh_python_sdk/models/destroy_virtual_machineop.py +16 -0
  48. latitudesh_python_sdk/models/destroy_virtual_networkop.py +18 -0
  49. latitudesh_python_sdk/models/error_object.py +49 -0
  50. latitudesh_python_sdk/models/events.py +90 -0
  51. latitudesh_python_sdk/models/filesystem_data.py +53 -0
  52. latitudesh_python_sdk/models/firewall.py +71 -0
  53. latitudesh_python_sdk/models/firewall_server.py +50 -0
  54. latitudesh_python_sdk/models/firewalls.py +26 -0
  55. latitudesh_python_sdk/models/get_bandwidth_plansop.py +33 -0
  56. latitudesh_python_sdk/models/get_billing_usageop.py +46 -0
  57. latitudesh_python_sdk/models/get_eventsop.py +98 -0
  58. latitudesh_python_sdk/models/get_firewall_assignmentsop.py +18 -0
  59. latitudesh_python_sdk/models/get_firewallop.py +18 -0
  60. latitudesh_python_sdk/models/get_ipop.py +33 -0
  61. latitudesh_python_sdk/models/get_ipsop.py +91 -0
  62. latitudesh_python_sdk/models/get_planop.py +16 -0
  63. latitudesh_python_sdk/models/get_plans_operating_systemop.py +19 -0
  64. latitudesh_python_sdk/models/get_plansop.py +125 -0
  65. latitudesh_python_sdk/models/get_project_ssh_keyop.py +37 -0
  66. latitudesh_python_sdk/models/get_project_ssh_keysop.py +33 -0
  67. latitudesh_python_sdk/models/get_project_user_dataop.py +38 -0
  68. latitudesh_python_sdk/models/get_project_users_dataop.py +46 -0
  69. latitudesh_python_sdk/models/get_projectsop.py +76 -0
  70. latitudesh_python_sdk/models/get_regionop.py +18 -0
  71. latitudesh_python_sdk/models/get_role_idop.py +16 -0
  72. latitudesh_python_sdk/models/get_rolesop.py +19 -0
  73. latitudesh_python_sdk/models/get_server_deploy_configop.py +18 -0
  74. latitudesh_python_sdk/models/get_server_out_of_bandop.py +18 -0
  75. latitudesh_python_sdk/models/get_serverop.py +33 -0
  76. latitudesh_python_sdk/models/get_serversop.py +156 -0
  77. latitudesh_python_sdk/models/get_storage_filesystemsop.py +22 -0
  78. latitudesh_python_sdk/models/get_traffic_consumptionop.py +45 -0
  79. latitudesh_python_sdk/models/get_traffic_quotaop.py +20 -0
  80. latitudesh_python_sdk/models/get_user_profileop.py +19 -0
  81. latitudesh_python_sdk/models/get_virtual_networkop.py +32 -0
  82. latitudesh_python_sdk/models/get_virtual_networks_assignmentsop.py +40 -0
  83. latitudesh_python_sdk/models/get_virtual_networksop.py +40 -0
  84. latitudesh_python_sdk/models/get_vpn_sessionsop.py +70 -0
  85. latitudesh_python_sdk/models/index_virtual_machineop.py +22 -0
  86. latitudesh_python_sdk/models/ip_address.py +122 -0
  87. latitudesh_python_sdk/models/ip_addresses.py +15 -0
  88. latitudesh_python_sdk/models/ipmi_session.py +53 -0
  89. latitudesh_python_sdk/models/list_firewallsop.py +20 -0
  90. latitudesh_python_sdk/models/membership.py +63 -0
  91. latitudesh_python_sdk/models/operating_systems.py +57 -0
  92. latitudesh_python_sdk/models/out_of_band_connection.py +88 -0
  93. latitudesh_python_sdk/models/patch_current_teamop.py +91 -0
  94. latitudesh_python_sdk/models/patch_storage_filesystemsop.py +79 -0
  95. latitudesh_python_sdk/models/patch_user_profileop.py +88 -0
  96. latitudesh_python_sdk/models/plan.py +15 -0
  97. latitudesh_python_sdk/models/plan_data.py +206 -0
  98. latitudesh_python_sdk/models/post_api_keyop.py +19 -0
  99. latitudesh_python_sdk/models/post_project_ssh_keyop.py +81 -0
  100. latitudesh_python_sdk/models/post_project_user_dataop.py +68 -0
  101. latitudesh_python_sdk/models/post_storage_filesystemsop.py +63 -0
  102. latitudesh_python_sdk/models/post_team_membersop.py +54 -0
  103. latitudesh_python_sdk/models/post_teamop.py +67 -0
  104. latitudesh_python_sdk/models/post_vpn_sessionop.py +63 -0
  105. latitudesh_python_sdk/models/project.py +130 -0
  106. latitudesh_python_sdk/models/project_include.py +72 -0
  107. latitudesh_python_sdk/models/projects.py +15 -0
  108. latitudesh_python_sdk/models/put_project_ssh_keyop.py +87 -0
  109. latitudesh_python_sdk/models/put_project_user_dataop.py +76 -0
  110. latitudesh_python_sdk/models/put_vpn_sessionop.py +16 -0
  111. latitudesh_python_sdk/models/region.py +50 -0
  112. latitudesh_python_sdk/models/region_resource_data.py +37 -0
  113. latitudesh_python_sdk/models/regions.py +50 -0
  114. latitudesh_python_sdk/models/role.py +15 -0
  115. latitudesh_python_sdk/models/role_data.py +35 -0
  116. latitudesh_python_sdk/models/security.py +25 -0
  117. latitudesh_python_sdk/models/server.py +54 -0
  118. latitudesh_python_sdk/models/server_action.py +52 -0
  119. latitudesh_python_sdk/models/server_data.py +219 -0
  120. latitudesh_python_sdk/models/server_exit_rescue_modeop.py +16 -0
  121. latitudesh_python_sdk/models/server_lockop.py +16 -0
  122. latitudesh_python_sdk/models/server_rescue.py +22 -0
  123. latitudesh_python_sdk/models/server_schedule_deletion.py +44 -0
  124. latitudesh_python_sdk/models/server_schedule_deletionop.py +16 -0
  125. latitudesh_python_sdk/models/server_start_rescue_modeop.py +16 -0
  126. latitudesh_python_sdk/models/server_unlockop.py +16 -0
  127. latitudesh_python_sdk/models/server_unschedule_deletionop.py +16 -0
  128. latitudesh_python_sdk/models/servers.py +26 -0
  129. latitudesh_python_sdk/models/show_virtual_machineop.py +16 -0
  130. latitudesh_python_sdk/models/ssh_key.py +15 -0
  131. latitudesh_python_sdk/models/ssh_key_data.py +55 -0
  132. latitudesh_python_sdk/models/storage_plan.py +36 -0
  133. latitudesh_python_sdk/models/storage_plans.py +15 -0
  134. latitudesh_python_sdk/models/team.py +74 -0
  135. latitudesh_python_sdk/models/team_include.py +43 -0
  136. latitudesh_python_sdk/models/team_members.py +51 -0
  137. latitudesh_python_sdk/models/teams.py +26 -0
  138. latitudesh_python_sdk/models/traffic.py +133 -0
  139. latitudesh_python_sdk/models/traffic_quota.py +106 -0
  140. latitudesh_python_sdk/models/update_api_key.py +48 -0
  141. latitudesh_python_sdk/models/update_api_keyop.py +41 -0
  142. latitudesh_python_sdk/models/update_firewallop.py +89 -0
  143. latitudesh_python_sdk/models/update_plans_bandwidthop.py +50 -0
  144. latitudesh_python_sdk/models/update_projectop.py +95 -0
  145. latitudesh_python_sdk/models/update_server_deploy_configop.py +122 -0
  146. latitudesh_python_sdk/models/update_serverop.py +69 -0
  147. latitudesh_python_sdk/models/update_tagop.py +74 -0
  148. latitudesh_python_sdk/models/update_virtual_networkop.py +67 -0
  149. latitudesh_python_sdk/models/user.py +59 -0
  150. latitudesh_python_sdk/models/user_data.py +15 -0
  151. latitudesh_python_sdk/models/user_data_properties.py +46 -0
  152. latitudesh_python_sdk/models/user_include.py +52 -0
  153. latitudesh_python_sdk/models/user_team.py +61 -0
  154. latitudesh_python_sdk/models/user_teams.py +26 -0
  155. latitudesh_python_sdk/models/user_update.py +37 -0
  156. latitudesh_python_sdk/models/virtual_machine.py +25 -0
  157. latitudesh_python_sdk/models/virtual_machine_payload.py +41 -0
  158. latitudesh_python_sdk/models/virtual_machine_plans.py +180 -0
  159. latitudesh_python_sdk/models/virtual_network.py +103 -0
  160. latitudesh_python_sdk/models/virtual_network1.py +84 -0
  161. latitudesh_python_sdk/models/virtual_network_assignment.py +37 -0
  162. latitudesh_python_sdk/models/virtual_network_assignments.py +29 -0
  163. latitudesh_python_sdk/models/virtual_networks.py +26 -0
  164. latitudesh_python_sdk/models/vpn_session_data_with_password.py +77 -0
  165. latitudesh_python_sdk/models/vpn_session_with_password.py +18 -0
  166. latitudesh_python_sdk/operatingsystems_sdk.py +188 -0
  167. latitudesh_python_sdk/plans.py +1178 -0
  168. latitudesh_python_sdk/privatenetworks.py +1672 -0
  169. latitudesh_python_sdk/projects_sdk.py +864 -0
  170. latitudesh_python_sdk/py.typed +1 -0
  171. latitudesh_python_sdk/regions_sdk.py +376 -0
  172. latitudesh_python_sdk/roles.py +374 -0
  173. latitudesh_python_sdk/sdk.py +214 -0
  174. latitudesh_python_sdk/sdkconfiguration.py +57 -0
  175. latitudesh_python_sdk/servers_sdk.py +3810 -0
  176. latitudesh_python_sdk/sshkeys.py +1050 -0
  177. latitudesh_python_sdk/storage.py +820 -0
  178. latitudesh_python_sdk/tags.py +786 -0
  179. latitudesh_python_sdk/teams_sdk.py +596 -0
  180. latitudesh_python_sdk/teamsmembers.py +578 -0
  181. latitudesh_python_sdk/traffic_sdk.py +400 -0
  182. latitudesh_python_sdk/types/__init__.py +21 -0
  183. latitudesh_python_sdk/types/basemodel.py +39 -0
  184. latitudesh_python_sdk/userdata_sdk.py +1052 -0
  185. latitudesh_python_sdk/userprofile.py +596 -0
  186. latitudesh_python_sdk/utils/__init__.py +101 -0
  187. latitudesh_python_sdk/utils/annotations.py +55 -0
  188. latitudesh_python_sdk/utils/enums.py +34 -0
  189. latitudesh_python_sdk/utils/eventstreaming.py +238 -0
  190. latitudesh_python_sdk/utils/forms.py +202 -0
  191. latitudesh_python_sdk/utils/headers.py +136 -0
  192. latitudesh_python_sdk/utils/logger.py +27 -0
  193. latitudesh_python_sdk/utils/metadata.py +118 -0
  194. latitudesh_python_sdk/utils/queryparams.py +205 -0
  195. latitudesh_python_sdk/utils/requestbodies.py +66 -0
  196. latitudesh_python_sdk/utils/retries.py +217 -0
  197. latitudesh_python_sdk/utils/security.py +192 -0
  198. latitudesh_python_sdk/utils/serializers.py +219 -0
  199. latitudesh_python_sdk/utils/url.py +155 -0
  200. latitudesh_python_sdk/utils/values.py +137 -0
  201. latitudesh_python_sdk/virtualmachines.py +772 -0
  202. latitudesh_python_sdk/vpnsessions.py +818 -0
  203. latitudesh_python_sdk-0.0.6.dist-info/LICENSE +21 -0
  204. latitudesh_python_sdk-0.0.6.dist-info/METADATA +730 -0
  205. latitudesh_python_sdk-0.0.6.dist-info/RECORD +206 -0
  206. latitudesh_python_sdk-0.0.6.dist-info/WHEEL +4 -0
@@ -0,0 +1,36 @@
1
+ """Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
2
+
3
+ from __future__ import annotations
4
+ from latitudesh_python_sdk.types import BaseModel
5
+ from typing import List, Optional
6
+ from typing_extensions import NotRequired, TypedDict
7
+
8
+
9
+ class StoragePlanPricingTypedDict(TypedDict):
10
+ month: NotRequired[float]
11
+
12
+
13
+ class StoragePlanPricing(BaseModel):
14
+ month: Optional[float] = None
15
+
16
+
17
+ class StoragePlanDataTypedDict(TypedDict):
18
+ name: NotRequired[str]
19
+ locations: NotRequired[List[str]]
20
+ pricing: NotRequired[StoragePlanPricingTypedDict]
21
+
22
+
23
+ class StoragePlanData(BaseModel):
24
+ name: Optional[str] = None
25
+
26
+ locations: Optional[List[str]] = None
27
+
28
+ pricing: Optional[StoragePlanPricing] = None
29
+
30
+
31
+ class StoragePlanTypedDict(TypedDict):
32
+ data: NotRequired[List[StoragePlanDataTypedDict]]
33
+
34
+
35
+ class StoragePlan(BaseModel):
36
+ data: Optional[List[StoragePlanData]] = None
@@ -0,0 +1,15 @@
1
+ """Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
2
+
3
+ from __future__ import annotations
4
+ from .storage_plan import StoragePlan, StoragePlanTypedDict
5
+ from latitudesh_python_sdk.types import BaseModel
6
+ from typing import List, Optional
7
+ from typing_extensions import NotRequired, TypedDict
8
+
9
+
10
+ class StoragePlansTypedDict(TypedDict):
11
+ data: NotRequired[List[StoragePlanTypedDict]]
12
+
13
+
14
+ class StoragePlans(BaseModel):
15
+ data: Optional[List[StoragePlan]] = None
@@ -0,0 +1,74 @@
1
+ """Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
2
+
3
+ from __future__ import annotations
4
+ from .project_include import ProjectInclude, ProjectIncludeTypedDict
5
+ from .user_include import UserInclude, UserIncludeTypedDict
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 TeamBillingTypedDict(TypedDict):
12
+ id: NotRequired[str]
13
+ customer_billing_id: NotRequired[str]
14
+
15
+
16
+ class TeamBilling(BaseModel):
17
+ id: Optional[str] = None
18
+
19
+ customer_billing_id: Optional[str] = None
20
+
21
+
22
+ class TeamAttributesTypedDict(TypedDict):
23
+ name: NotRequired[str]
24
+ slug: NotRequired[str]
25
+ description: NotRequired[str]
26
+ address: NotRequired[str]
27
+ currency: NotRequired[str]
28
+ created_at: NotRequired[str]
29
+ updated_at: NotRequired[str]
30
+ enforce_mfa: NotRequired[bool]
31
+ users: NotRequired[List[UserIncludeTypedDict]]
32
+ projects: NotRequired[List[ProjectIncludeTypedDict]]
33
+ owner: NotRequired[UserIncludeTypedDict]
34
+ billing: NotRequired[TeamBillingTypedDict]
35
+ feature_flags: NotRequired[List[str]]
36
+
37
+
38
+ class TeamAttributes(BaseModel):
39
+ name: Optional[str] = None
40
+
41
+ slug: Optional[str] = None
42
+
43
+ description: Optional[str] = None
44
+
45
+ address: Optional[str] = None
46
+
47
+ currency: Optional[str] = None
48
+
49
+ created_at: Optional[str] = None
50
+
51
+ updated_at: Optional[str] = None
52
+
53
+ enforce_mfa: Optional[bool] = None
54
+
55
+ users: Optional[List[UserInclude]] = None
56
+
57
+ projects: Optional[List[ProjectInclude]] = None
58
+
59
+ owner: Optional[UserInclude] = None
60
+
61
+ billing: Optional[TeamBilling] = None
62
+
63
+ feature_flags: Optional[List[str]] = None
64
+
65
+
66
+ class TeamTypedDict(TypedDict):
67
+ id: NotRequired[str]
68
+ attributes: NotRequired[TeamAttributesTypedDict]
69
+
70
+
71
+ class Team(BaseModel):
72
+ id: Optional[str] = None
73
+
74
+ attributes: Optional[TeamAttributes] = None
@@ -0,0 +1,43 @@
1
+ """Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
2
+
3
+ from __future__ import annotations
4
+ from latitudesh_python_sdk.types import BaseModel
5
+ from typing import List, Optional
6
+ from typing_extensions import NotRequired, TypedDict
7
+
8
+
9
+ class CurrencyTypedDict(TypedDict):
10
+ pass
11
+
12
+
13
+ class Currency(BaseModel):
14
+ pass
15
+
16
+
17
+ class TeamIncludeTypedDict(TypedDict):
18
+ id: NotRequired[str]
19
+ name: NotRequired[str]
20
+ slug: NotRequired[str]
21
+ description: NotRequired[str]
22
+ address: NotRequired[str]
23
+ currency: NotRequired[CurrencyTypedDict]
24
+ status: NotRequired[str]
25
+ feature_flags: NotRequired[List[str]]
26
+
27
+
28
+ class TeamInclude(BaseModel):
29
+ id: Optional[str] = None
30
+
31
+ name: Optional[str] = None
32
+
33
+ slug: Optional[str] = None
34
+
35
+ description: Optional[str] = None
36
+
37
+ address: Optional[str] = None
38
+
39
+ currency: Optional[Currency] = None
40
+
41
+ status: Optional[str] = None
42
+
43
+ feature_flags: Optional[List[str]] = None
@@ -0,0 +1,51 @@
1
+ """Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
2
+
3
+ from __future__ import annotations
4
+ from latitudesh_python_sdk.types import BaseModel
5
+ from typing import List, Optional
6
+ from typing_extensions import NotRequired, TypedDict
7
+
8
+
9
+ class TeamMembersRoleTypedDict(TypedDict):
10
+ id: NotRequired[str]
11
+ name: NotRequired[str]
12
+ created_at: NotRequired[str]
13
+ updated_at: NotRequired[str]
14
+
15
+
16
+ class TeamMembersRole(BaseModel):
17
+ id: Optional[str] = None
18
+
19
+ name: Optional[str] = None
20
+
21
+ created_at: Optional[str] = None
22
+
23
+ updated_at: Optional[str] = None
24
+
25
+
26
+ class TeamMembersDataTypedDict(TypedDict):
27
+ first_name: NotRequired[str]
28
+ last_name: NotRequired[str]
29
+ email: NotRequired[str]
30
+ mfa_enabled: NotRequired[bool]
31
+ role: NotRequired[TeamMembersRoleTypedDict]
32
+
33
+
34
+ class TeamMembersData(BaseModel):
35
+ first_name: Optional[str] = None
36
+
37
+ last_name: Optional[str] = None
38
+
39
+ email: Optional[str] = None
40
+
41
+ mfa_enabled: Optional[bool] = None
42
+
43
+ role: Optional[TeamMembersRole] = None
44
+
45
+
46
+ class TeamMembersTypedDict(TypedDict):
47
+ data: NotRequired[List[TeamMembersDataTypedDict]]
48
+
49
+
50
+ class TeamMembers(BaseModel):
51
+ data: Optional[List[TeamMembersData]] = None
@@ -0,0 +1,26 @@
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 latitudesh_python_sdk.types import BaseModel
6
+ from typing import List, Optional
7
+ from typing_extensions import NotRequired, TypedDict
8
+
9
+
10
+ class TeamsMetaTypedDict(TypedDict):
11
+ pass
12
+
13
+
14
+ class TeamsMeta(BaseModel):
15
+ pass
16
+
17
+
18
+ class TeamsTypedDict(TypedDict):
19
+ data: NotRequired[List[TeamTypedDict]]
20
+ meta: NotRequired[TeamsMetaTypedDict]
21
+
22
+
23
+ class Teams(BaseModel):
24
+ data: Optional[List[Team]] = None
25
+
26
+ meta: Optional[TeamsMeta] = None
@@ -0,0 +1,133 @@
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
+ import pydantic
7
+ from typing import List, Optional
8
+ from typing_extensions import Annotated, NotRequired, TypedDict
9
+
10
+
11
+ class TrafficType(str, Enum):
12
+ TRAFFIC = "traffic"
13
+
14
+
15
+ class TrafficDataDataTypedDict(TypedDict):
16
+ date_: NotRequired[str]
17
+ r"""The datetime of the day"""
18
+ inbound_gb: NotRequired[int]
19
+ r"""Value in GB"""
20
+ outbound_gb: NotRequired[int]
21
+ r"""Value in GB"""
22
+ avg_outbound_speed_mbps: NotRequired[float]
23
+ r"""Value in MBps"""
24
+ avg_inbound_speed_mbps: NotRequired[float]
25
+ r"""Value in MBps"""
26
+
27
+
28
+ class TrafficDataData(BaseModel):
29
+ date_: Annotated[Optional[str], pydantic.Field(alias="date")] = None
30
+ r"""The datetime of the day"""
31
+
32
+ inbound_gb: Optional[int] = None
33
+ r"""Value in GB"""
34
+
35
+ outbound_gb: Optional[int] = None
36
+ r"""Value in GB"""
37
+
38
+ avg_outbound_speed_mbps: Optional[float] = None
39
+ r"""Value in MBps"""
40
+
41
+ avg_inbound_speed_mbps: Optional[float] = None
42
+ r"""Value in MBps"""
43
+
44
+
45
+ class TrafficRegionsTypedDict(TypedDict):
46
+ region_slug: NotRequired[str]
47
+ total_inbound_gb: NotRequired[int]
48
+ r"""Value in GB"""
49
+ total_outbound_gb: NotRequired[int]
50
+ r"""Value in GB"""
51
+ total_inbound_95th_percentile_mbps: NotRequired[float]
52
+ r"""Value in MBps"""
53
+ total_outbound_95th_percentile_mbps: NotRequired[float]
54
+ r"""Value in MBps"""
55
+ data: NotRequired[List[TrafficDataDataTypedDict]]
56
+
57
+
58
+ class TrafficRegions(BaseModel):
59
+ region_slug: Optional[str] = None
60
+
61
+ total_inbound_gb: Optional[int] = None
62
+ r"""Value in GB"""
63
+
64
+ total_outbound_gb: Optional[int] = None
65
+ r"""Value in GB"""
66
+
67
+ total_inbound_95th_percentile_mbps: Optional[float] = None
68
+ r"""Value in MBps"""
69
+
70
+ total_outbound_95th_percentile_mbps: Optional[float] = None
71
+ r"""Value in MBps"""
72
+
73
+ data: Optional[List[TrafficDataData]] = None
74
+
75
+
76
+ class TrafficAttributesTypedDict(TypedDict):
77
+ from_date: NotRequired[int]
78
+ r"""The start timestamp. Must be a unix timestamp"""
79
+ to_date: NotRequired[int]
80
+ r"""The end timestamp. Must be a unix timestamp"""
81
+ regions: NotRequired[List[TrafficRegionsTypedDict]]
82
+ total_inbound_gb: NotRequired[int]
83
+ r"""Value in GB"""
84
+ total_outbound_gb: NotRequired[int]
85
+ r"""Value in GB"""
86
+ total_inbound_95th_percentile_mbps: NotRequired[float]
87
+ r"""Value in MBps"""
88
+ total_outbound_95th_percentile_mbps: NotRequired[float]
89
+ r"""Value in MBps"""
90
+
91
+
92
+ class TrafficAttributes(BaseModel):
93
+ from_date: Optional[int] = None
94
+ r"""The start timestamp. Must be a unix timestamp"""
95
+
96
+ to_date: Optional[int] = None
97
+ r"""The end timestamp. Must be a unix timestamp"""
98
+
99
+ regions: Optional[List[TrafficRegions]] = None
100
+
101
+ total_inbound_gb: Optional[int] = None
102
+ r"""Value in GB"""
103
+
104
+ total_outbound_gb: Optional[int] = None
105
+ r"""Value in GB"""
106
+
107
+ total_inbound_95th_percentile_mbps: Optional[float] = None
108
+ r"""Value in MBps"""
109
+
110
+ total_outbound_95th_percentile_mbps: Optional[float] = None
111
+ r"""Value in MBps"""
112
+
113
+
114
+ class TrafficDataTypedDict(TypedDict):
115
+ id: NotRequired[str]
116
+ type: NotRequired[TrafficType]
117
+ attributes: NotRequired[TrafficAttributesTypedDict]
118
+
119
+
120
+ class TrafficData(BaseModel):
121
+ id: Optional[str] = None
122
+
123
+ type: Optional[TrafficType] = None
124
+
125
+ attributes: Optional[TrafficAttributes] = None
126
+
127
+
128
+ class TrafficTypedDict(TypedDict):
129
+ data: NotRequired[TrafficDataTypedDict]
130
+
131
+
132
+ class Traffic(BaseModel):
133
+ data: Optional[TrafficData] = None
@@ -0,0 +1,106 @@
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 List, Optional
7
+ from typing_extensions import NotRequired, TypedDict
8
+
9
+
10
+ class TrafficQuotaType(str, Enum):
11
+ TRAFFIC_QUOTA = "traffic_quota"
12
+
13
+
14
+ class QuotaInTbTypedDict(TypedDict):
15
+ granted: NotRequired[int]
16
+ additional: NotRequired[int]
17
+ total: NotRequired[int]
18
+
19
+
20
+ class QuotaInTb(BaseModel):
21
+ granted: Optional[int] = None
22
+
23
+ additional: Optional[int] = None
24
+
25
+ total: Optional[int] = None
26
+
27
+
28
+ class QuotaInMbpsTypedDict(TypedDict):
29
+ granted: NotRequired[int]
30
+ additional: NotRequired[int]
31
+ total: NotRequired[int]
32
+
33
+
34
+ class QuotaInMbps(BaseModel):
35
+ granted: Optional[int] = None
36
+
37
+ additional: Optional[int] = None
38
+
39
+ total: Optional[int] = None
40
+
41
+
42
+ class QuotaPerRegionTypedDict(TypedDict):
43
+ region_id: NotRequired[str]
44
+ region_slug: NotRequired[str]
45
+ quota_in_tb: NotRequired[QuotaInTbTypedDict]
46
+ quota_in_mbps: NotRequired[QuotaInMbpsTypedDict]
47
+
48
+
49
+ class QuotaPerRegion(BaseModel):
50
+ region_id: Optional[str] = None
51
+
52
+ region_slug: Optional[str] = None
53
+
54
+ quota_in_tb: Optional[QuotaInTb] = None
55
+
56
+ quota_in_mbps: Optional[QuotaInMbps] = None
57
+
58
+
59
+ class QuotaPerProjectTypedDict(TypedDict):
60
+ project_id: NotRequired[str]
61
+ project_slug: NotRequired[str]
62
+ price: NotRequired[int]
63
+ billing_method: NotRequired[str]
64
+ quota_per_region: NotRequired[List[QuotaPerRegionTypedDict]]
65
+
66
+
67
+ class QuotaPerProject(BaseModel):
68
+ project_id: Optional[str] = None
69
+
70
+ project_slug: Optional[str] = None
71
+
72
+ price: Optional[int] = None
73
+
74
+ billing_method: Optional[str] = None
75
+
76
+ quota_per_region: Optional[List[QuotaPerRegion]] = None
77
+
78
+
79
+ class TrafficQuotaAttributesTypedDict(TypedDict):
80
+ quota_per_project: NotRequired[List[QuotaPerProjectTypedDict]]
81
+
82
+
83
+ class TrafficQuotaAttributes(BaseModel):
84
+ quota_per_project: Optional[List[QuotaPerProject]] = None
85
+
86
+
87
+ class TrafficQuotaDataTypedDict(TypedDict):
88
+ id: NotRequired[str]
89
+ type: NotRequired[TrafficQuotaType]
90
+ attributes: NotRequired[TrafficQuotaAttributesTypedDict]
91
+
92
+
93
+ class TrafficQuotaData(BaseModel):
94
+ id: Optional[str] = None
95
+
96
+ type: Optional[TrafficQuotaType] = None
97
+
98
+ attributes: Optional[TrafficQuotaAttributes] = None
99
+
100
+
101
+ class TrafficQuotaTypedDict(TypedDict):
102
+ data: NotRequired[TrafficQuotaDataTypedDict]
103
+
104
+
105
+ class TrafficQuota(BaseModel):
106
+ data: Optional[TrafficQuotaData] = None
@@ -0,0 +1,48 @@
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 UpdateAPIKeyType(str, Enum):
11
+ API_KEYS = "api_keys"
12
+
13
+
14
+ class UpdateAPIKeyAttributesTypedDict(TypedDict):
15
+ name: NotRequired[str]
16
+ r"""Name of the API Key"""
17
+ api_version: NotRequired[str]
18
+ r"""The API version to use"""
19
+
20
+
21
+ class UpdateAPIKeyAttributes(BaseModel):
22
+ name: Optional[str] = "Name of the API Key"
23
+ r"""Name of the API Key"""
24
+
25
+ api_version: Optional[str] = "2023-06-01"
26
+ r"""The API version to use"""
27
+
28
+
29
+ class UpdateAPIKeyDataTypedDict(TypedDict):
30
+ type: UpdateAPIKeyType
31
+ id: NotRequired[str]
32
+ attributes: NotRequired[UpdateAPIKeyAttributesTypedDict]
33
+
34
+
35
+ class UpdateAPIKeyData(BaseModel):
36
+ type: UpdateAPIKeyType
37
+
38
+ id: Optional[str] = None
39
+
40
+ attributes: Optional[UpdateAPIKeyAttributes] = None
41
+
42
+
43
+ class UpdateAPIKeyTypedDict(TypedDict):
44
+ data: NotRequired[UpdateAPIKeyDataTypedDict]
45
+
46
+
47
+ class UpdateAPIKey(BaseModel):
48
+ data: Optional[UpdateAPIKeyData] = None
@@ -0,0 +1,41 @@
1
+ """Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
2
+
3
+ from __future__ import annotations
4
+ from .api_key import APIKey, APIKeyTypedDict
5
+ from .update_api_key import UpdateAPIKey, UpdateAPIKeyTypedDict
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 UpdateAPIKeyRequestTypedDict(TypedDict):
17
+ api_key_id: str
18
+ update_api_key: UpdateAPIKeyTypedDict
19
+
20
+
21
+ class UpdateAPIKeyRequest(BaseModel):
22
+ api_key_id: Annotated[
23
+ str, FieldMetadata(path=PathParamMetadata(style="simple", explode=False))
24
+ ]
25
+
26
+ update_api_key: Annotated[
27
+ UpdateAPIKey,
28
+ FieldMetadata(request=RequestMetadata(media_type="application/json")),
29
+ ]
30
+
31
+
32
+ class UpdateAPIKeyResponseBodyTypedDict(TypedDict):
33
+ r"""API Key Updated"""
34
+
35
+ data: NotRequired[APIKeyTypedDict]
36
+
37
+
38
+ class UpdateAPIKeyResponseBody(BaseModel):
39
+ r"""API Key Updated"""
40
+
41
+ data: Optional[APIKey] = None
@@ -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
+ ]