zenlayercloud-sdk-python 2.0.67__tar.gz → 2.0.69__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 (115) hide show
  1. {zenlayercloud_sdk_python-2.0.67 → zenlayercloud_sdk_python-2.0.69}/PKG-INFO +1 -1
  2. {zenlayercloud_sdk_python-2.0.67 → zenlayercloud_sdk_python-2.0.69}/zenlayercloud/__init__.py +1 -1
  3. {zenlayercloud_sdk_python-2.0.67 → zenlayercloud_sdk_python-2.0.69}/zenlayercloud/ipt/v20240901/ipt_client.py +44 -8
  4. {zenlayercloud_sdk_python-2.0.67 → zenlayercloud_sdk_python-2.0.69}/zenlayercloud/ipt/v20240901/models.py +359 -0
  5. zenlayercloud_sdk_python-2.0.69/zenlayercloud/sdn/v20260401/models.py +2415 -0
  6. zenlayercloud_sdk_python-2.0.69/zenlayercloud/sdn/v20260401/sdn_client.py +568 -0
  7. {zenlayercloud_sdk_python-2.0.67 → zenlayercloud_sdk_python-2.0.69}/zenlayercloud/zec/v20250901/models.py +100 -0
  8. {zenlayercloud_sdk_python-2.0.67 → zenlayercloud_sdk_python-2.0.69}/zenlayercloud/zec/v20250901/zec_client.py +52 -43
  9. zenlayercloud_sdk_python-2.0.69/zenlayercloud/zrm/__init__.py +0 -0
  10. zenlayercloud_sdk_python-2.0.69/zenlayercloud/zrm/v20251014/__init__.py +0 -0
  11. {zenlayercloud_sdk_python-2.0.67 → zenlayercloud_sdk_python-2.0.69}/zenlayercloud_sdk_python.egg-info/PKG-INFO +1 -1
  12. {zenlayercloud_sdk_python-2.0.67 → zenlayercloud_sdk_python-2.0.69}/zenlayercloud_sdk_python.egg-info/SOURCES.txt +3 -0
  13. zenlayercloud_sdk_python-2.0.67/zenlayercloud/zls/v20230804/__init__.py +0 -2
  14. {zenlayercloud_sdk_python-2.0.67 → zenlayercloud_sdk_python-2.0.69}/LICENSE +0 -0
  15. {zenlayercloud_sdk_python-2.0.67 → zenlayercloud_sdk_python-2.0.69}/README.rst +0 -0
  16. {zenlayercloud_sdk_python-2.0.67 → zenlayercloud_sdk_python-2.0.69}/setup.cfg +0 -0
  17. {zenlayercloud_sdk_python-2.0.67 → zenlayercloud_sdk_python-2.0.69}/setup.py +0 -0
  18. {zenlayercloud_sdk_python-2.0.67 → zenlayercloud_sdk_python-2.0.69}/zenlayercloud/aigw/__init__.py +0 -0
  19. {zenlayercloud_sdk_python-2.0.67 → zenlayercloud_sdk_python-2.0.69}/zenlayercloud/aigw/v20260414/__init__.py +0 -0
  20. {zenlayercloud_sdk_python-2.0.67 → zenlayercloud_sdk_python-2.0.69}/zenlayercloud/aigw/v20260414/aigw_client.py +0 -0
  21. {zenlayercloud_sdk_python-2.0.67 → zenlayercloud_sdk_python-2.0.69}/zenlayercloud/aigw/v20260414/models.py +0 -0
  22. {zenlayercloud_sdk_python-2.0.67 → zenlayercloud_sdk_python-2.0.69}/zenlayercloud/alarm/__init__.py +0 -0
  23. {zenlayercloud_sdk_python-2.0.67 → zenlayercloud_sdk_python-2.0.69}/zenlayercloud/alarm/v20250307/__init__.py +0 -0
  24. {zenlayercloud_sdk_python-2.0.67 → zenlayercloud_sdk_python-2.0.69}/zenlayercloud/alarm/v20250307/alarm_client.py +0 -0
  25. {zenlayercloud_sdk_python-2.0.67 → zenlayercloud_sdk_python-2.0.69}/zenlayercloud/alarm/v20250307/models.py +0 -0
  26. {zenlayercloud_sdk_python-2.0.67 → zenlayercloud_sdk_python-2.0.69}/zenlayercloud/bmc/__init__.py +0 -0
  27. {zenlayercloud_sdk_python-2.0.67 → zenlayercloud_sdk_python-2.0.69}/zenlayercloud/bmc/v20221120/__init__.py +0 -0
  28. {zenlayercloud_sdk_python-2.0.67 → zenlayercloud_sdk_python-2.0.69}/zenlayercloud/bmc/v20221120/bmc_client.py +0 -0
  29. {zenlayercloud_sdk_python-2.0.67 → zenlayercloud_sdk_python-2.0.69}/zenlayercloud/bmc/v20221120/models.py +0 -0
  30. {zenlayercloud_sdk_python-2.0.67 → zenlayercloud_sdk_python-2.0.69}/zenlayercloud/bmc/v20260201/__init__.py +0 -0
  31. {zenlayercloud_sdk_python-2.0.67 → zenlayercloud_sdk_python-2.0.69}/zenlayercloud/bmc/v20260201/bmc_client.py +0 -0
  32. {zenlayercloud_sdk_python-2.0.67 → zenlayercloud_sdk_python-2.0.69}/zenlayercloud/bmc/v20260201/models.py +0 -0
  33. {zenlayercloud_sdk_python-2.0.67 → zenlayercloud_sdk_python-2.0.69}/zenlayercloud/ccs/__init__.py +0 -0
  34. {zenlayercloud_sdk_python-2.0.67 → zenlayercloud_sdk_python-2.0.69}/zenlayercloud/ccs/v20250901/__init__.py +0 -0
  35. {zenlayercloud_sdk_python-2.0.67 → zenlayercloud_sdk_python-2.0.69}/zenlayercloud/ccs/v20250901/ccs_client.py +0 -0
  36. {zenlayercloud_sdk_python-2.0.67 → zenlayercloud_sdk_python-2.0.69}/zenlayercloud/ccs/v20250901/models.py +0 -0
  37. {zenlayercloud_sdk_python-2.0.67 → zenlayercloud_sdk_python-2.0.69}/zenlayercloud/common/__init__.py +0 -0
  38. {zenlayercloud_sdk_python-2.0.67 → zenlayercloud_sdk_python-2.0.69}/zenlayercloud/common/abstract_client.py +0 -0
  39. {zenlayercloud_sdk_python-2.0.67 → zenlayercloud_sdk_python-2.0.69}/zenlayercloud/common/abstract_model.py +0 -0
  40. {zenlayercloud_sdk_python-2.0.67 → zenlayercloud_sdk_python-2.0.69}/zenlayercloud/common/config.py +0 -0
  41. {zenlayercloud_sdk_python-2.0.67 → zenlayercloud_sdk_python-2.0.69}/zenlayercloud/common/credential.py +0 -0
  42. {zenlayercloud_sdk_python-2.0.67 → zenlayercloud_sdk_python-2.0.69}/zenlayercloud/common/excpetion/__init__.py +0 -0
  43. {zenlayercloud_sdk_python-2.0.67 → zenlayercloud_sdk_python-2.0.69}/zenlayercloud/common/excpetion/error_code.py +0 -0
  44. {zenlayercloud_sdk_python-2.0.67 → zenlayercloud_sdk_python-2.0.69}/zenlayercloud/common/excpetion/zenlayer_cloud_sdk_exception.py +0 -0
  45. {zenlayercloud_sdk_python-2.0.67 → zenlayercloud_sdk_python-2.0.69}/zenlayercloud/common/request.py +0 -0
  46. {zenlayercloud_sdk_python-2.0.67 → zenlayercloud_sdk_python-2.0.69}/zenlayercloud/common/response.py +0 -0
  47. {zenlayercloud_sdk_python-2.0.67 → zenlayercloud_sdk_python-2.0.69}/zenlayercloud/common/utils.py +0 -0
  48. {zenlayercloud_sdk_python-2.0.67 → zenlayercloud_sdk_python-2.0.69}/zenlayercloud/ipt/__init__.py +0 -0
  49. {zenlayercloud_sdk_python-2.0.67 → zenlayercloud_sdk_python-2.0.69}/zenlayercloud/ipt/v20240901/__init__.py +0 -0
  50. {zenlayercloud_sdk_python-2.0.67 → zenlayercloud_sdk_python-2.0.69}/zenlayercloud/maintenance/__init__.py +0 -0
  51. {zenlayercloud_sdk_python-2.0.67 → zenlayercloud_sdk_python-2.0.69}/zenlayercloud/maintenance/v20250310/__init__.py +0 -0
  52. {zenlayercloud_sdk_python-2.0.67 → zenlayercloud_sdk_python-2.0.69}/zenlayercloud/maintenance/v20250310/maintenance_client.py +0 -0
  53. {zenlayercloud_sdk_python-2.0.67 → zenlayercloud_sdk_python-2.0.69}/zenlayercloud/maintenance/v20250310/models.py +0 -0
  54. {zenlayercloud_sdk_python-2.0.67 → zenlayercloud_sdk_python-2.0.69}/zenlayercloud/mcpgw/__init__.py +0 -0
  55. {zenlayercloud_sdk_python-2.0.67 → zenlayercloud_sdk_python-2.0.69}/zenlayercloud/mcpgw/v20260602/__init__.py +0 -0
  56. {zenlayercloud_sdk_python-2.0.67 → zenlayercloud_sdk_python-2.0.69}/zenlayercloud/mcpgw/v20260602/mcpgw_client.py +0 -0
  57. {zenlayercloud_sdk_python-2.0.67 → zenlayercloud_sdk_python-2.0.69}/zenlayercloud/mcpgw/v20260602/models.py +0 -0
  58. {zenlayercloud_sdk_python-2.0.67 → zenlayercloud_sdk_python-2.0.69}/zenlayercloud/pvtdns/__init__.py +0 -0
  59. {zenlayercloud_sdk_python-2.0.67 → zenlayercloud_sdk_python-2.0.69}/zenlayercloud/pvtdns/v20251101/__init__.py +0 -0
  60. {zenlayercloud_sdk_python-2.0.67 → zenlayercloud_sdk_python-2.0.69}/zenlayercloud/pvtdns/v20251101/models.py +0 -0
  61. {zenlayercloud_sdk_python-2.0.67 → zenlayercloud_sdk_python-2.0.69}/zenlayercloud/pvtdns/v20251101/pvtdns_client.py +0 -0
  62. {zenlayercloud_sdk_python-2.0.67/zenlayercloud/traffic → zenlayercloud_sdk_python-2.0.69/zenlayercloud/sdn}/__init__.py +0 -0
  63. {zenlayercloud_sdk_python-2.0.67/zenlayercloud/sdn → zenlayercloud_sdk_python-2.0.69/zenlayercloud/sdn/v20230830}/__init__.py +0 -0
  64. {zenlayercloud_sdk_python-2.0.67 → zenlayercloud_sdk_python-2.0.69}/zenlayercloud/sdn/v20230830/models.py +0 -0
  65. {zenlayercloud_sdk_python-2.0.67 → zenlayercloud_sdk_python-2.0.69}/zenlayercloud/sdn/v20230830/sdn_client.py +0 -0
  66. {zenlayercloud_sdk_python-2.0.67/zenlayercloud/traffic/v20240326 → zenlayercloud_sdk_python-2.0.69/zenlayercloud/sdn/v20260401}/__init__.py +0 -0
  67. {zenlayercloud_sdk_python-2.0.67/zenlayercloud/user → zenlayercloud_sdk_python-2.0.69/zenlayercloud/traffic}/__init__.py +0 -0
  68. {zenlayercloud_sdk_python-2.0.67/zenlayercloud/user/v20240529 → zenlayercloud_sdk_python-2.0.69/zenlayercloud/traffic/v20240326}/__init__.py +0 -0
  69. {zenlayercloud_sdk_python-2.0.67 → zenlayercloud_sdk_python-2.0.69}/zenlayercloud/traffic/v20240326/models.py +0 -0
  70. {zenlayercloud_sdk_python-2.0.67 → zenlayercloud_sdk_python-2.0.69}/zenlayercloud/traffic/v20240326/traffic_client.py +0 -0
  71. {zenlayercloud_sdk_python-2.0.67/zenlayercloud/vm → zenlayercloud_sdk_python-2.0.69/zenlayercloud/user}/__init__.py +0 -0
  72. {zenlayercloud_sdk_python-2.0.67/zenlayercloud/vm/v20260401 → zenlayercloud_sdk_python-2.0.69/zenlayercloud/user/v20240529}/__init__.py +0 -0
  73. {zenlayercloud_sdk_python-2.0.67 → zenlayercloud_sdk_python-2.0.69}/zenlayercloud/user/v20240529/models.py +0 -0
  74. {zenlayercloud_sdk_python-2.0.67 → zenlayercloud_sdk_python-2.0.69}/zenlayercloud/user/v20240529/user_client.py +0 -0
  75. {zenlayercloud_sdk_python-2.0.67/zenlayercloud/zdns → zenlayercloud_sdk_python-2.0.69/zenlayercloud/vm}/__init__.py +0 -0
  76. {zenlayercloud_sdk_python-2.0.67/zenlayercloud/sdn/v20230830 → zenlayercloud_sdk_python-2.0.69/zenlayercloud/vm/v20230313}/__init__.py +0 -0
  77. {zenlayercloud_sdk_python-2.0.67 → zenlayercloud_sdk_python-2.0.69}/zenlayercloud/vm/v20230313/models.py +0 -0
  78. {zenlayercloud_sdk_python-2.0.67 → zenlayercloud_sdk_python-2.0.69}/zenlayercloud/vm/v20230313/vm_client.py +0 -0
  79. {zenlayercloud_sdk_python-2.0.67/zenlayercloud/zdns/v20251101 → zenlayercloud_sdk_python-2.0.69/zenlayercloud/vm/v20260401}/__init__.py +0 -0
  80. {zenlayercloud_sdk_python-2.0.67 → zenlayercloud_sdk_python-2.0.69}/zenlayercloud/vm/v20260401/models.py +0 -0
  81. {zenlayercloud_sdk_python-2.0.67 → zenlayercloud_sdk_python-2.0.69}/zenlayercloud/vm/v20260401/vm_client.py +0 -0
  82. {zenlayercloud_sdk_python-2.0.67/zenlayercloud/vm/v20230313 → zenlayercloud_sdk_python-2.0.69/zenlayercloud/zbc}/__init__.py +0 -0
  83. {zenlayercloud_sdk_python-2.0.67/zenlayercloud/zbc → zenlayercloud_sdk_python-2.0.69/zenlayercloud/zbc/v20240809}/__init__.py +0 -0
  84. {zenlayercloud_sdk_python-2.0.67 → zenlayercloud_sdk_python-2.0.69}/zenlayercloud/zbc/v20240809/models.py +0 -0
  85. {zenlayercloud_sdk_python-2.0.67 → zenlayercloud_sdk_python-2.0.69}/zenlayercloud/zbc/v20240809/zbc_client.py +0 -0
  86. {zenlayercloud_sdk_python-2.0.67/zenlayercloud/zec → zenlayercloud_sdk_python-2.0.69/zenlayercloud/zdns}/__init__.py +0 -0
  87. {zenlayercloud_sdk_python-2.0.67/zenlayercloud/zec/v20250901 → zenlayercloud_sdk_python-2.0.69/zenlayercloud/zdns/v20251101}/__init__.py +0 -0
  88. {zenlayercloud_sdk_python-2.0.67 → zenlayercloud_sdk_python-2.0.69}/zenlayercloud/zdns/v20251101/models.py +0 -0
  89. {zenlayercloud_sdk_python-2.0.67 → zenlayercloud_sdk_python-2.0.69}/zenlayercloud/zdns/v20251101/zdns_client.py +0 -0
  90. {zenlayercloud_sdk_python-2.0.67/zenlayercloud/zlb → zenlayercloud_sdk_python-2.0.69/zenlayercloud/zec}/__init__.py +0 -0
  91. {zenlayercloud_sdk_python-2.0.67/zenlayercloud/zbc/v20240809 → zenlayercloud_sdk_python-2.0.69/zenlayercloud/zec/v20240401}/__init__.py +0 -0
  92. {zenlayercloud_sdk_python-2.0.67 → zenlayercloud_sdk_python-2.0.69}/zenlayercloud/zec/v20240401/models.py +0 -0
  93. {zenlayercloud_sdk_python-2.0.67 → zenlayercloud_sdk_python-2.0.69}/zenlayercloud/zec/v20240401/zec_client.py +0 -0
  94. {zenlayercloud_sdk_python-2.0.67/zenlayercloud/zlb/v20250401 → zenlayercloud_sdk_python-2.0.69/zenlayercloud/zec/v20250901}/__init__.py +0 -0
  95. {zenlayercloud_sdk_python-2.0.67/zenlayercloud/zec/v20240401 → zenlayercloud_sdk_python-2.0.69/zenlayercloud/zga}/__init__.py +0 -0
  96. {zenlayercloud_sdk_python-2.0.67/zenlayercloud/zga → zenlayercloud_sdk_python-2.0.69/zenlayercloud/zga/v20241104}/__init__.py +0 -0
  97. {zenlayercloud_sdk_python-2.0.67 → zenlayercloud_sdk_python-2.0.69}/zenlayercloud/zga/v20241104/models.py +0 -0
  98. {zenlayercloud_sdk_python-2.0.67 → zenlayercloud_sdk_python-2.0.69}/zenlayercloud/zga/v20241104/zga_client.py +0 -0
  99. {zenlayercloud_sdk_python-2.0.67/zenlayercloud/zos → zenlayercloud_sdk_python-2.0.69/zenlayercloud/zlb}/__init__.py +0 -0
  100. {zenlayercloud_sdk_python-2.0.67/zenlayercloud/zos/v20251010 → zenlayercloud_sdk_python-2.0.69/zenlayercloud/zlb/v20250401}/__init__.py +0 -0
  101. {zenlayercloud_sdk_python-2.0.67 → zenlayercloud_sdk_python-2.0.69}/zenlayercloud/zlb/v20250401/models.py +0 -0
  102. {zenlayercloud_sdk_python-2.0.67 → zenlayercloud_sdk_python-2.0.69}/zenlayercloud/zlb/v20250401/zlb_client.py +0 -0
  103. {zenlayercloud_sdk_python-2.0.67/zenlayercloud/zga/v20241104 → zenlayercloud_sdk_python-2.0.69/zenlayercloud/zls}/__init__.py +0 -0
  104. {zenlayercloud_sdk_python-2.0.67/zenlayercloud/zls → zenlayercloud_sdk_python-2.0.69/zenlayercloud/zls/v20230804}/__init__.py +0 -0
  105. {zenlayercloud_sdk_python-2.0.67 → zenlayercloud_sdk_python-2.0.69}/zenlayercloud/zls/v20230804/models.py +0 -0
  106. {zenlayercloud_sdk_python-2.0.67 → zenlayercloud_sdk_python-2.0.69}/zenlayercloud/zls/v20230804/zls_client.py +0 -0
  107. {zenlayercloud_sdk_python-2.0.67/zenlayercloud/zrm → zenlayercloud_sdk_python-2.0.69/zenlayercloud/zos}/__init__.py +0 -0
  108. {zenlayercloud_sdk_python-2.0.67/zenlayercloud/zrm/v20251014 → zenlayercloud_sdk_python-2.0.69/zenlayercloud/zos/v20251010}/__init__.py +0 -0
  109. {zenlayercloud_sdk_python-2.0.67 → zenlayercloud_sdk_python-2.0.69}/zenlayercloud/zos/v20251010/models.py +0 -0
  110. {zenlayercloud_sdk_python-2.0.67 → zenlayercloud_sdk_python-2.0.69}/zenlayercloud/zos/v20251010/zos_client.py +0 -0
  111. {zenlayercloud_sdk_python-2.0.67 → zenlayercloud_sdk_python-2.0.69}/zenlayercloud/zrm/v20251014/models.py +0 -0
  112. {zenlayercloud_sdk_python-2.0.67 → zenlayercloud_sdk_python-2.0.69}/zenlayercloud/zrm/v20251014/zrm_client.py +0 -0
  113. {zenlayercloud_sdk_python-2.0.67 → zenlayercloud_sdk_python-2.0.69}/zenlayercloud_sdk_python.egg-info/dependency_links.txt +0 -0
  114. {zenlayercloud_sdk_python-2.0.67 → zenlayercloud_sdk_python-2.0.69}/zenlayercloud_sdk_python.egg-info/requires.txt +0 -0
  115. {zenlayercloud_sdk_python-2.0.67 → zenlayercloud_sdk_python-2.0.69}/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.67
