zenlayercloud-sdk-python 2.0.65__tar.gz → 2.0.68__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.65 → zenlayercloud_sdk_python-2.0.68}/PKG-INFO +1 -1
  2. {zenlayercloud_sdk_python-2.0.65 → zenlayercloud_sdk_python-2.0.68}/zenlayercloud/__init__.py +1 -1
  3. {zenlayercloud_sdk_python-2.0.65 → zenlayercloud_sdk_python-2.0.68}/zenlayercloud/common/abstract_client.py +9 -0
  4. {zenlayercloud_sdk_python-2.0.65 → zenlayercloud_sdk_python-2.0.68}/zenlayercloud/common/excpetion/error_code.py +4 -0
  5. {zenlayercloud_sdk_python-2.0.65 → zenlayercloud_sdk_python-2.0.68}/zenlayercloud/sdn/v20230830/models.py +4 -0
  6. zenlayercloud_sdk_python-2.0.68/zenlayercloud/sdn/v20260401/models.py +2415 -0
  7. zenlayercloud_sdk_python-2.0.68/zenlayercloud/sdn/v20260401/sdn_client.py +568 -0
  8. {zenlayercloud_sdk_python-2.0.65 → zenlayercloud_sdk_python-2.0.68}/zenlayercloud/zec/v20250901/models.py +149 -16
  9. {zenlayercloud_sdk_python-2.0.65 → zenlayercloud_sdk_python-2.0.68}/zenlayercloud/zec/v20250901/zec_client.py +26 -8
  10. zenlayercloud_sdk_python-2.0.68/zenlayercloud/zrm/__init__.py +0 -0
  11. zenlayercloud_sdk_python-2.0.68/zenlayercloud/zrm/v20251014/__init__.py +0 -0
  12. {zenlayercloud_sdk_python-2.0.65 → zenlayercloud_sdk_python-2.0.68}/zenlayercloud_sdk_python.egg-info/PKG-INFO +1 -1
  13. {zenlayercloud_sdk_python-2.0.65 → zenlayercloud_sdk_python-2.0.68}/zenlayercloud_sdk_python.egg-info/SOURCES.txt +3 -0
  14. zenlayercloud_sdk_python-2.0.65/zenlayercloud/zls/v20230804/__init__.py +0 -2
  15. {zenlayercloud_sdk_python-2.0.65 → zenlayercloud_sdk_python-2.0.68}/LICENSE +0 -0
  16. {zenlayercloud_sdk_python-2.0.65 → zenlayercloud_sdk_python-2.0.68}/README.rst +0 -0
  17. {zenlayercloud_sdk_python-2.0.65 → zenlayercloud_sdk_python-2.0.68}/setup.cfg +0 -0
  18. {zenlayercloud_sdk_python-2.0.65 → zenlayercloud_sdk_python-2.0.68}/setup.py +0 -0
  19. {zenlayercloud_sdk_python-2.0.65 → zenlayercloud_sdk_python-2.0.68}/zenlayercloud/aigw/__init__.py +0 -0
  20. {zenlayercloud_sdk_python-2.0.65 → zenlayercloud_sdk_python-2.0.68}/zenlayercloud/aigw/v20260414/__init__.py +0 -0
  21. {zenlayercloud_sdk_python-2.0.65 → zenlayercloud_sdk_python-2.0.68}/zenlayercloud/aigw/v20260414/aigw_client.py +0 -0
  22. {zenlayercloud_sdk_python-2.0.65 → zenlayercloud_sdk_python-2.0.68}/zenlayercloud/aigw/v20260414/models.py +0 -0
  23. {zenlayercloud_sdk_python-2.0.65 → zenlayercloud_sdk_python-2.0.68}/zenlayercloud/alarm/__init__.py +0 -0
  24. {zenlayercloud_sdk_python-2.0.65 → zenlayercloud_sdk_python-2.0.68}/zenlayercloud/alarm/v20250307/__init__.py +0 -0
  25. {zenlayercloud_sdk_python-2.0.65 → zenlayercloud_sdk_python-2.0.68}/zenlayercloud/alarm/v20250307/alarm_client.py +0 -0
  26. {zenlayercloud_sdk_python-2.0.65 → zenlayercloud_sdk_python-2.0.68}/zenlayercloud/alarm/v20250307/models.py +0 -0
  27. {zenlayercloud_sdk_python-2.0.65 → zenlayercloud_sdk_python-2.0.68}/zenlayercloud/bmc/__init__.py +0 -0
  28. {zenlayercloud_sdk_python-2.0.65 → zenlayercloud_sdk_python-2.0.68}/zenlayercloud/bmc/v20221120/__init__.py +0 -0
  29. {zenlayercloud_sdk_python-2.0.65 → zenlayercloud_sdk_python-2.0.68}/zenlayercloud/bmc/v20221120/bmc_client.py +0 -0
  30. {zenlayercloud_sdk_python-2.0.65 → zenlayercloud_sdk_python-2.0.68}/zenlayercloud/bmc/v20221120/models.py +0 -0
  31. {zenlayercloud_sdk_python-2.0.65 → zenlayercloud_sdk_python-2.0.68}/zenlayercloud/bmc/v20260201/__init__.py +0 -0
  32. {zenlayercloud_sdk_python-2.0.65 → zenlayercloud_sdk_python-2.0.68}/zenlayercloud/bmc/v20260201/bmc_client.py +0 -0
  33. {zenlayercloud_sdk_python-2.0.65 → zenlayercloud_sdk_python-2.0.68}/zenlayercloud/bmc/v20260201/models.py +0 -0
  34. {zenlayercloud_sdk_python-2.0.65 → zenlayercloud_sdk_python-2.0.68}/zenlayercloud/ccs/__init__.py +0 -0
  35. {zenlayercloud_sdk_python-2.0.65 → zenlayercloud_sdk_python-2.0.68}/zenlayercloud/ccs/v20250901/__init__.py +0 -0
  36. {zenlayercloud_sdk_python-2.0.65 → zenlayercloud_sdk_python-2.0.68}/zenlayercloud/ccs/v20250901/ccs_client.py +0 -0
  37. {zenlayercloud_sdk_python-2.0.65 → zenlayercloud_sdk_python-2.0.68}/zenlayercloud/ccs/v20250901/models.py +0 -0
  38. {zenlayercloud_sdk_python-2.0.65 → zenlayercloud_sdk_python-2.0.68}/zenlayercloud/common/__init__.py +0 -0
  39. {zenlayercloud_sdk_python-2.0.65 → zenlayercloud_sdk_python-2.0.68}/zenlayercloud/common/abstract_model.py +0 -0
  40. {zenlayercloud_sdk_python-2.0.65 → zenlayercloud_sdk_python-2.0.68}/zenlayercloud/common/config.py +0 -0
  41. {zenlayercloud_sdk_python-2.0.65 → zenlayercloud_sdk_python-2.0.68}/zenlayercloud/common/credential.py +0 -0
  42. {zenlayercloud_sdk_python-2.0.65 → zenlayercloud_sdk_python-2.0.68}/zenlayercloud/common/excpetion/__init__.py +0 -0
  43. {zenlayercloud_sdk_python-2.0.65 → zenlayercloud_sdk_python-2.0.68}/zenlayercloud/common/excpetion/zenlayer_cloud_sdk_exception.py +0 -0
  44. {zenlayercloud_sdk_python-2.0.65 → zenlayercloud_sdk_python-2.0.68}/zenlayercloud/common/request.py +0 -0
  45. {zenlayercloud_sdk_python-2.0.65 → zenlayercloud_sdk_python-2.0.68}/zenlayercloud/common/response.py +0 -0
  46. {zenlayercloud_sdk_python-2.0.65 → zenlayercloud_sdk_python-2.0.68}/zenlayercloud/common/utils.py +0 -0
  47. {zenlayercloud_sdk_python-2.0.65 → zenlayercloud_sdk_python-2.0.68}/zenlayercloud/ipt/__init__.py +0 -0
  48. {zenlayercloud_sdk_python-2.0.65 → zenlayercloud_sdk_python-2.0.68}/zenlayercloud/ipt/v20240901/__init__.py +0 -0
  49. {zenlayercloud_sdk_python-2.0.65 → zenlayercloud_sdk_python-2.0.68}/zenlayercloud/ipt/v20240901/ipt_client.py +0 -0
  50. {zenlayercloud_sdk_python-2.0.65 → zenlayercloud_sdk_python-2.0.68}/zenlayercloud/ipt/v20240901/models.py +0 -0
  51. {zenlayercloud_sdk_python-2.0.65 → zenlayercloud_sdk_python-2.0.68}/zenlayercloud/maintenance/__init__.py +0 -0
  52. {zenlayercloud_sdk_python-2.0.65 → zenlayercloud_sdk_python-2.0.68}/zenlayercloud/maintenance/v20250310/__init__.py +0 -0
  53. {zenlayercloud_sdk_python-2.0.65 → zenlayercloud_sdk_python-2.0.68}/zenlayercloud/maintenance/v20250310/maintenance_client.py +0 -0
  54. {zenlayercloud_sdk_python-2.0.65 → zenlayercloud_sdk_python-2.0.68}/zenlayercloud/maintenance/v20250310/models.py +0 -0
  55. {zenlayercloud_sdk_python-2.0.65 → zenlayercloud_sdk_python-2.0.68}/zenlayercloud/mcpgw/__init__.py +0 -0
  56. {zenlayercloud_sdk_python-2.0.65 → zenlayercloud_sdk_python-2.0.68}/zenlayercloud/mcpgw/v20260602/__init__.py +0 -0
  57. {zenlayercloud_sdk_python-2.0.65 → zenlayercloud_sdk_python-2.0.68}/zenlayercloud/mcpgw/v20260602/mcpgw_client.py +0 -0
  58. {zenlayercloud_sdk_python-2.0.65 → zenlayercloud_sdk_python-2.0.68}/zenlayercloud/mcpgw/v20260602/models.py +0 -0
  59. {zenlayercloud_sdk_python-2.0.65 → zenlayercloud_sdk_python-2.0.68}/zenlayercloud/pvtdns/__init__.py +0 -0
  60. {zenlayercloud_sdk_python-2.0.65 → zenlayercloud_sdk_python-2.0.68}/zenlayercloud/pvtdns/v20251101/__init__.py +0 -0
  61. {zenlayercloud_sdk_python-2.0.65 → zenlayercloud_sdk_python-2.0.68}/zenlayercloud/pvtdns/v20251101/models.py +0 -0
  62. {zenlayercloud_sdk_python-2.0.65 → zenlayercloud_sdk_python-2.0.68}/zenlayercloud/pvtdns/v20251101/pvtdns_client.py +0 -0
  63. {zenlayercloud_sdk_python-2.0.65/zenlayercloud/traffic → zenlayercloud_sdk_python-2.0.68/zenlayercloud/sdn}/__init__.py +0 -0
  64. {zenlayercloud_sdk_python-2.0.65/zenlayercloud/sdn → zenlayercloud_sdk_python-2.0.68/zenlayercloud/sdn/v20230830}/__init__.py +0 -0
  65. {zenlayercloud_sdk_python-2.0.65 → zenlayercloud_sdk_python-2.0.68}/zenlayercloud/sdn/v20230830/sdn_client.py +0 -0
  66. {zenlayercloud_sdk_python-2.0.65/zenlayercloud/traffic/v20240326 → zenlayercloud_sdk_python-2.0.68/zenlayercloud/sdn/v20260401}/__init__.py +0 -0
  67. {zenlayercloud_sdk_python-2.0.65/zenlayercloud/user → zenlayercloud_sdk_python-2.0.68/zenlayercloud/traffic}/__init__.py +0 -0
  68. {zenlayercloud_sdk_python-2.0.65/zenlayercloud/user/v20240529 → zenlayercloud_sdk_python-2.0.68/zenlayercloud/traffic/v20240326}/__init__.py +0 -0
  69. {zenlayercloud_sdk_python-2.0.65 → zenlayercloud_sdk_python-2.0.68}/zenlayercloud/traffic/v20240326/models.py +0 -0
  70. {zenlayercloud_sdk_python-2.0.65 → zenlayercloud_sdk_python-2.0.68}/zenlayercloud/traffic/v20240326/traffic_client.py +0 -0
  71. {zenlayercloud_sdk_python-2.0.65/zenlayercloud/vm → zenlayercloud_sdk_python-2.0.68/zenlayercloud/user}/__init__.py +0 -0
  72. {zenlayercloud_sdk_python-2.0.65/zenlayercloud/vm/v20260401 → zenlayercloud_sdk_python-2.0.68/zenlayercloud/user/v20240529}/__init__.py +0 -0
  73. {zenlayercloud_sdk_python-2.0.65 → zenlayercloud_sdk_python-2.0.68}/zenlayercloud/user/v20240529/models.py +0 -0
  74. {zenlayercloud_sdk_python-2.0.65 → zenlayercloud_sdk_python-2.0.68}/zenlayercloud/user/v20240529/user_client.py +0 -0
  75. {zenlayercloud_sdk_python-2.0.65/zenlayercloud/zdns → zenlayercloud_sdk_python-2.0.68/zenlayercloud/vm}/__init__.py +0 -0
  76. {zenlayercloud_sdk_python-2.0.65/zenlayercloud/sdn/v20230830 → zenlayercloud_sdk_python-2.0.68/zenlayercloud/vm/v20230313}/__init__.py +0 -0
  77. {zenlayercloud_sdk_python-2.0.65 → zenlayercloud_sdk_python-2.0.68}/zenlayercloud/vm/v20230313/models.py +0 -0
  78. {zenlayercloud_sdk_python-2.0.65 → zenlayercloud_sdk_python-2.0.68}/zenlayercloud/vm/v20230313/vm_client.py +0 -0
  79. {zenlayercloud_sdk_python-2.0.65/zenlayercloud/zdns/v20251101 → zenlayercloud_sdk_python-2.0.68/zenlayercloud/vm/v20260401}/__init__.py +0 -0
  80. {zenlayercloud_sdk_python-2.0.65 → zenlayercloud_sdk_python-2.0.68}/zenlayercloud/vm/v20260401/models.py +0 -0
  81. {zenlayercloud_sdk_python-2.0.65 → zenlayercloud_sdk_python-2.0.68}/zenlayercloud/vm/v20260401/vm_client.py +0 -0
  82. {zenlayercloud_sdk_python-2.0.65/zenlayercloud/vm/v20230313 → zenlayercloud_sdk_python-2.0.68/zenlayercloud/zbc}/__init__.py +0 -0
  83. {zenlayercloud_sdk_python-2.0.65/zenlayercloud/zbc → zenlayercloud_sdk_python-2.0.68/zenlayercloud/zbc/v20240809}/__init__.py +0 -0
  84. {zenlayercloud_sdk_python-2.0.65 → zenlayercloud_sdk_python-2.0.68}/zenlayercloud/zbc/v20240809/models.py +0 -0
  85. {zenlayercloud_sdk_python-2.0.65 → zenlayercloud_sdk_python-2.0.68}/zenlayercloud/zbc/v20240809/zbc_client.py +0 -0
  86. {zenlayercloud_sdk_python-2.0.65/zenlayercloud/zec → zenlayercloud_sdk_python-2.0.68/zenlayercloud/zdns}/__init__.py +0 -0
  87. {zenlayercloud_sdk_python-2.0.65/zenlayercloud/zec/v20250901 → zenlayercloud_sdk_python-2.0.68/zenlayercloud/zdns/v20251101}/__init__.py +0 -0
  88. {zenlayercloud_sdk_python-2.0.65 → zenlayercloud_sdk_python-2.0.68}/zenlayercloud/zdns/v20251101/models.py +0 -0
  89. {zenlayercloud_sdk_python-2.0.65 → zenlayercloud_sdk_python-2.0.68}/zenlayercloud/zdns/v20251101/zdns_client.py +0 -0
  90. {zenlayercloud_sdk_python-2.0.65/zenlayercloud/zlb → zenlayercloud_sdk_python-2.0.68/zenlayercloud/zec}/__init__.py +0 -0
  91. {zenlayercloud_sdk_python-2.0.65/zenlayercloud/zbc/v20240809 → zenlayercloud_sdk_python-2.0.68/zenlayercloud/zec/v20240401}/__init__.py +0 -0
  92. {zenlayercloud_sdk_python-2.0.65 → zenlayercloud_sdk_python-2.0.68}/zenlayercloud/zec/v20240401/models.py +0 -0
  93. {zenlayercloud_sdk_python-2.0.65 → zenlayercloud_sdk_python-2.0.68}/zenlayercloud/zec/v20240401/zec_client.py +0 -0
  94. {zenlayercloud_sdk_python-2.0.65/zenlayercloud/zlb/v20250401 → zenlayercloud_sdk_python-2.0.68/zenlayercloud/zec/v20250901}/__init__.py +0 -0
  95. {zenlayercloud_sdk_python-2.0.65/zenlayercloud/zec/v20240401 → zenlayercloud_sdk_python-2.0.68/zenlayercloud/zga}/__init__.py +0 -0
  96. {zenlayercloud_sdk_python-2.0.65/zenlayercloud/zga → zenlayercloud_sdk_python-2.0.68/zenlayercloud/zga/v20241104}/__init__.py +0 -0
  97. {zenlayercloud_sdk_python-2.0.65 → zenlayercloud_sdk_python-2.0.68}/zenlayercloud/zga/v20241104/models.py +0 -0
  98. {zenlayercloud_sdk_python-2.0.65 → zenlayercloud_sdk_python-2.0.68}/zenlayercloud/zga/v20241104/zga_client.py +0 -0
  99. {zenlayercloud_sdk_python-2.0.65/zenlayercloud/zos → zenlayercloud_sdk_python-2.0.68/zenlayercloud/zlb}/__init__.py +0 -0
  100. {zenlayercloud_sdk_python-2.0.65/zenlayercloud/zos/v20251010 → zenlayercloud_sdk_python-2.0.68/zenlayercloud/zlb/v20250401}/__init__.py +0 -0
  101. {zenlayercloud_sdk_python-2.0.65 → zenlayercloud_sdk_python-2.0.68}/zenlayercloud/zlb/v20250401/models.py +0 -0
  102. {zenlayercloud_sdk_python-2.0.65 → zenlayercloud_sdk_python-2.0.68}/zenlayercloud/zlb/v20250401/zlb_client.py +0 -0
  103. {zenlayercloud_sdk_python-2.0.65/zenlayercloud/zga/v20241104 → zenlayercloud_sdk_python-2.0.68/zenlayercloud/zls}/__init__.py +0 -0
  104. {zenlayercloud_sdk_python-2.0.65/zenlayercloud/zls → zenlayercloud_sdk_python-2.0.68/zenlayercloud/zls/v20230804}/__init__.py +0 -0
  105. {zenlayercloud_sdk_python-2.0.65 → zenlayercloud_sdk_python-2.0.68}/zenlayercloud/zls/v20230804/models.py +0 -0
  106. {zenlayercloud_sdk_python-2.0.65 → zenlayercloud_sdk_python-2.0.68}/zenlayercloud/zls/v20230804/zls_client.py +0 -0
  107. {zenlayercloud_sdk_python-2.0.65/zenlayercloud/zrm → zenlayercloud_sdk_python-2.0.68/zenlayercloud/zos}/__init__.py +0 -0
  108. {zenlayercloud_sdk_python-2.0.65/zenlayercloud/zrm/v20251014 → zenlayercloud_sdk_python-2.0.68/zenlayercloud/zos/v20251010}/__init__.py +0 -0
  109. {zenlayercloud_sdk_python-2.0.65 → zenlayercloud_sdk_python-2.0.68}/zenlayercloud/zos/v20251010/models.py +0 -0
  110. {zenlayercloud_sdk_python-2.0.65 → zenlayercloud_sdk_python-2.0.68}/zenlayercloud/zos/v20251010/zos_client.py +0 -0
  111. {zenlayercloud_sdk_python-2.0.65 → zenlayercloud_sdk_python-2.0.68}/zenlayercloud/zrm/v20251014/models.py +0 -0
  112. {zenlayercloud_sdk_python-2.0.65 → zenlayercloud_sdk_python-2.0.68}/zenlayercloud/zrm/v20251014/zrm_client.py +0 -0
  113. {zenlayercloud_sdk_python-2.0.65 → zenlayercloud_sdk_python-2.0.68}/zenlayercloud_sdk_python.egg-info/dependency_links.txt +0 -0
  114. {zenlayercloud_sdk_python-2.0.65 → zenlayercloud_sdk_python-2.0.68}/zenlayercloud_sdk_python.egg-info/requires.txt +0 -0
  115. {zenlayercloud_sdk_python-2.0.65 → zenlayercloud_sdk_python-2.0.68}/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.65
