scc-firewall-manager-sdk 1.15.287__py3-none-any.whl → 1.15.563__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 (50) hide show
  1. scc_firewall_manager_sdk/__init__.py +9 -1
  2. scc_firewall_manager_sdk/api/__init__.py +2 -0
  3. scc_firewall_manager_sdk/api/ai_assistant_api.py +12 -12
  4. scc_firewall_manager_sdk/api/asa_access_groups_api.py +12 -12
  5. scc_firewall_manager_sdk/api/asa_access_rules_api.py +12 -12
  6. scc_firewall_manager_sdk/api/asa_interfaces_api.py +72 -72
  7. scc_firewall_manager_sdk/api/audit_logs_api.py +12 -12
  8. scc_firewall_manager_sdk/api/change_requests_api.py +12 -12
  9. scc_firewall_manager_sdk/api/changelogs_api.py +12 -12
  10. scc_firewall_manager_sdk/api/command_line_interface_api.py +24 -24
  11. scc_firewall_manager_sdk/api/connectors_api.py +12 -313
  12. scc_firewall_manager_sdk/api/device_health_aggregations_api.py +6 -6
  13. scc_firewall_manager_sdk/api/device_upgrades_api.py +15 -15
  14. scc_firewall_manager_sdk/api/events_api.py +358 -0
  15. scc_firewall_manager_sdk/api/interface_health_aggregations_api.py +6 -6
  16. scc_firewall_manager_sdk/api/inventory_api.py +48 -48
  17. scc_firewall_manager_sdk/api/licensing_api.py +626 -0
  18. scc_firewall_manager_sdk/api/msp_device_upgrades_api.py +53 -24
  19. scc_firewall_manager_sdk/api/msp_inventory_api.py +48 -48
  20. scc_firewall_manager_sdk/api/msp_tenant_management_api.py +41 -12
  21. scc_firewall_manager_sdk/api/msp_user_management_api.py +24 -24
  22. scc_firewall_manager_sdk/api/remote_access_monitoring_api.py +24 -24
  23. scc_firewall_manager_sdk/api/tenant_management_api.py +21 -18
  24. scc_firewall_manager_sdk/api/users_api.py +30 -30
  25. scc_firewall_manager_sdk/api_client.py +1 -1
  26. scc_firewall_manager_sdk/configuration.py +1 -1
  27. scc_firewall_manager_sdk/models/__init__.py +6 -0
  28. scc_firewall_manager_sdk/models/access_group.py +1 -1
  29. scc_firewall_manager_sdk/models/cdo_transaction.py +12 -12
  30. scc_firewall_manager_sdk/models/common_api_error.py +3 -3
  31. scc_firewall_manager_sdk/models/completion_status_dto.py +104 -0
  32. scc_firewall_manager_sdk/models/device_license_dto.py +133 -0
  33. scc_firewall_manager_sdk/models/device_license_page.py +102 -0
  34. scc_firewall_manager_sdk/models/device_upgrade_status_dto.py +13 -7
  35. scc_firewall_manager_sdk/models/enable_cd_fmc_for_tenant_request.py +88 -0
  36. scc_firewall_manager_sdk/models/log_settings.py +1 -1
  37. scc_firewall_manager_sdk/models/msp_calculate_compatible_upgrade_versions_input.py +1 -1
  38. scc_firewall_manager_sdk/models/msp_managed_device.py +7 -1
  39. scc_firewall_manager_sdk/models/msp_managed_device_distinct_attribute_values.py +5 -1
  40. scc_firewall_manager_sdk/models/msp_upgrade_ftd_devices_input.py +97 -0
  41. scc_firewall_manager_sdk/models/msp_upgrade_run_dto.py +9 -9
  42. scc_firewall_manager_sdk/models/msp_upgrade_runs_attribute_values.py +18 -3
  43. scc_firewall_manager_sdk/models/smart_account.py +90 -0
  44. scc_firewall_manager_sdk/models/tenant_settings.py +3 -1
  45. scc_firewall_manager_sdk/models/upgrade_run_dto.py +1 -1
  46. scc_firewall_manager_sdk/models/upgrade_run_metadata_dto.py +1 -1
  47. {scc_firewall_manager_sdk-1.15.287.dist-info → scc_firewall_manager_sdk-1.15.563.dist-info}/METADATA +1 -1
  48. {scc_firewall_manager_sdk-1.15.287.dist-info → scc_firewall_manager_sdk-1.15.563.dist-info}/RECORD +50 -42
  49. {scc_firewall_manager_sdk-1.15.287.dist-info → scc_firewall_manager_sdk-1.15.563.dist-info}/WHEEL +0 -0
  50. {scc_firewall_manager_sdk-1.15.287.dist-info → scc_firewall_manager_sdk-1.15.563.dist-info}/top_level.txt +0 -0
