stackit-telemetryrouter 0.1.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 (42) hide show
  1. src/stackit/telemetryrouter/__init__.py +151 -0
  2. src/stackit/telemetryrouter/api/__init__.py +4 -0
  3. src/stackit/telemetryrouter/api/default_api.py +4511 -0
  4. src/stackit/telemetryrouter/api_client.py +652 -0
  5. src/stackit/telemetryrouter/api_response.py +23 -0
  6. src/stackit/telemetryrouter/configuration.py +163 -0
  7. src/stackit/telemetryrouter/exceptions.py +217 -0
  8. src/stackit/telemetryrouter/models/__init__.py +80 -0
  9. src/stackit/telemetryrouter/models/access_token_base_request.py +105 -0
  10. src/stackit/telemetryrouter/models/access_token_base_response.py +138 -0
  11. src/stackit/telemetryrouter/models/config_filter.py +100 -0
  12. src/stackit/telemetryrouter/models/config_filter_attributes.py +96 -0
  13. src/stackit/telemetryrouter/models/config_filter_level.py +37 -0
  14. src/stackit/telemetryrouter/models/config_filter_matcher.py +36 -0
  15. src/stackit/telemetryrouter/models/create_access_token_payload.py +105 -0
  16. src/stackit/telemetryrouter/models/create_access_token_response.py +148 -0
  17. src/stackit/telemetryrouter/models/create_destination_payload.py +107 -0
  18. src/stackit/telemetryrouter/models/create_telemetry_router_payload.py +107 -0
  19. src/stackit/telemetryrouter/models/destination_config.py +111 -0
  20. src/stackit/telemetryrouter/models/destination_config_open_telemetry.py +102 -0
  21. src/stackit/telemetryrouter/models/destination_config_open_telemetry_basic_auth.py +82 -0
  22. src/stackit/telemetryrouter/models/destination_config_s3.py +102 -0
  23. src/stackit/telemetryrouter/models/destination_config_s3_access_key.py +82 -0
  24. src/stackit/telemetryrouter/models/destination_config_type.py +36 -0
  25. src/stackit/telemetryrouter/models/destination_response.py +152 -0
  26. src/stackit/telemetryrouter/models/get_access_token_response.py +138 -0
  27. src/stackit/telemetryrouter/models/list_access_tokens_response.py +104 -0
  28. src/stackit/telemetryrouter/models/list_destinations_response.py +102 -0
  29. src/stackit/telemetryrouter/models/list_telemetry_routers_response.py +104 -0
  30. src/stackit/telemetryrouter/models/response4xx.py +81 -0
  31. src/stackit/telemetryrouter/models/telemetry_router_response.py +137 -0
  32. src/stackit/telemetryrouter/models/update_access_token_payload.py +105 -0
  33. src/stackit/telemetryrouter/models/update_access_token_response.py +138 -0
  34. src/stackit/telemetryrouter/models/update_destination_payload.py +112 -0
  35. src/stackit/telemetryrouter/models/update_telemetry_router_payload.py +112 -0
  36. src/stackit/telemetryrouter/py.typed +0 -0
  37. src/stackit/telemetryrouter/rest.py +164 -0
  38. stackit_telemetryrouter-0.1.0.dist-info/METADATA +48 -0
  39. stackit_telemetryrouter-0.1.0.dist-info/RECORD +42 -0
  40. stackit_telemetryrouter-0.1.0.dist-info/WHEEL +4 -0
  41. stackit_telemetryrouter-0.1.0.dist-info/licenses/LICENSE.md +201 -0
  42. stackit_telemetryrouter-0.1.0.dist-info/licenses/NOTICE.txt +2 -0