3
+ Version: 2.0.69
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.067"
4
+ __version__ = "2.0.069"
5
5
 
@@ -10,16 +10,34 @@ class IptClient(AbstractClient):
10
10
 
11
11
  def DescribeIPTransitDatacenters(self, request):
12
12
  """
13
- 本接口用于连接IP Transit 服务支持的数据中心。
13
+ 查询IP Transit可连接数据中心
14
14
  """
15
15
  response = self._api_call("DescribeIPTransitDatacenters", request)
16
16
  model = models.DescribeIPTransitDatacentersResponse()
17
17
  model._deserialize(response)
18
18
  return model
19
19
 
20
+ def DescribeIPTransitAvailableAsns(self, request):
21
+ """
22
+ 查询IP Transit可用 ASN
23
+ """
24
+ response = self._api_call("DescribeIPTransitAvailableAsns", request)
25
+ model = models.DescribeIPTransitAvailableAsnsResponse()
26
+ model._deserialize(response)
27
+ return model
28
+
29
+ def DescribeIPTransitAvailableCidrBlocks(self, request):
30
+ """
31
+ 查询IP Transit可用公网地址段
32
+ """
33
+ response = self._api_call("DescribeIPTransitAvailableCidrBlocks", request)
34
+ model = models.DescribeIPTransitAvailableCidrBlocksResponse()
35
+ model._deserialize(response)
36
+ return model
37
+
20
38
  def InquiryCreateIPTransitPrice(self, request):
