gcore 0.4.0__py3-none-any.whl → 0.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.

Potentially problematic release.


This version of gcore might be problematic. Click here for more details.

Files changed (145) hide show
  1. gcore/_base_client.py +9 -2
  2. gcore/_client.py +9 -0
  3. gcore/_constants.py +2 -2
  4. gcore/_models.py +8 -5
  5. gcore/_version.py +1 -1
  6. gcore/pagination.py +192 -1
  7. gcore/resources/__init__.py +14 -0
  8. gcore/resources/cloud/__init__.py +14 -0
  9. gcore/resources/cloud/audit_logs.py +480 -0
  10. gcore/resources/cloud/baremetal/servers.py +2 -2
  11. gcore/resources/cloud/cloud.py +32 -0
  12. gcore/resources/cloud/file_shares/file_shares.py +64 -9
  13. gcore/resources/cloud/gpu_baremetal_clusters/gpu_baremetal_clusters.py +2 -2
  14. gcore/resources/cloud/inference/__init__.py +14 -0
  15. gcore/resources/cloud/inference/api_keys.py +621 -0
  16. gcore/resources/cloud/inference/deployments/deployments.py +66 -33
  17. gcore/resources/cloud/inference/deployments/logs.py +7 -7
  18. gcore/resources/cloud/inference/inference.py +37 -5
  19. gcore/resources/cloud/inference/models.py +16 -15
  20. gcore/resources/cloud/inference/registry_credentials.py +16 -16
  21. gcore/resources/cloud/inference/secrets.py +4 -5
  22. gcore/resources/cloud/instances/instances.py +2 -2
  23. gcore/resources/cloud/load_balancers/pools/members.py +22 -6
  24. gcore/resources/cloud/secrets.py +14 -224
  25. gcore/resources/cloud/tasks.py +30 -28
  26. gcore/resources/fastedge/__init__.py +103 -0
  27. gcore/resources/fastedge/apps/__init__.py +33 -0
  28. gcore/resources/fastedge/apps/apps.py +932 -0
  29. gcore/resources/fastedge/apps/logs.py +248 -0
  30. gcore/resources/fastedge/binaries.py +286 -0
  31. gcore/resources/fastedge/fastedge.py +327 -0
  32. gcore/resources/fastedge/kv_stores.py +523 -0
  33. gcore/resources/fastedge/secrets.py +687 -0
  34. gcore/resources/fastedge/statistics.py +347 -0
  35. gcore/resources/fastedge/templates.py +652 -0
  36. gcore/types/cloud/__init__.py +4 -28
  37. gcore/types/cloud/audit_log_entry.py +254 -0
  38. gcore/types/cloud/audit_log_list_params.py +158 -0
  39. gcore/types/cloud/baremetal/server_create_params.py +1 -1
  40. gcore/types/cloud/file_share_update_params.py +29 -3
  41. gcore/types/cloud/gpu_baremetal_cluster_create_params.py +1 -1
  42. gcore/types/cloud/inference/__init__.py +17 -8
  43. gcore/types/cloud/inference/api_key_create_params.py +21 -0
  44. gcore/types/cloud/inference/api_key_list_params.py +21 -0
  45. gcore/types/cloud/inference/api_key_update_params.py +16 -0
  46. gcore/types/cloud/inference/deployment_create_params.py +224 -7
  47. gcore/types/cloud/inference/deployment_update_params.py +24 -3
  48. gcore/types/cloud/inference/deployments/__init__.py +1 -0
  49. gcore/types/cloud/inference/{inference_log.py → deployments/inference_deployment_log.py} +3 -3
  50. gcore/types/cloud/inference/inference_api_key.py +24 -0
  51. gcore/types/cloud/inference/inference_api_key_create.py +27 -0
  52. gcore/types/cloud/inference/inference_deployment.py +266 -0
  53. gcore/types/cloud/inference/{inference_apikey_secret.py → inference_deployment_api_key.py} +2 -2
  54. gcore/types/cloud/inference/{mlcatalog_model_card.py → inference_model.py} +2 -2
  55. gcore/types/cloud/inference/{inference_registry_credential.py → inference_registry_credentials.py} +2 -2
  56. gcore/types/cloud/inference/{inference_registry_credential_full.py → inference_registry_credentials_create.py} +2 -2
  57. gcore/types/cloud/inference/inference_secret.py +10 -3
  58. gcore/types/cloud/inference/model_list_params.py +2 -4
  59. gcore/types/cloud/{container_probe.py → inference/probe.py} +9 -9
  60. gcore/types/cloud/{container_probe_config.py → inference/probe_config.py} +5 -5
  61. gcore/types/cloud/{container_probe_exec.py → inference/probe_exec.py} +3 -3
  62. gcore/types/cloud/{container_probe_http_get.py → inference/probe_http_get.py} +3 -3
  63. gcore/types/cloud/{container_probe_tcp_socket.py → inference/probe_tcp_socket.py} +3 -3
  64. gcore/types/cloud/inference/secret_create_params.py +10 -4
  65. gcore/types/cloud/inference/secret_replace_params.py +10 -4
  66. gcore/types/cloud/{region_capacity.py → inference_region_capacity.py} +10 -3
  67. gcore/types/cloud/{region_capacity_list.py → inference_region_capacity_list.py} +4 -4
  68. gcore/types/cloud/instance_create_params.py +1 -1
  69. gcore/types/cloud/load_balancer_create_params.py +14 -3
  70. gcore/types/cloud/load_balancers/pool_create_params.py +14 -3
  71. gcore/types/cloud/load_balancers/pool_update_params.py +14 -3
  72. gcore/types/cloud/load_balancers/pools/member_add_params.py +14 -3
  73. gcore/types/cloud/member.py +12 -4
  74. gcore/types/cloud/task_list_params.py +15 -14
  75. gcore/types/fastedge/__init__.py +48 -0
  76. gcore/types/fastedge/app.py +81 -0
  77. gcore/types/fastedge/app_create_params.py +56 -0
  78. gcore/types/fastedge/app_list_params.py +50 -0
  79. gcore/types/fastedge/app_param.py +56 -0
  80. gcore/types/fastedge/app_replace_params.py +17 -0
  81. gcore/types/fastedge/app_short.py +60 -0
  82. gcore/types/fastedge/app_update_params.py +56 -0
  83. gcore/types/fastedge/apps/__init__.py +6 -0
  84. gcore/types/fastedge/apps/log.py +28 -0
  85. gcore/types/fastedge/apps/log_list_params.py +37 -0
  86. gcore/types/fastedge/binary.py +40 -0
  87. gcore/types/fastedge/binary_list_response.py +12 -0
  88. gcore/types/fastedge/binary_short.py +32 -0
  89. gcore/types/fastedge/call_status.py +24 -0
  90. gcore/types/fastedge/client.py +57 -0
  91. gcore/types/fastedge/duration_stats.py +30 -0
  92. gcore/types/fastedge/kv_store.py +33 -0
  93. gcore/types/fastedge/kv_store_create_params.py +23 -0
  94. gcore/types/fastedge/kv_store_get_response.py +10 -0
  95. gcore/types/fastedge/kv_store_list_params.py +12 -0
  96. gcore/types/fastedge/kv_store_list_response.py +15 -0
  97. gcore/types/fastedge/kv_store_replace_params.py +23 -0
  98. gcore/types/fastedge/kv_store_short.py +19 -0
  99. gcore/types/fastedge/kv_store_stats.py +26 -0
  100. gcore/types/fastedge/secret.py +29 -0
  101. gcore/types/fastedge/secret_create_params.py +27 -0
  102. gcore/types/fastedge/secret_create_response.py +12 -0
  103. gcore/types/fastedge/secret_delete_params.py +12 -0
  104. gcore/types/fastedge/secret_list_params.py +15 -0
  105. gcore/types/{cloud → fastedge}/secret_list_response.py +2 -6
  106. gcore/types/fastedge/secret_replace_params.py +27 -0
  107. gcore/types/fastedge/secret_short.py +21 -0
  108. gcore/types/fastedge/secret_update_params.py +27 -0
  109. gcore/types/fastedge/statistic_get_call_series_params.py +28 -0
  110. gcore/types/fastedge/statistic_get_call_series_response.py +12 -0
  111. gcore/types/fastedge/statistic_get_duration_series_params.py +28 -0
  112. gcore/types/fastedge/statistic_get_duration_series_response.py +12 -0
  113. gcore/types/fastedge/template.py +31 -0
  114. gcore/types/fastedge/template_create_params.py +30 -0
  115. gcore/types/fastedge/template_delete_params.py +12 -0
  116. gcore/types/fastedge/template_list_params.py +25 -0
  117. gcore/types/fastedge/template_parameter.py +22 -0
  118. gcore/types/fastedge/template_parameter_param.py +21 -0
  119. gcore/types/fastedge/template_replace_params.py +30 -0
  120. gcore/types/fastedge/template_short.py +27 -0
  121. {gcore-0.4.0.dist-info → gcore-0.6.0.dist-info}/METADATA +8 -7
  122. {gcore-0.4.0.dist-info → gcore-0.6.0.dist-info}/RECORD +124 -80
  123. gcore/types/cloud/aws_iam_data.py +0 -13
  124. gcore/types/cloud/aws_iam_data_param.py +0 -15
  125. gcore/types/cloud/capacity.py +0 -13
  126. gcore/types/cloud/container_probe_config_create_param.py +0 -17
  127. gcore/types/cloud/container_probe_create_param.py +0 -38
  128. gcore/types/cloud/container_probe_exec_create_param.py +0 -13
  129. gcore/types/cloud/container_probe_http_get_create_param.py +0 -25
  130. gcore/types/cloud/container_probe_tcp_socket_create_param.py +0 -12
  131. gcore/types/cloud/container_scale.py +0 -25
  132. gcore/types/cloud/container_scale_trigger_rate.py +0 -13
  133. gcore/types/cloud/container_scale_trigger_sqs.py +0 -33
  134. gcore/types/cloud/container_scale_trigger_threshold.py +0 -10
  135. gcore/types/cloud/container_scale_triggers.py +0 -36
  136. gcore/types/cloud/deploy_status.py +0 -13
  137. gcore/types/cloud/inference/container.py +0 -26
  138. gcore/types/cloud/inference/inference.py +0 -95
  139. gcore/types/cloud/inference/mlcatalog_order_by_choices.py +0 -7
  140. gcore/types/cloud/inference_probes.py +0 -19
  141. gcore/types/cloud/ingress_opts_out.py +0 -16
  142. gcore/types/cloud/ingress_opts_param.py +0 -18
  143. gcore/types/cloud/secret_create_params.py +0 -66
  144. {gcore-0.4.0.dist-info → gcore-0.6.0.dist-info}/WHEEL +0 -0
  145. {gcore-0.4.0.dist-info → gcore-0.6.0.dist-info}/licenses/LICENSE +0 -0
