zscaler-sdk-python 0.10.5__tar.gz → 0.10.6__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 (100) hide show
  1. {zscaler_sdk_python-0.10.5 → zscaler_sdk_python-0.10.6}/PKG-INFO +1 -1
  2. {zscaler_sdk_python-0.10.5 → zscaler_sdk_python-0.10.6}/pyproject.toml +2 -2
  3. {zscaler_sdk_python-0.10.5 → zscaler_sdk_python-0.10.6}/zscaler/__init__.py +1 -1
  4. {zscaler_sdk_python-0.10.5 → zscaler_sdk_python-0.10.6}/zscaler/zpa/policies.py +13 -4
  5. {zscaler_sdk_python-0.10.5 → zscaler_sdk_python-0.10.6}/LICENSE.md +0 -0
  6. {zscaler_sdk_python-0.10.5 → zscaler_sdk_python-0.10.6}/README.md +0 -0
  7. {zscaler_sdk_python-0.10.5 → zscaler_sdk_python-0.10.6}/zscaler/cache/__init__.py +0 -0
  8. {zscaler_sdk_python-0.10.5 → zscaler_sdk_python-0.10.6}/zscaler/cache/cache.py +0 -0
  9. {zscaler_sdk_python-0.10.5 → zscaler_sdk_python-0.10.6}/zscaler/cache/no_op_cache.py +0 -0
  10. {zscaler_sdk_python-0.10.5 → zscaler_sdk_python-0.10.6}/zscaler/cache/zscaler_cache.py +0 -0
  11. {zscaler_sdk_python-0.10.5 → zscaler_sdk_python-0.10.6}/zscaler/constants.py +0 -0
  12. {zscaler_sdk_python-0.10.5 → zscaler_sdk_python-0.10.6}/zscaler/errors/__init__.py +0 -0
  13. {zscaler_sdk_python-0.10.5 → zscaler_sdk_python-0.10.6}/zscaler/errors/error.py +0 -0
  14. {zscaler_sdk_python-0.10.5 → zscaler_sdk_python-0.10.6}/zscaler/errors/http_error.py +0 -0
  15. {zscaler_sdk_python-0.10.5 → zscaler_sdk_python-0.10.6}/zscaler/errors/zscaler_api_error.py +0 -0
  16. {zscaler_sdk_python-0.10.5 → zscaler_sdk_python-0.10.6}/zscaler/exceptions/__init__.py +0 -0
  17. {zscaler_sdk_python-0.10.5 → zscaler_sdk_python-0.10.6}/zscaler/exceptions/exceptions.py +0 -0
  18. {zscaler_sdk_python-0.10.5 → zscaler_sdk_python-0.10.6}/zscaler/logger.py +0 -0
  19. {zscaler_sdk_python-0.10.5 → zscaler_sdk_python-0.10.6}/zscaler/ratelimiter/__init__.py +0 -0
  20. {zscaler_sdk_python-0.10.5 → zscaler_sdk_python-0.10.6}/zscaler/ratelimiter/ratelimiter.py +0 -0
  21. {zscaler_sdk_python-0.10.5 → zscaler_sdk_python-0.10.6}/zscaler/user_agent.py +0 -0
  22. {zscaler_sdk_python-0.10.5 → zscaler_sdk_python-0.10.6}/zscaler/utils.py +0 -0
  23. {zscaler_sdk_python-0.10.5 → zscaler_sdk_python-0.10.6}/zscaler/zcc/__init__.py +0 -0
  24. {zscaler_sdk_python-0.10.5 → zscaler_sdk_python-0.10.6}/zscaler/zcc/client.py +0 -0
  25. {zscaler_sdk_python-0.10.5 → zscaler_sdk_python-0.10.6}/zscaler/zcc/devices.py +0 -0
  26. {zscaler_sdk_python-0.10.5 → zscaler_sdk_python-0.10.6}/zscaler/zcc/secrets.py +0 -0
  27. {zscaler_sdk_python-0.10.5 → zscaler_sdk_python-0.10.6}/zscaler/zcon/__init__.py +0 -0
  28. {zscaler_sdk_python-0.10.5 → zscaler_sdk_python-0.10.6}/zscaler/zcon/activation.py +0 -0
  29. {zscaler_sdk_python-0.10.5 → zscaler_sdk_python-0.10.6}/zscaler/zcon/admin_and_role_management.py +0 -0
  30. {zscaler_sdk_python-0.10.5 → zscaler_sdk_python-0.10.6}/zscaler/zcon/client.py +0 -0
  31. {zscaler_sdk_python-0.10.5 → zscaler_sdk_python-0.10.6}/zscaler/zcon/ecgroups.py +0 -0
  32. {zscaler_sdk_python-0.10.5 → zscaler_sdk_python-0.10.6}/zscaler/zcon/locations.py +0 -0
  33. {zscaler_sdk_python-0.10.5 → zscaler_sdk_python-0.10.6}/zscaler/zcon/provisioning.py +0 -0
  34. {zscaler_sdk_python-0.10.5 → zscaler_sdk_python-0.10.6}/zscaler/zdx/__init__.py +0 -0
  35. {zscaler_sdk_python-0.10.5 → zscaler_sdk_python-0.10.6}/zscaler/zdx/admin.py +0 -0
  36. {zscaler_sdk_python-0.10.5 → zscaler_sdk_python-0.10.6}/zscaler/zdx/alerts.py +0 -0
  37. {zscaler_sdk_python-0.10.5 → zscaler_sdk_python-0.10.6}/zscaler/zdx/apps.py +0 -0
  38. {zscaler_sdk_python-0.10.5 → zscaler_sdk_python-0.10.6}/zscaler/zdx/devices.py +0 -0
  39. {zscaler_sdk_python-0.10.5 → zscaler_sdk_python-0.10.6}/zscaler/zdx/filters.py +0 -0
  40. {zscaler_sdk_python-0.10.5 → zscaler_sdk_python-0.10.6}/zscaler/zdx/inventory.py +0 -0
  41. {zscaler_sdk_python-0.10.5 → zscaler_sdk_python-0.10.6}/zscaler/zdx/troubleshooting.py +0 -0
  42. {zscaler_sdk_python-0.10.5 → zscaler_sdk_python-0.10.6}/zscaler/zdx/users.py +0 -0
  43. {zscaler_sdk_python-0.10.5 → zscaler_sdk_python-0.10.6}/zscaler/zdx/zdx_client.py +0 -0
  44. {zscaler_sdk_python-0.10.5 → zscaler_sdk_python-0.10.6}/zscaler/zia/__init__.py +0 -0
  45. {zscaler_sdk_python-0.10.5 → zscaler_sdk_python-0.10.6}/zscaler/zia/activate.py +0 -0
  46. {zscaler_sdk_python-0.10.5 → zscaler_sdk_python-0.10.6}/zscaler/zia/admin_and_role_management.py +0 -0
  47. {zscaler_sdk_python-0.10.5 → zscaler_sdk_python-0.10.6}/zscaler/zia/apptotal.py +0 -0
  48. {zscaler_sdk_python-0.10.5 → zscaler_sdk_python-0.10.6}/zscaler/zia/audit_logs.py +0 -0
  49. {zscaler_sdk_python-0.10.5 → zscaler_sdk_python-0.10.6}/zscaler/zia/authentication_settings.py +0 -0
  50. {zscaler_sdk_python-0.10.5 → zscaler_sdk_python-0.10.6}/zscaler/zia/client.py +0 -0
  51. {zscaler_sdk_python-0.10.5 → zscaler_sdk_python-0.10.6}/zscaler/zia/cloud_apps.py +0 -0
  52. {zscaler_sdk_python-0.10.5 → zscaler_sdk_python-0.10.6}/zscaler/zia/cloudappcontrol.py +0 -0
  53. {zscaler_sdk_python-0.10.5 → zscaler_sdk_python-0.10.6}/zscaler/zia/device_management.py +0 -0
  54. {zscaler_sdk_python-0.10.5 → zscaler_sdk_python-0.10.6}/zscaler/zia/dlp.py +0 -0
  55. {zscaler_sdk_python-0.10.5 → zscaler_sdk_python-0.10.6}/zscaler/zia/errors.py +0 -0
  56. {zscaler_sdk_python-0.10.5 → zscaler_sdk_python-0.10.6}/zscaler/zia/firewall.py +0 -0
  57. {zscaler_sdk_python-0.10.5 → zscaler_sdk_python-0.10.6}/zscaler/zia/forwarding_control.py +0 -0
  58. {zscaler_sdk_python-0.10.5 → zscaler_sdk_python-0.10.6}/zscaler/zia/isolation_profile.py +0 -0
  59. {zscaler_sdk_python-0.10.5 → zscaler_sdk_python-0.10.6}/zscaler/zia/labels.py +0 -0
  60. {zscaler_sdk_python-0.10.5 → zscaler_sdk_python-0.10.6}/zscaler/zia/locations.py +0 -0
  61. {zscaler_sdk_python-0.10.5 → zscaler_sdk_python-0.10.6}/zscaler/zia/pac_files.py +0 -0
  62. {zscaler_sdk_python-0.10.5 → zscaler_sdk_python-0.10.6}/zscaler/zia/sandbox.py +0 -0
  63. {zscaler_sdk_python-0.10.5 → zscaler_sdk_python-0.10.6}/zscaler/zia/security.py +0 -0
  64. {zscaler_sdk_python-0.10.5 → zscaler_sdk_python-0.10.6}/zscaler/zia/ssl_inspection.py +0 -0
  65. {zscaler_sdk_python-0.10.5 → zscaler_sdk_python-0.10.6}/zscaler/zia/traffic.py +0 -0
  66. {zscaler_sdk_python-0.10.5 → zscaler_sdk_python-0.10.6}/zscaler/zia/url_categories.py +0 -0
  67. {zscaler_sdk_python-0.10.5 → zscaler_sdk_python-0.10.6}/zscaler/zia/url_filtering.py +0 -0
  68. {zscaler_sdk_python-0.10.5 → zscaler_sdk_python-0.10.6}/zscaler/zia/users.py +0 -0
  69. {zscaler_sdk_python-0.10.5 → zscaler_sdk_python-0.10.6}/zscaler/zia/web_dlp.py +0 -0
  70. {zscaler_sdk_python-0.10.5 → zscaler_sdk_python-0.10.6}/zscaler/zia/workload_groups.py +0 -0
  71. {zscaler_sdk_python-0.10.5 → zscaler_sdk_python-0.10.6}/zscaler/zia/zpa_gateway.py +0 -0
  72. {zscaler_sdk_python-0.10.5 → zscaler_sdk_python-0.10.6}/zscaler/zpa/README.md +0 -0
  73. {zscaler_sdk_python-0.10.5 → zscaler_sdk_python-0.10.6}/zscaler/zpa/__init__.py +0 -0
  74. {zscaler_sdk_python-0.10.5 → zscaler_sdk_python-0.10.6}/zscaler/zpa/app_segments.py +0 -0
  75. {zscaler_sdk_python-0.10.5 → zscaler_sdk_python-0.10.6}/zscaler/zpa/app_segments_inspection.py +0 -0
  76. {zscaler_sdk_python-0.10.5 → zscaler_sdk_python-0.10.6}/zscaler/zpa/app_segments_pra.py +0 -0
  77. {zscaler_sdk_python-0.10.5 → zscaler_sdk_python-0.10.6}/zscaler/zpa/authdomains.py +0 -0
  78. {zscaler_sdk_python-0.10.5 → zscaler_sdk_python-0.10.6}/zscaler/zpa/certificates.py +0 -0
  79. {zscaler_sdk_python-0.10.5 → zscaler_sdk_python-0.10.6}/zscaler/zpa/client.py +0 -0
  80. {zscaler_sdk_python-0.10.5 → zscaler_sdk_python-0.10.6}/zscaler/zpa/cloud_connector_groups.py +0 -0
  81. {zscaler_sdk_python-0.10.5 → zscaler_sdk_python-0.10.6}/zscaler/zpa/connectors.py +0 -0
  82. {zscaler_sdk_python-0.10.5 → zscaler_sdk_python-0.10.6}/zscaler/zpa/emergency_access.py +0 -0
  83. {zscaler_sdk_python-0.10.5 → zscaler_sdk_python-0.10.6}/zscaler/zpa/errors.py +0 -0
  84. {zscaler_sdk_python-0.10.5 → zscaler_sdk_python-0.10.6}/zscaler/zpa/idp.py +0 -0
  85. {zscaler_sdk_python-0.10.5 → zscaler_sdk_python-0.10.6}/zscaler/zpa/inspection.py +0 -0
  86. {zscaler_sdk_python-0.10.5 → zscaler_sdk_python-0.10.6}/zscaler/zpa/isolation.py +0 -0
  87. {zscaler_sdk_python-0.10.5 → zscaler_sdk_python-0.10.6}/zscaler/zpa/lss.py +0 -0
  88. {zscaler_sdk_python-0.10.5 → zscaler_sdk_python-0.10.6}/zscaler/zpa/machine_groups.py +0 -0
  89. {zscaler_sdk_python-0.10.5 → zscaler_sdk_python-0.10.6}/zscaler/zpa/microtenants.py +0 -0
  90. {zscaler_sdk_python-0.10.5 → zscaler_sdk_python-0.10.6}/zscaler/zpa/posture_profiles.py +0 -0
  91. {zscaler_sdk_python-0.10.5 → zscaler_sdk_python-0.10.6}/zscaler/zpa/privileged_remote_access.py +0 -0
  92. {zscaler_sdk_python-0.10.5 → zscaler_sdk_python-0.10.6}/zscaler/zpa/provisioning.py +0 -0
  93. {zscaler_sdk_python-0.10.5 → zscaler_sdk_python-0.10.6}/zscaler/zpa/saml_attributes.py +0 -0
  94. {zscaler_sdk_python-0.10.5 → zscaler_sdk_python-0.10.6}/zscaler/zpa/scim_attributes.py +0 -0
  95. {zscaler_sdk_python-0.10.5 → zscaler_sdk_python-0.10.6}/zscaler/zpa/scim_groups.py +0 -0
  96. {zscaler_sdk_python-0.10.5 → zscaler_sdk_python-0.10.6}/zscaler/zpa/segment_groups.py +0 -0
  97. {zscaler_sdk_python-0.10.5 → zscaler_sdk_python-0.10.6}/zscaler/zpa/server_groups.py +0 -0
  98. {zscaler_sdk_python-0.10.5 → zscaler_sdk_python-0.10.6}/zscaler/zpa/servers.py +0 -0
  99. {zscaler_sdk_python-0.10.5 → zscaler_sdk_python-0.10.6}/zscaler/zpa/service_edges.py +0 -0
  100. {zscaler_sdk_python-0.10.5 → zscaler_sdk_python-0.10.6}/zscaler/zpa/trusted_networks.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: zscaler-sdk-python
