zenlayercloud-sdk-python 2.0.40__tar.gz → 2.0.41__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.
Files changed (93) hide show
  1. {zenlayercloud_sdk_python-2.0.40 → zenlayercloud_sdk_python-2.0.41}/PKG-INFO +1 -1
  2. {zenlayercloud_sdk_python-2.0.40 → zenlayercloud_sdk_python-2.0.41}/zenlayercloud/__init__.py +1 -1
  3. {zenlayercloud_sdk_python-2.0.40 → zenlayercloud_sdk_python-2.0.41}/zenlayercloud/bmc/v20221120/models.py +10 -0
  4. {zenlayercloud_sdk_python-2.0.40 → zenlayercloud_sdk_python-2.0.41}/zenlayercloud/traffic/v20240326/models.py +247 -179
  5. {zenlayercloud_sdk_python-2.0.40 → zenlayercloud_sdk_python-2.0.41}/zenlayercloud/traffic/v20240326/traffic_client.py +63 -24
  6. {zenlayercloud_sdk_python-2.0.40 → zenlayercloud_sdk_python-2.0.41}/zenlayercloud/zec/v20250901/models.py +153 -0
  7. {zenlayercloud_sdk_python-2.0.40 → zenlayercloud_sdk_python-2.0.41}/zenlayercloud/zec/v20250901/zec_client.py +24 -0
  8. {zenlayercloud_sdk_python-2.0.40 → zenlayercloud_sdk_python-2.0.41}/zenlayercloud/zlb/v20250401/models.py +6 -0
  9. {zenlayercloud_sdk_python-2.0.40 → zenlayercloud_sdk_python-2.0.41}/zenlayercloud_sdk_python.egg-info/PKG-INFO +1 -1
  10. {zenlayercloud_sdk_python-2.0.40 → zenlayercloud_sdk_python-2.0.41}/LICENSE +0 -0
  11. {zenlayercloud_sdk_python-2.0.40 → zenlayercloud_sdk_python-2.0.41}/README.rst +0 -0
  12. {zenlayercloud_sdk_python-2.0.40 → zenlayercloud_sdk_python-2.0.41}/setup.cfg +0 -0
  13. {zenlayercloud_sdk_python-2.0.40 → zenlayercloud_sdk_python-2.0.41}/setup.py +0 -0
  14. {zenlayercloud_sdk_python-2.0.40 → zenlayercloud_sdk_python-2.0.41}/zenlayercloud/alarm/__init__.py +0 -0
  15. {zenlayercloud_sdk_python-2.0.40 → zenlayercloud_sdk_python-2.0.41}/zenlayercloud/alarm/v20250307/__init__.py +0 -0
  16. {zenlayercloud_sdk_python-2.0.40 → zenlayercloud_sdk_python-2.0.41}/zenlayercloud/alarm/v20250307/alarm_client.py +0 -0
  17. {zenlayercloud_sdk_python-2.0.40 → zenlayercloud_sdk_python-2.0.41}/zenlayercloud/alarm/v20250307/models.py +0 -0
  18. {zenlayercloud_sdk_python-2.0.40 → zenlayercloud_sdk_python-2.0.41}/zenlayercloud/bmc/__init__.py +0 -0
  19. {zenlayercloud_sdk_python-2.0.40 → zenlayercloud_sdk_python-2.0.41}/zenlayercloud/bmc/v20221120/__init__.py +0 -0
  20. {zenlayercloud_sdk_python-2.0.40 → zenlayercloud_sdk_python-2.0.41}/zenlayercloud/bmc/v20221120/bmc_client.py +0 -0
  21. {zenlayercloud_sdk_python-2.0.40 → zenlayercloud_sdk_python-2.0.41}/zenlayercloud/ccs/__init__.py +0 -0
  22. {zenlayercloud_sdk_python-2.0.40 → zenlayercloud_sdk_python-2.0.41}/zenlayercloud/ccs/v20250901/__init__.py +0 -0
  23. {zenlayercloud_sdk_python-2.0.40 → zenlayercloud_sdk_python-2.0.41}/zenlayercloud/ccs/v20250901/ccs_client.py +0 -0
  24. {zenlayercloud_sdk_python-2.0.40 → zenlayercloud_sdk_python-2.0.41}/zenlayercloud/ccs/v20250901/models.py +0 -0
  25. {zenlayercloud_sdk_python-2.0.40 → zenlayercloud_sdk_python-2.0.41}/zenlayercloud/common/__init__.py +0 -0
  26. {zenlayercloud_sdk_python-2.0.40 → zenlayercloud_sdk_python-2.0.41}/zenlayercloud/common/abstract_client.py +0 -0
  27. {zenlayercloud_sdk_python-2.0.40 → zenlayercloud_sdk_python-2.0.41}/zenlayercloud/common/abstract_model.py +0 -0
  28. {zenlayercloud_sdk_python-2.0.40 → zenlayercloud_sdk_python-2.0.41}/zenlayercloud/common/config.py +0 -0
  29. {zenlayercloud_sdk_python-2.0.40 → zenlayercloud_sdk_python-2.0.41}/zenlayercloud/common/credential.py +0 -0
  30. {zenlayercloud_sdk_python-2.0.40 → zenlayercloud_sdk_python-2.0.41}/zenlayercloud/common/excpetion/__init__.py +0 -0
  31. {zenlayercloud_sdk_python-2.0.40 → zenlayercloud_sdk_python-2.0.41}/zenlayercloud/common/excpetion/error_code.py +0 -0
  32. {zenlayercloud_sdk_python-2.0.40 → zenlayercloud_sdk_python-2.0.41}/zenlayercloud/common/excpetion/zenlayer_cloud_sdk_exception.py +0 -0
  33. {zenlayercloud_sdk_python-2.0.40 → zenlayercloud_sdk_python-2.0.41}/zenlayercloud/common/request.py +0 -0
  34. {zenlayercloud_sdk_python-2.0.40 → zenlayercloud_sdk_python-2.0.41}/zenlayercloud/common/response.py +0 -0
  35. {zenlayercloud_sdk_python-2.0.40 → zenlayercloud_sdk_python-2.0.41}/zenlayercloud/common/utils.py +0 -0
  36. {zenlayercloud_sdk_python-2.0.40 → zenlayercloud_sdk_python-2.0.41}/zenlayercloud/maintenance/__init__.py +0 -0
  37. {zenlayercloud_sdk_python-2.0.40 → zenlayercloud_sdk_python-2.0.41}/zenlayercloud/maintenance/v20250310/__init__.py +0 -0
  38. {zenlayercloud_sdk_python-2.0.40 → zenlayercloud_sdk_python-2.0.41}/zenlayercloud/maintenance/v20250310/maintenance_client.py +0 -0
  39. {zenlayercloud_sdk_python-2.0.40 → zenlayercloud_sdk_python-2.0.41}/zenlayercloud/maintenance/v20250310/models.py +0 -0
  40. {zenlayercloud_sdk_python-2.0.40 → zenlayercloud_sdk_python-2.0.41}/zenlayercloud/pvtdns/__init__.py +0 -0
  41. {zenlayercloud_sdk_python-2.0.40 → zenlayercloud_sdk_python-2.0.41}/zenlayercloud/pvtdns/v20251101/__init__.py +0 -0
  42. {zenlayercloud_sdk_python-2.0.40 → zenlayercloud_sdk_python-2.0.41}/zenlayercloud/pvtdns/v20251101/models.py +0 -0
  43. {zenlayercloud_sdk_python-2.0.40 → zenlayercloud_sdk_python-2.0.41}/zenlayercloud/pvtdns/v20251101/pvtdns_client.py +0 -0
  44. {zenlayercloud_sdk_python-2.0.40 → zenlayercloud_sdk_python-2.0.41}/zenlayercloud/sdn/__init__.py +0 -0
  45. {zenlayercloud_sdk_python-2.0.40 → zenlayercloud_sdk_python-2.0.41}/zenlayercloud/sdn/v20230830/__init__.py +0 -0
  46. {zenlayercloud_sdk_python-2.0.40 → zenlayercloud_sdk_python-2.0.41}/zenlayercloud/sdn/v20230830/models.py +0 -0
  47. {zenlayercloud_sdk_python-2.0.40 → zenlayercloud_sdk_python-2.0.41}/zenlayercloud/sdn/v20230830/sdn_client.py +0 -0
  48. {zenlayercloud_sdk_python-2.0.40 → zenlayercloud_sdk_python-2.0.41}/zenlayercloud/traffic/__init__.py +0 -0
  49. {zenlayercloud_sdk_python-2.0.40 → zenlayercloud_sdk_python-2.0.41}/zenlayercloud/traffic/v20240326/__init__.py +0 -0
  50. {zenlayercloud_sdk_python-2.0.40 → zenlayercloud_sdk_python-2.0.41}/zenlayercloud/user/__init__.py +0 -0
  51. {zenlayercloud_sdk_python-2.0.40 → zenlayercloud_sdk_python-2.0.41}/zenlayercloud/user/v20240529/__init__.py +0 -0
  52. {zenlayercloud_sdk_python-2.0.40 → zenlayercloud_sdk_python-2.0.41}/zenlayercloud/user/v20240529/models.py +0 -0
  53. {zenlayercloud_sdk_python-2.0.40 → zenlayercloud_sdk_python-2.0.41}/zenlayercloud/user/v20240529/user_client.py +0 -0
  54. {zenlayercloud_sdk_python-2.0.40 → zenlayercloud_sdk_python-2.0.41}/zenlayercloud/vm/__init__.py +0 -0
  55. {zenlayercloud_sdk_python-2.0.40 → zenlayercloud_sdk_python-2.0.41}/zenlayercloud/vm/v20230313/__init__.py +0 -0
  56. {zenlayercloud_sdk_python-2.0.40 → zenlayercloud_sdk_python-2.0.41}/zenlayercloud/vm/v20230313/models.py +0 -0
  57. {zenlayercloud_sdk_python-2.0.40 → zenlayercloud_sdk_python-2.0.41}/zenlayercloud/vm/v20230313/vm_client.py +0 -0
  58. {zenlayercloud_sdk_python-2.0.40 → zenlayercloud_sdk_python-2.0.41}/zenlayercloud/zbc/__init__.py +0 -0
  59. {zenlayercloud_sdk_python-2.0.40 → zenlayercloud_sdk_python-2.0.41}/zenlayercloud/zbc/v20240809/__init__.py +0 -0
  60. {zenlayercloud_sdk_python-2.0.40 → zenlayercloud_sdk_python-2.0.41}/zenlayercloud/zbc/v20240809/models.py +0 -0
  61. {zenlayercloud_sdk_python-2.0.40 → zenlayercloud_sdk_python-2.0.41}/zenlayercloud/zbc/v20240809/zbc_client.py +0 -0
  62. {zenlayercloud_sdk_python-2.0.40 → zenlayercloud_sdk_python-2.0.41}/zenlayercloud/zdns/__init__.py +0 -0
  63. {zenlayercloud_sdk_python-2.0.40 → zenlayercloud_sdk_python-2.0.41}/zenlayercloud/zdns/v20251101/__init__.py +0 -0
  64. {zenlayercloud_sdk_python-2.0.40 → zenlayercloud_sdk_python-2.0.41}/zenlayercloud/zdns/v20251101/models.py +0 -0
  65. {zenlayercloud_sdk_python-2.0.40 → zenlayercloud_sdk_python-2.0.41}/zenlayercloud/zdns/v20251101/zdns_client.py +0 -0
  66. {zenlayercloud_sdk_python-2.0.40 → zenlayercloud_sdk_python-2.0.41}/zenlayercloud/zec/__init__.py +0 -0
  67. {zenlayercloud_sdk_python-2.0.40 → zenlayercloud_sdk_python-2.0.41}/zenlayercloud/zec/v20240401/__init__.py +0 -0
  68. {zenlayercloud_sdk_python-2.0.40 → zenlayercloud_sdk_python-2.0.41}/zenlayercloud/zec/v20240401/models.py +0 -0
  69. {zenlayercloud_sdk_python-2.0.40 → zenlayercloud_sdk_python-2.0.41}/zenlayercloud/zec/v20240401/zec_client.py +0 -0
  70. {zenlayercloud_sdk_python-2.0.40 → zenlayercloud_sdk_python-2.0.41}/zenlayercloud/zec/v20250901/__init__.py +0 -0
  71. {zenlayercloud_sdk_python-2.0.40 → zenlayercloud_sdk_python-2.0.41}/zenlayercloud/zga/__init__.py +0 -0
  72. {zenlayercloud_sdk_python-2.0.40 → zenlayercloud_sdk_python-2.0.41}/zenlayercloud/zga/v20241104/__init__.py +0 -0
  73. {zenlayercloud_sdk_python-2.0.40 → zenlayercloud_sdk_python-2.0.41}/zenlayercloud/zga/v20241104/models.py +0 -0
  74. {zenlayercloud_sdk_python-2.0.40 → zenlayercloud_sdk_python-2.0.41}/zenlayercloud/zga/v20241104/zga_client.py +0 -0
  75. {zenlayercloud_sdk_python-2.0.40 → zenlayercloud_sdk_python-2.0.41}/zenlayercloud/zlb/__init__.py +0 -0
  76. {zenlayercloud_sdk_python-2.0.40 → zenlayercloud_sdk_python-2.0.41}/zenlayercloud/zlb/v20250401/__init__.py +0 -0
  77. {zenlayercloud_sdk_python-2.0.40 → zenlayercloud_sdk_python-2.0.41}/zenlayercloud/zlb/v20250401/zlb_client.py +0 -0
  78. {zenlayercloud_sdk_python-2.0.40 → zenlayercloud_sdk_python-2.0.41}/zenlayercloud/zls/__init__.py +0 -0
  79. {zenlayercloud_sdk_python-2.0.40 → zenlayercloud_sdk_python-2.0.41}/zenlayercloud/zls/v20230804/__init__.py +0 -0
  80. {zenlayercloud_sdk_python-2.0.40 → zenlayercloud_sdk_python-2.0.41}/zenlayercloud/zls/v20230804/models.py +0 -0
  81. {zenlayercloud_sdk_python-2.0.40 → zenlayercloud_sdk_python-2.0.41}/zenlayercloud/zls/v20230804/zls_client.py +0 -0
  82. {zenlayercloud_sdk_python-2.0.40 → zenlayercloud_sdk_python-2.0.41}/zenlayercloud/zos/__init__.py +0 -0
  83. {zenlayercloud_sdk_python-2.0.40 → zenlayercloud_sdk_python-2.0.41}/zenlayercloud/zos/v20251010/__init__.py +0 -0
  84. {zenlayercloud_sdk_python-2.0.40 → zenlayercloud_sdk_python-2.0.41}/zenlayercloud/zos/v20251010/models.py +0 -0
  85. {zenlayercloud_sdk_python-2.0.40 → zenlayercloud_sdk_python-2.0.41}/zenlayercloud/zos/v20251010/zos_client.py +0 -0
  86. {zenlayercloud_sdk_python-2.0.40 → zenlayercloud_sdk_python-2.0.41}/zenlayercloud/zrm/__init__.py +0 -0
  87. {zenlayercloud_sdk_python-2.0.40 → zenlayercloud_sdk_python-2.0.41}/zenlayercloud/zrm/v20251014/__init__.py +0 -0
  88. {zenlayercloud_sdk_python-2.0.40 → zenlayercloud_sdk_python-2.0.41}/zenlayercloud/zrm/v20251014/models.py +0 -0
  89. {zenlayercloud_sdk_python-2.0.40 → zenlayercloud_sdk_python-2.0.41}/zenlayercloud/zrm/v20251014/zrm_client.py +0 -0
  90. {zenlayercloud_sdk_python-2.0.40 → zenlayercloud_sdk_python-2.0.41}/zenlayercloud_sdk_python.egg-info/SOURCES.txt +0 -0
  91. {zenlayercloud_sdk_python-2.0.40 → zenlayercloud_sdk_python-2.0.41}/zenlayercloud_sdk_python.egg-info/dependency_links.txt +0 -0
  92. {zenlayercloud_sdk_python-2.0.40 → zenlayercloud_sdk_python-2.0.41}/zenlayercloud_sdk_python.egg-info/requires.txt +0 -0
  93. {zenlayercloud_sdk_python-2.0.40 → zenlayercloud_sdk_python-2.0.41}/zenlayercloud_sdk_python.egg-info/top_level.txt +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: zenlayercloud-sdk-python