21
39
  """
22
- 创建一条IP Transit 的询价。
40
+ iP Transit创建询价
23
41
  """
24
42
  response = self._api_call("InquiryCreateIPTransitPrice", request)
25
43
  model = models.InquiryCreateIPTransitPriceResponse()
@@ -28,7 +46,7 @@ class IptClient(AbstractClient):
28
46
 
29
47
  def CreateIPTransit(self, request):
30
48
  """
31
- 创建一条IP Transit
49
+ 创建IP Transit
32
50
  """
33
51
  response = self._api_call("CreateIPTransit", request)
34
52
  model = models.CreateIPTransitResponse()
@@ -37,7 +55,7 @@ class IptClient(AbstractClient):
37
55
 
38
56
  def DescribeIPTransits(self, request):
39
57
  """
40
- 本接口用于查询IP Transit资源列表。
58
+ 查询IP Transit列表
41
59
  """
42
60
  response = self._api_call("DescribeIPTransits", request)
43
61
  model = models.DescribeIPTransitsResponse()
@@ -46,7 +64,7 @@ class IptClient(AbstractClient):
46
64
 
47
65
  def ModifyIPTransitBandwidth(self, request):
48
66
  """
49
- 修改一条IP Transit的带宽限速。
67
+ 修改IP Transit带宽
50
68
  """
