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.
- latitudesh_python_sdk/_hooks/types.py +7 -0
- latitudesh_python_sdk/_version.py +6 -4
- latitudesh_python_sdk/apikeys.py +22 -18
- latitudesh_python_sdk/basesdk.py +12 -20
- latitudesh_python_sdk/billing.py +2 -0
- latitudesh_python_sdk/events_sdk.py +2 -0
- latitudesh_python_sdk/firewalls_sdk.py +18 -2
- latitudesh_python_sdk/httpclient.py +6 -16
- latitudesh_python_sdk/ipaddresses_sdk.py +4 -0
- latitudesh_python_sdk/models/__init__.py +2563 -1126
- latitudesh_python_sdk/models/assign_server_virtual_networkop.py +2 -2
- latitudesh_python_sdk/models/{bandwidth_plan.py → bandwidth_plan_data.py} +9 -9
- latitudesh_python_sdk/models/bandwidth_plans.py +14 -3
- latitudesh_python_sdk/models/custom_tag.py +15 -0
- latitudesh_python_sdk/models/custom_tag_data.py +54 -0
- latitudesh_python_sdk/models/custom_tags.py +26 -0
- latitudesh_python_sdk/models/delete_ssh_keyop.py +16 -0
- latitudesh_python_sdk/models/delete_user_dataop.py +16 -0
- latitudesh_python_sdk/models/event_data.py +98 -0
- latitudesh_python_sdk/models/events.py +16 -1
- latitudesh_python_sdk/models/filesystem_data.py +4 -0
- latitudesh_python_sdk/models/firewall.py +15 -0
- latitudesh_python_sdk/models/firewall_assignment_data.py +50 -0
- latitudesh_python_sdk/models/firewall_assignments.py +29 -0
- latitudesh_python_sdk/models/firewall_data.py +71 -0
- latitudesh_python_sdk/models/firewall_server.py +4 -1
- latitudesh_python_sdk/models/firewalls.py +7 -7
- latitudesh_python_sdk/models/get_firewall_assignmentsop.py +3 -3
- latitudesh_python_sdk/models/get_ssh_keyop.py +30 -0
- latitudesh_python_sdk/models/get_ssh_keysop.py +22 -0
- latitudesh_python_sdk/models/get_traffic_consumptionop.py +8 -4
- latitudesh_python_sdk/models/get_user_dataop.py +31 -0
- latitudesh_python_sdk/models/get_users_dataop.py +35 -0
- latitudesh_python_sdk/models/operating_system_data.py +65 -0
- latitudesh_python_sdk/models/operating_systems.py +15 -0
- latitudesh_python_sdk/models/out_of_band_connection.py +4 -4
- latitudesh_python_sdk/models/patch_user_dataop.py +69 -0
- latitudesh_python_sdk/models/post_ssh_keyop.py +58 -0
- latitudesh_python_sdk/models/post_user_dataop.py +45 -0
- latitudesh_python_sdk/models/project_include.py +3 -0
- latitudesh_python_sdk/models/put_ssh_keyop.py +80 -0
- latitudesh_python_sdk/models/role.py +11 -0
- latitudesh_python_sdk/models/server_data.py +8 -0
- latitudesh_python_sdk/models/{ssh_key.py → ssh_keys.py} +13 -2
- latitudesh_python_sdk/models/storage_plan_data.py +47 -0
- latitudesh_python_sdk/models/storage_plans.py +14 -3
- latitudesh_python_sdk/models/update_serverop.py +60 -10
- latitudesh_python_sdk/models/user_data.py +11 -0
- latitudesh_python_sdk/models/virtual_network.py +19 -0
- latitudesh_python_sdk/models/virtual_network1.py +15 -0
- latitudesh_python_sdk/models/virtual_network_assignment.py +41 -0
- latitudesh_python_sdk/models/virtual_network_assignment_data.py +68 -0
- latitudesh_python_sdk/models/virtual_network_assignments.py +5 -5
- latitudesh_python_sdk/models/virtual_network_data.py +88 -0
- latitudesh_python_sdk/models/virtual_networks.py +3 -3
- latitudesh_python_sdk/operatingsystems_sdk.py +2 -0
- latitudesh_python_sdk/plans.py +42 -26
- latitudesh_python_sdk/privatenetworks.py +44 -28
- latitudesh_python_sdk/projects_sdk.py +36 -28
- latitudesh_python_sdk/regions_sdk.py +4 -0
- latitudesh_python_sdk/roles.py +4 -0
- latitudesh_python_sdk/sdk.py +110 -73
- latitudesh_python_sdk/sdkconfiguration.py +0 -7
- latitudesh_python_sdk/servers_sdk.py +102 -46
- latitudesh_python_sdk/{sshkeys.py → sshkeys_sdk.py} +1030 -5
- latitudesh_python_sdk/storage.py +8 -0
- latitudesh_python_sdk/tags.py +30 -22
- latitudesh_python_sdk/teams_sdk.py +6 -0
- latitudesh_python_sdk/teamsmembers.py +6 -0
- latitudesh_python_sdk/traffic_sdk.py +12 -8
- latitudesh_python_sdk/userdata_sdk.py +1029 -0
- latitudesh_python_sdk/userprofile.py +6 -0
- latitudesh_python_sdk/utils/__init__.py +131 -46
- latitudesh_python_sdk/utils/forms.py +49 -28
- latitudesh_python_sdk/virtualmachines.py +36 -18
- latitudesh_python_sdk/vpnsessions.py +38 -26
- {latitudesh_python_sdk-1.1.0.dist-info → latitudesh_python_sdk-2.0.0.dist-info}/METADATA +30 -20
- {latitudesh_python_sdk-1.1.0.dist-info → latitudesh_python_sdk-2.0.0.dist-info}/RECORD +80 -61
- {latitudesh_python_sdk-1.1.0.dist-info → latitudesh_python_sdk-2.0.0.dist-info}/WHEEL +1 -1
- latitudesh_python_sdk/models/storage_plan.py +0 -36
- {latitudesh_python_sdk-1.1.0.dist-info → latitudesh_python_sdk-2.0.0.dist-info}/LICENSE +0 -0
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
|
|
2
|
+
|
|
3
|
+
from __future__ import annotations
|
|
4
|
+
from .ssh_key_data import SSHKeyData, SSHKeyDataTypedDict
|
|
5
|
+
from latitudesh_python_sdk.types import BaseModel
|
|
6
|
+
from latitudesh_python_sdk.utils import FieldMetadata, PathParamMetadata
|
|
7
|
+
from typing import Optional
|
|
8
|
+
from typing_extensions import Annotated, NotRequired, TypedDict
|
|
9
|
+
|
|
10
|
+
|
|
11
|
+
class GetSSHKeyRequestTypedDict(TypedDict):
|
|
12
|
+
ssh_key_id: str
|
|
13
|
+
|
|
14
|
+
|
|
15
|
+
class GetSSHKeyRequest(BaseModel):
|
|
16
|
+
ssh_key_id: Annotated[
|
|
17
|
+
str, FieldMetadata(path=PathParamMetadata(style="simple", explode=False))
|
|
18
|
+
]
|
|
19
|
+
|
|
20
|
+
|
|
21
|
+
class GetSSHKeyResponseBodyTypedDict(TypedDict):
|
|
22
|
+
r"""Success"""
|
|
23
|
+
|
|
24
|
+
data: NotRequired[SSHKeyDataTypedDict]
|
|
25
|
+
|
|
26
|
+
|
|
27
|
+
class GetSSHKeyResponseBody(BaseModel):
|
|
28
|
+
r"""Success"""
|
|
29
|
+
|
|
30
|
+
data: Optional[SSHKeyData] = None
|
|
@@ -0,0 +1,22 @@
|
|
|
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, QueryParamMetadata
|
|
6
|
+
import pydantic
|
|
7
|
+
from typing import Optional
|
|
8
|
+
from typing_extensions import Annotated, NotRequired, TypedDict
|
|
9
|
+
|
|
10
|
+
|
|
11
|
+
class GetSSHKeysRequestTypedDict(TypedDict):
|
|
12
|
+
filter_tags: NotRequired[str]
|
|
13
|
+
r"""The tags ids to filter by, separated by comma, e.g. `filter[tags]=tag_1,tag_2`will return ssh keys with `tag_1` AND `tag_2`"""
|
|
14
|
+
|
|
15
|
+
|
|
16
|
+
class GetSSHKeysRequest(BaseModel):
|
|
17
|
+
filter_tags: Annotated[
|
|
18
|
+
Optional[str],
|
|
19
|
+
pydantic.Field(alias="filter[tags]"),
|
|
20
|
+
FieldMetadata(query=QueryParamMetadata(style="form", explode=True)),
|
|
21
|
+
] = None
|
|
22
|
+
r"""The tags ids to filter by, separated by comma, e.g. `filter[tags]=tag_1,tag_2`will return ssh keys with `tag_1` AND `tag_2`"""
|
|
@@ -13,8 +13,10 @@ class GetTrafficConsumptionRequestTypedDict(TypedDict):
|
|
|
13
13
|
r"""The start timestamp to retrieve the traffic. You must provide in ISO8601 format. Example: filter[date][gte]=2024-04-01T00:00:00Z"""
|
|
14
14
|
filter_date_lte: str
|
|
15
15
|
r"""The end timestamp to retrieve the traffic. You must provide in ISO8601 format. Example: filter[date][gte]=2024-04-31T23:59:59Z"""
|
|
16
|
-
filter_server: NotRequired[
|
|
17
|
-
|
|
16
|
+
filter_server: NotRequired[str]
|
|
17
|
+
r"""The server id to filter by"""
|
|
18
|
+
filter_project: NotRequired[str]
|
|
19
|
+
r"""The project id to filter by"""
|
|
18
20
|
|
|
19
21
|
|
|
20
22
|
class GetTrafficConsumptionRequest(BaseModel):
|
|
@@ -33,13 +35,15 @@ class GetTrafficConsumptionRequest(BaseModel):
|
|
|
33
35
|
r"""The end timestamp to retrieve the traffic. You must provide in ISO8601 format. Example: filter[date][gte]=2024-04-31T23:59:59Z"""
|
|
34
36
|
|
|
35
37
|
filter_server: Annotated[
|
|
36
|
-
Optional[
|
|
38
|
+
Optional[str],
|
|
37
39
|
pydantic.Field(alias="filter[server]"),
|
|
38
40
|
FieldMetadata(query=QueryParamMetadata(style="form", explode=True)),
|
|
39
41
|
] = None
|
|
42
|
+
r"""The server id to filter by"""
|
|
40
43
|
|
|
41
44
|
filter_project: Annotated[
|
|
42
|
-
Optional[
|
|
45
|
+
Optional[str],
|
|
43
46
|
pydantic.Field(alias="filter[project]"),
|
|
44
47
|
FieldMetadata(query=QueryParamMetadata(style="form", explode=True)),
|
|
45
48
|
] = None
|
|
49
|
+
r"""The project id to filter by"""
|
|
@@ -0,0 +1,31 @@
|
|
|
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 (
|
|
6
|
+
FieldMetadata,
|
|
7
|
+
PathParamMetadata,
|
|
8
|
+
QueryParamMetadata,
|
|
9
|
+
)
|
|
10
|
+
import pydantic
|
|
11
|
+
from typing import Optional
|
|
12
|
+
from typing_extensions import Annotated, NotRequired, TypedDict
|
|
13
|
+
|
|
14
|
+
|
|
15
|
+
class GetUserDataRequestTypedDict(TypedDict):
|
|
16
|
+
user_data_id: str
|
|
17
|
+
extra_fields_user_data: NotRequired[str]
|
|
18
|
+
r"""The `decoded_content` is provided as an extra attribute that shows content in decoded form."""
|
|
19
|
+
|
|
20
|
+
|
|
21
|
+
class GetUserDataRequest(BaseModel):
|
|
22
|
+
user_data_id: Annotated[
|
|
23
|
+
str, FieldMetadata(path=PathParamMetadata(style="simple", explode=False))
|
|
24
|
+
]
|
|
25
|
+
|
|
26
|
+
extra_fields_user_data: Annotated[
|
|
27
|
+
Optional[str],
|
|
28
|
+
pydantic.Field(alias="extra_fields[user_data]"),
|
|
29
|
+
FieldMetadata(query=QueryParamMetadata(style="form", explode=True)),
|
|
30
|
+
] = "decoded_content"
|
|
31
|
+
r"""The `decoded_content` is provided as an extra attribute that shows content in decoded form."""
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
|
|
2
|
+
|
|
3
|
+
from __future__ import annotations
|
|
4
|
+
from .user_data import UserData, UserDataTypedDict
|
|
5
|
+
from latitudesh_python_sdk.types import BaseModel
|
|
6
|
+
from latitudesh_python_sdk.utils import FieldMetadata, QueryParamMetadata
|
|
7
|
+
import pydantic
|
|
8
|
+
from typing import List, Optional
|
|
9
|
+
from typing_extensions import Annotated, NotRequired, TypedDict
|
|
10
|
+
|
|
11
|
+
|
|
12
|
+
class GetUsersDataRequestTypedDict(TypedDict):
|
|
13
|
+
extra_fields_user_data: NotRequired[str]
|
|
14
|
+
r"""The `decoded_content` is provided as an extra attribute that shows content in decoded form."""
|
|
15
|
+
|
|
16
|
+
|
|
17
|
+
class GetUsersDataRequest(BaseModel):
|
|
18
|
+
extra_fields_user_data: Annotated[
|
|
19
|
+
Optional[str],
|
|
20
|
+
pydantic.Field(alias="extra_fields[user_data]"),
|
|
21
|
+
FieldMetadata(query=QueryParamMetadata(style="form", explode=True)),
|
|
22
|
+
] = "decoded_content"
|
|
23
|
+
r"""The `decoded_content` is provided as an extra attribute that shows content in decoded form."""
|
|
24
|
+
|
|
25
|
+
|
|
26
|
+
class GetUsersDataResponseBodyTypedDict(TypedDict):
|
|
27
|
+
r"""Success"""
|
|
28
|
+
|
|
29
|
+
data: NotRequired[List[UserDataTypedDict]]
|
|
30
|
+
|
|
31
|
+
|
|
32
|
+
class GetUsersDataResponseBody(BaseModel):
|
|
33
|
+
r"""Success"""
|
|
34
|
+
|
|
35
|
+
data: Optional[List[UserData]] = None
|
|
@@ -0,0 +1,65 @@
|
|
|
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 OperatingSystemDataType(str, Enum):
|
|
11
|
+
OPERATING_SYSTEMS = "operating_systems"
|
|
12
|
+
|
|
13
|
+
|
|
14
|
+
class OperatingSystemDataFeaturesTypedDict(TypedDict):
|
|
15
|
+
raid: NotRequired[bool]
|
|
16
|
+
ssh_keys: NotRequired[bool]
|
|
17
|
+
user_data: NotRequired[bool]
|
|
18
|
+
|
|
19
|
+
|
|
20
|
+
class OperatingSystemDataFeatures(BaseModel):
|
|
21
|
+
raid: Optional[bool] = None
|
|
22
|
+
|
|
23
|
+
ssh_keys: Optional[bool] = None
|
|
24
|
+
|
|
25
|
+
user_data: Optional[bool] = None
|
|
26
|
+
|
|
27
|
+
|
|
28
|
+
class OperatingSystemDataAttributesTypedDict(TypedDict):
|
|
29
|
+
features: NotRequired[OperatingSystemDataFeaturesTypedDict]
|
|
30
|
+
name: NotRequired[str]
|
|
31
|
+
slug: NotRequired[str]
|
|
32
|
+
distro: NotRequired[str]
|
|
33
|
+
user: NotRequired[str]
|
|
34
|
+
version: NotRequired[str]
|
|
35
|
+
provisionable_on: NotRequired[List[str]]
|
|
36
|
+
|
|
37
|
+
|
|
38
|
+
class OperatingSystemDataAttributes(BaseModel):
|
|
39
|
+
features: Optional[OperatingSystemDataFeatures] = None
|
|
40
|
+
|
|
41
|
+
name: Optional[str] = None
|
|
42
|
+
|
|
43
|
+
slug: Optional[str] = None
|
|
44
|
+
|
|
45
|
+
distro: Optional[str] = None
|
|
46
|
+
|
|
47
|
+
user: Optional[str] = None
|
|
48
|
+
|
|
49
|
+
version: Optional[str] = None
|
|
50
|
+
|
|
51
|
+
provisionable_on: Optional[List[str]] = None
|
|
52
|
+
|
|
53
|
+
|
|
54
|
+
class OperatingSystemDataTypedDict(TypedDict):
|
|
55
|
+
id: NotRequired[str]
|
|
56
|
+
type: NotRequired[OperatingSystemDataType]
|
|
57
|
+
attributes: NotRequired[OperatingSystemDataAttributesTypedDict]
|
|
58
|
+
|
|
59
|
+
|
|
60
|
+
class OperatingSystemData(BaseModel):
|
|
61
|
+
id: Optional[str] = None
|
|
62
|
+
|
|
63
|
+
type: Optional[OperatingSystemDataType] = None
|
|
64
|
+
|
|
65
|
+
attributes: Optional[OperatingSystemDataAttributes] = 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 .operating_system_data import OperatingSystemData, OperatingSystemDataTypedDict
|
|
4
5
|
from latitudesh_python_sdk.types import BaseModel
|
|
5
6
|
from typing import List, Optional
|
|
6
7
|
from typing_extensions import NotRequired, TypedDict
|
|
@@ -46,12 +47,26 @@ class OperatingSystemsAttributes(BaseModel):
|
|
|
46
47
|
provisionable_on: Optional[List[str]] = None
|
|
47
48
|
|
|
48
49
|
|
|
50
|
+
class OperatingSystemsMetaTypedDict(TypedDict):
|
|
51
|
+
pass
|
|
52
|
+
|
|
53
|
+
|
|
54
|
+
class OperatingSystemsMeta(BaseModel):
|
|
55
|
+
pass
|
|
56
|
+
|
|
57
|
+
|
|
49
58
|
class OperatingSystemsTypedDict(TypedDict):
|
|
50
59
|
id: NotRequired[str]
|
|
51
60
|
attributes: NotRequired[OperatingSystemsAttributesTypedDict]
|
|
61
|
+
data: NotRequired[List[OperatingSystemDataTypedDict]]
|
|
62
|
+
meta: NotRequired[OperatingSystemsMetaTypedDict]
|
|
52
63
|
|
|
53
64
|
|
|
54
65
|
class OperatingSystems(BaseModel):
|
|
55
66
|
id: Optional[str] = None
|
|
56
67
|
|
|
57
68
|
attributes: Optional[OperatingSystemsAttributes] = None
|
|
69
|
+
|
|
70
|
+
data: Optional[List[OperatingSystemData]] = None
|
|
71
|
+
|
|
72
|
+
meta: Optional[OperatingSystemsMeta] = None
|
|
@@ -6,13 +6,13 @@ from typing import Optional
|
|
|
6
6
|
from typing_extensions import NotRequired, TypedDict
|
|
7
7
|
|
|
8
8
|
|
|
9
|
-
class
|
|
9
|
+
class SSHKeyTypedDict(TypedDict):
|
|
10
10
|
id: NotRequired[str]
|
|
11
11
|
description: NotRequired[str]
|
|
12
12
|
fingerprint: NotRequired[str]
|
|
13
13
|
|
|
14
14
|
|
|
15
|
-
class
|
|
15
|
+
class SSHKey(BaseModel):
|
|
16
16
|
id: Optional[str] = None
|
|
17
17
|
|
|
18
18
|
description: Optional[str] = None
|
|
@@ -36,7 +36,7 @@ class Credentials(BaseModel):
|
|
|
36
36
|
|
|
37
37
|
|
|
38
38
|
class OutOfBandConnectionAttributesTypedDict(TypedDict):
|
|
39
|
-
ssh_key: NotRequired[
|
|
39
|
+
ssh_key: NotRequired[SSHKeyTypedDict]
|
|
40
40
|
created_at: NotRequired[str]
|
|
41
41
|
username: NotRequired[str]
|
|
42
42
|
credentials: NotRequired[CredentialsTypedDict]
|
|
@@ -48,7 +48,7 @@ class OutOfBandConnectionAttributesTypedDict(TypedDict):
|
|
|
48
48
|
|
|
49
49
|
|
|
50
50
|
class OutOfBandConnectionAttributes(BaseModel):
|
|
51
|
-
ssh_key: Optional[
|
|
51
|
+
ssh_key: Optional[SSHKey] = None
|
|
52
52
|
|
|
53
53
|
created_at: Optional[str] = None
|
|
54
54
|
|
|
@@ -0,0 +1,69 @@
|
|
|
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 PatchUserDataUserDataType(str, Enum):
|
|
16
|
+
USER_DATA = "user_data"
|
|
17
|
+
|
|
18
|
+
|
|
19
|
+
class PatchUserDataUserDataAttributesTypedDict(TypedDict):
|
|
20
|
+
description: NotRequired[str]
|
|
21
|
+
r"""description dummy user data"""
|
|
22
|
+
content: NotRequired[str]
|
|
23
|
+
r"""encoded content of the User Data"""
|
|
24
|
+
|
|
25
|
+
|
|
26
|
+
class PatchUserDataUserDataAttributes(BaseModel):
|
|
27
|
+
description: Optional[str] = None
|
|
28
|
+
r"""description dummy user data"""
|
|
29
|
+
|
|
30
|
+
content: Optional[str] = None
|
|
31
|
+
r"""encoded content of the User Data"""
|
|
32
|
+
|
|
33
|
+
|
|
34
|
+
class PatchUserDataUserDataDataTypedDict(TypedDict):
|
|
35
|
+
id: str
|
|
36
|
+
type: PatchUserDataUserDataType
|
|
37
|
+
attributes: NotRequired[PatchUserDataUserDataAttributesTypedDict]
|
|
38
|
+
|
|
39
|
+
|
|
40
|
+
class PatchUserDataUserDataData(BaseModel):
|
|
41
|
+
id: str
|
|
42
|
+
|
|
43
|
+
type: PatchUserDataUserDataType
|
|
44
|
+
|
|
45
|
+
attributes: Optional[PatchUserDataUserDataAttributes] = None
|
|
46
|
+
|
|
47
|
+
|
|
48
|
+
class PatchUserDataUserDataRequestBodyTypedDict(TypedDict):
|
|
49
|
+
data: PatchUserDataUserDataDataTypedDict
|
|
50
|
+
|
|
51
|
+
|
|
52
|
+
class PatchUserDataUserDataRequestBody(BaseModel):
|
|
53
|
+
data: PatchUserDataUserDataData
|
|
54
|
+
|
|
55
|
+
|
|
56
|
+
class PatchUserDataRequestTypedDict(TypedDict):
|
|
57
|
+
user_data_id: str
|
|
58
|
+
request_body: NotRequired[PatchUserDataUserDataRequestBodyTypedDict]
|
|
59
|
+
|
|
60
|
+
|
|
61
|
+
class PatchUserDataRequest(BaseModel):
|
|
62
|
+
user_data_id: Annotated[
|
|
63
|
+
str, FieldMetadata(path=PathParamMetadata(style="simple", explode=False))
|
|
64
|
+
]
|
|
65
|
+
|
|
66
|
+
request_body: Annotated[
|
|
67
|
+
Optional[PatchUserDataUserDataRequestBody],
|
|
68
|
+
FieldMetadata(request=RequestMetadata(media_type="application/json")),
|
|
69
|
+
] = None
|
|
@@ -0,0 +1,58 @@
|
|
|
1
|
+
"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
|
|
2
|
+
|
|
3
|
+
from __future__ import annotations
|
|
4
|
+
from .ssh_key_data import SSHKeyData, SSHKeyDataTypedDict
|
|
5
|
+
from enum import Enum
|
|
6
|
+
from latitudesh_python_sdk.types import BaseModel
|
|
7
|
+
from typing import Optional
|
|
8
|
+
from typing_extensions import NotRequired, TypedDict
|
|
9
|
+
|
|
10
|
+
|
|
11
|
+
class PostSSHKeySSHKeysType(str, Enum):
|
|
12
|
+
SSH_KEYS = "ssh_keys"
|
|
13
|
+
|
|
14
|
+
|
|
15
|
+
class PostSSHKeySSHKeysAttributesTypedDict(TypedDict):
|
|
16
|
+
name: NotRequired[str]
|
|
17
|
+
r"""Name of the SSH Key"""
|
|
18
|
+
public_key: NotRequired[str]
|
|
19
|
+
r"""SSH Public Key"""
|
|
20
|
+
|
|
21
|
+
|
|
22
|
+
class PostSSHKeySSHKeysAttributes(BaseModel):
|
|
23
|
+
name: Optional[str] = None
|
|
24
|
+
r"""Name of the SSH Key"""
|
|
25
|
+
|
|
26
|
+
public_key: Optional[str] = None
|
|
27
|
+
r"""SSH Public Key"""
|
|
28
|
+
|
|
29
|
+
|
|
30
|
+
class PostSSHKeySSHKeysDataTypedDict(TypedDict):
|
|
31
|
+
type: PostSSHKeySSHKeysType
|
|
32
|
+
attributes: NotRequired[PostSSHKeySSHKeysAttributesTypedDict]
|
|
33
|
+
|
|
34
|
+
|
|
35
|
+
class PostSSHKeySSHKeysData(BaseModel):
|
|
36
|
+
type: PostSSHKeySSHKeysType
|
|
37
|
+
|
|
38
|
+
attributes: Optional[PostSSHKeySSHKeysAttributes] = None
|
|
39
|
+
|
|
40
|
+
|
|
41
|
+
class PostSSHKeySSHKeysRequestBodyTypedDict(TypedDict):
|
|
42
|
+
data: PostSSHKeySSHKeysDataTypedDict
|
|
43
|
+
|
|
44
|
+
|
|
45
|
+
class PostSSHKeySSHKeysRequestBody(BaseModel):
|
|
46
|
+
data: PostSSHKeySSHKeysData
|
|
47
|
+
|
|
48
|
+
|
|
49
|
+
class PostSSHKeyResponseBodyTypedDict(TypedDict):
|
|
50
|
+
r"""Created"""
|
|
51
|
+
|
|
52
|
+
data: NotRequired[SSHKeyDataTypedDict]
|
|
53
|
+
|
|
54
|
+
|
|
55
|
+
class PostSSHKeyResponseBody(BaseModel):
|
|
56
|
+
r"""Created"""
|
|
57
|
+
|
|
58
|
+
data: Optional[SSHKeyData] = None
|
|
@@ -0,0 +1,45 @@
|
|
|
1
|
+
"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
|
|
2
|
+
|
|
3
|
+
from __future__ import annotations
|
|
4
|
+
from enum import Enum
|
|
5
|
+
from latitudesh_python_sdk.types import BaseModel
|
|
6
|
+
from typing import Optional
|
|
7
|
+
from typing_extensions import NotRequired, TypedDict
|
|
8
|
+
|
|
9
|
+
|
|
10
|
+
class PostUserDataUserDataType(str, Enum):
|
|
11
|
+
USER_DATA = "user_data"
|
|
12
|
+
|
|
13
|
+
|
|
14
|
+
class PostUserDataUserDataAttributesTypedDict(TypedDict):
|
|
15
|
+
description: str
|
|
16
|
+
r"""description of the User Data"""
|
|
17
|
+
content: str
|
|
18
|
+
r"""base64 encoded content of the User Data"""
|
|
19
|
+
|
|
20
|
+
|
|
21
|
+
class PostUserDataUserDataAttributes(BaseModel):
|
|
22
|
+
description: str
|
|
23
|
+
r"""description of the User Data"""
|
|
24
|
+
|
|
25
|
+
content: str
|
|
26
|
+
r"""base64 encoded content of the User Data"""
|
|
27
|
+
|
|
28
|
+
|
|
29
|
+
class PostUserDataUserDataDataTypedDict(TypedDict):
|
|
30
|
+
type: PostUserDataUserDataType
|
|
31
|
+
attributes: NotRequired[PostUserDataUserDataAttributesTypedDict]
|
|
32
|
+
|
|
33
|
+
|
|
34
|
+
class PostUserDataUserDataData(BaseModel):
|
|
35
|
+
type: PostUserDataUserDataType
|
|
36
|
+
|
|
37
|
+
attributes: Optional[PostUserDataUserDataAttributes] = None
|
|
38
|
+
|
|
39
|
+
|
|
40
|
+
class PostUserDataUserDataRequestBodyTypedDict(TypedDict):
|
|
41
|
+
data: PostUserDataUserDataDataTypedDict
|
|
42
|
+
|
|
43
|
+
|
|
44
|
+
class PostUserDataUserDataRequestBody(BaseModel):
|
|
45
|
+
data: PostUserDataUserDataData
|
|
@@ -48,6 +48,7 @@ class ProjectIncludeTypedDict(TypedDict):
|
|
|
48
48
|
environment: NotRequired[str]
|
|
49
49
|
billing: NotRequired[BillingModelTypedDict]
|
|
50
50
|
stats: NotRequired[StatsTypedDict]
|
|
51
|
+
provisioning_type: NotRequired[str]
|
|
51
52
|
|
|
52
53
|
|
|
53
54
|
class ProjectInclude(BaseModel):
|
|
@@ -70,3 +71,5 @@ class ProjectInclude(BaseModel):
|
|
|
70
71
|
billing: Optional[BillingModel] = None
|
|
71
72
|
|
|
72
73
|
stats: Optional[Stats] = None
|
|
74
|
+
|
|
75
|
+
provisioning_type: Optional[str] = None
|
|
@@ -0,0 +1,80 @@
|
|
|
1
|
+
"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
|
|
2
|
+
|
|
3
|
+
from __future__ import annotations
|
|
4
|
+
from .ssh_key_data import SSHKeyData, SSHKeyDataTypedDict
|
|
5
|
+
from enum import Enum
|
|
6
|
+
from latitudesh_python_sdk.types import BaseModel
|
|
7
|
+
from latitudesh_python_sdk.utils import (
|
|
8
|
+
FieldMetadata,
|
|
9
|
+
PathParamMetadata,
|
|
10
|
+
RequestMetadata,
|
|
11
|
+
)
|
|
12
|
+
from typing import List, Optional
|
|
13
|
+
from typing_extensions import Annotated, NotRequired, TypedDict
|
|
14
|
+
|
|
15
|
+
|
|
16
|
+
class PutSSHKeySSHKeysType(str, Enum):
|
|
17
|
+
SSH_KEYS = "ssh_keys"
|
|
18
|
+
|
|
19
|
+
|
|
20
|
+
class PutSSHKeySSHKeysAttributesTypedDict(TypedDict):
|
|
21
|
+
tags: NotRequired[List[str]]
|
|
22
|
+
name: NotRequired[str]
|
|
23
|
+
r"""Name of the SSH Key"""
|
|
24
|
+
|
|
25
|
+
|
|
26
|
+
class PutSSHKeySSHKeysAttributes(BaseModel):
|
|
27
|
+
tags: Optional[List[str]] = None
|
|
28
|
+
|
|
29
|
+
name: Optional[str] = "New SSH Key Name"
|
|
30
|
+
r"""Name of the SSH Key"""
|
|
31
|
+
|
|
32
|
+
|
|
33
|
+
class PutSSHKeySSHKeysDataTypedDict(TypedDict):
|
|
34
|
+
type: PutSSHKeySSHKeysType
|
|
35
|
+
id: NotRequired[str]
|
|
36
|
+
attributes: NotRequired[PutSSHKeySSHKeysAttributesTypedDict]
|
|
37
|
+
|
|
38
|
+
|
|
39
|
+
class PutSSHKeySSHKeysData(BaseModel):
|
|
40
|
+
type: PutSSHKeySSHKeysType
|
|
41
|
+
|
|
42
|
+
id: Optional[str] = "ssh_81EVOtR1N4J2Z"
|
|
43
|
+
|
|
44
|
+
attributes: Optional[PutSSHKeySSHKeysAttributes] = None
|
|
45
|
+
|
|
46
|
+
|
|
47
|
+
class PutSSHKeySSHKeysRequestBodyTypedDict(TypedDict):
|
|
48
|
+
data: PutSSHKeySSHKeysDataTypedDict
|
|
49
|
+
|
|
50
|
+
|
|
51
|
+
class PutSSHKeySSHKeysRequestBody(BaseModel):
|
|
52
|
+
data: PutSSHKeySSHKeysData
|
|
53
|
+
|
|
54
|
+
|
|
55
|
+
class PutSSHKeyRequestTypedDict(TypedDict):
|
|
56
|
+
ssh_key_id: str
|
|
57
|
+
request_body: PutSSHKeySSHKeysRequestBodyTypedDict
|
|
58
|
+
|
|
59
|
+
|
|
60
|
+
class PutSSHKeyRequest(BaseModel):
|
|
61
|
+
ssh_key_id: Annotated[
|
|
62
|
+
str, FieldMetadata(path=PathParamMetadata(style="simple", explode=False))
|
|
63
|
+
]
|
|
64
|
+
|
|
65
|
+
request_body: Annotated[
|
|
66
|
+
PutSSHKeySSHKeysRequestBody,
|
|
67
|
+
FieldMetadata(request=RequestMetadata(media_type="application/json")),
|
|
68
|
+
]
|
|
69
|
+
|
|
70
|
+
|
|
71
|
+
class PutSSHKeyResponseBodyTypedDict(TypedDict):
|
|
72
|
+
r"""Success"""
|
|
73
|
+
|
|
74
|
+
data: NotRequired[SSHKeyDataTypedDict]
|
|
75
|
+
|
|
76
|
+
|
|
77
|
+
class PutSSHKeyResponseBody(BaseModel):
|
|
78
|
+
r"""Success"""
|
|
79
|
+
|
|
80
|
+
data: Optional[SSHKeyData] = None
|
|
@@ -7,9 +7,20 @@ from typing import Optional
|
|
|
7
7
|
from typing_extensions import NotRequired, TypedDict
|
|
8
8
|
|
|
9
9
|
|
|
10
|
+
class RoleMetaTypedDict(TypedDict):
|
|
11
|
+
pass
|
|
12
|
+
|
|
13
|
+
|
|
14
|
+
class RoleMeta(BaseModel):
|
|
15
|
+
pass
|
|
16
|
+
|
|
17
|
+
|
|
10
18
|
class RoleTypedDict(TypedDict):
|
|
11
19
|
data: NotRequired[RoleDataTypedDict]
|
|
20
|
+
meta: NotRequired[RoleMetaTypedDict]
|
|
12
21
|
|
|
13
22
|
|
|
14
23
|
class Role(BaseModel):
|
|
15
24
|
data: Optional[RoleData] = None
|
|
25
|
+
|
|
26
|
+
meta: Optional[RoleMeta] = None
|
|
@@ -45,6 +45,8 @@ class ServerDataPlanTypedDict(TypedDict):
|
|
|
45
45
|
r"""The plan name"""
|
|
46
46
|
billing: NotRequired[str]
|
|
47
47
|
r"""hourly/monthly pricing. Defaults to `hourly`. Appliable for `on_demand` projects only."""
|
|
48
|
+
slug: NotRequired[str]
|
|
49
|
+
r"""The plan slug"""
|
|
48
50
|
|
|
49
51
|
|
|
50
52
|
class ServerDataPlan(BaseModel):
|
|
@@ -57,6 +59,9 @@ class ServerDataPlan(BaseModel):
|
|
|
57
59
|
billing: Optional[str] = None
|
|
58
60
|
r"""hourly/monthly pricing. Defaults to `hourly`. Appliable for `on_demand` projects only."""
|
|
59
61
|
|
|
62
|
+
slug: Optional[str] = None
|
|
63
|
+
r"""The plan slug"""
|
|
64
|
+
|
|
60
65
|
|
|
61
66
|
class ServerDataFeaturesTypedDict(TypedDict):
|
|
62
67
|
raid: NotRequired[bool]
|
|
@@ -159,6 +164,7 @@ class ServerDataAttributesTypedDict(TypedDict):
|
|
|
159
164
|
specs: NotRequired[ServerDataSpecsTypedDict]
|
|
160
165
|
project: NotRequired[ProjectIncludeTypedDict]
|
|
161
166
|
team: NotRequired[TeamIncludeTypedDict]
|
|
167
|
+
primary_ipv6: NotRequired[str]
|
|
162
168
|
|
|
163
169
|
|
|
164
170
|
class ServerDataAttributes(BaseModel):
|
|
@@ -204,6 +210,8 @@ class ServerDataAttributes(BaseModel):
|
|
|
204
210
|
|
|
205
211
|
team: Optional[TeamInclude] = None
|
|
206
212
|
|
|
213
|
+
primary_ipv6: Optional[str] = None
|
|
214
|
+
|
|
207
215
|
|
|
208
216
|
class ServerDataTypedDict(TypedDict):
|
|
209
217
|
id: NotRequired[str]
|
|
@@ -7,9 +7,20 @@ from typing import List, Optional
|
|
|
7
7
|
from typing_extensions import NotRequired, TypedDict
|
|
8
8
|
|
|
9
9
|
|
|
10
|
-
class
|
|
10
|
+
class SSHKeysMetaTypedDict(TypedDict):
|
|
11
|
+
pass
|
|
12
|
+
|
|
13
|
+
|
|
14
|
+
class SSHKeysMeta(BaseModel):
|
|
15
|
+
pass
|
|
16
|
+
|
|
17
|
+
|
|
18
|
+
class SSHKeysTypedDict(TypedDict):
|
|
11
19
|
data: NotRequired[List[SSHKeyDataTypedDict]]
|
|
20
|
+
meta: NotRequired[SSHKeysMetaTypedDict]
|
|
12
21
|
|
|
13
22
|
|
|
14
|
-
class
|
|
23
|
+
class SSHKeys(BaseModel):
|
|
15
24
|
data: Optional[List[SSHKeyData]] = None
|
|
25
|
+
|
|
26
|
+
meta: Optional[SSHKeysMeta] = None
|
|
@@ -0,0 +1,47 @@
|
|
|
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 StoragePlanDataType(str, Enum):
|
|
11
|
+
STORAGE_PLANS = "storage_plans"
|
|
12
|
+
|
|
13
|
+
|
|
14
|
+
class StoragePlanDataPricingTypedDict(TypedDict):
|
|
15
|
+
month: NotRequired[float]
|
|
16
|
+
|
|
17
|
+
|
|
18
|
+
class StoragePlanDataPricing(BaseModel):
|
|
19
|
+
month: Optional[float] = None
|
|
20
|
+
|
|
21
|
+
|
|
22
|
+
class StoragePlanDataAttributesTypedDict(TypedDict):
|
|
23
|
+
name: NotRequired[str]
|
|
24
|
+
locations: NotRequired[List[str]]
|
|
25
|
+
pricing: NotRequired[StoragePlanDataPricingTypedDict]
|
|
26
|
+
|
|
27
|
+
|
|
28
|
+
class StoragePlanDataAttributes(BaseModel):
|
|
29
|
+
name: Optional[str] = None
|
|
30
|
+
|
|
31
|
+
locations: Optional[List[str]] = None
|
|
32
|
+
|
|
33
|
+
pricing: Optional[StoragePlanDataPricing] = None
|
|
34
|
+
|
|
35
|
+
|
|
36
|
+
class StoragePlanDataTypedDict(TypedDict):
|
|
37
|
+
id: NotRequired[str]
|
|
38
|
+
type: NotRequired[StoragePlanDataType]
|
|
39
|
+
attributes: NotRequired[StoragePlanDataAttributesTypedDict]
|
|
40
|
+
|
|
41
|
+
|
|
42
|
+
class StoragePlanData(BaseModel):
|
|
43
|
+
id: Optional[str] = None
|
|
44
|
+
|
|
45
|
+
type: Optional[StoragePlanDataType] = None
|
|
46
|
+
|
|
47
|
+
attributes: Optional[StoragePlanDataAttributes] = None
|