latitudesh-python-sdk 1.1.0__py3-none-any.whl → 2.0.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.

Potentially problematic release.


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

Files changed (81) hide show
  1. latitudesh_python_sdk/_hooks/types.py +7 -0
  2. latitudesh_python_sdk/_version.py +6 -4
  3. latitudesh_python_sdk/apikeys.py +22 -18
  4. latitudesh_python_sdk/basesdk.py +12 -20
  5. latitudesh_python_sdk/billing.py +2 -0
  6. latitudesh_python_sdk/events_sdk.py +2 -0
  7. latitudesh_python_sdk/firewalls_sdk.py +18 -2
  8. latitudesh_python_sdk/httpclient.py +6 -16
  9. latitudesh_python_sdk/ipaddresses_sdk.py +4 -0
  10. latitudesh_python_sdk/models/__init__.py +2563 -1126
  11. latitudesh_python_sdk/models/assign_server_virtual_networkop.py +2 -2
  12. latitudesh_python_sdk/models/{bandwidth_plan.py → bandwidth_plan_data.py} +9 -9
  13. latitudesh_python_sdk/models/bandwidth_plans.py +14 -3
  14. latitudesh_python_sdk/models/custom_tag.py +15 -0
  15. latitudesh_python_sdk/models/custom_tag_data.py +54 -0
  16. latitudesh_python_sdk/models/custom_tags.py +26 -0
  17. latitudesh_python_sdk/models/delete_ssh_keyop.py +16 -0
  18. latitudesh_python_sdk/models/delete_user_dataop.py +16 -0
  19. latitudesh_python_sdk/models/event_data.py +98 -0
  20. latitudesh_python_sdk/models/events.py +16 -1
  21. latitudesh_python_sdk/models/filesystem_data.py +4 -0
  22. latitudesh_python_sdk/models/firewall.py +15 -0
  23. latitudesh_python_sdk/models/firewall_assignment_data.py +50 -0
  24. latitudesh_python_sdk/models/firewall_assignments.py +29 -0
  25. latitudesh_python_sdk/models/firewall_data.py +71 -0
  26. latitudesh_python_sdk/models/firewall_server.py +4 -1
  27. latitudesh_python_sdk/models/firewalls.py +7 -7
  28. latitudesh_python_sdk/models/get_firewall_assignmentsop.py +3 -3
  29. latitudesh_python_sdk/models/get_ssh_keyop.py +30 -0
  30. latitudesh_python_sdk/models/get_ssh_keysop.py +22 -0
  31. latitudesh_python_sdk/models/get_traffic_consumptionop.py +8 -4
  32. latitudesh_python_sdk/models/get_user_dataop.py +31 -0
  33. latitudesh_python_sdk/models/get_users_dataop.py +35 -0
  34. latitudesh_python_sdk/models/operating_system_data.py +65 -0
  35. latitudesh_python_sdk/models/operating_systems.py +15 -0
  36. latitudesh_python_sdk/models/out_of_band_connection.py +4 -4
  37. latitudesh_python_sdk/models/patch_user_dataop.py +69 -0
  38. latitudesh_python_sdk/models/post_ssh_keyop.py +58 -0
  39. latitudesh_python_sdk/models/post_user_dataop.py +45 -0
  40. latitudesh_python_sdk/models/project_include.py +3 -0
  41. latitudesh_python_sdk/models/put_ssh_keyop.py +80 -0
  42. latitudesh_python_sdk/models/role.py +11 -0
  43. latitudesh_python_sdk/models/server_data.py +8 -0
  44. latitudesh_python_sdk/models/{ssh_key.py → ssh_keys.py} +13 -2
  45. latitudesh_python_sdk/models/storage_plan_data.py +47 -0
  46. latitudesh_python_sdk/models/storage_plans.py +14 -3
  47. latitudesh_python_sdk/models/update_serverop.py +60 -10
  48. latitudesh_python_sdk/models/user_data.py +11 -0
  49. latitudesh_python_sdk/models/virtual_network.py +19 -0
  50. latitudesh_python_sdk/models/virtual_network1.py +15 -0
  51. latitudesh_python_sdk/models/virtual_network_assignment.py +41 -0
  52. latitudesh_python_sdk/models/virtual_network_assignment_data.py +68 -0
  53. latitudesh_python_sdk/models/virtual_network_assignments.py +5 -5
  54. latitudesh_python_sdk/models/virtual_network_data.py +88 -0
  55. latitudesh_python_sdk/models/virtual_networks.py +3 -3
  56. latitudesh_python_sdk/operatingsystems_sdk.py +2 -0
  57. latitudesh_python_sdk/plans.py +42 -26
  58. latitudesh_python_sdk/privatenetworks.py +44 -28
  59. latitudesh_python_sdk/projects_sdk.py +36 -28
  60. latitudesh_python_sdk/regions_sdk.py +4 -0
  61. latitudesh_python_sdk/roles.py +4 -0
  62. latitudesh_python_sdk/sdk.py +110 -73
  63. latitudesh_python_sdk/sdkconfiguration.py +0 -7
  64. latitudesh_python_sdk/servers_sdk.py +102 -46
  65. latitudesh_python_sdk/{sshkeys.py → sshkeys_sdk.py} +1030 -5
  66. latitudesh_python_sdk/storage.py +8 -0
  67. latitudesh_python_sdk/tags.py +30 -22
  68. latitudesh_python_sdk/teams_sdk.py +6 -0
  69. latitudesh_python_sdk/teamsmembers.py +6 -0
  70. latitudesh_python_sdk/traffic_sdk.py +12 -8
  71. latitudesh_python_sdk/userdata_sdk.py +1029 -0
  72. latitudesh_python_sdk/userprofile.py +6 -0
  73. latitudesh_python_sdk/utils/__init__.py +131 -46
  74. latitudesh_python_sdk/utils/forms.py +49 -28
  75. latitudesh_python_sdk/virtualmachines.py +36 -18
  76. latitudesh_python_sdk/vpnsessions.py +38 -26
  77. {latitudesh_python_sdk-1.1.0.dist-info → latitudesh_python_sdk-2.0.0.dist-info}/METADATA +30 -20
  78. {latitudesh_python_sdk-1.1.0.dist-info → latitudesh_python_sdk-2.0.0.dist-info}/RECORD +80 -61
  79. {latitudesh_python_sdk-1.1.0.dist-info → latitudesh_python_sdk-2.0.0.dist-info}/WHEEL +1 -1
  80. latitudesh_python_sdk/models/storage_plan.py +0 -36
  81. {latitudesh_python_sdk-1.1.0.dist-info → latitudesh_python_sdk-2.0.0.dist-info}/LICENSE +0 -0