51
69
  response = self._api_call("ModifyIPTransitBandwidth", request)
52
70
  model = models.ModifyIPTransitBandwidthResponse()
@@ -55,7 +73,7 @@ class IptClient(AbstractClient):
55
73
 
56
74
  def ModifyIPTransitsAttribute(self, request):
57
75
  """
58
- 修改IP Transit的基本信息,包括名称和备注。
76
+ 修改IP Transit属性
59
77
  """
60
78
  response = self._api_call("ModifyIPTransitsAttribute", request)
61
79
  model = models.ModifyIPTransitsAttributeResponse()
@@ -64,7 +82,7 @@ class IptClient(AbstractClient):
64
82
 
65
83
  def DeleteIPTransit(self, request):
66
84
  """
67
- 删除一条IP Transit
85
+ 删除IP Transit
68
86
  """
69
87
  response = self._api_call("DeleteIPTransit", request)
70
88
  model = models.DeleteIPTransitResponse()
@@ -73,10 +91,28 @@ class IptClient(AbstractClient):
73
91
 
74
92
  def DescribeIPTransitTraffic(self, request):
75
93
  """
76
- 查询IP Transit在指定时间段内的带宽数据。
94
+ 查询IP Transit流量
77
95
  """
78
96
  response = self._api_call("DescribeIPTransitTraffic", request)