3
- Version: 2.0.40
3
+ Version: 2.0.41
4
4
  Summary: Zenlayer Cloud SDK for Python
5
5
  Home-page: https://github.com/zenlayer/zenlayercloud-sdk-python
6
6
  Author: Zenlayer Cloud
@@ -1,5 +1,5 @@
1
1
  # Zenlayer.com Inc.
2
2
  # Copyright (c) 2014-2023 All Rights Reserved.
3
3
 
4
- __version__ = "2.0.040"
4
+ __version__ = "2.0.041"
5
5
 
@@ -1340,6 +1340,7 @@ class EipAddress(AbstractModel):
1340
1340
  self.eipId = None
1341
1341
  self.zoneId = None
1342
1342
  self.ipAddress = None
1343
+ self.netmask = None
1343
1344
  self.instanceId = None
1344
1345
  self.instanceName = None
1345
1346
  self.eipChargeType = None
@@ -1355,6 +1356,7 @@ class EipAddress(AbstractModel):
1355
1356
  self.eipId = params.get("eipId")
1356
1357
  self.zoneId = params.get("zoneId")
1357
1358
  self.ipAddress = params.get("ipAddress")
1359
+ self.netmask = params.get("netmask")
1358
1360
  self.instanceId = params.get("instanceId")
1359
1361
  self.instanceName = params.get("instanceName")