@@ -13,13 +13,13 @@ class AssignServerVirtualNetworkPrivateNetworksType(str, Enum):
13
13
 
14
14
  class AssignServerVirtualNetworkPrivateNetworksAttributesTypedDict(TypedDict):
15
15
  server_id: str
16
- virtual_network_id: int
16
+ virtual_network_id: str
17
17
 
18
18
 
19
19
  class AssignServerVirtualNetworkPrivateNetworksAttributes(BaseModel):
20
20
  server_id: str
21
21
 
22
- virtual_network_id: int
22
+ virtual_network_id: str
23
23
 
24
24
 
25
25
  class AssignServerVirtualNetworkPrivateNetworksDataTypedDict(TypedDict):
@@ -7,7 +7,7 @@ from typing import List, Optional
7
7
  from typing_extensions import NotRequired, TypedDict
8
8
 
9
9
 
10
- class BandwidthPlanType(str, Enum):
10
+ class BandwidthPlanDataType(str, Enum):
11
11
  BANDWIDTH_PLAN = "bandwidth_plan"
12
12
 
13
13
 
@@ -44,13 +44,13 @@ class Pricing(BaseModel):
44
44
  brl: Optional[Brl] = None
45
45
 
46
46
 
47
- class BandwidthPlanAttributesTypedDict(TypedDict):
47
+ class BandwidthPlanDataAttributesTypedDict(TypedDict):
48
48
  region: NotRequired[str]