3
- Version: 0.10.5
3
+ Version: 0.10.6
4
4
  Summary: Official Python SDK for the Zscaler Products (Beta)
5
5
  Home-page: https://github.com/zscaler/zscaler-sdk-python
6
6
  License: MIT
@@ -1,6 +1,6 @@
1
1
  [tool.poetry]
2
2
  name = "zscaler-sdk-python"
3
- version = "0.10.5"
3
+ version = "0.10.6"
4
4
  description = "Official Python SDK for the Zscaler Products (Beta)"
5
5
  authors = ["Zscaler, Inc. <devrel@zscaler.com>"]
6
6
  license = "MIT"
@@ -53,7 +53,7 @@ cryptography = ">=43.0.0"
53
53
  okta = ">=2.9.7"
54
54
  jinja2 = ">=3.1.6"
55
55
 
56
- [tool.poetry.dev-dependencies]
56
+ [tool.poetry.group.dev.dependencies]
57
57
  black = ">=24.3.0"
58
58
  pytest = ">=8.3.1"
59
59
  pytest-asyncio = "^0.25.3"
@@ -29,7 +29,7 @@ __license__ = "MIT"
29
29
  __contributors__ = [
30
30
  "William Guilherme",
31
31
  ]
32
- __version__ = "0.10.5"
32
+ __version__ = "0.10.6"
33
33
 