3
+ Version: 2.0.68
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.065"
4
+ __version__ = "2.0.068"
5
5
 
@@ -143,6 +143,15 @@ class AbstractClient(object):
143
143
 
144
144
  @staticmethod
145
145
  def _handle_response(resp):
146
+ if resp.status == 403 and resp.header.get("cf-mitigated") == "challenge":
147
+ raise ZenlayerCloudSdkException(
148
+ code=error_code.SECURITY_CHALLENGE,
149
+ message="Request was intercepted by a security challenge (HTTP 403). "
150
+ "This is a network-layer block, not an API error. Contact support if it persists.")
151
+ if resp.status == 451:
152
+ raise ZenlayerCloudSdkException(
153
+ code=error_code.REQUEST_BLOCKED,
154
+ message="Request was blocked by a security policy (HTTP 451). Contact support to investigate.")
146
155
  resp_data = json.loads(resp.data)
147
156
  if resp.status != 200:
148
157
  code = resp_data["code"]
@@ -7,3 +7,7 @@ CREDENTIAL_MISSING_ERROR = "CREDENTIAL_VALUE_MISSING"
7
7
  SDK_INVALID_REQUEST = "SDK_INVALID_REQUEST"
8
8
 
9
9
  REQUEST_LIMIT_EXCEEDED = "REQUEST_LIMIT_EXCEEDED"