49
49
  locations: NotRequired[List[str]]
50
50
  pricing: NotRequired[PricingTypedDict]
51
51
 
52
52
 
53
- class BandwidthPlanAttributes(BaseModel):
53
+ class BandwidthPlanDataAttributes(BaseModel):
54
54
  region: Optional[str] = None
55
55
 
56
56
  locations: Optional[List[str]] = None
@@ -58,15 +58,15 @@ class BandwidthPlanAttributes(BaseModel):
58
58
  pricing: Optional[Pricing] = None
59
59
 
60
60
 
61
- class BandwidthPlanTypedDict(TypedDict):
61
+ class BandwidthPlanDataTypedDict(TypedDict):
62
62
  id: NotRequired[str]
63
- type: NotRequired[BandwidthPlanType]
64
- attributes: NotRequired[BandwidthPlanAttributesTypedDict]
63
+ type: NotRequired[BandwidthPlanDataType]
64
+ attributes: NotRequired[BandwidthPlanDataAttributesTypedDict]
65
65
 
66
66
 
67
- class BandwidthPlan(BaseModel):
67
+ class BandwidthPlanData(BaseModel):
68
68
  id: Optional[str] = None
69
69
 
70
- type: Optional[BandwidthPlanType] = None
70
+ type: Optional[BandwidthPlanDataType] = None
71
71
 
72
- attributes: Optional[BandwidthPlanAttributes] = None
72
+ attributes: Optional[BandwidthPlanDataAttributes] = None
@@ -1,15 +1,26 @@
1
1
  """Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
2
2
 
3
3
  from __future__ import annotations
4
- from .bandwidth_plan import BandwidthPlan, BandwidthPlanTypedDict
4
+ from .bandwidth_plan_data import BandwidthPlanData, BandwidthPlanDataTypedDict
5
5
  from latitudesh_python_sdk.types import BaseModel
6
6
  from typing import List, Optional
7
7
  from typing_extensions import NotRequired, TypedDict
8
8
 
9
9
 
10
+ class BandwidthPlansMetaTypedDict(TypedDict):
11
+ pass
12
+
13
+
14
+ class BandwidthPlansMeta(BaseModel):
15
+ pass
16
+
17
+
10
18
  class BandwidthPlansTypedDict(TypedDict):
11
- data: NotRequired[List[BandwidthPlanTypedDict]]
19
+ data: NotRequired[List[BandwidthPlanDataTypedDict]]
20
+ meta: NotRequired[BandwidthPlansMetaTypedDict]
12
21
 
13
22
 
14
23
  class BandwidthPlans(BaseModel):
15
- data: Optional[List[BandwidthPlan]] = None
24
+ data: Optional[List[BandwidthPlanData]] = None
25
+
26
+ meta: Optional[BandwidthPlansMeta] = None
@@ -1,6 +1,7 @@
1
1
  """Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
2
2
 
3
3
  from __future__ import annotations
4
+ from .custom_tag_data import CustomTagData, CustomTagDataTypedDict
4
5
  from .team_include import TeamInclude, TeamIncludeTypedDict
5
6
  from enum import Enum
6
7
  from latitudesh_python_sdk.types import BaseModel
@@ -40,10 +41,20 @@ class CustomTagAttributes(BaseModel):
40
41
  team: Optional[TeamInclude] = None
41
42
 
42
43
 
44
+ class CustomTagMetaTypedDict(TypedDict):
45
+ pass
46
+
47
+
48
+ class CustomTagMeta(BaseModel):
49
+ pass
50
+
51
+
43
52
  class CustomTagTypedDict(TypedDict):