1360
1362
  self.eipChargeType = params.get("eipChargeType")
@@ -1403,10 +1405,12 @@ class EipAvailable(AbstractModel):
1403
1405
  return
1404
1406
  self.zoneId = None
1405
1407
  self.status = None
1408
+ self.netmask = None
1406
1409
 
1407
1410
  def _deserialize(self, params):
1408
1411
  self.zoneId = params.get("zoneId")
1409
1412
  self.status = params.get("status")
1413
+ self.netmask = params.get("netmask")
1410
1414
 
1411
1415
 
1412
1416
  class AllocateEipAddressesRequest(AbstractModel):
@@ -1416,6 +1420,7 @@ class AllocateEipAddressesRequest(AbstractModel):
1416
1420
  self.eipChargeType = None
1417
1421
  self.eipChargePrepaid = None
1418
1422
  self.amount = None
1423
+ self.netmask = None
1419
1424
  self.resourceGroupId = None
1420
1425
  self.marketingOptions = None
1421
1426
  self.tags = None
@@ -1426,6 +1431,7 @@ class AllocateEipAddressesRequest(AbstractModel):
1426
1431
  if params.get("eipChargePrepaid") is not None:
1427
1432
  self.eipChargePrepaid = ChargePrepaid(params.get("eipChargePrepaid"))