10
+
11
+ SECURITY_CHALLENGE = "SECURITY_CHALLENGE"
12
+
13
+ REQUEST_BLOCKED = "REQUEST_BLOCKED"
@@ -806,6 +806,7 @@ class PrivateConnectEndpoint(AbstractModel):
806
806
  self.dataCenter = None
807
807
  self.vlanId = None
808
808
  self.connectivityStatus = None
809
+ self.sharedChannelId = None
809
810
 
810
811
  def _deserialize(self, params):
811
812
  self.endpointId = params.get("endpointId")
@@ -817,6 +818,7 @@ class PrivateConnectEndpoint(AbstractModel):
817
818
  self.dataCenter = DatacenterInfo(params.get("dataCenter"))
818
819
  self.vlanId = params.get("vlanId")
819
820
  self.connectivityStatus = params.get("connectivityStatus")
821
+ self.sharedChannelId = params.get("sharedChannelId")
820
822
 
821
823
 
822
824
  class DatacenterInfo(AbstractModel):
@@ -1315,6 +1317,7 @@ class CloudRouterEdgePoint(AbstractModel):
1315
1317
  self.bgpConnection = None
1316
1318
  self.staticRoutes = None
1317
1319
  self.createTime = None
1320
+ self.sharedChannelId = None
1318
1321
 
1319
1322
  def _deserialize(self, params):
1320
1323
  self.edgePointId = params.get("edgePointId")
@@ -1339,6 +1342,7 @@ class CloudRouterEdgePoint(AbstractModel):
1339
1342
  obj = IPRoute(item)
1340
1343
  self.staticRoutes.append(obj)
1341
1344
  self.createTime = params.get("createTime")
1345
+ self.sharedChannelId = params.get("sharedChannelId")
1342
1346
 
1343
1347
 
1344
1348
  class BGPConnection(AbstractModel):