44
53
  id: NotRequired[str]
45
54
  type: NotRequired[CustomTagType]
46
55
  attributes: NotRequired[CustomTagAttributesTypedDict]
56
+ data: NotRequired[CustomTagDataTypedDict]
57
+ meta: NotRequired[CustomTagMetaTypedDict]
47
58
 
48
59
 
49
60
  class CustomTag(BaseModel):
@@ -52,3 +63,7 @@ class CustomTag(BaseModel):
52
63
  type: Optional[CustomTagType] = None
53
64
 
54
65
  attributes: Optional[CustomTagAttributes] = None
66
+
67
+ data: Optional[CustomTagData] = None
68
+
69
+ meta: Optional[CustomTagMeta] = None
@@ -0,0 +1,54 @@
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 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 CustomTagDataType(str, Enum):
12
+ TAGS = "tags"
13
+
14
+
15
+ class CustomTagDataAttributesTypedDict(TypedDict):
16
+ name: NotRequired[str]
17
+ r"""Name of the Tag"""
18
+ slug: NotRequired[str]
19
+ r"""Slug of the Tag"""
20
+ description: NotRequired[str]
21
+ r"""Description of the Tag"""
22
+ color: NotRequired[str]
23
+ r"""Color of the Tag"""
24
+ team: NotRequired[TeamIncludeTypedDict]
25
+
26
+
27
+ class CustomTagDataAttributes(BaseModel):
28
+ name: Optional[str] = None
29
+ r"""Name of the Tag"""
30
+
31
+ slug: Optional[str] = None
32
+ r"""Slug of the Tag"""
33
+
34
+ description: Optional[str] = None
35
+ r"""Description of the Tag"""
36
+
37
+ color: Optional[str] = None
38
+ r"""Color of the Tag"""
39
+
40
+ team: Optional[TeamInclude] = None
41
+
42
+
43
+ class CustomTagDataTypedDict(TypedDict):
44
+ id: NotRequired[str]
45
+ type: NotRequired[CustomTagDataType]
46
+ attributes: NotRequired[CustomTagDataAttributesTypedDict]
47
+
48
+
49
+ class CustomTagData(BaseModel):
50
+ id: Optional[str] = None
51
+
52
+ type: Optional[CustomTagDataType] = None
53
+
54
+ attributes: Optional[CustomTagDataAttributes] = None
@@ -0,0 +1,26 @@
1
+ """Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
2
+
3
+ from __future__ import annotations
4
+ from .custom_tag_data import CustomTagData, CustomTagDataTypedDict
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 CustomTagsMetaTypedDict(TypedDict):
11
+ pass
12
+
13
+
14
+ class CustomTagsMeta(BaseModel):
15
+ pass
16
+
17
+
18
+ class CustomTagsTypedDict(TypedDict):
19
+ data: NotRequired[List[CustomTagDataTypedDict]]
20
+ meta: NotRequired[CustomTagsMetaTypedDict]
21
+
22
+
23
+ class CustomTags(BaseModel):
24
+ data: Optional[List[CustomTagData]] = None
25
+
26
+ meta: Optional[CustomTagsMeta] = None
@@ -0,0 +1,16 @@
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 latitudesh_python_sdk.utils import FieldMetadata, PathParamMetadata
6
+ from typing_extensions import Annotated, TypedDict
7
+
8
+
9
+ class DeleteSSHKeyRequestTypedDict(TypedDict):
10
+ ssh_key_id: str
11
+
12
+
13
+ class DeleteSSHKeyRequest(BaseModel):
14
+ ssh_key_id: Annotated[
15
+ str, FieldMetadata(path=PathParamMetadata(style="simple", explode=False))
16
+ ]
@@ -0,0 +1,16 @@
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 latitudesh_python_sdk.utils import FieldMetadata, PathParamMetadata
6
+ from typing_extensions import Annotated, TypedDict
7
+
8
+
9
+ class DeleteUserDataRequestTypedDict(TypedDict):
10
+ user_data_id: str
11
+
12
+
13
+ class DeleteUserDataRequest(BaseModel):
14
+ user_data_id: Annotated[
15
+ str, FieldMetadata(path=PathParamMetadata(style="simple", explode=False))
16
+ ]
@@ -0,0 +1,98 @@
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 EventDataType(str, Enum):
11
+ EVENTS = "events"
12
+
13
+
14
+ class EventDataAuthorTypedDict(TypedDict):
15
+ id: NotRequired[str]
16
+ name: NotRequired[str]
17
+ email: NotRequired[str]
18
+
19
+
20
+ class EventDataAuthor(BaseModel):
21
+ id: Optional[str] = None
22
+
23
+ name: Optional[str] = None
24
+
25
+ email: Optional[str] = None
26
+
27
+
28
+ class EventDataProjectTypedDict(TypedDict):
29
+ id: NotRequired[str]
30
+ name: NotRequired[str]
31
+ slug: NotRequired[str]
32
+
33
+
34
+ class EventDataProject(BaseModel):
35
+ id: Optional[str] = None
36
+
37
+ name: Optional[str] = None
38
+
39
+ slug: Optional[str] = None
40
+
41
+
42
+ class EventDataTeamTypedDict(TypedDict):
43
+ id: NotRequired[str]
44
+ name: NotRequired[str]
45
+
46
+
47
+ class EventDataTeam(BaseModel):
48
+ id: Optional[str] = None
49
+
50
+ name: Optional[str] = None
51
+
52
+
53
+ class EventDataTargetTypedDict(TypedDict):
54
+ id: NotRequired[str]
55
+ name: NotRequired[str]
56
+
57
+
58
+ class EventDataTarget(BaseModel):
59
+ id: Optional[str] = None
60
+
61
+ name: Optional[str] = None
62
+
63
+
64
+ class EventDataAttributesTypedDict(TypedDict):
65
+ action: NotRequired[str]
66
+ created_at: NotRequired[str]
67
+ author: NotRequired[EventDataAuthorTypedDict]
68
+ project: NotRequired[EventDataProjectTypedDict]
69
+ team: NotRequired[EventDataTeamTypedDict]
70
+ target: NotRequired[EventDataTargetTypedDict]
71
+
72
+
73
+ class EventDataAttributes(BaseModel):
74
+ action: Optional[str] = None
75
+
76
+ created_at: Optional[str] = None
77
+
78
+ author: Optional[EventDataAuthor] = None
79
+
80
+ project: Optional[EventDataProject] = None
81
+
82
+ team: Optional[EventDataTeam] = None
83
+
84
+ target: Optional[EventDataTarget] = None
85
+
86
+
87
+ class EventDataTypedDict(TypedDict):
88
+ id: NotRequired[str]
89
+ type: NotRequired[EventDataType]
90
+ attributes: NotRequired[EventDataAttributesTypedDict]
91
+
92
+
93
+ class EventData(BaseModel):
94
+ id: Optional[str] = None
95
+
96
+ type: Optional[EventDataType] = None
97
+
98
+ attributes: Optional[EventDataAttributes] = None
@@ -1,8 +1,9 @@
1
1
  """Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
