python3-core-api-client 4.0__py3-none-any.whl → 6.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.
Files changed (55) hide show
  1. cyberfusion/CoreApiClient/connector.py +35 -0
  2. cyberfusion/CoreApiClient/http.py +18 -10
  3. cyberfusion/CoreApiClient/models.py +284 -11
  4. cyberfusion/CoreApiClient/resources/basic_authentication_realms.py +8 -14
  5. cyberfusion/CoreApiClient/resources/borg_archives.py +9 -15
  6. cyberfusion/CoreApiClient/resources/borg_repositories.py +12 -16
  7. cyberfusion/CoreApiClient/resources/certificate_managers.py +9 -15
  8. cyberfusion/CoreApiClient/resources/certificates.py +6 -12
  9. cyberfusion/CoreApiClient/resources/clusters.py +142 -256
  10. cyberfusion/CoreApiClient/resources/cmses.py +20 -26
  11. cyberfusion/CoreApiClient/resources/crons.py +7 -13
  12. cyberfusion/CoreApiClient/resources/custom_config_snippets.py +8 -14
  13. cyberfusion/CoreApiClient/resources/custom_configs.py +7 -13
  14. cyberfusion/CoreApiClient/resources/customers.py +8 -14
  15. cyberfusion/CoreApiClient/resources/daemons.py +10 -18
  16. cyberfusion/CoreApiClient/resources/database_user_grants.py +6 -12
  17. cyberfusion/CoreApiClient/resources/database_users.py +7 -13
  18. cyberfusion/CoreApiClient/resources/databases.py +10 -16
  19. cyberfusion/CoreApiClient/resources/domain_routers.py +4 -10
  20. cyberfusion/CoreApiClient/resources/firewall_groups.py +7 -13
  21. cyberfusion/CoreApiClient/resources/firewall_rules.py +6 -12
  22. cyberfusion/CoreApiClient/resources/fpm_pools.py +12 -18
  23. cyberfusion/CoreApiClient/resources/ftp_users.py +8 -14
  24. cyberfusion/CoreApiClient/resources/haproxy_listens.py +6 -12
  25. cyberfusion/CoreApiClient/resources/haproxy_listens_to_nodes.py +7 -13
  26. cyberfusion/CoreApiClient/resources/health.py +1 -1
  27. cyberfusion/CoreApiClient/resources/hosts_entries.py +6 -12
  28. cyberfusion/CoreApiClient/resources/htpasswd_files.py +6 -12
  29. cyberfusion/CoreApiClient/resources/htpasswd_users.py +7 -13
  30. cyberfusion/CoreApiClient/resources/login.py +2 -2
  31. cyberfusion/CoreApiClient/resources/logs.py +6 -18
  32. cyberfusion/CoreApiClient/resources/mail_accounts.py +8 -14
  33. cyberfusion/CoreApiClient/resources/mail_aliases.py +7 -13
  34. cyberfusion/CoreApiClient/resources/mail_domains.py +7 -13
  35. cyberfusion/CoreApiClient/resources/mail_hostnames.py +7 -13
  36. cyberfusion/CoreApiClient/resources/malwares.py +3 -9
  37. cyberfusion/CoreApiClient/resources/mariadb_encryption_keys.py +6 -12
  38. cyberfusion/CoreApiClient/resources/n8n_instances.py +7 -13
  39. cyberfusion/CoreApiClient/resources/node_add_ons.py +7 -13
  40. cyberfusion/CoreApiClient/resources/nodes.py +10 -16
  41. cyberfusion/CoreApiClient/resources/passenger_apps.py +8 -14
  42. cyberfusion/CoreApiClient/resources/redis_instances.py +7 -13
  43. cyberfusion/CoreApiClient/resources/regions.py +3 -9
  44. cyberfusion/CoreApiClient/resources/root_ssh_keys.py +7 -13
  45. cyberfusion/CoreApiClient/resources/security_txt_policies.py +8 -14
  46. cyberfusion/CoreApiClient/resources/ssh_keys.py +7 -13
  47. cyberfusion/CoreApiClient/resources/task_collections.py +2 -2
  48. cyberfusion/CoreApiClient/resources/unix_users.py +9 -15
  49. cyberfusion/CoreApiClient/resources/url_redirects.py +7 -13
  50. cyberfusion/CoreApiClient/resources/virtual_hosts.py +17 -25
  51. {python3_core_api_client-4.0.dist-info → python3_core_api_client-6.0.dist-info}/METADATA +3 -3
  52. python3_core_api_client-6.0.dist-info/RECORD +60 -0
  53. python3_core_api_client-4.0.dist-info/RECORD +0 -60
  54. {python3_core_api_client-4.0.dist-info → python3_core_api_client-6.0.dist-info}/WHEEL +0 -0
  55. {python3_core_api_client-4.0.dist-info → python3_core_api_client-6.0.dist-info}/top_level.txt +0 -0