1428
1433
  self.amount = params.get("amount")
1434
+ self.netmask = params.get("netmask")
1429
1435
  self.resourceGroupId = params.get("resourceGroupId")
1430
1436
  if params.get("marketingOptions") is not None:
1431
1437
  self.marketingOptions = MarketingInfo(params.get("marketingOptions"))
@@ -1577,6 +1583,7 @@ class InquiryPriceCreateEipAddressRequest(AbstractModel):
1577
1583
  self.eipChargeType = None
1578
1584
  self.eipChargePrepaid = None
1579
1585
  self.amount = None
1586
+ self.netmask = None
1580
1587
 
1581
1588
  def _deserialize(self, params):
1582
1589
  self.zoneId = params.get("zoneId")
@@ -1584,6 +1591,7 @@ class InquiryPriceCreateEipAddressRequest(AbstractModel):
1584
1591
  if params.get("eipChargePrepaid") is not None:
1585
1592
  self.eipChargePrepaid = ChargePrepaid(params.get("eipChargePrepaid"))
1586
1593
  self.amount = params.get("amount")
1594
+ self.netmask = params.get("netmask")
1587
1595
 
1588
1596
 
1589
1597
  class InquiryPriceCreateEipAddressResponse(AbstractModel):
@@ -1632,10 +1640,12 @@ class InstanceAvailableEip(AbstractModel):
1632
1640
  return