2
2
 
3
3
  from __future__ import annotations
4
+ from .event_data import EventData, EventDataTypedDict
4
5
  from latitudesh_python_sdk.types import BaseModel
5
- from typing import Optional
6
+ from typing import List, Optional
6
7
  from typing_extensions import NotRequired, TypedDict
7
8
 
8
9
 
@@ -79,12 +80,26 @@ class EventsAttributes(BaseModel):
79
80
  target: Optional[Target] = None
80
81
 
81
82
 
83
+ class MetaTypedDict(TypedDict):
84
+ pass
85
+
86
+
87
+ class Meta(BaseModel):
88
+ pass
89
+
90
+
82
91
  class EventsTypedDict(TypedDict):
83
92
  id: NotRequired[str]
84
93
  attributes: NotRequired[EventsAttributesTypedDict]
94
+ data: NotRequired[List[EventDataTypedDict]]
95
+ meta: NotRequired[MetaTypedDict]
85
96
 
86
97
 
87
98
  class Events(BaseModel):
88
99
  id: Optional[str] = None
89
100
 
90
101
  attributes: Optional[EventsAttributes] = None
102
+
103
+ data: Optional[List[EventData]] = None
104
+
105
+ meta: Optional[Meta] = None
@@ -1,6 +1,7 @@
1
1
  """Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
2
2
 
3
3
  from __future__ import annotations
4
+ from datetime import datetime
4
5
  from enum import Enum
5
6
  from latitudesh_python_sdk.types import BaseModel
6
7
  from typing import Optional
@@ -29,6 +30,7 @@ class FilesystemDataAttributesTypedDict(TypedDict):
29
30
  name: NotRequired[str]
30
31
  size_in_gb: NotRequired[int]
31
32
  project: NotRequired[FilesystemDataProjectTypedDict]
33
+ created_at: NotRequired[datetime]
32
34
 
33
35
 
34
36
  class FilesystemDataAttributes(BaseModel):
@@ -38,6 +40,8 @@ class FilesystemDataAttributes(BaseModel):
38
40
 
39
41
  project: Optional[FilesystemDataProject] = None
40
42
 
43
+ created_at: Optional[datetime] = None
44
+
41
45
 
42
46
  class FilesystemDataTypedDict(TypedDict):
43
47
  id: NotRequired[str]
@@ -1,6 +1,7 @@
1
1
  """Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