79
97
  model = models.DescribeIPTransitTrafficResponse()
80
98
  model._deserialize(response)
81
99
  return model
82
100
 
101
+ def InquiryModifyIPTransitPrice(self, request):
102
+ """
103
+ IP Transit变配询价
104
+ """
105
+ response = self._api_call("InquiryModifyIPTransitPrice", request)
106
+ model = models.InquiryModifyIPTransitPriceResponse()
107
+ model._deserialize(response)
108
+ return model
109
+
110
+ def ModifyIPTransitConfig(self, request):
111
+ """
112
+ 修改IP Transit配置
113
+ """
114
+ response = self._api_call("ModifyIPTransitConfig", request)
115
+ model = models.ModifyIPTransitConfigResponse()
116
+ model._deserialize(response)
117
+ return model
118
+
@@ -7,10 +7,12 @@ class DescribeIPTransitDatacentersRequest(AbstractModel):
7
7
  def __init__(self):
8
8
  self.peerPortId = None
9
9
  self.peerDcId = None
10
+ self.zbgRegionId = None
10
11
 
11
12
  def _deserialize(self, params):
12
13
  self.peerPortId = params.get("peerPortId")
13
14
  self.peerDcId = params.get("peerDcId")
15
+ self.zbgRegionId = params.get("zbgRegionId")
14
16
 
15
17
 
16
18
  class DescribeIPTransitDatacentersResponse(AbstractModel):
@@ -82,11 +84,101 @@ class RemoteIptAvailableRoutingType(AbstractModel):
82
84
  self._deserialize(params)
83
85
  return
84
86
  self.routingType = None
87
+ self.availableBgpRouteTypes = None
85
88
  self.deliveryType = None
89
+ self.publicInterconnectNetmasks = None
86
90
 
87
91
  def _deserialize(self, params):
88
92
  self.routingType = params.get("routingType")
93
+ self.availableBgpRouteTypes = params.get("availableBgpRouteTypes")
89
94
  self.deliveryType = params.get("deliveryType")