1633
1641
  self.eipId = None
1634
1642
  self.ipAddress = None
1643
+ self.netmask = None
1635
1644
 
1636
1645
  def _deserialize(self, params):
1637
1646
  self.eipId = params.get("eipId")
1638
1647
  self.ipAddress = params.get("ipAddress")
1648
+ self.netmask = params.get("netmask")
1639
1649
 
1640
1650
 
1641
1651
  class ModifyEipAddressesResourceGroupRequest(AbstractModel):
@@ -3,6 +3,132 @@
3
3
  from zenlayercloud.common.abstract_model import AbstractModel
4
4
  import warnings
5
5
 
6
+ class DescribeBandwidthClusterAreasRequest(AbstractModel):
7
+ def __init__(self):
8
+ pass
9
+
10
+ def _deserialize(self, params):
11
+ pass
12
+
13
+
14
+ class DescribeBandwidthClusterAreasResponse(AbstractModel):
15
+ def __init__(self):
16
+ self.requestId = None
17
+ self.areas = None
18
+
19
+ def _deserialize(self, params):
20
+ self.requestId = params.get("requestId")
21
+ if params.get("areas") is not None:
22
+ self.areas = []
23
+ for item in params.get("areas"):
24
+ obj = BandwidthClusterAreaInfo(item)
25
+ self.areas.append(obj)
26
+
27
+
28
+ class BandwidthClusterAreaInfo(AbstractModel):
29
+ def __init__(self, params=None):
30
+ if params is None:
31
+ params = {}
32
+ if len(params) > 0:
33
+ self._deserialize(params)
34
+ return
35
+ self.areaCode = None
36
+ self.areaName = None
37
+ self.networkTypes = None
38
+ self.products = None
39
+
40
+ def _deserialize(self, params):
41
+ self.areaCode = params.get("areaCode")
42
+ self.areaName = params.get("areaName")
43
+ self.networkTypes = params.get("networkTypes")
44
+ self.products = params.get("products")
45
+
46
+
47
+ class InquiryBandwidthClusterPriceRequest(AbstractModel):
48
+ def __init__(self):
49
+ self.areaCode = None
50
+ self.commitBandwidthMbps = None
51
+ self.networkType = None
52
+ self.internetChargeType = None
53
+ self.product = None
54
+
55
+ def _deserialize(self, params):
56
+ self.areaCode = params.get("areaCode")
57
+ self.commitBandwidthMbps = params.get("commitBandwidthMbps")
58
+ self.networkType = params.get("networkType")
59
+ self.internetChargeType = params.get("internetChargeType")
60
+ self.product = params.get("product")
61
+
62
+
63
+ class InquiryBandwidthClusterPriceResponse(AbstractModel):
64
+ def __init__(self):
65
+ self.requestId = None
66
+ self.price = None
67
+
68
+ def _deserialize(self, params):
69
+ self.requestId = params.get("requestId")
70
+ if params.get("price") is not None:
71
+ self.price = PriceItem(params.get("price"))
72
+
73
+
74
+ class PriceItem(AbstractModel):
75
+ def __init__(self, params=None):
76
+ if params is None:
77
+ params = {}
78
+ if len(params) > 0:
79
+ self._deserialize(params)
80
+ return
81
+ self.discount = None
82
+ self.discountPrice = None
83
+ self.originalPrice = None
84
+ self.unitPrice = None
85
+ self.discountUnitPrice = None
86
+ self.chargeUnit = None
87
+ self.stepPrices = None
88
+ self.amountUnit = None
89
+ self.excessUnitPrice = None
90
+ self.excessDiscountUnitPrice = None
91
+ self.excessAmountUnit = None
92
+ self.category = None
93
+
94
+ def _deserialize(self, params):
95
+ self.discount = params.get("discount")
96
+ self.discountPrice = params.get("discountPrice")
97
+ self.originalPrice = params.get("originalPrice")
98
+ self.unitPrice = params.get("unitPrice")
99
+ self.discountUnitPrice = params.get("discountUnitPrice")
100
+ self.chargeUnit = params.get("chargeUnit")
101
+ if params.get("stepPrices") is not None:
102
+ self.stepPrices = []
103
+ for item in params.get("stepPrices"):
104
+ obj = StepPrice(item)
105
+ self.stepPrices.append(obj)
106
+ self.amountUnit = params.get("amountUnit")
107
+ self.excessUnitPrice = params.get("excessUnitPrice")
108
+ self.excessDiscountUnitPrice = params.get("excessDiscountUnitPrice")
109
+ self.excessAmountUnit = params.get("excessAmountUnit")
110
+ self.category = params.get("category")
111
+
112
+
113
+ class StepPrice(AbstractModel):
114
+ def __init__(self, params=None):
115
+ if params is None:
116
+ params = {}
117
+ if len(params) > 0:
118
+ self._deserialize(params)
119
+ return
120
+ self.stepStart = None
121
+ self.stepEnd = None
122
+ self.unitPrice = None
123
+ self.discountUnitPrice = None
124
+
125
+ def _deserialize(self, params):
126
+ self.stepStart = params.get("stepStart")
127
+ self.stepEnd = params.get("stepEnd")
128
+ self.unitPrice = params.get("unitPrice")
129
+ self.discountUnitPrice = params.get("discountUnitPrice")
130
+
131
+
6
132
  class DescribeBandwidthClustersRequest(AbstractModel):
