basaltic-sdk-python 0.1.1__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 (47) hide show
  1. basaltic/__init__.py +26 -0
  2. basaltic/_client.py +136 -0
  3. basaltic/_common.py +284 -0
  4. basaltic/_transport.py +196 -0
  5. basaltic/_version.py +3 -0
  6. basaltic/auth.py +231 -0
  7. basaltic/client.py +144 -0
  8. basaltic/config.py +151 -0
  9. basaltic/errors.py +73 -0
  10. basaltic/models/__init__.py +17 -0
  11. basaltic/models/audit.py +85 -0
  12. basaltic/models/billing.py +284 -0
  13. basaltic/models/catalog.py +35 -0
  14. basaltic/models/certificate.py +127 -0
  15. basaltic/models/compute.py +905 -0
  16. basaltic/models/dns.py +256 -0
  17. basaltic/models/iam.py +736 -0
  18. basaltic/models/kms.py +157 -0
  19. basaltic/models/loadbalancer.py +574 -0
  20. basaltic/models/network.py +985 -0
  21. basaltic/models/quota.py +30 -0
  22. basaltic/models/secrets.py +136 -0
  23. basaltic/models/storage.py +789 -0
  24. basaltic/models/telemetry.py +393 -0
  25. basaltic/models/workspace.py +734 -0
  26. basaltic/py.typed +0 -0
  27. basaltic/response.py +152 -0
  28. basaltic/services/__init__.py +1 -0
  29. basaltic/services/audit.py +211 -0
  30. basaltic/services/billing.py +777 -0
  31. basaltic/services/catalog.py +172 -0
  32. basaltic/services/certificate.py +395 -0
  33. basaltic/services/compute.py +2395 -0
  34. basaltic/services/dns.py +1079 -0
  35. basaltic/services/iam.py +3405 -0
  36. basaltic/services/kms.py +742 -0
  37. basaltic/services/loadbalancer.py +1727 -0
  38. basaltic/services/network.py +4691 -0
  39. basaltic/services/quota.py +75 -0
  40. basaltic/services/secrets.py +550 -0
  41. basaltic/services/storage.py +3059 -0
  42. basaltic/services/telemetry.py +1316 -0
  43. basaltic/services/workspace.py +3899 -0
  44. basaltic_sdk_python-0.1.1.dist-info/METADATA +211 -0
  45. basaltic_sdk_python-0.1.1.dist-info/RECORD +47 -0
  46. basaltic_sdk_python-0.1.1.dist-info/WHEEL +4 -0
  47. basaltic_sdk_python-0.1.1.dist-info/licenses/LICENSE +202 -0