2
2
 
3
3
  from __future__ import annotations
4
+ from .firewall_data import FirewallData, FirewallDataTypedDict
4
5
  from enum import Enum
5
6
  from latitudesh_python_sdk.types import BaseModel
6
7
  import pydantic
@@ -57,10 +58,20 @@ class FirewallAttributes(BaseModel):
57
58
  project: Optional[FirewallProject] = None
58
59
 
59
60
 
61
+ class FirewallMetaTypedDict(TypedDict):
62
+ pass
63
+
64
+
65
+ class FirewallMeta(BaseModel):
66
+ pass
67
+
68
+
60
69
  class FirewallTypedDict(TypedDict):
61
70
  id: NotRequired[str]
62
71
  type: NotRequired[FirewallType]
63
72
  attributes: NotRequired[FirewallAttributesTypedDict]
73
+ data: NotRequired[FirewallDataTypedDict]
74
+ meta: NotRequired[FirewallMetaTypedDict]
64
75
 
65
76
 
66
77
  class Firewall(BaseModel):
@@ -69,3 +80,7 @@ class Firewall(BaseModel):
69
80
  type: Optional[FirewallType] = None
70
81
 
71
82
  attributes: Optional[FirewallAttributes] = None
83
+
84
+ data: Optional[FirewallData] = None
85
+
86
+ meta: Optional[FirewallMeta] = 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 FirewallAssignmentDataType(str, Enum):
11
+ FIREWALL_ASSIGNMENTS = "firewall_assignments"
12
+
13
+
14
+ class FirewallAssignmentDataServerTypedDict(TypedDict):
15
+ id: NotRequired[str]
16
+ primary_ipv4: NotRequired[str]
17
+ hostname: NotRequired[str]
18
+
19
+
20
+ class FirewallAssignmentDataServer(BaseModel):
21
+ id: Optional[str] = None
22
+
23
+ primary_ipv4: Optional[str] = None
24
+
25
+ hostname: Optional[str] = None
26
+
27
+
28
+ class FirewallAssignmentDataAttributesTypedDict(TypedDict):
29
+ server: NotRequired[FirewallAssignmentDataServerTypedDict]
30
+ firewall_id: NotRequired[str]
31
+
32
+
33
+ class FirewallAssignmentDataAttributes(BaseModel):
34
+ server: Optional[FirewallAssignmentDataServer] = None
35
+
36
+ firewall_id: Optional[str] = None
37
+
38
+
39
+ class FirewallAssignmentDataTypedDict(TypedDict):
40
+ id: NotRequired[str]
41
+ type: NotRequired[FirewallAssignmentDataType]
42
+ attributes: NotRequired[FirewallAssignmentDataAttributesTypedDict]
43
+
44
+
45
+ class FirewallAssignmentData(BaseModel):
46
+ id: Optional[str] = None
47
+
48
+ type: Optional[FirewallAssignmentDataType] = None
49
+
50
+ attributes: Optional[FirewallAssignmentDataAttributes] = None
@@ -0,0 +1,29 @@
1
+ """Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
2
+
3
+ from __future__ import annotations
4
+ from .firewall_assignment_data import (
5
+ FirewallAssignmentData,
6
+ FirewallAssignmentDataTypedDict,
7
+ )
8
+ from latitudesh_python_sdk.types import BaseModel
9
+ from typing import List, Optional
10
+ from typing_extensions import NotRequired, TypedDict
11
+
12
+
13
+ class FirewallAssignmentsMetaTypedDict(TypedDict):
14
+ pass
15
+
16
+
17
+ class FirewallAssignmentsMeta(BaseModel):
18
+ pass
19
+
20
+
21
+ class FirewallAssignmentsTypedDict(TypedDict):
22
+ data: NotRequired[List[FirewallAssignmentDataTypedDict]]
23
+ meta: NotRequired[FirewallAssignmentsMetaTypedDict]
24
+
25
+
26
+ class FirewallAssignments(BaseModel):
27
+ data: Optional[List[FirewallAssignmentData]] = None
28
+
29
+ meta: Optional[FirewallAssignmentsMeta] = None
@@ -0,0 +1,71 @@
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 FirewallDataType(str, Enum):
12
+ FIREWALLS = "firewalls"
13
+
14
+
15
+ class FirewallDataRulesTypedDict(TypedDict):
16
+ from_: NotRequired[str]
17
+ to: NotRequired[str]
18
+ port: NotRequired[str]
19
+ protocol: NotRequired[str]
20
+
21
+
22
+ class FirewallDataRules(BaseModel):
23
+ from_: Annotated[Optional[str], pydantic.Field(alias="from")] = None
24
+
25
+ to: Optional[str] = None
26
+
27
+ port: Optional[str] = None
28
+
29
+ protocol: Optional[str] = None
30
+
31
+
32
+ class FirewallDataProjectTypedDict(TypedDict):
33
+ id: NotRequired[str]
34
+ slug: NotRequired[str]
35
+ name: NotRequired[str]
36
+
37
+
38
+ class FirewallDataProject(BaseModel):
39
+ id: Optional[str] = None
40
+
41
+ slug: Optional[str] = None
42
+
43
+ name: Optional[str] = None
44
+
45
+
46
+ class FirewallDataAttributesTypedDict(TypedDict):
47
+ name: NotRequired[str]
48
+ rules: NotRequired[List[FirewallDataRulesTypedDict]]
49
+ project: NotRequired[FirewallDataProjectTypedDict]
50
+
51
+
52
+ class FirewallDataAttributes(BaseModel):
53
+ name: Optional[str] = None
54
+
55
+ rules: Optional[List[FirewallDataRules]] = None
56
+
57
+ project: Optional[FirewallDataProject] = None
58
+
59
+
60
+ class FirewallDataTypedDict(TypedDict):
61
+ id: NotRequired[str]
62
+ type: NotRequired[FirewallDataType]
63
+ attributes: NotRequired[FirewallDataAttributesTypedDict]
64
+
65
+
66
+ class FirewallData(BaseModel):
67
+ id: Optional[str] = None
68
+
69
+ type: Optional[FirewallDataType] = None
70
+
71
+ attributes: Optional[FirewallDataAttributes] = None
@@ -8,7 +8,7 @@ from typing_extensions import NotRequired, TypedDict
8
8
 
9
9
 
10
10
  class FirewallServerType(str, Enum):
11
- FIREWALL_ASSIGNMENTS = "firewall_assignments"
11
+ FIREWALL_SERVERS = "firewall_servers"
12
12
 
13
13
 
14
14
  class FirewallServerServerTypedDict(TypedDict):
@@ -28,6 +28,7 @@ class FirewallServerServer(BaseModel):
28
28
  class FirewallServerAttributesTypedDict(TypedDict):
29
29
  server: NotRequired[FirewallServerServerTypedDict]
30
30
  firewall_id: NotRequired[str]
31
+ server_id: NotRequired[str]
31
32
 
32
33
 
33
34
  class FirewallServerAttributes(BaseModel):
@@ -35,6 +36,8 @@ class FirewallServerAttributes(BaseModel):
35
36
 
36
37
  firewall_id: Optional[str] = None
37
38
 
39
+ server_id: Optional[str] = None
40
+
38
41
 
39
42
  class FirewallServerTypedDict(TypedDict):
40
43
  id: NotRequired[str]
@@ -1,26 +1,26 @@
1
1
  """Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