@@ -18,25 +18,19 @@ class Cmses(Resource):
18
18
  query_parameters={},
19
19
  )
20
20
 
21
- return DtoResponse.from_response(local_response, models.CmsResource)
21
+ return DtoResponse.from_responses(local_response, models.CmsResource)
22
22
 
23
23
  def list_cmses(
24
24
  self,
25
25
  *,
26
- page: int = 1,
27
- per_page: int = 50,
28
26
  include_filters: models.CmsesSearchRequest | None = None,
29
27
  includes: list[str] | None = None,
30
28
  ) -> DtoResponse[list[models.CmsResource]]:
31
- local_response = self.api_connector.send_or_fail(
29
+ local_responses = self.api_connector.send_or_fail_with_auto_pagination(
32
30
  "GET",
33
31
  "/api/v1/cmses",
34
32
  data=None,
35
- query_parameters={
36
- "page": page,
37
- "per_page": per_page,
38
- }
39
- | (
33
+ query_parameters=(
40
34
  include_filters.model_dump(exclude_unset=True)
41
35
  if include_filters
42
36
  else {}
@@ -44,7 +38,7 @@ class Cmses(Resource):
44
38
  | construct_includes_query_parameter(includes),
45
39
  )
46
40
 
47
- return DtoResponse.from_response(local_response, models.CmsResource)
41
+ return DtoResponse.from_responses(local_responses, models.CmsResource)
48
42
 
49
43
  def read_cms(
50
44
  self,
@@ -59,7 +53,7 @@ class Cmses(Resource):
59
53
  query_parameters=construct_includes_query_parameter(includes),
60
54
  )
61
55
 
62
- return DtoResponse.from_response(local_response, models.CmsResource)
56
+ return DtoResponse.from_responses(local_response, models.CmsResource)
63
57
 
64
58
  def delete_cms(
65
59
  self,
@@ -70,7 +64,7 @@ class Cmses(Resource):
70
64
  "DELETE", f"/api/v1/cmses/{id_}", data=None, query_parameters={}
71
65
  )
72
66
 
73
- return DtoResponse.from_response(local_response, models.DetailMessage)
67
+ return DtoResponse.from_responses(local_response, models.DetailMessage)
74
68
 
75
69
  def install_wordpress(
76
70
  self,
@@ -88,7 +82,7 @@ class Cmses(Resource):
88
82
  },
89
83
  )
90
84
 
91
- return DtoResponse.from_response(local_response, models.TaskCollectionResource)
85
+ return DtoResponse.from_responses(local_response, models.TaskCollectionResource)
92
86
 
93
87
  def install_nextcloud(
94
88
  self,
@@ -106,7 +100,7 @@ class Cmses(Resource):
106
100
  },
107
101
  )
108
102
 
109
- return DtoResponse.from_response(local_response, models.TaskCollectionResource)
103
+ return DtoResponse.from_responses(local_response, models.TaskCollectionResource)
110
104
 
111
105
  def get_cms_one_time_login(
112
106
  self,
@@ -120,7 +114,7 @@ class Cmses(Resource):
120
114
  query_parameters={},
121
115
  )
122
116
 
123
- return DtoResponse.from_response(local_response, models.CmsOneTimeLogin)
117
+ return DtoResponse.from_responses(local_response, models.CmsOneTimeLogin)
124
118
 
125
119
  def get_cms_plugins(
126
120
  self,
@@ -131,7 +125,7 @@ class Cmses(Resource):
131
125
  "GET", f"/api/v1/cmses/{id_}/plugins", data=None, query_parameters={}
132
126
  )
133
127
 
134
- return DtoResponse.from_response(local_response, models.CmsPlugin)
128
+ return DtoResponse.from_responses(local_response, models.CmsPlugin)
135
129
 
136
130
  def update_cms_option(
137
131
  self,
@@ -147,7 +141,7 @@ class Cmses(Resource):
147
141
  query_parameters={},
148
142
  )
149
143
 
150
- return DtoResponse.from_response(local_response, models.CmsOption)
144
+ return DtoResponse.from_responses(local_response, models.CmsOption)
151
145
 
152
146
  def update_cms_configuration_constant(
153
147
  self,
@@ -163,7 +157,7 @@ class Cmses(Resource):
163
157
  query_parameters={},
164
158
  )
165
159
 
166
- return DtoResponse.from_response(
160
+ return DtoResponse.from_responses(
167
161
  local_response, models.CmsConfigurationConstant
168
162
  )
169
163
 
@@ -181,7 +175,7 @@ class Cmses(Resource):
181
175
  query_parameters={},
182
176
  )
183
177
 
184
- return DtoResponse.from_response(local_response, models.DetailMessage)
178
+ return DtoResponse.from_responses(local_response, models.DetailMessage)
185
179
 
186
180
  def update_cms_core(
187
181
  self,
@@ -198,7 +192,7 @@ class Cmses(Resource):
198
192
  },
199
193
  )
