latitudesh-python-sdk 1.0.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 (96) 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 +86 -5
  7. latitudesh_python_sdk/firewalls_sdk.py +146 -9
  8. latitudesh_python_sdk/httpclient.py +6 -16
  9. latitudesh_python_sdk/ipaddresses_sdk.py +82 -5
  10. latitudesh_python_sdk/models/__init__.py +2597 -1071
  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/billing_usage.py +3 -0
  15. latitudesh_python_sdk/models/custom_tag.py +15 -0
  16. latitudesh_python_sdk/models/custom_tag_data.py +54 -0
  17. latitudesh_python_sdk/models/custom_tags.py +26 -0
  18. latitudesh_python_sdk/models/delete_ssh_keyop.py +16 -0
  19. latitudesh_python_sdk/models/delete_user_dataop.py +16 -0
  20. latitudesh_python_sdk/models/event_data.py +98 -0
  21. latitudesh_python_sdk/models/events.py +16 -1
  22. latitudesh_python_sdk/models/filesystem_data.py +4 -0
  23. latitudesh_python_sdk/models/firewall.py +15 -0
  24. latitudesh_python_sdk/models/firewall_assignment_data.py +50 -0
  25. latitudesh_python_sdk/models/firewall_assignments.py +29 -0
  26. latitudesh_python_sdk/models/firewall_data.py +71 -0
  27. latitudesh_python_sdk/models/firewall_server.py +4 -1
  28. latitudesh_python_sdk/models/firewalls.py +7 -7
  29. latitudesh_python_sdk/models/get_bandwidth_plansop.py +30 -1
  30. latitudesh_python_sdk/models/get_eventsop.py +29 -1
  31. latitudesh_python_sdk/models/get_firewall_assignmentsop.py +37 -2
  32. latitudesh_python_sdk/models/get_ipsop.py +30 -1
  33. latitudesh_python_sdk/models/get_plans_operating_systemop.py +37 -2
  34. latitudesh_python_sdk/models/get_projectsop.py +30 -1
  35. latitudesh_python_sdk/models/get_regionsop.py +42 -0
  36. latitudesh_python_sdk/models/get_rolesop.py +37 -2
  37. latitudesh_python_sdk/models/get_serversop.py +30 -1
  38. latitudesh_python_sdk/models/get_ssh_keyop.py +30 -0
  39. latitudesh_python_sdk/models/get_ssh_keysop.py +22 -0
  40. latitudesh_python_sdk/models/get_team_membersop.py +42 -0
  41. latitudesh_python_sdk/models/get_traffic_consumptionop.py +8 -4
  42. latitudesh_python_sdk/models/get_user_dataop.py +31 -0
  43. latitudesh_python_sdk/models/get_users_dataop.py +35 -0
  44. latitudesh_python_sdk/models/get_virtual_networks_assignmentsop.py +33 -1
  45. latitudesh_python_sdk/models/get_virtual_networksop.py +30 -1
  46. latitudesh_python_sdk/models/list_firewallsop.py +30 -1
  47. latitudesh_python_sdk/models/operating_system_data.py +65 -0
  48. latitudesh_python_sdk/models/operating_systems.py +15 -0
  49. latitudesh_python_sdk/models/out_of_band_connection.py +4 -4
  50. latitudesh_python_sdk/models/patch_user_dataop.py +69 -0
  51. latitudesh_python_sdk/models/post_ssh_keyop.py +58 -0
  52. latitudesh_python_sdk/models/post_user_dataop.py +45 -0
  53. latitudesh_python_sdk/models/project_include.py +3 -0
  54. latitudesh_python_sdk/models/put_ssh_keyop.py +80 -0
  55. latitudesh_python_sdk/models/role.py +11 -0
  56. latitudesh_python_sdk/models/server_data.py +8 -0
  57. latitudesh_python_sdk/models/{ssh_key.py → ssh_keys.py} +13 -2
  58. latitudesh_python_sdk/models/storage_plan_data.py +47 -0
  59. latitudesh_python_sdk/models/storage_plans.py +14 -3
  60. latitudesh_python_sdk/models/update_serverop.py +60 -10
  61. latitudesh_python_sdk/models/user_data.py +11 -0
  62. latitudesh_python_sdk/models/virtual_network.py +19 -1
  63. latitudesh_python_sdk/models/virtual_network1.py +15 -0
  64. latitudesh_python_sdk/models/virtual_network_assignment.py +41 -0
  65. latitudesh_python_sdk/models/virtual_network_assignment_data.py +68 -0
  66. latitudesh_python_sdk/models/virtual_network_assignments.py +5 -5
  67. latitudesh_python_sdk/models/virtual_network_data.py +88 -0
  68. latitudesh_python_sdk/models/virtual_networks.py +3 -3
  69. latitudesh_python_sdk/operatingsystems_sdk.py +78 -9
  70. latitudesh_python_sdk/plans.py +109 -30
  71. latitudesh_python_sdk/privatenetworks.py +185 -36
  72. latitudesh_python_sdk/projects_sdk.py +113 -32
  73. latitudesh_python_sdk/regions_sdk.py +78 -7
  74. latitudesh_python_sdk/roles.py +78 -7
  75. latitudesh_python_sdk/sdk.py +110 -73
  76. latitudesh_python_sdk/sdkconfiguration.py +0 -7
  77. latitudesh_python_sdk/servers_sdk.py +195 -50
  78. latitudesh_python_sdk/{sshkeys.py → sshkeys_sdk.py} +1030 -5
  79. latitudesh_python_sdk/storage.py +8 -0
  80. latitudesh_python_sdk/tags.py +30 -22
  81. latitudesh_python_sdk/teams_sdk.py +6 -0
  82. latitudesh_python_sdk/teamsmembers.py +80 -7
  83. latitudesh_python_sdk/traffic_sdk.py +12 -8
  84. latitudesh_python_sdk/userdata_sdk.py +1029 -0
  85. latitudesh_python_sdk/userprofile.py +6 -0
  86. latitudesh_python_sdk/utils/__init__.py +131 -45
  87. latitudesh_python_sdk/utils/datetimes.py +23 -0
  88. latitudesh_python_sdk/utils/forms.py +49 -28
  89. latitudesh_python_sdk/utils/serializers.py +32 -3
  90. latitudesh_python_sdk/virtualmachines.py +36 -18
  91. latitudesh_python_sdk/vpnsessions.py +38 -26
  92. {latitudesh_python_sdk-1.0.0.dist-info → latitudesh_python_sdk-2.0.0.dist-info}/METADATA +58 -22
  93. {latitudesh_python_sdk-1.0.0.dist-info → latitudesh_python_sdk-2.0.0.dist-info}/RECORD +95 -73
  94. {latitudesh_python_sdk-1.0.0.dist-info → latitudesh_python_sdk-2.0.0.dist-info}/WHEEL +1 -1
  95. latitudesh_python_sdk/models/storage_plan.py +0 -36
  96. {latitudesh_python_sdk-1.0.0.dist-info → latitudesh_python_sdk-2.0.0.dist-info}/LICENSE +0 -0