basaltic/models/dns.py ADDED
@@ -0,0 +1,256 @@
1
+ """Generated API models. Dictionary keys retain their wire names."""
2
+
3
+ from __future__ import annotations
4
+
5
+ from typing import Literal, NotRequired, Required, TypeAlias, TypedDict
6
+
7
+ VPCAssociationRequestInput = TypedDict(
8
+ "VPCAssociationRequestInput", {"vpc": "Required[str]"}, total=False
9
+ )
10
+ AssociateZoneVPCBody: TypeAlias = "VPCAssociationRequestInput"
11
+ VPCAssociationAccepted = TypedDict(
12
+ "VPCAssociationAccepted", {"zone_id": "Required[str]", "vpc_id": "Required[str]"}, total=False
13
+ )
14
+ AssociateZoneVPCResponse: TypeAlias = "VPCAssociationAccepted"
15
+ RecordCreateRequestInput = TypedDict(
16
+ "RecordCreateRequestInput",
17
+ {
18
+ "name": "Required[str]",
19
+ "type": "Required[RecordTypeInput]",
20
+ "ttl": "NotRequired[int]",
21
+ "values": "Required[list[RecordValueInput]]",
22
+ },
23
+ total=False,
24
+ )
25
+ RecordTypeInput: TypeAlias = "Literal['A', 'AAAA', 'AFSDB', 'APL', 'CAA', 'CERT', 'CNAME', 'CSYNC', 'DHCID', 'DNAME', 'EUI48', 'EUI64', 'HINFO', 'HTTPS', 'IPSECKEY', 'KX', 'L32', 'L64', 'LOC', 'LP', 'MX', 'NAPTR', 'NID', 'NS', 'OPENPGPKEY', 'PTR', 'RKEY', 'RP', 'SMIMEA', 'SPF', 'SRV', 'SSHFP', 'SVCB', 'TLSA', 'TXT', 'URI']"
26
+ RecordValueInput = TypedDict(
27
+ "RecordValueInput", {"content": "Required[str]", "disabled": "NotRequired[bool]"}, total=False
28
+ )
29
+ CreateRecordBody: TypeAlias = "RecordCreateRequestInput"
30
+ RecordResponse = TypedDict("RecordResponse", {"record": "NotRequired[Record]"}, total=False)
31
+ Record = TypedDict(
32
+ "Record",
33
+ {
34
+ "id": "NotRequired[str]",
35
+ "crn": "NotRequired[str]",
36
+ "zone_id": "NotRequired[str]",
37
+ "name": "NotRequired[str]",
38
+ "type": "NotRequired[str]",
39
+ "ttl": "NotRequired[int]",
40
+ "managed": "NotRequired[bool]",
41
+ "values": "NotRequired[list[RecordValue]]",
42
+ },
43
+ total=False,
44
+ )
45
+ RecordValue = TypedDict(
46
+ "RecordValue", {"content": "Required[str]", "disabled": "NotRequired[bool]"}, total=False
47
+ )
48
+ CreateRecordResponse: TypeAlias = "RecordResponse"
49
+ ZoneCreateRequestInput = TypedDict(
50
+ "ZoneCreateRequestInput",
51
+ {
52
+ "name": "Required[str]",
53
+ "description": "NotRequired[str]",
54
+ "visibility": "NotRequired[Literal['public', 'private']]",
55
+ "dnssec": "NotRequired[bool]",
56
+ "import_existing_records": "NotRequired[bool]",
57
+ "vpcs": "NotRequired[list[str]]",
58
+ "tags": "NotRequired[TagsInput]",
59
+ },
60
+ total=False,
61
+ )
62
+ TagsInput: TypeAlias = "dict[str, str]"
63
+ CreateZoneBody: TypeAlias = "ZoneCreateRequestInput"
64
+ ZoneResponse = TypedDict("ZoneResponse", {"zone": "NotRequired[Zone]"}, total=False)
65
+ Zone = TypedDict(
66
+ "Zone",
67
+ {
68
+ "id": "NotRequired[str]",
69
+ "crn": "NotRequired[str]",
70
+ "name": "NotRequired[str]",
71
+ "description": "NotRequired[str]",
72
+ "nameservers": "NotRequired[list[str]]",
73
+ "soa": "NotRequired[SOA]",
74
+ "visibility": "NotRequired[Literal['public', 'private']]",
75
+ "dnssec": "NotRequired[ZoneDNSSEC]",
76
+ "tags": "NotRequired[Tags]",
77
+ "ownership": "NotRequired[ZoneOwnership]",
78
+ },
79
+ total=False,
80
+ )
81
+ SOA = TypedDict(
82
+ "SOA",
83
+ {
84
+ "primary_ns": "NotRequired[str]",
85
+ "admin_email": "NotRequired[str]",
86
+ "refresh": "NotRequired[int]",
87
+ "retry": "NotRequired[int]",
88
+ "expire": "NotRequired[int]",
89
+ "minimum": "NotRequired[int]",
90
+ },
91
+ total=False,
92
+ )
93
+ ZoneDNSSEC = TypedDict(
94
+ "ZoneDNSSEC",
95
+ {
96
+ "enabled": "Required[bool]",
97
+ "ksk_key_tag": "NotRequired[int]",
98
+ "zsk_key_tag": "NotRequired[int]",
99
+ "algorithm": "NotRequired[int]",
100
+ "ds_records": "NotRequired[list[ZoneDSRecord]]",
101
+ },
102
+ total=False,
103
+ )
104
+ ZoneDSRecord = TypedDict(
105
+ "ZoneDSRecord",
106
+ {
107
+ "key_tag": "Required[int]",
108
+ "algorithm": "Required[int]",
109
+ "digest_type": "Required[int]",
110
+ "digest": "Required[str]",
111
+ "rdata": "Required[str]",
112
+ },
113
+ total=False,
114
+ )
115
+ Tags: TypeAlias = "dict[str, str]"
116
+ ZoneOwnership = TypedDict(
117
+ "ZoneOwnership",
118
+ {
119
+ "verified": "NotRequired[bool]",
120
+ "verified_at": "NotRequired[str | None]",
121
+ "checked_at": "NotRequired[str]",
122
+ "recheck_deadline": "NotRequired[str]",
123
+ },
124
+ total=False,
125
+ )
126
+ CreateZoneResponse: TypeAlias = "ZoneResponse"
127
+ GetRecordResponse: TypeAlias = "RecordResponse"
128
+ GetRecordResource: TypeAlias = "Record"
129
+ GetRecordScope = TypedDict(
130
+ "GetRecordScope",
131
+ {
132
+ "type": "NotRequired[str]",
133
+ "include_managed": "NotRequired[bool]",
134
+ "limit": "NotRequired[int]",
135
+ },
136
+ total=False,
137
+ )
138
+ GetZoneResponse: TypeAlias = "ZoneResponse"
139
+ GetZoneResource: TypeAlias = "Zone"
140
+ GetZoneScope = TypedDict("GetZoneScope", {"limit": "NotRequired[int]"}, total=False)
141
+ ZoneRecordImportResponse = TypedDict(
142
+ "ZoneRecordImportResponse", {"record_import": "NotRequired[ZoneRecordImport]"}, total=False
143
+ )
144
+ ZoneRecordImport = TypedDict(
145
+ "ZoneRecordImport",
146
+ {
147
+ "state": "NotRequired[Literal['pending', 'complete', 'failed']]",
148
+ "source": "NotRequired[Literal['axfr', 'nsec-walk', 'query']]",
149
+ "complete": "NotRequired[bool]",
150
+ "found": "NotRequired[int]",
151
+ "imported": "NotRequired[int]",
152
+ "notes": "NotRequired[list[str]]",
153
+ "error": "NotRequired[str]",
154
+ "updated_at": "NotRequired[str]",
155
+ },
156
+ total=False,
157
+ )
158
+ GetZoneRecordImportResponse: TypeAlias = "ZoneRecordImportResponse"
159
+ ZoneImportRequestInput = TypedDict(
160
+ "ZoneImportRequestInput", {"zone_file": "Required[str]"}, total=False
161
+ )
162
+ ImportZoneFileBody: TypeAlias = "ZoneImportRequestInput"
163
+ ZoneImportResponse = TypedDict(
164
+ "ZoneImportResponse", {"import": "NotRequired[ZoneImportResult]"}, total=False
165
+ )
166
+ ZoneImportResult = TypedDict(
167
+ "ZoneImportResult",
168
+ {
169
+ "records_created": "NotRequired[int]",
170
+ "records_replaced": "NotRequired[int]",
171
+ "records_by_type": "NotRequired[dict[str, int]]",
172
+ "skipped": "NotRequired[list[ZoneImportSkipped]]",
173
+ "warnings": "NotRequired[list[str]]",
174
+ },
175
+ total=False,
176
+ )
177
+ ZoneImportSkipped = TypedDict(
178
+ "ZoneImportSkipped",
179
+ {"name": "NotRequired[str]", "type": "NotRequired[str]", "reason": "NotRequired[str]"},
180
+ total=False,
181
+ )
182
+ ImportZoneFileResponse: TypeAlias = "ZoneImportResponse"
183
+ ListRecordsParameters = TypedDict(
184
+ "ListRecordsParameters",
185
+ {
186
+ "type": "NotRequired[str]",
187
+ "name": "NotRequired[str]",
188
+ "crn": "NotRequired[str]",
189
+ "include_managed": "NotRequired[bool]",
190
+ "limit": "NotRequired[int]",
191
+ "marker": "NotRequired[str]",
192
+ },
193
+ total=False,
194
+ )
195
+ ListRecordsQuery: TypeAlias = "ListRecordsParameters"
196
+ RecordListResponse = TypedDict(
197
+ "RecordListResponse",
198
+ {"records": "NotRequired[list[Record]]", "meta": "NotRequired[PaginationMeta]"},
199
+ total=False,
200
+ )
201
+ PaginationMeta = TypedDict(
202
+ "PaginationMeta",
203
+ {
204
+ "total": "NotRequired[int]",
205
+ "limit": "NotRequired[int]",
206
+ "marker": "NotRequired[str]",
207
+ "has_more": "NotRequired[bool]",
208
+ },
209
+ total=False,
210
+ )
211
+ ListRecordsResponse: TypeAlias = "RecordListResponse"
212
+ ListRecordsItem: TypeAlias = "Record"
213
+ ListZoneVPCAssociationsParameters = TypedDict(
214
+ "ListZoneVPCAssociationsParameters",
215
+ {"name": "NotRequired[str]", "crn": "NotRequired[str]"},
216
+ total=False,
217
+ )
218
+ ListZoneVPCAssociationsQuery: TypeAlias = "ListZoneVPCAssociationsParameters"
219
+ VPCAssociationsResponse = TypedDict(
220
+ "VPCAssociationsResponse", {"vpc_ids": "Required[list[str]]"}, total=False
221
+ )
222
+ ListZoneVPCAssociationsResponse: TypeAlias = "VPCAssociationsResponse"
223
+ ListZoneVPCAssociationsItem: TypeAlias = "str"
224
+ ListZonesParameters = TypedDict(
225
+ "ListZonesParameters",
226
+ {
227
+ "name": "NotRequired[str]",
228
+ "crn": "NotRequired[str]",
229
+ "limit": "NotRequired[int]",
230
+ "marker": "NotRequired[str]",
231
+ },
232
+ total=False,
233
+ )
234
+ ListZonesQuery: TypeAlias = "ListZonesParameters"
235
+ ZoneListResponse = TypedDict(
236
+ "ZoneListResponse",
237
+ {"zones": "NotRequired[list[Zone]]", "meta": "NotRequired[PaginationMeta]"},
238
+ total=False,
239
+ )
240
+ ListZonesResponse: TypeAlias = "ZoneListResponse"
241
+ ListZonesItem: TypeAlias = "Zone"
242
+ RecordUpdateRequestInput = TypedDict(
243
+ "RecordUpdateRequestInput",
244
+ {"ttl": "NotRequired[int]", "values": "NotRequired[list[RecordValueInput]]"},
245
+ total=False,
246
+ )
247
+ UpdateRecordBody: TypeAlias = "RecordUpdateRequestInput"
248
+ UpdateRecordResponse: TypeAlias = "RecordResponse"
249
+ ZoneUpdateRequestInput = TypedDict(
250
+ "ZoneUpdateRequestInput",
251
+ {"description": "NotRequired[str]", "tags": "NotRequired[dict[str, object]]"},
252
+ total=False,
253
+ )
254
+ UpdateZoneBody: TypeAlias = "ZoneUpdateRequestInput"
255
+ UpdateZoneResponse: TypeAlias = "ZoneResponse"
256
+ VerifyZoneOwnershipResponse: TypeAlias = "ZoneResponse"