7
133
  def __init__(self):
8
134
  self.bandwidthClusterIds = None
@@ -95,84 +221,42 @@ class CityInfo(AbstractModel):
95
221
  self.cityCode = params.get("cityCode")
96
222
 
97
223
 
98
- class DescribeBandwidthClusterResourcesRequest(AbstractModel):
99
- def __init__(self):
100
- self.bandwidthClusterId = None
101
-
102
- def _deserialize(self, params):
103
- self.bandwidthClusterId = params.get("bandwidthClusterId")
104
-
105
-
106
- class DescribeBandwidthClusterResourcesResponse(AbstractModel):
107
- def __init__(self):
108
- self.requestId = None
109
- self.resources = None
110
- self.totalCount = None
111
-
112
- def _deserialize(self, params):
113
- self.requestId = params.get("requestId")
114
- if params.get("resources") is not None:
115
- self.resources = []
116
- for item in params.get("resources"):
117
- obj = BandwidthClusterResource(item)
118
- self.resources.append(obj)
119
- self.totalCount = params.get("totalCount")
120
-
121
-
122
- class BandwidthClusterResource(AbstractModel):
123
- def __init__(self, params=None):
124
- if params is None:
125
- params = {}
126
- if len(params) > 0:
127
- self._deserialize(params)
128
- return
129
- self.resourceId = None
130
- self.resourceType = None
131
-
132
- def _deserialize(self, params):
133
- self.resourceId = params.get("resourceId")
134
- self.resourceType = params.get("resourceType")
135
-
136
-
137
- class DescribeBandwidthClusterAreasRequest(AbstractModel):
224
+ class CreateBandwidthClusterRequest(AbstractModel):
138
225
  def __init__(self):
139
- pass
226
+ self.areaCode = None
227
+ self.commitBandwidthMbps = None
228
+ self.networkLineType = None
229
+ self.networkType = None
230
+ self.internetChargeType = None
231
+ self.name = None
232
+ self.product = None
140
233
 
141
234
  def _deserialize(self, params):
142
- pass
235
+ self.areaCode = params.get("areaCode")
236
+ self.commitBandwidthMbps = params.get("commitBandwidthMbps")
237
+ self.networkLineType = params.get("networkLineType")
238
+ if params.get("networkType") is not None:
239
+ warnings.warn(
240
+ "networkType 已废弃,请勿使用",
241
+ DeprecationWarning,
242
+ stacklevel=2
243
+ )
244
+ self.networkType = params.get("networkType")
245
+ self.internetChargeType = params.get("internetChargeType")
246
+ self.name = params.get("name")
247
+ self.product = params.get("product")
143
248
 
144
249
 
145
- class DescribeBandwidthClusterAreasResponse(AbstractModel):
250
+ class CreateBandwidthClusterResponse(AbstractModel):
146
251
  def __init__(self):
147
252
  self.requestId = None
148
- self.areas = None
253
+ self.orderNumber = None
254
+ self.bandwidthClusterId = None
149
255
 
150
256
  def _deserialize(self, params):
151
257
  self.requestId = params.get("requestId")
152
- if params.get("areas") is not None:
153
- self.areas = []
154
- for item in params.get("areas"):
155
- obj = BandwidthClusterAreaInfo(item)
156
- self.areas.append(obj)
157
-
158
-
159
- class BandwidthClusterAreaInfo(AbstractModel):
160
- def __init__(self, params=None):
161
- if params is None:
162
- params = {}
163
- if len(params) > 0:
164
- self._deserialize(params)
165
- return
166
- self.areaCode = None
167
- self.areaName = None
168
- self.networkTypes = None
169
- self.products = None
170
-
171
- def _deserialize(self, params):
172
- self.areaCode = params.get("areaCode")
173
- self.areaName = params.get("areaName")
174
- self.networkTypes = params.get("networkTypes")
175
- self.products = params.get("products")
258
+ self.orderNumber = params.get("orderNumber")
259
+ self.bandwidthClusterId = params.get("bandwidthClusterId")
176
260
 
177
261
 
178
262
  class DescribeBandwidthClusterTrafficRequest(AbstractModel):
@@ -250,140 +334,53 @@ class BandwidthClusterTrafficData(AbstractModel):
250
334
  self.time = params.get("time")
251
335
 
252
336
 
253
- class InquiryBandwidthClusterPriceRequest(AbstractModel):
337
+ class UpdateBandwidthClusterCommitBandwidthRequest(AbstractModel):
254
338
  def __init__(self):
255
- self.areaCode = None
339
+ self.bandwidthClusterId = None
256
340
  self.commitBandwidthMbps = None
257
- self.networkType = None
258
- self.internetChargeType = None
259
- self.product = None
260
341
 
261
342
  def _deserialize(self, params):
