alibabacloud-quotas20200510 1.1.4__py3-none-any.whl → 1.2.1__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.
- alibabacloud_quotas20200510/__init__.py +1 -1
- alibabacloud_quotas20200510/client.py +746 -80
- alibabacloud_quotas20200510/models.py +770 -178
- {alibabacloud_quotas20200510-1.1.4.dist-info → alibabacloud_quotas20200510-1.2.1.dist-info}/METADATA +7 -8
- alibabacloud_quotas20200510-1.2.1.dist-info/RECORD +8 -0
- {alibabacloud_quotas20200510-1.1.4.dist-info → alibabacloud_quotas20200510-1.2.1.dist-info}/WHEEL +1 -1
- alibabacloud_quotas20200510-1.1.4.dist-info/RECORD +0 -8
- {alibabacloud_quotas20200510-1.1.4.dist-info → alibabacloud_quotas20200510-1.2.1.dist-info}/LICENSE +0 -0
- {alibabacloud_quotas20200510-1.1.4.dist-info → alibabacloud_quotas20200510-1.2.1.dist-info}/top_level.txt +0 -0
@@ -49,8 +49,11 @@ class CreateQuotaAlarmRequest(TeaModel):
|
|
49
49
|
threshold_type: str = None,
|
50
50
|
web_hook: str = None,
|
51
51
|
):
|
52
|
+
# This parameter is required.
|
52
53
|
self.alarm_name = alarm_name
|
54
|
+
# This parameter is required.
|
53
55
|
self.product_code = product_code
|
56
|
+
# This parameter is required.
|
54
57
|
self.quota_action_code = quota_action_code
|
55
58
|
self.quota_dimensions = quota_dimensions
|
56
59
|
self.threshold = threshold
|
@@ -159,9 +162,6 @@ class CreateQuotaAlarmResponse(TeaModel):
|
|
159
162
|
self.body = body
|
160
163
|
|
161
164
|
def validate(self):
|
162
|
-
self.validate_required(self.headers, 'headers')
|
163
|
-
self.validate_required(self.status_code, 'status_code')
|
164
|
-
self.validate_required(self.body, 'body')
|
165
165
|
if self.body:
|
166
166
|
self.body.validate()
|
167
167
|
|
@@ -199,15 +199,19 @@ class CreateQuotaApplicationRequestDimensions(TeaModel):
|
|
199
199
|
):
|
200
200
|
# The key of the dimension.
|
201
201
|
#
|
202
|
-
#
|
202
|
+
# >
|
203
203
|
#
|
204
|
-
#
|
204
|
+
# * The value range of N varies based on the number of dimensions that are supported by the related Alibaba Cloud service.
|
205
|
+
#
|
206
|
+
# * This parameter is required if you set the `ProductCode` parameter to `ecs`, `ecs-spec`, `actiontrail`, or `ess`.
|
205
207
|
self.key = key
|
206
208
|
# The value of the dimension.
|
207
209
|
#
|
208
|
-
#
|
210
|
+
# >
|
211
|
+
#
|
212
|
+
# * The value range of N varies based on the number of dimensions that are supported by the related Alibaba Cloud service.
|
209
213
|
#
|
210
|
-
#
|
214
|
+
# * This parameter is required if you set the `ProductCode` parameter to `ecs`, `ecs-spec`, `actiontrail`, or `ess`.
|
211
215
|
self.value = value
|
212
216
|
|
213
217
|
def validate(self):
|
@@ -258,13 +262,19 @@ class CreateQuotaApplicationRequest(TeaModel):
|
|
258
262
|
self.audit_mode = audit_mode
|
259
263
|
# The requested value of the quota.
|
260
264
|
#
|
261
|
-
# >
|
265
|
+
# >
|
266
|
+
#
|
267
|
+
# * You can specify the DesireValue parameter based on the values of the `TotalUsage` and `ApplicableRange` parameters that are returned by the [ListProductQuotas](https://help.aliyun.com/document_detail/440554.html) operation.
|
268
|
+
#
|
269
|
+
# * Applications are reviewed by the technical support team of each Alibaba Cloud service. To increase the success rate of your application, you must specify a reasonable quota value and detailed reasons when you submit an application to increase the value of the quota.
|
270
|
+
#
|
271
|
+
# This parameter is required.
|
262
272
|
self.desire_value = desire_value
|
263
273
|
# The quota dimensions.
|
264
274
|
self.dimensions = dimensions
|
265
275
|
# The end time of the validity period of the quota. Specify the value in UTC. This parameter is valid only if you set the QuotaCategory parameter to WhiteListLabel.
|
266
276
|
#
|
267
|
-
# >
|
277
|
+
# > If you do not specify an end time, the default end time is 99 years after the quota application is submitted.
|
268
278
|
self.effective_time = effective_time
|
269
279
|
# The language of the quota alert notification. Valid values:
|
270
280
|
#
|
@@ -273,7 +283,7 @@ class CreateQuotaApplicationRequest(TeaModel):
|
|
273
283
|
self.env_language = env_language
|
274
284
|
# The start time of the validity period of the quota. Specify the value in UTC. This parameter is valid only if you set the QuotaCategory parameter to WhiteListLabel.
|
275
285
|
#
|
276
|
-
# >
|
286
|
+
# > If you do not specify a start time, the default start time is the time when the quota application is submitted.
|
277
287
|
self.expire_time = expire_time
|
278
288
|
# Specifies whether to send a notification about the application result. Valid values:
|
279
289
|
#
|
@@ -282,9 +292,15 @@ class CreateQuotaApplicationRequest(TeaModel):
|
|
282
292
|
self.notice_type = notice_type
|
283
293
|
# The abbreviation of the Alibaba Cloud service name.
|
284
294
|
#
|
285
|
-
# >
|
295
|
+
# > To query the abbreviation of an Alibaba Cloud service name, check the `ProductCode` parameter that is described in [ListProductQuotas](https://help.aliyun.com/document_detail/440554.html).
|
296
|
+
#
|
297
|
+
# This parameter is required.
|
286
298
|
self.product_code = product_code
|
287
|
-
# The ID
|
299
|
+
# The quota ID.
|
300
|
+
#
|
301
|
+
# > To query the quota ID of an Alibaba Cloud service, check the `QuotaActionCode` parameter that is described in [ListProductQuotas](https://help.aliyun.com/document_detail/440554.html).
|
302
|
+
#
|
303
|
+
# This parameter is required.
|
288
304
|
self.quota_action_code = quota_action_code
|
289
305
|
# The type of the quota.
|
290
306
|
#
|
@@ -295,6 +311,8 @@ class CreateQuotaApplicationRequest(TeaModel):
|
|
295
311
|
# The reason for the application.
|
296
312
|
#
|
297
313
|
# > Applications are reviewed by the technical support team of each Alibaba Cloud service. To increase the success rate of your application, you must specify a reasonable quota value and detailed reasons when you submit an application to increase the value of the quota.
|
314
|
+
#
|
315
|
+
# This parameter is required.
|
298
316
|
self.reason = reason
|
299
317
|
|
300
318
|
def validate(self):
|
@@ -410,7 +428,7 @@ class CreateQuotaApplicationResponseBody(TeaModel):
|
|
410
428
|
self.notice_type = notice_type
|
411
429
|
# The abbreviation of the Alibaba Cloud service name.
|
412
430
|
self.product_code = product_code
|
413
|
-
# The ID
|
431
|
+
# The quota ID.
|
414
432
|
self.quota_action_code = quota_action_code
|
415
433
|
# The Alibaba Cloud Resource Name (ARN) of the quota.
|
416
434
|
self.quota_arn = quota_arn
|
@@ -418,7 +436,7 @@ class CreateQuotaApplicationResponseBody(TeaModel):
|
|
418
436
|
self.quota_description = quota_description
|
419
437
|
# The name of the quota.
|
420
438
|
self.quota_name = quota_name
|
421
|
-
# The unit of the
|
439
|
+
# The unit of the quota.
|
422
440
|
self.quota_unit = quota_unit
|
423
441
|
# The reason for the application.
|
424
442
|
self.reason = reason
|
@@ -532,9 +550,6 @@ class CreateQuotaApplicationResponse(TeaModel):
|
|
532
550
|
self.body = body
|
533
551
|
|
534
552
|
def validate(self):
|
535
|
-
self.validate_required(self.headers, 'headers')
|
536
|
-
self.validate_required(self.status_code, 'status_code')
|
537
|
-
self.validate_required(self.body, 'body')
|
538
553
|
if self.body:
|
539
554
|
self.body.validate()
|
540
555
|
|
@@ -570,15 +585,21 @@ class CreateQuotaApplicationsForTemplateRequestDimensions(TeaModel):
|
|
570
585
|
key: str = None,
|
571
586
|
value: str = None,
|
572
587
|
):
|
573
|
-
# The key of the
|
588
|
+
# The key of the dimension.
|
589
|
+
#
|
590
|
+
# >
|
574
591
|
#
|
575
|
-
# The value range of N varies based on the number of dimensions that are supported by the Alibaba Cloud service.
|
592
|
+
# * The value range of N varies based on the number of dimensions that are supported by the related Alibaba Cloud service.
|
576
593
|
#
|
577
|
-
#
|
594
|
+
# * This parameter is required if you set the `ProductCode` parameter to `ecs`, `ecs-spec`, `actiontrail`, or `ess`.
|
578
595
|
self.key = key
|
579
|
-
# The value of the
|
596
|
+
# The value of the dimension.
|
597
|
+
#
|
598
|
+
# >
|
580
599
|
#
|
581
|
-
#
|
600
|
+
# * The value range of N varies based on the number of dimensions that are supported by the related Alibaba Cloud service.
|
601
|
+
#
|
602
|
+
# * This parameter is required if you set the `ProductCode` parameter to `ecs`, `ecs-spec`, `actiontrail`, or `ess`.
|
582
603
|
self.value = value
|
583
604
|
|
584
605
|
def validate(self):
|
@@ -620,13 +641,21 @@ class CreateQuotaApplicationsForTemplateRequest(TeaModel):
|
|
620
641
|
quota_category: str = None,
|
621
642
|
reason: str = None,
|
622
643
|
):
|
623
|
-
# The Alibaba Cloud accounts that correspond to the resource directory
|
644
|
+
# The Alibaba Cloud accounts that correspond to the resource directory members for which the quotas are applied.
|
645
|
+
#
|
646
|
+
# > You can submit a quota increase application for a maximum of 50 members at a time. For more information about the members of a resource directory, see [ListAccounts](https://help.aliyun.com/document_detail/604207.html).
|
624
647
|
#
|
625
|
-
#
|
648
|
+
# This parameter is required.
|
626
649
|
self.aliyun_uids = aliyun_uids
|
627
650
|
# The requested value of the quota.
|
628
651
|
#
|
629
|
-
# >
|
652
|
+
# >
|
653
|
+
#
|
654
|
+
# * You can specify DesireValue based on the values of `TotalUsage` and `ApplicableRange` in the response to the [ListProductQuotas](https://help.aliyun.com/document_detail/440554.html) operation.
|
655
|
+
#
|
656
|
+
# * Applications are reviewed by the technical support team of each Alibaba Cloud service. To increase the success rate of your application, specify a reasonable quota value and a detailed reason.
|
657
|
+
#
|
658
|
+
# This parameter is required.
|
630
659
|
self.desire_value = desire_value
|
631
660
|
# The quota dimensions.
|
632
661
|
self.dimensions = dimensions
|
@@ -650,19 +679,29 @@ class CreateQuotaApplicationsForTemplateRequest(TeaModel):
|
|
650
679
|
self.notice_type = notice_type
|
651
680
|
# The abbreviation of the Alibaba Cloud service name.
|
652
681
|
#
|
653
|
-
# >
|
682
|
+
# > To query the abbreviation of an Alibaba Cloud service name, call the [ListProducts](https://help.aliyun.com/document_detail/440555.html) operation and check the value of `ProductCode` in the response.
|
683
|
+
#
|
684
|
+
# This parameter is required.
|
654
685
|
self.product_code = product_code
|
655
686
|
# The quota ID.
|
687
|
+
#
|
688
|
+
# > To query the quota ID of an Alibaba Cloud service, call the [ListProductQuotas](https://help.aliyun.com/document_detail/440554.html) and check the value of `QuotaActionCode` in the response.
|
689
|
+
#
|
690
|
+
# This parameter is required.
|
656
691
|
self.quota_action_code = quota_action_code
|
657
692
|
# The quota type. Valid values:
|
658
693
|
#
|
659
|
-
# * CommonQuota
|
694
|
+
# * CommonQuota: general quota
|
660
695
|
# * FlowControl: API rate limit
|
661
696
|
# * WhiteListLabel: privilege
|
697
|
+
#
|
698
|
+
# This parameter is required.
|
662
699
|
self.quota_category = quota_category
|
663
700
|
# The reason for the quota application.
|
664
701
|
#
|
665
702
|
# > Applications are reviewed by the technical support team of each Alibaba Cloud service. To increase the success rate of your application, you must specify a reasonable quota value and detailed reasons when you submit the application.
|
703
|
+
#
|
704
|
+
# This parameter is required.
|
666
705
|
self.reason = reason
|
667
706
|
|
668
707
|
def validate(self):
|
@@ -837,9 +876,6 @@ class CreateQuotaApplicationsForTemplateResponse(TeaModel):
|
|
837
876
|
self.body = body
|
838
877
|
|
839
878
|
def validate(self):
|
840
|
-
self.validate_required(self.headers, 'headers')
|
841
|
-
self.validate_required(self.status_code, 'status_code')
|
842
|
-
self.validate_required(self.body, 'body')
|
843
879
|
if self.body:
|
844
880
|
self.body.validate()
|
845
881
|
|
@@ -877,15 +913,19 @@ class CreateTemplateQuotaItemRequestDimensions(TeaModel):
|
|
877
913
|
):
|
878
914
|
# The key of the dimension.
|
879
915
|
#
|
880
|
-
#
|
916
|
+
# >
|
917
|
+
#
|
918
|
+
# * The value range of N varies based on the number of dimensions that are supported by the related Alibaba Cloud service.
|
881
919
|
#
|
882
|
-
#
|
920
|
+
# * This parameter is required if you set the `ProductCode` parameter to `ecs`, `ecs-spec`, `actiontrail`, or `ess`.
|
883
921
|
self.key = key
|
884
922
|
# The value of the dimension.
|
885
923
|
#
|
886
|
-
#
|
924
|
+
# >
|
887
925
|
#
|
888
|
-
#
|
926
|
+
# * The value range of N varies based on the number of dimensions that are supported by the related Alibaba Cloud service.
|
927
|
+
#
|
928
|
+
# * This parameter is required if you set the `ProductCode` parameter to `ecs`, `ecs-spec`, `actiontrail`, or `ess`.
|
889
929
|
self.value = value
|
890
930
|
|
891
931
|
def validate(self):
|
@@ -926,6 +966,14 @@ class CreateTemplateQuotaItemRequest(TeaModel):
|
|
926
966
|
quota_category: str = None,
|
927
967
|
):
|
928
968
|
# The requested value of the quota.
|
969
|
+
#
|
970
|
+
# >
|
971
|
+
#
|
972
|
+
# * You can specify DesireValue based on the values of `TotalUsage` and `ApplicableRange` in the response to the [ListProductQuotas](https://help.aliyun.com/document_detail/440554.html) operation.
|
973
|
+
#
|
974
|
+
# * Applications are reviewed by the technical support team for each cloud service. To increase the success rate of your application, specify a reasonable quota value and a detailed reason.
|
975
|
+
#
|
976
|
+
# This parameter is required.
|
929
977
|
self.desire_value = desire_value
|
930
978
|
# The quota dimensions.
|
931
979
|
self.dimensions = dimensions
|
@@ -949,9 +997,15 @@ class CreateTemplateQuotaItemRequest(TeaModel):
|
|
949
997
|
self.notice_type = notice_type
|
950
998
|
# The abbreviation of the Alibaba Cloud service name.
|
951
999
|
#
|
952
|
-
# >
|
1000
|
+
# > To query the abbreviation of an Alibaba Cloud service name, call the [ListProducts](https://help.aliyun.com/document_detail/440555.html) operation and check the value of `ProductCode` in the response.
|
1001
|
+
#
|
1002
|
+
# This parameter is required.
|
953
1003
|
self.product_code = product_code
|
954
|
-
# The ID
|
1004
|
+
# The quota ID.
|
1005
|
+
#
|
1006
|
+
# > To obtain the quota ID of an Alibaba Cloud service, call the [ListProductQuotas](https://help.aliyun.com/document_detail/440554.html) operation and check the value of `QuotaActionCode` in the response.
|
1007
|
+
#
|
1008
|
+
# This parameter is required.
|
955
1009
|
self.quota_action_code = quota_action_code
|
956
1010
|
# The quota type. Valid values:
|
957
1011
|
#
|
@@ -1067,9 +1121,6 @@ class CreateTemplateQuotaItemResponse(TeaModel):
|
|
1067
1121
|
self.body = body
|
1068
1122
|
|
1069
1123
|
def validate(self):
|
1070
|
-
self.validate_required(self.headers, 'headers')
|
1071
|
-
self.validate_required(self.status_code, 'status_code')
|
1072
|
-
self.validate_required(self.body, 'body')
|
1073
1124
|
if self.body:
|
1074
1125
|
self.body.validate()
|
1075
1126
|
|
@@ -1105,6 +1156,10 @@ class DeleteQuotaAlarmRequest(TeaModel):
|
|
1105
1156
|
alarm_id: str = None,
|
1106
1157
|
):
|
1107
1158
|
# The ID of the quota alert.
|
1159
|
+
#
|
1160
|
+
# > You can call the [ListQuotaAlarms](https://help.aliyun.com/document_detail/440561.html) operation to obtain the ID of a quota alert.
|
1161
|
+
#
|
1162
|
+
# This parameter is required.
|
1108
1163
|
self.alarm_id = alarm_id
|
1109
1164
|
|
1110
1165
|
def validate(self):
|
@@ -1167,9 +1222,6 @@ class DeleteQuotaAlarmResponse(TeaModel):
|
|
1167
1222
|
self.body = body
|
1168
1223
|
|
1169
1224
|
def validate(self):
|
1170
|
-
self.validate_required(self.headers, 'headers')
|
1171
|
-
self.validate_required(self.status_code, 'status_code')
|
1172
|
-
self.validate_required(self.body, 'body')
|
1173
1225
|
if self.body:
|
1174
1226
|
self.body.validate()
|
1175
1227
|
|
@@ -1205,6 +1257,10 @@ class DeleteTemplateQuotaItemRequest(TeaModel):
|
|
1205
1257
|
id: str = None,
|
1206
1258
|
):
|
1207
1259
|
# The ID of the quota template.
|
1260
|
+
#
|
1261
|
+
# You can call the [ListQuotaApplicationTemplates](https://help.aliyun.com/document_detail/450403.html) operation to obtain the ID of a quota template.
|
1262
|
+
#
|
1263
|
+
# This parameter is required.
|
1208
1264
|
self.id = id
|
1209
1265
|
|
1210
1266
|
def validate(self):
|
@@ -1274,9 +1330,6 @@ class DeleteTemplateQuotaItemResponse(TeaModel):
|
|
1274
1330
|
self.body = body
|
1275
1331
|
|
1276
1332
|
def validate(self):
|
1277
|
-
self.validate_required(self.headers, 'headers')
|
1278
|
-
self.validate_required(self.status_code, 'status_code')
|
1279
|
-
self.validate_required(self.body, 'body')
|
1280
1333
|
if self.body:
|
1281
1334
|
self.body.validate()
|
1282
1335
|
|
@@ -1358,9 +1411,13 @@ class GetProductQuotaRequest(TeaModel):
|
|
1358
1411
|
self.dimensions = dimensions
|
1359
1412
|
# The abbreviation of the Alibaba Cloud service name.
|
1360
1413
|
#
|
1361
|
-
# > For more information, see [Alibaba Cloud services that support Quota Center](
|
1414
|
+
# > For more information, see [Alibaba Cloud services that support Quota Center](https://help.aliyun.com/document_detail/182368.html).
|
1415
|
+
#
|
1416
|
+
# This parameter is required.
|
1362
1417
|
self.product_code = product_code
|
1363
1418
|
# The ID of the quota.
|
1419
|
+
#
|
1420
|
+
# This parameter is required.
|
1364
1421
|
self.quota_action_code = quota_action_code
|
1365
1422
|
|
1366
1423
|
def validate(self):
|
@@ -1494,6 +1551,45 @@ class GetProductQuotaResponseBodyQuotaQuotaItems(TeaModel):
|
|
1494
1551
|
return self
|
1495
1552
|
|
1496
1553
|
|
1554
|
+
class GetProductQuotaResponseBodyQuotaUsageMetric(TeaModel):
|
1555
|
+
def __init__(
|
1556
|
+
self,
|
1557
|
+
metric_dimensions: Dict[str, str] = None,
|
1558
|
+
metric_name: str = None,
|
1559
|
+
metric_namespace: str = None,
|
1560
|
+
):
|
1561
|
+
self.metric_dimensions = metric_dimensions
|
1562
|
+
self.metric_name = metric_name
|
1563
|
+
self.metric_namespace = metric_namespace
|
1564
|
+
|
1565
|
+
def validate(self):
|
1566
|
+
pass
|
1567
|
+
|
1568
|
+
def to_map(self):
|
1569
|
+
_map = super().to_map()
|
1570
|
+
if _map is not None:
|
1571
|
+
return _map
|
1572
|
+
|
1573
|
+
result = dict()
|
1574
|
+
if self.metric_dimensions is not None:
|
1575
|
+
result['MetricDimensions'] = self.metric_dimensions
|
1576
|
+
if self.metric_name is not None:
|
1577
|
+
result['MetricName'] = self.metric_name
|
1578
|
+
if self.metric_namespace is not None:
|
1579
|
+
result['MetricNamespace'] = self.metric_namespace
|
1580
|
+
return result
|
1581
|
+
|
1582
|
+
def from_map(self, m: dict = None):
|
1583
|
+
m = m or dict()
|
1584
|
+
if m.get('MetricDimensions') is not None:
|
1585
|
+
self.metric_dimensions = m.get('MetricDimensions')
|
1586
|
+
if m.get('MetricName') is not None:
|
1587
|
+
self.metric_name = m.get('MetricName')
|
1588
|
+
if m.get('MetricNamespace') is not None:
|
1589
|
+
self.metric_namespace = m.get('MetricNamespace')
|
1590
|
+
return self
|
1591
|
+
|
1592
|
+
|
1497
1593
|
class GetProductQuotaResponseBodyQuota(TeaModel):
|
1498
1594
|
def __init__(
|
1499
1595
|
self,
|
@@ -1520,6 +1616,7 @@ class GetProductQuotaResponseBodyQuota(TeaModel):
|
|
1520
1616
|
total_quota: float = None,
|
1521
1617
|
total_usage: float = None,
|
1522
1618
|
unadjustable_detail: str = None,
|
1619
|
+
usage_metric: GetProductQuotaResponseBodyQuotaUsageMetric = None,
|
1523
1620
|
):
|
1524
1621
|
# Indicates whether the quota is adjustable. Valid values:
|
1525
1622
|
#
|
@@ -1593,6 +1690,7 @@ class GetProductQuotaResponseBodyQuota(TeaModel):
|
|
1593
1690
|
# * limitReached: The quota limit is reached.
|
1594
1691
|
# * supportTicketRequired: The quota can be increased only by submitting a ticket.
|
1595
1692
|
self.unadjustable_detail = unadjustable_detail
|
1693
|
+
self.usage_metric = usage_metric
|
1596
1694
|
|
1597
1695
|
def validate(self):
|
1598
1696
|
if self.period:
|
@@ -1601,6 +1699,8 @@ class GetProductQuotaResponseBodyQuota(TeaModel):
|
|
1601
1699
|
for k in self.quota_items:
|
1602
1700
|
if k:
|
1603
1701
|
k.validate()
|
1702
|
+
if self.usage_metric:
|
1703
|
+
self.usage_metric.validate()
|
1604
1704
|
|
1605
1705
|
def to_map(self):
|
1606
1706
|
_map = super().to_map()
|
@@ -1656,6 +1756,8 @@ class GetProductQuotaResponseBodyQuota(TeaModel):
|
|
1656
1756
|
result['TotalUsage'] = self.total_usage
|
1657
1757
|
if self.unadjustable_detail is not None:
|
1658
1758
|
result['UnadjustableDetail'] = self.unadjustable_detail
|
1759
|
+
if self.usage_metric is not None:
|
1760
|
+
result['UsageMetric'] = self.usage_metric.to_map()
|
1659
1761
|
return result
|
1660
1762
|
|
1661
1763
|
def from_map(self, m: dict = None):
|
@@ -1710,6 +1812,9 @@ class GetProductQuotaResponseBodyQuota(TeaModel):
|
|
1710
1812
|
self.total_usage = m.get('TotalUsage')
|
1711
1813
|
if m.get('UnadjustableDetail') is not None:
|
1712
1814
|
self.unadjustable_detail = m.get('UnadjustableDetail')
|
1815
|
+
if m.get('UsageMetric') is not None:
|
1816
|
+
temp_model = GetProductQuotaResponseBodyQuotaUsageMetric()
|
1817
|
+
self.usage_metric = temp_model.from_map(m['UsageMetric'])
|
1713
1818
|
return self
|
1714
1819
|
|
1715
1820
|
|
@@ -1762,9 +1867,6 @@ class GetProductQuotaResponse(TeaModel):
|
|
1762
1867
|
self.body = body
|
1763
1868
|
|
1764
1869
|
def validate(self):
|
1765
|
-
self.validate_required(self.headers, 'headers')
|
1766
|
-
self.validate_required(self.status_code, 'status_code')
|
1767
|
-
self.validate_required(self.body, 'body')
|
1768
1870
|
if self.body:
|
1769
1871
|
self.body.validate()
|
1770
1872
|
|
@@ -1846,7 +1948,9 @@ class GetProductQuotaDimensionRequest(TeaModel):
|
|
1846
1948
|
self.dimension_key = dimension_key
|
1847
1949
|
# The abbreviation of the Alibaba Cloud service name.
|
1848
1950
|
#
|
1849
|
-
# > For more information, see [Alibaba Cloud services that support Quota Center](
|
1951
|
+
# > For more information, see [Alibaba Cloud services that support Quota Center](https://help.aliyun.com/document_detail/182368.html).
|
1952
|
+
#
|
1953
|
+
# This parameter is required.
|
1850
1954
|
self.product_code = product_code
|
1851
1955
|
|
1852
1956
|
def validate(self):
|
@@ -2038,9 +2142,6 @@ class GetProductQuotaDimensionResponse(TeaModel):
|
|
2038
2142
|
self.body = body
|
2039
2143
|
|
2040
2144
|
def validate(self):
|
2041
|
-
self.validate_required(self.headers, 'headers')
|
2042
|
-
self.validate_required(self.status_code, 'status_code')
|
2043
|
-
self.validate_required(self.body, 'body')
|
2044
2145
|
if self.body:
|
2045
2146
|
self.body.validate()
|
2046
2147
|
|
@@ -2075,7 +2176,9 @@ class GetQuotaAlarmRequest(TeaModel):
|
|
2075
2176
|
self,
|
2076
2177
|
alarm_id: str = None,
|
2077
2178
|
):
|
2078
|
-
# The ID of the
|
2179
|
+
# The ID of the quota alert.
|
2180
|
+
#
|
2181
|
+
# For more information about how to query the ID of a quota alert, see [ListQuotaAlarms](https://help.aliyun.com/document_detail/184348.html).
|
2079
2182
|
self.alarm_id = alarm_id
|
2080
2183
|
|
2081
2184
|
def validate(self):
|
@@ -2116,34 +2219,34 @@ class GetQuotaAlarmResponseBodyQuotaAlarm(TeaModel):
|
|
2116
2219
|
threshold_type: str = None,
|
2117
2220
|
webhook: str = None,
|
2118
2221
|
):
|
2119
|
-
# The
|
2222
|
+
# The ID of the quota alert.
|
2120
2223
|
self.alarm_id = alarm_id
|
2121
|
-
#
|
2224
|
+
# The name of the quota alert.
|
2122
2225
|
self.alarm_name = alarm_name
|
2123
|
-
# The
|
2226
|
+
# The time when the quota alert was created.
|
2124
2227
|
self.create_time = create_time
|
2125
2228
|
# The alert notification methods.
|
2126
2229
|
self.notify_channels = notify_channels
|
2127
|
-
# The
|
2230
|
+
# The alert contact.
|
2128
2231
|
self.notify_target = notify_target
|
2129
|
-
# The abbreviation of the
|
2232
|
+
# The abbreviation of the cloud service name.
|
2130
2233
|
self.product_code = product_code
|
2131
|
-
# The
|
2234
|
+
# The ID of the quota.
|
2132
2235
|
self.quota_action_code = quota_action_code
|
2133
|
-
# The
|
2236
|
+
# The quota dimension.
|
2134
2237
|
self.quota_dimension = quota_dimension
|
2135
|
-
# The
|
2238
|
+
# The used quota.
|
2136
2239
|
self.quota_usage = quota_usage
|
2137
|
-
# The
|
2240
|
+
# The quota value.
|
2138
2241
|
self.quota_value = quota_value
|
2139
|
-
# The
|
2242
|
+
# The numeric value of the alert threshold.
|
2140
2243
|
self.threshold = threshold
|
2244
|
+
# The percentage of the alert threshold.
|
2245
|
+
self.threshold_percent = threshold_percent
|
2141
2246
|
# The type of the quota alert. Valid values:
|
2142
2247
|
#
|
2143
2248
|
# * used: The alert is created for the used quota.
|
2144
2249
|
# * usable: The alert is created for the available quota.
|
2145
|
-
self.threshold_percent = threshold_percent
|
2146
|
-
# The quota dimension.
|
2147
2250
|
self.threshold_type = threshold_type
|
2148
2251
|
# The webhook URL. Quota Center sends alert notifications to the specified URL by using HTTP POST requests.
|
2149
2252
|
self.webhook = webhook
|
@@ -2226,9 +2329,9 @@ class GetQuotaAlarmResponseBody(TeaModel):
|
|
2226
2329
|
quota_alarm: GetQuotaAlarmResponseBodyQuotaAlarm = None,
|
2227
2330
|
request_id: str = None,
|
2228
2331
|
):
|
2229
|
-
# The details of the quota alert rule.
|
2230
|
-
self.quota_alarm = quota_alarm
|
2231
2332
|
# The details of the quota alert.
|
2333
|
+
self.quota_alarm = quota_alarm
|
2334
|
+
# The ID of the request.
|
2232
2335
|
self.request_id = request_id
|
2233
2336
|
|
2234
2337
|
def validate(self):
|
@@ -2269,9 +2372,6 @@ class GetQuotaAlarmResponse(TeaModel):
|
|
2269
2372
|
self.body = body
|
2270
2373
|
|
2271
2374
|
def validate(self):
|
2272
|
-
self.validate_required(self.headers, 'headers')
|
2273
|
-
self.validate_required(self.status_code, 'status_code')
|
2274
|
-
self.validate_required(self.body, 'body')
|
2275
2375
|
if self.body:
|
2276
2376
|
self.body.validate()
|
2277
2377
|
|
@@ -2344,6 +2444,7 @@ class GetQuotaApplicationResponseBodyQuotaApplication(TeaModel):
|
|
2344
2444
|
product_code: str = None,
|
2345
2445
|
quota_action_code: str = None,
|
2346
2446
|
quota_arn: str = None,
|
2447
|
+
quota_category: str = None,
|
2347
2448
|
quota_description: str = None,
|
2348
2449
|
quota_name: str = None,
|
2349
2450
|
quota_unit: str = None,
|
@@ -2380,6 +2481,7 @@ class GetQuotaApplicationResponseBodyQuotaApplication(TeaModel):
|
|
2380
2481
|
self.quota_action_code = quota_action_code
|
2381
2482
|
# The Alibaba Cloud Resource Name (ARN) of the quota.
|
2382
2483
|
self.quota_arn = quota_arn
|
2484
|
+
self.quota_category = quota_category
|
2383
2485
|
# The description of the quota.
|
2384
2486
|
self.quota_description = quota_description
|
2385
2487
|
# The name of the quota.
|
@@ -2429,6 +2531,8 @@ class GetQuotaApplicationResponseBodyQuotaApplication(TeaModel):
|
|
2429
2531
|
result['QuotaActionCode'] = self.quota_action_code
|
2430
2532
|
if self.quota_arn is not None:
|
2431
2533
|
result['QuotaArn'] = self.quota_arn
|
2534
|
+
if self.quota_category is not None:
|
2535
|
+
result['QuotaCategory'] = self.quota_category
|
2432
2536
|
if self.quota_description is not None:
|
2433
2537
|
result['QuotaDescription'] = self.quota_description
|
2434
2538
|
if self.quota_name is not None:
|
@@ -2467,6 +2571,8 @@ class GetQuotaApplicationResponseBodyQuotaApplication(TeaModel):
|
|
2467
2571
|
self.quota_action_code = m.get('QuotaActionCode')
|
2468
2572
|
if m.get('QuotaArn') is not None:
|
2469
2573
|
self.quota_arn = m.get('QuotaArn')
|
2574
|
+
if m.get('QuotaCategory') is not None:
|
2575
|
+
self.quota_category = m.get('QuotaCategory')
|
2470
2576
|
if m.get('QuotaDescription') is not None:
|
2471
2577
|
self.quota_description = m.get('QuotaDescription')
|
2472
2578
|
if m.get('QuotaName') is not None:
|
@@ -2529,9 +2635,6 @@ class GetQuotaApplicationResponse(TeaModel):
|
|
2529
2635
|
self.body = body
|
2530
2636
|
|
2531
2637
|
def validate(self):
|
2532
|
-
self.validate_required(self.headers, 'headers')
|
2533
|
-
self.validate_required(self.status_code, 'status_code')
|
2534
|
-
self.validate_required(self.body, 'body')
|
2535
2638
|
if self.body:
|
2536
2639
|
self.body.validate()
|
2537
2640
|
|
@@ -2561,6 +2664,228 @@ class GetQuotaApplicationResponse(TeaModel):
|
|
2561
2664
|
return self
|
2562
2665
|
|
2563
2666
|
|
2667
|
+
class GetQuotaApplicationApprovalRequest(TeaModel):
|
2668
|
+
def __init__(
|
2669
|
+
self,
|
2670
|
+
application_id: str = None,
|
2671
|
+
):
|
2672
|
+
# The quota application ID.
|
2673
|
+
#
|
2674
|
+
# For more information about how to obtain the ID of a quota application, see [ListQuotaApplications](https://help.aliyun.com/document_detail/440568.html).
|
2675
|
+
self.application_id = application_id
|
2676
|
+
|
2677
|
+
def validate(self):
|
2678
|
+
pass
|
2679
|
+
|
2680
|
+
def to_map(self):
|
2681
|
+
_map = super().to_map()
|
2682
|
+
if _map is not None:
|
2683
|
+
return _map
|
2684
|
+
|
2685
|
+
result = dict()
|
2686
|
+
if self.application_id is not None:
|
2687
|
+
result['ApplicationId'] = self.application_id
|
2688
|
+
return result
|
2689
|
+
|
2690
|
+
def from_map(self, m: dict = None):
|
2691
|
+
m = m or dict()
|
2692
|
+
if m.get('ApplicationId') is not None:
|
2693
|
+
self.application_id = m.get('ApplicationId')
|
2694
|
+
return self
|
2695
|
+
|
2696
|
+
|
2697
|
+
class GetQuotaApplicationApprovalResponseBodyModule(TeaModel):
|
2698
|
+
def __init__(
|
2699
|
+
self,
|
2700
|
+
approval_hours: int = None,
|
2701
|
+
reminder_interval_hours: int = None,
|
2702
|
+
support_reminder: bool = None,
|
2703
|
+
unsupport_reminder_reason: str = None,
|
2704
|
+
):
|
2705
|
+
# The average amount of time required to approve quota applications. Unit: hour.
|
2706
|
+
self.approval_hours = approval_hours
|
2707
|
+
# The interval between two consecutive approval reminders. Unit: hour.
|
2708
|
+
self.reminder_interval_hours = reminder_interval_hours
|
2709
|
+
# Indicates whether approval reminders are supported for quota applications. Valid values:
|
2710
|
+
#
|
2711
|
+
# * false
|
2712
|
+
# * true
|
2713
|
+
self.support_reminder = support_reminder
|
2714
|
+
# The reason why approval reminders are not supported for quota applications.
|
2715
|
+
self.unsupport_reminder_reason = unsupport_reminder_reason
|
2716
|
+
|
2717
|
+
def validate(self):
|
2718
|
+
pass
|
2719
|
+
|
2720
|
+
def to_map(self):
|
2721
|
+
_map = super().to_map()
|
2722
|
+
if _map is not None:
|
2723
|
+
return _map
|
2724
|
+
|
2725
|
+
result = dict()
|
2726
|
+
if self.approval_hours is not None:
|
2727
|
+
result['ApprovalHours'] = self.approval_hours
|
2728
|
+
if self.reminder_interval_hours is not None:
|
2729
|
+
result['ReminderIntervalHours'] = self.reminder_interval_hours
|
2730
|
+
if self.support_reminder is not None:
|
2731
|
+
result['SupportReminder'] = self.support_reminder
|
2732
|
+
if self.unsupport_reminder_reason is not None:
|
2733
|
+
result['UnsupportReminderReason'] = self.unsupport_reminder_reason
|
2734
|
+
return result
|
2735
|
+
|
2736
|
+
def from_map(self, m: dict = None):
|
2737
|
+
m = m or dict()
|
2738
|
+
if m.get('ApprovalHours') is not None:
|
2739
|
+
self.approval_hours = m.get('ApprovalHours')
|
2740
|
+
if m.get('ReminderIntervalHours') is not None:
|
2741
|
+
self.reminder_interval_hours = m.get('ReminderIntervalHours')
|
2742
|
+
if m.get('SupportReminder') is not None:
|
2743
|
+
self.support_reminder = m.get('SupportReminder')
|
2744
|
+
if m.get('UnsupportReminderReason') is not None:
|
2745
|
+
self.unsupport_reminder_reason = m.get('UnsupportReminderReason')
|
2746
|
+
return self
|
2747
|
+
|
2748
|
+
|
2749
|
+
class GetQuotaApplicationApprovalResponseBody(TeaModel):
|
2750
|
+
def __init__(
|
2751
|
+
self,
|
2752
|
+
allow_retry: bool = None,
|
2753
|
+
dynamic_code: str = None,
|
2754
|
+
dynamic_message: str = None,
|
2755
|
+
error_args: List[Any] = None,
|
2756
|
+
error_code: str = None,
|
2757
|
+
error_msg: str = None,
|
2758
|
+
http_status_code: int = None,
|
2759
|
+
module: GetQuotaApplicationApprovalResponseBodyModule = None,
|
2760
|
+
request_id: str = None,
|
2761
|
+
success: bool = None,
|
2762
|
+
):
|
2763
|
+
# Indicates whether retries are allowed. Valid values:
|
2764
|
+
#
|
2765
|
+
# * false
|
2766
|
+
# * true
|
2767
|
+
self.allow_retry = allow_retry
|
2768
|
+
# The dynamic error code.
|
2769
|
+
self.dynamic_code = dynamic_code
|
2770
|
+
# The dynamic error message.
|
2771
|
+
self.dynamic_message = dynamic_message
|
2772
|
+
# The parameters whose values are invalid.
|
2773
|
+
self.error_args = error_args
|
2774
|
+
# The error code.
|
2775
|
+
self.error_code = error_code
|
2776
|
+
# The error message.
|
2777
|
+
self.error_msg = error_msg
|
2778
|
+
# The HTTP status code.
|
2779
|
+
self.http_status_code = http_status_code
|
2780
|
+
# The information about quota application approval.
|
2781
|
+
self.module = module
|
2782
|
+
# The request ID.
|
2783
|
+
self.request_id = request_id
|
2784
|
+
# Indicates whether the request was successful. Valid values:
|
2785
|
+
#
|
2786
|
+
# * true
|
2787
|
+
# * false
|
2788
|
+
self.success = success
|
2789
|
+
|
2790
|
+
def validate(self):
|
2791
|
+
if self.module:
|
2792
|
+
self.module.validate()
|
2793
|
+
|
2794
|
+
def to_map(self):
|
2795
|
+
_map = super().to_map()
|
2796
|
+
if _map is not None:
|
2797
|
+
return _map
|
2798
|
+
|
2799
|
+
result = dict()
|
2800
|
+
if self.allow_retry is not None:
|
2801
|
+
result['AllowRetry'] = self.allow_retry
|
2802
|
+
if self.dynamic_code is not None:
|
2803
|
+
result['DynamicCode'] = self.dynamic_code
|
2804
|
+
if self.dynamic_message is not None:
|
2805
|
+
result['DynamicMessage'] = self.dynamic_message
|
2806
|
+
if self.error_args is not None:
|
2807
|
+
result['ErrorArgs'] = self.error_args
|
2808
|
+
if self.error_code is not None:
|
2809
|
+
result['ErrorCode'] = self.error_code
|
2810
|
+
if self.error_msg is not None:
|
2811
|
+
result['ErrorMsg'] = self.error_msg
|
2812
|
+
if self.http_status_code is not None:
|
2813
|
+
result['HttpStatusCode'] = self.http_status_code
|
2814
|
+
if self.module is not None:
|
2815
|
+
result['Module'] = self.module.to_map()
|
2816
|
+
if self.request_id is not None:
|
2817
|
+
result['RequestId'] = self.request_id
|
2818
|
+
if self.success is not None:
|
2819
|
+
result['Success'] = self.success
|
2820
|
+
return result
|
2821
|
+
|
2822
|
+
def from_map(self, m: dict = None):
|
2823
|
+
m = m or dict()
|
2824
|
+
if m.get('AllowRetry') is not None:
|
2825
|
+
self.allow_retry = m.get('AllowRetry')
|
2826
|
+
if m.get('DynamicCode') is not None:
|
2827
|
+
self.dynamic_code = m.get('DynamicCode')
|
2828
|
+
if m.get('DynamicMessage') is not None:
|
2829
|
+
self.dynamic_message = m.get('DynamicMessage')
|
2830
|
+
if m.get('ErrorArgs') is not None:
|
2831
|
+
self.error_args = m.get('ErrorArgs')
|
2832
|
+
if m.get('ErrorCode') is not None:
|
2833
|
+
self.error_code = m.get('ErrorCode')
|
2834
|
+
if m.get('ErrorMsg') is not None:
|
2835
|
+
self.error_msg = m.get('ErrorMsg')
|
2836
|
+
if m.get('HttpStatusCode') is not None:
|
2837
|
+
self.http_status_code = m.get('HttpStatusCode')
|
2838
|
+
if m.get('Module') is not None:
|
2839
|
+
temp_model = GetQuotaApplicationApprovalResponseBodyModule()
|
2840
|
+
self.module = temp_model.from_map(m['Module'])
|
2841
|
+
if m.get('RequestId') is not None:
|
2842
|
+
self.request_id = m.get('RequestId')
|
2843
|
+
if m.get('Success') is not None:
|
2844
|
+
self.success = m.get('Success')
|
2845
|
+
return self
|
2846
|
+
|
2847
|
+
|
2848
|
+
class GetQuotaApplicationApprovalResponse(TeaModel):
|
2849
|
+
def __init__(
|
2850
|
+
self,
|
2851
|
+
headers: Dict[str, str] = None,
|
2852
|
+
status_code: int = None,
|
2853
|
+
body: GetQuotaApplicationApprovalResponseBody = None,
|
2854
|
+
):
|
2855
|
+
self.headers = headers
|
2856
|
+
self.status_code = status_code
|
2857
|
+
self.body = body
|
2858
|
+
|
2859
|
+
def validate(self):
|
2860
|
+
if self.body:
|
2861
|
+
self.body.validate()
|
2862
|
+
|
2863
|
+
def to_map(self):
|
2864
|
+
_map = super().to_map()
|
2865
|
+
if _map is not None:
|
2866
|
+
return _map
|
2867
|
+
|
2868
|
+
result = dict()
|
2869
|
+
if self.headers is not None:
|
2870
|
+
result['headers'] = self.headers
|
2871
|
+
if self.status_code is not None:
|
2872
|
+
result['statusCode'] = self.status_code
|
2873
|
+
if self.body is not None:
|
2874
|
+
result['body'] = self.body.to_map()
|
2875
|
+
return result
|
2876
|
+
|
2877
|
+
def from_map(self, m: dict = None):
|
2878
|
+
m = m or dict()
|
2879
|
+
if m.get('headers') is not None:
|
2880
|
+
self.headers = m.get('headers')
|
2881
|
+
if m.get('statusCode') is not None:
|
2882
|
+
self.status_code = m.get('statusCode')
|
2883
|
+
if m.get('body') is not None:
|
2884
|
+
temp_model = GetQuotaApplicationApprovalResponseBody()
|
2885
|
+
self.body = temp_model.from_map(m['body'])
|
2886
|
+
return self
|
2887
|
+
|
2888
|
+
|
2564
2889
|
class GetQuotaTemplateServiceStatusRequest(TeaModel):
|
2565
2890
|
def __init__(
|
2566
2891
|
self,
|
@@ -2599,7 +2924,7 @@ class GetQuotaTemplateServiceStatusResponseBodyTemplateServiceStatus(TeaModel):
|
|
2599
2924
|
self.resource_directory_id = resource_directory_id
|
2600
2925
|
# The state of the quota template. Valid values:
|
2601
2926
|
#
|
2602
|
-
# *
|
2927
|
+
# * \\-1: The quota template is disabled.
|
2603
2928
|
# * 1: The quota template is enabled.
|
2604
2929
|
self.service_status = service_status
|
2605
2930
|
|
@@ -2676,9 +3001,6 @@ class GetQuotaTemplateServiceStatusResponse(TeaModel):
|
|
2676
3001
|
self.body = body
|
2677
3002
|
|
2678
3003
|
def validate(self):
|
2679
|
-
self.validate_required(self.headers, 'headers')
|
2680
|
-
self.validate_required(self.status_code, 'status_code')
|
2681
|
-
self.validate_required(self.body, 'body')
|
2682
3004
|
if self.body:
|
2683
3005
|
self.body.validate()
|
2684
3006
|
|
@@ -2711,6 +3033,7 @@ class GetQuotaTemplateServiceStatusResponse(TeaModel):
|
|
2711
3033
|
class ListAlarmHistoriesRequest(TeaModel):
|
2712
3034
|
def __init__(
|
2713
3035
|
self,
|
3036
|
+
alarm_id: str = None,
|
2714
3037
|
end_time: int = None,
|
2715
3038
|
keyword: str = None,
|
2716
3039
|
max_results: int = None,
|
@@ -2718,6 +3041,8 @@ class ListAlarmHistoriesRequest(TeaModel):
|
|
2718
3041
|
product_code: str = None,
|
2719
3042
|
start_time: int = None,
|
2720
3043
|
):
|
3044
|
+
# The ID of the alert.
|
3045
|
+
self.alarm_id = alarm_id
|
2721
3046
|
# The end of the time range to query.
|
2722
3047
|
self.end_time = end_time
|
2723
3048
|
# The keyword that is used for the query.
|
@@ -2730,7 +3055,7 @@ class ListAlarmHistoriesRequest(TeaModel):
|
|
2730
3055
|
self.next_token = next_token
|
2731
3056
|
# The abbreviation of the Alibaba Cloud service name.
|
2732
3057
|
#
|
2733
|
-
# > For more information, see [Alibaba Cloud services that support Quota Center](
|
3058
|
+
# > For more information, see [Alibaba Cloud services that support Quota Center](https://help.aliyun.com/document_detail/182368.html).
|
2734
3059
|
self.product_code = product_code
|
2735
3060
|
# The beginning of the time range to query.
|
2736
3061
|
self.start_time = start_time
|
@@ -2744,6 +3069,8 @@ class ListAlarmHistoriesRequest(TeaModel):
|
|
2744
3069
|
return _map
|
2745
3070
|
|
2746
3071
|
result = dict()
|
3072
|
+
if self.alarm_id is not None:
|
3073
|
+
result['AlarmId'] = self.alarm_id
|
2747
3074
|
if self.end_time is not None:
|
2748
3075
|
result['EndTime'] = self.end_time
|
2749
3076
|
if self.keyword is not None:
|
@@ -2760,6 +3087,8 @@ class ListAlarmHistoriesRequest(TeaModel):
|
|
2760
3087
|
|
2761
3088
|
def from_map(self, m: dict = None):
|
2762
3089
|
m = m or dict()
|
3090
|
+
if m.get('AlarmId') is not None:
|
3091
|
+
self.alarm_id = m.get('AlarmId')
|
2763
3092
|
if m.get('EndTime') is not None:
|
2764
3093
|
self.end_time = m.get('EndTime')
|
2765
3094
|
if m.get('Keyword') is not None:
|
@@ -2935,9 +3264,6 @@ class ListAlarmHistoriesResponse(TeaModel):
|
|
2935
3264
|
self.body = body
|
2936
3265
|
|
2937
3266
|
def validate(self):
|
2938
|
-
self.validate_required(self.headers, 'headers')
|
2939
|
-
self.validate_required(self.status_code, 'status_code')
|
2940
|
-
self.validate_required(self.body, 'body')
|
2941
3267
|
if self.body:
|
2942
3268
|
self.body.validate()
|
2943
3269
|
|
@@ -2975,9 +3301,13 @@ class ListDependentQuotasRequest(TeaModel):
|
|
2975
3301
|
):
|
2976
3302
|
# The abbreviation of the Alibaba Cloud service name.
|
2977
3303
|
#
|
2978
|
-
# > For more information, see [Alibaba Cloud services that support Quota Center](
|
3304
|
+
# > For more information, see [Alibaba Cloud services that support Quota Center](https://help.aliyun.com/document_detail/182368.html).
|
3305
|
+
#
|
3306
|
+
# This parameter is required.
|
2979
3307
|
self.product_code = product_code
|
2980
3308
|
# The quota ID.
|
3309
|
+
#
|
3310
|
+
# This parameter is required.
|
2981
3311
|
self.quota_action_code = quota_action_code
|
2982
3312
|
|
2983
3313
|
def validate(self):
|
@@ -3158,9 +3488,6 @@ class ListDependentQuotasResponse(TeaModel):
|
|
3158
3488
|
self.body = body
|
3159
3489
|
|
3160
3490
|
def validate(self):
|
3161
|
-
self.validate_required(self.headers, 'headers')
|
3162
|
-
self.validate_required(self.status_code, 'status_code')
|
3163
|
-
self.validate_required(self.body, 'body')
|
3164
3491
|
if self.body:
|
3165
3492
|
self.body.validate()
|
3166
3493
|
|
@@ -3203,7 +3530,9 @@ class ListProductDimensionGroupsRequest(TeaModel):
|
|
3203
3530
|
self.next_token = next_token
|
3204
3531
|
# The service code.
|
3205
3532
|
#
|
3206
|
-
# > For more information, see [Alibaba Cloud services that support Quota Center](
|
3533
|
+
# > For more information, see [Alibaba Cloud services that support Quota Center](https://help.aliyun.com/document_detail/182368.html).
|
3534
|
+
#
|
3535
|
+
# This parameter is required.
|
3207
3536
|
self.product_code = product_code
|
3208
3537
|
|
3209
3538
|
def validate(self):
|
@@ -3359,9 +3688,6 @@ class ListProductDimensionGroupsResponse(TeaModel):
|
|
3359
3688
|
self.body = body
|
3360
3689
|
|
3361
3690
|
def validate(self):
|
3362
|
-
self.validate_required(self.headers, 'headers')
|
3363
|
-
self.validate_required(self.status_code, 'status_code')
|
3364
|
-
self.validate_required(self.body, 'body')
|
3365
3691
|
if self.body:
|
3366
3692
|
self.body.validate()
|
3367
3693
|
|
@@ -3407,7 +3733,9 @@ class ListProductQuotaDimensionsRequest(TeaModel):
|
|
3407
3733
|
self.next_token = next_token
|
3408
3734
|
# The abbreviation of the Alibaba Cloud service name.
|
3409
3735
|
#
|
3410
|
-
# > For more information, see [Alibaba Cloud services that support Quota Center](
|
3736
|
+
# > For more information, see [Alibaba Cloud services that support Quota Center](https://help.aliyun.com/document_detail/182368.html).
|
3737
|
+
#
|
3738
|
+
# This parameter is required.
|
3411
3739
|
self.product_code = product_code
|
3412
3740
|
# The type of the quota. Valid values:
|
3413
3741
|
#
|
@@ -3447,19 +3775,60 @@ class ListProductQuotaDimensionsRequest(TeaModel):
|
|
3447
3775
|
return self
|
3448
3776
|
|
3449
3777
|
|
3778
|
+
class ListProductQuotaDimensionsResponseBodyQuotaDimensionsDimensionValueDetailDependentDimensions(TeaModel):
|
3779
|
+
def __init__(
|
3780
|
+
self,
|
3781
|
+
key: str = None,
|
3782
|
+
value: str = None,
|
3783
|
+
):
|
3784
|
+
# The key of the quota dimension on which the quota dimension that you want to query is dependent.
|
3785
|
+
self.key = key
|
3786
|
+
# The value of the quota dimension on which the quota dimension that you want to query is dependent.
|
3787
|
+
self.value = value
|
3788
|
+
|
3789
|
+
def validate(self):
|
3790
|
+
pass
|
3791
|
+
|
3792
|
+
def to_map(self):
|
3793
|
+
_map = super().to_map()
|
3794
|
+
if _map is not None:
|
3795
|
+
return _map
|
3796
|
+
|
3797
|
+
result = dict()
|
3798
|
+
if self.key is not None:
|
3799
|
+
result['Key'] = self.key
|
3800
|
+
if self.value is not None:
|
3801
|
+
result['Value'] = self.value
|
3802
|
+
return result
|
3803
|
+
|
3804
|
+
def from_map(self, m: dict = None):
|
3805
|
+
m = m or dict()
|
3806
|
+
if m.get('Key') is not None:
|
3807
|
+
self.key = m.get('Key')
|
3808
|
+
if m.get('Value') is not None:
|
3809
|
+
self.value = m.get('Value')
|
3810
|
+
return self
|
3811
|
+
|
3812
|
+
|
3450
3813
|
class ListProductQuotaDimensionsResponseBodyQuotaDimensionsDimensionValueDetail(TeaModel):
|
3451
3814
|
def __init__(
|
3452
3815
|
self,
|
3816
|
+
dependent_dimensions: List[ListProductQuotaDimensionsResponseBodyQuotaDimensionsDimensionValueDetailDependentDimensions] = None,
|
3453
3817
|
name: str = None,
|
3454
3818
|
value: str = None,
|
3455
3819
|
):
|
3820
|
+
# The quota dimensions on which the quota dimension that you want to query is dependent.
|
3821
|
+
self.dependent_dimensions = dependent_dimensions
|
3456
3822
|
# The name of the quota dimension.
|
3457
3823
|
self.name = name
|
3458
3824
|
# The value of the quota dimension.
|
3459
3825
|
self.value = value
|
3460
3826
|
|
3461
3827
|
def validate(self):
|
3462
|
-
|
3828
|
+
if self.dependent_dimensions:
|
3829
|
+
for k in self.dependent_dimensions:
|
3830
|
+
if k:
|
3831
|
+
k.validate()
|
3463
3832
|
|
3464
3833
|
def to_map(self):
|
3465
3834
|
_map = super().to_map()
|
@@ -3467,6 +3836,10 @@ class ListProductQuotaDimensionsResponseBodyQuotaDimensionsDimensionValueDetail(
|
|
3467
3836
|
return _map
|
3468
3837
|
|
3469
3838
|
result = dict()
|
3839
|
+
result['DependentDimensions'] = []
|
3840
|
+
if self.dependent_dimensions is not None:
|
3841
|
+
for k in self.dependent_dimensions:
|
3842
|
+
result['DependentDimensions'].append(k.to_map() if k else None)
|
3470
3843
|
if self.name is not None:
|
3471
3844
|
result['Name'] = self.name
|
3472
3845
|
if self.value is not None:
|
@@ -3475,6 +3848,11 @@ class ListProductQuotaDimensionsResponseBodyQuotaDimensionsDimensionValueDetail(
|
|
3475
3848
|
|
3476
3849
|
def from_map(self, m: dict = None):
|
3477
3850
|
m = m or dict()
|
3851
|
+
self.dependent_dimensions = []
|
3852
|
+
if m.get('DependentDimensions') is not None:
|
3853
|
+
for k in m.get('DependentDimensions'):
|
3854
|
+
temp_model = ListProductQuotaDimensionsResponseBodyQuotaDimensionsDimensionValueDetailDependentDimensions()
|
3855
|
+
self.dependent_dimensions.append(temp_model.from_map(k))
|
3478
3856
|
if m.get('Name') is not None:
|
3479
3857
|
self.name = m.get('Name')
|
3480
3858
|
if m.get('Value') is not None:
|
@@ -3637,9 +4015,6 @@ class ListProductQuotaDimensionsResponse(TeaModel):
|
|
3637
4015
|
self.body = body
|
3638
4016
|
|
3639
4017
|
def validate(self):
|
3640
|
-
self.validate_required(self.headers, 'headers')
|
3641
|
-
self.validate_required(self.status_code, 'status_code')
|
3642
|
-
self.validate_required(self.body, 'body')
|
3643
4018
|
if self.body:
|
3644
4019
|
self.body.validate()
|
3645
4020
|
|
@@ -3677,11 +4052,11 @@ class ListProductQuotasRequestDimensions(TeaModel):
|
|
3677
4052
|
):
|
3678
4053
|
# The key of the dimension.
|
3679
4054
|
#
|
3680
|
-
# >
|
4055
|
+
# > The value range of N varies based on the number of dimensions that are supported by the related Alibaba Cloud service.
|
3681
4056
|
self.key = key
|
3682
4057
|
# The value of the dimension.
|
3683
4058
|
#
|
3684
|
-
# >
|
4059
|
+
# > The value range of N varies based on the number of dimensions that are supported by the related Alibaba Cloud service.
|
3685
4060
|
self.value = value
|
3686
4061
|
|
3687
4062
|
def validate(self):
|
@@ -3736,9 +4111,11 @@ class ListProductQuotasRequest(TeaModel):
|
|
3736
4111
|
self.next_token = next_token
|
3737
4112
|
# The abbreviation of the Alibaba Cloud service name.
|
3738
4113
|
#
|
3739
|
-
# >
|
4114
|
+
# > To query the abbreviation of an Alibaba Cloud service name, call the [ListProducts](https://help.aliyun.com/document_detail/440555.html) operation and check the value of the `ProductCode` parameter.
|
4115
|
+
#
|
4116
|
+
# This parameter is required.
|
3740
4117
|
self.product_code = product_code
|
3741
|
-
# The ID
|
4118
|
+
# The quota ID.
|
3742
4119
|
self.quota_action_code = quota_action_code
|
3743
4120
|
# The type of the quota. Valid values:
|
3744
4121
|
#
|
@@ -3746,16 +4123,20 @@ class ListProductQuotasRequest(TeaModel):
|
|
3746
4123
|
# * FlowControl: API rate limit
|
3747
4124
|
# * WhiteListLabel: whitelist quota
|
3748
4125
|
self.quota_category = quota_category
|
3749
|
-
# The field based on which you want to sort the returned records.
|
4126
|
+
# The field based on which you want to sort the returned records. Valid values:
|
3750
4127
|
#
|
3751
4128
|
# * TIME: The returned records are sorted by the last update time.
|
3752
4129
|
# * TOTAL: The returned records are sorted by the usage of the total quota.
|
3753
4130
|
# * RESERVED: The returned records are sorted by the usage of the reserved quota.
|
4131
|
+
#
|
4132
|
+
# > This parameter is available only for quotas that belong to ECS Quotas by Instance Type. You can leave this parameter empty.
|
3754
4133
|
self.sort_field = sort_field
|
3755
|
-
# The order in which you want to sort the returned records.
|
4134
|
+
# The order in which you want to sort the returned records. Valid values:
|
3756
4135
|
#
|
3757
4136
|
# * Ascending: ascending order
|
3758
4137
|
# * Descending: descending order
|
4138
|
+
#
|
4139
|
+
# > This parameter is available only for quotas that belong to ECS Quotas by Instance Type. You can leave this parameter empty.
|
3759
4140
|
self.sort_order = sort_order
|
3760
4141
|
|
3761
4142
|
def validate(self):
|
@@ -3874,8 +4255,6 @@ class ListProductQuotasResponseBodyQuotasQuotaItems(TeaModel):
|
|
3874
4255
|
# The quota value.
|
3875
4256
|
self.quota = quota
|
3876
4257
|
# The unit of the quota.
|
3877
|
-
#
|
3878
|
-
# > The unit of each quota is unique. For example, the quota whose ID is `q_cbdch3` represents the maximum number of Container Service for Kubernetes (ACK) clusters. The unit of this quota is clusters. The quota whose ID is `q_security-groups` represents the maximum number of security groups. The unit of this quota is security groups.
|
3879
4258
|
self.quota_unit = quota_unit
|
3880
4259
|
# The category of the quota. Valid values:
|
3881
4260
|
#
|
@@ -3917,6 +4296,45 @@ class ListProductQuotasResponseBodyQuotasQuotaItems(TeaModel):
|
|
3917
4296
|
return self
|
3918
4297
|
|
3919
4298
|
|
4299
|
+
class ListProductQuotasResponseBodyQuotasUsageMetric(TeaModel):
|
4300
|
+
def __init__(
|
4301
|
+
self,
|
4302
|
+
metric_dimensions: Dict[str, str] = None,
|
4303
|
+
metric_name: str = None,
|
4304
|
+
metric_namespace: str = None,
|
4305
|
+
):
|
4306
|
+
self.metric_dimensions = metric_dimensions
|
4307
|
+
self.metric_name = metric_name
|
4308
|
+
self.metric_namespace = metric_namespace
|
4309
|
+
|
4310
|
+
def validate(self):
|
4311
|
+
pass
|
4312
|
+
|
4313
|
+
def to_map(self):
|
4314
|
+
_map = super().to_map()
|
4315
|
+
if _map is not None:
|
4316
|
+
return _map
|
4317
|
+
|
4318
|
+
result = dict()
|
4319
|
+
if self.metric_dimensions is not None:
|
4320
|
+
result['MetricDimensions'] = self.metric_dimensions
|
4321
|
+
if self.metric_name is not None:
|
4322
|
+
result['MetricName'] = self.metric_name
|
4323
|
+
if self.metric_namespace is not None:
|
4324
|
+
result['MetricNamespace'] = self.metric_namespace
|
4325
|
+
return result
|
4326
|
+
|
4327
|
+
def from_map(self, m: dict = None):
|
4328
|
+
m = m or dict()
|
4329
|
+
if m.get('MetricDimensions') is not None:
|
4330
|
+
self.metric_dimensions = m.get('MetricDimensions')
|
4331
|
+
if m.get('MetricName') is not None:
|
4332
|
+
self.metric_name = m.get('MetricName')
|
4333
|
+
if m.get('MetricNamespace') is not None:
|
4334
|
+
self.metric_namespace = m.get('MetricNamespace')
|
4335
|
+
return self
|
4336
|
+
|
4337
|
+
|
3920
4338
|
class ListProductQuotasResponseBodyQuotas(TeaModel):
|
3921
4339
|
def __init__(
|
3922
4340
|
self,
|
@@ -3943,13 +4361,14 @@ class ListProductQuotasResponseBodyQuotas(TeaModel):
|
|
3943
4361
|
total_quota: float = None,
|
3944
4362
|
total_usage: float = None,
|
3945
4363
|
unadjustable_detail: str = None,
|
4364
|
+
usage_metric: ListProductQuotasResponseBodyQuotasUsageMetric = None,
|
3946
4365
|
):
|
3947
4366
|
# Indicates whether the quota is adjustable. Valid values:
|
3948
4367
|
#
|
3949
|
-
# * true
|
3950
|
-
# * false
|
4368
|
+
# * true
|
4369
|
+
# * false
|
3951
4370
|
self.adjustable = adjustable
|
3952
|
-
#
|
4371
|
+
# N/A
|
3953
4372
|
self.applicable_range = applicable_range
|
3954
4373
|
# The type of the adjustable value. Valid values:
|
3955
4374
|
#
|
@@ -3960,8 +4379,8 @@ class ListProductQuotasResponseBodyQuotas(TeaModel):
|
|
3960
4379
|
self.apply_reason_tips = apply_reason_tips
|
3961
4380
|
# Indicates whether the system shows the used value of the quota. Valid values:
|
3962
4381
|
#
|
3963
|
-
# * true
|
3964
|
-
# * false
|
4382
|
+
# * true
|
4383
|
+
# * false
|
3965
4384
|
self.consumable = consumable
|
3966
4385
|
# The quota dimensions. Format: `{"regionId":"Region"}`.
|
3967
4386
|
self.dimensions = dimensions
|
@@ -3971,8 +4390,8 @@ class ListProductQuotasResponseBodyQuotas(TeaModel):
|
|
3971
4390
|
self.expire_time = expire_time
|
3972
4391
|
# Indicates whether the quota is a global quota. Valid values:
|
3973
4392
|
#
|
3974
|
-
# * true
|
3975
|
-
# * false
|
4393
|
+
# * true
|
4394
|
+
# * false
|
3976
4395
|
self.global_quota = global_quota
|
3977
4396
|
# The calculation cycle of the quota.
|
3978
4397
|
self.period = period
|
@@ -4000,10 +4419,8 @@ class ListProductQuotasResponseBodyQuotas(TeaModel):
|
|
4000
4419
|
# * normal
|
4001
4420
|
self.quota_type = quota_type
|
4002
4421
|
# The unit of the quota.
|
4003
|
-
#
|
4004
|
-
# > The unit of each quota is unique. For example, the quota whose ID is `q_cbdch3` represents the maximum number of Container Service for Kubernetes (ACK) clusters. The unit of this quota is clusters. The quota whose ID is `q_security-groups` represents the maximum number of security groups. The unit of this quota is security groups.
|
4005
4422
|
self.quota_unit = quota_unit
|
4006
|
-
#
|
4423
|
+
# N/A
|
4007
4424
|
self.supported_range = supported_range
|
4008
4425
|
# The quota value.
|
4009
4426
|
self.total_quota = total_quota
|
@@ -4015,6 +4432,7 @@ class ListProductQuotasResponseBodyQuotas(TeaModel):
|
|
4015
4432
|
# * applicationProcess: The application is being processed.
|
4016
4433
|
# * limitReached: The quota limit is reached.
|
4017
4434
|
self.unadjustable_detail = unadjustable_detail
|
4435
|
+
self.usage_metric = usage_metric
|
4018
4436
|
|
4019
4437
|
def validate(self):
|
4020
4438
|
if self.period:
|
@@ -4023,6 +4441,8 @@ class ListProductQuotasResponseBodyQuotas(TeaModel):
|
|
4023
4441
|
for k in self.quota_items:
|
4024
4442
|
if k:
|
4025
4443
|
k.validate()
|
4444
|
+
if self.usage_metric:
|
4445
|
+
self.usage_metric.validate()
|
4026
4446
|
|
4027
4447
|
def to_map(self):
|
4028
4448
|
_map = super().to_map()
|
@@ -4078,6 +4498,8 @@ class ListProductQuotasResponseBodyQuotas(TeaModel):
|
|
4078
4498
|
result['TotalUsage'] = self.total_usage
|
4079
4499
|
if self.unadjustable_detail is not None:
|
4080
4500
|
result['UnadjustableDetail'] = self.unadjustable_detail
|
4501
|
+
if self.usage_metric is not None:
|
4502
|
+
result['UsageMetric'] = self.usage_metric.to_map()
|
4081
4503
|
return result
|
4082
4504
|
|
4083
4505
|
def from_map(self, m: dict = None):
|
@@ -4132,6 +4554,9 @@ class ListProductQuotasResponseBodyQuotas(TeaModel):
|
|
4132
4554
|
self.total_usage = m.get('TotalUsage')
|
4133
4555
|
if m.get('UnadjustableDetail') is not None:
|
4134
4556
|
self.unadjustable_detail = m.get('UnadjustableDetail')
|
4557
|
+
if m.get('UsageMetric') is not None:
|
4558
|
+
temp_model = ListProductQuotasResponseBodyQuotasUsageMetric()
|
4559
|
+
self.usage_metric = temp_model.from_map(m['UsageMetric'])
|
4135
4560
|
return self
|
4136
4561
|
|
4137
4562
|
|
@@ -4211,9 +4636,6 @@ class ListProductQuotasResponse(TeaModel):
|
|
4211
4636
|
self.body = body
|
4212
4637
|
|
4213
4638
|
def validate(self):
|
4214
|
-
self.validate_required(self.headers, 'headers')
|
4215
|
-
self.validate_required(self.status_code, 'status_code')
|
4216
|
-
self.validate_required(self.body, 'body')
|
4217
4639
|
if self.body:
|
4218
4640
|
self.body.validate()
|
4219
4641
|
|
@@ -4459,9 +4881,6 @@ class ListProductsResponse(TeaModel):
|
|
4459
4881
|
self.body = body
|
4460
4882
|
|
4461
4883
|
def validate(self):
|
4462
|
-
self.validate_required(self.headers, 'headers')
|
4463
|
-
self.validate_required(self.status_code, 'status_code')
|
4464
|
-
self.validate_required(self.body, 'body')
|
4465
4884
|
if self.body:
|
4466
4885
|
self.body.validate()
|
4467
4886
|
|
@@ -4499,11 +4918,19 @@ class ListQuotaAlarmsRequestQuotaDimensions(TeaModel):
|
|
4499
4918
|
):
|
4500
4919
|
# The key of the dimension.
|
4501
4920
|
#
|
4502
|
-
# >
|
4921
|
+
# >
|
4922
|
+
#
|
4923
|
+
# * The value range of N varies based on the number of dimensions that are supported by the related Alibaba Cloud service.
|
4924
|
+
#
|
4925
|
+
# * This parameter is required if you set the `ProductCode` parameter to `ecs`, `ecs-spec`, `actiontrail`, or `ess`.
|
4503
4926
|
self.key = key
|
4504
4927
|
# The value of the dimension.
|
4505
4928
|
#
|
4506
|
-
# >
|
4929
|
+
# >
|
4930
|
+
#
|
4931
|
+
# * The value range of N varies based on the number of dimensions that are supported by the related Alibaba Cloud service.
|
4932
|
+
#
|
4933
|
+
# * This parameter is required if you set the `ProductCode` parameter to `ecs`, `ecs-spec`, `actiontrail`, or `ess`.
|
4507
4934
|
self.value = value
|
4508
4935
|
|
4509
4936
|
def validate(self):
|
@@ -4552,11 +4979,15 @@ class ListQuotaAlarmsRequest(TeaModel):
|
|
4552
4979
|
self.next_token = next_token
|
4553
4980
|
# The abbreviation of the Alibaba Cloud service name.
|
4554
4981
|
#
|
4555
|
-
# >
|
4982
|
+
# > To query the abbreviation of an Alibaba Cloud service name, call the [ListProducts](https://help.aliyun.com/document_detail/440554.html) operation and check the value of `ProductCode` in the response.
|
4556
4983
|
self.product_code = product_code
|
4557
|
-
# The ID
|
4984
|
+
# The quota ID.
|
4985
|
+
#
|
4986
|
+
# >
|
4987
|
+
#
|
4988
|
+
# * To obtain the quota ID of a cloud service, call the [ListProductQuotas](https://help.aliyun.com/document_detail/440554.html) operation and check the value of `QuotaActionCode` in the response.
|
4558
4989
|
#
|
4559
|
-
#
|
4990
|
+
# * If you specify this parameter, you must specify `ProductCode`.
|
4560
4991
|
self.quota_action_code = quota_action_code
|
4561
4992
|
# The quota dimensions.
|
4562
4993
|
self.quota_dimensions = quota_dimensions
|
@@ -4819,9 +5250,6 @@ class ListQuotaAlarmsResponse(TeaModel):
|
|
4819
5250
|
self.body = body
|
4820
5251
|
|
4821
5252
|
def validate(self):
|
4822
|
-
self.validate_required(self.headers, 'headers')
|
4823
|
-
self.validate_required(self.status_code, 'status_code')
|
4824
|
-
self.validate_required(self.body, 'body')
|
4825
5253
|
if self.body:
|
4826
5254
|
self.body.validate()
|
4827
5255
|
|
@@ -4859,11 +5287,19 @@ class ListQuotaApplicationTemplatesRequestDimensions(TeaModel):
|
|
4859
5287
|
):
|
4860
5288
|
# The key of the dimension.
|
4861
5289
|
#
|
4862
|
-
# >
|
5290
|
+
# >
|
5291
|
+
#
|
5292
|
+
# * The value range of N varies based on the number of dimensions that are supported by the related Alibaba Cloud service.
|
5293
|
+
#
|
5294
|
+
# * You must specify both Key and Value for each quota dimension.
|
4863
5295
|
self.key = key
|
4864
5296
|
# The value of the dimension.
|
4865
5297
|
#
|
4866
|
-
# >
|
5298
|
+
# >
|
5299
|
+
#
|
5300
|
+
# * The value range of N varies based on the number of dimensions that are supported by the related Alibaba Cloud service.
|
5301
|
+
#
|
5302
|
+
# * You must specify both Key and Value for each quota dimension.
|
4867
5303
|
self.value = value
|
4868
5304
|
|
4869
5305
|
def validate(self):
|
@@ -4913,7 +5349,7 @@ class ListQuotaApplicationTemplatesRequest(TeaModel):
|
|
4913
5349
|
self.next_token = next_token
|
4914
5350
|
# The abbreviation of the Alibaba Cloud service name.
|
4915
5351
|
#
|
4916
|
-
# >
|
5352
|
+
# > To query the abbreviation of an Alibaba Cloud service name, call the [ListProducts](https://help.aliyun.com/document_detail/440555.html) operation and check the value of `ProductCode` in the response.
|
4917
5353
|
self.product_code = product_code
|
4918
5354
|
# The ID of the quota.
|
4919
5355
|
self.quota_action_code = quota_action_code
|
@@ -5238,9 +5674,6 @@ class ListQuotaApplicationTemplatesResponse(TeaModel):
|
|
5238
5674
|
self.body = body
|
5239
5675
|
|
5240
5676
|
def validate(self):
|
5241
|
-
self.validate_required(self.headers, 'headers')
|
5242
|
-
self.validate_required(self.status_code, 'status_code')
|
5243
|
-
self.validate_required(self.body, 'body')
|
5244
5677
|
if self.body:
|
5245
5678
|
self.body.validate()
|
5246
5679
|
|
@@ -5278,11 +5711,11 @@ class ListQuotaApplicationsRequestDimensions(TeaModel):
|
|
5278
5711
|
):
|
5279
5712
|
# The key of the dimension.
|
5280
5713
|
#
|
5281
|
-
# >
|
5714
|
+
# > The value range of N varies based on the number of dimensions that are supported by the related Alibaba Cloud service.
|
5282
5715
|
self.key = key
|
5283
5716
|
# The value of the dimension.
|
5284
5717
|
#
|
5285
|
-
# >
|
5718
|
+
# > The value range of N varies based on the number of dimensions that are supported by the related Alibaba Cloud service.
|
5286
5719
|
self.value = value
|
5287
5720
|
|
5288
5721
|
def validate(self):
|
@@ -5312,7 +5745,6 @@ class ListQuotaApplicationsRequestDimensions(TeaModel):
|
|
5312
5745
|
class ListQuotaApplicationsRequest(TeaModel):
|
5313
5746
|
def __init__(
|
5314
5747
|
self,
|
5315
|
-
accept_language: str = None,
|
5316
5748
|
dimensions: List[ListQuotaApplicationsRequestDimensions] = None,
|
5317
5749
|
key_word: str = None,
|
5318
5750
|
max_results: int = None,
|
@@ -5322,7 +5754,6 @@ class ListQuotaApplicationsRequest(TeaModel):
|
|
5322
5754
|
quota_category: str = None,
|
5323
5755
|
status: str = None,
|
5324
5756
|
):
|
5325
|
-
self.accept_language = accept_language
|
5326
5757
|
# The quota dimensions.
|
5327
5758
|
self.dimensions = dimensions
|
5328
5759
|
# The keyword that you want to use to search for the application.
|
@@ -5334,8 +5765,6 @@ class ListQuotaApplicationsRequest(TeaModel):
|
|
5334
5765
|
# The token that marks the position from which you want to start the query. If you leave this parameter empty, the query starts from the beginning.
|
5335
5766
|
self.next_token = next_token
|
5336
5767
|
# The abbreviation of the Alibaba Cloud service name.
|
5337
|
-
#
|
5338
|
-
# > For more information, see [Alibaba Cloud services that support Quota Center](~~182368~~).
|
5339
5768
|
self.product_code = product_code
|
5340
5769
|
# The ID of the quota.
|
5341
5770
|
self.quota_action_code = quota_action_code
|
@@ -5365,8 +5794,6 @@ class ListQuotaApplicationsRequest(TeaModel):
|
|
5365
5794
|
return _map
|
5366
5795
|
|
5367
5796
|
result = dict()
|
5368
|
-
if self.accept_language is not None:
|
5369
|
-
result['AcceptLanguage'] = self.accept_language
|
5370
5797
|
result['Dimensions'] = []
|
5371
5798
|
if self.dimensions is not None:
|
5372
5799
|
for k in self.dimensions:
|
@@ -5389,8 +5816,6 @@ class ListQuotaApplicationsRequest(TeaModel):
|
|
5389
5816
|
|
5390
5817
|
def from_map(self, m: dict = None):
|
5391
5818
|
m = m or dict()
|
5392
|
-
if m.get('AcceptLanguage') is not None:
|
5393
|
-
self.accept_language = m.get('AcceptLanguage')
|
5394
5819
|
self.dimensions = []
|
5395
5820
|
if m.get('Dimensions') is not None:
|
5396
5821
|
for k in m.get('Dimensions'):
|
@@ -5471,6 +5896,7 @@ class ListQuotaApplicationsResponseBodyQuotaApplications(TeaModel):
|
|
5471
5896
|
product_code: str = None,
|
5472
5897
|
quota_action_code: str = None,
|
5473
5898
|
quota_arn: str = None,
|
5899
|
+
quota_category: str = None,
|
5474
5900
|
quota_description: str = None,
|
5475
5901
|
quota_name: str = None,
|
5476
5902
|
quota_unit: str = None,
|
@@ -5508,6 +5934,7 @@ class ListQuotaApplicationsResponseBodyQuotaApplications(TeaModel):
|
|
5508
5934
|
self.quota_action_code = quota_action_code
|
5509
5935
|
# The Alibaba Cloud Resource Name (ARN) of the quota.
|
5510
5936
|
self.quota_arn = quota_arn
|
5937
|
+
self.quota_category = quota_category
|
5511
5938
|
# The description of the quota.
|
5512
5939
|
self.quota_description = quota_description
|
5513
5940
|
# The name of the quota.
|
@@ -5562,6 +5989,8 @@ class ListQuotaApplicationsResponseBodyQuotaApplications(TeaModel):
|
|
5562
5989
|
result['QuotaActionCode'] = self.quota_action_code
|
5563
5990
|
if self.quota_arn is not None:
|
5564
5991
|
result['QuotaArn'] = self.quota_arn
|
5992
|
+
if self.quota_category is not None:
|
5993
|
+
result['QuotaCategory'] = self.quota_category
|
5565
5994
|
if self.quota_description is not None:
|
5566
5995
|
result['QuotaDescription'] = self.quota_description
|
5567
5996
|
if self.quota_name is not None:
|
@@ -5605,6 +6034,8 @@ class ListQuotaApplicationsResponseBodyQuotaApplications(TeaModel):
|
|
5605
6034
|
self.quota_action_code = m.get('QuotaActionCode')
|
5606
6035
|
if m.get('QuotaArn') is not None:
|
5607
6036
|
self.quota_arn = m.get('QuotaArn')
|
6037
|
+
if m.get('QuotaCategory') is not None:
|
6038
|
+
self.quota_category = m.get('QuotaCategory')
|
5608
6039
|
if m.get('QuotaDescription') is not None:
|
5609
6040
|
self.quota_description = m.get('QuotaDescription')
|
5610
6041
|
if m.get('QuotaName') is not None:
|
@@ -5694,9 +6125,6 @@ class ListQuotaApplicationsResponse(TeaModel):
|
|
5694
6125
|
self.body = body
|
5695
6126
|
|
5696
6127
|
def validate(self):
|
5697
|
-
self.validate_required(self.headers, 'headers')
|
5698
|
-
self.validate_required(self.status_code, 'status_code')
|
5699
|
-
self.validate_required(self.body, 'body')
|
5700
6128
|
if self.body:
|
5701
6129
|
self.body.validate()
|
5702
6130
|
|
@@ -5752,7 +6180,7 @@ class ListQuotaApplicationsDetailForTemplateRequest(TeaModel):
|
|
5752
6180
|
self.next_token = next_token
|
5753
6181
|
# The abbreviation of the Alibaba Cloud service name.
|
5754
6182
|
#
|
5755
|
-
# >
|
6183
|
+
# > To query the abbreviation of an Alibaba Cloud service name, call the [ListProducts](https://help.aliyun.com/document_detail/440555.html) operation and check the value of `ProductCode` in the response.
|
5756
6184
|
self.product_code = product_code
|
5757
6185
|
# The quota ID.
|
5758
6186
|
self.quota_action_code = quota_action_code
|
@@ -5762,11 +6190,11 @@ class ListQuotaApplicationsDetailForTemplateRequest(TeaModel):
|
|
5762
6190
|
# * FlowControl: API rate limit
|
5763
6191
|
# * WhiteListLabel: privilege
|
5764
6192
|
self.quota_category = quota_category
|
5765
|
-
# The approval
|
6193
|
+
# The approval state of the quota increase application. Valid values:
|
5766
6194
|
#
|
5767
6195
|
# * Disagree: The application is rejected.
|
5768
6196
|
# * Agree: The application is approved.
|
5769
|
-
# * Process: The application is
|
6197
|
+
# * Process: The application is in review.
|
5770
6198
|
# * Cancel: The application is canceled.
|
5771
6199
|
self.status = status
|
5772
6200
|
|
@@ -6121,9 +6549,6 @@ class ListQuotaApplicationsDetailForTemplateResponse(TeaModel):
|
|
6121
6549
|
self.body = body
|
6122
6550
|
|
6123
6551
|
def validate(self):
|
6124
|
-
self.validate_required(self.headers, 'headers')
|
6125
|
-
self.validate_required(self.status_code, 'status_code')
|
6126
|
-
self.validate_required(self.body, 'body')
|
6127
6552
|
if self.body:
|
6128
6553
|
self.body.validate()
|
6129
6554
|
|
@@ -6181,7 +6606,7 @@ class ListQuotaApplicationsForTemplateRequest(TeaModel):
|
|
6181
6606
|
self.next_token = next_token
|
6182
6607
|
# The abbreviation of the Alibaba Cloud service name.
|
6183
6608
|
#
|
6184
|
-
# >
|
6609
|
+
# > To query the abbreviation of an Alibaba Cloud service name, call the [ListProducts](https://help.aliyun.com/document_detail/440555.html) operation and check the value of `ProductCode` in the response.
|
6185
6610
|
self.product_code = product_code
|
6186
6611
|
# The quota ID.
|
6187
6612
|
self.quota_action_code = quota_action_code
|
@@ -6246,13 +6671,13 @@ class ListQuotaApplicationsForTemplateResponseBodyQuotaBatchApplicationsAuditSta
|
|
6246
6671
|
count: int = None,
|
6247
6672
|
status: str = None,
|
6248
6673
|
):
|
6249
|
-
# The number of approval
|
6674
|
+
# The number of approval tickets.
|
6250
6675
|
self.count = count
|
6251
|
-
# The approval
|
6676
|
+
# The approval state of the quota increase application. Valid values:
|
6252
6677
|
#
|
6253
6678
|
# * Disagree: The application is rejected.
|
6254
6679
|
# * Agree: The application is approved.
|
6255
|
-
# * Process: The application is
|
6680
|
+
# * Process: The application is in review.
|
6256
6681
|
# * Cancel: The application is canceled.
|
6257
6682
|
self.status = status
|
6258
6683
|
|
@@ -6296,7 +6721,7 @@ class ListQuotaApplicationsForTemplateResponseBodyQuotaBatchApplications(TeaMode
|
|
6296
6721
|
quota_category: str = None,
|
6297
6722
|
reason: str = None,
|
6298
6723
|
):
|
6299
|
-
# The Alibaba Cloud accounts for which the quotas are applied.
|
6724
|
+
# The Alibaba Cloud accounts that correspond to the resource directory members for which the quotas are applied.
|
6300
6725
|
self.aliyun_uids = aliyun_uids
|
6301
6726
|
# The time when the quota increase application was submitted. The value is displayed in UTC.
|
6302
6727
|
self.apply_time = apply_time
|
@@ -6308,7 +6733,7 @@ class ListQuotaApplicationsForTemplateResponseBodyQuotaBatchApplications(TeaMode
|
|
6308
6733
|
self.desire_value = desire_value
|
6309
6734
|
# The quota dimensions.
|
6310
6735
|
#
|
6311
|
-
# Format: {"regionId":"cn-hangzhou"}.
|
6736
|
+
# Format example: {"regionId":"cn-hangzhou"}.
|
6312
6737
|
self.dimensions = dimensions
|
6313
6738
|
# The start time of the validity period of the quota. The value is displayed in UTC.
|
6314
6739
|
self.effective_time = effective_time
|
@@ -6475,9 +6900,6 @@ class ListQuotaApplicationsForTemplateResponse(TeaModel):
|
|
6475
6900
|
self.body = body
|
6476
6901
|
|
6477
6902
|
def validate(self):
|
6478
|
-
self.validate_required(self.headers, 'headers')
|
6479
|
-
self.validate_required(self.status_code, 'status_code')
|
6480
|
-
self.validate_required(self.body, 'body')
|
6481
6903
|
if self.body:
|
6482
6904
|
self.body.validate()
|
6483
6905
|
|
@@ -6512,10 +6934,12 @@ class ModifyQuotaTemplateServiceStatusRequest(TeaModel):
|
|
6512
6934
|
self,
|
6513
6935
|
service_status: int = None,
|
6514
6936
|
):
|
6515
|
-
# The
|
6937
|
+
# The status of the quota template. Valid values:
|
6516
6938
|
#
|
6517
|
-
# *
|
6939
|
+
# * \\-1: The quota template is disabled.
|
6518
6940
|
# * 1: The quota template is enabled.
|
6941
|
+
#
|
6942
|
+
# This parameter is required.
|
6519
6943
|
self.service_status = service_status
|
6520
6944
|
|
6521
6945
|
def validate(self):
|
@@ -6546,9 +6970,9 @@ class ModifyQuotaTemplateServiceStatusResponseBodyTemplateServiceStatus(TeaModel
|
|
6546
6970
|
):
|
6547
6971
|
# The ID of the resource directory.
|
6548
6972
|
self.resource_directory_id = resource_directory_id
|
6549
|
-
# The
|
6973
|
+
# The status of the quota template. Valid values:
|
6550
6974
|
#
|
6551
|
-
# *
|
6975
|
+
# * \\-1: The quota template is disabled.
|
6552
6976
|
# * 1: The quota template is enabled.
|
6553
6977
|
self.service_status = service_status
|
6554
6978
|
|
@@ -6625,9 +7049,6 @@ class ModifyQuotaTemplateServiceStatusResponse(TeaModel):
|
|
6625
7049
|
self.body = body
|
6626
7050
|
|
6627
7051
|
def validate(self):
|
6628
|
-
self.validate_required(self.headers, 'headers')
|
6629
|
-
self.validate_required(self.status_code, 'status_code')
|
6630
|
-
self.validate_required(self.body, 'body')
|
6631
7052
|
if self.body:
|
6632
7053
|
self.body.validate()
|
6633
7054
|
|
@@ -6709,6 +7130,7 @@ class ModifyTemplateQuotaItemRequest(TeaModel):
|
|
6709
7130
|
self.effective_time = effective_time
|
6710
7131
|
self.env_language = env_language
|
6711
7132
|
self.expire_time = expire_time
|
7133
|
+
# This parameter is required.
|
6712
7134
|
self.id = id
|
6713
7135
|
self.notice_type = notice_type
|
6714
7136
|
self.product_code = product_code
|
@@ -6824,9 +7246,6 @@ class ModifyTemplateQuotaItemResponse(TeaModel):
|
|
6824
7246
|
self.body = body
|
6825
7247
|
|
6826
7248
|
def validate(self):
|
6827
|
-
self.validate_required(self.headers, 'headers')
|
6828
|
-
self.validate_required(self.status_code, 'status_code')
|
6829
|
-
self.validate_required(self.body, 'body')
|
6830
7249
|
if self.body:
|
6831
7250
|
self.body.validate()
|
6832
7251
|
|
@@ -6856,6 +7275,174 @@ class ModifyTemplateQuotaItemResponse(TeaModel):
|
|
6856
7275
|
return self
|
6857
7276
|
|
6858
7277
|
|
7278
|
+
class RemindQuotaApplicationApprovalRequest(TeaModel):
|
7279
|
+
def __init__(
|
7280
|
+
self,
|
7281
|
+
application_id: str = None,
|
7282
|
+
):
|
7283
|
+
# The quota application ID.
|
7284
|
+
#
|
7285
|
+
# For more information about how to obtain the ID of a quota application, see [ListQuotaApplications](https://help.aliyun.com/document_detail/440568.html).
|
7286
|
+
self.application_id = application_id
|
7287
|
+
|
7288
|
+
def validate(self):
|
7289
|
+
pass
|
7290
|
+
|
7291
|
+
def to_map(self):
|
7292
|
+
_map = super().to_map()
|
7293
|
+
if _map is not None:
|
7294
|
+
return _map
|
7295
|
+
|
7296
|
+
result = dict()
|
7297
|
+
if self.application_id is not None:
|
7298
|
+
result['ApplicationId'] = self.application_id
|
7299
|
+
return result
|
7300
|
+
|
7301
|
+
def from_map(self, m: dict = None):
|
7302
|
+
m = m or dict()
|
7303
|
+
if m.get('ApplicationId') is not None:
|
7304
|
+
self.application_id = m.get('ApplicationId')
|
7305
|
+
return self
|
7306
|
+
|
7307
|
+
|
7308
|
+
class RemindQuotaApplicationApprovalResponseBody(TeaModel):
|
7309
|
+
def __init__(
|
7310
|
+
self,
|
7311
|
+
allow_retry: bool = None,
|
7312
|
+
dynamic_code: str = None,
|
7313
|
+
dynamic_message: str = None,
|
7314
|
+
error_args: List[Any] = None,
|
7315
|
+
error_code: str = None,
|
7316
|
+
error_msg: str = None,
|
7317
|
+
http_status_code: int = None,
|
7318
|
+
module: str = None,
|
7319
|
+
request_id: str = None,
|
7320
|
+
success: bool = None,
|
7321
|
+
):
|
7322
|
+
# Indicates whether retries are allowed. Valid values:
|
7323
|
+
#
|
7324
|
+
# * false
|
7325
|
+
# * true
|
7326
|
+
self.allow_retry = allow_retry
|
7327
|
+
# The dynamic error code.
|
7328
|
+
self.dynamic_code = dynamic_code
|
7329
|
+
# The dynamic error message.
|
7330
|
+
self.dynamic_message = dynamic_message
|
7331
|
+
# The parameters whose values are invalid.
|
7332
|
+
self.error_args = error_args
|
7333
|
+
# The error code.
|
7334
|
+
self.error_code = error_code
|
7335
|
+
# The error message.
|
7336
|
+
self.error_msg = error_msg
|
7337
|
+
# The HTTP status code.
|
7338
|
+
self.http_status_code = http_status_code
|
7339
|
+
# The quota application ID.
|
7340
|
+
self.module = module
|
7341
|
+
# The request ID.
|
7342
|
+
self.request_id = request_id
|
7343
|
+
# Indicates whether the request was successful. Valid values:
|
7344
|
+
#
|
7345
|
+
# * true
|
7346
|
+
# * false
|
7347
|
+
self.success = success
|
7348
|
+
|
7349
|
+
def validate(self):
|
7350
|
+
pass
|
7351
|
+
|
7352
|
+
def to_map(self):
|
7353
|
+
_map = super().to_map()
|
7354
|
+
if _map is not None:
|
7355
|
+
return _map
|
7356
|
+
|
7357
|
+
result = dict()
|
7358
|
+
if self.allow_retry is not None:
|
7359
|
+
result['AllowRetry'] = self.allow_retry
|
7360
|
+
if self.dynamic_code is not None:
|
7361
|
+
result['DynamicCode'] = self.dynamic_code
|
7362
|
+
if self.dynamic_message is not None:
|
7363
|
+
result['DynamicMessage'] = self.dynamic_message
|
7364
|
+
if self.error_args is not None:
|
7365
|
+
result['ErrorArgs'] = self.error_args
|
7366
|
+
if self.error_code is not None:
|
7367
|
+
result['ErrorCode'] = self.error_code
|
7368
|
+
if self.error_msg is not None:
|
7369
|
+
result['ErrorMsg'] = self.error_msg
|
7370
|
+
if self.http_status_code is not None:
|
7371
|
+
result['HttpStatusCode'] = self.http_status_code
|
7372
|
+
if self.module is not None:
|
7373
|
+
result['Module'] = self.module
|
7374
|
+
if self.request_id is not None:
|
7375
|
+
result['RequestId'] = self.request_id
|
7376
|
+
if self.success is not None:
|
7377
|
+
result['Success'] = self.success
|
7378
|
+
return result
|
7379
|
+
|
7380
|
+
def from_map(self, m: dict = None):
|
7381
|
+
m = m or dict()
|
7382
|
+
if m.get('AllowRetry') is not None:
|
7383
|
+
self.allow_retry = m.get('AllowRetry')
|
7384
|
+
if m.get('DynamicCode') is not None:
|
7385
|
+
self.dynamic_code = m.get('DynamicCode')
|
7386
|
+
if m.get('DynamicMessage') is not None:
|
7387
|
+
self.dynamic_message = m.get('DynamicMessage')
|
7388
|
+
if m.get('ErrorArgs') is not None:
|
7389
|
+
self.error_args = m.get('ErrorArgs')
|
7390
|
+
if m.get('ErrorCode') is not None:
|
7391
|
+
self.error_code = m.get('ErrorCode')
|
7392
|
+
if m.get('ErrorMsg') is not None:
|
7393
|
+
self.error_msg = m.get('ErrorMsg')
|
7394
|
+
if m.get('HttpStatusCode') is not None:
|
7395
|
+
self.http_status_code = m.get('HttpStatusCode')
|
7396
|
+
if m.get('Module') is not None:
|
7397
|
+
self.module = m.get('Module')
|
7398
|
+
if m.get('RequestId') is not None:
|
7399
|
+
self.request_id = m.get('RequestId')
|
7400
|
+
if m.get('Success') is not None:
|
7401
|
+
self.success = m.get('Success')
|
7402
|
+
return self
|
7403
|
+
|
7404
|
+
|
7405
|
+
class RemindQuotaApplicationApprovalResponse(TeaModel):
|
7406
|
+
def __init__(
|
7407
|
+
self,
|
7408
|
+
headers: Dict[str, str] = None,
|
7409
|
+
status_code: int = None,
|
7410
|
+
body: RemindQuotaApplicationApprovalResponseBody = None,
|
7411
|
+
):
|
7412
|
+
self.headers = headers
|
7413
|
+
self.status_code = status_code
|
7414
|
+
self.body = body
|
7415
|
+
|
7416
|
+
def validate(self):
|
7417
|
+
if self.body:
|
7418
|
+
self.body.validate()
|
7419
|
+
|
7420
|
+
def to_map(self):
|
7421
|
+
_map = super().to_map()
|
7422
|
+
if _map is not None:
|
7423
|
+
return _map
|
7424
|
+
|
7425
|
+
result = dict()
|
7426
|
+
if self.headers is not None:
|
7427
|
+
result['headers'] = self.headers
|
7428
|
+
if self.status_code is not None:
|
7429
|
+
result['statusCode'] = self.status_code
|
7430
|
+
if self.body is not None:
|
7431
|
+
result['body'] = self.body.to_map()
|
7432
|
+
return result
|
7433
|
+
|
7434
|
+
def from_map(self, m: dict = None):
|
7435
|
+
m = m or dict()
|
7436
|
+
if m.get('headers') is not None:
|
7437
|
+
self.headers = m.get('headers')
|
7438
|
+
if m.get('statusCode') is not None:
|
7439
|
+
self.status_code = m.get('statusCode')
|
7440
|
+
if m.get('body') is not None:
|
7441
|
+
temp_model = RemindQuotaApplicationApprovalResponseBody()
|
7442
|
+
self.body = temp_model.from_map(m['body'])
|
7443
|
+
return self
|
7444
|
+
|
7445
|
+
|
6859
7446
|
class UpdateQuotaAlarmRequest(TeaModel):
|
6860
7447
|
def __init__(
|
6861
7448
|
self,
|
@@ -6867,8 +7454,16 @@ class UpdateQuotaAlarmRequest(TeaModel):
|
|
6867
7454
|
web_hook: str = None,
|
6868
7455
|
):
|
6869
7456
|
# The ID of the quota alert.
|
7457
|
+
#
|
7458
|
+
# > You can call the [ListQuotaAlarms](https://help.aliyun.com/document_detail/440561.html) operation to obtain the ID of a quota alert.
|
7459
|
+
#
|
7460
|
+
# This parameter is required.
|
6870
7461
|
self.alarm_id = alarm_id
|
6871
7462
|
# The name of the quota alert.
|
7463
|
+
#
|
7464
|
+
# > You can call the [ListQuotaAlarms](https://help.aliyun.com/document_detail/440561.html) operation to obtain the name of a quota alert.
|
7465
|
+
#
|
7466
|
+
# This parameter is required.
|
6872
7467
|
self.alarm_name = alarm_name
|
6873
7468
|
# The numeric value of the alert threshold. Valid values:
|
6874
7469
|
#
|
@@ -6879,14 +7474,14 @@ class UpdateQuotaAlarmRequest(TeaModel):
|
|
6879
7474
|
self.threshold = threshold
|
6880
7475
|
# The percentage of the alert threshold. Valid values:
|
6881
7476
|
#
|
6882
|
-
# * If you set
|
6883
|
-
# * If you set
|
7477
|
+
# * If you set `ThresholdType` to `used`, you receive an alert notification when the used quota is greater than or equal to the preset percentage of the alert threshold. Value range: (50%, 100%].
|
7478
|
+
# * If you set `ThresholdType` to `usable`, you receive an alert notification when the available quota is less than or equal to the preset percentage of the alert threshold. Value range: (0%, 50%].
|
6884
7479
|
#
|
6885
|
-
# >
|
7480
|
+
# > You must set one of Threshold and ThresholdPercent.
|
6886
7481
|
self.threshold_percent = threshold_percent
|
6887
7482
|
# The type of the quota alert. Valid values:
|
6888
7483
|
#
|
6889
|
-
# * used: The alert is created for the used quota.
|
7484
|
+
# * used (default): The alert is created for the used quota.
|
6890
7485
|
# * usable: The alert is created for the available quota.
|
6891
7486
|
self.threshold_type = threshold_type
|
6892
7487
|
# The webhook URL. Quota Center sends alert notifications to the specified URL by using HTTP POST requests.
|
@@ -6972,9 +7567,6 @@ class UpdateQuotaAlarmResponse(TeaModel):
|
|
6972
7567
|
self.body = body
|
6973
7568
|
|
6974
7569
|
def validate(self):
|
6975
|
-
self.validate_required(self.headers, 'headers')
|
6976
|
-
self.validate_required(self.status_code, 'status_code')
|
6977
|
-
self.validate_required(self.body, 'body')
|
6978
7570
|
if self.body:
|
6979
7571
|
self.body.validate()
|
6980
7572
|
|