95
+ self.publicInterconnectNetmasks = params.get("publicInterconnectNetmasks")
96
+
97
+
98
+ class DescribeIPTransitAvailableAsnsRequest(AbstractModel):
99
+ def __init__(self):
100
+ pass
101
+
102
+ def _deserialize(self, params):
103
+ pass
104
+
105
+
106
+ class DescribeIPTransitAvailableAsnsResponse(AbstractModel):
107
+ def __init__(self):
108
+ self.requestId = None
109
+ self.dataSet = None
110
+
111
+ def _deserialize(self, params):
112
+ self.requestId = params.get("requestId")
113
+ if params.get("dataSet") is not None:
114
+ self.dataSet = []
115
+ for item in params.get("dataSet"):
116
+ obj = AsnInfo(item)
117
+ self.dataSet.append(obj)
118
+
119
+
120
+ class AsnInfo(AbstractModel):
121
+ def __init__(self, params=None):
122
+ if params is None:
123
+ params = {}
124
+ if len(params) > 0:
125
+ self._deserialize(params)
126
+ return
127
+ self.asn = None
128
+ self.asnType = None
129
+
130
+ def _deserialize(self, params):
131
+ self.asn = params.get("asn")
132
+ self.asnType = params.get("asnType")
133
+
134
+
135
+ class DescribeIPTransitAvailableCidrBlocksRequest(AbstractModel):
136
+ def __init__(self):
137
+ self.iptDcId = None
138
+ self.routingType = None
139
+ self.zbgRegionId = None
140
+ self.ipUuid = None
141
+
142
+ def _deserialize(self, params):
143
+ self.iptDcId = params.get("iptDcId")
144
+ self.routingType = params.get("routingType")
145
+ self.zbgRegionId = params.get("zbgRegionId")
146
+ self.ipUuid = params.get("ipUuid")
147
+
148
+
149
+ class DescribeIPTransitAvailableCidrBlocksResponse(AbstractModel):
150
+ def __init__(self):
151
+ self.requestId = None
152
+ self.ipv4CidrBlocks = None
153
+ self.ipv6CidrBlocks = None
154
+
155
+ def _deserialize(self, params):
156
+ self.requestId = params.get("requestId")
157
+ if params.get("ipv4CidrBlocks") is not None:
158
+ self.ipv4CidrBlocks = []
159
+ for item in params.get("ipv4CidrBlocks"):
160
+ obj = CidrBlock(item)
161
+ self.ipv4CidrBlocks.append(obj)
162
+ if params.get("ipv6CidrBlocks") is not None:
163
+ self.ipv6CidrBlocks = []
164
+ for item in params.get("ipv6CidrBlocks"):
165
+ obj = CidrBlock(item)
166
+ self.ipv6CidrBlocks.append(obj)
167
+
168
+
169
+ class CidrBlock(AbstractModel):
170
+ def __init__(self, params=None):
171
+ if params is None:
172
+ params = {}
173
+ if len(params) > 0:
174
+ self._deserialize(params)
175
+ return
176
+ self.netmask = None
177
+ self.ipNetworkType = None
178
+
179
+ def _deserialize(self, params):
180
+ self.netmask = params.get("netmask")
181
+ self.ipNetworkType = params.get("ipNetworkType")
90
182
 
91
183
 
92
184
  class InquiryCreateIPTransitPriceRequest(AbstractModel):
@@ -99,6 +191,11 @@ class InquiryCreateIPTransitPriceRequest(AbstractModel):
99
191
  self.routingType = None
100
192
  self.publicIPv4BlockSize = None
101
193
  self.bgpRouteType = None
194
+ self.ipType = None
195
+ self.publicIpList = None
196
+ self.zbgRegionId = None
197
+ self.haConfig = None
198
+ self.publicInterconnectNetmask = None
102
199
 
103
200
  def _deserialize(self, params):
104
201
  self.peerPortId = params.get("peerPortId")
@@ -109,6 +206,52 @@ class InquiryCreateIPTransitPriceRequest(AbstractModel):
109
206
  self.routingType = params.get("routingType")
110
207
  self.publicIPv4BlockSize = params.get("publicIPv4BlockSize")
111
208
  self.bgpRouteType = params.get("bgpRouteType")
209
+ self.ipType = params.get("ipType")
210
+ if params.get("publicIpList") is not None:
211
+ self.publicIpList = []
212
+ for item in params.get("publicIpList"):
213
+ obj = IPTransitIpRequest(item)
214
+ self.publicIpList.append(obj)
215
+ self.zbgRegionId = params.get("zbgRegionId")
216
+ if params.get("haConfig") is not None:
217
+ self.haConfig = IPTransitHaConfig(params.get("haConfig"))
218
+ self.publicInterconnectNetmask = params.get("publicInterconnectNetmask")
219
+
220
+
221
+ class IPTransitIpRequest(AbstractModel):
222
+ def __init__(self, params=None):
223
+ if params is None:
224
+ params = {}
225
+ if len(params) > 0:
226
+ self._deserialize(params)
227
+ return
228
+ self.netmask = None
229
+ self.ipType = None
230
+ self.ipNetworkType = None
231
+ self.amount = None
232
+
233
+ def _deserialize(self, params):
234
+ self.netmask = params.get("netmask")
235
+ self.ipType = params.get("ipType")
236
+ self.ipNetworkType = params.get("ipNetworkType")
237
+ self.amount = params.get("amount")
238
+
239
+
240
+ class IPTransitHaConfig(AbstractModel):
241
+ def __init__(self, params=None):
242
+ if params is None:
243
+ params = {}
244
+ if len(params) > 0:
245
+ self._deserialize(params)
246
+ return
247
+ self.haMode = None
248
+ self.secondaryPortId = None
249
+ self.secondaryPortVlanId = None
250
+
251
+ def _deserialize(self, params):
252
+ self.haMode = params.get("haMode")
253
+ self.secondaryPortId = params.get("secondaryPortId")
254
+ self.secondaryPortVlanId = params.get("secondaryPortVlanId")
112
255
 
113
256
 
114
257
  class InquiryCreateIPTransitPriceResponse(AbstractModel):
@@ -117,6 +260,7 @@ class InquiryCreateIPTransitPriceResponse(AbstractModel):
117
260
  self.privateConnectPrice = None
118
261
  self.iptBandwidthPrice = None
119
262
  self.publicIpPrices = None
263
+ self.publicInterconnectIpPrice = None
120
264
 
121
265
  def _deserialize(self, params):
122
266
  self.requestId = params.get("requestId")
@@ -129,6 +273,8 @@ class InquiryCreateIPTransitPriceResponse(AbstractModel):
129
273
  for item in params.get("publicIpPrices"):
130
274
  obj = IPPrice(item)
131
275
  self.publicIpPrices.append(obj)
276
+ if params.get("publicInterconnectIpPrice") is not None:
277
+ self.publicInterconnectIpPrice = IPPrice(params.get("publicInterconnectIpPrice"))
132
278
 
133
279
 
134
280
  class PriceItem(AbstractModel):
@@ -199,12 +345,14 @@ class IPPrice(AbstractModel):
199
345
  self.price = None
200
346
  self.netmask = None
201
347
  self.qty = None
348
+ self.ipNetworkType = None
202
349
 
203
350
  def _deserialize(self, params):
204
351
  if params.get("price") is not None:
205
352
  self.price = PriceItem(params.get("price"))
206
353
  self.netmask = params.get("netmask")
207
354
  self.qty = params.get("qty")
355
+ self.ipNetworkType = params.get("ipNetworkType")
208
356
 
209
357
 
210
358
  class CreateIPTransitRequest(AbstractModel):
@@ -223,6 +371,10 @@ class CreateIPTransitRequest(AbstractModel):
223
371
  self.resourceGroupId = None
224
372
  self.bgp = None
225
373
  self.tags = None
374
+ self.publicIpList = None
375
+ self.zbgRegionId = None
376
+ self.haConfig = None
377
+ self.publicInterconnectNetmask = None
226
378
 
227
379
  def _deserialize(self, params):
228
380
  self.iptName = params.get("iptName")
@@ -242,6 +394,15 @@ class CreateIPTransitRequest(AbstractModel):
242
394
  self.bgp = RiptBgpConfig(params.get("bgp"))
243
395
  if params.get("tags") is not None:
244
396
  self.tags = TagAssociation(params.get("tags"))
397
+ if params.get("publicIpList") is not None:
398
+ self.publicIpList = []
399
+ for item in params.get("publicIpList"):
400
+ obj = IPTransitIpRequest(item)
401
+ self.publicIpList.append(obj)
402
+ self.zbgRegionId = params.get("zbgRegionId")
403
+ if params.get("haConfig") is not None:
404
+ self.haConfig = IPTransitHaConfig(params.get("haConfig"))
405
+ self.publicInterconnectNetmask = params.get("publicInterconnectNetmask")
245
406
 
246
407
 
247
408
  class BFDConfig(AbstractModel):
@@ -399,7 +560,13 @@ class IPTransit(AbstractModel):
399
560
  self.privateConnectName = None
400
561
  self.publicIpv4Addresses = None
401
562
  self.iptStatus = None
563
+ self.connectivityStatus = None
402
564
  self.tags = None
565
+ self.publicIpAddresses = None
566
+ self.haMode = None
567
+ self.zbgRegionId = None
568
+ self.peerPortType = None
569
+ self.haLinks = None
403
570
 
404
571
  def _deserialize(self, params):
405
572
  self.iptId = params.get("iptId")
@@ -433,8 +600,22 @@ class IPTransit(AbstractModel):
433
600
  obj = IPAddress(item)
434
601
  self.publicIpv4Addresses.append(obj)
435
602
  self.iptStatus = params.get("iptStatus")
603
+ self.connectivityStatus = params.get("connectivityStatus")
436
604
  if params.get("tags") is not None:
437
605
  self.tags = Tags(params.get("tags"))
606
+ if params.get("publicIpAddresses") is not None:
607
+ self.publicIpAddresses = []
608
+ for item in params.get("publicIpAddresses"):
609
+ obj = IPTransitIpAddress(item)
610
+ self.publicIpAddresses.append(obj)
611
+ self.haMode = params.get("haMode")
612
+ self.zbgRegionId = params.get("zbgRegionId")
613
+ self.peerPortType = params.get("peerPortType")
614
+ if params.get("haLinks") is not None:
615
+ self.haLinks = []
616
+ for item in params.get("haLinks"):
617
+ obj = HaLink(item)
618
+ self.haLinks.append(obj)
438
619
 
439
620
 
440
621
  class Interconnect(AbstractModel):
@@ -446,10 +627,14 @@ class Interconnect(AbstractModel):
446
627
  return
447
628
  self.vendorIpv4Address = None
448
629
  self.customerIpv4Address = None
630
+ self.vendorIpv6Address = None
631
+ self.customerIpv6Address = None
449
632
 
450
633
  def _deserialize(self, params):
451
634
  self.vendorIpv4Address = params.get("vendorIpv4Address")
452
635
  self.customerIpv4Address = params.get("customerIpv4Address")
636
+ self.vendorIpv6Address = params.get("vendorIpv6Address")
637
+ self.customerIpv6Address = params.get("customerIpv6Address")
453
638
 
454
639
 
455
640
  class IPAddress(AbstractModel):
@@ -486,6 +671,62 @@ class Tags(AbstractModel):
486
671
  self.tags.append(obj)
487
672
 
488
673
 
674
+ class IPTransitIpAddress(AbstractModel):
675
+ def __init__(self, params=None):
676
+ if params is None:
677
+ params = {}
678
+ if len(params) > 0:
679
+ self._deserialize(params)
680
+ return
681
+ self.ipUuid = None
682
+ self.ipAddress = None
683
+ self.netmask = None
684
+ self.gatewayIpAddress = None
685
+ self.ipType = None
686
+ self.ipNetworkType = None
687
+
688
+ def _deserialize(self, params):
689
+ self.ipUuid = params.get("ipUuid")
690
+ self.ipAddress = params.get("ipAddress")
691
+ self.netmask = params.get("netmask")
692
+ self.gatewayIpAddress = params.get("gatewayIpAddress")
693
+ self.ipType = params.get("ipType")
694
+ self.ipNetworkType = params.get("ipNetworkType")
695
+
696
+
697
+ class HaLink(AbstractModel):
698
+ def __init__(self, params=None):
699
+ if params is None:
700
+ params = {}
701
+ if len(params) > 0:
702
+ self._deserialize(params)
703
+ return
704
+ self.isPrimary = None
705
+ self.iptStatus = None
706
+ self.connectivityStatus = None
707
+ self.privateConnectId = None
708
+ self.privateConnectName = None
709
+ self.peerPortId = None
710
+ self.peerPortName = None
711
+ self.peerDataCenter = None
712
+ self.peerPortVlan = None
713
+ self.interconnect = None
714
+
715
+ def _deserialize(self, params):
716
+ self.isPrimary = params.get("isPrimary")
717
+ self.iptStatus = params.get("iptStatus")
718
+ self.connectivityStatus = params.get("connectivityStatus")
719
+ self.privateConnectId = params.get("privateConnectId")
720
+ self.privateConnectName = params.get("privateConnectName")
721
+ self.peerPortId = params.get("peerPortId")
722
+ self.peerPortName = params.get("peerPortName")
723
+ if params.get("peerDataCenter") is not None:
724
+ self.peerDataCenter = DatacenterInfo(params.get("peerDataCenter"))
725
+ self.peerPortVlan = params.get("peerPortVlan")
726
+ if params.get("interconnect") is not None:
727
+ self.interconnect = Interconnect(params.get("interconnect"))
728
+
729
+
489
730
  class ModifyIPTransitBandwidthRequest(AbstractModel):