262
- self.areaCode = params.get("areaCode")
343
+ self.bandwidthClusterId = params.get("bandwidthClusterId")
263
344
  self.commitBandwidthMbps = params.get("commitBandwidthMbps")
264
- self.networkType = params.get("networkType")
265
- self.internetChargeType = params.get("internetChargeType")
266
- self.product = params.get("product")
267
345
 
268
346
 
269
- class InquiryBandwidthClusterPriceResponse(AbstractModel):
347
+ class UpdateBandwidthClusterCommitBandwidthResponse(AbstractModel):
270
348
  def __init__(self):
271
349
  self.requestId = None
272
- self.price = None
273
350
 
274
351
  def _deserialize(self, params):
275
352
  self.requestId = params.get("requestId")
276
- if params.get("price") is not None:
277
- self.price = PriceItem(params.get("price"))
278
-
279
353
 
280
- class PriceItem(AbstractModel):
281
- def __init__(self, params=None):
282
- if params is None:
283
- params = {}
284
- if len(params) > 0:
285
- self._deserialize(params)
286
- return
287
- self.discount = None
288
- self.discountPrice = None
289
- self.originalPrice = None
290
- self.unitPrice = None
291
- self.discountUnitPrice = None
292
- self.chargeUnit = None
293
- self.stepPrices = None
294
- self.amountUnit = None
295
- self.excessUnitPrice = None
296
- self.excessDiscountUnitPrice = None
297
- self.excessAmountUnit = None
298
- self.category = None
299
354
 
300
- def _deserialize(self, params):
301
- self.discount = params.get("discount")
302
- self.discountPrice = params.get("discountPrice")
303
- self.originalPrice = params.get("originalPrice")
304
- self.unitPrice = params.get("unitPrice")
305
- self.discountUnitPrice = params.get("discountUnitPrice")
306
- self.chargeUnit = params.get("chargeUnit")
307
- if params.get("stepPrices") is not None:
308
- self.stepPrices = []
309
- for item in params.get("stepPrices"):
310
- obj = StepPrice(item)
311
- self.stepPrices.append(obj)
312
- self.amountUnit = params.get("amountUnit")
313
- self.excessUnitPrice = params.get("excessUnitPrice")
314
- self.excessDiscountUnitPrice = params.get("excessDiscountUnitPrice")
315
- self.excessAmountUnit = params.get("excessAmountUnit")
316
- self.category = params.get("category")
317
-
318
-
319
- class StepPrice(AbstractModel):
320
- def __init__(self, params=None):
321
- if params is None:
322
- params = {}
323
- if len(params) > 0:
324
- self._deserialize(params)
325
- return
326
- self.stepStart = None
327
- self.stepEnd = None
328
- self.unitPrice = None
329
- self.discountUnitPrice = None
330
-
331
- def _deserialize(self, params):
332
- self.stepStart = params.get("stepStart")
333
- self.stepEnd = params.get("stepEnd")
334
- self.unitPrice = params.get("unitPrice")
335
- self.discountUnitPrice = params.get("discountUnitPrice")
336
-
337
-
338
- class CreateBandwidthClusterRequest(AbstractModel):
355
+ class ModifyBandwidthClusterAttributeRequest(AbstractModel):
339
356
  def __init__(self):
340
- self.areaCode = None
341
- self.commitBandwidthMbps = None
342
- self.networkLineType = None
343
- self.networkType = None
344
- self.internetChargeType = None
357
+ self.bandwidthClusterId = None
345
358
  self.name = None
346
- self.product = None
347
359
 
348
360
  def _deserialize(self, params):
349
- self.areaCode = params.get("areaCode")
350
- self.commitBandwidthMbps = params.get("commitBandwidthMbps")
351
- self.networkLineType = params.get("networkLineType")
352
- if params.get("networkType") is not None:
353
- warnings.warn(
354
- "networkType 已废弃,请勿使用",
355
- DeprecationWarning,
356
- stacklevel=2
357
- )
358
- self.networkType = params.get("networkType")
359
- self.internetChargeType = params.get("internetChargeType")
361
+ self.bandwidthClusterId = params.get("bandwidthClusterId")
360
362
  self.name = params.get("name")
361
- self.product = params.get("product")
362
363
 
363
364
 
364
- class CreateBandwidthClusterResponse(AbstractModel):
365
+ class ModifyBandwidthClusterAttributeResponse(AbstractModel):
365
366
  def __init__(self):
366
367
  self.requestId = None
367
- self.orderNumber = None
368
- self.bandwidthClusterId = None
369
368
 
370
369
  def _deserialize(self, params):
371
370
  self.requestId = params.get("requestId")
372
- self.orderNumber = params.get("orderNumber")
373
- self.bandwidthClusterId = params.get("bandwidthClusterId")
374
371
 
375
372
 
376
- class ModifyBandwidthClusterAttributeRequest(AbstractModel):
373
+ class MigrateBandwidthClusterResourcesRequest(AbstractModel):
377
374
  def __init__(self):
378
- self.bandwidthClusterId = None
379
- self.name = None
375
+ self.targetBandwidthClusterId = None
376
+ self.resourceIdList = None
380
377
 
381
378
  def _deserialize(self, params):