@@ -80,6 +80,7 @@ class Storage(BaseSDK):
80
80
 
81
81
  http_res = self.do_request(
82
82
  hook_ctx=HookContext(
83
+ config=self.sdk_configuration,
83
84
  base_url=base_url or "",
84
85
  operation_id="post-storage-filesystems",
85
86
  oauth2_scopes=[],
@@ -187,6 +188,7 @@ class Storage(BaseSDK):
187
188
 
188
189
  http_res = await self.do_request_async(
189
190
  hook_ctx=HookContext(
191
+ config=self.sdk_configuration,
190
192
  base_url=base_url or "",
191
193
  operation_id="post-storage-filesystems",
192
194
  oauth2_scopes=[],
@@ -282,6 +284,7 @@ class Storage(BaseSDK):
282
284
 
283
285
  http_res = self.do_request(
284
286
  hook_ctx=HookContext(
287
+ config=self.sdk_configuration,
285
288
  base_url=base_url or "",
286
289
  operation_id="get-storage-filesystems",
287
290
  oauth2_scopes=[],
@@ -375,6 +378,7 @@ class Storage(BaseSDK):
375
378
 
376
379
  http_res = await self.do_request_async(
377
380
  hook_ctx=HookContext(
381
+ config=self.sdk_configuration,
378
382
  base_url=base_url or "",
379
383
  operation_id="get-storage-filesystems",
380
384
  oauth2_scopes=[],
@@ -468,6 +472,7 @@ class Storage(BaseSDK):
468
472
 
469
473
  http_res = self.do_request(
470
474
  hook_ctx=HookContext(
475
+ config=self.sdk_configuration,
471
476
  base_url=base_url or "",
472
477
  operation_id="delete-storage-filesystems",
473
478
  oauth2_scopes=[],
@@ -561,6 +566,7 @@ class Storage(BaseSDK):
561
566
 
562
567
  http_res = await self.do_request_async(
563
568
  hook_ctx=HookContext(
569
+ config=self.sdk_configuration,
564
570
  base_url=base_url or "",
565
571
  operation_id="delete-storage-filesystems",
566
572
  oauth2_scopes=[],
@@ -671,6 +677,7 @@ class Storage(BaseSDK):
671
677
 
672
678
  http_res = self.do_request(
673
679
  hook_ctx=HookContext(
680
+ config=self.sdk_configuration,
674
681
  base_url=base_url or "",
675
682
  operation_id="patch-storage-filesystems",
676
683
  oauth2_scopes=[],
@@ -783,6 +790,7 @@ class Storage(BaseSDK):
783
790
 
784
791
  http_res = await self.do_request_async(
785
792
  hook_ctx=HookContext(
793
+ config=self.sdk_configuration,
786
794
  base_url=base_url or "",
787
795
  operation_id="patch-storage-filesystems",
788
796
  oauth2_scopes=[],
@@ -3,9 +3,9 @@
3
3
  from .basesdk import BaseSDK
4
4
  from latitudesh_python_sdk import models, utils
5
5
  from latitudesh_python_sdk._hooks import HookContext
6
- from latitudesh_python_sdk.types import BaseModel, OptionalNullable, UNSET
6
+ from latitudesh_python_sdk.types import OptionalNullable, UNSET
7
7
  from latitudesh_python_sdk.utils import get_security_from_env
8
- from typing import Mapping, Optional, Union, cast
8
+ from typing import Mapping, Optional, Union
9
9
 
10
10
 
11
11
  class Tags(BaseSDK):
@@ -16,7 +16,7 @@ class Tags(BaseSDK):
16
16
  server_url: Optional[str] = None,
17
17
  timeout_ms: Optional[int] = None,
18
18
  http_headers: Optional[Mapping[str, str]] = None,
19
- ) -> models.CustomTag:
19
+ ) -> models.CustomTags:
20
20
  r"""List all Tags
21
21
 
22
22
  List all Tags in the team.
@@ -62,6 +62,7 @@ class Tags(BaseSDK):
62
62
 
63
63
  http_res = self.do_request(
64
64
  hook_ctx=HookContext(
65
+ config=self.sdk_configuration,
65
66
  base_url=base_url or "",
66
67
  operation_id="get-tags",
67
68
  oauth2_scopes=[],
@@ -75,7 +76,7 @@ class Tags(BaseSDK):
75
76
  )
76
77
 
77
78
  if utils.match_response(http_res, "200", "application/vnd.api+json"):
78
- return utils.unmarshal_json(http_res.text, models.CustomTag)
79
+ return utils.unmarshal_json(http_res.text, models.CustomTags)
79
80
  if utils.match_response(http_res, "4XX", "*"):
80
81
  http_res_text = utils.stream_to_text(http_res)
81
82
  raise models.APIError(
@@ -103,7 +104,7 @@ class Tags(BaseSDK):
103
104
  server_url: Optional[str] = None,
104
105
  timeout_ms: Optional[int] = None,
105
106
  http_headers: Optional[Mapping[str, str]] = None,
106
- ) -> models.CustomTag:
107
+ ) -> models.CustomTags:
107
108
  r"""List all Tags
108
109
 
109
110
  List all Tags in the team.
@@ -149,6 +150,7 @@ class Tags(BaseSDK):
149
150
 
150
151
  http_res = await self.do_request_async(
151
152
  hook_ctx=HookContext(
153
+ config=self.sdk_configuration,
152
154
  base_url=base_url or "",
153
155
  operation_id="get-tags",
154
156
  oauth2_scopes=[],
@@ -162,7 +164,7 @@ class Tags(BaseSDK):
162
164
  )
163
165
 
164
166
  if utils.match_response(http_res, "200", "application/vnd.api+json"):
165
- return utils.unmarshal_json(http_res.text, models.CustomTag)
167
+ return utils.unmarshal_json(http_res.text, models.CustomTags)
166
168
  if utils.match_response(http_res, "4XX", "*"):
167
169
  http_res_text = await utils.stream_to_text_async(http_res)
168
170
  raise models.APIError(
@@ -186,9 +188,9 @@ class Tags(BaseSDK):
186
188
  def create(
187
189
  self,
188
190
  *,
189
- request: Union[
190
- models.CreateTagTagsRequestBody, models.CreateTagTagsRequestBodyTypedDict
191
- ] = models.CreateTagTagsRequestBody(),
191
+ data: Optional[
192
+ Union[models.CreateTagTagsData, models.CreateTagTagsDataTypedDict]
193
+ ] = None,
192
194
  retries: OptionalNullable[utils.RetryConfig] = UNSET,
193
195
  server_url: Optional[str] = None,
194
196
  timeout_ms: Optional[int] = None,
@@ -199,7 +201,7 @@ class Tags(BaseSDK):
199
201
  Create a Tag in the team.
200
202
 
201
203
 
202
- :param request: The request object to send.
204
+ :param data:
203
205
  :param retries: Override the default retry configuration for this method
204
206
  :param server_url: Override the default server URL for this method
205
207
  :param timeout_ms: Override the default request timeout configuration for this method in milliseconds
@@ -215,9 +217,9 @@ class Tags(BaseSDK):
215
217
  else:
216
218
  base_url = self._get_url(base_url, url_variables)
217
219
 
218
- if not isinstance(request, BaseModel):
219
- request = utils.unmarshal(request, models.CreateTagTagsRequestBody)
220
- request = cast(models.CreateTagTagsRequestBody, request)
220
+ request = models.CreateTagTagsRequestBody(
221
+ data=utils.get_pydantic_model(data, Optional[models.CreateTagTagsData]),
222
+ )
221
223
 
222
224
  req = self._build_request(
223
225
  method="POST",
@@ -233,7 +235,7 @@ class Tags(BaseSDK):
233
235
  http_headers=http_headers,
234
236
  security=self.sdk_configuration.security,
235
237
  get_serialized_body=lambda: utils.serialize_request_body(
236
- request, False, True, "json", Optional[models.CreateTagTagsRequestBody]
238
+ request, False, False, "json", models.CreateTagTagsRequestBody
237
239
  ),
238
240
  timeout_ms=timeout_ms,
239
241
  )
@@ -248,6 +250,7 @@ class Tags(BaseSDK):
248
250
 
249
251
  http_res = self.do_request(
250
252
  hook_ctx=HookContext(
253
+ config=self.sdk_configuration,
251
254
  base_url=base_url or "",
252
255
  operation_id="create-tag",
253
256
  oauth2_scopes=[],
@@ -285,9 +288,9 @@ class Tags(BaseSDK):
285
288
  async def create_async(
286
289
  self,
287
290
  *,
288
- request: Union[
289
- models.CreateTagTagsRequestBody, models.CreateTagTagsRequestBodyTypedDict
290
- ] = models.CreateTagTagsRequestBody(),
291
+ data: Optional[
292
+ Union[models.CreateTagTagsData, models.CreateTagTagsDataTypedDict]
293
+ ] = None,
291
294
  retries: OptionalNullable[utils.RetryConfig] = UNSET,
292
295
  server_url: Optional[str] = None,
293
296
  timeout_ms: Optional[int] = None,
@@ -298,7 +301,7 @@ class Tags(BaseSDK):
298
301
  Create a Tag in the team.
299
302
 
300
303
 
301
- :param request: The request object to send.
304
+ :param data:
302
305
  :param retries: Override the default retry configuration for this method
303
306
  :param server_url: Override the default server URL for this method
304
307
  :param timeout_ms: Override the default request timeout configuration for this method in milliseconds
@@ -314,9 +317,9 @@ class Tags(BaseSDK):
314
317
  else:
315
318
  base_url = self._get_url(base_url, url_variables)
316
319
 
317
- if not isinstance(request, BaseModel):
318
- request = utils.unmarshal(request, models.CreateTagTagsRequestBody)
319
- request = cast(models.CreateTagTagsRequestBody, request)
320
+ request = models.CreateTagTagsRequestBody(
321
+ data=utils.get_pydantic_model(data, Optional[models.CreateTagTagsData]),
322
+ )
320
323
 
321
324
  req = self._build_request_async(
322
325
  method="POST",
@@ -332,7 +335,7 @@ class Tags(BaseSDK):
332
335
  http_headers=http_headers,
333
336
  security=self.sdk_configuration.security,
334
337
  get_serialized_body=lambda: utils.serialize_request_body(
335
- request, False, True, "json", Optional[models.CreateTagTagsRequestBody]
338
+ request, False, False, "json", models.CreateTagTagsRequestBody
336
339
  ),
337
340
  timeout_ms=timeout_ms,
338
341
  )
@@ -347,6 +350,7 @@ class Tags(BaseSDK):
347
350
 
348
351
  http_res = await self.do_request_async(
349
352
  hook_ctx=HookContext(
353
+ config=self.sdk_configuration,
350
354
  base_url=base_url or "",
351
355
  operation_id="create-tag",
352
356
  oauth2_scopes=[],
@@ -455,6 +459,7 @@ class Tags(BaseSDK):
455
459
 
456
460
  http_res = self.do_request(
457
461
  hook_ctx=HookContext(
462
+ config=self.sdk_configuration,
458
463
  base_url=base_url or "",
459
464
  operation_id="update-tag",
460
465
  oauth2_scopes=[],
@@ -563,6 +568,7 @@ class Tags(BaseSDK):
563
568
 
564
569
  http_res = await self.do_request_async(
565
570
  hook_ctx=HookContext(
571
+ config=self.sdk_configuration,
566
572
  base_url=base_url or "",
567
573
  operation_id="update-tag",
568
574
  oauth2_scopes=[],
@@ -657,6 +663,7 @@ class Tags(BaseSDK):
657
663
 
658
664
  http_res = self.do_request(
659
665
  hook_ctx=HookContext(
666
+ config=self.sdk_configuration,
660
667
  base_url=base_url or "",
661
668
  operation_id="destroy-tag",
662
669
  oauth2_scopes=[],
@@ -751,6 +758,7 @@ class Tags(BaseSDK):
751
758
 
752
759
  http_res = await self.do_request_async(
753
760
  hook_ctx=HookContext(
761
+ config=self.sdk_configuration,
754
762
  base_url=base_url or "",
755
763
  operation_id="destroy-tag",
756
764
  oauth2_scopes=[],
@@ -59,6 +59,7 @@ class TeamsSDK(BaseSDK):
59
59
 
60
60
  http_res = self.do_request(
61
61
  hook_ctx=HookContext(
62
+ config=self.sdk_configuration,
62
63
  base_url=base_url or "",
63
64
  operation_id="get-team",
64
65
  oauth2_scopes=[],
@@ -143,6 +144,7 @@ class TeamsSDK(BaseSDK):
143
144
 
144
145
  http_res = await self.do_request_async(
145
146
  hook_ctx=HookContext(
147
+ config=self.sdk_configuration,
146
148
  base_url=base_url or "",
147
149
  operation_id="get-team",
148
150
  oauth2_scopes=[],
@@ -237,6 +239,7 @@ class TeamsSDK(BaseSDK):
237
239
 
238
240
  http_res = self.do_request(
239
241
  hook_ctx=HookContext(
242
+ config=self.sdk_configuration,
240
243
  base_url=base_url or "",
241
244
  operation_id="post-team",
242
245
  oauth2_scopes=[],
@@ -335,6 +338,7 @@ class TeamsSDK(BaseSDK):
335
338
 
336
339
  http_res = await self.do_request_async(
337
340
  hook_ctx=HookContext(
341
+ config=self.sdk_configuration,
338
342
  base_url=base_url or "",
339
343
  operation_id="post-team",
340
344
  oauth2_scopes=[],
@@ -444,6 +448,7 @@ class TeamsSDK(BaseSDK):
444
448
 
445
449
  http_res = self.do_request(
446
450
  hook_ctx=HookContext(
451
+ config=self.sdk_configuration,
447
452
  base_url=base_url or "",
448
453
  operation_id="patch-current-team",
449
454
  oauth2_scopes=[],
@@ -555,6 +560,7 @@ class TeamsSDK(BaseSDK):
555
560
 
556
561
  http_res = await self.do_request_async(
557
562
  hook_ctx=HookContext(
563
+ config=self.sdk_configuration,
558
564
  base_url=base_url or "",
559
565
  operation_id="patch-current-team",
560
566
  oauth2_scopes=[],
@@ -1,24 +1,29 @@
1
1
  """Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
2
2
 
3
3
  from .basesdk import BaseSDK
4
+ from jsonpath import JSONPath
4
5
  from latitudesh_python_sdk import models, utils
5
6
  from latitudesh_python_sdk._hooks import HookContext
6
7
  from latitudesh_python_sdk.types import OptionalNullable, UNSET
7
8
  from latitudesh_python_sdk.utils import get_security_from_env
8
- from typing import Any, Mapping, Optional, Union
9
+ from typing import Any, Dict, List, Mapping, Optional, Union
9
10
 
10
11
 
11
12
  class TeamsMembers(BaseSDK):
12
13
  def list(
13
14
  self,
14
15
  *,
16
+ page_size: Optional[int] = 20,
17
+ page_number: Optional[int] = 1,
15
18
  retries: OptionalNullable[utils.RetryConfig] = UNSET,
16
19
  server_url: Optional[str] = None,
17
20
  timeout_ms: Optional[int] = None,
18
21
  http_headers: Optional[Mapping[str, str]] = None,
19
- ) -> models.TeamMembers:
22
+ ) -> Optional[models.GetTeamMembersResponse]:
20
23
  r"""List all Team Members
21
24
 
25
+ :param page_size: Number of items to return per page
26
+ :param page_number: Page number to return (starts at 1)
22
27
  :param retries: Override the default retry configuration for this method
23
28
  :param server_url: Override the default server URL for this method
24
29
  :param timeout_ms: Override the default request timeout configuration for this method in milliseconds
@@ -33,12 +38,18 @@ class TeamsMembers(BaseSDK):
33
38
  base_url = server_url
34
39
  else:
35
40
  base_url = self._get_url(base_url, url_variables)
41
+
42
+ request = models.GetTeamMembersRequest(
43
+ page_size=page_size,
44
+ page_number=page_number,
45
+ )
46
+
36
47
  req = self._build_request(
37
48
  method="GET",
38
49
  path="/team/members",
39
50
  base_url=base_url,
40
51
  url_variables=url_variables,
41
- request=None,
52
+ request=request,
42
53
  request_body_required=False,
43
54
  request_has_path_params=False,
44
55
  request_has_query_params=True,
@@ -59,6 +70,7 @@ class TeamsMembers(BaseSDK):
59
70
 
60
71
  http_res = self.do_request(
61
72
  hook_ctx=HookContext(
73
+ config=self.sdk_configuration,
62
74
  base_url=base_url or "",
63
75
  operation_id="get-team-members",
64
76
  oauth2_scopes=[],
@@ -71,8 +83,31 @@ class TeamsMembers(BaseSDK):
71
83
  retry_config=retry_config,
72
84
  )
73
85
 
86
+ def next_func() -> Optional[models.GetTeamMembersResponse]:
87
+ body = utils.unmarshal_json(http_res.text, Union[Dict[Any, Any], List[Any]])
88
+ page = request.page_number if not request.page_number is None else 1
89
+ next_page = page + 1
90
+
91
+ if not http_res.text:
92
+ return None
93
+ results = JSONPath("$.data").parse(body)
94
+ if len(results) == 0 or len(results[0]) == 0:
95
+ return None
96
+ limit = request.page_size if not request.page_size is None else 20
97
+ if len(results[0]) < limit:
98
+ return None
99
+
100
+ return self.list(
101
+ page_size=page_size,
102
+ page_number=next_page,
103
+ retries=retries,
104
+ )
105
+
74
106
  if utils.match_response(http_res, "200", "application/vnd.api+json"):
75
- return utils.unmarshal_json(http_res.text, models.TeamMembers)
107
+ return models.GetTeamMembersResponse(
108
+ result=utils.unmarshal_json(http_res.text, models.TeamMembers),
109
+ next=next_func,
110
+ )
76
111
  if utils.match_response(http_res, "4XX", "*"):
77
112
  http_res_text = utils.stream_to_text(http_res)
78
113
  raise models.APIError(
@@ -96,13 +131,17 @@ class TeamsMembers(BaseSDK):
96
131
  async def list_async(
97
132
  self,
98
133
  *,
134
+ page_size: Optional[int] = 20,
135
+ page_number: Optional[int] = 1,
99
136
  retries: OptionalNullable[utils.RetryConfig] = UNSET,
100
137
  server_url: Optional[str] = None,
101
138
  timeout_ms: Optional[int] = None,
102
139
  http_headers: Optional[Mapping[str, str]] = None,
103
- ) -> models.TeamMembers:
140
+ ) -> Optional[models.GetTeamMembersResponse]:
104
141
  r"""List all Team Members
105
142
 
143
+ :param page_size: Number of items to return per page
144
+ :param page_number: Page number to return (starts at 1)
106
145
  :param retries: Override the default retry configuration for this method
107
146
  :param server_url: Override the default server URL for this method
108
147
  :param timeout_ms: Override the default request timeout configuration for this method in milliseconds
@@ -117,12 +156,18 @@ class TeamsMembers(BaseSDK):
117
156
  base_url = server_url
118
157
  else:
119
158
  base_url = self._get_url(base_url, url_variables)
159
+
160
+ request = models.GetTeamMembersRequest(
161
+ page_size=page_size,
162
+ page_number=page_number,
163
+ )
164
+
120
165
  req = self._build_request_async(
121
166
  method="GET",
122
167
  path="/team/members",
123
168
  base_url=base_url,
124
169
  url_variables=url_variables,
125
- request=None,
170
+ request=request,
126
171
  request_body_required=False,
127
172
  request_has_path_params=False,
128
173
  request_has_query_params=True,
@@ -143,6 +188,7 @@ class TeamsMembers(BaseSDK):
143
188
 
144
189
  http_res = await self.do_request_async(
145
190
  hook_ctx=HookContext(
191
+ config=self.sdk_configuration,
146
192
  base_url=base_url or "",
147
193
  operation_id="get-team-members",
148
194
  oauth2_scopes=[],
@@ -155,8 +201,31 @@ class TeamsMembers(BaseSDK):
155
201
  retry_config=retry_config,
156
202
  )
157
203
 
204
+ def next_func() -> Optional[models.GetTeamMembersResponse]:
205
+ body = utils.unmarshal_json(http_res.text, Union[Dict[Any, Any], List[Any]])
206
+ page = request.page_number if not request.page_number is None else 1
207
+ next_page = page + 1
208
+
209
+ if not http_res.text:
210
+ return None
211
+ results = JSONPath("$.data").parse(body)
212
+ if len(results) == 0 or len(results[0]) == 0:
213
+ return None
214
+ limit = request.page_size if not request.page_size is None else 20
215
+ if len(results[0]) < limit:
216
+ return None
217
+
218
+ return self.list(
219
+ page_size=page_size,
220
+ page_number=next_page,
221
+ retries=retries,
222
+ )
223
+
158
224
  if utils.match_response(http_res, "200", "application/vnd.api+json"):
159
- return utils.unmarshal_json(http_res.text, models.TeamMembers)
225
+ return models.GetTeamMembersResponse(
226
+ result=utils.unmarshal_json(http_res.text, models.TeamMembers),
227
+ next=next_func,
228
+ )
160
229
  if utils.match_response(http_res, "4XX", "*"):
161
230
  http_res_text = await utils.stream_to_text_async(http_res)
162
231
  raise models.APIError(
@@ -244,6 +313,7 @@ class TeamsMembers(BaseSDK):
244
313
 
245
314
  http_res = self.do_request(
246
315
  hook_ctx=HookContext(
316
+ config=self.sdk_configuration,
247
317
  base_url=base_url or "",
248
318
  operation_id="post-team-members",
249
319
  oauth2_scopes=[],
@@ -349,6 +419,7 @@ class TeamsMembers(BaseSDK):
349
419
 
350
420
  http_res = await self.do_request_async(
351
421
  hook_ctx=HookContext(
422
+ config=self.sdk_configuration,
352
423
  base_url=base_url or "",
353
424
  operation_id="post-team-members",
354
425
  oauth2_scopes=[],
@@ -444,6 +515,7 @@ class TeamsMembers(BaseSDK):
444
515
 
445
516
  http_res = self.do_request(
446
517
  hook_ctx=HookContext(
518
+ config=self.sdk_configuration,
447
519
  base_url=base_url or "",
448
520
  operation_id="destroy-team-member",
449
521
  oauth2_scopes=[],
@@ -539,6 +611,7 @@ class TeamsMembers(BaseSDK):
539
611
 
540
612
  http_res = await self.do_request_async(
541
613
  hook_ctx=HookContext(
614
+ config=self.sdk_configuration,
542
615
  base_url=base_url or "",
543
616
  operation_id="destroy-team-member",
544
617
  oauth2_scopes=[],
@@ -14,8 +14,8 @@ class TrafficSDK(BaseSDK):
14
14
  *,
15
15
  filter_date_gte: str,
16
16
  filter_date_lte: str,
17
- filter_server: Optional[int] = None,
18
- filter_project: Optional[int] = None,
17
+ filter_server: Optional[str] = None,
18
+ filter_project: Optional[str] = None,
19
19
  retries: OptionalNullable[utils.RetryConfig] = UNSET,
20
20
  server_url: Optional[str] = None,
21
21
  timeout_ms: Optional[int] = None,
@@ -25,8 +25,8 @@ class TrafficSDK(BaseSDK):
25
25
 
26
26
  :param filter_date_gte: The start timestamp to retrieve the traffic. You must provide in ISO8601 format. Example: filter[date][gte]=2024-04-01T00:00:00Z
27
27
  :param filter_date_lte: The end timestamp to retrieve the traffic. You must provide in ISO8601 format. Example: filter[date][gte]=2024-04-31T23:59:59Z
28
- :param filter_server:
29
- :param filter_project:
28
+ :param filter_server: The server id to filter by
29
+ :param filter_project: The project id to filter by
30
30
  :param retries: Override the default retry configuration for this method
31
31
  :param server_url: Override the default server URL for this method
32
32
  :param timeout_ms: Override the default request timeout configuration for this method in milliseconds
@@ -75,6 +75,7 @@ class TrafficSDK(BaseSDK):
75
75
 
76
76
  http_res = self.do_request(
77
77
  hook_ctx=HookContext(
78
+ config=self.sdk_configuration,
78
79
  base_url=base_url or "",
79
80
  operation_id="get-traffic-consumption",
80
81
  oauth2_scopes=[],
@@ -114,8 +115,8 @@ class TrafficSDK(BaseSDK):
114
115
  *,
115
116
  filter_date_gte: str,
116
117
  filter_date_lte: str,
117
- filter_server: Optional[int] = None,
118
- filter_project: Optional[int] = None,
118
+ filter_server: Optional[str] = None,
119
+ filter_project: Optional[str] = None,
119
120
  retries: OptionalNullable[utils.RetryConfig] = UNSET,
120
121
  server_url: Optional[str] = None,
121
122
  timeout_ms: Optional[int] = None,
@@ -125,8 +126,8 @@ class TrafficSDK(BaseSDK):
125
126
 
126
127
  :param filter_date_gte: The start timestamp to retrieve the traffic. You must provide in ISO8601 format. Example: filter[date][gte]=2024-04-01T00:00:00Z
127
128
  :param filter_date_lte: The end timestamp to retrieve the traffic. You must provide in ISO8601 format. Example: filter[date][gte]=2024-04-31T23:59:59Z
128
- :param filter_server:
129
- :param filter_project:
129
+ :param filter_server: The server id to filter by
130
+ :param filter_project: The project id to filter by
130
131
  :param retries: Override the default retry configuration for this method
131
132
  :param server_url: Override the default server URL for this method
132
133
  :param timeout_ms: Override the default request timeout configuration for this method in milliseconds
@@ -175,6 +176,7 @@ class TrafficSDK(BaseSDK):
175
176
 
176
177
  http_res = await self.do_request_async(
177
178
  hook_ctx=HookContext(
179
+ config=self.sdk_configuration,
178
180
  base_url=base_url or "",
179
181
  operation_id="get-traffic-consumption",
180
182
  oauth2_scopes=[],
@@ -266,6 +268,7 @@ class TrafficSDK(BaseSDK):
266
268
 
267
269
  http_res = self.do_request(
268
270
  hook_ctx=HookContext(
271
+ config=self.sdk_configuration,
269
272
  base_url=base_url or "",
270
273
  operation_id="get-traffic-quota",
271
274
  oauth2_scopes=[],
@@ -361,6 +364,7 @@ class TrafficSDK(BaseSDK):
361
364
 
362
365
  http_res = await self.do_request_async(
363
366
  hook_ctx=HookContext(
367
+ config=self.sdk_configuration,
364
368
  base_url=base_url or "",
365
369
  operation_id="get-traffic-quota",
366
370
  oauth2_scopes=[],