@@ -0,0 +1,626 @@
1
+ # coding: utf-8
2
+
3
+ """
4
+ Cisco Security Cloud Control Firewall Manager API
5
+
6
+ Use the documentation to explore the endpoints Security Cloud Control Firewall Manager has to offer
7
+
8
+ The version of the OpenAPI document: 1.15.0
9
+ Contact: cdo.tac@cisco.com
10
+ Generated by OpenAPI Generator (https://openapi-generator.tech)
11
+
12
+ Do not edit the class manually.
13
+ """ # noqa: E501
14
+
15
+ import warnings
16
+ from pydantic import validate_call, Field, StrictFloat, StrictStr, StrictInt
17
+ from typing import Any, Dict, List, Optional, Tuple, Union
18
+ from typing_extensions import Annotated
19
+
20
+ from pydantic import Field, StrictStr
21
+ from typing import List, Optional
22
+ from typing_extensions import Annotated
23
+ from scc_firewall_manager_sdk.models.device_license_dto import DeviceLicenseDto
24
+ from scc_firewall_manager_sdk.models.device_license_page import DeviceLicensePage
25
+
26
+ from scc_firewall_manager_sdk.api_client import ApiClient, RequestSerialized
27
+ from scc_firewall_manager_sdk.api_response import ApiResponse
28
+ from scc_firewall_manager_sdk.rest import RESTResponseType
29
+
30
+
31
+ class LicensingApi:
32
+ """NOTE: This class is auto generated by OpenAPI Generator
33
+ Ref: https://openapi-generator.tech
34
+
35
+ Do not edit the class manually.
36
+ """
37
+
38
+ def __init__(self, api_client=None) -> None:
39
+ if api_client is None:
40
+ api_client = ApiClient.get_default()
41
+ self.api_client = api_client
42
+
43
+
44
+ @validate_call
45
+ def get_device_licenses(
46
+ self,
47
+ limit: Annotated[Optional[Annotated[str, Field(strict=True)]], Field(description="Number of results to retrieve.")] = None,
48
+ offset: Annotated[Optional[Annotated[str, Field(strict=True)]], Field(description="Offset of the results retrieved. The Security Cloud Control APIs use the offset field to determine the index of the first result retrieved, and will retrieve `limit` results from the offset specified.")] = None,
49
+ q: Annotated[Optional[StrictStr], Field(description="The query to execute. Use the Lucene Query Syntax to construct your query.")] = None,
50
+ sort: Annotated[Optional[List[StrictStr]], Field(description="The fields to sort results by.")] = None,
51
+ _request_timeout: Union[
52
+ None,
53
+ Annotated[StrictFloat, Field(gt=0)],
54
+ Tuple[
55
+ Annotated[StrictFloat, Field(gt=0)],
56
+ Annotated[StrictFloat, Field(gt=0)]
57
+ ]
58
+ ] = None,
59
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
60
+ _content_type: Optional[StrictStr] = None,
61
+ _headers: Optional[Dict[StrictStr, Any]] = None,
62
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
63
+ ) -> DeviceLicensePage:
64
+ """Get Device Licenses
65
+
66
+ Get a paginated list of device licenses.
67
+
68
+ :param limit: Number of results to retrieve.
69
+ :type limit: str
70
+ :param offset: Offset of the results retrieved. The Security Cloud Control APIs use the offset field to determine the index of the first result retrieved, and will retrieve `limit` results from the offset specified.
71
+ :type offset: str
72
+ :param q: The query to execute. Use the Lucene Query Syntax to construct your query.
73
+ :type q: str
74
+ :param sort: The fields to sort results by.
75
+ :type sort: List[str]
76
+ :param _request_timeout: timeout setting for this request. If one
77
+ number provided, it will be total request
78
+ timeout. It can also be a pair (tuple) of
79
+ (connection, read) timeouts.
80
+ :type _request_timeout: int, tuple(int, int), optional
81
+ :param _request_auth: set to override the auth_settings for an a single
82
+ request; this effectively ignores the
83
+ authentication in the spec for a single request.
84
+ :type _request_auth: dict, optional
85
+ :param _content_type: force content-type for the request.
86
+ :type _content_type: str, Optional
87
+ :param _headers: set to override the headers for a single
88
+ request; this effectively ignores the headers
89
+ in the spec for a single request.
90
+ :type _headers: dict, optional
91
+ :param _host_index: set to override the host_index for a single
92
+ request; this effectively ignores the host_index
93
+ in the spec for a single request.
94
+ :type _host_index: int, optional
95
+ :return: Returns the result object.
96
+ """ # noqa: E501
97
+
98
+ _param = self._get_device_licenses_serialize(
99
+ limit=limit,
100
+ offset=offset,
101
+ q=q,
102
+ sort=sort,
103
+ _request_auth=_request_auth,
104
+ _content_type=_content_type,
105
+ _headers=_headers,
106
+ _host_index=_host_index
107
+ )
108
+
109
+ _response_types_map: Dict[str, Optional[str]] = {
110
+ '200': "DeviceLicensePage",
111
+ '401': "AuthenticationError",
112
+ '500': "CommonApiError",
113
+ }
114
+ response_data = self.api_client.call_api(
115
+ *_param,
116
+ _request_timeout=_request_timeout
117
+ )
118
+ response_data.read()
119
+ return self.api_client.response_deserialize(
120
+ response_data=response_data,
121
+ response_types_map=_response_types_map,
122
+ ).data
123
+
124
+
125
+ @validate_call
126
+ def get_device_licenses_with_http_info(
127
+ self,
128
+ limit: Annotated[Optional[Annotated[str, Field(strict=True)]], Field(description="Number of results to retrieve.")] = None,
129
+ offset: Annotated[Optional[Annotated[str, Field(strict=True)]], Field(description="Offset of the results retrieved. The Security Cloud Control APIs use the offset field to determine the index of the first result retrieved, and will retrieve `limit` results from the offset specified.")] = None,
130
+ q: Annotated[Optional[StrictStr], Field(description="The query to execute. Use the Lucene Query Syntax to construct your query.")] = None,
131
+ sort: Annotated[Optional[List[StrictStr]], Field(description="The fields to sort results by.")] = None,
132
+ _request_timeout: Union[
133
+ None,
134
+ Annotated[StrictFloat, Field(gt=0)],
135
+ Tuple[
136
+ Annotated[StrictFloat, Field(gt=0)],
137
+ Annotated[StrictFloat, Field(gt=0)]
138
+ ]
139
+ ] = None,
140
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
141
+ _content_type: Optional[StrictStr] = None,
142
+ _headers: Optional[Dict[StrictStr, Any]] = None,
143
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
144
+ ) -> ApiResponse[DeviceLicensePage]:
145
+ """Get Device Licenses
146
+
147
+ Get a paginated list of device licenses.
148
+
149
+ :param limit: Number of results to retrieve.
150
+ :type limit: str
151
+ :param offset: Offset of the results retrieved. The Security Cloud Control APIs use the offset field to determine the index of the first result retrieved, and will retrieve `limit` results from the offset specified.
152
+ :type offset: str
153
+ :param q: The query to execute. Use the Lucene Query Syntax to construct your query.
154
+ :type q: str
155
+ :param sort: The fields to sort results by.
156
+ :type sort: List[str]
157
+ :param _request_timeout: timeout setting for this request. If one
158
+ number provided, it will be total request
159
+ timeout. It can also be a pair (tuple) of
160
+ (connection, read) timeouts.
161
+ :type _request_timeout: int, tuple(int, int), optional
162
+ :param _request_auth: set to override the auth_settings for an a single
163
+ request; this effectively ignores the
164
+ authentication in the spec for a single request.
165
+ :type _request_auth: dict, optional
166
+ :param _content_type: force content-type for the request.
167
+ :type _content_type: str, Optional
168
+ :param _headers: set to override the headers for a single
169
+ request; this effectively ignores the headers
170
+ in the spec for a single request.
171
+ :type _headers: dict, optional
172
+ :param _host_index: set to override the host_index for a single
173
+ request; this effectively ignores the host_index
174
+ in the spec for a single request.
175
+ :type _host_index: int, optional
176
+ :return: Returns the result object.
177
+ """ # noqa: E501
178
+
179
+ _param = self._get_device_licenses_serialize(
180
+ limit=limit,
181
+ offset=offset,
182
+ q=q,
183
+ sort=sort,
184
+ _request_auth=_request_auth,
185
+ _content_type=_content_type,
186
+ _headers=_headers,
187
+ _host_index=_host_index
188
+ )
189
+
190
+ _response_types_map: Dict[str, Optional[str]] = {
191
+ '200': "DeviceLicensePage",
192
+ '401': "AuthenticationError",
193
+ '500': "CommonApiError",
194
+ }
195
+ response_data = self.api_client.call_api(
196
+ *_param,
197
+ _request_timeout=_request_timeout
198
+ )
199
+ response_data.read()
200
+ return self.api_client.response_deserialize(
201
+ response_data=response_data,
202
+ response_types_map=_response_types_map,
203
+ )
204
+
205
+
206
+ @validate_call
207
+ def get_device_licenses_without_preload_content(
208
+ self,
209
+ limit: Annotated[Optional[Annotated[str, Field(strict=True)]], Field(description="Number of results to retrieve.")] = None,
210
+ offset: Annotated[Optional[Annotated[str, Field(strict=True)]], Field(description="Offset of the results retrieved. The Security Cloud Control APIs use the offset field to determine the index of the first result retrieved, and will retrieve `limit` results from the offset specified.")] = None,
211
+ q: Annotated[Optional[StrictStr], Field(description="The query to execute. Use the Lucene Query Syntax to construct your query.")] = None,
212
+ sort: Annotated[Optional[List[StrictStr]], Field(description="The fields to sort results by.")] = None,
213
+ _request_timeout: Union[
214
+ None,
215
+ Annotated[StrictFloat, Field(gt=0)],
216
+ Tuple[
217
+ Annotated[StrictFloat, Field(gt=0)],
218
+ Annotated[StrictFloat, Field(gt=0)]
219
+ ]
220
+ ] = None,
221
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
222
+ _content_type: Optional[StrictStr] = None,
223
+ _headers: Optional[Dict[StrictStr, Any]] = None,
224
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
225
+ ) -> RESTResponseType:
226
+ """Get Device Licenses
227
+
228
+ Get a paginated list of device licenses.
229
+
230
+ :param limit: Number of results to retrieve.
231
+ :type limit: str
232
+ :param offset: Offset of the results retrieved. The Security Cloud Control APIs use the offset field to determine the index of the first result retrieved, and will retrieve `limit` results from the offset specified.
233
+ :type offset: str
234
+ :param q: The query to execute. Use the Lucene Query Syntax to construct your query.
235
+ :type q: str
236
+ :param sort: The fields to sort results by.
237
+ :type sort: List[str]
238
+ :param _request_timeout: timeout setting for this request. If one
239
+ number provided, it will be total request
240
+ timeout. It can also be a pair (tuple) of
241
+ (connection, read) timeouts.
242
+ :type _request_timeout: int, tuple(int, int), optional
243
+ :param _request_auth: set to override the auth_settings for an a single
244
+ request; this effectively ignores the
245
+ authentication in the spec for a single request.
246
+ :type _request_auth: dict, optional
247
+ :param _content_type: force content-type for the request.
248
+ :type _content_type: str, Optional
249
+ :param _headers: set to override the headers for a single
250
+ request; this effectively ignores the headers
251
+ in the spec for a single request.
252
+ :type _headers: dict, optional
253
+ :param _host_index: set to override the host_index for a single
254
+ request; this effectively ignores the host_index
255
+ in the spec for a single request.
256
+ :type _host_index: int, optional
257
+ :return: Returns the result object.
258
+ """ # noqa: E501
259
+
260
+ _param = self._get_device_licenses_serialize(
261
+ limit=limit,
262
+ offset=offset,
263
+ q=q,
264
+ sort=sort,
265
+ _request_auth=_request_auth,
266
+ _content_type=_content_type,
267
+ _headers=_headers,
268
+ _host_index=_host_index
269
+ )
270
+
271
+ _response_types_map: Dict[str, Optional[str]] = {
272
+ '200': "DeviceLicensePage",
273
+ '401': "AuthenticationError",
274
+ '500': "CommonApiError",
275
+ }
276
+ response_data = self.api_client.call_api(
277
+ *_param,
278
+ _request_timeout=_request_timeout
279
+ )
280
+ return response_data.response
281
+
282
+
283
+ def _get_device_licenses_serialize(
284
+ self,
285
+ limit,
286
+ offset,
287
+ q,
288
+ sort,
289
+ _request_auth,
290
+ _content_type,
291
+ _headers,
292
+ _host_index,
293
+ ) -> RequestSerialized:
294
+
295
+ _host = None
296
+
297
+ _collection_formats: Dict[str, str] = {
298
+ 'sort': 'multi',
299
+ }
300
+
301
+ _path_params: Dict[str, str] = {}
302
+ _query_params: List[Tuple[str, str]] = []
303
+ _header_params: Dict[str, Optional[str]] = _headers or {}
304
+ _form_params: List[Tuple[str, str]] = []
305
+ _files: Dict[str, str] = {}
306
+ _body_params: Optional[bytes] = None
307
+
308
+ # process the path parameters
309
+ # process the query parameters
310
+ if limit is not None:
311
+
312
+ _query_params.append(('limit', limit))
313
+
314
+ if offset is not None:
315
+
316
+ _query_params.append(('offset', offset))
317
+
318
+ if q is not None:
319
+
320
+ _query_params.append(('q', q))
321
+
322
+ if sort is not None:
323
+
324
+ _query_params.append(('sort', sort))
325
+
326
+ # process the header parameters
327
+ # process the form parameters
328
+ # process the body parameter
329
+
330
+
331
+ # set the HTTP header `Accept`
332
+ _header_params['Accept'] = self.api_client.select_header_accept(
333
+ [
334
+ 'application/json'
335
+ ]
336
+ )
337
+
338
+
339
+ # authentication setting
340
+ _auth_settings: List[str] = [
341
+ 'bearerAuth'
342
+ ]
343
+
344
+ return self.api_client.param_serialize(
345
+ method='GET',
346
+ resource_path='/v1/licenses/devices',
347
+ path_params=_path_params,
348
+ query_params=_query_params,
349
+ header_params=_header_params,
350
+ body=_body_params,
351
+ post_params=_form_params,
352
+ files=_files,
353
+ auth_settings=_auth_settings,
354
+ collection_formats=_collection_formats,
355
+ _host=_host,
356
+ _request_auth=_request_auth
357
+ )
358
+
359
+
360
+
361
+
362
+ @validate_call
363
+ def get_device_licenses_by_uid(
364
+ self,
365
+ device_uid: Annotated[StrictStr, Field(description="The unique identifier (UID) of the device")],
366
+ _request_timeout: Union[
367
+ None,
368
+ Annotated[StrictFloat, Field(gt=0)],
369
+ Tuple[
370
+ Annotated[StrictFloat, Field(gt=0)],
371
+ Annotated[StrictFloat, Field(gt=0)]
372
+ ]
373
+ ] = None,
374
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
375
+ _content_type: Optional[StrictStr] = None,
376
+ _headers: Optional[Dict[StrictStr, Any]] = None,
377
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
378
+ ) -> DeviceLicenseDto:
379
+ """Get Device Licensing Information by Device UID
380
+
381
+ Retrieves the device licensing information for a specific device identified by UID.
382
+
383
+ :param device_uid: The unique identifier (UID) of the device (required)
384
+ :type device_uid: str
385
+ :param _request_timeout: timeout setting for this request. If one
386
+ number provided, it will be total request
387
+ timeout. It can also be a pair (tuple) of
388
+ (connection, read) timeouts.
389
+ :type _request_timeout: int, tuple(int, int), optional
390
+ :param _request_auth: set to override the auth_settings for an a single
391
+ request; this effectively ignores the
392
+ authentication in the spec for a single request.
393
+ :type _request_auth: dict, optional
394
+ :param _content_type: force content-type for the request.
395
+ :type _content_type: str, Optional
396
+ :param _headers: set to override the headers for a single
397
+ request; this effectively ignores the headers
398
+ in the spec for a single request.
399
+ :type _headers: dict, optional
400
+ :param _host_index: set to override the host_index for a single
401
+ request; this effectively ignores the host_index
402
+ in the spec for a single request.
403
+ :type _host_index: int, optional
404
+ :return: Returns the result object.
405
+ """ # noqa: E501
406
+
407
+ _param = self._get_device_licenses_by_uid_serialize(
408
+ device_uid=device_uid,
409
+ _request_auth=_request_auth,
410
+ _content_type=_content_type,
411
+ _headers=_headers,
412
+ _host_index=_host_index
413
+ )
414
+
415
+ _response_types_map: Dict[str, Optional[str]] = {
416
+ '200': "DeviceLicenseDto",
417
+ '401': "AuthenticationError",
418
+ '404': None,
419
+ '500': "CommonApiError",
420
+ }
421
+ response_data = self.api_client.call_api(
422
+ *_param,
423
+ _request_timeout=_request_timeout
424
+ )
425
+ response_data.read()
426
+ return self.api_client.response_deserialize(
427
+ response_data=response_data,
428
+ response_types_map=_response_types_map,
429
+ ).data
430
+
431
+
432
+ @validate_call
433
+ def get_device_licenses_by_uid_with_http_info(
434
+ self,
435
+ device_uid: Annotated[StrictStr, Field(description="The unique identifier (UID) of the device")],
436
+ _request_timeout: Union[
437
+ None,
438
+ Annotated[StrictFloat, Field(gt=0)],
439
+ Tuple[
440
+ Annotated[StrictFloat, Field(gt=0)],
441
+ Annotated[StrictFloat, Field(gt=0)]
442
+ ]
443
+ ] = None,
444
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
445
+ _content_type: Optional[StrictStr] = None,
446
+ _headers: Optional[Dict[StrictStr, Any]] = None,
447
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
448
+ ) -> ApiResponse[DeviceLicenseDto]:
449
+ """Get Device Licensing Information by Device UID
450
+
451
+ Retrieves the device licensing information for a specific device identified by UID.
452
+
453
+ :param device_uid: The unique identifier (UID) of the device (required)
454
+ :type device_uid: str
455
+ :param _request_timeout: timeout setting for this request. If one
456
+ number provided, it will be total request
457
+ timeout. It can also be a pair (tuple) of
458
+ (connection, read) timeouts.
459
+ :type _request_timeout: int, tuple(int, int), optional
460
+ :param _request_auth: set to override the auth_settings for an a single
461
+ request; this effectively ignores the
462
+ authentication in the spec for a single request.
463
+ :type _request_auth: dict, optional
464
+ :param _content_type: force content-type for the request.
465
+ :type _content_type: str, Optional
466
+ :param _headers: set to override the headers for a single
467
+ request; this effectively ignores the headers
468
+ in the spec for a single request.
469
+ :type _headers: dict, optional
470
+ :param _host_index: set to override the host_index for a single
471
+ request; this effectively ignores the host_index
472
+ in the spec for a single request.
473
+ :type _host_index: int, optional
474
+ :return: Returns the result object.
475
+ """ # noqa: E501
476
+
477
+ _param = self._get_device_licenses_by_uid_serialize(
478
+ device_uid=device_uid,
479
+ _request_auth=_request_auth,
480
+ _content_type=_content_type,
481
+ _headers=_headers,
482
+ _host_index=_host_index
483
+ )
484
+
485
+ _response_types_map: Dict[str, Optional[str]] = {
486
+ '200': "DeviceLicenseDto",
487
+ '401': "AuthenticationError",
488
+ '404': None,
489
+ '500': "CommonApiError",
490
+ }
491
+ response_data = self.api_client.call_api(
492
+ *_param,
493
+ _request_timeout=_request_timeout
494
+ )
495
+ response_data.read()
496
+ return self.api_client.response_deserialize(
497
+ response_data=response_data,
498
+ response_types_map=_response_types_map,
499
+ )
500
+
501
+
502
+ @validate_call
503
+ def get_device_licenses_by_uid_without_preload_content(
504
+ self,
505
+ device_uid: Annotated[StrictStr, Field(description="The unique identifier (UID) of the device")],
506
+ _request_timeout: Union[
507
+ None,
508
+ Annotated[StrictFloat, Field(gt=0)],
509
+ Tuple[
510
+ Annotated[StrictFloat, Field(gt=0)],
511
+ Annotated[StrictFloat, Field(gt=0)]
512
+ ]
513
+ ] = None,
514
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
515
+ _content_type: Optional[StrictStr] = None,
516
+ _headers: Optional[Dict[StrictStr, Any]] = None,
517
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
518
+ ) -> RESTResponseType:
519
+ """Get Device Licensing Information by Device UID
520
+
521
+ Retrieves the device licensing information for a specific device identified by UID.
522
+
523
+ :param device_uid: The unique identifier (UID) of the device (required)
524
+ :type device_uid: str
525
+ :param _request_timeout: timeout setting for this request. If one
526
+ number provided, it will be total request
527
+ timeout. It can also be a pair (tuple) of
528
+ (connection, read) timeouts.
529
+ :type _request_timeout: int, tuple(int, int), optional
530
+ :param _request_auth: set to override the auth_settings for an a single
531
+ request; this effectively ignores the
532
+ authentication in the spec for a single request.
533
+ :type _request_auth: dict, optional
534
+ :param _content_type: force content-type for the request.
535
+ :type _content_type: str, Optional
536
+ :param _headers: set to override the headers for a single
537
+ request; this effectively ignores the headers
538
+ in the spec for a single request.
539
+ :type _headers: dict, optional
540
+ :param _host_index: set to override the host_index for a single
541
+ request; this effectively ignores the host_index
542
+ in the spec for a single request.
543
+ :type _host_index: int, optional
544
+ :return: Returns the result object.
545
+ """ # noqa: E501
546
+
547
+ _param = self._get_device_licenses_by_uid_serialize(
548
+ device_uid=device_uid,
549
+ _request_auth=_request_auth,
550
+ _content_type=_content_type,
551
+ _headers=_headers,
552
+ _host_index=_host_index
553
+ )
554
+
555
+ _response_types_map: Dict[str, Optional[str]] = {
556
+ '200': "DeviceLicenseDto",
557
+ '401': "AuthenticationError",
558
+ '404': None,
559
+ '500': "CommonApiError",
560
+ }
561
+ response_data = self.api_client.call_api(
562
+ *_param,
563
+ _request_timeout=_request_timeout
564
+ )
565
+ return response_data.response
566
+
567
+
568
+ def _get_device_licenses_by_uid_serialize(
569
+ self,
570
+ device_uid,
571
+ _request_auth,
572
+ _content_type,
573
+ _headers,
574
+ _host_index,
575
+ ) -> RequestSerialized:
576
+
577
+ _host = None
578
+
579
+ _collection_formats: Dict[str, str] = {
580
+ }
581
+
582
+ _path_params: Dict[str, str] = {}
583
+ _query_params: List[Tuple[str, str]] = []
584
+ _header_params: Dict[str, Optional[str]] = _headers or {}
585
+ _form_params: List[Tuple[str, str]] = []
586
+ _files: Dict[str, str] = {}
587
+ _body_params: Optional[bytes] = None
588
+
589
+ # process the path parameters
590
+ if device_uid is not None:
591
+ _path_params['deviceUid'] = device_uid
592
+ # process the query parameters
593
+ # process the header parameters
594
+ # process the form parameters
595
+ # process the body parameter
596
+
597
+
598
+ # set the HTTP header `Accept`
599
+ _header_params['Accept'] = self.api_client.select_header_accept(
600
+ [
601
+ 'application/json'
602
+ ]
603
+ )
604
+
605
+
606
+ # authentication setting
607
+ _auth_settings: List[str] = [
608
+ 'bearerAuth'
609
+ ]
610
+
611
+ return self.api_client.param_serialize(
612
+ method='GET',
613
+ resource_path='/v1/licenses/devices/{deviceUid}',
614
+ path_params=_path_params,
615
+ query_params=_query_params,
616
+ header_params=_header_params,
617
+ body=_body_params,
618
+ post_params=_form_params,
619
+ files=_files,
620
+ auth_settings=_auth_settings,
621
+ collection_formats=_collection_formats,
622
+ _host=_host,
623
+ _request_auth=_request_auth
624
+ )
625
+
626
+