382
- self.bandwidthClusterId = params.get("bandwidthClusterId")
383
- self.name = params.get("name")
379
+ self.targetBandwidthClusterId = params.get("targetBandwidthClusterId")
380
+ self.resourceIdList = params.get("resourceIdList")
384
381
 
385
382
 
386
- class ModifyBandwidthClusterAttributeResponse(AbstractModel):
383
+ class MigrateBandwidthClusterResourcesResponse(AbstractModel):
387
384
  def __init__(self):
388
385
  self.requestId = None
389
386
 
@@ -407,39 +404,110 @@ class DeleteBandwidthClustersResponse(AbstractModel):
407
404
  self.requestId = params.get("requestId")
408
405
 
409
406
 
410
- class UpdateBandwidthClusterCommitBandwidthRequest(AbstractModel):
407
+ class DescribeBandwidthClusterResourcesRequest(AbstractModel):
411
408
  def __init__(self):
412
409
  self.bandwidthClusterId = None
413
- self.commitBandwidthMbps = None
414
410
 
415
411
  def _deserialize(self, params):
416
412
  self.bandwidthClusterId = params.get("bandwidthClusterId")
417
- self.commitBandwidthMbps = params.get("commitBandwidthMbps")
418
413
 
419
414
 
420
- class UpdateBandwidthClusterCommitBandwidthResponse(AbstractModel):
415
+ class DescribeBandwidthClusterResourcesResponse(AbstractModel):
421
416
  def __init__(self):
422
417
  self.requestId = None
418
+ self.resources = None
419
+ self.totalCount = None
423
420
 
424
421
  def _deserialize(self, params):
425
422
  self.requestId = params.get("requestId")
423
+ if params.get("resources") is not None:
424
+ self.resources = []
425
+ for item in params.get("resources"):
426
+ obj = BandwidthClusterResource(item)
427
+ self.resources.append(obj)
428
+ self.totalCount = params.get("totalCount")
426
429
 
427
430
 
428
- class MigrateBandwidthClusterResourcesRequest(AbstractModel):
431
+ class BandwidthClusterResource(AbstractModel):
432
+ def __init__(self, params=None):
433
+ if params is None:
434
+ params = {}
435
+ if len(params) > 0:
436
+ self._deserialize(params)
437
+ return
438
+ self.resourceId = None
439
+ self.resourceType = None
440
+
441
+ def _deserialize(self, params):
442
+ self.resourceId = params.get("resourceId")
443
+ self.resourceType = params.get("resourceType")
444
+
445
+
446
+ class DescribeBandwidthClusterUsageRequest(AbstractModel):
429
447
  def __init__(self):
430
- self.targetBandwidthClusterId = None
431
- self.resourceIdList = None
448
+ self.bandwidthClusterId = None
449
+ self.pageSize = None
450
+ self.pageNum = None
432
451
 
433
452
  def _deserialize(self, params):
434
- self.targetBandwidthClusterId = params.get("targetBandwidthClusterId")
435
- self.resourceIdList = params.get("resourceIdList")
453
+ self.bandwidthClusterId = params.get("bandwidthClusterId")
454
+ self.pageSize = params.get("pageSize")
455
+ self.pageNum = params.get("pageNum")
436
456
 
437
457
 
438
- class MigrateBandwidthClusterResourcesResponse(AbstractModel):
458
+ class DescribeBandwidthClusterUsageResponse(AbstractModel):
439
459
  def __init__(self):
440
460
  self.requestId = None
461
+ self.totalCount = None
462
+ self.dataSet = None
441
463
 
442
464
  def _deserialize(self, params):
443
465
  self.requestId = params.get("requestId")
466
+ self.totalCount = params.get("totalCount")
467
+ if params.get("dataSet") is not None:
468
+ self.dataSet = []
469
+ for item in params.get("dataSet"):
470
+ obj = BandwidthClusterUsageData(item)
471
+ self.dataSet.append(obj)
472
+
473
+
474
+ class BandwidthClusterUsageData(AbstractModel):
475
+ def __init__(self, params=None):
476
+ if params is None:
477
+ params = {}
478
+ if len(params) > 0:
479
+ self._deserialize(params)
480
+ return
481
+ self.time = None
482
+ self.value = None
483
+ self.details = None
484
+
485
+ def _deserialize(self, params):
486
+ self.time = params.get("time")
487
+ self.value = params.get("value")
488
+ if params.get("details") is not None:
489
+ self.details = []
490
+ for item in params.get("details"):
491
+ obj = BandwidthClusterUsageDetail(item)
492
+ self.details.append(obj)
493
+
494
+
495
+ class BandwidthClusterUsageDetail(AbstractModel):
496
+ def __init__(self, params=None):
497
+ if params is None:
498
+ params = {}
499
+ if len(params) > 0:
500
+ self._deserialize(params)
501
+ return
502
+ self.cityName = None
503
+ self.cityCode = None
504
+ self.product = None
505
+ self.value = None
506
+
507
+ def _deserialize(self, params):
508
+ self.cityName = params.get("cityName")
509
+ self.cityCode = params.get("cityCode")
510
+ self.product = params.get("product")
511
+ self.value = params.get("value")
444
512
 
445
513