ibm-platform-services 0.72.0__tar.gz → 0.73.1__tar.gz
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.
- {ibm_platform_services-0.72.0/ibm_platform_services.egg-info → ibm_platform_services-0.73.1}/PKG-INFO +2 -2
- {ibm_platform_services-0.72.0 → ibm_platform_services-0.73.1}/README.md +1 -1
- {ibm_platform_services-0.72.0 → ibm_platform_services-0.73.1}/ibm_platform_services/context_based_restrictions_v1.py +87 -36
- {ibm_platform_services-0.72.0 → ibm_platform_services-0.73.1}/ibm_platform_services/iam_identity_v1.py +79 -96
- {ibm_platform_services-0.72.0 → ibm_platform_services-0.73.1}/ibm_platform_services/version.py +1 -1
- {ibm_platform_services-0.72.0 → ibm_platform_services-0.73.1/ibm_platform_services.egg-info}/PKG-INFO +2 -2
- {ibm_platform_services-0.72.0 → ibm_platform_services-0.73.1}/pyproject.toml +1 -1
- {ibm_platform_services-0.72.0 → ibm_platform_services-0.73.1}/LICENSE +0 -0
- {ibm_platform_services-0.72.0 → ibm_platform_services-0.73.1}/MANIFEST.in +0 -0
- {ibm_platform_services-0.72.0 → ibm_platform_services-0.73.1}/ibm_platform_services/__init__.py +0 -0
- {ibm_platform_services-0.72.0 → ibm_platform_services-0.73.1}/ibm_platform_services/case_management_v1.py +0 -0
- {ibm_platform_services-0.72.0 → ibm_platform_services-0.73.1}/ibm_platform_services/catalog_management_v1.py +0 -0
- {ibm_platform_services-0.72.0 → ibm_platform_services-0.73.1}/ibm_platform_services/common.py +0 -0
- {ibm_platform_services-0.72.0 → ibm_platform_services-0.73.1}/ibm_platform_services/enterprise_billing_units_v1.py +0 -0
- {ibm_platform_services-0.72.0 → ibm_platform_services-0.73.1}/ibm_platform_services/enterprise_management_v1.py +0 -0
- {ibm_platform_services-0.72.0 → ibm_platform_services-0.73.1}/ibm_platform_services/enterprise_usage_reports_v1.py +0 -0
- {ibm_platform_services-0.72.0 → ibm_platform_services-0.73.1}/ibm_platform_services/global_catalog_v1.py +0 -0
- {ibm_platform_services-0.72.0 → ibm_platform_services-0.73.1}/ibm_platform_services/global_search_v2.py +0 -0
- {ibm_platform_services-0.72.0 → ibm_platform_services-0.73.1}/ibm_platform_services/global_tagging_v1.py +0 -0
- {ibm_platform_services-0.72.0 → ibm_platform_services-0.73.1}/ibm_platform_services/iam_access_groups_v2.py +0 -0
- {ibm_platform_services-0.72.0 → ibm_platform_services-0.73.1}/ibm_platform_services/iam_policy_management_v1.py +0 -0
- {ibm_platform_services-0.72.0 → ibm_platform_services-0.73.1}/ibm_platform_services/ibm_cloud_shell_v1.py +0 -0
- {ibm_platform_services-0.72.0 → ibm_platform_services-0.73.1}/ibm_platform_services/open_service_broker_v1.py +0 -0
- {ibm_platform_services-0.72.0 → ibm_platform_services-0.73.1}/ibm_platform_services/partner_management_v1.py +0 -0
- {ibm_platform_services-0.72.0 → ibm_platform_services-0.73.1}/ibm_platform_services/resource_controller_v2.py +0 -0
- {ibm_platform_services-0.72.0 → ibm_platform_services-0.73.1}/ibm_platform_services/resource_manager_v2.py +0 -0
- {ibm_platform_services-0.72.0 → ibm_platform_services-0.73.1}/ibm_platform_services/usage_metering_v4.py +0 -0
- {ibm_platform_services-0.72.0 → ibm_platform_services-0.73.1}/ibm_platform_services/usage_reports_v4.py +0 -0
- {ibm_platform_services-0.72.0 → ibm_platform_services-0.73.1}/ibm_platform_services/user_management_v1.py +0 -0
- {ibm_platform_services-0.72.0 → ibm_platform_services-0.73.1}/ibm_platform_services.egg-info/SOURCES.txt +0 -0
- {ibm_platform_services-0.72.0 → ibm_platform_services-0.73.1}/ibm_platform_services.egg-info/dependency_links.txt +0 -0
- {ibm_platform_services-0.72.0 → ibm_platform_services-0.73.1}/ibm_platform_services.egg-info/requires.txt +0 -0
- {ibm_platform_services-0.72.0 → ibm_platform_services-0.73.1}/ibm_platform_services.egg-info/top_level.txt +0 -0
- {ibm_platform_services-0.72.0 → ibm_platform_services-0.73.1}/setup.cfg +0 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: ibm-platform-services
|
|
3
|
-
Version: 0.
|
|
3
|
+
Version: 0.73.1
|
|
4
4
|
Summary: Python client library for IBM Cloud Platform Services
|
|
5
5
|
Author-email: IBM <devxsdk@us.ibm.com>
|
|
6
6
|
Project-URL: Repository, https://github.com/IBM/platform-services-python-sdk
|
|
@@ -51,7 +51,7 @@ Dynamic: license-file
|
|
|
51
51
|
[](https://cla-assistant.io/IBM/platform-services-python-sdk)
|
|
52
52
|
|
|
53
53
|
|
|
54
|
-
# IBM Cloud Platform Services Python SDK Version 0.
|
|
54
|
+
# IBM Cloud Platform Services Python SDK Version 0.73.1
|
|
55
55
|
|
|
56
56
|
Python client library to interact with various
|
|
57
57
|
[IBM Cloud Platform Service APIs](https://cloud.ibm.com/docs?tab=api-docs&category=platform_services).
|
|
@@ -8,7 +8,7 @@
|
|
|
8
8
|
[](https://cla-assistant.io/IBM/platform-services-python-sdk)
|
|
9
9
|
|
|
10
10
|
|
|
11
|
-
# IBM Cloud Platform Services Python SDK Version 0.
|
|
11
|
+
# IBM Cloud Platform Services Python SDK Version 0.73.1
|
|
12
12
|
|
|
13
13
|
Python client library to interact with various
|
|
14
14
|
[IBM Cloud Platform Service APIs](https://cloud.ibm.com/docs?tab=api-docs&category=platform_services).
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
# coding: utf-8
|
|
2
2
|
|
|
3
|
-
# (C) Copyright IBM Corp.
|
|
3
|
+
# (C) Copyright IBM Corp. 2025.
|
|
4
4
|
#
|
|
5
5
|
# Licensed under the Apache License, Version 2.0 (the "License");
|
|
6
6
|
# you may not use this file except in compliance with the License.
|
|
@@ -14,7 +14,7 @@
|
|
|
14
14
|
# See the License for the specific language governing permissions and
|
|
15
15
|
# limitations under the License.
|
|
16
16
|
|
|
17
|
-
# IBM OpenAPI SDK Code Generator Version: 3.
|
|
17
|
+
# IBM OpenAPI SDK Code Generator Version: 3.108.0-56772134-20251111-102802
|
|
18
18
|
|
|
19
19
|
"""
|
|
20
20
|
With the Context Based Restrictions API, you can:
|
|
@@ -1290,19 +1290,20 @@ class AccountSettings:
|
|
|
1290
1290
|
:param str crn: The account settings CRN.
|
|
1291
1291
|
:param int rule_count_limit: the max number of rules allowed for the account.
|
|
1292
1292
|
:param int zone_count_limit: the max number of zones allowed for the account.
|
|
1293
|
-
:param int tags_rule_count_limit:
|
|
1294
|
-
|
|
1293
|
+
:param int tags_rule_count_limit: the max number of rules with tags allowed for
|
|
1294
|
+
the account.
|
|
1295
1295
|
:param int current_rule_count: the current number of rules used by the account.
|
|
1296
1296
|
:param int current_zone_count: the current number of zones used by the account.
|
|
1297
|
-
:param int current_tags_rule_count:
|
|
1298
|
-
|
|
1297
|
+
:param int current_tags_rule_count: the current number of rules with tags used
|
|
1298
|
+
by the account.
|
|
1299
1299
|
:param str href: The href link to the resource.
|
|
1300
|
-
:param datetime created_at: The time the resource was created.
|
|
1301
|
-
:param str created_by_id: IAM ID of the user or service which created
|
|
1302
|
-
resource.
|
|
1303
|
-
:param datetime last_modified_at: The last time the resource was
|
|
1304
|
-
|
|
1305
|
-
|
|
1300
|
+
:param datetime created_at: (optional) The time the resource was created.
|
|
1301
|
+
:param str created_by_id: (optional) IAM ID of the user or service which created
|
|
1302
|
+
the resource.
|
|
1303
|
+
:param datetime last_modified_at: (optional) The last time the resource was
|
|
1304
|
+
modified.
|
|
1305
|
+
:param str last_modified_by_id: (optional) IAM ID of the user or service which
|
|
1306
|
+
modified the resource.
|
|
1306
1307
|
"""
|
|
1307
1308
|
|
|
1308
1309
|
def __init__(
|
|
@@ -1311,16 +1312,16 @@ class AccountSettings:
|
|
|
1311
1312
|
crn: str,
|
|
1312
1313
|
rule_count_limit: int,
|
|
1313
1314
|
zone_count_limit: int,
|
|
1315
|
+
tags_rule_count_limit: int,
|
|
1314
1316
|
current_rule_count: int,
|
|
1315
1317
|
current_zone_count: int,
|
|
1318
|
+
current_tags_rule_count: int,
|
|
1316
1319
|
href: str,
|
|
1317
|
-
created_at: datetime,
|
|
1318
|
-
created_by_id: str,
|
|
1319
|
-
last_modified_at: datetime,
|
|
1320
|
-
last_modified_by_id: str,
|
|
1321
1320
|
*,
|
|
1322
|
-
|
|
1323
|
-
|
|
1321
|
+
created_at: Optional[datetime] = None,
|
|
1322
|
+
created_by_id: Optional[str] = None,
|
|
1323
|
+
last_modified_at: Optional[datetime] = None,
|
|
1324
|
+
last_modified_by_id: Optional[str] = None,
|
|
1324
1325
|
) -> None:
|
|
1325
1326
|
"""
|
|
1326
1327
|
Initialize a AccountSettings object.
|
|
@@ -1331,21 +1332,22 @@ class AccountSettings:
|
|
|
1331
1332
|
account.
|
|
1332
1333
|
:param int zone_count_limit: the max number of zones allowed for the
|
|
1333
1334
|
account.
|
|
1335
|
+
:param int tags_rule_count_limit: the max number of rules with tags allowed
|
|
1336
|
+
for the account.
|
|
1334
1337
|
:param int current_rule_count: the current number of rules used by the
|
|
1335
1338
|
account.
|
|
1336
1339
|
:param int current_zone_count: the current number of zones used by the
|
|
1337
1340
|
account.
|
|
1341
|
+
:param int current_tags_rule_count: the current number of rules with tags
|
|
1342
|
+
used by the account.
|
|
1338
1343
|
:param str href: The href link to the resource.
|
|
1339
|
-
:param datetime created_at: The time the resource was created.
|
|
1340
|
-
:param str created_by_id: IAM ID of the user or service which
|
|
1341
|
-
resource.
|
|
1342
|
-
:param datetime last_modified_at: The last time the resource was
|
|
1343
|
-
|
|
1344
|
-
|
|
1345
|
-
|
|
1346
|
-
tags allowed for the account.
|
|
1347
|
-
:param int current_tags_rule_count: (optional) the current number of rules
|
|
1348
|
-
with tags used by the account.
|
|
1344
|
+
:param datetime created_at: (optional) The time the resource was created.
|
|
1345
|
+
:param str created_by_id: (optional) IAM ID of the user or service which
|
|
1346
|
+
created the resource.
|
|
1347
|
+
:param datetime last_modified_at: (optional) The last time the resource was
|
|
1348
|
+
modified.
|
|
1349
|
+
:param str last_modified_by_id: (optional) IAM ID of the user or service
|
|
1350
|
+
which modified the resource.
|
|
1349
1351
|
"""
|
|
1350
1352
|
self.id = id
|
|
1351
1353
|
self.crn = crn
|
|
@@ -1383,6 +1385,8 @@ class AccountSettings:
|
|
|
1383
1385
|
raise ValueError('Required property \'zone_count_limit\' not present in AccountSettings JSON')
|
|
1384
1386
|
if (tags_rule_count_limit := _dict.get('tags_rule_count_limit')) is not None:
|
|
1385
1387
|
args['tags_rule_count_limit'] = tags_rule_count_limit
|
|
1388
|
+
else:
|
|
1389
|
+
raise ValueError('Required property \'tags_rule_count_limit\' not present in AccountSettings JSON')
|
|
1386
1390
|
if (current_rule_count := _dict.get('current_rule_count')) is not None:
|
|
1387
1391
|
args['current_rule_count'] = current_rule_count
|
|
1388
1392
|
else:
|
|
@@ -1393,26 +1397,20 @@ class AccountSettings:
|
|
|
1393
1397
|
raise ValueError('Required property \'current_zone_count\' not present in AccountSettings JSON')
|
|
1394
1398
|
if (current_tags_rule_count := _dict.get('current_tags_rule_count')) is not None:
|
|
1395
1399
|
args['current_tags_rule_count'] = current_tags_rule_count
|
|
1400
|
+
else:
|
|
1401
|
+
raise ValueError('Required property \'current_tags_rule_count\' not present in AccountSettings JSON')
|
|
1396
1402
|
if (href := _dict.get('href')) is not None:
|
|
1397
1403
|
args['href'] = href
|
|
1398
1404
|
else:
|
|
1399
1405
|
raise ValueError('Required property \'href\' not present in AccountSettings JSON')
|
|
1400
1406
|
if (created_at := _dict.get('created_at')) is not None:
|
|
1401
1407
|
args['created_at'] = string_to_datetime(created_at)
|
|
1402
|
-
else:
|
|
1403
|
-
raise ValueError('Required property \'created_at\' not present in AccountSettings JSON')
|
|
1404
1408
|
if (created_by_id := _dict.get('created_by_id')) is not None:
|
|
1405
1409
|
args['created_by_id'] = created_by_id
|
|
1406
|
-
else:
|
|
1407
|
-
raise ValueError('Required property \'created_by_id\' not present in AccountSettings JSON')
|
|
1408
1410
|
if (last_modified_at := _dict.get('last_modified_at')) is not None:
|
|
1409
1411
|
args['last_modified_at'] = string_to_datetime(last_modified_at)
|
|
1410
|
-
else:
|
|
1411
|
-
raise ValueError('Required property \'last_modified_at\' not present in AccountSettings JSON')
|
|
1412
1412
|
if (last_modified_by_id := _dict.get('last_modified_by_id')) is not None:
|
|
1413
1413
|
args['last_modified_by_id'] = last_modified_by_id
|
|
1414
|
-
else:
|
|
1415
|
-
raise ValueError('Required property \'last_modified_by_id\' not present in AccountSettings JSON')
|
|
1416
1414
|
return cls(**args)
|
|
1417
1415
|
|
|
1418
1416
|
@classmethod
|
|
@@ -2462,6 +2460,7 @@ class ServiceRefTarget:
|
|
|
2462
2460
|
:param str service_type: (optional) The type of the service.
|
|
2463
2461
|
:param List[ServiceRefTargetLocationsItem] locations: (optional) The locations
|
|
2464
2462
|
the service is available.
|
|
2463
|
+
:param str display_name: (optional) The display name of the service.
|
|
2465
2464
|
"""
|
|
2466
2465
|
|
|
2467
2466
|
def __init__(
|
|
@@ -2470,6 +2469,7 @@ class ServiceRefTarget:
|
|
|
2470
2469
|
*,
|
|
2471
2470
|
service_type: Optional[str] = None,
|
|
2472
2471
|
locations: Optional[List['ServiceRefTargetLocationsItem']] = None,
|
|
2472
|
+
display_name: Optional[str] = None,
|
|
2473
2473
|
) -> None:
|
|
2474
2474
|
"""
|
|
2475
2475
|
Initialize a ServiceRefTarget object.
|
|
@@ -2478,10 +2478,12 @@ class ServiceRefTarget:
|
|
|
2478
2478
|
:param str service_type: (optional) The type of the service.
|
|
2479
2479
|
:param List[ServiceRefTargetLocationsItem] locations: (optional) The
|
|
2480
2480
|
locations the service is available.
|
|
2481
|
+
:param str display_name: (optional) The display name of the service.
|
|
2481
2482
|
"""
|
|
2482
2483
|
self.service_name = service_name
|
|
2483
2484
|
self.service_type = service_type
|
|
2484
2485
|
self.locations = locations
|
|
2486
|
+
self.display_name = display_name
|
|
2485
2487
|
|
|
2486
2488
|
@classmethod
|
|
2487
2489
|
def from_dict(cls, _dict: Dict) -> 'ServiceRefTarget':
|
|
@@ -2495,6 +2497,8 @@ class ServiceRefTarget:
|
|
|
2495
2497
|
args['service_type'] = service_type
|
|
2496
2498
|
if (locations := _dict.get('locations')) is not None:
|
|
2497
2499
|
args['locations'] = [ServiceRefTargetLocationsItem.from_dict(v) for v in locations]
|
|
2500
|
+
if (display_name := _dict.get('display_name')) is not None:
|
|
2501
|
+
args['display_name'] = display_name
|
|
2498
2502
|
return cls(**args)
|
|
2499
2503
|
|
|
2500
2504
|
@classmethod
|
|
@@ -2517,6 +2521,8 @@ class ServiceRefTarget:
|
|
|
2517
2521
|
else:
|
|
2518
2522
|
locations_list.append(v.to_dict())
|
|
2519
2523
|
_dict['locations'] = locations_list
|
|
2524
|
+
if hasattr(self, 'display_name') and self.display_name is not None:
|
|
2525
|
+
_dict['display_name'] = self.display_name
|
|
2520
2526
|
return _dict
|
|
2521
2527
|
|
|
2522
2528
|
def _to_dict(self):
|
|
@@ -3251,22 +3257,27 @@ class AddressIPAddress(Address):
|
|
|
3251
3257
|
|
|
3252
3258
|
:param str type: The type of address.
|
|
3253
3259
|
:param str value: The IP address.
|
|
3260
|
+
:param str id: (optional) The address id (for use by terraform only).
|
|
3254
3261
|
"""
|
|
3255
3262
|
|
|
3256
3263
|
def __init__(
|
|
3257
3264
|
self,
|
|
3258
3265
|
type: str,
|
|
3259
3266
|
value: str,
|
|
3267
|
+
*,
|
|
3268
|
+
id: Optional[str] = None,
|
|
3260
3269
|
) -> None:
|
|
3261
3270
|
"""
|
|
3262
3271
|
Initialize a AddressIPAddress object.
|
|
3263
3272
|
|
|
3264
3273
|
:param str type: The type of address.
|
|
3265
3274
|
:param str value: The IP address.
|
|
3275
|
+
:param str id: (optional) The address id (for use by terraform only).
|
|
3266
3276
|
"""
|
|
3267
3277
|
# pylint: disable=super-init-not-called
|
|
3268
3278
|
self.type = type
|
|
3269
3279
|
self.value = value
|
|
3280
|
+
self.id = id
|
|
3270
3281
|
|
|
3271
3282
|
@classmethod
|
|
3272
3283
|
def from_dict(cls, _dict: Dict) -> 'AddressIPAddress':
|
|
@@ -3280,6 +3291,8 @@ class AddressIPAddress(Address):
|
|
|
3280
3291
|
args['value'] = value
|
|
3281
3292
|
else:
|
|
3282
3293
|
raise ValueError('Required property \'value\' not present in AddressIPAddress JSON')
|
|
3294
|
+
if (id := _dict.get('id')) is not None:
|
|
3295
|
+
args['id'] = id
|
|
3283
3296
|
return cls(**args)
|
|
3284
3297
|
|
|
3285
3298
|
@classmethod
|
|
@@ -3294,6 +3307,8 @@ class AddressIPAddress(Address):
|
|
|
3294
3307
|
_dict['type'] = self.type
|
|
3295
3308
|
if hasattr(self, 'value') and self.value is not None:
|
|
3296
3309
|
_dict['value'] = self.value
|
|
3310
|
+
if hasattr(self, 'id') and self.id is not None:
|
|
3311
|
+
_dict['id'] = self.id
|
|
3297
3312
|
return _dict
|
|
3298
3313
|
|
|
3299
3314
|
def _to_dict(self):
|
|
@@ -3328,22 +3343,27 @@ class AddressIPAddressRange(Address):
|
|
|
3328
3343
|
|
|
3329
3344
|
:param str type: The type of address.
|
|
3330
3345
|
:param str value: The ip range in <first-ip>-<last-ip> format.
|
|
3346
|
+
:param str id: (optional) The address id (for use by terraform only).
|
|
3331
3347
|
"""
|
|
3332
3348
|
|
|
3333
3349
|
def __init__(
|
|
3334
3350
|
self,
|
|
3335
3351
|
type: str,
|
|
3336
3352
|
value: str,
|
|
3353
|
+
*,
|
|
3354
|
+
id: Optional[str] = None,
|
|
3337
3355
|
) -> None:
|
|
3338
3356
|
"""
|
|
3339
3357
|
Initialize a AddressIPAddressRange object.
|
|
3340
3358
|
|
|
3341
3359
|
:param str type: The type of address.
|
|
3342
3360
|
:param str value: The ip range in <first-ip>-<last-ip> format.
|
|
3361
|
+
:param str id: (optional) The address id (for use by terraform only).
|
|
3343
3362
|
"""
|
|
3344
3363
|
# pylint: disable=super-init-not-called
|
|
3345
3364
|
self.type = type
|
|
3346
3365
|
self.value = value
|
|
3366
|
+
self.id = id
|
|
3347
3367
|
|
|
3348
3368
|
@classmethod
|
|
3349
3369
|
def from_dict(cls, _dict: Dict) -> 'AddressIPAddressRange':
|
|
@@ -3357,6 +3377,8 @@ class AddressIPAddressRange(Address):
|
|
|
3357
3377
|
args['value'] = value
|
|
3358
3378
|
else:
|
|
3359
3379
|
raise ValueError('Required property \'value\' not present in AddressIPAddressRange JSON')
|
|
3380
|
+
if (id := _dict.get('id')) is not None:
|
|
3381
|
+
args['id'] = id
|
|
3360
3382
|
return cls(**args)
|
|
3361
3383
|
|
|
3362
3384
|
@classmethod
|
|
@@ -3371,6 +3393,8 @@ class AddressIPAddressRange(Address):
|
|
|
3371
3393
|
_dict['type'] = self.type
|
|
3372
3394
|
if hasattr(self, 'value') and self.value is not None:
|
|
3373
3395
|
_dict['value'] = self.value
|
|
3396
|
+
if hasattr(self, 'id') and self.id is not None:
|
|
3397
|
+
_dict['id'] = self.id
|
|
3374
3398
|
return _dict
|
|
3375
3399
|
|
|
3376
3400
|
def _to_dict(self):
|
|
@@ -3405,22 +3429,27 @@ class AddressServiceRef(Address):
|
|
|
3405
3429
|
|
|
3406
3430
|
:param str type: The type of address.
|
|
3407
3431
|
:param ServiceRefValue ref: A service reference value.
|
|
3432
|
+
:param str id: (optional) The address id (for use by terraform only).
|
|
3408
3433
|
"""
|
|
3409
3434
|
|
|
3410
3435
|
def __init__(
|
|
3411
3436
|
self,
|
|
3412
3437
|
type: str,
|
|
3413
3438
|
ref: 'ServiceRefValue',
|
|
3439
|
+
*,
|
|
3440
|
+
id: Optional[str] = None,
|
|
3414
3441
|
) -> None:
|
|
3415
3442
|
"""
|
|
3416
3443
|
Initialize a AddressServiceRef object.
|
|
3417
3444
|
|
|
3418
3445
|
:param str type: The type of address.
|
|
3419
3446
|
:param ServiceRefValue ref: A service reference value.
|
|
3447
|
+
:param str id: (optional) The address id (for use by terraform only).
|
|
3420
3448
|
"""
|
|
3421
3449
|
# pylint: disable=super-init-not-called
|
|
3422
3450
|
self.type = type
|
|
3423
3451
|
self.ref = ref
|
|
3452
|
+
self.id = id
|
|
3424
3453
|
|
|
3425
3454
|
@classmethod
|
|
3426
3455
|
def from_dict(cls, _dict: Dict) -> 'AddressServiceRef':
|
|
@@ -3434,6 +3463,8 @@ class AddressServiceRef(Address):
|
|
|
3434
3463
|
args['ref'] = ServiceRefValue.from_dict(ref)
|
|
3435
3464
|
else:
|
|
3436
3465
|
raise ValueError('Required property \'ref\' not present in AddressServiceRef JSON')
|
|
3466
|
+
if (id := _dict.get('id')) is not None:
|
|
3467
|
+
args['id'] = id
|
|
3437
3468
|
return cls(**args)
|
|
3438
3469
|
|
|
3439
3470
|
@classmethod
|
|
@@ -3451,6 +3482,8 @@ class AddressServiceRef(Address):
|
|
|
3451
3482
|
_dict['ref'] = self.ref
|
|
3452
3483
|
else:
|
|
3453
3484
|
_dict['ref'] = self.ref.to_dict()
|
|
3485
|
+
if hasattr(self, 'id') and self.id is not None:
|
|
3486
|
+
_dict['id'] = self.id
|
|
3454
3487
|
return _dict
|
|
3455
3488
|
|
|
3456
3489
|
def _to_dict(self):
|
|
@@ -3485,22 +3518,27 @@ class AddressSubnet(Address):
|
|
|
3485
3518
|
|
|
3486
3519
|
:param str type: The type of address.
|
|
3487
3520
|
:param str value: The subnet in CIDR format.
|
|
3521
|
+
:param str id: (optional) The address id (for use by terraform only).
|
|
3488
3522
|
"""
|
|
3489
3523
|
|
|
3490
3524
|
def __init__(
|
|
3491
3525
|
self,
|
|
3492
3526
|
type: str,
|
|
3493
3527
|
value: str,
|
|
3528
|
+
*,
|
|
3529
|
+
id: Optional[str] = None,
|
|
3494
3530
|
) -> None:
|
|
3495
3531
|
"""
|
|
3496
3532
|
Initialize a AddressSubnet object.
|
|
3497
3533
|
|
|
3498
3534
|
:param str type: The type of address.
|
|
3499
3535
|
:param str value: The subnet in CIDR format.
|
|
3536
|
+
:param str id: (optional) The address id (for use by terraform only).
|
|
3500
3537
|
"""
|
|
3501
3538
|
# pylint: disable=super-init-not-called
|
|
3502
3539
|
self.type = type
|
|
3503
3540
|
self.value = value
|
|
3541
|
+
self.id = id
|
|
3504
3542
|
|
|
3505
3543
|
@classmethod
|
|
3506
3544
|
def from_dict(cls, _dict: Dict) -> 'AddressSubnet':
|
|
@@ -3514,6 +3552,8 @@ class AddressSubnet(Address):
|
|
|
3514
3552
|
args['value'] = value
|
|
3515
3553
|
else:
|
|
3516
3554
|
raise ValueError('Required property \'value\' not present in AddressSubnet JSON')
|
|
3555
|
+
if (id := _dict.get('id')) is not None:
|
|
3556
|
+
args['id'] = id
|
|
3517
3557
|
return cls(**args)
|
|
3518
3558
|
|
|
3519
3559
|
@classmethod
|
|
@@ -3528,6 +3568,8 @@ class AddressSubnet(Address):
|
|
|
3528
3568
|
_dict['type'] = self.type
|
|
3529
3569
|
if hasattr(self, 'value') and self.value is not None:
|
|
3530
3570
|
_dict['value'] = self.value
|
|
3571
|
+
if hasattr(self, 'id') and self.id is not None:
|
|
3572
|
+
_dict['id'] = self.id
|
|
3531
3573
|
return _dict
|
|
3532
3574
|
|
|
3533
3575
|
def _to_dict(self):
|
|
@@ -3562,22 +3604,27 @@ class AddressVPC(Address):
|
|
|
3562
3604
|
|
|
3563
3605
|
:param str type: The type of address.
|
|
3564
3606
|
:param str value: The VPC CRN.
|
|
3607
|
+
:param str id: (optional) The address id (for use by terraform only).
|
|
3565
3608
|
"""
|
|
3566
3609
|
|
|
3567
3610
|
def __init__(
|
|
3568
3611
|
self,
|
|
3569
3612
|
type: str,
|
|
3570
3613
|
value: str,
|
|
3614
|
+
*,
|
|
3615
|
+
id: Optional[str] = None,
|
|
3571
3616
|
) -> None:
|
|
3572
3617
|
"""
|
|
3573
3618
|
Initialize a AddressVPC object.
|
|
3574
3619
|
|
|
3575
3620
|
:param str type: The type of address.
|
|
3576
3621
|
:param str value: The VPC CRN.
|
|
3622
|
+
:param str id: (optional) The address id (for use by terraform only).
|
|
3577
3623
|
"""
|
|
3578
3624
|
# pylint: disable=super-init-not-called
|
|
3579
3625
|
self.type = type
|
|
3580
3626
|
self.value = value
|
|
3627
|
+
self.id = id
|
|
3581
3628
|
|
|
3582
3629
|
@classmethod
|
|
3583
3630
|
def from_dict(cls, _dict: Dict) -> 'AddressVPC':
|
|
@@ -3591,6 +3638,8 @@ class AddressVPC(Address):
|
|
|
3591
3638
|
args['value'] = value
|
|
3592
3639
|
else:
|
|
3593
3640
|
raise ValueError('Required property \'value\' not present in AddressVPC JSON')
|
|
3641
|
+
if (id := _dict.get('id')) is not None:
|
|
3642
|
+
args['id'] = id
|
|
3594
3643
|
return cls(**args)
|
|
3595
3644
|
|
|
3596
3645
|
@classmethod
|
|
@@ -3605,6 +3654,8 @@ class AddressVPC(Address):
|
|
|
3605
3654
|
_dict['type'] = self.type
|
|
3606
3655
|
if hasattr(self, 'value') and self.value is not None:
|
|
3607
3656
|
_dict['value'] = self.value
|
|
3657
|
+
if hasattr(self, 'id') and self.id is not None:
|
|
3658
|
+
_dict['id'] = self.id
|
|
3608
3659
|
return _dict
|
|
3609
3660
|
|
|
3610
3661
|
def _to_dict(self):
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
# coding: utf-8
|
|
2
2
|
|
|
3
|
-
# (C) Copyright IBM Corp.
|
|
3
|
+
# (C) Copyright IBM Corp. 2026.
|
|
4
4
|
#
|
|
5
5
|
# Licensed under the Apache License, Version 2.0 (the "License");
|
|
6
6
|
# you may not use this file except in compliance with the License.
|
|
@@ -919,6 +919,7 @@ class IamIdentityV1(BaseService):
|
|
|
919
919
|
store_value: Optional[bool] = None,
|
|
920
920
|
support_sessions: Optional[bool] = None,
|
|
921
921
|
action_when_leaked: Optional[str] = None,
|
|
922
|
+
expires_at: Optional[str] = None,
|
|
922
923
|
entity_lock: Optional[str] = None,
|
|
923
924
|
entity_disable: Optional[str] = None,
|
|
924
925
|
**kwargs,
|
|
@@ -954,6 +955,8 @@ class IamIdentityV1(BaseService):
|
|
|
954
955
|
access, delete or rotate the API key. Available only for user API keys.
|
|
955
956
|
:param str action_when_leaked: (optional) Defines the action to take when
|
|
956
957
|
API key is leaked, valid values are 'none', 'disable' and 'delete'.
|
|
958
|
+
:param str expires_at: (optional) Date and time when the API key becomes
|
|
959
|
+
invalid, ISO 8601 datetime in the format 'yyyy-MM-ddTHH:mm+0000'.
|
|
957
960
|
:param str entity_lock: (optional) Indicates if the API key is locked for
|
|
958
961
|
further write operations. False by default.
|
|
959
962
|
:param str entity_disable: (optional) Indicates if the API key is disabled.
|
|
@@ -987,6 +990,7 @@ class IamIdentityV1(BaseService):
|
|
|
987
990
|
'store_value': store_value,
|
|
988
991
|
'support_sessions': support_sessions,
|
|
989
992
|
'action_when_leaked': action_when_leaked,
|
|
993
|
+
'expires_at': expires_at,
|
|
990
994
|
}
|
|
991
995
|
data = {k: v for (k, v) in data.items() if v is not None}
|
|
992
996
|
data = json.dumps(data)
|
|
@@ -1127,6 +1131,7 @@ class IamIdentityV1(BaseService):
|
|
|
1127
1131
|
description: Optional[str] = None,
|
|
1128
1132
|
support_sessions: Optional[bool] = None,
|
|
1129
1133
|
action_when_leaked: Optional[str] = None,
|
|
1134
|
+
expires_at: Optional[str] = None,
|
|
1130
1135
|
**kwargs,
|
|
1131
1136
|
) -> DetailedResponse:
|
|
1132
1137
|
"""
|
|
@@ -1155,6 +1160,8 @@ class IamIdentityV1(BaseService):
|
|
|
1155
1160
|
access, delete or rotate the API key. Available only for user API keys.
|
|
1156
1161
|
:param str action_when_leaked: (optional) Defines the action to take when
|
|
1157
1162
|
API key is leaked, valid values are 'none', 'disable' and 'delete'.
|
|
1163
|
+
:param str expires_at: (optional) Date and time when the API key becomes
|
|
1164
|
+
invalid, ISO 8601 datetime in the format 'yyyy-MM-ddTHH:mm+0000'.
|
|
1158
1165
|
:param dict headers: A `dict` containing the request headers
|
|
1159
1166
|
:return: A `DetailedResponse` containing the result, headers and HTTP status code.
|
|
1160
1167
|
:rtype: DetailedResponse with `dict` result representing a `ApiKey` object
|
|
@@ -1179,6 +1186,7 @@ class IamIdentityV1(BaseService):
|
|
|
1179
1186
|
'description': description,
|
|
1180
1187
|
'support_sessions': support_sessions,
|
|
1181
1188
|
'action_when_leaked': action_when_leaked,
|
|
1189
|
+
'expires_at': expires_at,
|
|
1182
1190
|
}
|
|
1183
1191
|
data = {k: v for (k, v) in data.items() if v is not None}
|
|
1184
1192
|
data = json.dumps(data)
|
|
@@ -7750,6 +7758,8 @@ class ApiKey:
|
|
|
7750
7758
|
delete or rotate the API key. Available only for user API keys.
|
|
7751
7759
|
:param str action_when_leaked: (optional) Defines the action to take when API
|
|
7752
7760
|
key is leaked, valid values are 'none', 'disable' and 'delete'.
|
|
7761
|
+
:param str expires_at: (optional) Date and time when the API key becomes
|
|
7762
|
+
invalid, ISO 8601 datetime in the format 'yyyy-MM-ddTHH:mm+0000'.
|
|
7753
7763
|
:param str description: (optional) The optional description of the API key. The
|
|
7754
7764
|
'description' property is only available if a description was provided during a
|
|
7755
7765
|
create of an API key.
|
|
@@ -7783,6 +7793,7 @@ class ApiKey:
|
|
|
7783
7793
|
modified_at: Optional[datetime] = None,
|
|
7784
7794
|
support_sessions: Optional[bool] = None,
|
|
7785
7795
|
action_when_leaked: Optional[str] = None,
|
|
7796
|
+
expires_at: Optional[str] = None,
|
|
7786
7797
|
description: Optional[str] = None,
|
|
7787
7798
|
history: Optional[List['EnityHistoryRecord']] = None,
|
|
7788
7799
|
activity: Optional['Activity'] = None,
|
|
@@ -7826,6 +7837,8 @@ class ApiKey:
|
|
|
7826
7837
|
access, delete or rotate the API key. Available only for user API keys.
|
|
7827
7838
|
:param str action_when_leaked: (optional) Defines the action to take when
|
|
7828
7839
|
API key is leaked, valid values are 'none', 'disable' and 'delete'.
|
|
7840
|
+
:param str expires_at: (optional) Date and time when the API key becomes
|
|
7841
|
+
invalid, ISO 8601 datetime in the format 'yyyy-MM-ddTHH:mm+0000'.
|
|
7829
7842
|
:param str description: (optional) The optional description of the API key.
|
|
7830
7843
|
The 'description' property is only available if a description was provided
|
|
7831
7844
|
during a create of an API key.
|
|
@@ -7844,6 +7857,7 @@ class ApiKey:
|
|
|
7844
7857
|
self.name = name
|
|
7845
7858
|
self.support_sessions = support_sessions
|
|
7846
7859
|
self.action_when_leaked = action_when_leaked
|
|
7860
|
+
self.expires_at = expires_at
|
|
7847
7861
|
self.description = description
|
|
7848
7862
|
self.iam_id = iam_id
|
|
7849
7863
|
self.account_id = account_id
|
|
@@ -7889,6 +7903,8 @@ class ApiKey:
|
|
|
7889
7903
|
args['support_sessions'] = support_sessions
|
|
7890
7904
|
if (action_when_leaked := _dict.get('action_when_leaked')) is not None:
|
|
7891
7905
|
args['action_when_leaked'] = action_when_leaked
|
|
7906
|
+
if (expires_at := _dict.get('expires_at')) is not None:
|
|
7907
|
+
args['expires_at'] = expires_at
|
|
7892
7908
|
if (description := _dict.get('description')) is not None:
|
|
7893
7909
|
args['description'] = description
|
|
7894
7910
|
if (iam_id := _dict.get('iam_id')) is not None:
|
|
@@ -7944,6 +7960,8 @@ class ApiKey:
|
|
|
7944
7960
|
_dict['support_sessions'] = self.support_sessions
|
|
7945
7961
|
if hasattr(self, 'action_when_leaked') and self.action_when_leaked is not None:
|
|
7946
7962
|
_dict['action_when_leaked'] = self.action_when_leaked
|
|
7963
|
+
if hasattr(self, 'expires_at') and self.expires_at is not None:
|
|
7964
|
+
_dict['expires_at'] = self.expires_at
|
|
7947
7965
|
if hasattr(self, 'description') and self.description is not None:
|
|
7948
7966
|
_dict['description'] = self.description
|
|
7949
7967
|
if hasattr(self, 'iam_id') and self.iam_id is not None:
|
|
@@ -8007,6 +8025,10 @@ class ApiKeyInsideCreateServiceIdRequest:
|
|
|
8007
8025
|
key value is retrievable in the future by using the Get details of an API key
|
|
8008
8026
|
request. If you create an API key for a user, you must specify `false` or omit
|
|
8009
8027
|
the value. We don't allow storing of API keys for users.
|
|
8028
|
+
:param str action_when_leaked: (optional) Defines the action to take when API
|
|
8029
|
+
key is leaked, valid values are 'none', 'disable' and 'delete'.
|
|
8030
|
+
:param str expires_at: (optional) Date and time when the API key becomes
|
|
8031
|
+
invalid, ISO 8601 datetime in the format 'yyyy-MM-ddTHH:mm+0000'.
|
|
8010
8032
|
"""
|
|
8011
8033
|
|
|
8012
8034
|
def __init__(
|
|
@@ -8016,6 +8038,8 @@ class ApiKeyInsideCreateServiceIdRequest:
|
|
|
8016
8038
|
description: Optional[str] = None,
|
|
8017
8039
|
apikey: Optional[str] = None,
|
|
8018
8040
|
store_value: Optional[bool] = None,
|
|
8041
|
+
action_when_leaked: Optional[str] = None,
|
|
8042
|
+
expires_at: Optional[str] = None,
|
|
8019
8043
|
) -> None:
|
|
8020
8044
|
"""
|
|
8021
8045
|
Initialize a ApiKeyInsideCreateServiceIdRequest object.
|
|
@@ -8037,11 +8061,17 @@ class ApiKeyInsideCreateServiceIdRequest:
|
|
|
8037
8061
|
API key value is retrievable in the future by using the Get details of an
|
|
8038
8062
|
API key request. If you create an API key for a user, you must specify
|
|
8039
8063
|
`false` or omit the value. We don't allow storing of API keys for users.
|
|
8064
|
+
:param str action_when_leaked: (optional) Defines the action to take when
|
|
8065
|
+
API key is leaked, valid values are 'none', 'disable' and 'delete'.
|
|
8066
|
+
:param str expires_at: (optional) Date and time when the API key becomes
|
|
8067
|
+
invalid, ISO 8601 datetime in the format 'yyyy-MM-ddTHH:mm+0000'.
|
|
8040
8068
|
"""
|
|
8041
8069
|
self.name = name
|
|
8042
8070
|
self.description = description
|
|
8043
8071
|
self.apikey = apikey
|
|
8044
8072
|
self.store_value = store_value
|
|
8073
|
+
self.action_when_leaked = action_when_leaked
|
|
8074
|
+
self.expires_at = expires_at
|
|
8045
8075
|
|
|
8046
8076
|
@classmethod
|
|
8047
8077
|
def from_dict(cls, _dict: Dict) -> 'ApiKeyInsideCreateServiceIdRequest':
|
|
@@ -8057,6 +8087,10 @@ class ApiKeyInsideCreateServiceIdRequest:
|
|
|
8057
8087
|
args['apikey'] = apikey
|
|
8058
8088
|
if (store_value := _dict.get('store_value')) is not None:
|
|
8059
8089
|
args['store_value'] = store_value
|
|
8090
|
+
if (action_when_leaked := _dict.get('action_when_leaked')) is not None:
|
|
8091
|
+
args['action_when_leaked'] = action_when_leaked
|
|
8092
|
+
if (expires_at := _dict.get('expires_at')) is not None:
|
|
8093
|
+
args['expires_at'] = expires_at
|
|
8060
8094
|
return cls(**args)
|
|
8061
8095
|
|
|
8062
8096
|
@classmethod
|
|
@@ -8075,6 +8109,10 @@ class ApiKeyInsideCreateServiceIdRequest:
|
|
|
8075
8109
|
_dict['apikey'] = self.apikey
|
|
8076
8110
|
if hasattr(self, 'store_value') and self.store_value is not None:
|
|
8077
8111
|
_dict['store_value'] = self.store_value
|
|
8112
|
+
if hasattr(self, 'action_when_leaked') and self.action_when_leaked is not None:
|
|
8113
|
+
_dict['action_when_leaked'] = self.action_when_leaked
|
|
8114
|
+
if hasattr(self, 'expires_at') and self.expires_at is not None:
|
|
8115
|
+
_dict['expires_at'] = self.expires_at
|
|
8078
8116
|
return _dict
|
|
8079
8117
|
|
|
8080
8118
|
def _to_dict(self):
|
|
@@ -9634,90 +9672,6 @@ class MfaEnrollmentTypeStatus:
|
|
|
9634
9672
|
return not self == other
|
|
9635
9673
|
|
|
9636
9674
|
|
|
9637
|
-
class MfaEnrollments:
|
|
9638
|
-
"""
|
|
9639
|
-
MfaEnrollments.
|
|
9640
|
-
|
|
9641
|
-
:param str effective_mfa_type: currently effective mfa type i.e. id_based_mfa or
|
|
9642
|
-
account_based_mfa.
|
|
9643
|
-
:param IdBasedMfaEnrollment id_based_mfa: (optional)
|
|
9644
|
-
:param AccountBasedMfaEnrollment account_based_mfa: (optional)
|
|
9645
|
-
"""
|
|
9646
|
-
|
|
9647
|
-
def __init__(
|
|
9648
|
-
self,
|
|
9649
|
-
effective_mfa_type: str,
|
|
9650
|
-
*,
|
|
9651
|
-
id_based_mfa: Optional['IdBasedMfaEnrollment'] = None,
|
|
9652
|
-
account_based_mfa: Optional['AccountBasedMfaEnrollment'] = None,
|
|
9653
|
-
) -> None:
|
|
9654
|
-
"""
|
|
9655
|
-
Initialize a MfaEnrollments object.
|
|
9656
|
-
|
|
9657
|
-
:param str effective_mfa_type: currently effective mfa type i.e.
|
|
9658
|
-
id_based_mfa or account_based_mfa.
|
|
9659
|
-
:param IdBasedMfaEnrollment id_based_mfa: (optional)
|
|
9660
|
-
:param AccountBasedMfaEnrollment account_based_mfa: (optional)
|
|
9661
|
-
"""
|
|
9662
|
-
self.effective_mfa_type = effective_mfa_type
|
|
9663
|
-
self.id_based_mfa = id_based_mfa
|
|
9664
|
-
self.account_based_mfa = account_based_mfa
|
|
9665
|
-
|
|
9666
|
-
@classmethod
|
|
9667
|
-
def from_dict(cls, _dict: Dict) -> 'MfaEnrollments':
|
|
9668
|
-
"""Initialize a MfaEnrollments object from a json dictionary."""
|
|
9669
|
-
args = {}
|
|
9670
|
-
if (effective_mfa_type := _dict.get('effective_mfa_type')) is not None:
|
|
9671
|
-
args['effective_mfa_type'] = effective_mfa_type
|
|
9672
|
-
else:
|
|
9673
|
-
raise ValueError('Required property \'effective_mfa_type\' not present in MfaEnrollments JSON')
|
|
9674
|
-
if (id_based_mfa := _dict.get('id_based_mfa')) is not None:
|
|
9675
|
-
args['id_based_mfa'] = IdBasedMfaEnrollment.from_dict(id_based_mfa)
|
|
9676
|
-
if (account_based_mfa := _dict.get('account_based_mfa')) is not None:
|
|
9677
|
-
args['account_based_mfa'] = AccountBasedMfaEnrollment.from_dict(account_based_mfa)
|
|
9678
|
-
return cls(**args)
|
|
9679
|
-
|
|
9680
|
-
@classmethod
|
|
9681
|
-
def _from_dict(cls, _dict):
|
|
9682
|
-
"""Initialize a MfaEnrollments object from a json dictionary."""
|
|
9683
|
-
return cls.from_dict(_dict)
|
|
9684
|
-
|
|
9685
|
-
def to_dict(self) -> Dict:
|
|
9686
|
-
"""Return a json dictionary representing this model."""
|
|
9687
|
-
_dict = {}
|
|
9688
|
-
if hasattr(self, 'effective_mfa_type') and self.effective_mfa_type is not None:
|
|
9689
|
-
_dict['effective_mfa_type'] = self.effective_mfa_type
|
|
9690
|
-
if hasattr(self, 'id_based_mfa') and self.id_based_mfa is not None:
|
|
9691
|
-
if isinstance(self.id_based_mfa, dict):
|
|
9692
|
-
_dict['id_based_mfa'] = self.id_based_mfa
|
|
9693
|
-
else:
|
|
9694
|
-
_dict['id_based_mfa'] = self.id_based_mfa.to_dict()
|
|
9695
|
-
if hasattr(self, 'account_based_mfa') and self.account_based_mfa is not None:
|
|
9696
|
-
if isinstance(self.account_based_mfa, dict):
|
|
9697
|
-
_dict['account_based_mfa'] = self.account_based_mfa
|
|
9698
|
-
else:
|
|
9699
|
-
_dict['account_based_mfa'] = self.account_based_mfa.to_dict()
|
|
9700
|
-
return _dict
|
|
9701
|
-
|
|
9702
|
-
def _to_dict(self):
|
|
9703
|
-
"""Return a json dictionary representing this model."""
|
|
9704
|
-
return self.to_dict()
|
|
9705
|
-
|
|
9706
|
-
def __str__(self) -> str:
|
|
9707
|
-
"""Return a `str` version of this MfaEnrollments object."""
|
|
9708
|
-
return json.dumps(self.to_dict(), indent=2)
|
|
9709
|
-
|
|
9710
|
-
def __eq__(self, other: 'MfaEnrollments') -> bool:
|
|
9711
|
-
"""Return `true` when self and other are equal, false otherwise."""
|
|
9712
|
-
if not isinstance(other, self.__class__):
|
|
9713
|
-
return False
|
|
9714
|
-
return self.__dict__ == other.__dict__
|
|
9715
|
-
|
|
9716
|
-
def __ne__(self, other: 'MfaEnrollments') -> bool:
|
|
9717
|
-
"""Return `true` when self and other are not equal, false otherwise."""
|
|
9718
|
-
return not self == other
|
|
9719
|
-
|
|
9720
|
-
|
|
9721
9675
|
class PolicyTemplateReference:
|
|
9722
9676
|
"""
|
|
9723
9677
|
Metadata for external access policy.
|
|
@@ -14267,14 +14221,19 @@ class UserReportMfaEnrollmentStatus:
|
|
|
14267
14221
|
:param str name: (optional) Name of the user.
|
|
14268
14222
|
:param str username: Username of the user.
|
|
14269
14223
|
:param str email: (optional) Email of the user.
|
|
14270
|
-
:param
|
|
14224
|
+
:param str effective_mfa_type: currently effective mfa type i.e. id_based_mfa or
|
|
14225
|
+
account_based_mfa.
|
|
14226
|
+
:param IdBasedMfaEnrollment id_based_mfa:
|
|
14227
|
+
:param AccountBasedMfaEnrollment account_based_mfa:
|
|
14271
14228
|
"""
|
|
14272
14229
|
|
|
14273
14230
|
def __init__(
|
|
14274
14231
|
self,
|
|
14275
14232
|
iam_id: str,
|
|
14276
14233
|
username: str,
|
|
14277
|
-
|
|
14234
|
+
effective_mfa_type: str,
|
|
14235
|
+
id_based_mfa: 'IdBasedMfaEnrollment',
|
|
14236
|
+
account_based_mfa: 'AccountBasedMfaEnrollment',
|
|
14278
14237
|
*,
|
|
14279
14238
|
name: Optional[str] = None,
|
|
14280
14239
|
email: Optional[str] = None,
|
|
@@ -14284,7 +14243,10 @@ class UserReportMfaEnrollmentStatus:
|
|
|
14284
14243
|
|
|
14285
14244
|
:param str iam_id: IAMid of the user.
|
|
14286
14245
|
:param str username: Username of the user.
|
|
14287
|
-
:param
|
|
14246
|
+
:param str effective_mfa_type: currently effective mfa type i.e.
|
|
14247
|
+
id_based_mfa or account_based_mfa.
|
|
14248
|
+
:param IdBasedMfaEnrollment id_based_mfa:
|
|
14249
|
+
:param AccountBasedMfaEnrollment account_based_mfa:
|
|
14288
14250
|
:param str name: (optional) Name of the user.
|
|
14289
14251
|
:param str email: (optional) Email of the user.
|
|
14290
14252
|
"""
|
|
@@ -14292,7 +14254,9 @@ class UserReportMfaEnrollmentStatus:
|
|
|
14292
14254
|
self.name = name
|
|
14293
14255
|
self.username = username
|
|
14294
14256
|
self.email = email
|
|
14295
|
-
self.
|
|
14257
|
+
self.effective_mfa_type = effective_mfa_type
|
|
14258
|
+
self.id_based_mfa = id_based_mfa
|
|
14259
|
+
self.account_based_mfa = account_based_mfa
|
|
14296
14260
|
|
|
14297
14261
|
@classmethod
|
|
14298
14262
|
def from_dict(cls, _dict: Dict) -> 'UserReportMfaEnrollmentStatus':
|
|
@@ -14310,10 +14274,22 @@ class UserReportMfaEnrollmentStatus:
|
|
|
14310
14274
|
raise ValueError('Required property \'username\' not present in UserReportMfaEnrollmentStatus JSON')
|
|
14311
14275
|
if (email := _dict.get('email')) is not None:
|
|
14312
14276
|
args['email'] = email
|
|
14313
|
-
if (
|
|
14314
|
-
args['
|
|
14277
|
+
if (effective_mfa_type := _dict.get('effective_mfa_type')) is not None:
|
|
14278
|
+
args['effective_mfa_type'] = effective_mfa_type
|
|
14279
|
+
else:
|
|
14280
|
+
raise ValueError(
|
|
14281
|
+
'Required property \'effective_mfa_type\' not present in UserReportMfaEnrollmentStatus JSON'
|
|
14282
|
+
)
|
|
14283
|
+
if (id_based_mfa := _dict.get('id_based_mfa')) is not None:
|
|
14284
|
+
args['id_based_mfa'] = IdBasedMfaEnrollment.from_dict(id_based_mfa)
|
|
14285
|
+
else:
|
|
14286
|
+
raise ValueError('Required property \'id_based_mfa\' not present in UserReportMfaEnrollmentStatus JSON')
|
|
14287
|
+
if (account_based_mfa := _dict.get('account_based_mfa')) is not None:
|
|
14288
|
+
args['account_based_mfa'] = AccountBasedMfaEnrollment.from_dict(account_based_mfa)
|
|
14315
14289
|
else:
|
|
14316
|
-
raise ValueError(
|
|
14290
|
+
raise ValueError(
|
|
14291
|
+
'Required property \'account_based_mfa\' not present in UserReportMfaEnrollmentStatus JSON'
|
|
14292
|
+
)
|
|
14317
14293
|
return cls(**args)
|
|
14318
14294
|
|
|
14319
14295
|
@classmethod
|
|
@@ -14332,11 +14308,18 @@ class UserReportMfaEnrollmentStatus:
|
|
|
14332
14308
|
_dict['username'] = self.username
|
|
14333
14309
|
if hasattr(self, 'email') and self.email is not None:
|
|
14334
14310
|
_dict['email'] = self.email
|
|
14335
|
-
if hasattr(self, '
|
|
14336
|
-
|
|
14337
|
-
|
|
14311
|
+
if hasattr(self, 'effective_mfa_type') and self.effective_mfa_type is not None:
|
|
14312
|
+
_dict['effective_mfa_type'] = self.effective_mfa_type
|
|
14313
|
+
if hasattr(self, 'id_based_mfa') and self.id_based_mfa is not None:
|
|
14314
|
+
if isinstance(self.id_based_mfa, dict):
|
|
14315
|
+
_dict['id_based_mfa'] = self.id_based_mfa
|
|
14338
14316
|
else:
|
|
14339
|
-
_dict['
|
|
14317
|
+
_dict['id_based_mfa'] = self.id_based_mfa.to_dict()
|
|
14318
|
+
if hasattr(self, 'account_based_mfa') and self.account_based_mfa is not None:
|
|
14319
|
+
if isinstance(self.account_based_mfa, dict):
|
|
14320
|
+
_dict['account_based_mfa'] = self.account_based_mfa
|
|
14321
|
+
else:
|
|
14322
|
+
_dict['account_based_mfa'] = self.account_based_mfa.to_dict()
|
|
14340
14323
|
return _dict
|
|
14341
14324
|
|
|
14342
14325
|
def _to_dict(self):
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: ibm-platform-services
|
|
3
|
-
Version: 0.
|
|
3
|
+
Version: 0.73.1
|
|
4
4
|
Summary: Python client library for IBM Cloud Platform Services
|
|
5
5
|
Author-email: IBM <devxsdk@us.ibm.com>
|
|
6
6
|
Project-URL: Repository, https://github.com/IBM/platform-services-python-sdk
|
|
@@ -51,7 +51,7 @@ Dynamic: license-file
|
|
|
51
51
|
[](https://cla-assistant.io/IBM/platform-services-python-sdk)
|
|
52
52
|
|
|
53
53
|
|
|
54
|
-
# IBM Cloud Platform Services Python SDK Version 0.
|
|
54
|
+
# IBM Cloud Platform Services Python SDK Version 0.73.1
|
|
55
55
|
|
|
56
56
|
Python client library to interact with various
|
|
57
57
|
[IBM Cloud Platform Service APIs](https://cloud.ibm.com/docs?tab=api-docs&category=platform_services).
|
|
File without changes
|
|
File without changes
|
{ibm_platform_services-0.72.0 → ibm_platform_services-0.73.1}/ibm_platform_services/__init__.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
{ibm_platform_services-0.72.0 → ibm_platform_services-0.73.1}/ibm_platform_services/common.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|