490
731
  def __init__(self):
491
732
  self.iptId = None
@@ -603,3 +844,121 @@ class TrafficData(AbstractModel):
603
844
  self.time = params.get("time")
604
845
 
605
846
 
847
+ class InquiryModifyIPTransitPriceRequest(AbstractModel):
848
+ def __init__(self):
849
+ self.iptId = None
850
+ self.type = None
851
+ self.bandwidth = None
852
+ self.commitBandwidth = None
853
+ self.publicIPv4BlockSize = None
854
+ self.ipUuid = None
855
+ self.ipNetworkType = None
856
+
857
+ def _deserialize(self, params):
858
+ self.iptId = params.get("iptId")
859
+ self.type = params.get("type")
860
+ self.bandwidth = params.get("bandwidth")
861
+ self.commitBandwidth = params.get("commitBandwidth")
862
+ self.publicIPv4BlockSize = params.get("publicIPv4BlockSize")
863
+ self.ipUuid = params.get("ipUuid")
864
+ self.ipNetworkType = params.get("ipNetworkType")
865
+
866
+
867
+ class InquiryModifyIPTransitPriceResponse(AbstractModel):
868
+ def __init__(self):
869
+ self.requestId = None
870
+ self.privateConnectPrice = None
871
+ self.privateConnectBandwidth = None
872
+ self.iptPrice = None
873
+ self.iptIpPrices = None
874
+ self.publicInterconnectIpPrice = None
875
+
876
+ def _deserialize(self, params):
877
+ self.requestId = params.get("requestId")
878
+ if params.get("privateConnectPrice") is not None:
879
+ self.privateConnectPrice = PriceItem(params.get("privateConnectPrice"))
880
+ self.privateConnectBandwidth = params.get("privateConnectBandwidth")
881
+ if params.get("iptPrice") is not None:
882
+ self.iptPrice = PriceItem(params.get("iptPrice"))
883
+ if params.get("iptIpPrices") is not None:
884
+ self.iptIpPrices = []
885
+ for item in params.get("iptIpPrices"):
886
+ obj = IPTransitIpPriceItem(item)
887
+ self.iptIpPrices.append(obj)
888
+ if params.get("publicInterconnectIpPrice") is not None:
889
+ self.publicInterconnectIpPrice = IPTransitIpPriceItem(params.get("publicInterconnectIpPrice"))
890
+
891
+
892
+ class IPTransitIpPriceItem(AbstractModel):
893
+ def __init__(self, params=None):
894
+ if params is None:
895
+ params = {}
896
+ if len(params) > 0:
897
+ self._deserialize(params)
898
+ return
899
+ self.price = None
900
+ self.netmask = None
901
+ self.amount = None
902
+ self.ipNetworkType = None
903
+
904
+ def _deserialize(self, params):
905
+ if params.get("price") is not None:
906
+ self.price = PriceItem(params.get("price"))
907
+ self.netmask = params.get("netmask")
908
+ self.amount = params.get("amount")
909
+ self.ipNetworkType = params.get("ipNetworkType")
910
+
911
+
912
+ class ModifyIPTransitConfigRequest(AbstractModel):
913
+ def __init__(self):
914
+ self.iptId = None
915
+ self.type = None
916
+ self.bandwidth = None
917
+ self.commitBandwidth = None
918
+ self.bfd = None
919
+ self.bgp = None
920
+ self.publicIPv4BlockSize = None
921
+ self.ipUuid = None
922
+ self.ipNetworkType = None
923
+
924
+ def _deserialize(self, params):
925
+ self.iptId = params.get("iptId")
926
+ self.type = params.get("type")
927
+ self.bandwidth = params.get("bandwidth")
928
+ self.commitBandwidth = params.get("commitBandwidth")
929
+ if params.get("bfd") is not None:
930
+ self.bfd = BFDConfig(params.get("bfd"))
931
+ if params.get("bgp") is not None:
932
+ self.bgp = BgpConfigParam(params.get("bgp"))
933
+ self.publicIPv4BlockSize = params.get("publicIPv4BlockSize")
934
+ self.ipUuid = params.get("ipUuid")
935
+ self.ipNetworkType = params.get("ipNetworkType")
936
+
937
+
938
+ class BgpConfigParam(AbstractModel):
939
+ def __init__(self, params=None):
940
+ if params is None:
941
+ params = {}
942
+ if len(params) > 0:
943
+ self._deserialize(params)
944
+ return
945
+ self.routeType = None
946
+ self.asnList = None
947
+ self.asSetList = None
948
+ self.password = None
949
+
950
+ def _deserialize(self, params):
951
+ self.routeType = params.get("routeType")
952
+ self.asnList = params.get("asnList")
953
+ self.asSetList = params.get("asSetList")
954
+ self.password = params.get("password")
955
+
956
+
957
+ class ModifyIPTransitConfigResponse(AbstractModel):
958
+ def __init__(self):
959
+ self.requestId = None
960
+
961
+ def _deserialize(self, params):
962
+ self.requestId = params.get("requestId")
963
+
964
+