@@ -0,0 +1,4511 @@
1
+ # coding: utf-8
2
+
3
+ """
4
+ STACKIT Telemetry Router API
5
+
6
+ This API provides endpoints for managing Telemetry Routers.
7
+
8
+ The version of the OpenAPI document: 1beta.0.0
9
+ Generated by OpenAPI Generator (https://openapi-generator.tech)
10
+
11
+ Do not edit the class manually.
12
+ """ # noqa: E501
13
+
14
+ from typing import Any, Dict, List, Optional, Tuple, Union
15
+ from uuid import UUID
16
+
17
+ from pydantic import (
18
+ Field,
19
+ StrictBool,
20
+ StrictFloat,
21
+ StrictInt,
22
+ StrictStr,
23
+ validate_call,
24
+ )
25
+ from stackit.core.configuration import Configuration
26
+ from typing_extensions import Annotated
27
+
28
+ from stackit.telemetryrouter.api_client import ApiClient, RequestSerialized
29
+ from stackit.telemetryrouter.api_response import ApiResponse
30
+ from stackit.telemetryrouter.models.create_access_token_payload import (
31
+ CreateAccessTokenPayload,
32
+ )
33
+ from stackit.telemetryrouter.models.create_access_token_response import (
34
+ CreateAccessTokenResponse,
35
+ )
36
+ from stackit.telemetryrouter.models.create_destination_payload import (
37
+ CreateDestinationPayload,
38
+ )
39
+ from stackit.telemetryrouter.models.create_telemetry_router_payload import (
40
+ CreateTelemetryRouterPayload,
41
+ )
42
+ from stackit.telemetryrouter.models.destination_response import DestinationResponse
43
+ from stackit.telemetryrouter.models.get_access_token_response import (
44
+ GetAccessTokenResponse,
45
+ )
46
+ from stackit.telemetryrouter.models.list_access_tokens_response import (
47
+ ListAccessTokensResponse,
48
+ )
49
+ from stackit.telemetryrouter.models.list_destinations_response import (
50
+ ListDestinationsResponse,
51
+ )
52
+ from stackit.telemetryrouter.models.list_telemetry_routers_response import (
53
+ ListTelemetryRoutersResponse,
54
+ )
55
+ from stackit.telemetryrouter.models.telemetry_router_response import (
56
+ TelemetryRouterResponse,
57
+ )
58
+ from stackit.telemetryrouter.models.update_access_token_payload import (
59
+ UpdateAccessTokenPayload,
60
+ )
61
+ from stackit.telemetryrouter.models.update_access_token_response import (
62
+ UpdateAccessTokenResponse,
63
+ )
64
+ from stackit.telemetryrouter.models.update_destination_payload import (
65
+ UpdateDestinationPayload,
66
+ )
67
+ from stackit.telemetryrouter.models.update_telemetry_router_payload import (
68
+ UpdateTelemetryRouterPayload,
69
+ )
70
+ from stackit.telemetryrouter.rest import RESTResponseType
71
+
72
+
73
+ class DefaultApi:
74
+ """NOTE: This class is auto generated by OpenAPI Generator
75
+ Ref: https://openapi-generator.tech
76
+
77
+ Do not edit the class manually.
78
+ """
79
+
80
+ def __init__(self, configuration: Configuration = None) -> None:
81
+ if configuration is None:
82
+ configuration = Configuration()
83
+ self.configuration = configuration
84
+ self.api_client = ApiClient(self.configuration)
85
+
86
+ @validate_call
87
+ def create_access_token(
88
+ self,
89
+ project_id: Annotated[UUID, Field(description="The STACKIT portal project UUID the resource is located in.")],
90
+ region_id: Annotated[StrictStr, Field(description="The STACKIT region name the resource is located in.")],
91
+ telemetry_router_id: Annotated[UUID, Field(description="The Telemetry Router UUID.")],
92
+ create_access_token_payload: CreateAccessTokenPayload,
93
+ _request_timeout: Union[
94
+ None,
95
+ Annotated[StrictFloat, Field(gt=0)],
96
+ Tuple[Annotated[StrictFloat, Field(gt=0)], Annotated[StrictFloat, Field(gt=0)]],
97
+ ] = None,
98
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
99
+ _content_type: Optional[StrictStr] = None,
100
+ _headers: Optional[Dict[StrictStr, Any]] = None,
101
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
102
+ ) -> CreateAccessTokenResponse:
103
+ """create_access_token
104
+
105
+ Create a new access token for the given Telemetry Router.
106
+
107
+ :param project_id: The STACKIT portal project UUID the resource is located in. (required)
108
+ :type project_id: UUID
109
+ :param region_id: The STACKIT region name the resource is located in. (required)
110
+ :type region_id: str
111
+ :param telemetry_router_id: The Telemetry Router UUID. (required)
112
+ :type telemetry_router_id: UUID
113
+ :param create_access_token_payload: (required)
114
+ :type create_access_token_payload: CreateAccessTokenPayload
115
+ :param _request_timeout: timeout setting for this request. If one
116
+ number provided, it will be total request
117
+ timeout. It can also be a pair (tuple) of
118
+ (connection, read) timeouts.
119
+ :type _request_timeout: int, tuple(int, int), optional
120
+ :param _request_auth: set to override the auth_settings for an a single
121
+ request; this effectively ignores the
122
+ authentication in the spec for a single request.
123
+ :type _request_auth: dict, optional
124
+ :param _content_type: force content-type for the request.
125
+ :type _content_type: str, Optional
126
+ :param _headers: set to override the headers for a single
127
+ request; this effectively ignores the headers
128
+ in the spec for a single request.
129
+ :type _headers: dict, optional
130
+ :param _host_index: set to override the host_index for a single
131
+ request; this effectively ignores the host_index
132
+ in the spec for a single request.
133
+ :type _host_index: int, optional
134
+ :return: Returns the result object.
135
+ """ # noqa: E501
136
+
137
+ _param = self._create_access_token_serialize(
138
+ project_id=project_id,
139
+ region_id=region_id,
140
+ telemetry_router_id=telemetry_router_id,
141
+ create_access_token_payload=create_access_token_payload,
142
+ _request_auth=_request_auth,
143
+ _content_type=_content_type,
144
+ _headers=_headers,
145
+ _host_index=_host_index,
146
+ )
147
+
148
+ _response_types_map: Dict[str, Optional[str]] = {
149
+ "201": "CreateAccessTokenResponse",
150
+ "400": "Response4xx",
151
+ "401": "Response4xx",
152
+ "404": None,
153
+ "409": "Response4xx",
154
+ "500": None,
155
+ }
156
+ response_data = self.api_client.call_api(*_param, _request_timeout=_request_timeout)
157
+ response_data.read()
158
+ return self.api_client.response_deserialize(
159
+ response_data=response_data,
160
+ response_types_map=_response_types_map,
161
+ ).data
162
+
163
+ @validate_call
164
+ def create_access_token_with_http_info(
165
+ self,
166
+ project_id: Annotated[UUID, Field(description="The STACKIT portal project UUID the resource is located in.")],
167
+ region_id: Annotated[StrictStr, Field(description="The STACKIT region name the resource is located in.")],
168
+ telemetry_router_id: Annotated[UUID, Field(description="The Telemetry Router UUID.")],
169
+ create_access_token_payload: CreateAccessTokenPayload,
170
+ _request_timeout: Union[
171
+ None,
172
+ Annotated[StrictFloat, Field(gt=0)],
173
+ Tuple[Annotated[StrictFloat, Field(gt=0)], Annotated[StrictFloat, Field(gt=0)]],
174
+ ] = None,
175
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
176
+ _content_type: Optional[StrictStr] = None,
177
+ _headers: Optional[Dict[StrictStr, Any]] = None,
178
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
179
+ ) -> ApiResponse[CreateAccessTokenResponse]:
180
+ """create_access_token
181
+
182
+ Create a new access token for the given Telemetry Router.
183
+
184
+ :param project_id: The STACKIT portal project UUID the resource is located in. (required)
185
+ :type project_id: UUID
186
+ :param region_id: The STACKIT region name the resource is located in. (required)
187
+ :type region_id: str
188
+ :param telemetry_router_id: The Telemetry Router UUID. (required)
189
+ :type telemetry_router_id: UUID
190
+ :param create_access_token_payload: (required)
191
+ :type create_access_token_payload: CreateAccessTokenPayload
192
+ :param _request_timeout: timeout setting for this request. If one
193
+ number provided, it will be total request
194
+ timeout. It can also be a pair (tuple) of
195
+ (connection, read) timeouts.
196
+ :type _request_timeout: int, tuple(int, int), optional
197
+ :param _request_auth: set to override the auth_settings for an a single
198
+ request; this effectively ignores the
199
+ authentication in the spec for a single request.
200
+ :type _request_auth: dict, optional
201
+ :param _content_type: force content-type for the request.
202
+ :type _content_type: str, Optional
203
+ :param _headers: set to override the headers for a single
204
+ request; this effectively ignores the headers
205
+ in the spec for a single request.
206
+ :type _headers: dict, optional
207
+ :param _host_index: set to override the host_index for a single
208
+ request; this effectively ignores the host_index
209
+ in the spec for a single request.
210
+ :type _host_index: int, optional
211
+ :return: Returns the result object.
212
+ """ # noqa: E501
213
+
214
+ _param = self._create_access_token_serialize(
215
+ project_id=project_id,
216
+ region_id=region_id,
217
+ telemetry_router_id=telemetry_router_id,
218
+ create_access_token_payload=create_access_token_payload,
219
+ _request_auth=_request_auth,
220
+ _content_type=_content_type,
221
+ _headers=_headers,
222
+ _host_index=_host_index,
223
+ )
224
+
225
+ _response_types_map: Dict[str, Optional[str]] = {
226
+ "201": "CreateAccessTokenResponse",
227
+ "400": "Response4xx",
228
+ "401": "Response4xx",
229
+ "404": None,
230
+ "409": "Response4xx",
231
+ "500": None,
232
+ }
233
+ response_data = self.api_client.call_api(*_param, _request_timeout=_request_timeout)
234
+ response_data.read()
235
+ return self.api_client.response_deserialize(
236
+ response_data=response_data,
237
+ response_types_map=_response_types_map,
238
+ )
239
+
240
+ @validate_call
241
+ def create_access_token_without_preload_content(
242
+ self,
243
+ project_id: Annotated[UUID, Field(description="The STACKIT portal project UUID the resource is located in.")],
244
+ region_id: Annotated[StrictStr, Field(description="The STACKIT region name the resource is located in.")],
245
+ telemetry_router_id: Annotated[UUID, Field(description="The Telemetry Router UUID.")],
246
+ create_access_token_payload: CreateAccessTokenPayload,
247
+ _request_timeout: Union[
248
+ None,
249
+ Annotated[StrictFloat, Field(gt=0)],
250
+ Tuple[Annotated[StrictFloat, Field(gt=0)], Annotated[StrictFloat, Field(gt=0)]],
251
+ ] = None,
252
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
253
+ _content_type: Optional[StrictStr] = None,
254
+ _headers: Optional[Dict[StrictStr, Any]] = None,
255
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
256
+ ) -> RESTResponseType:
257
+ """create_access_token
258
+
259
+ Create a new access token for the given Telemetry Router.
260
+
261
+ :param project_id: The STACKIT portal project UUID the resource is located in. (required)
262
+ :type project_id: UUID
263
+ :param region_id: The STACKIT region name the resource is located in. (required)
264
+ :type region_id: str
265
+ :param telemetry_router_id: The Telemetry Router UUID. (required)
266
+ :type telemetry_router_id: UUID
267
+ :param create_access_token_payload: (required)
268
+ :type create_access_token_payload: CreateAccessTokenPayload
269
+ :param _request_timeout: timeout setting for this request. If one
270
+ number provided, it will be total request
271
+ timeout. It can also be a pair (tuple) of
272
+ (connection, read) timeouts.
273
+ :type _request_timeout: int, tuple(int, int), optional
274
+ :param _request_auth: set to override the auth_settings for an a single
275
+ request; this effectively ignores the
276
+ authentication in the spec for a single request.
277
+ :type _request_auth: dict, optional
278
+ :param _content_type: force content-type for the request.
279
+ :type _content_type: str, Optional
280
+ :param _headers: set to override the headers for a single
281
+ request; this effectively ignores the headers
282
+ in the spec for a single request.
283
+ :type _headers: dict, optional
284
+ :param _host_index: set to override the host_index for a single
285
+ request; this effectively ignores the host_index
286
+ in the spec for a single request.
287
+ :type _host_index: int, optional
288
+ :return: Returns the result object.
289
+ """ # noqa: E501
290
+
291
+ _param = self._create_access_token_serialize(
292
+ project_id=project_id,
293
+ region_id=region_id,
294
+ telemetry_router_id=telemetry_router_id,
295
+ create_access_token_payload=create_access_token_payload,
296
+ _request_auth=_request_auth,
297
+ _content_type=_content_type,
298
+ _headers=_headers,
299
+ _host_index=_host_index,
300
+ )
301
+
302
+ _response_types_map: Dict[str, Optional[str]] = {
303
+ "201": "CreateAccessTokenResponse",
304
+ "400": "Response4xx",
305
+ "401": "Response4xx",
306
+ "404": None,
307
+ "409": "Response4xx",
308
+ "500": None,
309
+ }
310
+ response_data = self.api_client.call_api(*_param, _request_timeout=_request_timeout)
311
+ return response_data.response
312
+
313
+ def _create_access_token_serialize(
314
+ self,
315
+ project_id,
316
+ region_id,
317
+ telemetry_router_id,
318
+ create_access_token_payload,
319
+ _request_auth,
320
+ _content_type,
321
+ _headers,
322
+ _host_index,
323
+ ) -> RequestSerialized:
324
+
325
+ _host = None
326
+
327
+ _collection_formats: Dict[str, str] = {}
328
+
329
+ _path_params: Dict[str, str] = {}
330
+ _query_params: List[Tuple[str, str]] = []
331
+ _header_params: Dict[str, Optional[str]] = _headers or {}
332
+ _form_params: List[Tuple[str, str]] = []
333
+ _files: Dict[str, Union[str, bytes, List[str], List[bytes], List[Tuple[str, bytes]]]] = {}
334
+ _body_params: Optional[bytes] = None
335
+
336
+ # process the path parameters
337
+ if project_id is not None:
338
+ _path_params["projectId"] = project_id
339
+ if region_id is not None:
340
+ _path_params["regionId"] = region_id
341
+ if telemetry_router_id is not None:
342
+ _path_params["telemetryRouterId"] = telemetry_router_id
343
+ # process the query parameters
344
+ # process the header parameters
345
+ # process the form parameters
346
+ # process the body parameter
347
+ if create_access_token_payload is not None:
348
+ _body_params = create_access_token_payload
349
+
350
+ # set the HTTP header `Accept`
351
+ if "Accept" not in _header_params:
352
+ _header_params["Accept"] = self.api_client.select_header_accept(["application/json"])
353
+
354
+ # set the HTTP header `Content-Type`
355
+ if _content_type:
356
+ _header_params["Content-Type"] = _content_type
357
+ else:
358
+ _default_content_type = self.api_client.select_header_content_type(["application/json"])
359
+ if _default_content_type is not None:
360
+ _header_params["Content-Type"] = _default_content_type
361
+
362
+ # authentication setting
363
+ _auth_settings: List[str] = []
364
+
365
+ return self.api_client.param_serialize(
366
+ method="POST",
367
+ resource_path="/v1beta/projects/{projectId}/regions/{regionId}/telemetry-routers/{telemetryRouterId}/access-tokens",
368
+ path_params=_path_params,
369
+ query_params=_query_params,
370
+ header_params=_header_params,
371
+ body=_body_params,
372
+ post_params=_form_params,
373
+ files=_files,
374
+ auth_settings=_auth_settings,
375
+ collection_formats=_collection_formats,
376
+ _host=_host,
377
+ _request_auth=_request_auth,
378
+ )
379
+
380
+ @validate_call
381
+ def create_destination(
382
+ self,
383
+ project_id: Annotated[UUID, Field(description="The STACKIT portal project UUID the resource is located in.")],
384
+ region_id: Annotated[StrictStr, Field(description="The STACKIT region name the resource is located in.")],
385
+ telemetry_router_id: Annotated[UUID, Field(description="The Telemetry Router UUID.")],
386
+ create_destination_payload: CreateDestinationPayload,
387
+ _request_timeout: Union[
388
+ None,
389
+ Annotated[StrictFloat, Field(gt=0)],
390
+ Tuple[Annotated[StrictFloat, Field(gt=0)], Annotated[StrictFloat, Field(gt=0)]],
391
+ ] = None,
392
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
393
+ _content_type: Optional[StrictStr] = None,
394
+ _headers: Optional[Dict[StrictStr, Any]] = None,
395
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
396
+ ) -> DestinationResponse:
397
+ """create_destination
398
+
399
+ Creates a new Destination within the project.
400
+
401
+ :param project_id: The STACKIT portal project UUID the resource is located in. (required)
402
+ :type project_id: UUID
403
+ :param region_id: The STACKIT region name the resource is located in. (required)
404
+ :type region_id: str
405
+ :param telemetry_router_id: The Telemetry Router UUID. (required)
406
+ :type telemetry_router_id: UUID
407
+ :param create_destination_payload: (required)
408
+ :type create_destination_payload: CreateDestinationPayload
409
+ :param _request_timeout: timeout setting for this request. If one
410
+ number provided, it will be total request
411
+ timeout. It can also be a pair (tuple) of
412
+ (connection, read) timeouts.
413
+ :type _request_timeout: int, tuple(int, int), optional
414
+ :param _request_auth: set to override the auth_settings for an a single
415
+ request; this effectively ignores the
416
+ authentication in the spec for a single request.
417
+ :type _request_auth: dict, optional
418
+ :param _content_type: force content-type for the request.
419
+ :type _content_type: str, Optional
420
+ :param _headers: set to override the headers for a single
421
+ request; this effectively ignores the headers
422
+ in the spec for a single request.
423
+ :type _headers: dict, optional
424
+ :param _host_index: set to override the host_index for a single
425
+ request; this effectively ignores the host_index
426
+ in the spec for a single request.
427
+ :type _host_index: int, optional
428
+ :return: Returns the result object.
429
+ """ # noqa: E501
430
+
431
+ _param = self._create_destination_serialize(
432
+ project_id=project_id,
433
+ region_id=region_id,
434
+ telemetry_router_id=telemetry_router_id,
435
+ create_destination_payload=create_destination_payload,
436
+ _request_auth=_request_auth,
437
+ _content_type=_content_type,
438
+ _headers=_headers,
439
+ _host_index=_host_index,
440
+ )
441
+
442
+ _response_types_map: Dict[str, Optional[str]] = {
443
+ "201": "DestinationResponse",
444
+ "400": "Response4xx",
445
+ "401": "Response4xx",
446
+ "409": "Response4xx",
447
+ "500": None,
448
+ }
449
+ response_data = self.api_client.call_api(*_param, _request_timeout=_request_timeout)
450
+ response_data.read()
451
+ return self.api_client.response_deserialize(
452
+ response_data=response_data,
453
+ response_types_map=_response_types_map,
454
+ ).data
455
+
456
+ @validate_call
457
+ def create_destination_with_http_info(
458
+ self,
459
+ project_id: Annotated[UUID, Field(description="The STACKIT portal project UUID the resource is located in.")],
460
+ region_id: Annotated[StrictStr, Field(description="The STACKIT region name the resource is located in.")],
461
+ telemetry_router_id: Annotated[UUID, Field(description="The Telemetry Router UUID.")],
462
+ create_destination_payload: CreateDestinationPayload,
463
+ _request_timeout: Union[
464
+ None,
465
+ Annotated[StrictFloat, Field(gt=0)],
466
+ Tuple[Annotated[StrictFloat, Field(gt=0)], Annotated[StrictFloat, Field(gt=0)]],
467
+ ] = None,
468
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
469
+ _content_type: Optional[StrictStr] = None,
470
+ _headers: Optional[Dict[StrictStr, Any]] = None,
471
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
472
+ ) -> ApiResponse[DestinationResponse]:
473
+ """create_destination
474
+
475
+ Creates a new Destination within the project.
476
+
477
+ :param project_id: The STACKIT portal project UUID the resource is located in. (required)
478
+ :type project_id: UUID
479
+ :param region_id: The STACKIT region name the resource is located in. (required)
480
+ :type region_id: str
481
+ :param telemetry_router_id: The Telemetry Router UUID. (required)
482
+ :type telemetry_router_id: UUID
483
+ :param create_destination_payload: (required)
484
+ :type create_destination_payload: CreateDestinationPayload
485
+ :param _request_timeout: timeout setting for this request. If one
486
+ number provided, it will be total request
487
+ timeout. It can also be a pair (tuple) of
488
+ (connection, read) timeouts.
489
+ :type _request_timeout: int, tuple(int, int), optional
490
+ :param _request_auth: set to override the auth_settings for an a single
491
+ request; this effectively ignores the
492
+ authentication in the spec for a single request.
493
+ :type _request_auth: dict, optional
494
+ :param _content_type: force content-type for the request.
495
+ :type _content_type: str, Optional
496
+ :param _headers: set to override the headers for a single
497
+ request; this effectively ignores the headers
498
+ in the spec for a single request.
499
+ :type _headers: dict, optional
500
+ :param _host_index: set to override the host_index for a single
501
+ request; this effectively ignores the host_index
502
+ in the spec for a single request.
503
+ :type _host_index: int, optional
504
+ :return: Returns the result object.
505
+ """ # noqa: E501
506
+
507
+ _param = self._create_destination_serialize(
508
+ project_id=project_id,
509
+ region_id=region_id,
510
+ telemetry_router_id=telemetry_router_id,
511
+ create_destination_payload=create_destination_payload,
512
+ _request_auth=_request_auth,
513
+ _content_type=_content_type,
514
+ _headers=_headers,
515
+ _host_index=_host_index,
516
+ )
517
+
518
+ _response_types_map: Dict[str, Optional[str]] = {
519
+ "201": "DestinationResponse",
520
+ "400": "Response4xx",
521
+ "401": "Response4xx",
522
+ "409": "Response4xx",
523
+ "500": None,
524
+ }
525
+ response_data = self.api_client.call_api(*_param, _request_timeout=_request_timeout)
526
+ response_data.read()
527
+ return self.api_client.response_deserialize(
528
+ response_data=response_data,
529
+ response_types_map=_response_types_map,
530
+ )
531
+
532
+ @validate_call
533
+ def create_destination_without_preload_content(
534
+ self,
535
+ project_id: Annotated[UUID, Field(description="The STACKIT portal project UUID the resource is located in.")],
536
+ region_id: Annotated[StrictStr, Field(description="The STACKIT region name the resource is located in.")],
537
+ telemetry_router_id: Annotated[UUID, Field(description="The Telemetry Router UUID.")],
538
+ create_destination_payload: CreateDestinationPayload,
539
+ _request_timeout: Union[
540
+ None,
541
+ Annotated[StrictFloat, Field(gt=0)],
542
+ Tuple[Annotated[StrictFloat, Field(gt=0)], Annotated[StrictFloat, Field(gt=0)]],
543
+ ] = None,
544
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
545
+ _content_type: Optional[StrictStr] = None,
546
+ _headers: Optional[Dict[StrictStr, Any]] = None,
547
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
548
+ ) -> RESTResponseType:
549
+ """create_destination
550
+
551
+ Creates a new Destination within the project.
552
+
553
+ :param project_id: The STACKIT portal project UUID the resource is located in. (required)
554
+ :type project_id: UUID
555
+ :param region_id: The STACKIT region name the resource is located in. (required)
556
+ :type region_id: str
557
+ :param telemetry_router_id: The Telemetry Router UUID. (required)
558
+ :type telemetry_router_id: UUID
559
+ :param create_destination_payload: (required)
560
+ :type create_destination_payload: CreateDestinationPayload
561
+ :param _request_timeout: timeout setting for this request. If one
562
+ number provided, it will be total request
563
+ timeout. It can also be a pair (tuple) of
564
+ (connection, read) timeouts.
565
+ :type _request_timeout: int, tuple(int, int), optional
566
+ :param _request_auth: set to override the auth_settings for an a single
567
+ request; this effectively ignores the
568
+ authentication in the spec for a single request.
569
+ :type _request_auth: dict, optional
570
+ :param _content_type: force content-type for the request.
571
+ :type _content_type: str, Optional
572
+ :param _headers: set to override the headers for a single
573
+ request; this effectively ignores the headers
574
+ in the spec for a single request.
575
+ :type _headers: dict, optional
576
+ :param _host_index: set to override the host_index for a single
577
+ request; this effectively ignores the host_index
578
+ in the spec for a single request.
579
+ :type _host_index: int, optional
580
+ :return: Returns the result object.
581
+ """ # noqa: E501
582
+
583
+ _param = self._create_destination_serialize(
584
+ project_id=project_id,
585
+ region_id=region_id,
586
+ telemetry_router_id=telemetry_router_id,
587
+ create_destination_payload=create_destination_payload,
588
+ _request_auth=_request_auth,
589
+ _content_type=_content_type,
590
+ _headers=_headers,
591
+ _host_index=_host_index,
592
+ )
593
+
594
+ _response_types_map: Dict[str, Optional[str]] = {
595
+ "201": "DestinationResponse",
596
+ "400": "Response4xx",
597
+ "401": "Response4xx",
598
+ "409": "Response4xx",
599
+ "500": None,
600
+ }
601
+ response_data = self.api_client.call_api(*_param, _request_timeout=_request_timeout)
602
+ return response_data.response
603
+
604
+ def _create_destination_serialize(
605
+ self,
606
+ project_id,
607
+ region_id,
608
+ telemetry_router_id,
609
+ create_destination_payload,
610
+ _request_auth,
611
+ _content_type,
612
+ _headers,
613
+ _host_index,
614
+ ) -> RequestSerialized:
615
+
616
+ _host = None
617
+
618
+ _collection_formats: Dict[str, str] = {}
619
+
620
+ _path_params: Dict[str, str] = {}
621
+ _query_params: List[Tuple[str, str]] = []
622
+ _header_params: Dict[str, Optional[str]] = _headers or {}
623
+ _form_params: List[Tuple[str, str]] = []
624
+ _files: Dict[str, Union[str, bytes, List[str], List[bytes], List[Tuple[str, bytes]]]] = {}
625
+ _body_params: Optional[bytes] = None
626
+
627
+ # process the path parameters
628
+ if project_id is not None:
629
+ _path_params["projectId"] = project_id
630
+ if region_id is not None:
631
+ _path_params["regionId"] = region_id
632
+ if telemetry_router_id is not None:
633
+ _path_params["telemetryRouterId"] = telemetry_router_id
634
+ # process the query parameters
635
+ # process the header parameters
636
+ # process the form parameters
637
+ # process the body parameter
638
+ if create_destination_payload is not None:
639
+ _body_params = create_destination_payload
640
+
641
+ # set the HTTP header `Accept`
642
+ if "Accept" not in _header_params:
643
+ _header_params["Accept"] = self.api_client.select_header_accept(["application/json"])
644
+
645
+ # set the HTTP header `Content-Type`
646
+ if _content_type:
647
+ _header_params["Content-Type"] = _content_type
648
+ else:
649
+ _default_content_type = self.api_client.select_header_content_type(["application/json"])
650
+ if _default_content_type is not None:
651
+ _header_params["Content-Type"] = _default_content_type
652
+
653
+ # authentication setting
654
+ _auth_settings: List[str] = []
655
+
656
+ return self.api_client.param_serialize(
657
+ method="POST",
658
+ resource_path="/v1beta/projects/{projectId}/regions/{regionId}/telemetry-routers/{telemetryRouterId}/destinations",
659
+ path_params=_path_params,
660
+ query_params=_query_params,
661
+ header_params=_header_params,
662
+ body=_body_params,
663
+ post_params=_form_params,
664
+ files=_files,
665
+ auth_settings=_auth_settings,
666
+ collection_formats=_collection_formats,
667
+ _host=_host,
668
+ _request_auth=_request_auth,
669
+ )
670
+
671
+ @validate_call
672
+ def create_telemetry_router(
673
+ self,
674
+ project_id: Annotated[UUID, Field(description="The STACKIT portal project UUID the resource is located in.")],
675
+ region_id: Annotated[StrictStr, Field(description="The STACKIT region name the resource is located in.")],
676
+ create_telemetry_router_payload: CreateTelemetryRouterPayload,
677
+ _request_timeout: Union[
678
+ None,
679
+ Annotated[StrictFloat, Field(gt=0)],
680
+ Tuple[Annotated[StrictFloat, Field(gt=0)], Annotated[StrictFloat, Field(gt=0)]],
681
+ ] = None,
682
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
683
+ _content_type: Optional[StrictStr] = None,
684
+ _headers: Optional[Dict[StrictStr, Any]] = None,
685
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
686
+ ) -> TelemetryRouterResponse:
687
+ """create_telemetry_router
688
+
689
+ Creates the new Telemetry Router within the project.
690
+
691
+ :param project_id: The STACKIT portal project UUID the resource is located in. (required)
692
+ :type project_id: UUID
693
+ :param region_id: The STACKIT region name the resource is located in. (required)
694
+ :type region_id: str
695
+ :param create_telemetry_router_payload: (required)
696
+ :type create_telemetry_router_payload: CreateTelemetryRouterPayload
697
+ :param _request_timeout: timeout setting for this request. If one
698
+ number provided, it will be total request
699
+ timeout. It can also be a pair (tuple) of
700
+ (connection, read) timeouts.
701
+ :type _request_timeout: int, tuple(int, int), optional
702
+ :param _request_auth: set to override the auth_settings for an a single
703
+ request; this effectively ignores the
704
+ authentication in the spec for a single request.
705
+ :type _request_auth: dict, optional
706
+ :param _content_type: force content-type for the request.
707
+ :type _content_type: str, Optional
708
+ :param _headers: set to override the headers for a single
709
+ request; this effectively ignores the headers
710
+ in the spec for a single request.
711
+ :type _headers: dict, optional
712
+ :param _host_index: set to override the host_index for a single
713
+ request; this effectively ignores the host_index
714
+ in the spec for a single request.
715
+ :type _host_index: int, optional
716
+ :return: Returns the result object.
717
+ """ # noqa: E501
718
+
719
+ _param = self._create_telemetry_router_serialize(
720
+ project_id=project_id,
721
+ region_id=region_id,
722
+ create_telemetry_router_payload=create_telemetry_router_payload,
723
+ _request_auth=_request_auth,
724
+ _content_type=_content_type,
725
+ _headers=_headers,
726
+ _host_index=_host_index,
727
+ )
728
+
729
+ _response_types_map: Dict[str, Optional[str]] = {
730
+ "201": "TelemetryRouterResponse",
731
+ "400": "Response4xx",
732
+ "401": "Response4xx",
733
+ "409": "Response4xx",
734
+ "500": None,
735
+ }
736
+ response_data = self.api_client.call_api(*_param, _request_timeout=_request_timeout)
737
+ response_data.read()
738
+ return self.api_client.response_deserialize(
739
+ response_data=response_data,
740
+ response_types_map=_response_types_map,
741
+ ).data
742
+
743
+ @validate_call
744
+ def create_telemetry_router_with_http_info(
745
+ self,
746
+ project_id: Annotated[UUID, Field(description="The STACKIT portal project UUID the resource is located in.")],
747
+ region_id: Annotated[StrictStr, Field(description="The STACKIT region name the resource is located in.")],
748
+ create_telemetry_router_payload: CreateTelemetryRouterPayload,
749
+ _request_timeout: Union[
750
+ None,
751
+ Annotated[StrictFloat, Field(gt=0)],
752
+ Tuple[Annotated[StrictFloat, Field(gt=0)], Annotated[StrictFloat, Field(gt=0)]],
753
+ ] = None,
754
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
755
+ _content_type: Optional[StrictStr] = None,
756
+ _headers: Optional[Dict[StrictStr, Any]] = None,
757
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
758
+ ) -> ApiResponse[TelemetryRouterResponse]:
759
+ """create_telemetry_router
760
+
761
+ Creates the new Telemetry Router within the project.
762
+
763
+ :param project_id: The STACKIT portal project UUID the resource is located in. (required)
764
+ :type project_id: UUID
765
+ :param region_id: The STACKIT region name the resource is located in. (required)
766
+ :type region_id: str
767
+ :param create_telemetry_router_payload: (required)
768
+ :type create_telemetry_router_payload: CreateTelemetryRouterPayload
769
+ :param _request_timeout: timeout setting for this request. If one
770
+ number provided, it will be total request
771
+ timeout. It can also be a pair (tuple) of
772
+ (connection, read) timeouts.
773
+ :type _request_timeout: int, tuple(int, int), optional
774
+ :param _request_auth: set to override the auth_settings for an a single
775
+ request; this effectively ignores the
776
+ authentication in the spec for a single request.
777
+ :type _request_auth: dict, optional
778
+ :param _content_type: force content-type for the request.
779
+ :type _content_type: str, Optional
780
+ :param _headers: set to override the headers for a single
781
+ request; this effectively ignores the headers
782
+ in the spec for a single request.
783
+ :type _headers: dict, optional
784
+ :param _host_index: set to override the host_index for a single
785
+ request; this effectively ignores the host_index
786
+ in the spec for a single request.
787
+ :type _host_index: int, optional
788
+ :return: Returns the result object.
789
+ """ # noqa: E501
790
+
791
+ _param = self._create_telemetry_router_serialize(
792
+ project_id=project_id,
793
+ region_id=region_id,
794
+ create_telemetry_router_payload=create_telemetry_router_payload,
795
+ _request_auth=_request_auth,
796
+ _content_type=_content_type,
797
+ _headers=_headers,
798
+ _host_index=_host_index,
799
+ )
800
+
801
+ _response_types_map: Dict[str, Optional[str]] = {
802
+ "201": "TelemetryRouterResponse",
803
+ "400": "Response4xx",
804
+ "401": "Response4xx",
805
+ "409": "Response4xx",
806
+ "500": None,
807
+ }
808
+ response_data = self.api_client.call_api(*_param, _request_timeout=_request_timeout)
809
+ response_data.read()
810
+ return self.api_client.response_deserialize(
811
+ response_data=response_data,
812
+ response_types_map=_response_types_map,
813
+ )
814
+
815
+ @validate_call
816
+ def create_telemetry_router_without_preload_content(
817
+ self,
818
+ project_id: Annotated[UUID, Field(description="The STACKIT portal project UUID the resource is located in.")],
819
+ region_id: Annotated[StrictStr, Field(description="The STACKIT region name the resource is located in.")],
820
+ create_telemetry_router_payload: CreateTelemetryRouterPayload,
821
+ _request_timeout: Union[
822
+ None,
823
+ Annotated[StrictFloat, Field(gt=0)],
824
+ Tuple[Annotated[StrictFloat, Field(gt=0)], Annotated[StrictFloat, Field(gt=0)]],
825
+ ] = None,
826
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
827
+ _content_type: Optional[StrictStr] = None,
828
+ _headers: Optional[Dict[StrictStr, Any]] = None,
829
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
830
+ ) -> RESTResponseType:
831
+ """create_telemetry_router
832
+
833
+ Creates the new Telemetry Router within the project.
834
+
835
+ :param project_id: The STACKIT portal project UUID the resource is located in. (required)
836
+ :type project_id: UUID
837
+ :param region_id: The STACKIT region name the resource is located in. (required)
838
+ :type region_id: str
839
+ :param create_telemetry_router_payload: (required)
840
+ :type create_telemetry_router_payload: CreateTelemetryRouterPayload
841
+ :param _request_timeout: timeout setting for this request. If one
842
+ number provided, it will be total request
843
+ timeout. It can also be a pair (tuple) of
844
+ (connection, read) timeouts.
845
+ :type _request_timeout: int, tuple(int, int), optional
846
+ :param _request_auth: set to override the auth_settings for an a single
847
+ request; this effectively ignores the
848
+ authentication in the spec for a single request.
849
+ :type _request_auth: dict, optional
850
+ :param _content_type: force content-type for the request.
851
+ :type _content_type: str, Optional
852
+ :param _headers: set to override the headers for a single
853
+ request; this effectively ignores the headers
854
+ in the spec for a single request.
855
+ :type _headers: dict, optional
856
+ :param _host_index: set to override the host_index for a single
857
+ request; this effectively ignores the host_index
858
+ in the spec for a single request.
859
+ :type _host_index: int, optional
860
+ :return: Returns the result object.
861
+ """ # noqa: E501
862
+
863
+ _param = self._create_telemetry_router_serialize(
864
+ project_id=project_id,
865
+ region_id=region_id,
866
+ create_telemetry_router_payload=create_telemetry_router_payload,
867
+ _request_auth=_request_auth,
868
+ _content_type=_content_type,
869
+ _headers=_headers,
870
+ _host_index=_host_index,
871
+ )
872
+
873
+ _response_types_map: Dict[str, Optional[str]] = {
874
+ "201": "TelemetryRouterResponse",
875
+ "400": "Response4xx",
876
+ "401": "Response4xx",
877
+ "409": "Response4xx",
878
+ "500": None,
879
+ }
880
+ response_data = self.api_client.call_api(*_param, _request_timeout=_request_timeout)
881
+ return response_data.response
882
+
883
+ def _create_telemetry_router_serialize(
884
+ self,
885
+ project_id,
886
+ region_id,
887
+ create_telemetry_router_payload,
888
+ _request_auth,
889
+ _content_type,
890
+ _headers,
891
+ _host_index,
892
+ ) -> RequestSerialized:
893
+
894
+ _host = None
895
+
896
+ _collection_formats: Dict[str, str] = {}
897
+
898
+ _path_params: Dict[str, str] = {}
899
+ _query_params: List[Tuple[str, str]] = []
900
+ _header_params: Dict[str, Optional[str]] = _headers or {}
901
+ _form_params: List[Tuple[str, str]] = []
902
+ _files: Dict[str, Union[str, bytes, List[str], List[bytes], List[Tuple[str, bytes]]]] = {}
903
+ _body_params: Optional[bytes] = None
904
+
905
+ # process the path parameters
906
+ if project_id is not None:
907
+ _path_params["projectId"] = project_id
908
+ if region_id is not None:
909
+ _path_params["regionId"] = region_id
910
+ # process the query parameters
911
+ # process the header parameters
912
+ # process the form parameters
913
+ # process the body parameter
914
+ if create_telemetry_router_payload is not None:
915
+ _body_params = create_telemetry_router_payload
916
+
917
+ # set the HTTP header `Accept`
918
+ if "Accept" not in _header_params:
919
+ _header_params["Accept"] = self.api_client.select_header_accept(["application/json"])
920
+
921
+ # set the HTTP header `Content-Type`
922
+ if _content_type:
923
+ _header_params["Content-Type"] = _content_type
924
+ else:
925
+ _default_content_type = self.api_client.select_header_content_type(["application/json"])
926
+ if _default_content_type is not None:
927
+ _header_params["Content-Type"] = _default_content_type
928
+
929
+ # authentication setting
930
+ _auth_settings: List[str] = []
931
+
932
+ return self.api_client.param_serialize(
933
+ method="POST",
934
+ resource_path="/v1beta/projects/{projectId}/regions/{regionId}/telemetry-routers",
935
+ path_params=_path_params,
936
+ query_params=_query_params,
937
+ header_params=_header_params,
938
+ body=_body_params,
939
+ post_params=_form_params,
940
+ files=_files,
941
+ auth_settings=_auth_settings,
942
+ collection_formats=_collection_formats,
943
+ _host=_host,
944
+ _request_auth=_request_auth,
945
+ )
946
+
947
+ @validate_call
948
+ def delete_access_token(
949
+ self,
950
+ project_id: Annotated[UUID, Field(description="The STACKIT portal project UUID the resource is located in.")],
951
+ region_id: Annotated[StrictStr, Field(description="The STACKIT region name the resource is located in.")],
952
+ telemetry_router_id: Annotated[UUID, Field(description="The Telemetry Router UUID.")],
953
+ access_token_id: Annotated[UUID, Field(description="The Access Token UUID.")],
954
+ _request_timeout: Union[
955
+ None,
956
+ Annotated[StrictFloat, Field(gt=0)],
957
+ Tuple[Annotated[StrictFloat, Field(gt=0)], Annotated[StrictFloat, Field(gt=0)]],
958
+ ] = None,
959
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
960
+ _content_type: Optional[StrictStr] = None,
961
+ _headers: Optional[Dict[StrictStr, Any]] = None,
962
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
963
+ ) -> None:
964
+ """delete_access_token
965
+
966
+ Delete an access token for the given Telemetry Router by its ID.
967
+
968
+ :param project_id: The STACKIT portal project UUID the resource is located in. (required)
969
+ :type project_id: UUID
970
+ :param region_id: The STACKIT region name the resource is located in. (required)
971
+ :type region_id: str
972
+ :param telemetry_router_id: The Telemetry Router UUID. (required)
973
+ :type telemetry_router_id: UUID
974
+ :param access_token_id: The Access Token UUID. (required)
975
+ :type access_token_id: UUID
976
+ :param _request_timeout: timeout setting for this request. If one
977
+ number provided, it will be total request
978
+ timeout. It can also be a pair (tuple) of
979
+ (connection, read) timeouts.
980
+ :type _request_timeout: int, tuple(int, int), optional
981
+ :param _request_auth: set to override the auth_settings for an a single
982
+ request; this effectively ignores the
983
+ authentication in the spec for a single request.
984
+ :type _request_auth: dict, optional
985
+ :param _content_type: force content-type for the request.
986
+ :type _content_type: str, Optional
987
+ :param _headers: set to override the headers for a single
988
+ request; this effectively ignores the headers
989
+ in the spec for a single request.
990
+ :type _headers: dict, optional
991
+ :param _host_index: set to override the host_index for a single
992
+ request; this effectively ignores the host_index
993
+ in the spec for a single request.
994
+ :type _host_index: int, optional
995
+ :return: Returns the result object.
996
+ """ # noqa: E501
997
+
998
+ _param = self._delete_access_token_serialize(
999
+ project_id=project_id,
1000
+ region_id=region_id,
1001
+ telemetry_router_id=telemetry_router_id,
1002
+ access_token_id=access_token_id,
1003
+ _request_auth=_request_auth,
1004
+ _content_type=_content_type,
1005
+ _headers=_headers,
1006
+ _host_index=_host_index,
1007
+ )
1008
+
1009
+ _response_types_map: Dict[str, Optional[str]] = {
1010
+ "204": None,
1011
+ "400": "Response4xx",
1012
+ "401": "Response4xx",
1013
+ "404": None,
1014
+ "409": "Response4xx",
1015
+ "500": None,
1016
+ }
1017
+ response_data = self.api_client.call_api(*_param, _request_timeout=_request_timeout)
1018
+ response_data.read()
1019
+ return self.api_client.response_deserialize(
1020
+ response_data=response_data,
1021
+ response_types_map=_response_types_map,
1022
+ ).data
1023
+
1024
+ @validate_call
1025
+ def delete_access_token_with_http_info(
1026
+ self,
1027
+ project_id: Annotated[UUID, Field(description="The STACKIT portal project UUID the resource is located in.")],
1028
+ region_id: Annotated[StrictStr, Field(description="The STACKIT region name the resource is located in.")],
1029
+ telemetry_router_id: Annotated[UUID, Field(description="The Telemetry Router UUID.")],
1030
+ access_token_id: Annotated[UUID, Field(description="The Access Token UUID.")],
1031
+ _request_timeout: Union[
1032
+ None,
1033
+ Annotated[StrictFloat, Field(gt=0)],
1034
+ Tuple[Annotated[StrictFloat, Field(gt=0)], Annotated[StrictFloat, Field(gt=0)]],
1035
+ ] = None,
1036
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
1037
+ _content_type: Optional[StrictStr] = None,
1038
+ _headers: Optional[Dict[StrictStr, Any]] = None,
1039
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
1040
+ ) -> ApiResponse[None]:
1041
+ """delete_access_token
1042
+
1043
+ Delete an access token for the given Telemetry Router by its ID.
1044
+
1045
+ :param project_id: The STACKIT portal project UUID the resource is located in. (required)
1046
+ :type project_id: UUID
1047
+ :param region_id: The STACKIT region name the resource is located in. (required)
1048
+ :type region_id: str
1049
+ :param telemetry_router_id: The Telemetry Router UUID. (required)
1050
+ :type telemetry_router_id: UUID
1051
+ :param access_token_id: The Access Token UUID. (required)
1052
+ :type access_token_id: UUID
1053
+ :param _request_timeout: timeout setting for this request. If one
1054
+ number provided, it will be total request
1055
+ timeout. It can also be a pair (tuple) of
1056
+ (connection, read) timeouts.
1057
+ :type _request_timeout: int, tuple(int, int), optional
1058
+ :param _request_auth: set to override the auth_settings for an a single
1059
+ request; this effectively ignores the
1060
+ authentication in the spec for a single request.
1061
+ :type _request_auth: dict, optional
1062
+ :param _content_type: force content-type for the request.
1063
+ :type _content_type: str, Optional
1064
+ :param _headers: set to override the headers for a single
1065
+ request; this effectively ignores the headers
1066
+ in the spec for a single request.
1067
+ :type _headers: dict, optional
1068
+ :param _host_index: set to override the host_index for a single
1069
+ request; this effectively ignores the host_index
1070
+ in the spec for a single request.
1071
+ :type _host_index: int, optional
1072
+ :return: Returns the result object.
1073
+ """ # noqa: E501
1074
+
1075
+ _param = self._delete_access_token_serialize(
1076
+ project_id=project_id,
1077
+ region_id=region_id,
1078
+ telemetry_router_id=telemetry_router_id,
1079
+ access_token_id=access_token_id,
1080
+ _request_auth=_request_auth,
1081
+ _content_type=_content_type,
1082
+ _headers=_headers,
1083
+ _host_index=_host_index,
1084
+ )
1085
+
1086
+ _response_types_map: Dict[str, Optional[str]] = {
1087
+ "204": None,
1088
+ "400": "Response4xx",
1089
+ "401": "Response4xx",
1090
+ "404": None,
1091
+ "409": "Response4xx",
1092
+ "500": None,
1093
+ }
1094
+ response_data = self.api_client.call_api(*_param, _request_timeout=_request_timeout)
1095
+ response_data.read()
1096
+ return self.api_client.response_deserialize(
1097
+ response_data=response_data,
1098
+ response_types_map=_response_types_map,
1099
+ )
1100
+
1101
+ @validate_call
1102
+ def delete_access_token_without_preload_content(
1103
+ self,
1104
+ project_id: Annotated[UUID, Field(description="The STACKIT portal project UUID the resource is located in.")],
1105
+ region_id: Annotated[StrictStr, Field(description="The STACKIT region name the resource is located in.")],
1106
+ telemetry_router_id: Annotated[UUID, Field(description="The Telemetry Router UUID.")],
1107
+ access_token_id: Annotated[UUID, Field(description="The Access Token UUID.")],
1108
+ _request_timeout: Union[
1109
+ None,
1110
+ Annotated[StrictFloat, Field(gt=0)],
1111
+ Tuple[Annotated[StrictFloat, Field(gt=0)], Annotated[StrictFloat, Field(gt=0)]],
1112
+ ] = None,
1113
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
1114
+ _content_type: Optional[StrictStr] = None,
1115
+ _headers: Optional[Dict[StrictStr, Any]] = None,
1116
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
1117
+ ) -> RESTResponseType:
1118
+ """delete_access_token
1119
+
1120
+ Delete an access token for the given Telemetry Router by its ID.
1121
+
1122
+ :param project_id: The STACKIT portal project UUID the resource is located in. (required)
1123
+ :type project_id: UUID
1124
+ :param region_id: The STACKIT region name the resource is located in. (required)
1125
+ :type region_id: str
1126
+ :param telemetry_router_id: The Telemetry Router UUID. (required)
1127
+ :type telemetry_router_id: UUID
1128
+ :param access_token_id: The Access Token UUID. (required)
1129
+ :type access_token_id: UUID
1130
+ :param _request_timeout: timeout setting for this request. If one
1131
+ number provided, it will be total request
1132
+ timeout. It can also be a pair (tuple) of
1133
+ (connection, read) timeouts.
1134
+ :type _request_timeout: int, tuple(int, int), optional
1135
+ :param _request_auth: set to override the auth_settings for an a single
1136
+ request; this effectively ignores the
1137
+ authentication in the spec for a single request.
1138
+ :type _request_auth: dict, optional
1139
+ :param _content_type: force content-type for the request.
1140
+ :type _content_type: str, Optional
1141
+ :param _headers: set to override the headers for a single
1142
+ request; this effectively ignores the headers
1143
+ in the spec for a single request.
1144
+ :type _headers: dict, optional
1145
+ :param _host_index: set to override the host_index for a single
1146
+ request; this effectively ignores the host_index
1147
+ in the spec for a single request.
1148
+ :type _host_index: int, optional
1149
+ :return: Returns the result object.
1150
+ """ # noqa: E501
1151
+
1152
+ _param = self._delete_access_token_serialize(
1153
+ project_id=project_id,
1154
+ region_id=region_id,
1155
+ telemetry_router_id=telemetry_router_id,
1156
+ access_token_id=access_token_id,
1157
+ _request_auth=_request_auth,
1158
+ _content_type=_content_type,
1159
+ _headers=_headers,
1160
+ _host_index=_host_index,
1161
+ )
1162
+
1163
+ _response_types_map: Dict[str, Optional[str]] = {
1164
+ "204": None,
1165
+ "400": "Response4xx",
1166
+ "401": "Response4xx",
1167
+ "404": None,
1168
+ "409": "Response4xx",
1169
+ "500": None,
1170
+ }
1171
+ response_data = self.api_client.call_api(*_param, _request_timeout=_request_timeout)
1172
+ return response_data.response
1173
+
1174
+ def _delete_access_token_serialize(
1175
+ self,
1176
+ project_id,
1177
+ region_id,
1178
+ telemetry_router_id,
1179
+ access_token_id,
1180
+ _request_auth,
1181
+ _content_type,
1182
+ _headers,
1183
+ _host_index,
1184
+ ) -> RequestSerialized:
1185
+
1186
+ _host = None
1187
+
1188
+ _collection_formats: Dict[str, str] = {}
1189
+
1190
+ _path_params: Dict[str, str] = {}
1191
+ _query_params: List[Tuple[str, str]] = []
1192
+ _header_params: Dict[str, Optional[str]] = _headers or {}
1193
+ _form_params: List[Tuple[str, str]] = []
1194
+ _files: Dict[str, Union[str, bytes, List[str], List[bytes], List[Tuple[str, bytes]]]] = {}
1195
+ _body_params: Optional[bytes] = None
1196
+
1197
+ # process the path parameters
1198
+ if project_id is not None:
1199
+ _path_params["projectId"] = project_id
1200
+ if region_id is not None:
1201
+ _path_params["regionId"] = region_id
1202
+ if telemetry_router_id is not None:
1203
+ _path_params["telemetryRouterId"] = telemetry_router_id
1204
+ if access_token_id is not None:
1205
+ _path_params["accessTokenId"] = access_token_id
1206
+ # process the query parameters
1207
+ # process the header parameters
1208
+ # process the form parameters
1209
+ # process the body parameter
1210
+
1211
+ # set the HTTP header `Accept`
1212
+ if "Accept" not in _header_params:
1213
+ _header_params["Accept"] = self.api_client.select_header_accept(["application/json"])
1214
+
1215
+ # authentication setting
1216
+ _auth_settings: List[str] = []
1217
+
1218
+ return self.api_client.param_serialize(
1219
+ method="DELETE",
1220
+ resource_path="/v1beta/projects/{projectId}/regions/{regionId}/telemetry-routers/{telemetryRouterId}/access-tokens/{accessTokenId}",
1221
+ path_params=_path_params,
1222
+ query_params=_query_params,
1223
+ header_params=_header_params,
1224
+ body=_body_params,
1225
+ post_params=_form_params,
1226
+ files=_files,
1227
+ auth_settings=_auth_settings,
1228
+ collection_formats=_collection_formats,
1229
+ _host=_host,
1230
+ _request_auth=_request_auth,
1231
+ )
1232
+
1233
+ @validate_call
1234
+ def delete_destination(
1235
+ self,
1236
+ project_id: Annotated[UUID, Field(description="The STACKIT portal project UUID the resource is located in.")],
1237
+ region_id: Annotated[StrictStr, Field(description="The STACKIT region name the resource is located in.")],
1238
+ telemetry_router_id: Annotated[UUID, Field(description="The Telemetry Router UUID.")],
1239
+ destination_id: Annotated[UUID, Field(description="The Destination UUID.")],
1240
+ _request_timeout: Union[
1241
+ None,
1242
+ Annotated[StrictFloat, Field(gt=0)],
1243
+ Tuple[Annotated[StrictFloat, Field(gt=0)], Annotated[StrictFloat, Field(gt=0)]],
1244
+ ] = None,
1245
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
1246
+ _content_type: Optional[StrictStr] = None,
1247
+ _headers: Optional[Dict[StrictStr, Any]] = None,
1248
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
1249
+ ) -> None:
1250
+ """delete_destination
1251
+
1252
+ Deletes the given Destination.
1253
+
1254
+ :param project_id: The STACKIT portal project UUID the resource is located in. (required)
1255
+ :type project_id: UUID
1256
+ :param region_id: The STACKIT region name the resource is located in. (required)
1257
+ :type region_id: str
1258
+ :param telemetry_router_id: The Telemetry Router UUID. (required)
1259
+ :type telemetry_router_id: UUID
1260
+ :param destination_id: The Destination UUID. (required)
1261
+ :type destination_id: UUID
1262
+ :param _request_timeout: timeout setting for this request. If one
1263
+ number provided, it will be total request
1264
+ timeout. It can also be a pair (tuple) of
1265
+ (connection, read) timeouts.
1266
+ :type _request_timeout: int, tuple(int, int), optional
1267
+ :param _request_auth: set to override the auth_settings for an a single
1268
+ request; this effectively ignores the
1269
+ authentication in the spec for a single request.
1270
+ :type _request_auth: dict, optional
1271
+ :param _content_type: force content-type for the request.
1272
+ :type _content_type: str, Optional
1273
+ :param _headers: set to override the headers for a single
1274
+ request; this effectively ignores the headers
1275
+ in the spec for a single request.
1276
+ :type _headers: dict, optional
1277
+ :param _host_index: set to override the host_index for a single
1278
+ request; this effectively ignores the host_index
1279
+ in the spec for a single request.
1280
+ :type _host_index: int, optional
1281
+ :return: Returns the result object.
1282
+ """ # noqa: E501
1283
+
1284
+ _param = self._delete_destination_serialize(
1285
+ project_id=project_id,
1286
+ region_id=region_id,
1287
+ telemetry_router_id=telemetry_router_id,
1288
+ destination_id=destination_id,
1289
+ _request_auth=_request_auth,
1290
+ _content_type=_content_type,
1291
+ _headers=_headers,
1292
+ _host_index=_host_index,
1293
+ )
1294
+
1295
+ _response_types_map: Dict[str, Optional[str]] = {
1296
+ "204": None,
1297
+ "400": "Response4xx",
1298
+ "401": "Response4xx",
1299
+ "404": None,
1300
+ "409": "Response4xx",
1301
+ "500": None,
1302
+ }
1303
+ response_data = self.api_client.call_api(*_param, _request_timeout=_request_timeout)
1304
+ response_data.read()
1305
+ return self.api_client.response_deserialize(
1306
+ response_data=response_data,
1307
+ response_types_map=_response_types_map,
1308
+ ).data
1309
+
1310
+ @validate_call
1311
+ def delete_destination_with_http_info(
1312
+ self,
1313
+ project_id: Annotated[UUID, Field(description="The STACKIT portal project UUID the resource is located in.")],
1314
+ region_id: Annotated[StrictStr, Field(description="The STACKIT region name the resource is located in.")],
1315
+ telemetry_router_id: Annotated[UUID, Field(description="The Telemetry Router UUID.")],
1316
+ destination_id: Annotated[UUID, Field(description="The Destination UUID.")],
1317
+ _request_timeout: Union[
1318
+ None,
1319
+ Annotated[StrictFloat, Field(gt=0)],
1320
+ Tuple[Annotated[StrictFloat, Field(gt=0)], Annotated[StrictFloat, Field(gt=0)]],
1321
+ ] = None,
1322
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
1323
+ _content_type: Optional[StrictStr] = None,
1324
+ _headers: Optional[Dict[StrictStr, Any]] = None,
1325
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
1326
+ ) -> ApiResponse[None]:
1327
+ """delete_destination
1328
+
1329
+ Deletes the given Destination.
1330
+
1331
+ :param project_id: The STACKIT portal project UUID the resource is located in. (required)
1332
+ :type project_id: UUID
1333
+ :param region_id: The STACKIT region name the resource is located in. (required)
1334
+ :type region_id: str
1335
+ :param telemetry_router_id: The Telemetry Router UUID. (required)
1336
+ :type telemetry_router_id: UUID
1337
+ :param destination_id: The Destination UUID. (required)
1338
+ :type destination_id: UUID
1339
+ :param _request_timeout: timeout setting for this request. If one
1340
+ number provided, it will be total request
1341
+ timeout. It can also be a pair (tuple) of
1342
+ (connection, read) timeouts.
1343
+ :type _request_timeout: int, tuple(int, int), optional
1344
+ :param _request_auth: set to override the auth_settings for an a single
1345
+ request; this effectively ignores the
1346
+ authentication in the spec for a single request.
1347
+ :type _request_auth: dict, optional
1348
+ :param _content_type: force content-type for the request.
1349
+ :type _content_type: str, Optional
1350
+ :param _headers: set to override the headers for a single
1351
+ request; this effectively ignores the headers
1352
+ in the spec for a single request.
1353
+ :type _headers: dict, optional
1354
+ :param _host_index: set to override the host_index for a single
1355
+ request; this effectively ignores the host_index
1356
+ in the spec for a single request.
1357
+ :type _host_index: int, optional
1358
+ :return: Returns the result object.
1359
+ """ # noqa: E501
1360
+
1361
+ _param = self._delete_destination_serialize(
1362
+ project_id=project_id,
1363
+ region_id=region_id,
1364
+ telemetry_router_id=telemetry_router_id,
1365
+ destination_id=destination_id,
1366
+ _request_auth=_request_auth,
1367
+ _content_type=_content_type,
1368
+ _headers=_headers,
1369
+ _host_index=_host_index,
1370
+ )
1371
+
1372
+ _response_types_map: Dict[str, Optional[str]] = {
1373
+ "204": None,
1374
+ "400": "Response4xx",
1375
+ "401": "Response4xx",
1376
+ "404": None,
1377
+ "409": "Response4xx",
1378
+ "500": None,
1379
+ }
1380
+ response_data = self.api_client.call_api(*_param, _request_timeout=_request_timeout)
1381
+ response_data.read()
1382
+ return self.api_client.response_deserialize(
1383
+ response_data=response_data,
1384
+ response_types_map=_response_types_map,
1385
+ )
1386
+
1387
+ @validate_call
1388
+ def delete_destination_without_preload_content(
1389
+ self,
1390
+ project_id: Annotated[UUID, Field(description="The STACKIT portal project UUID the resource is located in.")],
1391
+ region_id: Annotated[StrictStr, Field(description="The STACKIT region name the resource is located in.")],
1392
+ telemetry_router_id: Annotated[UUID, Field(description="The Telemetry Router UUID.")],
1393
+ destination_id: Annotated[UUID, Field(description="The Destination UUID.")],
1394
+ _request_timeout: Union[
1395
+ None,
1396
+ Annotated[StrictFloat, Field(gt=0)],
1397
+ Tuple[Annotated[StrictFloat, Field(gt=0)], Annotated[StrictFloat, Field(gt=0)]],
1398
+ ] = None,
1399
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
1400
+ _content_type: Optional[StrictStr] = None,
1401
+ _headers: Optional[Dict[StrictStr, Any]] = None,
1402
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
1403
+ ) -> RESTResponseType:
1404
+ """delete_destination
1405
+
1406
+ Deletes the given Destination.
1407
+
1408
+ :param project_id: The STACKIT portal project UUID the resource is located in. (required)
1409
+ :type project_id: UUID
1410
+ :param region_id: The STACKIT region name the resource is located in. (required)
1411
+ :type region_id: str
1412
+ :param telemetry_router_id: The Telemetry Router UUID. (required)
1413
+ :type telemetry_router_id: UUID
1414
+ :param destination_id: The Destination UUID. (required)
1415
+ :type destination_id: UUID
1416
+ :param _request_timeout: timeout setting for this request. If one
1417
+ number provided, it will be total request
1418
+ timeout. It can also be a pair (tuple) of
1419
+ (connection, read) timeouts.
1420
+ :type _request_timeout: int, tuple(int, int), optional
1421
+ :param _request_auth: set to override the auth_settings for an a single
1422
+ request; this effectively ignores the
1423
+ authentication in the spec for a single request.
1424
+ :type _request_auth: dict, optional
1425
+ :param _content_type: force content-type for the request.
1426
+ :type _content_type: str, Optional
1427
+ :param _headers: set to override the headers for a single
1428
+ request; this effectively ignores the headers
1429
+ in the spec for a single request.
1430
+ :type _headers: dict, optional
1431
+ :param _host_index: set to override the host_index for a single
1432
+ request; this effectively ignores the host_index
1433
+ in the spec for a single request.
1434
+ :type _host_index: int, optional
1435
+ :return: Returns the result object.
1436
+ """ # noqa: E501
1437
+
1438
+ _param = self._delete_destination_serialize(
1439
+ project_id=project_id,
1440
+ region_id=region_id,
1441
+ telemetry_router_id=telemetry_router_id,
1442
+ destination_id=destination_id,
1443
+ _request_auth=_request_auth,
1444
+ _content_type=_content_type,
1445
+ _headers=_headers,
1446
+ _host_index=_host_index,
1447
+ )
1448
+
1449
+ _response_types_map: Dict[str, Optional[str]] = {
1450
+ "204": None,
1451
+ "400": "Response4xx",
1452
+ "401": "Response4xx",
1453
+ "404": None,
1454
+ "409": "Response4xx",
1455
+ "500": None,
1456
+ }
1457
+ response_data = self.api_client.call_api(*_param, _request_timeout=_request_timeout)
1458
+ return response_data.response
1459
+
1460
+ def _delete_destination_serialize(
1461
+ self,
1462
+ project_id,
1463
+ region_id,
1464
+ telemetry_router_id,
1465
+ destination_id,
1466
+ _request_auth,
1467
+ _content_type,
1468
+ _headers,
1469
+ _host_index,
1470
+ ) -> RequestSerialized:
1471
+
1472
+ _host = None
1473
+
1474
+ _collection_formats: Dict[str, str] = {}
1475
+
1476
+ _path_params: Dict[str, str] = {}
1477
+ _query_params: List[Tuple[str, str]] = []
1478
+ _header_params: Dict[str, Optional[str]] = _headers or {}
1479
+ _form_params: List[Tuple[str, str]] = []
1480
+ _files: Dict[str, Union[str, bytes, List[str], List[bytes], List[Tuple[str, bytes]]]] = {}
1481
+ _body_params: Optional[bytes] = None
1482
+
1483
+ # process the path parameters
1484
+ if project_id is not None:
1485
+ _path_params["projectId"] = project_id
1486
+ if region_id is not None:
1487
+ _path_params["regionId"] = region_id
1488
+ if telemetry_router_id is not None:
1489
+ _path_params["telemetryRouterId"] = telemetry_router_id
1490
+ if destination_id is not None:
1491
+ _path_params["destinationId"] = destination_id
1492
+ # process the query parameters
1493
+ # process the header parameters
1494
+ # process the form parameters
1495
+ # process the body parameter
1496
+
1497
+ # set the HTTP header `Accept`
1498
+ if "Accept" not in _header_params:
1499
+ _header_params["Accept"] = self.api_client.select_header_accept(["application/json"])
1500
+
1501
+ # authentication setting
1502
+ _auth_settings: List[str] = []
1503
+
1504
+ return self.api_client.param_serialize(
1505
+ method="DELETE",
1506
+ resource_path="/v1beta/projects/{projectId}/regions/{regionId}/telemetry-routers/{telemetryRouterId}/destinations/{destinationId}",
1507
+ path_params=_path_params,
1508
+ query_params=_query_params,
1509
+ header_params=_header_params,
1510
+ body=_body_params,
1511
+ post_params=_form_params,
1512
+ files=_files,
1513
+ auth_settings=_auth_settings,
1514
+ collection_formats=_collection_formats,
1515
+ _host=_host,
1516
+ _request_auth=_request_auth,
1517
+ )
1518
+
1519
+ @validate_call
1520
+ def delete_telemetry_router(
1521
+ self,
1522
+ project_id: Annotated[UUID, Field(description="The STACKIT portal project UUID the resource is located in.")],
1523
+ region_id: Annotated[StrictStr, Field(description="The STACKIT region name the resource is located in.")],
1524
+ telemetry_router_id: Annotated[UUID, Field(description="The Telemetry Router UUID.")],
1525
+ force: Annotated[
1526
+ Optional[StrictBool],
1527
+ Field(
1528
+ description="If true, deletes all child resources. If false, the resource remains in a 'deletion state' while child resources exist."
1529
+ ),
1530
+ ] = None,
1531
+ _request_timeout: Union[
1532
+ None,
1533
+ Annotated[StrictFloat, Field(gt=0)],
1534
+ Tuple[Annotated[StrictFloat, Field(gt=0)], Annotated[StrictFloat, Field(gt=0)]],
1535
+ ] = None,
1536
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
1537
+ _content_type: Optional[StrictStr] = None,
1538
+ _headers: Optional[Dict[StrictStr, Any]] = None,
1539
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
1540
+ ) -> None:
1541
+ """delete_telemetry_router
1542
+
1543
+ Deletes the given Telemetry Router.
1544
+
1545
+ :param project_id: The STACKIT portal project UUID the resource is located in. (required)
1546
+ :type project_id: UUID
1547
+ :param region_id: The STACKIT region name the resource is located in. (required)
1548
+ :type region_id: str
1549
+ :param telemetry_router_id: The Telemetry Router UUID. (required)
1550
+ :type telemetry_router_id: UUID
1551
+ :param force: If true, deletes all child resources. If false, the resource remains in a 'deletion state' while child resources exist.
1552
+ :type force: bool
1553
+ :param _request_timeout: timeout setting for this request. If one
1554
+ number provided, it will be total request
1555
+ timeout. It can also be a pair (tuple) of
1556
+ (connection, read) timeouts.
1557
+ :type _request_timeout: int, tuple(int, int), optional
1558
+ :param _request_auth: set to override the auth_settings for an a single
1559
+ request; this effectively ignores the
1560
+ authentication in the spec for a single request.
1561
+ :type _request_auth: dict, optional
1562
+ :param _content_type: force content-type for the request.
1563
+ :type _content_type: str, Optional
1564
+ :param _headers: set to override the headers for a single
1565
+ request; this effectively ignores the headers
1566
+ in the spec for a single request.
1567
+ :type _headers: dict, optional
1568
+ :param _host_index: set to override the host_index for a single
1569
+ request; this effectively ignores the host_index
1570
+ in the spec for a single request.
1571
+ :type _host_index: int, optional
1572
+ :return: Returns the result object.
1573
+ """ # noqa: E501
1574
+
1575
+ _param = self._delete_telemetry_router_serialize(
1576
+ project_id=project_id,
1577
+ region_id=region_id,
1578
+ telemetry_router_id=telemetry_router_id,
1579
+ force=force,
1580
+ _request_auth=_request_auth,
1581
+ _content_type=_content_type,
1582
+ _headers=_headers,
1583
+ _host_index=_host_index,
1584
+ )
1585
+
1586
+ _response_types_map: Dict[str, Optional[str]] = {
1587
+ "204": None,
1588
+ "400": "Response4xx",
1589
+ "401": "Response4xx",
1590
+ "404": None,
1591
+ "409": "Response4xx",
1592
+ "500": None,
1593
+ }
1594
+ response_data = self.api_client.call_api(*_param, _request_timeout=_request_timeout)
1595
+ response_data.read()
1596
+ return self.api_client.response_deserialize(
1597
+ response_data=response_data,
1598
+ response_types_map=_response_types_map,
1599
+ ).data
1600
+
1601
+ @validate_call
1602
+ def delete_telemetry_router_with_http_info(
1603
+ self,
1604
+ project_id: Annotated[UUID, Field(description="The STACKIT portal project UUID the resource is located in.")],
1605
+ region_id: Annotated[StrictStr, Field(description="The STACKIT region name the resource is located in.")],
1606
+ telemetry_router_id: Annotated[UUID, Field(description="The Telemetry Router UUID.")],
1607
+ force: Annotated[
1608
+ Optional[StrictBool],
1609
+ Field(
1610
+ description="If true, deletes all child resources. If false, the resource remains in a 'deletion state' while child resources exist."
1611
+ ),
1612
+ ] = None,
1613
+ _request_timeout: Union[
1614
+ None,
1615
+ Annotated[StrictFloat, Field(gt=0)],
1616
+ Tuple[Annotated[StrictFloat, Field(gt=0)], Annotated[StrictFloat, Field(gt=0)]],
1617
+ ] = None,
1618
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
1619
+ _content_type: Optional[StrictStr] = None,
1620
+ _headers: Optional[Dict[StrictStr, Any]] = None,
1621
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
1622
+ ) -> ApiResponse[None]:
1623
+ """delete_telemetry_router
1624
+
1625
+ Deletes the given Telemetry Router.
1626
+
1627
+ :param project_id: The STACKIT portal project UUID the resource is located in. (required)
1628
+ :type project_id: UUID
1629
+ :param region_id: The STACKIT region name the resource is located in. (required)
1630
+ :type region_id: str
1631
+ :param telemetry_router_id: The Telemetry Router UUID. (required)
1632
+ :type telemetry_router_id: UUID
1633
+ :param force: If true, deletes all child resources. If false, the resource remains in a 'deletion state' while child resources exist.
1634
+ :type force: bool
1635
+ :param _request_timeout: timeout setting for this request. If one
1636
+ number provided, it will be total request
1637
+ timeout. It can also be a pair (tuple) of
1638
+ (connection, read) timeouts.
1639
+ :type _request_timeout: int, tuple(int, int), optional
1640
+ :param _request_auth: set to override the auth_settings for an a single
1641
+ request; this effectively ignores the
1642
+ authentication in the spec for a single request.
1643
+ :type _request_auth: dict, optional
1644
+ :param _content_type: force content-type for the request.
1645
+ :type _content_type: str, Optional
1646
+ :param _headers: set to override the headers for a single
1647
+ request; this effectively ignores the headers
1648
+ in the spec for a single request.
1649
+ :type _headers: dict, optional
1650
+ :param _host_index: set to override the host_index for a single
1651
+ request; this effectively ignores the host_index
1652
+ in the spec for a single request.
1653
+ :type _host_index: int, optional
1654
+ :return: Returns the result object.
1655
+ """ # noqa: E501
1656
+
1657
+ _param = self._delete_telemetry_router_serialize(
1658
+ project_id=project_id,
1659
+ region_id=region_id,
1660
+ telemetry_router_id=telemetry_router_id,
1661
+ force=force,
1662
+ _request_auth=_request_auth,
1663
+ _content_type=_content_type,
1664
+ _headers=_headers,
1665
+ _host_index=_host_index,
1666
+ )
1667
+
1668
+ _response_types_map: Dict[str, Optional[str]] = {
1669
+ "204": None,
1670
+ "400": "Response4xx",
1671
+ "401": "Response4xx",
1672
+ "404": None,
1673
+ "409": "Response4xx",
1674
+ "500": None,
1675
+ }
1676
+ response_data = self.api_client.call_api(*_param, _request_timeout=_request_timeout)
1677
+ response_data.read()
1678
+ return self.api_client.response_deserialize(
1679
+ response_data=response_data,
1680
+ response_types_map=_response_types_map,
1681
+ )
1682
+
1683
+ @validate_call
1684
+ def delete_telemetry_router_without_preload_content(
1685
+ self,
1686
+ project_id: Annotated[UUID, Field(description="The STACKIT portal project UUID the resource is located in.")],
1687
+ region_id: Annotated[StrictStr, Field(description="The STACKIT region name the resource is located in.")],
1688
+ telemetry_router_id: Annotated[UUID, Field(description="The Telemetry Router UUID.")],
1689
+ force: Annotated[
1690
+ Optional[StrictBool],
1691
+ Field(
1692
+ description="If true, deletes all child resources. If false, the resource remains in a 'deletion state' while child resources exist."
1693
+ ),
1694
+ ] = None,
1695
+ _request_timeout: Union[
1696
+ None,
1697
+ Annotated[StrictFloat, Field(gt=0)],
1698
+ Tuple[Annotated[StrictFloat, Field(gt=0)], Annotated[StrictFloat, Field(gt=0)]],
1699
+ ] = None,
1700
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
1701
+ _content_type: Optional[StrictStr] = None,
1702
+ _headers: Optional[Dict[StrictStr, Any]] = None,
1703
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
1704
+ ) -> RESTResponseType:
1705
+ """delete_telemetry_router
1706
+
1707
+ Deletes the given Telemetry Router.
1708
+
1709
+ :param project_id: The STACKIT portal project UUID the resource is located in. (required)
1710
+ :type project_id: UUID
1711
+ :param region_id: The STACKIT region name the resource is located in. (required)
1712
+ :type region_id: str
1713
+ :param telemetry_router_id: The Telemetry Router UUID. (required)
1714
+ :type telemetry_router_id: UUID
1715
+ :param force: If true, deletes all child resources. If false, the resource remains in a 'deletion state' while child resources exist.
1716
+ :type force: bool
1717
+ :param _request_timeout: timeout setting for this request. If one
1718
+ number provided, it will be total request
1719
+ timeout. It can also be a pair (tuple) of
1720
+ (connection, read) timeouts.
1721
+ :type _request_timeout: int, tuple(int, int), optional
1722
+ :param _request_auth: set to override the auth_settings for an a single
1723
+ request; this effectively ignores the
1724
+ authentication in the spec for a single request.
1725
+ :type _request_auth: dict, optional
1726
+ :param _content_type: force content-type for the request.
1727
+ :type _content_type: str, Optional
1728
+ :param _headers: set to override the headers for a single
1729
+ request; this effectively ignores the headers
1730
+ in the spec for a single request.
1731
+ :type _headers: dict, optional
1732
+ :param _host_index: set to override the host_index for a single
1733
+ request; this effectively ignores the host_index
1734
+ in the spec for a single request.
1735
+ :type _host_index: int, optional
1736
+ :return: Returns the result object.
1737
+ """ # noqa: E501
1738
+
1739
+ _param = self._delete_telemetry_router_serialize(
1740
+ project_id=project_id,
1741
+ region_id=region_id,
1742
+ telemetry_router_id=telemetry_router_id,
1743
+ force=force,
1744
+ _request_auth=_request_auth,
1745
+ _content_type=_content_type,
1746
+ _headers=_headers,
1747
+ _host_index=_host_index,
1748
+ )
1749
+
1750
+ _response_types_map: Dict[str, Optional[str]] = {
1751
+ "204": None,
1752
+ "400": "Response4xx",
1753
+ "401": "Response4xx",
1754
+ "404": None,
1755
+ "409": "Response4xx",
1756
+ "500": None,
1757
+ }
1758
+ response_data = self.api_client.call_api(*_param, _request_timeout=_request_timeout)
1759
+ return response_data.response
1760
+
1761
+ def _delete_telemetry_router_serialize(
1762
+ self,
1763
+ project_id,
1764
+ region_id,
1765
+ telemetry_router_id,
1766
+ force,
1767
+ _request_auth,
1768
+ _content_type,
1769
+ _headers,
1770
+ _host_index,
1771
+ ) -> RequestSerialized:
1772
+
1773
+ _host = None
1774
+
1775
+ _collection_formats: Dict[str, str] = {}
1776
+
1777
+ _path_params: Dict[str, str] = {}
1778
+ _query_params: List[Tuple[str, str]] = []
1779
+ _header_params: Dict[str, Optional[str]] = _headers or {}
1780
+ _form_params: List[Tuple[str, str]] = []
1781
+ _files: Dict[str, Union[str, bytes, List[str], List[bytes], List[Tuple[str, bytes]]]] = {}
1782
+ _body_params: Optional[bytes] = None
1783
+
1784
+ # process the path parameters
1785
+ if project_id is not None:
1786
+ _path_params["projectId"] = project_id
1787
+ if region_id is not None:
1788
+ _path_params["regionId"] = region_id
1789
+ if telemetry_router_id is not None:
1790
+ _path_params["telemetryRouterId"] = telemetry_router_id
1791
+ # process the query parameters
1792
+ if force is not None:
1793
+
1794
+ _query_params.append(("force", force))
1795
+
1796
+ # process the header parameters
1797
+ # process the form parameters
1798
+ # process the body parameter
1799
+
1800
+ # set the HTTP header `Accept`
1801
+ if "Accept" not in _header_params:
1802
+ _header_params["Accept"] = self.api_client.select_header_accept(["application/json"])
1803
+
1804
+ # authentication setting
1805
+ _auth_settings: List[str] = []
1806
+
1807
+ return self.api_client.param_serialize(
1808
+ method="DELETE",
1809
+ resource_path="/v1beta/projects/{projectId}/regions/{regionId}/telemetry-routers/{telemetryRouterId}",
1810
+ path_params=_path_params,
1811
+ query_params=_query_params,
1812
+ header_params=_header_params,
1813
+ body=_body_params,
1814
+ post_params=_form_params,
1815
+ files=_files,
1816
+ auth_settings=_auth_settings,
1817
+ collection_formats=_collection_formats,
1818
+ _host=_host,
1819
+ _request_auth=_request_auth,
1820
+ )
1821
+
1822
+ @validate_call
1823
+ def get_access_token(
1824
+ self,
1825
+ project_id: Annotated[UUID, Field(description="The STACKIT portal project UUID the resource is located in.")],
1826
+ region_id: Annotated[StrictStr, Field(description="The STACKIT region name the resource is located in.")],
1827
+ telemetry_router_id: Annotated[UUID, Field(description="The Telemetry Router UUID.")],
1828
+ access_token_id: Annotated[UUID, Field(description="The Access Token UUID.")],
1829
+ _request_timeout: Union[
1830
+ None,
1831
+ Annotated[StrictFloat, Field(gt=0)],
1832
+ Tuple[Annotated[StrictFloat, Field(gt=0)], Annotated[StrictFloat, Field(gt=0)]],
1833
+ ] = None,
1834
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
1835
+ _content_type: Optional[StrictStr] = None,
1836
+ _headers: Optional[Dict[StrictStr, Any]] = None,
1837
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
1838
+ ) -> GetAccessTokenResponse:
1839
+ """get_access_token
1840
+
1841
+ Get an access token for the given Telemetry Router by its ID.
1842
+
1843
+ :param project_id: The STACKIT portal project UUID the resource is located in. (required)
1844
+ :type project_id: UUID
1845
+ :param region_id: The STACKIT region name the resource is located in. (required)
1846
+ :type region_id: str
1847
+ :param telemetry_router_id: The Telemetry Router UUID. (required)
1848
+ :type telemetry_router_id: UUID
1849
+ :param access_token_id: The Access Token UUID. (required)
1850
+ :type access_token_id: UUID
1851
+ :param _request_timeout: timeout setting for this request. If one
1852
+ number provided, it will be total request
1853
+ timeout. It can also be a pair (tuple) of
1854
+ (connection, read) timeouts.
1855
+ :type _request_timeout: int, tuple(int, int), optional
1856
+ :param _request_auth: set to override the auth_settings for an a single
1857
+ request; this effectively ignores the
1858
+ authentication in the spec for a single request.
1859
+ :type _request_auth: dict, optional
1860
+ :param _content_type: force content-type for the request.
1861
+ :type _content_type: str, Optional
1862
+ :param _headers: set to override the headers for a single
1863
+ request; this effectively ignores the headers
1864
+ in the spec for a single request.
1865
+ :type _headers: dict, optional
1866
+ :param _host_index: set to override the host_index for a single
1867
+ request; this effectively ignores the host_index
1868
+ in the spec for a single request.
1869
+ :type _host_index: int, optional
1870
+ :return: Returns the result object.
1871
+ """ # noqa: E501
1872
+
1873
+ _param = self._get_access_token_serialize(
1874
+ project_id=project_id,
1875
+ region_id=region_id,
1876
+ telemetry_router_id=telemetry_router_id,
1877
+ access_token_id=access_token_id,
1878
+ _request_auth=_request_auth,
1879
+ _content_type=_content_type,
1880
+ _headers=_headers,
1881
+ _host_index=_host_index,
1882
+ )
1883
+
1884
+ _response_types_map: Dict[str, Optional[str]] = {
1885
+ "200": "GetAccessTokenResponse",
1886
+ "400": "Response4xx",
1887
+ "401": "Response4xx",
1888
+ "404": None,
1889
+ "409": "Response4xx",
1890
+ "500": None,
1891
+ }
1892
+ response_data = self.api_client.call_api(*_param, _request_timeout=_request_timeout)
1893
+ response_data.read()
1894
+ return self.api_client.response_deserialize(
1895
+ response_data=response_data,
1896
+ response_types_map=_response_types_map,
1897
+ ).data
1898
+
1899
+ @validate_call
1900
+ def get_access_token_with_http_info(
1901
+ self,
1902
+ project_id: Annotated[UUID, Field(description="The STACKIT portal project UUID the resource is located in.")],
1903
+ region_id: Annotated[StrictStr, Field(description="The STACKIT region name the resource is located in.")],
1904
+ telemetry_router_id: Annotated[UUID, Field(description="The Telemetry Router UUID.")],
1905
+ access_token_id: Annotated[UUID, Field(description="The Access Token UUID.")],
1906
+ _request_timeout: Union[
1907
+ None,
1908
+ Annotated[StrictFloat, Field(gt=0)],
1909
+ Tuple[Annotated[StrictFloat, Field(gt=0)], Annotated[StrictFloat, Field(gt=0)]],
1910
+ ] = None,
1911
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
1912
+ _content_type: Optional[StrictStr] = None,
1913
+ _headers: Optional[Dict[StrictStr, Any]] = None,
1914
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
1915
+ ) -> ApiResponse[GetAccessTokenResponse]:
1916
+ """get_access_token
1917
+
1918
+ Get an access token for the given Telemetry Router by its ID.
1919
+
1920
+ :param project_id: The STACKIT portal project UUID the resource is located in. (required)
1921
+ :type project_id: UUID
1922
+ :param region_id: The STACKIT region name the resource is located in. (required)
1923
+ :type region_id: str
1924
+ :param telemetry_router_id: The Telemetry Router UUID. (required)
1925
+ :type telemetry_router_id: UUID
1926
+ :param access_token_id: The Access Token UUID. (required)
1927
+ :type access_token_id: UUID
1928
+ :param _request_timeout: timeout setting for this request. If one
1929
+ number provided, it will be total request
1930
+ timeout. It can also be a pair (tuple) of
1931
+ (connection, read) timeouts.
1932
+ :type _request_timeout: int, tuple(int, int), optional
1933
+ :param _request_auth: set to override the auth_settings for an a single
1934
+ request; this effectively ignores the
1935
+ authentication in the spec for a single request.
1936
+ :type _request_auth: dict, optional
1937
+ :param _content_type: force content-type for the request.
1938
+ :type _content_type: str, Optional
1939
+ :param _headers: set to override the headers for a single
1940
+ request; this effectively ignores the headers
1941
+ in the spec for a single request.
1942
+ :type _headers: dict, optional
1943
+ :param _host_index: set to override the host_index for a single
1944
+ request; this effectively ignores the host_index
1945
+ in the spec for a single request.
1946
+ :type _host_index: int, optional
1947
+ :return: Returns the result object.
1948
+ """ # noqa: E501
1949
+
1950
+ _param = self._get_access_token_serialize(
1951
+ project_id=project_id,
1952
+ region_id=region_id,
1953
+ telemetry_router_id=telemetry_router_id,
1954
+ access_token_id=access_token_id,
1955
+ _request_auth=_request_auth,
1956
+ _content_type=_content_type,
1957
+ _headers=_headers,
1958
+ _host_index=_host_index,
1959
+ )
1960
+
1961
+ _response_types_map: Dict[str, Optional[str]] = {
1962
+ "200": "GetAccessTokenResponse",
1963
+ "400": "Response4xx",
1964
+ "401": "Response4xx",
1965
+ "404": None,
1966
+ "409": "Response4xx",
1967
+ "500": None,
1968
+ }
1969
+ response_data = self.api_client.call_api(*_param, _request_timeout=_request_timeout)
1970
+ response_data.read()
1971
+ return self.api_client.response_deserialize(
1972
+ response_data=response_data,
1973
+ response_types_map=_response_types_map,
1974
+ )
1975
+
1976
+ @validate_call
1977
+ def get_access_token_without_preload_content(
1978
+ self,
1979
+ project_id: Annotated[UUID, Field(description="The STACKIT portal project UUID the resource is located in.")],
1980
+ region_id: Annotated[StrictStr, Field(description="The STACKIT region name the resource is located in.")],
1981
+ telemetry_router_id: Annotated[UUID, Field(description="The Telemetry Router UUID.")],
1982
+ access_token_id: Annotated[UUID, Field(description="The Access Token UUID.")],
1983
+ _request_timeout: Union[
1984
+ None,
1985
+ Annotated[StrictFloat, Field(gt=0)],
1986
+ Tuple[Annotated[StrictFloat, Field(gt=0)], Annotated[StrictFloat, Field(gt=0)]],
1987
+ ] = None,
1988
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
1989
+ _content_type: Optional[StrictStr] = None,
1990
+ _headers: Optional[Dict[StrictStr, Any]] = None,
1991
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
1992
+ ) -> RESTResponseType:
1993
+ """get_access_token
1994
+
1995
+ Get an access token for the given Telemetry Router by its ID.
1996
+
1997
+ :param project_id: The STACKIT portal project UUID the resource is located in. (required)
1998
+ :type project_id: UUID
1999
+ :param region_id: The STACKIT region name the resource is located in. (required)
2000
+ :type region_id: str
2001
+ :param telemetry_router_id: The Telemetry Router UUID. (required)
2002
+ :type telemetry_router_id: UUID
2003
+ :param access_token_id: The Access Token UUID. (required)
2004
+ :type access_token_id: UUID
2005
+ :param _request_timeout: timeout setting for this request. If one
2006
+ number provided, it will be total request
2007
+ timeout. It can also be a pair (tuple) of
2008
+ (connection, read) timeouts.
2009
+ :type _request_timeout: int, tuple(int, int), optional
2010
+ :param _request_auth: set to override the auth_settings for an a single
2011
+ request; this effectively ignores the
2012
+ authentication in the spec for a single request.
2013
+ :type _request_auth: dict, optional
2014
+ :param _content_type: force content-type for the request.
2015
+ :type _content_type: str, Optional
2016
+ :param _headers: set to override the headers for a single
2017
+ request; this effectively ignores the headers
2018
+ in the spec for a single request.
2019
+ :type _headers: dict, optional
2020
+ :param _host_index: set to override the host_index for a single
2021
+ request; this effectively ignores the host_index
2022
+ in the spec for a single request.
2023
+ :type _host_index: int, optional
2024
+ :return: Returns the result object.
2025
+ """ # noqa: E501
2026
+
2027
+ _param = self._get_access_token_serialize(
2028
+ project_id=project_id,
2029
+ region_id=region_id,
2030
+ telemetry_router_id=telemetry_router_id,
2031
+ access_token_id=access_token_id,
2032
+ _request_auth=_request_auth,
2033
+ _content_type=_content_type,
2034
+ _headers=_headers,
2035
+ _host_index=_host_index,
2036
+ )
2037
+
2038
+ _response_types_map: Dict[str, Optional[str]] = {
2039
+ "200": "GetAccessTokenResponse",
2040
+ "400": "Response4xx",
2041
+ "401": "Response4xx",
2042
+ "404": None,
2043
+ "409": "Response4xx",
2044
+ "500": None,
2045
+ }
2046
+ response_data = self.api_client.call_api(*_param, _request_timeout=_request_timeout)
2047
+ return response_data.response
2048
+
2049
+ def _get_access_token_serialize(
2050
+ self,
2051
+ project_id,
2052
+ region_id,
2053
+ telemetry_router_id,
2054
+ access_token_id,
2055
+ _request_auth,
2056
+ _content_type,
2057
+ _headers,
2058
+ _host_index,
2059
+ ) -> RequestSerialized:
2060
+
2061
+ _host = None
2062
+
2063
+ _collection_formats: Dict[str, str] = {}
2064
+
2065
+ _path_params: Dict[str, str] = {}
2066
+ _query_params: List[Tuple[str, str]] = []
2067
+ _header_params: Dict[str, Optional[str]] = _headers or {}
2068
+ _form_params: List[Tuple[str, str]] = []
2069
+ _files: Dict[str, Union[str, bytes, List[str], List[bytes], List[Tuple[str, bytes]]]] = {}
2070
+ _body_params: Optional[bytes] = None
2071
+
2072
+ # process the path parameters
2073
+ if project_id is not None:
2074
+ _path_params["projectId"] = project_id
2075
+ if region_id is not None:
2076
+ _path_params["regionId"] = region_id
2077
+ if telemetry_router_id is not None:
2078
+ _path_params["telemetryRouterId"] = telemetry_router_id
2079
+ if access_token_id is not None:
2080
+ _path_params["accessTokenId"] = access_token_id
2081
+ # process the query parameters
2082
+ # process the header parameters
2083
+ # process the form parameters
2084
+ # process the body parameter
2085
+
2086
+ # set the HTTP header `Accept`
2087
+ if "Accept" not in _header_params:
2088
+ _header_params["Accept"] = self.api_client.select_header_accept(["application/json"])
2089
+
2090
+ # authentication setting
2091
+ _auth_settings: List[str] = []
2092
+
2093
+ return self.api_client.param_serialize(
2094
+ method="GET",
2095
+ resource_path="/v1beta/projects/{projectId}/regions/{regionId}/telemetry-routers/{telemetryRouterId}/access-tokens/{accessTokenId}",
2096
+ path_params=_path_params,
2097
+ query_params=_query_params,
2098
+ header_params=_header_params,
2099
+ body=_body_params,
2100
+ post_params=_form_params,
2101
+ files=_files,
2102
+ auth_settings=_auth_settings,
2103
+ collection_formats=_collection_formats,
2104
+ _host=_host,
2105
+ _request_auth=_request_auth,
2106
+ )
2107
+
2108
+ @validate_call
2109
+ def get_destination(
2110
+ self,
2111
+ project_id: Annotated[UUID, Field(description="The STACKIT portal project UUID the resource is located in.")],
2112
+ region_id: Annotated[StrictStr, Field(description="The STACKIT region name the resource is located in.")],
2113
+ telemetry_router_id: Annotated[UUID, Field(description="The Telemetry Router UUID.")],
2114
+ destination_id: Annotated[UUID, Field(description="The Destination UUID.")],
2115
+ _request_timeout: Union[
2116
+ None,
2117
+ Annotated[StrictFloat, Field(gt=0)],
2118
+ Tuple[Annotated[StrictFloat, Field(gt=0)], Annotated[StrictFloat, Field(gt=0)]],
2119
+ ] = None,
2120
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
2121
+ _content_type: Optional[StrictStr] = None,
2122
+ _headers: Optional[Dict[StrictStr, Any]] = None,
2123
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
2124
+ ) -> DestinationResponse:
2125
+ """get_destination
2126
+
2127
+ Returns the details for the given destination.
2128
+
2129
+ :param project_id: The STACKIT portal project UUID the resource is located in. (required)
2130
+ :type project_id: UUID
2131
+ :param region_id: The STACKIT region name the resource is located in. (required)
2132
+ :type region_id: str
2133
+ :param telemetry_router_id: The Telemetry Router UUID. (required)
2134
+ :type telemetry_router_id: UUID
2135
+ :param destination_id: The Destination UUID. (required)
2136
+ :type destination_id: UUID
2137
+ :param _request_timeout: timeout setting for this request. If one
2138
+ number provided, it will be total request
2139
+ timeout. It can also be a pair (tuple) of
2140
+ (connection, read) timeouts.
2141
+ :type _request_timeout: int, tuple(int, int), optional
2142
+ :param _request_auth: set to override the auth_settings for an a single
2143
+ request; this effectively ignores the
2144
+ authentication in the spec for a single request.
2145
+ :type _request_auth: dict, optional
2146
+ :param _content_type: force content-type for the request.
2147
+ :type _content_type: str, Optional
2148
+ :param _headers: set to override the headers for a single
2149
+ request; this effectively ignores the headers
2150
+ in the spec for a single request.
2151
+ :type _headers: dict, optional
2152
+ :param _host_index: set to override the host_index for a single
2153
+ request; this effectively ignores the host_index
2154
+ in the spec for a single request.
2155
+ :type _host_index: int, optional
2156
+ :return: Returns the result object.
2157
+ """ # noqa: E501
2158
+
2159
+ _param = self._get_destination_serialize(
2160
+ project_id=project_id,
2161
+ region_id=region_id,
2162
+ telemetry_router_id=telemetry_router_id,
2163
+ destination_id=destination_id,
2164
+ _request_auth=_request_auth,
2165
+ _content_type=_content_type,
2166
+ _headers=_headers,
2167
+ _host_index=_host_index,
2168
+ )
2169
+
2170
+ _response_types_map: Dict[str, Optional[str]] = {
2171
+ "200": "DestinationResponse",
2172
+ "400": "Response4xx",
2173
+ "401": "Response4xx",
2174
+ "404": None,
2175
+ "500": None,
2176
+ }
2177
+ response_data = self.api_client.call_api(*_param, _request_timeout=_request_timeout)
2178
+ response_data.read()
2179
+ return self.api_client.response_deserialize(
2180
+ response_data=response_data,
2181
+ response_types_map=_response_types_map,
2182
+ ).data
2183
+
2184
+ @validate_call
2185
+ def get_destination_with_http_info(
2186
+ self,
2187
+ project_id: Annotated[UUID, Field(description="The STACKIT portal project UUID the resource is located in.")],
2188
+ region_id: Annotated[StrictStr, Field(description="The STACKIT region name the resource is located in.")],
2189
+ telemetry_router_id: Annotated[UUID, Field(description="The Telemetry Router UUID.")],
2190
+ destination_id: Annotated[UUID, Field(description="The Destination UUID.")],
2191
+ _request_timeout: Union[
2192
+ None,
2193
+ Annotated[StrictFloat, Field(gt=0)],
2194
+ Tuple[Annotated[StrictFloat, Field(gt=0)], Annotated[StrictFloat, Field(gt=0)]],
2195
+ ] = None,
2196
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
2197
+ _content_type: Optional[StrictStr] = None,
2198
+ _headers: Optional[Dict[StrictStr, Any]] = None,
2199
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
2200
+ ) -> ApiResponse[DestinationResponse]:
2201
+ """get_destination
2202
+
2203
+ Returns the details for the given destination.
2204
+
2205
+ :param project_id: The STACKIT portal project UUID the resource is located in. (required)
2206
+ :type project_id: UUID
2207
+ :param region_id: The STACKIT region name the resource is located in. (required)
2208
+ :type region_id: str
2209
+ :param telemetry_router_id: The Telemetry Router UUID. (required)
2210
+ :type telemetry_router_id: UUID
2211
+ :param destination_id: The Destination UUID. (required)
2212
+ :type destination_id: UUID
2213
+ :param _request_timeout: timeout setting for this request. If one
2214
+ number provided, it will be total request
2215
+ timeout. It can also be a pair (tuple) of
2216
+ (connection, read) timeouts.
2217
+ :type _request_timeout: int, tuple(int, int), optional
2218
+ :param _request_auth: set to override the auth_settings for an a single
2219
+ request; this effectively ignores the
2220
+ authentication in the spec for a single request.
2221
+ :type _request_auth: dict, optional
2222
+ :param _content_type: force content-type for the request.
2223
+ :type _content_type: str, Optional
2224
+ :param _headers: set to override the headers for a single
2225
+ request; this effectively ignores the headers
2226
+ in the spec for a single request.
2227
+ :type _headers: dict, optional
2228
+ :param _host_index: set to override the host_index for a single
2229
+ request; this effectively ignores the host_index
2230
+ in the spec for a single request.
2231
+ :type _host_index: int, optional
2232
+ :return: Returns the result object.
2233
+ """ # noqa: E501
2234
+
2235
+ _param = self._get_destination_serialize(
2236
+ project_id=project_id,
2237
+ region_id=region_id,
2238
+ telemetry_router_id=telemetry_router_id,
2239
+ destination_id=destination_id,
2240
+ _request_auth=_request_auth,
2241
+ _content_type=_content_type,
2242
+ _headers=_headers,
2243
+ _host_index=_host_index,
2244
+ )
2245
+
2246
+ _response_types_map: Dict[str, Optional[str]] = {
2247
+ "200": "DestinationResponse",
2248
+ "400": "Response4xx",
2249
+ "401": "Response4xx",
2250
+ "404": None,
2251
+ "500": None,
2252
+ }
2253
+ response_data = self.api_client.call_api(*_param, _request_timeout=_request_timeout)
2254
+ response_data.read()
2255
+ return self.api_client.response_deserialize(
2256
+ response_data=response_data,
2257
+ response_types_map=_response_types_map,
2258
+ )
2259
+
2260
+ @validate_call
2261
+ def get_destination_without_preload_content(
2262
+ self,
2263
+ project_id: Annotated[UUID, Field(description="The STACKIT portal project UUID the resource is located in.")],
2264
+ region_id: Annotated[StrictStr, Field(description="The STACKIT region name the resource is located in.")],
2265
+ telemetry_router_id: Annotated[UUID, Field(description="The Telemetry Router UUID.")],
2266
+ destination_id: Annotated[UUID, Field(description="The Destination UUID.")],
2267
+ _request_timeout: Union[
2268
+ None,
2269
+ Annotated[StrictFloat, Field(gt=0)],
2270
+ Tuple[Annotated[StrictFloat, Field(gt=0)], Annotated[StrictFloat, Field(gt=0)]],
2271
+ ] = None,
2272
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
2273
+ _content_type: Optional[StrictStr] = None,
2274
+ _headers: Optional[Dict[StrictStr, Any]] = None,
2275
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
2276
+ ) -> RESTResponseType:
2277
+ """get_destination
2278
+
2279
+ Returns the details for the given destination.
2280
+
2281
+ :param project_id: The STACKIT portal project UUID the resource is located in. (required)
2282
+ :type project_id: UUID
2283
+ :param region_id: The STACKIT region name the resource is located in. (required)
2284
+ :type region_id: str
2285
+ :param telemetry_router_id: The Telemetry Router UUID. (required)
2286
+ :type telemetry_router_id: UUID
2287
+ :param destination_id: The Destination UUID. (required)
2288
+ :type destination_id: UUID
2289
+ :param _request_timeout: timeout setting for this request. If one
2290
+ number provided, it will be total request
2291
+ timeout. It can also be a pair (tuple) of
2292
+ (connection, read) timeouts.
2293
+ :type _request_timeout: int, tuple(int, int), optional
2294
+ :param _request_auth: set to override the auth_settings for an a single
2295
+ request; this effectively ignores the
2296
+ authentication in the spec for a single request.
2297
+ :type _request_auth: dict, optional
2298
+ :param _content_type: force content-type for the request.
2299
+ :type _content_type: str, Optional
2300
+ :param _headers: set to override the headers for a single
2301
+ request; this effectively ignores the headers
2302
+ in the spec for a single request.
2303
+ :type _headers: dict, optional
2304
+ :param _host_index: set to override the host_index for a single
2305
+ request; this effectively ignores the host_index
2306
+ in the spec for a single request.
2307
+ :type _host_index: int, optional
2308
+ :return: Returns the result object.
2309
+ """ # noqa: E501
2310
+
2311
+ _param = self._get_destination_serialize(
2312
+ project_id=project_id,
2313
+ region_id=region_id,
2314
+ telemetry_router_id=telemetry_router_id,
2315
+ destination_id=destination_id,
2316
+ _request_auth=_request_auth,
2317
+ _content_type=_content_type,
2318
+ _headers=_headers,
2319
+ _host_index=_host_index,
2320
+ )
2321
+
2322
+ _response_types_map: Dict[str, Optional[str]] = {
2323
+ "200": "DestinationResponse",
2324
+ "400": "Response4xx",
2325
+ "401": "Response4xx",
2326
+ "404": None,
2327
+ "500": None,
2328
+ }
2329
+ response_data = self.api_client.call_api(*_param, _request_timeout=_request_timeout)
2330
+ return response_data.response
2331
+
2332
+ def _get_destination_serialize(
2333
+ self,
2334
+ project_id,
2335
+ region_id,
2336
+ telemetry_router_id,
2337
+ destination_id,
2338
+ _request_auth,
2339
+ _content_type,
2340
+ _headers,
2341
+ _host_index,
2342
+ ) -> RequestSerialized:
2343
+
2344
+ _host = None
2345
+
2346
+ _collection_formats: Dict[str, str] = {}
2347
+
2348
+ _path_params: Dict[str, str] = {}
2349
+ _query_params: List[Tuple[str, str]] = []
2350
+ _header_params: Dict[str, Optional[str]] = _headers or {}
2351
+ _form_params: List[Tuple[str, str]] = []
2352
+ _files: Dict[str, Union[str, bytes, List[str], List[bytes], List[Tuple[str, bytes]]]] = {}
2353
+ _body_params: Optional[bytes] = None
2354
+
2355
+ # process the path parameters
2356
+ if project_id is not None:
2357
+ _path_params["projectId"] = project_id
2358
+ if region_id is not None:
2359
+ _path_params["regionId"] = region_id
2360
+ if telemetry_router_id is not None:
2361
+ _path_params["telemetryRouterId"] = telemetry_router_id
2362
+ if destination_id is not None:
2363
+ _path_params["destinationId"] = destination_id
2364
+ # process the query parameters
2365
+ # process the header parameters
2366
+ # process the form parameters
2367
+ # process the body parameter
2368
+
2369
+ # set the HTTP header `Accept`
2370
+ if "Accept" not in _header_params:
2371
+ _header_params["Accept"] = self.api_client.select_header_accept(["application/json"])
2372
+
2373
+ # authentication setting
2374
+ _auth_settings: List[str] = []
2375
+
2376
+ return self.api_client.param_serialize(
2377
+ method="GET",
2378
+ resource_path="/v1beta/projects/{projectId}/regions/{regionId}/telemetry-routers/{telemetryRouterId}/destinations/{destinationId}",
2379
+ path_params=_path_params,
2380
+ query_params=_query_params,
2381
+ header_params=_header_params,
2382
+ body=_body_params,
2383
+ post_params=_form_params,
2384
+ files=_files,
2385
+ auth_settings=_auth_settings,
2386
+ collection_formats=_collection_formats,
2387
+ _host=_host,
2388
+ _request_auth=_request_auth,
2389
+ )
2390
+
2391
+ @validate_call
2392
+ def get_telemetry_router(
2393
+ self,
2394
+ project_id: Annotated[UUID, Field(description="The STACKIT portal project UUID the resource is located in.")],
2395
+ region_id: Annotated[StrictStr, Field(description="The STACKIT region name the resource is located in.")],
2396
+ telemetry_router_id: Annotated[UUID, Field(description="The Telemetry Router UUID.")],
2397
+ _request_timeout: Union[
2398
+ None,
2399
+ Annotated[StrictFloat, Field(gt=0)],
2400
+ Tuple[Annotated[StrictFloat, Field(gt=0)], Annotated[StrictFloat, Field(gt=0)]],
2401
+ ] = None,
2402
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
2403
+ _content_type: Optional[StrictStr] = None,
2404
+ _headers: Optional[Dict[StrictStr, Any]] = None,
2405
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
2406
+ ) -> TelemetryRouterResponse:
2407
+ """get_telemetry_router
2408
+
2409
+ Returns the details for the given Telemetry Router.
2410
+
2411
+ :param project_id: The STACKIT portal project UUID the resource is located in. (required)
2412
+ :type project_id: UUID
2413
+ :param region_id: The STACKIT region name the resource is located in. (required)
2414
+ :type region_id: str
2415
+ :param telemetry_router_id: The Telemetry Router UUID. (required)
2416
+ :type telemetry_router_id: UUID
2417
+ :param _request_timeout: timeout setting for this request. If one
2418
+ number provided, it will be total request
2419
+ timeout. It can also be a pair (tuple) of
2420
+ (connection, read) timeouts.
2421
+ :type _request_timeout: int, tuple(int, int), optional
2422
+ :param _request_auth: set to override the auth_settings for an a single
2423
+ request; this effectively ignores the
2424
+ authentication in the spec for a single request.
2425
+ :type _request_auth: dict, optional
2426
+ :param _content_type: force content-type for the request.
2427
+ :type _content_type: str, Optional
2428
+ :param _headers: set to override the headers for a single
2429
+ request; this effectively ignores the headers
2430
+ in the spec for a single request.
2431
+ :type _headers: dict, optional
2432
+ :param _host_index: set to override the host_index for a single
2433
+ request; this effectively ignores the host_index
2434
+ in the spec for a single request.
2435
+ :type _host_index: int, optional
2436
+ :return: Returns the result object.
2437
+ """ # noqa: E501
2438
+
2439
+ _param = self._get_telemetry_router_serialize(
2440
+ project_id=project_id,
2441
+ region_id=region_id,
2442
+ telemetry_router_id=telemetry_router_id,
2443
+ _request_auth=_request_auth,
2444
+ _content_type=_content_type,
2445
+ _headers=_headers,
2446
+ _host_index=_host_index,
2447
+ )
2448
+
2449
+ _response_types_map: Dict[str, Optional[str]] = {
2450
+ "200": "TelemetryRouterResponse",
2451
+ "400": "Response4xx",
2452
+ "401": "Response4xx",
2453
+ "409": "Response4xx",
2454
+ "500": None,
2455
+ }
2456
+ response_data = self.api_client.call_api(*_param, _request_timeout=_request_timeout)
2457
+ response_data.read()
2458
+ return self.api_client.response_deserialize(
2459
+ response_data=response_data,
2460
+ response_types_map=_response_types_map,
2461
+ ).data
2462
+
2463
+ @validate_call
2464
+ def get_telemetry_router_with_http_info(
2465
+ self,
2466
+ project_id: Annotated[UUID, Field(description="The STACKIT portal project UUID the resource is located in.")],
2467
+ region_id: Annotated[StrictStr, Field(description="The STACKIT region name the resource is located in.")],
2468
+ telemetry_router_id: Annotated[UUID, Field(description="The Telemetry Router UUID.")],
2469
+ _request_timeout: Union[
2470
+ None,
2471
+ Annotated[StrictFloat, Field(gt=0)],
2472
+ Tuple[Annotated[StrictFloat, Field(gt=0)], Annotated[StrictFloat, Field(gt=0)]],
2473
+ ] = None,
2474
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
2475
+ _content_type: Optional[StrictStr] = None,
2476
+ _headers: Optional[Dict[StrictStr, Any]] = None,
2477
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
2478
+ ) -> ApiResponse[TelemetryRouterResponse]:
2479
+ """get_telemetry_router
2480
+
2481
+ Returns the details for the given Telemetry Router.
2482
+
2483
+ :param project_id: The STACKIT portal project UUID the resource is located in. (required)
2484
+ :type project_id: UUID
2485
+ :param region_id: The STACKIT region name the resource is located in. (required)
2486
+ :type region_id: str
2487
+ :param telemetry_router_id: The Telemetry Router UUID. (required)
2488
+ :type telemetry_router_id: UUID
2489
+ :param _request_timeout: timeout setting for this request. If one
2490
+ number provided, it will be total request
2491
+ timeout. It can also be a pair (tuple) of
2492
+ (connection, read) timeouts.
2493
+ :type _request_timeout: int, tuple(int, int), optional
2494
+ :param _request_auth: set to override the auth_settings for an a single
2495
+ request; this effectively ignores the
2496
+ authentication in the spec for a single request.
2497
+ :type _request_auth: dict, optional
2498
+ :param _content_type: force content-type for the request.
2499
+ :type _content_type: str, Optional
2500
+ :param _headers: set to override the headers for a single
2501
+ request; this effectively ignores the headers
2502
+ in the spec for a single request.
2503
+ :type _headers: dict, optional
2504
+ :param _host_index: set to override the host_index for a single
2505
+ request; this effectively ignores the host_index
2506
+ in the spec for a single request.
2507
+ :type _host_index: int, optional
2508
+ :return: Returns the result object.
2509
+ """ # noqa: E501
2510
+
2511
+ _param = self._get_telemetry_router_serialize(
2512
+ project_id=project_id,
2513
+ region_id=region_id,
2514
+ telemetry_router_id=telemetry_router_id,
2515
+ _request_auth=_request_auth,
2516
+ _content_type=_content_type,
2517
+ _headers=_headers,
2518
+ _host_index=_host_index,
2519
+ )
2520
+
2521
+ _response_types_map: Dict[str, Optional[str]] = {
2522
+ "200": "TelemetryRouterResponse",
2523
+ "400": "Response4xx",
2524
+ "401": "Response4xx",
2525
+ "409": "Response4xx",
2526
+ "500": None,
2527
+ }
2528
+ response_data = self.api_client.call_api(*_param, _request_timeout=_request_timeout)
2529
+ response_data.read()
2530
+ return self.api_client.response_deserialize(
2531
+ response_data=response_data,
2532
+ response_types_map=_response_types_map,
2533
+ )
2534
+
2535
+ @validate_call
2536
+ def get_telemetry_router_without_preload_content(
2537
+ self,
2538
+ project_id: Annotated[UUID, Field(description="The STACKIT portal project UUID the resource is located in.")],
2539
+ region_id: Annotated[StrictStr, Field(description="The STACKIT region name the resource is located in.")],
2540
+ telemetry_router_id: Annotated[UUID, Field(description="The Telemetry Router UUID.")],
2541
+ _request_timeout: Union[
2542
+ None,
2543
+ Annotated[StrictFloat, Field(gt=0)],
2544
+ Tuple[Annotated[StrictFloat, Field(gt=0)], Annotated[StrictFloat, Field(gt=0)]],
2545
+ ] = None,
2546
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
2547
+ _content_type: Optional[StrictStr] = None,
2548
+ _headers: Optional[Dict[StrictStr, Any]] = None,
2549
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
2550
+ ) -> RESTResponseType:
2551
+ """get_telemetry_router
2552
+
2553
+ Returns the details for the given Telemetry Router.
2554
+
2555
+ :param project_id: The STACKIT portal project UUID the resource is located in. (required)
2556
+ :type project_id: UUID
2557
+ :param region_id: The STACKIT region name the resource is located in. (required)
2558
+ :type region_id: str
2559
+ :param telemetry_router_id: The Telemetry Router UUID. (required)
2560
+ :type telemetry_router_id: UUID
2561
+ :param _request_timeout: timeout setting for this request. If one
2562
+ number provided, it will be total request
2563
+ timeout. It can also be a pair (tuple) of
2564
+ (connection, read) timeouts.
2565
+ :type _request_timeout: int, tuple(int, int), optional
2566
+ :param _request_auth: set to override the auth_settings for an a single
2567
+ request; this effectively ignores the
2568
+ authentication in the spec for a single request.
2569
+ :type _request_auth: dict, optional
2570
+ :param _content_type: force content-type for the request.
2571
+ :type _content_type: str, Optional
2572
+ :param _headers: set to override the headers for a single
2573
+ request; this effectively ignores the headers
2574
+ in the spec for a single request.
2575
+ :type _headers: dict, optional
2576
+ :param _host_index: set to override the host_index for a single
2577
+ request; this effectively ignores the host_index
2578
+ in the spec for a single request.
2579
+ :type _host_index: int, optional
2580
+ :return: Returns the result object.
2581
+ """ # noqa: E501
2582
+
2583
+ _param = self._get_telemetry_router_serialize(
2584
+ project_id=project_id,
2585
+ region_id=region_id,
2586
+ telemetry_router_id=telemetry_router_id,
2587
+ _request_auth=_request_auth,
2588
+ _content_type=_content_type,
2589
+ _headers=_headers,
2590
+ _host_index=_host_index,
2591
+ )
2592
+
2593
+ _response_types_map: Dict[str, Optional[str]] = {
2594
+ "200": "TelemetryRouterResponse",
2595
+ "400": "Response4xx",
2596
+ "401": "Response4xx",
2597
+ "409": "Response4xx",
2598
+ "500": None,
2599
+ }
2600
+ response_data = self.api_client.call_api(*_param, _request_timeout=_request_timeout)
2601
+ return response_data.response
2602
+
2603
+ def _get_telemetry_router_serialize(
2604
+ self,
2605
+ project_id,
2606
+ region_id,
2607
+ telemetry_router_id,
2608
+ _request_auth,
2609
+ _content_type,
2610
+ _headers,
2611
+ _host_index,
2612
+ ) -> RequestSerialized:
2613
+
2614
+ _host = None
2615
+
2616
+ _collection_formats: Dict[str, str] = {}
2617
+
2618
+ _path_params: Dict[str, str] = {}
2619
+ _query_params: List[Tuple[str, str]] = []
2620
+ _header_params: Dict[str, Optional[str]] = _headers or {}
2621
+ _form_params: List[Tuple[str, str]] = []
2622
+ _files: Dict[str, Union[str, bytes, List[str], List[bytes], List[Tuple[str, bytes]]]] = {}
2623
+ _body_params: Optional[bytes] = None
2624
+
2625
+ # process the path parameters
2626
+ if project_id is not None:
2627
+ _path_params["projectId"] = project_id
2628
+ if region_id is not None:
2629
+ _path_params["regionId"] = region_id
2630
+ if telemetry_router_id is not None:
2631
+ _path_params["telemetryRouterId"] = telemetry_router_id
2632
+ # process the query parameters
2633
+ # process the header parameters
2634
+ # process the form parameters
2635
+ # process the body parameter
2636
+
2637
+ # set the HTTP header `Accept`
2638
+ if "Accept" not in _header_params:
2639
+ _header_params["Accept"] = self.api_client.select_header_accept(["application/json"])
2640
+
2641
+ # authentication setting
2642
+ _auth_settings: List[str] = []
2643
+
2644
+ return self.api_client.param_serialize(
2645
+ method="GET",
2646
+ resource_path="/v1beta/projects/{projectId}/regions/{regionId}/telemetry-routers/{telemetryRouterId}",
2647
+ path_params=_path_params,
2648
+ query_params=_query_params,
2649
+ header_params=_header_params,
2650
+ body=_body_params,
2651
+ post_params=_form_params,
2652
+ files=_files,
2653
+ auth_settings=_auth_settings,
2654
+ collection_formats=_collection_formats,
2655
+ _host=_host,
2656
+ _request_auth=_request_auth,
2657
+ )
2658
+
2659
+ @validate_call
2660
+ def list_access_tokens(
2661
+ self,
2662
+ project_id: Annotated[UUID, Field(description="The STACKIT portal project UUID the resource is located in.")],
2663
+ region_id: Annotated[StrictStr, Field(description="The STACKIT region name the resource is located in.")],
2664
+ telemetry_router_id: Annotated[UUID, Field(description="The Telemetry Router UUID.")],
2665
+ page_token: Annotated[
2666
+ Optional[Annotated[str, Field(strict=True, max_length=1024)]],
2667
+ Field(description="A token to retrieve the next page of results."),
2668
+ ] = None,
2669
+ page_size: Annotated[
2670
+ Optional[Annotated[int, Field(le=100, strict=True, ge=1)]],
2671
+ Field(description="Maximum number of items to return"),
2672
+ ] = None,
2673
+ _request_timeout: Union[
2674
+ None,
2675
+ Annotated[StrictFloat, Field(gt=0)],
2676
+ Tuple[Annotated[StrictFloat, Field(gt=0)], Annotated[StrictFloat, Field(gt=0)]],
2677
+ ] = None,
2678
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
2679
+ _content_type: Optional[StrictStr] = None,
2680
+ _headers: Optional[Dict[StrictStr, Any]] = None,
2681
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
2682
+ ) -> ListAccessTokensResponse:
2683
+ """list_access_tokens
2684
+
2685
+ Get all access tokens for a telemetry router.
2686
+
2687
+ :param project_id: The STACKIT portal project UUID the resource is located in. (required)
2688
+ :type project_id: UUID
2689
+ :param region_id: The STACKIT region name the resource is located in. (required)
2690
+ :type region_id: str
2691
+ :param telemetry_router_id: The Telemetry Router UUID. (required)
2692
+ :type telemetry_router_id: UUID
2693
+ :param page_token: A token to retrieve the next page of results.
2694
+ :type page_token: str
2695
+ :param page_size: Maximum number of items to return
2696
+ :type page_size: int
2697
+ :param _request_timeout: timeout setting for this request. If one
2698
+ number provided, it will be total request
2699
+ timeout. It can also be a pair (tuple) of
2700
+ (connection, read) timeouts.
2701
+ :type _request_timeout: int, tuple(int, int), optional
2702
+ :param _request_auth: set to override the auth_settings for an a single
2703
+ request; this effectively ignores the
2704
+ authentication in the spec for a single request.
2705
+ :type _request_auth: dict, optional
2706
+ :param _content_type: force content-type for the request.
2707
+ :type _content_type: str, Optional
2708
+ :param _headers: set to override the headers for a single
2709
+ request; this effectively ignores the headers
2710
+ in the spec for a single request.
2711
+ :type _headers: dict, optional
2712
+ :param _host_index: set to override the host_index for a single
2713
+ request; this effectively ignores the host_index
2714
+ in the spec for a single request.
2715
+ :type _host_index: int, optional
2716
+ :return: Returns the result object.
2717
+ """ # noqa: E501
2718
+
2719
+ _param = self._list_access_tokens_serialize(
2720
+ project_id=project_id,
2721
+ region_id=region_id,
2722
+ telemetry_router_id=telemetry_router_id,
2723
+ page_token=page_token,
2724
+ page_size=page_size,
2725
+ _request_auth=_request_auth,
2726
+ _content_type=_content_type,
2727
+ _headers=_headers,
2728
+ _host_index=_host_index,
2729
+ )
2730
+
2731
+ _response_types_map: Dict[str, Optional[str]] = {
2732
+ "200": "ListAccessTokensResponse",
2733
+ "400": "Response4xx",
2734
+ "401": "Response4xx",
2735
+ "404": None,
2736
+ "409": "Response4xx",
2737
+ "500": None,
2738
+ }
2739
+ response_data = self.api_client.call_api(*_param, _request_timeout=_request_timeout)
2740
+ response_data.read()
2741
+ return self.api_client.response_deserialize(
2742
+ response_data=response_data,
2743
+ response_types_map=_response_types_map,
2744
+ ).data
2745
+
2746
+ @validate_call
2747
+ def list_access_tokens_with_http_info(
2748
+ self,
2749
+ project_id: Annotated[UUID, Field(description="The STACKIT portal project UUID the resource is located in.")],
2750
+ region_id: Annotated[StrictStr, Field(description="The STACKIT region name the resource is located in.")],
2751
+ telemetry_router_id: Annotated[UUID, Field(description="The Telemetry Router UUID.")],
2752
+ page_token: Annotated[
2753
+ Optional[Annotated[str, Field(strict=True, max_length=1024)]],
2754
+ Field(description="A token to retrieve the next page of results."),
2755
+ ] = None,
2756
+ page_size: Annotated[
2757
+ Optional[Annotated[int, Field(le=100, strict=True, ge=1)]],
2758
+ Field(description="Maximum number of items to return"),
2759
+ ] = None,
2760
+ _request_timeout: Union[
2761
+ None,
2762
+ Annotated[StrictFloat, Field(gt=0)],
2763
+ Tuple[Annotated[StrictFloat, Field(gt=0)], Annotated[StrictFloat, Field(gt=0)]],
2764
+ ] = None,
2765
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
2766
+ _content_type: Optional[StrictStr] = None,
2767
+ _headers: Optional[Dict[StrictStr, Any]] = None,
2768
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
2769
+ ) -> ApiResponse[ListAccessTokensResponse]:
2770
+ """list_access_tokens
2771
+
2772
+ Get all access tokens for a telemetry router.
2773
+
2774
+ :param project_id: The STACKIT portal project UUID the resource is located in. (required)
2775
+ :type project_id: UUID
2776
+ :param region_id: The STACKIT region name the resource is located in. (required)
2777
+ :type region_id: str
2778
+ :param telemetry_router_id: The Telemetry Router UUID. (required)
2779
+ :type telemetry_router_id: UUID
2780
+ :param page_token: A token to retrieve the next page of results.
2781
+ :type page_token: str
2782
+ :param page_size: Maximum number of items to return
2783
+ :type page_size: int
2784
+ :param _request_timeout: timeout setting for this request. If one
2785
+ number provided, it will be total request
2786
+ timeout. It can also be a pair (tuple) of
2787
+ (connection, read) timeouts.
2788
+ :type _request_timeout: int, tuple(int, int), optional
2789
+ :param _request_auth: set to override the auth_settings for an a single
2790
+ request; this effectively ignores the
2791
+ authentication in the spec for a single request.
2792
+ :type _request_auth: dict, optional
2793
+ :param _content_type: force content-type for the request.
2794
+ :type _content_type: str, Optional
2795
+ :param _headers: set to override the headers for a single
2796
+ request; this effectively ignores the headers
2797
+ in the spec for a single request.
2798
+ :type _headers: dict, optional
2799
+ :param _host_index: set to override the host_index for a single
2800
+ request; this effectively ignores the host_index
2801
+ in the spec for a single request.
2802
+ :type _host_index: int, optional
2803
+ :return: Returns the result object.
2804
+ """ # noqa: E501
2805
+
2806
+ _param = self._list_access_tokens_serialize(
2807
+ project_id=project_id,
2808
+ region_id=region_id,
2809
+ telemetry_router_id=telemetry_router_id,
2810
+ page_token=page_token,
2811
+ page_size=page_size,
2812
+ _request_auth=_request_auth,
2813
+ _content_type=_content_type,
2814
+ _headers=_headers,
2815
+ _host_index=_host_index,
2816
+ )
2817
+
2818
+ _response_types_map: Dict[str, Optional[str]] = {
2819
+ "200": "ListAccessTokensResponse",
2820
+ "400": "Response4xx",
2821
+ "401": "Response4xx",
2822
+ "404": None,
2823
+ "409": "Response4xx",
2824
+ "500": None,
2825
+ }
2826
+ response_data = self.api_client.call_api(*_param, _request_timeout=_request_timeout)
2827
+ response_data.read()
2828
+ return self.api_client.response_deserialize(
2829
+ response_data=response_data,
2830
+ response_types_map=_response_types_map,
2831
+ )
2832
+
2833
+ @validate_call
2834
+ def list_access_tokens_without_preload_content(
2835
+ self,
2836
+ project_id: Annotated[UUID, Field(description="The STACKIT portal project UUID the resource is located in.")],
2837
+ region_id: Annotated[StrictStr, Field(description="The STACKIT region name the resource is located in.")],
2838
+ telemetry_router_id: Annotated[UUID, Field(description="The Telemetry Router UUID.")],
2839
+ page_token: Annotated[
2840
+ Optional[Annotated[str, Field(strict=True, max_length=1024)]],
2841
+ Field(description="A token to retrieve the next page of results."),
2842
+ ] = None,
2843
+ page_size: Annotated[
2844
+ Optional[Annotated[int, Field(le=100, strict=True, ge=1)]],
2845
+ Field(description="Maximum number of items to return"),
2846
+ ] = None,
2847
+ _request_timeout: Union[
2848
+ None,
2849
+ Annotated[StrictFloat, Field(gt=0)],
2850
+ Tuple[Annotated[StrictFloat, Field(gt=0)], Annotated[StrictFloat, Field(gt=0)]],
2851
+ ] = None,
2852
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
2853
+ _content_type: Optional[StrictStr] = None,
2854
+ _headers: Optional[Dict[StrictStr, Any]] = None,
2855
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
2856
+ ) -> RESTResponseType:
2857
+ """list_access_tokens
2858
+
2859
+ Get all access tokens for a telemetry router.
2860
+
2861
+ :param project_id: The STACKIT portal project UUID the resource is located in. (required)
2862
+ :type project_id: UUID
2863
+ :param region_id: The STACKIT region name the resource is located in. (required)
2864
+ :type region_id: str
2865
+ :param telemetry_router_id: The Telemetry Router UUID. (required)
2866
+ :type telemetry_router_id: UUID
2867
+ :param page_token: A token to retrieve the next page of results.
2868
+ :type page_token: str
2869
+ :param page_size: Maximum number of items to return
2870
+ :type page_size: int
2871
+ :param _request_timeout: timeout setting for this request. If one
2872
+ number provided, it will be total request
2873
+ timeout. It can also be a pair (tuple) of
2874
+ (connection, read) timeouts.
2875
+ :type _request_timeout: int, tuple(int, int), optional
2876
+ :param _request_auth: set to override the auth_settings for an a single
2877
+ request; this effectively ignores the
2878
+ authentication in the spec for a single request.
2879
+ :type _request_auth: dict, optional
2880
+ :param _content_type: force content-type for the request.
2881
+ :type _content_type: str, Optional
2882
+ :param _headers: set to override the headers for a single
2883
+ request; this effectively ignores the headers
2884
+ in the spec for a single request.
2885
+ :type _headers: dict, optional
2886
+ :param _host_index: set to override the host_index for a single
2887
+ request; this effectively ignores the host_index
2888
+ in the spec for a single request.
2889
+ :type _host_index: int, optional
2890
+ :return: Returns the result object.
2891
+ """ # noqa: E501
2892
+
2893
+ _param = self._list_access_tokens_serialize(
2894
+ project_id=project_id,
2895
+ region_id=region_id,
2896
+ telemetry_router_id=telemetry_router_id,
2897
+ page_token=page_token,
2898
+ page_size=page_size,
2899
+ _request_auth=_request_auth,
2900
+ _content_type=_content_type,
2901
+ _headers=_headers,
2902
+ _host_index=_host_index,
2903
+ )
2904
+
2905
+ _response_types_map: Dict[str, Optional[str]] = {
2906
+ "200": "ListAccessTokensResponse",
2907
+ "400": "Response4xx",
2908
+ "401": "Response4xx",
2909
+ "404": None,
2910
+ "409": "Response4xx",
2911
+ "500": None,
2912
+ }
2913
+ response_data = self.api_client.call_api(*_param, _request_timeout=_request_timeout)
2914
+ return response_data.response
2915
+
2916
+ def _list_access_tokens_serialize(
2917
+ self,
2918
+ project_id,
2919
+ region_id,
2920
+ telemetry_router_id,
2921
+ page_token,
2922
+ page_size,
2923
+ _request_auth,
2924
+ _content_type,
2925
+ _headers,
2926
+ _host_index,
2927
+ ) -> RequestSerialized:
2928
+
2929
+ _host = None
2930
+
2931
+ _collection_formats: Dict[str, str] = {}
2932
+
2933
+ _path_params: Dict[str, str] = {}
2934
+ _query_params: List[Tuple[str, str]] = []
2935
+ _header_params: Dict[str, Optional[str]] = _headers or {}
2936
+ _form_params: List[Tuple[str, str]] = []
2937
+ _files: Dict[str, Union[str, bytes, List[str], List[bytes], List[Tuple[str, bytes]]]] = {}
2938
+ _body_params: Optional[bytes] = None
2939
+
2940
+ # process the path parameters
2941
+ if project_id is not None:
2942
+ _path_params["projectId"] = project_id
2943
+ if region_id is not None:
2944
+ _path_params["regionId"] = region_id
2945
+ if telemetry_router_id is not None:
2946
+ _path_params["telemetryRouterId"] = telemetry_router_id
2947
+ # process the query parameters
2948
+ if page_token is not None:
2949
+
2950
+ _query_params.append(("pageToken", page_token))
2951
+
2952
+ if page_size is not None:
2953
+
2954
+ _query_params.append(("pageSize", page_size))
2955
+
2956
+ # process the header parameters
2957
+ # process the form parameters
2958
+ # process the body parameter
2959
+
2960
+ # set the HTTP header `Accept`
2961
+ if "Accept" not in _header_params:
2962
+ _header_params["Accept"] = self.api_client.select_header_accept(["application/json"])
2963
+
2964
+ # authentication setting
2965
+ _auth_settings: List[str] = []
2966
+
2967
+ return self.api_client.param_serialize(
2968
+ method="GET",
2969
+ resource_path="/v1beta/projects/{projectId}/regions/{regionId}/telemetry-routers/{telemetryRouterId}/access-tokens",
2970
+ path_params=_path_params,
2971
+ query_params=_query_params,
2972
+ header_params=_header_params,
2973
+ body=_body_params,
2974
+ post_params=_form_params,
2975
+ files=_files,
2976
+ auth_settings=_auth_settings,
2977
+ collection_formats=_collection_formats,
2978
+ _host=_host,
2979
+ _request_auth=_request_auth,
2980
+ )
2981
+
2982
+ @validate_call
2983
+ def list_destinations(
2984
+ self,
2985
+ project_id: Annotated[UUID, Field(description="The STACKIT portal project UUID the resource is located in.")],
2986
+ region_id: Annotated[StrictStr, Field(description="The STACKIT region name the resource is located in.")],
2987
+ telemetry_router_id: Annotated[UUID, Field(description="The Telemetry Router UUID.")],
2988
+ page_token: Annotated[
2989
+ Optional[Annotated[str, Field(strict=True, max_length=1024)]],
2990
+ Field(description="A token to retrieve the next page of results."),
2991
+ ] = None,
2992
+ page_size: Annotated[
2993
+ Optional[Annotated[int, Field(le=100, strict=True, ge=1)]],
2994
+ Field(description="Maximum number of items to return"),
2995
+ ] = None,
2996
+ _request_timeout: Union[
2997
+ None,
2998
+ Annotated[StrictFloat, Field(gt=0)],
2999
+ Tuple[Annotated[StrictFloat, Field(gt=0)], Annotated[StrictFloat, Field(gt=0)]],
3000
+ ] = None,
3001
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
3002
+ _content_type: Optional[StrictStr] = None,
3003
+ _headers: Optional[Dict[StrictStr, Any]] = None,
3004
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
3005
+ ) -> ListDestinationsResponse:
3006
+ """list_destinations
3007
+
3008
+ Returns a list of all destinations of a specific Telemetry Router within a project.
3009
+
3010
+ :param project_id: The STACKIT portal project UUID the resource is located in. (required)
3011
+ :type project_id: UUID
3012
+ :param region_id: The STACKIT region name the resource is located in. (required)
3013
+ :type region_id: str
3014
+ :param telemetry_router_id: The Telemetry Router UUID. (required)
3015
+ :type telemetry_router_id: UUID
3016
+ :param page_token: A token to retrieve the next page of results.
3017
+ :type page_token: str
3018
+ :param page_size: Maximum number of items to return
3019
+ :type page_size: int
3020
+ :param _request_timeout: timeout setting for this request. If one
3021
+ number provided, it will be total request
3022
+ timeout. It can also be a pair (tuple) of
3023
+ (connection, read) timeouts.
3024
+ :type _request_timeout: int, tuple(int, int), optional
3025
+ :param _request_auth: set to override the auth_settings for an a single
3026
+ request; this effectively ignores the
3027
+ authentication in the spec for a single request.
3028
+ :type _request_auth: dict, optional
3029
+ :param _content_type: force content-type for the request.
3030
+ :type _content_type: str, Optional
3031
+ :param _headers: set to override the headers for a single
3032
+ request; this effectively ignores the headers
3033
+ in the spec for a single request.
3034
+ :type _headers: dict, optional
3035
+ :param _host_index: set to override the host_index for a single
3036
+ request; this effectively ignores the host_index
3037
+ in the spec for a single request.
3038
+ :type _host_index: int, optional
3039
+ :return: Returns the result object.
3040
+ """ # noqa: E501
3041
+
3042
+ _param = self._list_destinations_serialize(
3043
+ project_id=project_id,
3044
+ region_id=region_id,
3045
+ telemetry_router_id=telemetry_router_id,
3046
+ page_token=page_token,
3047
+ page_size=page_size,
3048
+ _request_auth=_request_auth,
3049
+ _content_type=_content_type,
3050
+ _headers=_headers,
3051
+ _host_index=_host_index,
3052
+ )
3053
+
3054
+ _response_types_map: Dict[str, Optional[str]] = {
3055
+ "200": "ListDestinationsResponse",
3056
+ "400": "Response4xx",
3057
+ "401": "Response4xx",
3058
+ "500": None,
3059
+ }
3060
+ response_data = self.api_client.call_api(*_param, _request_timeout=_request_timeout)
3061
+ response_data.read()
3062
+ return self.api_client.response_deserialize(
3063
+ response_data=response_data,
3064
+ response_types_map=_response_types_map,
3065
+ ).data
3066
+
3067
+ @validate_call
3068
+ def list_destinations_with_http_info(
3069
+ self,
3070
+ project_id: Annotated[UUID, Field(description="The STACKIT portal project UUID the resource is located in.")],
3071
+ region_id: Annotated[StrictStr, Field(description="The STACKIT region name the resource is located in.")],
3072
+ telemetry_router_id: Annotated[UUID, Field(description="The Telemetry Router UUID.")],
3073
+ page_token: Annotated[
3074
+ Optional[Annotated[str, Field(strict=True, max_length=1024)]],
3075
+ Field(description="A token to retrieve the next page of results."),
3076
+ ] = None,
3077
+ page_size: Annotated[
3078
+ Optional[Annotated[int, Field(le=100, strict=True, ge=1)]],
3079
+ Field(description="Maximum number of items to return"),
3080
+ ] = None,
3081
+ _request_timeout: Union[
3082
+ None,
3083
+ Annotated[StrictFloat, Field(gt=0)],
3084
+ Tuple[Annotated[StrictFloat, Field(gt=0)], Annotated[StrictFloat, Field(gt=0)]],
3085
+ ] = None,
3086
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
3087
+ _content_type: Optional[StrictStr] = None,
3088
+ _headers: Optional[Dict[StrictStr, Any]] = None,
3089
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
3090
+ ) -> ApiResponse[ListDestinationsResponse]:
3091
+ """list_destinations
3092
+
3093
+ Returns a list of all destinations of a specific Telemetry Router within a project.
3094
+
3095
+ :param project_id: The STACKIT portal project UUID the resource is located in. (required)
3096
+ :type project_id: UUID
3097
+ :param region_id: The STACKIT region name the resource is located in. (required)
3098
+ :type region_id: str
3099
+ :param telemetry_router_id: The Telemetry Router UUID. (required)
3100
+ :type telemetry_router_id: UUID
3101
+ :param page_token: A token to retrieve the next page of results.
3102
+ :type page_token: str
3103
+ :param page_size: Maximum number of items to return
3104
+ :type page_size: int
3105
+ :param _request_timeout: timeout setting for this request. If one
3106
+ number provided, it will be total request
3107
+ timeout. It can also be a pair (tuple) of
3108
+ (connection, read) timeouts.
3109
+ :type _request_timeout: int, tuple(int, int), optional
3110
+ :param _request_auth: set to override the auth_settings for an a single
3111
+ request; this effectively ignores the
3112
+ authentication in the spec for a single request.
3113
+ :type _request_auth: dict, optional
3114
+ :param _content_type: force content-type for the request.
3115
+ :type _content_type: str, Optional
3116
+ :param _headers: set to override the headers for a single
3117
+ request; this effectively ignores the headers
3118
+ in the spec for a single request.
3119
+ :type _headers: dict, optional
3120
+ :param _host_index: set to override the host_index for a single
3121
+ request; this effectively ignores the host_index
3122
+ in the spec for a single request.
3123
+ :type _host_index: int, optional
3124
+ :return: Returns the result object.
3125
+ """ # noqa: E501
3126
+
3127
+ _param = self._list_destinations_serialize(
3128
+ project_id=project_id,
3129
+ region_id=region_id,
3130
+ telemetry_router_id=telemetry_router_id,
3131
+ page_token=page_token,
3132
+ page_size=page_size,
3133
+ _request_auth=_request_auth,
3134
+ _content_type=_content_type,
3135
+ _headers=_headers,
3136
+ _host_index=_host_index,
3137
+ )
3138
+
3139
+ _response_types_map: Dict[str, Optional[str]] = {
3140
+ "200": "ListDestinationsResponse",
3141
+ "400": "Response4xx",
3142
+ "401": "Response4xx",
3143
+ "500": None,
3144
+ }
3145
+ response_data = self.api_client.call_api(*_param, _request_timeout=_request_timeout)
3146
+ response_data.read()
3147
+ return self.api_client.response_deserialize(
3148
+ response_data=response_data,
3149
+ response_types_map=_response_types_map,
3150
+ )
3151
+
3152
+ @validate_call
3153
+ def list_destinations_without_preload_content(
3154
+ self,
3155
+ project_id: Annotated[UUID, Field(description="The STACKIT portal project UUID the resource is located in.")],
3156
+ region_id: Annotated[StrictStr, Field(description="The STACKIT region name the resource is located in.")],
3157
+ telemetry_router_id: Annotated[UUID, Field(description="The Telemetry Router UUID.")],
3158
+ page_token: Annotated[
3159
+ Optional[Annotated[str, Field(strict=True, max_length=1024)]],
3160
+ Field(description="A token to retrieve the next page of results."),
3161
+ ] = None,
3162
+ page_size: Annotated[
3163
+ Optional[Annotated[int, Field(le=100, strict=True, ge=1)]],
3164
+ Field(description="Maximum number of items to return"),
3165
+ ] = None,
3166
+ _request_timeout: Union[
3167
+ None,
3168
+ Annotated[StrictFloat, Field(gt=0)],
3169
+ Tuple[Annotated[StrictFloat, Field(gt=0)], Annotated[StrictFloat, Field(gt=0)]],
3170
+ ] = None,
3171
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
3172
+ _content_type: Optional[StrictStr] = None,
3173
+ _headers: Optional[Dict[StrictStr, Any]] = None,
3174
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
3175
+ ) -> RESTResponseType:
3176
+ """list_destinations
3177
+
3178
+ Returns a list of all destinations of a specific Telemetry Router within a project.
3179
+
3180
+ :param project_id: The STACKIT portal project UUID the resource is located in. (required)
3181
+ :type project_id: UUID
3182
+ :param region_id: The STACKIT region name the resource is located in. (required)
3183
+ :type region_id: str
3184
+ :param telemetry_router_id: The Telemetry Router UUID. (required)
3185
+ :type telemetry_router_id: UUID
3186
+ :param page_token: A token to retrieve the next page of results.
3187
+ :type page_token: str
3188
+ :param page_size: Maximum number of items to return
3189
+ :type page_size: int
3190
+ :param _request_timeout: timeout setting for this request. If one
3191
+ number provided, it will be total request
3192
+ timeout. It can also be a pair (tuple) of
3193
+ (connection, read) timeouts.
3194
+ :type _request_timeout: int, tuple(int, int), optional
3195
+ :param _request_auth: set to override the auth_settings for an a single
3196
+ request; this effectively ignores the
3197
+ authentication in the spec for a single request.
3198
+ :type _request_auth: dict, optional
3199
+ :param _content_type: force content-type for the request.
3200
+ :type _content_type: str, Optional
3201
+ :param _headers: set to override the headers for a single
3202
+ request; this effectively ignores the headers
3203
+ in the spec for a single request.
3204
+ :type _headers: dict, optional
3205
+ :param _host_index: set to override the host_index for a single
3206
+ request; this effectively ignores the host_index
3207
+ in the spec for a single request.
3208
+ :type _host_index: int, optional
3209
+ :return: Returns the result object.
3210
+ """ # noqa: E501
3211
+
3212
+ _param = self._list_destinations_serialize(
3213
+ project_id=project_id,
3214
+ region_id=region_id,
3215
+ telemetry_router_id=telemetry_router_id,
3216
+ page_token=page_token,
3217
+ page_size=page_size,
3218
+ _request_auth=_request_auth,
3219
+ _content_type=_content_type,
3220
+ _headers=_headers,
3221
+ _host_index=_host_index,
3222
+ )
3223
+
3224
+ _response_types_map: Dict[str, Optional[str]] = {
3225
+ "200": "ListDestinationsResponse",
3226
+ "400": "Response4xx",
3227
+ "401": "Response4xx",
3228
+ "500": None,
3229
+ }
3230
+ response_data = self.api_client.call_api(*_param, _request_timeout=_request_timeout)
3231
+ return response_data.response
3232
+
3233
+ def _list_destinations_serialize(
3234
+ self,
3235
+ project_id,
3236
+ region_id,
3237
+ telemetry_router_id,
3238
+ page_token,
3239
+ page_size,
3240
+ _request_auth,
3241
+ _content_type,
3242
+ _headers,
3243
+ _host_index,
3244
+ ) -> RequestSerialized:
3245
+
3246
+ _host = None
3247
+
3248
+ _collection_formats: Dict[str, str] = {}
3249
+
3250
+ _path_params: Dict[str, str] = {}
3251
+ _query_params: List[Tuple[str, str]] = []
3252
+ _header_params: Dict[str, Optional[str]] = _headers or {}
3253
+ _form_params: List[Tuple[str, str]] = []
3254
+ _files: Dict[str, Union[str, bytes, List[str], List[bytes], List[Tuple[str, bytes]]]] = {}
3255
+ _body_params: Optional[bytes] = None
3256
+
3257
+ # process the path parameters
3258
+ if project_id is not None:
3259
+ _path_params["projectId"] = project_id
3260
+ if region_id is not None:
3261
+ _path_params["regionId"] = region_id
3262
+ if telemetry_router_id is not None:
3263
+ _path_params["telemetryRouterId"] = telemetry_router_id
3264
+ # process the query parameters
3265
+ if page_token is not None:
3266
+
3267
+ _query_params.append(("pageToken", page_token))
3268
+
3269
+ if page_size is not None:
3270
+
3271
+ _query_params.append(("pageSize", page_size))
3272
+
3273
+ # process the header parameters
3274
+ # process the form parameters
3275
+ # process the body parameter
3276
+
3277
+ # set the HTTP header `Accept`
3278
+ if "Accept" not in _header_params:
3279
+ _header_params["Accept"] = self.api_client.select_header_accept(["application/json"])
3280
+
3281
+ # authentication setting
3282
+ _auth_settings: List[str] = []
3283
+
3284
+ return self.api_client.param_serialize(
3285
+ method="GET",
3286
+ resource_path="/v1beta/projects/{projectId}/regions/{regionId}/telemetry-routers/{telemetryRouterId}/destinations",
3287
+ path_params=_path_params,
3288
+ query_params=_query_params,
3289
+ header_params=_header_params,
3290
+ body=_body_params,
3291
+ post_params=_form_params,
3292
+ files=_files,
3293
+ auth_settings=_auth_settings,
3294
+ collection_formats=_collection_formats,
3295
+ _host=_host,
3296
+ _request_auth=_request_auth,
3297
+ )
3298
+
3299
+ @validate_call
3300
+ def list_telemetry_routers(
3301
+ self,
3302
+ project_id: Annotated[UUID, Field(description="The STACKIT portal project UUID the resource is located in.")],
3303
+ region_id: Annotated[StrictStr, Field(description="The STACKIT region name the resource is located in.")],
3304
+ page_token: Annotated[
3305
+ Optional[Annotated[str, Field(strict=True, max_length=1024)]],
3306
+ Field(description="A token to retrieve the next page of results."),
3307
+ ] = None,
3308
+ page_size: Annotated[
3309
+ Optional[Annotated[int, Field(le=100, strict=True, ge=1)]],
3310
+ Field(description="Maximum number of items to return"),
3311
+ ] = None,
3312
+ _request_timeout: Union[
3313
+ None,
3314
+ Annotated[StrictFloat, Field(gt=0)],
3315
+ Tuple[Annotated[StrictFloat, Field(gt=0)], Annotated[StrictFloat, Field(gt=0)]],
3316
+ ] = None,
3317
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
3318
+ _content_type: Optional[StrictStr] = None,
3319
+ _headers: Optional[Dict[StrictStr, Any]] = None,
3320
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
3321
+ ) -> ListTelemetryRoutersResponse:
3322
+ """list_telemetry_routers
3323
+
3324
+ Returns a list of all Telemetry Routers within the project.
3325
+
3326
+ :param project_id: The STACKIT portal project UUID the resource is located in. (required)
3327
+ :type project_id: UUID
3328
+ :param region_id: The STACKIT region name the resource is located in. (required)
3329
+ :type region_id: str
3330
+ :param page_token: A token to retrieve the next page of results.
3331
+ :type page_token: str
3332
+ :param page_size: Maximum number of items to return
3333
+ :type page_size: int
3334
+ :param _request_timeout: timeout setting for this request. If one
3335
+ number provided, it will be total request
3336
+ timeout. It can also be a pair (tuple) of
3337
+ (connection, read) timeouts.
3338
+ :type _request_timeout: int, tuple(int, int), optional
3339
+ :param _request_auth: set to override the auth_settings for an a single
3340
+ request; this effectively ignores the
3341
+ authentication in the spec for a single request.
3342
+ :type _request_auth: dict, optional
3343
+ :param _content_type: force content-type for the request.
3344
+ :type _content_type: str, Optional
3345
+ :param _headers: set to override the headers for a single
3346
+ request; this effectively ignores the headers
3347
+ in the spec for a single request.
3348
+ :type _headers: dict, optional
3349
+ :param _host_index: set to override the host_index for a single
3350
+ request; this effectively ignores the host_index
3351
+ in the spec for a single request.
3352
+ :type _host_index: int, optional
3353
+ :return: Returns the result object.
3354
+ """ # noqa: E501
3355
+
3356
+ _param = self._list_telemetry_routers_serialize(
3357
+ project_id=project_id,
3358
+ region_id=region_id,
3359
+ page_token=page_token,
3360
+ page_size=page_size,
3361
+ _request_auth=_request_auth,
3362
+ _content_type=_content_type,
3363
+ _headers=_headers,
3364
+ _host_index=_host_index,
3365
+ )
3366
+
3367
+ _response_types_map: Dict[str, Optional[str]] = {
3368
+ "200": "ListTelemetryRoutersResponse",
3369
+ "400": "Response4xx",
3370
+ "401": "Response4xx",
3371
+ "500": None,
3372
+ }
3373
+ response_data = self.api_client.call_api(*_param, _request_timeout=_request_timeout)
3374
+ response_data.read()
3375
+ return self.api_client.response_deserialize(
3376
+ response_data=response_data,
3377
+ response_types_map=_response_types_map,
3378
+ ).data
3379
+
3380
+ @validate_call
3381
+ def list_telemetry_routers_with_http_info(
3382
+ self,
3383
+ project_id: Annotated[UUID, Field(description="The STACKIT portal project UUID the resource is located in.")],
3384
+ region_id: Annotated[StrictStr, Field(description="The STACKIT region name the resource is located in.")],
3385
+ page_token: Annotated[
3386
+ Optional[Annotated[str, Field(strict=True, max_length=1024)]],
3387
+ Field(description="A token to retrieve the next page of results."),
3388
+ ] = None,
3389
+ page_size: Annotated[
3390
+ Optional[Annotated[int, Field(le=100, strict=True, ge=1)]],
3391
+ Field(description="Maximum number of items to return"),
3392
+ ] = None,
3393
+ _request_timeout: Union[
3394
+ None,
3395
+ Annotated[StrictFloat, Field(gt=0)],
3396
+ Tuple[Annotated[StrictFloat, Field(gt=0)], Annotated[StrictFloat, Field(gt=0)]],
3397
+ ] = None,
3398
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
3399
+ _content_type: Optional[StrictStr] = None,
3400
+ _headers: Optional[Dict[StrictStr, Any]] = None,
3401
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
3402
+ ) -> ApiResponse[ListTelemetryRoutersResponse]:
3403
+ """list_telemetry_routers
3404
+
3405
+ Returns a list of all Telemetry Routers within the project.
3406
+
3407
+ :param project_id: The STACKIT portal project UUID the resource is located in. (required)
3408
+ :type project_id: UUID
3409
+ :param region_id: The STACKIT region name the resource is located in. (required)
3410
+ :type region_id: str
3411
+ :param page_token: A token to retrieve the next page of results.
3412
+ :type page_token: str
3413
+ :param page_size: Maximum number of items to return
3414
+ :type page_size: int
3415
+ :param _request_timeout: timeout setting for this request. If one
3416
+ number provided, it will be total request
3417
+ timeout. It can also be a pair (tuple) of
3418
+ (connection, read) timeouts.
3419
+ :type _request_timeout: int, tuple(int, int), optional
3420
+ :param _request_auth: set to override the auth_settings for an a single
3421
+ request; this effectively ignores the
3422
+ authentication in the spec for a single request.
3423
+ :type _request_auth: dict, optional
3424
+ :param _content_type: force content-type for the request.
3425
+ :type _content_type: str, Optional
3426
+ :param _headers: set to override the headers for a single
3427
+ request; this effectively ignores the headers
3428
+ in the spec for a single request.
3429
+ :type _headers: dict, optional
3430
+ :param _host_index: set to override the host_index for a single
3431
+ request; this effectively ignores the host_index
3432
+ in the spec for a single request.
3433
+ :type _host_index: int, optional
3434
+ :return: Returns the result object.
3435
+ """ # noqa: E501
3436
+
3437
+ _param = self._list_telemetry_routers_serialize(
3438
+ project_id=project_id,
3439
+ region_id=region_id,
3440
+ page_token=page_token,
3441
+ page_size=page_size,
3442
+ _request_auth=_request_auth,
3443
+ _content_type=_content_type,
3444
+ _headers=_headers,
3445
+ _host_index=_host_index,
3446
+ )
3447
+
3448
+ _response_types_map: Dict[str, Optional[str]] = {
3449
+ "200": "ListTelemetryRoutersResponse",
3450
+ "400": "Response4xx",
3451
+ "401": "Response4xx",
3452
+ "500": None,
3453
+ }
3454
+ response_data = self.api_client.call_api(*_param, _request_timeout=_request_timeout)
3455
+ response_data.read()
3456
+ return self.api_client.response_deserialize(
3457
+ response_data=response_data,
3458
+ response_types_map=_response_types_map,
3459
+ )
3460
+
3461
+ @validate_call
3462
+ def list_telemetry_routers_without_preload_content(
3463
+ self,
3464
+ project_id: Annotated[UUID, Field(description="The STACKIT portal project UUID the resource is located in.")],
3465
+ region_id: Annotated[StrictStr, Field(description="The STACKIT region name the resource is located in.")],
3466
+ page_token: Annotated[
3467
+ Optional[Annotated[str, Field(strict=True, max_length=1024)]],
3468
+ Field(description="A token to retrieve the next page of results."),
3469
+ ] = None,
3470
+ page_size: Annotated[
3471
+ Optional[Annotated[int, Field(le=100, strict=True, ge=1)]],
3472
+ Field(description="Maximum number of items to return"),
3473
+ ] = None,
3474
+ _request_timeout: Union[
3475
+ None,
3476
+ Annotated[StrictFloat, Field(gt=0)],
3477
+ Tuple[Annotated[StrictFloat, Field(gt=0)], Annotated[StrictFloat, Field(gt=0)]],
3478
+ ] = None,
3479
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
3480
+ _content_type: Optional[StrictStr] = None,
3481
+ _headers: Optional[Dict[StrictStr, Any]] = None,
3482
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
3483
+ ) -> RESTResponseType:
3484
+ """list_telemetry_routers
3485
+
3486
+ Returns a list of all Telemetry Routers within the project.
3487
+
3488
+ :param project_id: The STACKIT portal project UUID the resource is located in. (required)
3489
+ :type project_id: UUID
3490
+ :param region_id: The STACKIT region name the resource is located in. (required)
3491
+ :type region_id: str
3492
+ :param page_token: A token to retrieve the next page of results.
3493
+ :type page_token: str
3494
+ :param page_size: Maximum number of items to return
3495
+ :type page_size: int
3496
+ :param _request_timeout: timeout setting for this request. If one
3497
+ number provided, it will be total request
3498
+ timeout. It can also be a pair (tuple) of
3499
+ (connection, read) timeouts.
3500
+ :type _request_timeout: int, tuple(int, int), optional
3501
+ :param _request_auth: set to override the auth_settings for an a single
3502
+ request; this effectively ignores the
3503
+ authentication in the spec for a single request.
3504
+ :type _request_auth: dict, optional
3505
+ :param _content_type: force content-type for the request.
3506
+ :type _content_type: str, Optional
3507
+ :param _headers: set to override the headers for a single
3508
+ request; this effectively ignores the headers
3509
+ in the spec for a single request.
3510
+ :type _headers: dict, optional
3511
+ :param _host_index: set to override the host_index for a single
3512
+ request; this effectively ignores the host_index
3513
+ in the spec for a single request.
3514
+ :type _host_index: int, optional
3515
+ :return: Returns the result object.
3516
+ """ # noqa: E501
3517
+
3518
+ _param = self._list_telemetry_routers_serialize(
3519
+ project_id=project_id,
3520
+ region_id=region_id,
3521
+ page_token=page_token,
3522
+ page_size=page_size,
3523
+ _request_auth=_request_auth,
3524
+ _content_type=_content_type,
3525
+ _headers=_headers,
3526
+ _host_index=_host_index,
3527
+ )
3528
+
3529
+ _response_types_map: Dict[str, Optional[str]] = {
3530
+ "200": "ListTelemetryRoutersResponse",
3531
+ "400": "Response4xx",
3532
+ "401": "Response4xx",
3533
+ "500": None,
3534
+ }
3535
+ response_data = self.api_client.call_api(*_param, _request_timeout=_request_timeout)
3536
+ return response_data.response
3537
+
3538
+ def _list_telemetry_routers_serialize(
3539
+ self,
3540
+ project_id,
3541
+ region_id,
3542
+ page_token,
3543
+ page_size,
3544
+ _request_auth,
3545
+ _content_type,
3546
+ _headers,
3547
+ _host_index,
3548
+ ) -> RequestSerialized:
3549
+
3550
+ _host = None
3551
+
3552
+ _collection_formats: Dict[str, str] = {}
3553
+
3554
+ _path_params: Dict[str, str] = {}
3555
+ _query_params: List[Tuple[str, str]] = []
3556
+ _header_params: Dict[str, Optional[str]] = _headers or {}
3557
+ _form_params: List[Tuple[str, str]] = []
3558
+ _files: Dict[str, Union[str, bytes, List[str], List[bytes], List[Tuple[str, bytes]]]] = {}
3559
+ _body_params: Optional[bytes] = None
3560
+
3561
+ # process the path parameters
3562
+ if project_id is not None:
3563
+ _path_params["projectId"] = project_id
3564
+ if region_id is not None:
3565
+ _path_params["regionId"] = region_id
3566
+ # process the query parameters
3567
+ if page_token is not None:
3568
+
3569
+ _query_params.append(("pageToken", page_token))
3570
+
3571
+ if page_size is not None:
3572
+
3573
+ _query_params.append(("pageSize", page_size))
3574
+
3575
+ # process the header parameters
3576
+ # process the form parameters
3577
+ # process the body parameter
3578
+
3579
+ # set the HTTP header `Accept`
3580
+ if "Accept" not in _header_params:
3581
+ _header_params["Accept"] = self.api_client.select_header_accept(["application/json"])
3582
+
3583
+ # authentication setting
3584
+ _auth_settings: List[str] = []
3585
+
3586
+ return self.api_client.param_serialize(
3587
+ method="GET",
3588
+ resource_path="/v1beta/projects/{projectId}/regions/{regionId}/telemetry-routers",
3589
+ path_params=_path_params,
3590
+ query_params=_query_params,
3591
+ header_params=_header_params,
3592
+ body=_body_params,
3593
+ post_params=_form_params,
3594
+ files=_files,
3595
+ auth_settings=_auth_settings,
3596
+ collection_formats=_collection_formats,
3597
+ _host=_host,
3598
+ _request_auth=_request_auth,
3599
+ )
3600
+
3601
+ @validate_call
3602
+ def update_access_token(
3603
+ self,
3604
+ project_id: Annotated[UUID, Field(description="The STACKIT portal project UUID the resource is located in.")],
3605
+ region_id: Annotated[StrictStr, Field(description="The STACKIT region name the resource is located in.")],
3606
+ telemetry_router_id: Annotated[UUID, Field(description="The Telemetry Router UUID.")],
3607
+ access_token_id: Annotated[UUID, Field(description="The Access Token UUID.")],
3608
+ update_access_token_payload: UpdateAccessTokenPayload,
3609
+ _request_timeout: Union[
3610
+ None,
3611
+ Annotated[StrictFloat, Field(gt=0)],
3612
+ Tuple[Annotated[StrictFloat, Field(gt=0)], Annotated[StrictFloat, Field(gt=0)]],
3613
+ ] = None,
3614
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
3615
+ _content_type: Optional[StrictStr] = None,
3616
+ _headers: Optional[Dict[StrictStr, Any]] = None,
3617
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
3618
+ ) -> UpdateAccessTokenResponse:
3619
+ """update_access_token
3620
+
3621
+ Update an existing access token for the given Telemetry Router by its ID.
3622
+
3623
+ :param project_id: The STACKIT portal project UUID the resource is located in. (required)
3624
+ :type project_id: UUID
3625
+ :param region_id: The STACKIT region name the resource is located in. (required)
3626
+ :type region_id: str
3627
+ :param telemetry_router_id: The Telemetry Router UUID. (required)
3628
+ :type telemetry_router_id: UUID
3629
+ :param access_token_id: The Access Token UUID. (required)
3630
+ :type access_token_id: UUID
3631
+ :param update_access_token_payload: (required)
3632
+ :type update_access_token_payload: UpdateAccessTokenPayload
3633
+ :param _request_timeout: timeout setting for this request. If one
3634
+ number provided, it will be total request
3635
+ timeout. It can also be a pair (tuple) of
3636
+ (connection, read) timeouts.
3637
+ :type _request_timeout: int, tuple(int, int), optional
3638
+ :param _request_auth: set to override the auth_settings for an a single
3639
+ request; this effectively ignores the
3640
+ authentication in the spec for a single request.
3641
+ :type _request_auth: dict, optional
3642
+ :param _content_type: force content-type for the request.
3643
+ :type _content_type: str, Optional
3644
+ :param _headers: set to override the headers for a single
3645
+ request; this effectively ignores the headers
3646
+ in the spec for a single request.
3647
+ :type _headers: dict, optional
3648
+ :param _host_index: set to override the host_index for a single
3649
+ request; this effectively ignores the host_index
3650
+ in the spec for a single request.
3651
+ :type _host_index: int, optional
3652
+ :return: Returns the result object.
3653
+ """ # noqa: E501
3654
+
3655
+ _param = self._update_access_token_serialize(
3656
+ project_id=project_id,
3657
+ region_id=region_id,
3658
+ telemetry_router_id=telemetry_router_id,
3659
+ access_token_id=access_token_id,
3660
+ update_access_token_payload=update_access_token_payload,
3661
+ _request_auth=_request_auth,
3662
+ _content_type=_content_type,
3663
+ _headers=_headers,
3664
+ _host_index=_host_index,
3665
+ )
3666
+
3667
+ _response_types_map: Dict[str, Optional[str]] = {
3668
+ "200": "UpdateAccessTokenResponse",
3669
+ "400": "Response4xx",
3670
+ "401": "Response4xx",
3671
+ "404": None,
3672
+ "409": "Response4xx",
3673
+ "500": None,
3674
+ }
3675
+ response_data = self.api_client.call_api(*_param, _request_timeout=_request_timeout)
3676
+ response_data.read()
3677
+ return self.api_client.response_deserialize(
3678
+ response_data=response_data,
3679
+ response_types_map=_response_types_map,
3680
+ ).data
3681
+
3682
+ @validate_call
3683
+ def update_access_token_with_http_info(
3684
+ self,
3685
+ project_id: Annotated[UUID, Field(description="The STACKIT portal project UUID the resource is located in.")],
3686
+ region_id: Annotated[StrictStr, Field(description="The STACKIT region name the resource is located in.")],
3687
+ telemetry_router_id: Annotated[UUID, Field(description="The Telemetry Router UUID.")],
3688
+ access_token_id: Annotated[UUID, Field(description="The Access Token UUID.")],
3689
+ update_access_token_payload: UpdateAccessTokenPayload,
3690
+ _request_timeout: Union[
3691
+ None,
3692
+ Annotated[StrictFloat, Field(gt=0)],
3693
+ Tuple[Annotated[StrictFloat, Field(gt=0)], Annotated[StrictFloat, Field(gt=0)]],
3694
+ ] = None,
3695
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
3696
+ _content_type: Optional[StrictStr] = None,
3697
+ _headers: Optional[Dict[StrictStr, Any]] = None,
3698
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
3699
+ ) -> ApiResponse[UpdateAccessTokenResponse]:
3700
+ """update_access_token
3701
+
3702
+ Update an existing access token for the given Telemetry Router by its ID.
3703
+
3704
+ :param project_id: The STACKIT portal project UUID the resource is located in. (required)
3705
+ :type project_id: UUID
3706
+ :param region_id: The STACKIT region name the resource is located in. (required)
3707
+ :type region_id: str
3708
+ :param telemetry_router_id: The Telemetry Router UUID. (required)
3709
+ :type telemetry_router_id: UUID
3710
+ :param access_token_id: The Access Token UUID. (required)
3711
+ :type access_token_id: UUID
3712
+ :param update_access_token_payload: (required)
3713
+ :type update_access_token_payload: UpdateAccessTokenPayload
3714
+ :param _request_timeout: timeout setting for this request. If one
3715
+ number provided, it will be total request
3716
+ timeout. It can also be a pair (tuple) of
3717
+ (connection, read) timeouts.
3718
+ :type _request_timeout: int, tuple(int, int), optional
3719
+ :param _request_auth: set to override the auth_settings for an a single
3720
+ request; this effectively ignores the
3721
+ authentication in the spec for a single request.
3722
+ :type _request_auth: dict, optional
3723
+ :param _content_type: force content-type for the request.
3724
+ :type _content_type: str, Optional
3725
+ :param _headers: set to override the headers for a single
3726
+ request; this effectively ignores the headers
3727
+ in the spec for a single request.
3728
+ :type _headers: dict, optional
3729
+ :param _host_index: set to override the host_index for a single
3730
+ request; this effectively ignores the host_index
3731
+ in the spec for a single request.
3732
+ :type _host_index: int, optional
3733
+ :return: Returns the result object.
3734
+ """ # noqa: E501
3735
+
3736
+ _param = self._update_access_token_serialize(
3737
+ project_id=project_id,
3738
+ region_id=region_id,
3739
+ telemetry_router_id=telemetry_router_id,
3740
+ access_token_id=access_token_id,
3741
+ update_access_token_payload=update_access_token_payload,
3742
+ _request_auth=_request_auth,
3743
+ _content_type=_content_type,
3744
+ _headers=_headers,
3745
+ _host_index=_host_index,
3746
+ )
3747
+
3748
+ _response_types_map: Dict[str, Optional[str]] = {
3749
+ "200": "UpdateAccessTokenResponse",
3750
+ "400": "Response4xx",
3751
+ "401": "Response4xx",
3752
+ "404": None,
3753
+ "409": "Response4xx",
3754
+ "500": None,
3755
+ }
3756
+ response_data = self.api_client.call_api(*_param, _request_timeout=_request_timeout)
3757
+ response_data.read()
3758
+ return self.api_client.response_deserialize(
3759
+ response_data=response_data,
3760
+ response_types_map=_response_types_map,
3761
+ )
3762
+
3763
+ @validate_call
3764
+ def update_access_token_without_preload_content(
3765
+ self,
3766
+ project_id: Annotated[UUID, Field(description="The STACKIT portal project UUID the resource is located in.")],
3767
+ region_id: Annotated[StrictStr, Field(description="The STACKIT region name the resource is located in.")],
3768
+ telemetry_router_id: Annotated[UUID, Field(description="The Telemetry Router UUID.")],
3769
+ access_token_id: Annotated[UUID, Field(description="The Access Token UUID.")],
3770
+ update_access_token_payload: UpdateAccessTokenPayload,
3771
+ _request_timeout: Union[
3772
+ None,
3773
+ Annotated[StrictFloat, Field(gt=0)],
3774
+ Tuple[Annotated[StrictFloat, Field(gt=0)], Annotated[StrictFloat, Field(gt=0)]],
3775
+ ] = None,
3776
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
3777
+ _content_type: Optional[StrictStr] = None,
3778
+ _headers: Optional[Dict[StrictStr, Any]] = None,
3779
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
3780
+ ) -> RESTResponseType:
3781
+ """update_access_token
3782
+
3783
+ Update an existing access token for the given Telemetry Router by its ID.
3784
+
3785
+ :param project_id: The STACKIT portal project UUID the resource is located in. (required)
3786
+ :type project_id: UUID
3787
+ :param region_id: The STACKIT region name the resource is located in. (required)
3788
+ :type region_id: str
3789
+ :param telemetry_router_id: The Telemetry Router UUID. (required)
3790
+ :type telemetry_router_id: UUID
3791
+ :param access_token_id: The Access Token UUID. (required)
3792
+ :type access_token_id: UUID
3793
+ :param update_access_token_payload: (required)
3794
+ :type update_access_token_payload: UpdateAccessTokenPayload
3795
+ :param _request_timeout: timeout setting for this request. If one
3796
+ number provided, it will be total request
3797
+ timeout. It can also be a pair (tuple) of
3798
+ (connection, read) timeouts.
3799
+ :type _request_timeout: int, tuple(int, int), optional
3800
+ :param _request_auth: set to override the auth_settings for an a single
3801
+ request; this effectively ignores the
3802
+ authentication in the spec for a single request.
3803
+ :type _request_auth: dict, optional
3804
+ :param _content_type: force content-type for the request.
3805
+ :type _content_type: str, Optional
3806
+ :param _headers: set to override the headers for a single
3807
+ request; this effectively ignores the headers
3808
+ in the spec for a single request.
3809
+ :type _headers: dict, optional
3810
+ :param _host_index: set to override the host_index for a single
3811
+ request; this effectively ignores the host_index
3812
+ in the spec for a single request.
3813
+ :type _host_index: int, optional
3814
+ :return: Returns the result object.
3815
+ """ # noqa: E501
3816
+
3817
+ _param = self._update_access_token_serialize(
3818
+ project_id=project_id,
3819
+ region_id=region_id,
3820
+ telemetry_router_id=telemetry_router_id,
3821
+ access_token_id=access_token_id,
3822
+ update_access_token_payload=update_access_token_payload,
3823
+ _request_auth=_request_auth,
3824
+ _content_type=_content_type,
3825
+ _headers=_headers,
3826
+ _host_index=_host_index,
3827
+ )
3828
+
3829
+ _response_types_map: Dict[str, Optional[str]] = {
3830
+ "200": "UpdateAccessTokenResponse",
3831
+ "400": "Response4xx",
3832
+ "401": "Response4xx",
3833
+ "404": None,
3834
+ "409": "Response4xx",
3835
+ "500": None,
3836
+ }
3837
+ response_data = self.api_client.call_api(*_param, _request_timeout=_request_timeout)
3838
+ return response_data.response
3839
+
3840
+ def _update_access_token_serialize(
3841
+ self,
3842
+ project_id,
3843
+ region_id,
3844
+ telemetry_router_id,
3845
+ access_token_id,
3846
+ update_access_token_payload,
3847
+ _request_auth,
3848
+ _content_type,
3849
+ _headers,
3850
+ _host_index,
3851
+ ) -> RequestSerialized:
3852
+
3853
+ _host = None
3854
+
3855
+ _collection_formats: Dict[str, str] = {}
3856
+
3857
+ _path_params: Dict[str, str] = {}
3858
+ _query_params: List[Tuple[str, str]] = []
3859
+ _header_params: Dict[str, Optional[str]] = _headers or {}
3860
+ _form_params: List[Tuple[str, str]] = []
3861
+ _files: Dict[str, Union[str, bytes, List[str], List[bytes], List[Tuple[str, bytes]]]] = {}
3862
+ _body_params: Optional[bytes] = None
3863
+
3864
+ # process the path parameters
3865
+ if project_id is not None:
3866
+ _path_params["projectId"] = project_id
3867
+ if region_id is not None:
3868
+ _path_params["regionId"] = region_id
3869
+ if telemetry_router_id is not None:
3870
+ _path_params["telemetryRouterId"] = telemetry_router_id
3871
+ if access_token_id is not None:
3872
+ _path_params["accessTokenId"] = access_token_id
3873
+ # process the query parameters
3874
+ # process the header parameters
3875
+ # process the form parameters
3876
+ # process the body parameter
3877
+ if update_access_token_payload is not None:
3878
+ _body_params = update_access_token_payload
3879
+
3880
+ # set the HTTP header `Accept`
3881
+ if "Accept" not in _header_params:
3882
+ _header_params["Accept"] = self.api_client.select_header_accept(["application/json"])
3883
+
3884
+ # set the HTTP header `Content-Type`
3885
+ if _content_type:
3886
+ _header_params["Content-Type"] = _content_type
3887
+ else:
3888
+ _default_content_type = self.api_client.select_header_content_type(["application/json"])
3889
+ if _default_content_type is not None:
3890
+ _header_params["Content-Type"] = _default_content_type
3891
+
3892
+ # authentication setting
3893
+ _auth_settings: List[str] = []
3894
+
3895
+ return self.api_client.param_serialize(
3896
+ method="PUT",
3897
+ resource_path="/v1beta/projects/{projectId}/regions/{regionId}/telemetry-routers/{telemetryRouterId}/access-tokens/{accessTokenId}",
3898
+ path_params=_path_params,
3899
+ query_params=_query_params,
3900
+ header_params=_header_params,
3901
+ body=_body_params,
3902
+ post_params=_form_params,
3903
+ files=_files,
3904
+ auth_settings=_auth_settings,
3905
+ collection_formats=_collection_formats,
3906
+ _host=_host,
3907
+ _request_auth=_request_auth,
3908
+ )
3909
+
3910
+ @validate_call
3911
+ def update_destination(
3912
+ self,
3913
+ project_id: Annotated[UUID, Field(description="The STACKIT portal project UUID the resource is located in.")],
3914
+ region_id: Annotated[StrictStr, Field(description="The STACKIT region name the resource is located in.")],
3915
+ telemetry_router_id: Annotated[UUID, Field(description="The Telemetry Router UUID.")],
3916
+ destination_id: Annotated[UUID, Field(description="The Destination UUID.")],
3917
+ update_destination_payload: UpdateDestinationPayload,
3918
+ _request_timeout: Union[
3919
+ None,
3920
+ Annotated[StrictFloat, Field(gt=0)],
3921
+ Tuple[Annotated[StrictFloat, Field(gt=0)], Annotated[StrictFloat, Field(gt=0)]],
3922
+ ] = None,
3923
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
3924
+ _content_type: Optional[StrictStr] = None,
3925
+ _headers: Optional[Dict[StrictStr, Any]] = None,
3926
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
3927
+ ) -> DestinationResponse:
3928
+ """update_destination
3929
+
3930
+ Updates the given destination.
3931
+
3932
+ :param project_id: The STACKIT portal project UUID the resource is located in. (required)
3933
+ :type project_id: UUID
3934
+ :param region_id: The STACKIT region name the resource is located in. (required)
3935
+ :type region_id: str
3936
+ :param telemetry_router_id: The Telemetry Router UUID. (required)
3937
+ :type telemetry_router_id: UUID
3938
+ :param destination_id: The Destination UUID. (required)
3939
+ :type destination_id: UUID
3940
+ :param update_destination_payload: (required)
3941
+ :type update_destination_payload: UpdateDestinationPayload
3942
+ :param _request_timeout: timeout setting for this request. If one
3943
+ number provided, it will be total request
3944
+ timeout. It can also be a pair (tuple) of
3945
+ (connection, read) timeouts.
3946
+ :type _request_timeout: int, tuple(int, int), optional
3947
+ :param _request_auth: set to override the auth_settings for an a single
3948
+ request; this effectively ignores the
3949
+ authentication in the spec for a single request.
3950
+ :type _request_auth: dict, optional
3951
+ :param _content_type: force content-type for the request.
3952
+ :type _content_type: str, Optional
3953
+ :param _headers: set to override the headers for a single
3954
+ request; this effectively ignores the headers
3955
+ in the spec for a single request.
3956
+ :type _headers: dict, optional
3957
+ :param _host_index: set to override the host_index for a single
3958
+ request; this effectively ignores the host_index
3959
+ in the spec for a single request.
3960
+ :type _host_index: int, optional
3961
+ :return: Returns the result object.
3962
+ """ # noqa: E501
3963
+
3964
+ _param = self._update_destination_serialize(
3965
+ project_id=project_id,
3966
+ region_id=region_id,
3967
+ telemetry_router_id=telemetry_router_id,
3968
+ destination_id=destination_id,
3969
+ update_destination_payload=update_destination_payload,
3970
+ _request_auth=_request_auth,
3971
+ _content_type=_content_type,
3972
+ _headers=_headers,
3973
+ _host_index=_host_index,
3974
+ )
3975
+
3976
+ _response_types_map: Dict[str, Optional[str]] = {
3977
+ "200": "DestinationResponse",
3978
+ "400": "Response4xx",
3979
+ "401": "Response4xx",
3980
+ "404": None,
3981
+ "409": "Response4xx",
3982
+ "500": None,
3983
+ }
3984
+ response_data = self.api_client.call_api(*_param, _request_timeout=_request_timeout)
3985
+ response_data.read()
3986
+ return self.api_client.response_deserialize(
3987
+ response_data=response_data,
3988
+ response_types_map=_response_types_map,
3989
+ ).data
3990
+
3991
+ @validate_call
3992
+ def update_destination_with_http_info(
3993
+ self,
3994
+ project_id: Annotated[UUID, Field(description="The STACKIT portal project UUID the resource is located in.")],
3995
+ region_id: Annotated[StrictStr, Field(description="The STACKIT region name the resource is located in.")],
3996
+ telemetry_router_id: Annotated[UUID, Field(description="The Telemetry Router UUID.")],
3997
+ destination_id: Annotated[UUID, Field(description="The Destination UUID.")],
3998
+ update_destination_payload: UpdateDestinationPayload,
3999
+ _request_timeout: Union[
4000
+ None,
4001
+ Annotated[StrictFloat, Field(gt=0)],
4002
+ Tuple[Annotated[StrictFloat, Field(gt=0)], Annotated[StrictFloat, Field(gt=0)]],
4003
+ ] = None,
4004
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
4005
+ _content_type: Optional[StrictStr] = None,
4006
+ _headers: Optional[Dict[StrictStr, Any]] = None,
4007
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
4008
+ ) -> ApiResponse[DestinationResponse]:
4009
+ """update_destination
4010
+
4011
+ Updates the given destination.
4012
+
4013
+ :param project_id: The STACKIT portal project UUID the resource is located in. (required)
4014
+ :type project_id: UUID
4015
+ :param region_id: The STACKIT region name the resource is located in. (required)
4016
+ :type region_id: str
4017
+ :param telemetry_router_id: The Telemetry Router UUID. (required)
4018
+ :type telemetry_router_id: UUID
4019
+ :param destination_id: The Destination UUID. (required)
4020
+ :type destination_id: UUID
4021
+ :param update_destination_payload: (required)
4022
+ :type update_destination_payload: UpdateDestinationPayload
4023
+ :param _request_timeout: timeout setting for this request. If one
4024
+ number provided, it will be total request
4025
+ timeout. It can also be a pair (tuple) of
4026
+ (connection, read) timeouts.
4027
+ :type _request_timeout: int, tuple(int, int), optional
4028
+ :param _request_auth: set to override the auth_settings for an a single
4029
+ request; this effectively ignores the
4030
+ authentication in the spec for a single request.
4031
+ :type _request_auth: dict, optional
4032
+ :param _content_type: force content-type for the request.
4033
+ :type _content_type: str, Optional
4034
+ :param _headers: set to override the headers for a single
4035
+ request; this effectively ignores the headers
4036
+ in the spec for a single request.
4037
+ :type _headers: dict, optional
4038
+ :param _host_index: set to override the host_index for a single
4039
+ request; this effectively ignores the host_index
4040
+ in the spec for a single request.
4041
+ :type _host_index: int, optional
4042
+ :return: Returns the result object.
4043
+ """ # noqa: E501
4044
+
4045
+ _param = self._update_destination_serialize(
4046
+ project_id=project_id,
4047
+ region_id=region_id,
4048
+ telemetry_router_id=telemetry_router_id,
4049
+ destination_id=destination_id,
4050
+ update_destination_payload=update_destination_payload,
4051
+ _request_auth=_request_auth,
4052
+ _content_type=_content_type,
4053
+ _headers=_headers,
4054
+ _host_index=_host_index,
4055
+ )
4056
+
4057
+ _response_types_map: Dict[str, Optional[str]] = {
4058
+ "200": "DestinationResponse",
4059
+ "400": "Response4xx",
4060
+ "401": "Response4xx",
4061
+ "404": None,
4062
+ "409": "Response4xx",
4063
+ "500": None,
4064
+ }
4065
+ response_data = self.api_client.call_api(*_param, _request_timeout=_request_timeout)
4066
+ response_data.read()
4067
+ return self.api_client.response_deserialize(
4068
+ response_data=response_data,
4069
+ response_types_map=_response_types_map,
4070
+ )
4071
+
4072
+ @validate_call
4073
+ def update_destination_without_preload_content(
4074
+ self,
4075
+ project_id: Annotated[UUID, Field(description="The STACKIT portal project UUID the resource is located in.")],
4076
+ region_id: Annotated[StrictStr, Field(description="The STACKIT region name the resource is located in.")],
4077
+ telemetry_router_id: Annotated[UUID, Field(description="The Telemetry Router UUID.")],
4078
+ destination_id: Annotated[UUID, Field(description="The Destination UUID.")],
4079
+ update_destination_payload: UpdateDestinationPayload,
4080
+ _request_timeout: Union[
4081
+ None,
4082
+ Annotated[StrictFloat, Field(gt=0)],
4083
+ Tuple[Annotated[StrictFloat, Field(gt=0)], Annotated[StrictFloat, Field(gt=0)]],
4084
+ ] = None,
4085
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
4086
+ _content_type: Optional[StrictStr] = None,
4087
+ _headers: Optional[Dict[StrictStr, Any]] = None,
4088
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
4089
+ ) -> RESTResponseType:
4090
+ """update_destination
4091
+
4092
+ Updates the given destination.
4093
+
4094
+ :param project_id: The STACKIT portal project UUID the resource is located in. (required)
4095
+ :type project_id: UUID
4096
+ :param region_id: The STACKIT region name the resource is located in. (required)
4097
+ :type region_id: str
4098
+ :param telemetry_router_id: The Telemetry Router UUID. (required)
4099
+ :type telemetry_router_id: UUID
4100
+ :param destination_id: The Destination UUID. (required)
4101
+ :type destination_id: UUID
4102
+ :param update_destination_payload: (required)
4103
+ :type update_destination_payload: UpdateDestinationPayload
4104
+ :param _request_timeout: timeout setting for this request. If one
4105
+ number provided, it will be total request
4106
+ timeout. It can also be a pair (tuple) of
4107
+ (connection, read) timeouts.
4108
+ :type _request_timeout: int, tuple(int, int), optional
4109
+ :param _request_auth: set to override the auth_settings for an a single
4110
+ request; this effectively ignores the
4111
+ authentication in the spec for a single request.
4112
+ :type _request_auth: dict, optional
4113
+ :param _content_type: force content-type for the request.
4114
+ :type _content_type: str, Optional
4115
+ :param _headers: set to override the headers for a single
4116
+ request; this effectively ignores the headers
4117
+ in the spec for a single request.
4118
+ :type _headers: dict, optional
4119
+ :param _host_index: set to override the host_index for a single
4120
+ request; this effectively ignores the host_index
4121
+ in the spec for a single request.
4122
+ :type _host_index: int, optional
4123
+ :return: Returns the result object.
4124
+ """ # noqa: E501
4125
+
4126
+ _param = self._update_destination_serialize(
4127
+ project_id=project_id,
4128
+ region_id=region_id,
4129
+ telemetry_router_id=telemetry_router_id,
4130
+ destination_id=destination_id,
4131
+ update_destination_payload=update_destination_payload,
4132
+ _request_auth=_request_auth,
4133
+ _content_type=_content_type,
4134
+ _headers=_headers,
4135
+ _host_index=_host_index,
4136
+ )
4137
+
4138
+ _response_types_map: Dict[str, Optional[str]] = {
4139
+ "200": "DestinationResponse",
4140
+ "400": "Response4xx",
4141
+ "401": "Response4xx",
4142
+ "404": None,
4143
+ "409": "Response4xx",
4144
+ "500": None,
4145
+ }
4146
+ response_data = self.api_client.call_api(*_param, _request_timeout=_request_timeout)
4147
+ return response_data.response
4148
+
4149
+ def _update_destination_serialize(
4150
+ self,
4151
+ project_id,
4152
+ region_id,
4153
+ telemetry_router_id,
4154
+ destination_id,
4155
+ update_destination_payload,
4156
+ _request_auth,
4157
+ _content_type,
4158
+ _headers,
4159
+ _host_index,
4160
+ ) -> RequestSerialized:
4161
+
4162
+ _host = None
4163
+
4164
+ _collection_formats: Dict[str, str] = {}
4165
+
4166
+ _path_params: Dict[str, str] = {}
4167
+ _query_params: List[Tuple[str, str]] = []
4168
+ _header_params: Dict[str, Optional[str]] = _headers or {}
4169
+ _form_params: List[Tuple[str, str]] = []
4170
+ _files: Dict[str, Union[str, bytes, List[str], List[bytes], List[Tuple[str, bytes]]]] = {}
4171
+ _body_params: Optional[bytes] = None
4172
+
4173
+ # process the path parameters
4174
+ if project_id is not None:
4175
+ _path_params["projectId"] = project_id
4176
+ if region_id is not None:
4177
+ _path_params["regionId"] = region_id
4178
+ if telemetry_router_id is not None:
4179
+ _path_params["telemetryRouterId"] = telemetry_router_id
4180
+ if destination_id is not None:
4181
+ _path_params["destinationId"] = destination_id
4182
+ # process the query parameters
4183
+ # process the header parameters
4184
+ # process the form parameters
4185
+ # process the body parameter
4186
+ if update_destination_payload is not None:
4187
+ _body_params = update_destination_payload
4188
+
4189
+ # set the HTTP header `Accept`
4190
+ if "Accept" not in _header_params:
4191
+ _header_params["Accept"] = self.api_client.select_header_accept(["application/json"])
4192
+
4193
+ # set the HTTP header `Content-Type`
4194
+ if _content_type:
4195
+ _header_params["Content-Type"] = _content_type
4196
+ else:
4197
+ _default_content_type = self.api_client.select_header_content_type(["application/json"])
4198
+ if _default_content_type is not None:
4199
+ _header_params["Content-Type"] = _default_content_type
4200
+
4201
+ # authentication setting
4202
+ _auth_settings: List[str] = []
4203
+
4204
+ return self.api_client.param_serialize(
4205
+ method="PUT",
4206
+ resource_path="/v1beta/projects/{projectId}/regions/{regionId}/telemetry-routers/{telemetryRouterId}/destinations/{destinationId}",
4207
+ path_params=_path_params,
4208
+ query_params=_query_params,
4209
+ header_params=_header_params,
4210
+ body=_body_params,
4211
+ post_params=_form_params,
4212
+ files=_files,
4213
+ auth_settings=_auth_settings,
4214
+ collection_formats=_collection_formats,
4215
+ _host=_host,
4216
+ _request_auth=_request_auth,
4217
+ )
4218
+
4219
+ @validate_call
4220
+ def update_telemetry_router(
4221
+ self,
4222
+ project_id: Annotated[UUID, Field(description="The STACKIT portal project UUID the resource is located in.")],
4223
+ region_id: Annotated[StrictStr, Field(description="The STACKIT region name the resource is located in.")],
4224
+ telemetry_router_id: Annotated[UUID, Field(description="The Telemetry Router UUID.")],
4225
+ update_telemetry_router_payload: UpdateTelemetryRouterPayload,
4226
+ _request_timeout: Union[
4227
+ None,
4228
+ Annotated[StrictFloat, Field(gt=0)],
4229
+ Tuple[Annotated[StrictFloat, Field(gt=0)], Annotated[StrictFloat, Field(gt=0)]],
4230
+ ] = None,
4231
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
4232
+ _content_type: Optional[StrictStr] = None,
4233
+ _headers: Optional[Dict[StrictStr, Any]] = None,
4234
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
4235
+ ) -> TelemetryRouterResponse:
4236
+ """update_telemetry_router
4237
+
4238
+ Updates the given Telemetry Router.
4239
+
4240
+ :param project_id: The STACKIT portal project UUID the resource is located in. (required)
4241
+ :type project_id: UUID
4242
+ :param region_id: The STACKIT region name the resource is located in. (required)
4243
+ :type region_id: str
4244
+ :param telemetry_router_id: The Telemetry Router UUID. (required)
4245
+ :type telemetry_router_id: UUID
4246
+ :param update_telemetry_router_payload: (required)
4247
+ :type update_telemetry_router_payload: UpdateTelemetryRouterPayload
4248
+ :param _request_timeout: timeout setting for this request. If one
4249
+ number provided, it will be total request
4250
+ timeout. It can also be a pair (tuple) of
4251
+ (connection, read) timeouts.
4252
+ :type _request_timeout: int, tuple(int, int), optional
4253
+ :param _request_auth: set to override the auth_settings for an a single
4254
+ request; this effectively ignores the
4255
+ authentication in the spec for a single request.
4256
+ :type _request_auth: dict, optional
4257
+ :param _content_type: force content-type for the request.
4258
+ :type _content_type: str, Optional
4259
+ :param _headers: set to override the headers for a single
4260
+ request; this effectively ignores the headers
4261
+ in the spec for a single request.
4262
+ :type _headers: dict, optional
4263
+ :param _host_index: set to override the host_index for a single
4264
+ request; this effectively ignores the host_index
4265
+ in the spec for a single request.
4266
+ :type _host_index: int, optional
4267
+ :return: Returns the result object.
4268
+ """ # noqa: E501
4269
+
4270
+ _param = self._update_telemetry_router_serialize(
4271
+ project_id=project_id,
4272
+ region_id=region_id,
4273
+ telemetry_router_id=telemetry_router_id,
4274
+ update_telemetry_router_payload=update_telemetry_router_payload,
4275
+ _request_auth=_request_auth,
4276
+ _content_type=_content_type,
4277
+ _headers=_headers,
4278
+ _host_index=_host_index,
4279
+ )
4280
+
4281
+ _response_types_map: Dict[str, Optional[str]] = {
4282
+ "200": "TelemetryRouterResponse",
4283
+ "400": "Response4xx",
4284
+ "401": "Response4xx",
4285
+ "404": None,
4286
+ "409": "Response4xx",
4287
+ "500": None,
4288
+ }
4289
+ response_data = self.api_client.call_api(*_param, _request_timeout=_request_timeout)
4290
+ response_data.read()
4291
+ return self.api_client.response_deserialize(
4292
+ response_data=response_data,
4293
+ response_types_map=_response_types_map,
4294
+ ).data
4295
+
4296
+ @validate_call
4297
+ def update_telemetry_router_with_http_info(
4298
+ self,
4299
+ project_id: Annotated[UUID, Field(description="The STACKIT portal project UUID the resource is located in.")],
4300
+ region_id: Annotated[StrictStr, Field(description="The STACKIT region name the resource is located in.")],
4301
+ telemetry_router_id: Annotated[UUID, Field(description="The Telemetry Router UUID.")],
4302
+ update_telemetry_router_payload: UpdateTelemetryRouterPayload,
4303
+ _request_timeout: Union[
4304
+ None,
4305
+ Annotated[StrictFloat, Field(gt=0)],
4306
+ Tuple[Annotated[StrictFloat, Field(gt=0)], Annotated[StrictFloat, Field(gt=0)]],
4307
+ ] = None,
4308
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
4309
+ _content_type: Optional[StrictStr] = None,
4310
+ _headers: Optional[Dict[StrictStr, Any]] = None,
4311
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
4312
+ ) -> ApiResponse[TelemetryRouterResponse]:
4313
+ """update_telemetry_router
4314
+
4315
+ Updates the given Telemetry Router.
4316
+
4317
+ :param project_id: The STACKIT portal project UUID the resource is located in. (required)
4318
+ :type project_id: UUID
4319
+ :param region_id: The STACKIT region name the resource is located in. (required)
4320
+ :type region_id: str
4321
+ :param telemetry_router_id: The Telemetry Router UUID. (required)
4322
+ :type telemetry_router_id: UUID
4323
+ :param update_telemetry_router_payload: (required)
4324
+ :type update_telemetry_router_payload: UpdateTelemetryRouterPayload
4325
+ :param _request_timeout: timeout setting for this request. If one
4326
+ number provided, it will be total request
4327
+ timeout. It can also be a pair (tuple) of
4328
+ (connection, read) timeouts.
4329
+ :type _request_timeout: int, tuple(int, int), optional
4330
+ :param _request_auth: set to override the auth_settings for an a single
4331
+ request; this effectively ignores the
4332
+ authentication in the spec for a single request.
4333
+ :type _request_auth: dict, optional
4334
+ :param _content_type: force content-type for the request.
4335
+ :type _content_type: str, Optional
4336
+ :param _headers: set to override the headers for a single
4337
+ request; this effectively ignores the headers
4338
+ in the spec for a single request.
4339
+ :type _headers: dict, optional
4340
+ :param _host_index: set to override the host_index for a single
4341
+ request; this effectively ignores the host_index
4342
+ in the spec for a single request.
4343
+ :type _host_index: int, optional
4344
+ :return: Returns the result object.
4345
+ """ # noqa: E501
4346
+
4347
+ _param = self._update_telemetry_router_serialize(
4348
+ project_id=project_id,
4349
+ region_id=region_id,
4350
+ telemetry_router_id=telemetry_router_id,
4351
+ update_telemetry_router_payload=update_telemetry_router_payload,
4352
+ _request_auth=_request_auth,
4353
+ _content_type=_content_type,
4354
+ _headers=_headers,
4355
+ _host_index=_host_index,
4356
+ )
4357
+
4358
+ _response_types_map: Dict[str, Optional[str]] = {
4359
+ "200": "TelemetryRouterResponse",
4360
+ "400": "Response4xx",
4361
+ "401": "Response4xx",
4362
+ "404": None,
4363
+ "409": "Response4xx",
4364
+ "500": None,
4365
+ }
4366
+ response_data = self.api_client.call_api(*_param, _request_timeout=_request_timeout)
4367
+ response_data.read()
4368
+ return self.api_client.response_deserialize(
4369
+ response_data=response_data,
4370
+ response_types_map=_response_types_map,
4371
+ )
4372
+
4373
+ @validate_call
4374
+ def update_telemetry_router_without_preload_content(
4375
+ self,
4376
+ project_id: Annotated[UUID, Field(description="The STACKIT portal project UUID the resource is located in.")],
4377
+ region_id: Annotated[StrictStr, Field(description="The STACKIT region name the resource is located in.")],
4378
+ telemetry_router_id: Annotated[UUID, Field(description="The Telemetry Router UUID.")],
4379
+ update_telemetry_router_payload: UpdateTelemetryRouterPayload,
4380
+ _request_timeout: Union[
4381
+ None,
4382
+ Annotated[StrictFloat, Field(gt=0)],
4383
+ Tuple[Annotated[StrictFloat, Field(gt=0)], Annotated[StrictFloat, Field(gt=0)]],
4384
+ ] = None,
4385
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
4386
+ _content_type: Optional[StrictStr] = None,
4387
+ _headers: Optional[Dict[StrictStr, Any]] = None,
4388
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
4389
+ ) -> RESTResponseType:
4390
+ """update_telemetry_router
4391
+
4392
+ Updates the given Telemetry Router.
4393
+
4394
+ :param project_id: The STACKIT portal project UUID the resource is located in. (required)
4395
+ :type project_id: UUID
4396
+ :param region_id: The STACKIT region name the resource is located in. (required)
4397
+ :type region_id: str
4398
+ :param telemetry_router_id: The Telemetry Router UUID. (required)
4399
+ :type telemetry_router_id: UUID
4400
+ :param update_telemetry_router_payload: (required)
4401
+ :type update_telemetry_router_payload: UpdateTelemetryRouterPayload
4402
+ :param _request_timeout: timeout setting for this request. If one
4403
+ number provided, it will be total request
4404
+ timeout. It can also be a pair (tuple) of
4405
+ (connection, read) timeouts.
4406
+ :type _request_timeout: int, tuple(int, int), optional
4407
+ :param _request_auth: set to override the auth_settings for an a single
4408
+ request; this effectively ignores the
4409
+ authentication in the spec for a single request.
4410
+ :type _request_auth: dict, optional
4411
+ :param _content_type: force content-type for the request.
4412
+ :type _content_type: str, Optional
4413
+ :param _headers: set to override the headers for a single
4414
+ request; this effectively ignores the headers
4415
+ in the spec for a single request.
4416
+ :type _headers: dict, optional
4417
+ :param _host_index: set to override the host_index for a single
4418
+ request; this effectively ignores the host_index
4419
+ in the spec for a single request.
4420
+ :type _host_index: int, optional
4421
+ :return: Returns the result object.
4422
+ """ # noqa: E501
4423
+
4424
+ _param = self._update_telemetry_router_serialize(
4425
+ project_id=project_id,
4426
+ region_id=region_id,
4427
+ telemetry_router_id=telemetry_router_id,
4428
+ update_telemetry_router_payload=update_telemetry_router_payload,
4429
+ _request_auth=_request_auth,
4430
+ _content_type=_content_type,
4431
+ _headers=_headers,
4432
+ _host_index=_host_index,
4433
+ )
4434
+
4435
+ _response_types_map: Dict[str, Optional[str]] = {
4436
+ "200": "TelemetryRouterResponse",
4437
+ "400": "Response4xx",
4438
+ "401": "Response4xx",
4439
+ "404": None,
4440
+ "409": "Response4xx",
4441
+ "500": None,
4442
+ }
4443
+ response_data = self.api_client.call_api(*_param, _request_timeout=_request_timeout)
4444
+ return response_data.response
4445
+
4446
+ def _update_telemetry_router_serialize(
4447
+ self,
4448
+ project_id,
4449
+ region_id,
4450
+ telemetry_router_id,
4451
+ update_telemetry_router_payload,
4452
+ _request_auth,
4453
+ _content_type,
4454
+ _headers,
4455
+ _host_index,
4456
+ ) -> RequestSerialized:
4457
+
4458
+ _host = None
4459
+
4460
+ _collection_formats: Dict[str, str] = {}
4461
+
4462
+ _path_params: Dict[str, str] = {}
4463
+ _query_params: List[Tuple[str, str]] = []
4464
+ _header_params: Dict[str, Optional[str]] = _headers or {}
4465
+ _form_params: List[Tuple[str, str]] = []
4466
+ _files: Dict[str, Union[str, bytes, List[str], List[bytes], List[Tuple[str, bytes]]]] = {}
4467
+ _body_params: Optional[bytes] = None
4468
+
4469
+ # process the path parameters
4470
+ if project_id is not None:
4471
+ _path_params["projectId"] = project_id
4472
+ if region_id is not None:
4473
+ _path_params["regionId"] = region_id
4474
+ if telemetry_router_id is not None:
4475
+ _path_params["telemetryRouterId"] = telemetry_router_id
4476
+ # process the query parameters
4477
+ # process the header parameters
4478
+ # process the form parameters
4479
+ # process the body parameter
4480
+ if update_telemetry_router_payload is not None:
4481
+ _body_params = update_telemetry_router_payload
4482
+
4483
+ # set the HTTP header `Accept`
4484
+ if "Accept" not in _header_params:
4485
+ _header_params["Accept"] = self.api_client.select_header_accept(["application/json"])
4486
+
4487
+ # set the HTTP header `Content-Type`
4488
+ if _content_type:
4489
+ _header_params["Content-Type"] = _content_type
4490
+ else:
4491
+ _default_content_type = self.api_client.select_header_content_type(["application/json"])
4492
+ if _default_content_type is not None:
4493
+ _header_params["Content-Type"] = _default_content_type
4494
+
4495
+ # authentication setting
4496
+ _auth_settings: List[str] = []
4497
+
4498
+ return self.api_client.param_serialize(
4499
+ method="PUT",
4500
+ resource_path="/v1beta/projects/{projectId}/regions/{regionId}/telemetry-routers/{telemetryRouterId}",
4501
+ path_params=_path_params,
4502
+ query_params=_query_params,
4503
+ header_params=_header_params,
4504
+ body=_body_params,
4505
+ post_params=_form_params,
4506
+ files=_files,
4507
+ auth_settings=_auth_settings,
4508
+ collection_formats=_collection_formats,
4509
+ _host=_host,
4510
+ _request_auth=_request_auth,
4511
+ )