200
194
 
201
- return DtoResponse.from_response(local_response, models.TaskCollectionResource)
195
+ return DtoResponse.from_responses(local_response, models.TaskCollectionResource)
202
196
 
203
197
  def update_cms_plugin(
204
198
  self,
@@ -216,7 +210,7 @@ class Cmses(Resource):
216
210
  },
217
211
  )
218
212
 
219
- return DtoResponse.from_response(local_response, models.TaskCollectionResource)
213
+ return DtoResponse.from_responses(local_response, models.TaskCollectionResource)
220
214
 
221
215
  def search_replace_in_cms_database(
222
216
  self,
@@ -237,7 +231,7 @@ class Cmses(Resource):
237
231
  },
238
232
  )
239
233
 
240
- return DtoResponse.from_response(local_response, models.TaskCollectionResource)
234
+ return DtoResponse.from_responses(local_response, models.TaskCollectionResource)
241
235
 
242
236
  def enable_cms_plugin(
243
237
  self,
@@ -252,7 +246,7 @@ class Cmses(Resource):
252
246
  query_parameters={},
253
247
  )
254
248
 
255
- return DtoResponse.from_response(local_response, models.DetailMessage)
249
+ return DtoResponse.from_responses(local_response, models.DetailMessage)
256
250
 
257
251
  def disable_cms_plugin(
258
252
  self,
@@ -267,7 +261,7 @@ class Cmses(Resource):
267
261
  query_parameters={},
268
262
  )
269
263
 
270
- return DtoResponse.from_response(local_response, models.DetailMessage)
264
+ return DtoResponse.from_responses(local_response, models.DetailMessage)
271
265
 
272
266
  def regenerate_cms_salts(
273
267
  self,
@@ -281,7 +275,7 @@ class Cmses(Resource):
281
275
  query_parameters={},
282
276
  )
283
277
 
284
- return DtoResponse.from_response(local_response, models.DetailMessage)
278
+ return DtoResponse.from_responses(local_response, models.DetailMessage)
285
279
 