@@ -0,0 +1,687 @@
1
+ # File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
2
+
3
+ from __future__ import annotations
4
+
5
+ from typing import Iterable
6
+
7
+ import httpx
8
+
9
+ from ..._types import NOT_GIVEN, Body, Query, Headers, NoneType, NotGiven
10
+ from ..._utils import maybe_transform, async_maybe_transform
11
+ from ..._compat import cached_property
12
+ from ..._resource import SyncAPIResource, AsyncAPIResource
13
+ from ..._response import (
14
+ to_raw_response_wrapper,
15
+ to_streamed_response_wrapper,
16
+ async_to_raw_response_wrapper,
17
+ async_to_streamed_response_wrapper,
18
+ )
19
+ from ..._base_client import make_request_options
20
+ from ...types.fastedge import (
21
+ secret_list_params,
22
+ secret_create_params,
23
+ secret_delete_params,
24
+ secret_update_params,
25
+ secret_replace_params,
26
+ )
27
+ from ...types.fastedge.secret import Secret
28
+ from ...types.fastedge.secret_list_response import SecretListResponse
29
+ from ...types.fastedge.secret_create_response import SecretCreateResponse
30
+
31
+ __all__ = ["SecretsResource", "AsyncSecretsResource"]
32
+
33
+
34
+ class SecretsResource(SyncAPIResource):
35
+ @cached_property
36
+ def with_raw_response(self) -> SecretsResourceWithRawResponse:
37
+ """
38
+ This property can be used as a prefix for any HTTP method call to return
39
+ the raw response object instead of the parsed content.
40
+
41
+ For more information, see https://www.github.com/G-Core/gcore-python#accessing-raw-response-data-eg-headers
42
+ """
43
+ return SecretsResourceWithRawResponse(self)
44
+
45
+ @cached_property
46
+ def with_streaming_response(self) -> SecretsResourceWithStreamingResponse:
47
+ """
48
+ An alternative to `.with_raw_response` that doesn't eagerly read the response body.
49
+
50
+ For more information, see https://www.github.com/G-Core/gcore-python#with_streaming_response
51
+ """
52
+ return SecretsResourceWithStreamingResponse(self)
53
+
54
+ def create(
55
+ self,
56
+ *,
57
+ name: str,
58
+ comment: str | NotGiven = NOT_GIVEN,
59
+ secret_slots: Iterable[secret_create_params.SecretSlot] | NotGiven = NOT_GIVEN,
60
+ # Use the following arguments if you need to pass additional parameters to the API that aren't available via kwargs.
61
+ # The extra values given here take precedence over values defined on the client or passed to this method.
62
+ extra_headers: Headers | None = None,
63
+ extra_query: Query | None = None,
64
+ extra_body: Body | None = None,
65
+ timeout: float | httpx.Timeout | None | NotGiven = NOT_GIVEN,
66
+ ) -> SecretCreateResponse:
67
+ """
68
+ Add a new secret
69
+
70
+ Args:
71
+ name: The unique name of the secret.
72
+
73
+ comment: A description or comment about the secret.
74
+
75
+ secret_slots: A list of secret slots associated with this secret.
76
+
77
+ extra_headers: Send extra headers
78
+
79
+ extra_query: Add additional query parameters to the request
80
+
81
+ extra_body: Add additional JSON properties to the request
82
+
83
+ timeout: Override the client-level default timeout for this request, in seconds
84
+ """
85
+ return self._post(
86
+ "/fastedge/v1/secrets",
87
+ body=maybe_transform(
88
+ {
89
+ "name": name,
90
+ "comment": comment,
91
+ "secret_slots": secret_slots,
92
+ },
93
+ secret_create_params.SecretCreateParams,
94
+ ),
95
+ options=make_request_options(
96
+ extra_headers=extra_headers, extra_query=extra_query, extra_body=extra_body, timeout=timeout
97
+ ),
98
+ cast_to=SecretCreateResponse,
99
+ )
100
+
101
+ def update(
102
+ self,
103
+ id: int,
104
+ *,
105
+ comment: str | NotGiven = NOT_GIVEN,
106
+ name: str | NotGiven = NOT_GIVEN,
107
+ secret_slots: Iterable[secret_update_params.SecretSlot] | NotGiven = NOT_GIVEN,
108
+ # Use the following arguments if you need to pass additional parameters to the API that aren't available via kwargs.
109
+ # The extra values given here take precedence over values defined on the client or passed to this method.
110
+ extra_headers: Headers | None = None,
111
+ extra_query: Query | None = None,
112
+ extra_body: Body | None = None,
113
+ timeout: float | httpx.Timeout | None | NotGiven = NOT_GIVEN,
114
+ ) -> Secret:
115
+ """
116
+ Update a secret
117
+
118
+ Args:
119
+ comment: A description or comment about the secret.
120
+
121
+ name: The unique name of the secret.
122
+
123
+ secret_slots: A list of secret slots associated with this secret.
124
+
125
+ extra_headers: Send extra headers
126
+
127
+ extra_query: Add additional query parameters to the request
128
+
129
+ extra_body: Add additional JSON properties to the request
130
+
131
+ timeout: Override the client-level default timeout for this request, in seconds
132
+ """
133
+ return self._patch(
134
+ f"/fastedge/v1/secrets/{id}",
135
+ body=maybe_transform(
136
+ {
137
+ "comment": comment,
138
+ "name": name,
139
+ "secret_slots": secret_slots,
140
+ },
141
+ secret_update_params.SecretUpdateParams,
142
+ ),
143
+ options=make_request_options(
144
+ extra_headers=extra_headers, extra_query=extra_query, extra_body=extra_body, timeout=timeout
145
+ ),
146
+ cast_to=Secret,
147
+ )
148
+
149
+ def list(
150
+ self,
151
+ *,
152
+ app_id: int | NotGiven = NOT_GIVEN,
153
+ secret_name: str | NotGiven = NOT_GIVEN,
154
+ # Use the following arguments if you need to pass additional parameters to the API that aren't available via kwargs.
155
+ # The extra values given here take precedence over values defined on the client or passed to this method.
156
+ extra_headers: Headers | None = None,
157
+ extra_query: Query | None = None,
158
+ extra_body: Body | None = None,
159
+ timeout: float | httpx.Timeout | None | NotGiven = NOT_GIVEN,
160
+ ) -> SecretListResponse:
161
+ """
162
+ List available secrets
163
+
164
+ Args:
165
+ app_id: App ID
166
+
167
+ secret_name: Secret name
168
+
169
+ extra_headers: Send extra headers
170
+
171
+ extra_query: Add additional query parameters to the request
172
+
173
+ extra_body: Add additional JSON properties to the request
174
+
175
+ timeout: Override the client-level default timeout for this request, in seconds
176
+ """
177
+ return self._get(
178
+ "/fastedge/v1/secrets",
179
+ options=make_request_options(
180
+ extra_headers=extra_headers,
181
+ extra_query=extra_query,
182
+ extra_body=extra_body,
183
+ timeout=timeout,
184
+ query=maybe_transform(
185
+ {
186
+ "app_id": app_id,
187
+ "secret_name": secret_name,
188
+ },
189
+ secret_list_params.SecretListParams,
190
+ ),
191
+ ),
192
+ cast_to=SecretListResponse,
193
+ )
194
+
195
+ def delete(
196
+ self,
197
+ id: int,
198
+ *,
199
+ force: bool | NotGiven = NOT_GIVEN,
200
+ # Use the following arguments if you need to pass additional parameters to the API that aren't available via kwargs.
201
+ # The extra values given here take precedence over values defined on the client or passed to this method.
202
+ extra_headers: Headers | None = None,
203
+ extra_query: Query | None = None,
204
+ extra_body: Body | None = None,
205
+ timeout: float | httpx.Timeout | None | NotGiven = NOT_GIVEN,
206
+ ) -> None:
207
+ """
208
+ Delete a secret
209
+
210
+ Args:
211
+ force: Force delete secret even if it is used in slots
212
+
213
+ extra_headers: Send extra headers
214
+
215
+ extra_query: Add additional query parameters to the request
216
+
217
+ extra_body: Add additional JSON properties to the request
218
+
219
+ timeout: Override the client-level default timeout for this request, in seconds
220
+ """
221
+ extra_headers = {"Accept": "*/*", **(extra_headers or {})}
222
+ return self._delete(
223
+ f"/fastedge/v1/secrets/{id}",
224
+ options=make_request_options(
225
+ extra_headers=extra_headers,
226
+ extra_query=extra_query,
227
+ extra_body=extra_body,
228
+ timeout=timeout,
229
+ query=maybe_transform({"force": force}, secret_delete_params.SecretDeleteParams),
230
+ ),
231
+ cast_to=NoneType,
232
+ )
233
+
234
+ def get(
235
+ self,
236
+ id: int,
237
+ *,
238
+ # Use the following arguments if you need to pass additional parameters to the API that aren't available via kwargs.
239
+ # The extra values given here take precedence over values defined on the client or passed to this method.
240
+ extra_headers: Headers | None = None,
241
+ extra_query: Query | None = None,
242
+ extra_body: Body | None = None,
243
+ timeout: float | httpx.Timeout | None | NotGiven = NOT_GIVEN,
244
+ ) -> Secret:
245
+ """
246
+ Get secret by id
247
+
248
+ Args:
249
+ extra_headers: Send extra headers
250
+
251
+ extra_query: Add additional query parameters to the request
252
+
253
+ extra_body: Add additional JSON properties to the request
254
+
255
+ timeout: Override the client-level default timeout for this request, in seconds
256
+ """
257
+ return self._get(
258
+ f"/fastedge/v1/secrets/{id}",
259
+ options=make_request_options(
260
+ extra_headers=extra_headers, extra_query=extra_query, extra_body=extra_body, timeout=timeout
261
+ ),
262
+ cast_to=Secret,
263
+ )
264
+
265
+ def replace(
266
+ self,
267
+ id: int,
268
+ *,
269
+ name: str,
270
+ comment: str | NotGiven = NOT_GIVEN,
271
+ secret_slots: Iterable[secret_replace_params.SecretSlot] | NotGiven = NOT_GIVEN,
272
+ # Use the following arguments if you need to pass additional parameters to the API that aren't available via kwargs.
273
+ # The extra values given here take precedence over values defined on the client or passed to this method.
274
+ extra_headers: Headers | None = None,
275
+ extra_query: Query | None = None,
276
+ extra_body: Body | None = None,
277
+ timeout: float | httpx.Timeout | None | NotGiven = NOT_GIVEN,
278
+ ) -> Secret:
279
+ """
280
+ Update a secret
281
+
282
+ Args:
283
+ name: The unique name of the secret.
284
+
285
+ comment: A description or comment about the secret.
286
+
287
+ secret_slots: A list of secret slots associated with this secret.
288
+
289
+ extra_headers: Send extra headers
290
+
291
+ extra_query: Add additional query parameters to the request
292
+
293
+ extra_body: Add additional JSON properties to the request
294
+
295
+ timeout: Override the client-level default timeout for this request, in seconds
296
+ """
297
+ return self._put(
298
+ f"/fastedge/v1/secrets/{id}",
299
+ body=maybe_transform(
300
+ {
301
+ "name": name,
302
+ "comment": comment,
303
+ "secret_slots": secret_slots,
304
+ },
305
+ secret_replace_params.SecretReplaceParams,
306
+ ),
307
+ options=make_request_options(
308
+ extra_headers=extra_headers, extra_query=extra_query, extra_body=extra_body, timeout=timeout
309
+ ),
310
+ cast_to=Secret,
311
+ )
312
+
313
+
314
+ class AsyncSecretsResource(AsyncAPIResource):
315
+ @cached_property
316
+ def with_raw_response(self) -> AsyncSecretsResourceWithRawResponse:
317
+ """
318
+ This property can be used as a prefix for any HTTP method call to return
319
+ the raw response object instead of the parsed content.
320
+
321
+ For more information, see https://www.github.com/G-Core/gcore-python#accessing-raw-response-data-eg-headers
322
+ """
323
+ return AsyncSecretsResourceWithRawResponse(self)
324
+
325
+ @cached_property
326
+ def with_streaming_response(self) -> AsyncSecretsResourceWithStreamingResponse:
327
+ """
328
+ An alternative to `.with_raw_response` that doesn't eagerly read the response body.
329
+
330
+ For more information, see https://www.github.com/G-Core/gcore-python#with_streaming_response
331
+ """
332
+ return AsyncSecretsResourceWithStreamingResponse(self)
333
+
334
+ async def create(
335
+ self,
336
+ *,
337
+ name: str,
338
+ comment: str | NotGiven = NOT_GIVEN,
339
+ secret_slots: Iterable[secret_create_params.SecretSlot] | NotGiven = NOT_GIVEN,
340
+ # Use the following arguments if you need to pass additional parameters to the API that aren't available via kwargs.
341
+ # The extra values given here take precedence over values defined on the client or passed to this method.
342
+ extra_headers: Headers | None = None,
343
+ extra_query: Query | None = None,
344
+ extra_body: Body | None = None,
345
+ timeout: float | httpx.Timeout | None | NotGiven = NOT_GIVEN,
346
+ ) -> SecretCreateResponse:
347
+ """
348
+ Add a new secret
349
+
350
+ Args:
351
+ name: The unique name of the secret.
352
+
353
+ comment: A description or comment about the secret.
354
+
355
+ secret_slots: A list of secret slots associated with this secret.
356
+
357
+ extra_headers: Send extra headers
358
+
359
+ extra_query: Add additional query parameters to the request
360
+
361
+ extra_body: Add additional JSON properties to the request
362
+
363
+ timeout: Override the client-level default timeout for this request, in seconds
364
+ """
365
+ return await self._post(
366
+ "/fastedge/v1/secrets",
367
+ body=await async_maybe_transform(
368
+ {
369
+ "name": name,
370
+ "comment": comment,
371
+ "secret_slots": secret_slots,
372
+ },
373
+ secret_create_params.SecretCreateParams,
374
+ ),
375
+ options=make_request_options(
376
+ extra_headers=extra_headers, extra_query=extra_query, extra_body=extra_body, timeout=timeout
377
+ ),
378
+ cast_to=SecretCreateResponse,
379
+ )
380
+
381
+ async def update(
382
+ self,
383
+ id: int,
384
+ *,
385
+ comment: str | NotGiven = NOT_GIVEN,
386
+ name: str | NotGiven = NOT_GIVEN,
387
+ secret_slots: Iterable[secret_update_params.SecretSlot] | NotGiven = NOT_GIVEN,
388
+ # Use the following arguments if you need to pass additional parameters to the API that aren't available via kwargs.
389
+ # The extra values given here take precedence over values defined on the client or passed to this method.
390
+ extra_headers: Headers | None = None,
391
+ extra_query: Query | None = None,
392
+ extra_body: Body | None = None,
393
+ timeout: float | httpx.Timeout | None | NotGiven = NOT_GIVEN,
394
+ ) -> Secret:
395
+ """
396
+ Update a secret
397
+
398
+ Args:
399
+ comment: A description or comment about the secret.
400
+
401
+ name: The unique name of the secret.
402
+
403
+ secret_slots: A list of secret slots associated with this secret.
404
+
405
+ extra_headers: Send extra headers
406
+
407
+ extra_query: Add additional query parameters to the request
408
+
409
+ extra_body: Add additional JSON properties to the request
410
+
411
+ timeout: Override the client-level default timeout for this request, in seconds
412
+ """
413
+ return await self._patch(
414
+ f"/fastedge/v1/secrets/{id}",
415
+ body=await async_maybe_transform(
416
+ {
417
+ "comment": comment,
418
+ "name": name,
419
+ "secret_slots": secret_slots,
420
+ },
421
+ secret_update_params.SecretUpdateParams,
422
+ ),
423
+ options=make_request_options(
424
+ extra_headers=extra_headers, extra_query=extra_query, extra_body=extra_body, timeout=timeout
425
+ ),
426
+ cast_to=Secret,
427
+ )
428
+
429
+ async def list(
430
+ self,
431
+ *,
432
+ app_id: int | NotGiven = NOT_GIVEN,
433
+ secret_name: str | NotGiven = NOT_GIVEN,
434
+ # Use the following arguments if you need to pass additional parameters to the API that aren't available via kwargs.
435
+ # The extra values given here take precedence over values defined on the client or passed to this method.
436
+ extra_headers: Headers | None = None,
437
+ extra_query: Query | None = None,
438
+ extra_body: Body | None = None,
439
+ timeout: float | httpx.Timeout | None | NotGiven = NOT_GIVEN,
440
+ ) -> SecretListResponse:
441
+ """
442
+ List available secrets
443
+
444
+ Args:
445
+ app_id: App ID
446
+
447
+ secret_name: Secret name
448
+
449
+ extra_headers: Send extra headers
450
+
451
+ extra_query: Add additional query parameters to the request
452
+
453
+ extra_body: Add additional JSON properties to the request
454
+
455
+ timeout: Override the client-level default timeout for this request, in seconds
456
+ """
457
+ return await self._get(
458
+ "/fastedge/v1/secrets",
459
+ options=make_request_options(
460
+ extra_headers=extra_headers,
461
+ extra_query=extra_query,
462
+ extra_body=extra_body,
463
+ timeout=timeout,
464
+ query=await async_maybe_transform(
465
+ {
466
+ "app_id": app_id,
467
+ "secret_name": secret_name,
468
+ },
469
+ secret_list_params.SecretListParams,
470
+ ),
471
+ ),
472
+ cast_to=SecretListResponse,
473
+ )
474
+
475
+ async def delete(
476
+ self,
477
+ id: int,
478
+ *,
479
+ force: bool | NotGiven = NOT_GIVEN,
480
+ # Use the following arguments if you need to pass additional parameters to the API that aren't available via kwargs.
481
+ # The extra values given here take precedence over values defined on the client or passed to this method.
482
+ extra_headers: Headers | None = None,
483
+ extra_query: Query | None = None,
484
+ extra_body: Body | None = None,
485
+ timeout: float | httpx.Timeout | None | NotGiven = NOT_GIVEN,
486
+ ) -> None:
487
+ """
488
+ Delete a secret
489
+
490
+ Args:
491
+ force: Force delete secret even if it is used in slots
492
+
493
+ extra_headers: Send extra headers
494
+
495
+ extra_query: Add additional query parameters to the request
496
+
497
+ extra_body: Add additional JSON properties to the request
498
+
499
+ timeout: Override the client-level default timeout for this request, in seconds
500
+ """
501
+ extra_headers = {"Accept": "*/*", **(extra_headers or {})}
502
+ return await self._delete(
503
+ f"/fastedge/v1/secrets/{id}",
504
+ options=make_request_options(
505
+ extra_headers=extra_headers,
506
+ extra_query=extra_query,
507
+ extra_body=extra_body,
508
+ timeout=timeout,
509
+ query=await async_maybe_transform({"force": force}, secret_delete_params.SecretDeleteParams),
510
+ ),
511
+ cast_to=NoneType,
512
+ )
513
+
514
+ async def get(
515
+ self,
516
+ id: int,
517
+ *,
518
+ # Use the following arguments if you need to pass additional parameters to the API that aren't available via kwargs.
519
+ # The extra values given here take precedence over values defined on the client or passed to this method.
520
+ extra_headers: Headers | None = None,
521
+ extra_query: Query | None = None,
522
+ extra_body: Body | None = None,
523
+ timeout: float | httpx.Timeout | None | NotGiven = NOT_GIVEN,
524
+ ) -> Secret:
525
+ """
526
+ Get secret by id
527
+
528
+ Args:
529
+ extra_headers: Send extra headers
530
+
531
+ extra_query: Add additional query parameters to the request
532
+
533
+ extra_body: Add additional JSON properties to the request
534
+
535
+ timeout: Override the client-level default timeout for this request, in seconds
536
+ """
537
+ return await self._get(
538
+ f"/fastedge/v1/secrets/{id}",
539
+ options=make_request_options(
540
+ extra_headers=extra_headers, extra_query=extra_query, extra_body=extra_body, timeout=timeout
541
+ ),
542
+ cast_to=Secret,
543
+ )
544
+
545
+ async def replace(
546
+ self,
547
+ id: int,
548
+ *,
549
+ name: str,
550
+ comment: str | NotGiven = NOT_GIVEN,
551
+ secret_slots: Iterable[secret_replace_params.SecretSlot] | NotGiven = NOT_GIVEN,
552
+ # Use the following arguments if you need to pass additional parameters to the API that aren't available via kwargs.
553
+ # The extra values given here take precedence over values defined on the client or passed to this method.
554
+ extra_headers: Headers | None = None,
555
+ extra_query: Query | None = None,
556
+ extra_body: Body | None = None,
557
+ timeout: float | httpx.Timeout | None | NotGiven = NOT_GIVEN,
558
+ ) -> Secret:
559
+ """
560
+ Update a secret
561
+
562
+ Args:
563
+ name: The unique name of the secret.
564
+
565
+ comment: A description or comment about the secret.
566
+
567
+ secret_slots: A list of secret slots associated with this secret.
568
+
569
+ extra_headers: Send extra headers
570
+
571
+ extra_query: Add additional query parameters to the request
572
+
573
+ extra_body: Add additional JSON properties to the request
574
+
575
+ timeout: Override the client-level default timeout for this request, in seconds
576
+ """
577
+ return await self._put(
578
+ f"/fastedge/v1/secrets/{id}",
579
+ body=await async_maybe_transform(
580
+ {
581
+ "name": name,
582
+ "comment": comment,
583
+ "secret_slots": secret_slots,
584
+ },
585
+ secret_replace_params.SecretReplaceParams,
586
+ ),
587
+ options=make_request_options(
588
+ extra_headers=extra_headers, extra_query=extra_query, extra_body=extra_body, timeout=timeout
589
+ ),
590
+ cast_to=Secret,
591
+ )
592
+
593
+
594
+ class SecretsResourceWithRawResponse:
595
+ def __init__(self, secrets: SecretsResource) -> None:
596
+ self._secrets = secrets
597
+
598
+ self.create = to_raw_response_wrapper(
599
+ secrets.create,
600
+ )
601
+ self.update = to_raw_response_wrapper(
602
+ secrets.update,
603
+ )
604
+ self.list = to_raw_response_wrapper(
605
+ secrets.list,
606
+ )
607
+ self.delete = to_raw_response_wrapper(
608
+ secrets.delete,
609
+ )
610
+ self.get = to_raw_response_wrapper(
611
+ secrets.get,
612
+ )
613
+ self.replace = to_raw_response_wrapper(
614
+ secrets.replace,
615
+ )
616
+
617
+
618
+ class AsyncSecretsResourceWithRawResponse:
619
+ def __init__(self, secrets: AsyncSecretsResource) -> None:
620
+ self._secrets = secrets
621
+
622
+ self.create = async_to_raw_response_wrapper(
623
+ secrets.create,
624
+ )
625
+ self.update = async_to_raw_response_wrapper(
626
+ secrets.update,
627
+ )
628
+ self.list = async_to_raw_response_wrapper(
629
+ secrets.list,
630
+ )
631
+ self.delete = async_to_raw_response_wrapper(
632
+ secrets.delete,
633
+ )
634
+ self.get = async_to_raw_response_wrapper(
635
+ secrets.get,
636
+ )
637
+ self.replace = async_to_raw_response_wrapper(
638
+ secrets.replace,
639
+ )
640
+
641
+
642
+ class SecretsResourceWithStreamingResponse:
643
+ def __init__(self, secrets: SecretsResource) -> None:
644
+ self._secrets = secrets
645
+
646
+ self.create = to_streamed_response_wrapper(
647
+ secrets.create,
648
+ )
649
+ self.update = to_streamed_response_wrapper(
650
+ secrets.update,
651
+ )
652
+ self.list = to_streamed_response_wrapper(
653
+ secrets.list,
654
+ )
655
+ self.delete = to_streamed_response_wrapper(
656
+ secrets.delete,
657
+ )
658
+ self.get = to_streamed_response_wrapper(
659
+ secrets.get,
660
+ )
661
+ self.replace = to_streamed_response_wrapper(
662
+ secrets.replace,
663
+ )
664
+
665
+
666
+ class AsyncSecretsResourceWithStreamingResponse:
667
+ def __init__(self, secrets: AsyncSecretsResource) -> None:
668
+ self._secrets = secrets
669
+
670
+ self.create = async_to_streamed_response_wrapper(
671
+ secrets.create,
672
+ )
673
+ self.update = async_to_streamed_response_wrapper(
674
+ secrets.update,
675
+ )
676
+ self.list = async_to_streamed_response_wrapper(
677
+ secrets.list,
678
+ )
679
+ self.delete = async_to_streamed_response_wrapper(
680
+ secrets.delete,
681
+ )
682
+ self.get = async_to_streamed_response_wrapper(
683
+ secrets.get,
684
+ )
685
+ self.replace = async_to_streamed_response_wrapper(
686
+ secrets.replace,
687
+ )