2
2
 
3
3
  from __future__ import annotations
4
- from .firewall import Firewall, FirewallTypedDict
4
+ from .firewall_data import FirewallData, FirewallDataTypedDict
5
5
  from latitudesh_python_sdk.types import BaseModel
6
6
  from typing import List, Optional
7
7
  from typing_extensions import NotRequired, TypedDict
8
8
 
9
9
 
10
- class MetaTypedDict(TypedDict):
10
+ class FirewallsMetaTypedDict(TypedDict):
11
11
  pass
12
12
 
13
13
 
14
- class Meta(BaseModel):
14
+ class FirewallsMeta(BaseModel):
15
15
  pass
16
16
 
17
17
 
18
18
  class FirewallsTypedDict(TypedDict):
19
- data: NotRequired[List[FirewallTypedDict]]
20
- meta: NotRequired[MetaTypedDict]
19
+ data: NotRequired[List[FirewallDataTypedDict]]
20
+ meta: NotRequired[FirewallsMetaTypedDict]
21
21
 
22
22
 
23
23
  class Firewalls(BaseModel):
24
- data: Optional[List[Firewall]] = None
24
+ data: Optional[List[FirewallData]] = None
25
25
 
26
- meta: Optional[Meta] = None
26
+ meta: Optional[FirewallsMeta] = None
@@ -1,7 +1,7 @@
1
1
  """Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
2
2
 
3
3
  from __future__ import annotations
4
- from .firewall_server import FirewallServer, FirewallServerTypedDict
4
+ from .firewall_assignments import FirewallAssignments, FirewallAssignmentsTypedDict
5
5
  from latitudesh_python_sdk.types import BaseModel
6
6
  from latitudesh_python_sdk.utils import (
7
7
  FieldMetadata,
@@ -44,10 +44,10 @@ class GetFirewallAssignmentsRequest(BaseModel):
44
44
 
45
45
 
46
46
  class GetFirewallAssignmentsResponseTypedDict(TypedDict):
47
- result: FirewallServerTypedDict
47
+ result: FirewallAssignmentsTypedDict
48
48
 
49
49
 
50
50
  class GetFirewallAssignmentsResponse(BaseModel):
51
51
  next: Callable[[], Optional[GetFirewallAssignmentsResponse]]
52
52
 
53
- result: FirewallServer
53
+ result: FirewallAssignments