286
280
  def install_cms_theme(
287
281
  self,
@@ -299,4 +293,4 @@ class Cmses(Resource):
299
293
  query_parameters={},
300
294
  )
301
295
 
302
- return DtoResponse.from_response(local_response, models.DetailMessage)
296
+ return DtoResponse.from_responses(local_response, models.DetailMessage)
@@ -17,25 +17,19 @@ class Crons(Resource):
17
17
  query_parameters={},
18
18
  )
19
19
 
20
- return DtoResponse.from_response(local_response, models.CronResource)
20
+ return DtoResponse.from_responses(local_response, models.CronResource)
21
21
 
22
22
  def list_crons(
23
23
  self,
24
24
  *,
25
- page: int = 1,
26
- per_page: int = 50,
27
25
  include_filters: models.CronsSearchRequest | None = None,
28
26
  includes: list[str] | None = None,
29
27
  ) -> DtoResponse[list[models.CronResource]]:
30
- local_response = self.api_connector.send_or_fail(
28
+ local_responses = self.api_connector.send_or_fail_with_auto_pagination(
31
29
  "GET",
32
30
  "/api/v1/crons",
33
31
  data=None,
34
- query_parameters={
35
- "page": page,
36
- "per_page": per_page,
37
- }
38
- | (
32
+ query_parameters=(
39
33
  include_filters.model_dump(exclude_unset=True)
40
34
  if include_filters
41
35
  else {}
@@ -43,7 +37,7 @@ class Crons(Resource):
43
37
  | construct_includes_query_parameter(includes),
44
38
  )
45
39
 
46
- return DtoResponse.from_response(local_response, models.CronResource)
40
+ return DtoResponse.from_responses(local_responses, models.CronResource)
47
41
 
48
42
  def read_cron(
49
43
  self,
@@ -58,7 +52,7 @@ class Crons(Resource):
58
52
  query_parameters=construct_includes_query_parameter(includes),
59
53
  )
60
54
 
61
- return DtoResponse.from_response(local_response, models.CronResource)
55
+ return DtoResponse.from_responses(local_response, models.CronResource)
62
56
 
63
57
  def update_cron(
64
58
  self,
@@ -73,7 +67,7 @@ class Crons(Resource):
73
67
  query_parameters={},
74
68
  )
75
69
 
76
- return DtoResponse.from_response(local_response, models.CronResource)
70
+ return DtoResponse.from_responses(local_response, models.CronResource)
77
71
 
78
72
  def delete_cron(
79
73
  self,
@@ -84,4 +78,4 @@ class Crons(Resource):
84
78
  "DELETE", f"/api/v1/crons/{id_}", data=None, query_parameters={}
85
79
  )
86
80
 
87
- return DtoResponse.from_response(local_response, models.DetailMessage)
81
+ return DtoResponse.from_responses(local_response, models.DetailMessage)
@@ -21,27 +21,21 @@ class CustomConfigSnippets(Resource):
21
21
  query_parameters={},
22
22
  )
23
23
 
24
- return DtoResponse.from_response(
24
+ return DtoResponse.from_responses(
25
25
  local_response, models.CustomConfigSnippetResource
26
26
  )
27
27
 
28
28
  def list_custom_config_snippets(
29
29
  self,
30
30
  *,
31
- page: int = 1,
32
- per_page: int = 50,
33
31
  include_filters: models.CustomConfigSnippetsSearchRequest | None = None,
34
32
  includes: list[str] | None = None,
35
33
  ) -> DtoResponse[list[models.CustomConfigSnippetResource]]:
36
- local_response = self.api_connector.send_or_fail(
34
+ local_responses = self.api_connector.send_or_fail_with_auto_pagination(
37
35
  "GET",
38
36
  "/api/v1/custom-config-snippets",
39
37
  data=None,
40
- query_parameters={
41
- "page": page,
42
- "per_page": per_page,
43
- }
44
- | (
38
+ query_parameters=(
45
39
  include_filters.model_dump(exclude_unset=True)
46
40
  if include_filters
47
41
  else {}
@@ -49,8 +43,8 @@ class CustomConfigSnippets(Resource):
49
43
  | construct_includes_query_parameter(includes),
50
44
  )
51
45
 
52
- return DtoResponse.from_response(
53
- local_response, models.CustomConfigSnippetResource
46
+ return DtoResponse.from_responses(
47
+ local_responses, models.CustomConfigSnippetResource
54
48
  )
55
49
 
56
50
  def read_custom_config_snippet(
@@ -66,7 +60,7 @@ class CustomConfigSnippets(Resource):
66
60
  query_parameters=construct_includes_query_parameter(includes),
67
61
  )
68
62
 
69
- return DtoResponse.from_response(
63
+ return DtoResponse.from_responses(
70
64
  local_response, models.CustomConfigSnippetResource
71
65
  )
72
66
 
@@ -83,7 +77,7 @@ class CustomConfigSnippets(Resource):
83
77
  query_parameters={},
84
78
  )
85
79
 
86
- return DtoResponse.from_response(
80
+ return DtoResponse.from_responses(
87
81
  local_response, models.CustomConfigSnippetResource
88
82
  )
89
83
 
@@ -99,4 +93,4 @@ class CustomConfigSnippets(Resource):
99
93
  query_parameters={},
100
94
  )
101
95
 
102
- return DtoResponse.from_response(local_response, models.DetailMessage)
96
+ return DtoResponse.from_responses(local_response, models.DetailMessage)
@@ -17,25 +17,19 @@ class CustomConfigs(Resource):
17
17
  query_parameters={},
18
18
  )
19
19
 
20
- return DtoResponse.from_response(local_response, models.CustomConfigResource)
20
+ return DtoResponse.from_responses(local_response, models.CustomConfigResource)
21
21
 
22
22
  def list_custom_configs(
23
23
  self,
24
24
  *,
25
- page: int = 1,
26
- per_page: int = 50,
27
25
  include_filters: models.CustomConfigsSearchRequest | None = None,
28
26
  includes: list[str] | None = None,
29
27
  ) -> DtoResponse[list[models.CustomConfigResource]]:
30
- local_response = self.api_connector.send_or_fail(
28
+ local_responses = self.api_connector.send_or_fail_with_auto_pagination(
31
29
  "GET",
32
30
  "/api/v1/custom-configs",
33
31
  data=None,
34
- query_parameters={
35
- "page": page,
36
- "per_page": per_page,
37
- }
38
- | (
32
+ query_parameters=(
39
33
  include_filters.model_dump(exclude_unset=True)
40
34
  if include_filters
41
35
  else {}
@@ -43,7 +37,7 @@ class CustomConfigs(Resource):
43
37
  | construct_includes_query_parameter(includes),
44
38
  )
45
39
 
46
- return DtoResponse.from_response(local_response, models.CustomConfigResource)
40
+ return DtoResponse.from_responses(local_responses, models.CustomConfigResource)
47
41
 
48
42
  def read_custom_config(
49
43
  self,
@@ -58,7 +52,7 @@ class CustomConfigs(Resource):
58
52
  query_parameters=construct_includes_query_parameter(includes),
59
53
  )
60
54
 
61
- return DtoResponse.from_response(local_response, models.CustomConfigResource)
55
+ return DtoResponse.from_responses(local_response, models.CustomConfigResource)
62
56
 
63
57
  def update_custom_config(
64
58
  self,
@@ -73,7 +67,7 @@ class CustomConfigs(Resource):
73
67
  query_parameters={},
74
68
  )
75
69
 
76
- return DtoResponse.from_response(local_response, models.CustomConfigResource)
70
+ return DtoResponse.from_responses(local_response, models.CustomConfigResource)
77
71
 
78
72
  def delete_custom_config(
79
73
  self,
@@ -87,4 +81,4 @@ class CustomConfigs(Resource):
87
81
  query_parameters={},
88
82
  )
89
83
 
90
- return DtoResponse.from_response(local_response, models.DetailMessage)
84
+ return DtoResponse.from_responses(local_response, models.DetailMessage)
@@ -10,20 +10,14 @@ class Customers(Resource):
10
10
  def list_customers(
11
11
  self,
12
12
  *,
13
- page: int = 1,
14
- per_page: int = 50,
15
13
  include_filters: models.CustomersSearchRequest | None = None,
16
14
  includes: list[str] | None = None,
17
15
  ) -> DtoResponse[list[models.CustomerResource]]:
18
- local_response = self.api_connector.send_or_fail(
16
+ local_responses = self.api_connector.send_or_fail_with_auto_pagination(
19
17
  "GET",
20
18
  "/api/v1/customers",
21
19
  data=None,
22
- query_parameters={
23
- "page": page,
24
- "per_page": per_page,
25
- }
26
- | (
20
+ query_parameters=(
27
21
  include_filters.model_dump(exclude_unset=True)
28
22
  if include_filters
29
23
  else {}
@@ -31,7 +25,7 @@ class Customers(Resource):
31
25
  | construct_includes_query_parameter(includes),
32
26
  )
33
27
 
34
- return DtoResponse.from_response(local_response, models.CustomerResource)
28
+ return DtoResponse.from_responses(local_responses, models.CustomerResource)
35
29
 
36
30
  def read_customer(
37
31
  self,
@@ -46,7 +40,7 @@ class Customers(Resource):
46
40
  query_parameters=construct_includes_query_parameter(includes),
47
41
  )
48
42
 
49
- return DtoResponse.from_response(local_response, models.CustomerResource)
43
+ return DtoResponse.from_responses(local_response, models.CustomerResource)
50
44
 
51
45
  def list_ip_addresses_for_customer(
52
46
  self,
@@ -60,7 +54,7 @@ class Customers(Resource):
60
54
  query_parameters={},
61
55
  )
62
56
 
63
- return DtoResponse.from_response(local_response, models.CustomerIpAddresses)
57
+ return DtoResponse.from_responses(local_response, models.CustomerIpAddresses)
64
58
 
65
59
  def create_ip_address_for_customer(
66
60
  self,
@@ -78,7 +72,7 @@ class Customers(Resource):
78
72
  },
79
73
  )
80
74
 
81
- return DtoResponse.from_response(local_response, models.TaskCollectionResource)
75
+ return DtoResponse.from_responses(local_response, models.TaskCollectionResource)
82
76
 
83
77
  def delete_ip_address_for_customer(
84
78
  self,
@@ -96,7 +90,7 @@ class Customers(Resource):
96
90
  },
97
91
  )
98
92
 
99
- return DtoResponse.from_response(local_response, models.TaskCollectionResource)
93
+ return DtoResponse.from_responses(local_response, models.TaskCollectionResource)
100
94
 
101
95
  def get_ip_addresses_products_for_customers(
102
96
  self,
@@ -108,4 +102,4 @@ class Customers(Resource):
108
102
  query_parameters={},
109
103
  )
110
104
 
111
- return DtoResponse.from_response(local_response, models.IpAddressProduct)
105
+ return DtoResponse.from_responses(local_response, models.IpAddressProduct)
@@ -18,25 +18,19 @@ class Daemons(Resource):
18
18
  query_parameters={},
19
19
  )
20
20
 
21
- return DtoResponse.from_response(local_response, models.DaemonResource)
21
+ return DtoResponse.from_responses(local_response, models.DaemonResource)
22
22
 
23
23
  def list_daemons(
24
24
  self,
25
25
  *,
26
- page: int = 1,
27
- per_page: int = 50,
28
26
  include_filters: models.DaemonsSearchRequest | None = None,
29
27
  includes: list[str] | None = None,
30
28
  ) -> DtoResponse[list[models.DaemonResource]]:
31
- local_response = self.api_connector.send_or_fail(
29
+ local_responses = self.api_connector.send_or_fail_with_auto_pagination(
32
30
  "GET",
33
31
  "/api/v1/daemons",
34
32
  data=None,
35
- query_parameters={
36
- "page": page,
37
- "per_page": per_page,
38
- }
39
- | (
33
+ query_parameters=(
40
34
  include_filters.model_dump(exclude_unset=True)
41
35
  if include_filters
42
36
  else {}
@@ -44,7 +38,7 @@ class Daemons(Resource):
44
38
  | construct_includes_query_parameter(includes),
45
39
  )
46
40
 
47
- return DtoResponse.from_response(local_response, models.DaemonResource)
41
+ return DtoResponse.from_responses(local_responses, models.DaemonResource)
48
42
 
49
43
  def read_daemon(
50
44
  self,
@@ -59,7 +53,7 @@ class Daemons(Resource):
59
53
  query_parameters=construct_includes_query_parameter(includes),
60
54
  )
61
55
 
62
- return DtoResponse.from_response(local_response, models.DaemonResource)
56
+ return DtoResponse.from_responses(local_response, models.DaemonResource)
63
57
 
64
58
  def update_daemon(
65
59
  self,
@@ -74,7 +68,7 @@ class Daemons(Resource):
74
68
  query_parameters={},
75
69
  )
76
70
 
77
- return DtoResponse.from_response(local_response, models.DaemonResource)
71
+ return DtoResponse.from_responses(local_response, models.DaemonResource)
78
72
 
79
73
  def delete_daemon(
80
74
  self,
@@ -85,7 +79,7 @@ class Daemons(Resource):
85
79
  "DELETE", f"/api/v1/daemons/{id_}", data=None, query_parameters={}
86
80
  )
87
81
 
88
- return DtoResponse.from_response(local_response, models.DetailMessage)
82
+ return DtoResponse.from_responses(local_response, models.DetailMessage)
89
83
 
90
84
  def restart_daemon(
91
85
  self,
@@ -102,7 +96,7 @@ class Daemons(Resource):
102
96
  },
103
97
  )
104
98
 
105
- return DtoResponse.from_response(local_response, models.TaskCollectionResource)
99
+ return DtoResponse.from_responses(local_response, models.TaskCollectionResource)
106
100
 
107
101
  def list_logs(
108
102
  self,
@@ -110,16 +104,14 @@ class Daemons(Resource):
110
104
  daemon_id: int,
111
105
  timestamp: Optional[str] = None,
112
106
  sort: Optional[str] = None,
113
- page: int = 1,
114
107
  ) -> DtoResponse[list[models.DaemonLogResource]]:
115
- local_response = self.api_connector.send_or_fail(
108
+ local_responses = self.api_connector.send_or_fail_with_auto_pagination(
116
109
  "GET",
117
110
  f"/api/v1/daemons/{daemon_id}/logs",
118
111
  data=None,
119
112
  query_parameters={
120
113
  "timestamp": timestamp,
121
- "page": page,
122
114
  },
123
115
  )
124
116
 
125
- return DtoResponse.from_response(local_response, models.DaemonLogResource)
117
+ return DtoResponse.from_responses(local_responses, models.DaemonLogResource)
@@ -17,27 +17,21 @@ class DatabaseUserGrants(Resource):
17
17
  query_parameters={},
18
18
  )
19
19
 
20
- return DtoResponse.from_response(
20
+ return DtoResponse.from_responses(
21
21
  local_response, models.DatabaseUserGrantResource
22
22
  )
23
23
 
24
24
  def list_database_user_grants(
25
25
  self,
26
26
  *,
27
- page: int = 1,
28
- per_page: int = 50,
29
27
  include_filters: models.DatabaseUserGrantsSearchRequest | None = None,
30
28
  includes: list[str] | None = None,
31
29
  ) -> DtoResponse[list[models.DatabaseUserGrantResource]]:
32
- local_response = self.api_connector.send_or_fail(
30
+ local_responses = self.api_connector.send_or_fail_with_auto_pagination(
33
31
  "GET",
34
32
  "/api/v1/database-user-grants",
35
33
  data=None,
36
- query_parameters={
37
- "page": page,
38
- "per_page": per_page,
39
- }
40
- | (
34
+ query_parameters=(
41
35
  include_filters.model_dump(exclude_unset=True)
42
36
  if include_filters
43
37
  else {}
@@ -45,8 +39,8 @@ class DatabaseUserGrants(Resource):
45
39
  | construct_includes_query_parameter(includes),
46
40
  )
47
41
 
48
- return DtoResponse.from_response(
49
- local_response, models.DatabaseUserGrantResource
42
+ return DtoResponse.from_responses(
43
+ local_responses, models.DatabaseUserGrantResource
50
44
  )
51
45
 
52
46
  def delete_database_user_grant(
@@ -60,4 +54,4 @@ class DatabaseUserGrants(Resource):
60
54
  data=None,
61
55
  )
62
56
 
63
- return DtoResponse.from_response(local_response, models.DetailMessage)
57
+ return DtoResponse.from_responses(local_response, models.DetailMessage)
@@ -16,25 +16,19 @@ class DatabaseUsers(Resource):
16
16
  query_parameters={},
17
17
  )
18
18
 
19
- return DtoResponse.from_response(local_response, models.DatabaseUserResource)
19
+ return DtoResponse.from_responses(local_response, models.DatabaseUserResource)
20
20
 
21
21
  def list_database_users(
22
22
  self,
23
23
  *,
24
- page: int = 1,
25
- per_page: int = 50,
26
24
  include_filters: models.DatabaseUsersSearchRequest | None = None,
27
25
  includes: list[str] | None = None,
28
26
  ) -> DtoResponse[list[models.DatabaseUserResource]]:
29
- local_response = self.api_connector.send_or_fail(
27
+ local_responses = self.api_connector.send_or_fail_with_auto_pagination(
30
28
  "GET",
31
29
  "/api/v1/database-users",
32
30
  data=None,
33
- query_parameters={
34
- "page": page,
35
- "per_page": per_page,
36
- }
37
- | (
31
+ query_parameters=(
38
32
  include_filters.model_dump(exclude_unset=True)
39
33
  if include_filters
40
34
  else {}
@@ -42,7 +36,7 @@ class DatabaseUsers(Resource):
42
36
  | construct_includes_query_parameter(includes),
43
37
  )
44
38
 
45
- return DtoResponse.from_response(local_response, models.DatabaseUserResource)
39
+ return DtoResponse.from_responses(local_responses, models.DatabaseUserResource)
46
40
 
47
41
  def read_database_user(
48
42
  self,
@@ -57,7 +51,7 @@ class DatabaseUsers(Resource):
57
51
  query_parameters=construct_includes_query_parameter(includes),
58
52
  )
59
53
 
60
- return DtoResponse.from_response(local_response, models.DatabaseUserResource)
54
+ return DtoResponse.from_responses(local_response, models.DatabaseUserResource)
61
55
 
62
56
  def update_database_user(
63
57
  self,
@@ -72,7 +66,7 @@ class DatabaseUsers(Resource):
72
66
  query_parameters={},
73
67
  )
74
68
 
75
- return DtoResponse.from_response(local_response, models.DatabaseUserResource)
69
+ return DtoResponse.from_responses(local_response, models.DatabaseUserResource)
76
70
 
77
71
  def delete_database_user(
78
72
  self,
@@ -86,4 +80,4 @@ class DatabaseUsers(Resource):
86
80
  query_parameters={},
87
81
  )
88
82
 
89
- return DtoResponse.from_response(local_response, models.DetailMessage)
83
+ return DtoResponse.from_responses(local_response, models.DetailMessage)