34
34
  from zscaler.zdx import ZDXClientHelper # noqa
35
35
  from zscaler.zia import ZIAClientHelper # noqa
@@ -75,6 +75,8 @@ class PolicySetsAPI:
75
75
  "SCIM": [],
76
76
  "SCIM_GROUP": [],
77
77
  "COUNTRY_CODE": [],
78
+ "RISK_FACTOR_TYPE":[],
79
+ "CHROME_ENTERPRISE":[],
78
80
  }
79
81
 
80
82
  operators_for_types = {} # Dictionary to store specific operators for each object type
@@ -105,9 +107,9 @@ class PolicySetsAPI:
105
107
  object_types_to_operands[object_type].append(operand)
106
108
 
107
109
  elif isinstance(condition, dict):
108
- if "operator" in condition:
109
- operators_for_types["default"] = condition["operator"]
110
- continue # Skip to the next condition after setting the operator
110
+ # if "operator" in condition:
111
+ # operators_for_types["default"] = condition["operator"]
112
+ # continue # Skip to the next condition after setting the operator
111
113
 
112
114
  condition_template = {}
113
115
  for key in ["id", "negated", "operator"]:
@@ -184,7 +186,7 @@ class PolicySetsAPI:
184
186
  ]
185
187
  }
186
188
  )
187
- elif object_type in ["posture", "trusted_network", "country_code", "platform"]:
189
+ elif object_type in ["posture", "trusted_network", "country_code", "platform", "risk_factor_type", "chrome_enterprise"]:
188
190
  # These types use "entryValues" with "lhs" as unique ID and "rhs" as "true"/"false"
189
191
  template.append(
190
192
  {"operands": [{"objectType": object_type.upper(), "entryValues": [{"lhs": values[0], "rhs": values[1]}]}]}
@@ -481,6 +483,13 @@ class PolicySetsAPI:
481
483
 
482
484
  add_id_groups(self.reformat_params, kwargs, payload)
483
485
 
486
+ # Force removal if user gave an empty list.
487
+ # (Ensures we don't leave behind the old 'appConnectorGroups' from current_rule.)
488
+ if not app_connector_group_ids:
489
+ payload["appConnectorGroups"] = []
490
+ if not app_server_group_ids:
491
+ payload["appServerGroups"] = []
492
+
484
493
  for key, value in kwargs.items():
485
494
  if key == "conditions":
486
495
  payload["conditions"] = self._create_conditions_v1(value)