Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
28 changes: 26 additions & 2 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,6 +1,30 @@
# Zscaler Python SDK Changelog

## 1.9.13 (January 22, 2025)
## 1.9.14 (February 10, 2026)

### Notes

- Python Versions: **v3.9, v3.10, v3.11, v3.12**

### Enhancements:

#### Zscaler AI Guard

* [PR #457](https://github.com/zscaler/zscaler-sdk-python/pull/457) - Added new Zscaler AI Guard API endpoints
- `/detection/execute-policy`
- `/detection/resolve-and-execute-policy`

### ZTW API

* [PR #457](https://github.com/zscaler/zscaler-sdk-python/pull/457) - Added `DELETE` method for `forwarding_rules` resource.

* [PR #457](https://github.com/zscaler/zscaler-sdk-python/pull/457) - Added new attributes `url_type`, `regex_patterns`, and `regex_patterns_retaining_parent_category` to `zia_url_categories` resource to specify whether the category uses exact URLs or regex patterns. Supported values are `EXACT` and `REGEX`. See [Zscaler Release Notes](https://help.zscaler.com/zia/release-upgrade-summary-2026) for details. To enable this feature, contact Zscaler Support.

### Bug Fixes

* [PR #457](https://github.com/zscaler/zscaler-sdk-python/pull/457) - Replaced `flatdict` dependency with internal `flatten_dict`/`unflatten_dict` helpers to fix build failures on `setuptools 82+`. Thanks [@pankaj28843](https://github.com/pankaj28843) for reporting [#454](https://github.com/zscaler/zscaler-sdk-python/issues/454) and [@enza252](https://github.com/enza252) for the [initial implementation](https://github.com/zscaler/zscaler-sdk-python/pull/455).

## 1.9.13 (January 22, 2026)

### Notes

Expand All @@ -11,7 +35,7 @@
* [PR #450](https://github.com/zscaler/zscaler-sdk-python/pull/450) - Added new function `get_rule_type_label` to retrieves a list of rule labels based on the specified rule type


## 1.9.12 (January 19, 2025)
## 1.9.12 (January 19, 2026)

### Notes

Expand Down
14 changes: 10 additions & 4 deletions Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -40,6 +40,7 @@ help:
@echo "$(COLOR_OK) lint:zia Check style with flake8 for zia packages$(COLOR_NONE)"
@echo "$(COLOR_OK) lint:zidentity Check style with flake8 for zidentity packages$(COLOR_NONE)"
@echo "$(COLOR_OK) lint:zinsights Check style with flake8 for zinsights packages$(COLOR_NONE)"
@echo "$(COLOR_OK) lint:zaiguard Check style with flake8 for zaiguard packages$(COLOR_NONE)"
@echo "$(COLOR_OK) lint:zwa Check style with flake8 for zwa packages$(COLOR_NONE)"
@echo "$(COLOR_OK) coverage Check code coverage quickly with the default Python$(COLOR_NONE)"
@echo "$(COLOR_WARNING)test$(COLOR_NONE)"
Expand All @@ -52,6 +53,7 @@ help:
@echo "$(COLOR_OK) test:integration:zia Run only zia integration tests$(COLOR_NONE)"
@echo "$(COLOR_OK) test:integration:zpa Run only zpa integration tests$(COLOR_NONE)"
@echo "$(COLOR_OK) test:integration:zinsights Run only zinsights integration tests$(COLOR_NONE)"
@echo "$(COLOR_OK) test:integration:zaiguard Run only zaiguard integration tests$(COLOR_NONE)"
@echo "$(COLOR_WARNING)build$(COLOR_NONE)"
@echo "$(COLOR_OK) build:dist Build the distribution for publishing$(COLOR_NONE)"
@echo "$(COLOR_WARNING)publish$(COLOR_NONE)"
Expand Down Expand Up @@ -127,6 +129,10 @@ lint\:zeasm:
poetry run flake8 zscaler/zeasm --count --exit-zero --max-complexity=10 --max-line-length=127 --statistics
poetry run flake8 zscaler/zeasm --count --select=E9,F63,F7,F82 --show-source --statistics

lint\:zaiguard:
poetry run flake8 zscaler/zaiguard --count --exit-zero --max-complexity=10 --max-line-length=127 --statistics
poetry run flake8 zscaler/zaiguard --count --select=E9,F63,F7,F82 --show-source --statistics

format:
poetry run black .

Expand Down Expand Up @@ -328,19 +334,19 @@ test\:integration\:live:

sweep\:zia:
@echo "$(COLOR_WARNING)WARNING: This will destroy infrastructure. Use only in development accounts.$(COLOR_NONE)"
ZIA_SDK_TEST_SWEEP=true python tests/integration/zia/sweep/run_sweep.py --sweep
ZIA_SDK_TEST_SWEEP=true poetry run python tests/integration/zia/sweep/run_sweep.py --sweep

sweep\:zpa:
@echo "$(COLOR_WARNING)WARNING: This will destroy infrastructure. Use only in development accounts.$(COLOR_NONE)"
ZPA_SDK_TEST_SWEEP=true python tests/integration/zpa/sweep/run_sweep.py --sweep
ZPA_SDK_TEST_SWEEP=true poetry run python tests/integration/zpa/sweep/run_sweep.py --sweep

sweep\:zidentity:
@echo "$(COLOR_WARNING)WARNING: This will destroy infrastructure. Use only in development accounts.$(COLOR_NONE)"
ZIDENTITY_SDK_TEST_SWEEP=true python tests/integration/zidentity/sweep/run_sweep.py --sweep
ZIDENTITY_SDK_TEST_SWEEP=true poetry run python tests/integration/zidentity/sweep/run_sweep.py --sweep

sweep\:zinsights:
@echo "$(COLOR_WARNING)WARNING: This will destroy infrastructure. Use only in development accounts.$(COLOR_NONE)"
ZINSIGHTS_SDK_TEST_SWEEP=true python tests/integration/zinsights/sweep/run_sweep.py --sweep
ZINSIGHTS_SDK_TEST_SWEEP=true poetry run python tests/integration/zinsights/sweep/run_sweep.py --sweep


build\:dist:
Expand Down
1 change: 0 additions & 1 deletion docsrc/dev_requirements.txt
Original file line number Diff line number Diff line change
Expand Up @@ -14,5 +14,4 @@ python-box>=7.3.2
pydash>=8.0.5
aenum>=3.1.11
arrow>=1.3.0
flatdict>=4.0.0
pytz
8 changes: 8 additions & 0 deletions docsrc/index.rst
Original file line number Diff line number Diff line change
Expand Up @@ -15,6 +15,7 @@
zs/zidentity/index
zs/zinsights/index
zs/zeasm/index
zs/zaiguard/index
zs/guides/index

Official Python SDK for the Zscaler Products
Expand Down Expand Up @@ -61,6 +62,7 @@ across multiple products such as:
- `Zidentity API <https://help.zscaler.com/zidentity/understanding-zidentity-apis>`__
- `Z-Insights API <https://help.zscaler.com/zinsights/getting-started-zinsights-api>`__
- `EASM API <https://help.zscaler.com/easm/easm-api/api-developer-reference-guide>`__
- `Zscaler AI Guard API <https://help.zscaler.com/zaiguard/getting-started-zaiguard-api>`__

This SDK is designed to support the new Zscaler API framework
`OneAPI <https://help.zscaler.com/oneapi/understanding-oneapi>`__ via a
Expand Down Expand Up @@ -169,6 +171,11 @@ You'll also need
- `EASM
API <https://help.zscaler.com/easm/easm-api/api-developer-reference-guide>`__

- `Z-Insights
API <https://help.zscaler.com/zscaler-analytics>`__

- `Zscaler AI Guard API <https://help.zscaler.com/zaiguard/getting-started-zaiguard-api>`__

Usage guide
-----------

Expand Down Expand Up @@ -228,6 +235,7 @@ programmatic interaction with the following products:
API <https://help.zscaler.com/zinsights/getting-started-zinsights-api>`__
- `EASM
API <https://help.zscaler.com/easm/easm-api/api-developer-reference-guide>`__
- `Zscaler AI Guard API <https://help.zscaler.com/zaiguard/getting-started-zaiguard-api>`__

**NOTE** All other products such as Zscaler Cloud Connector (ZTW) and
Zscaler Digital Experience (ZDX) are supported only via the legacy
Expand Down
40 changes: 38 additions & 2 deletions docsrc/zs/guides/release_notes.rst
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,43 @@ Release Notes
Zscaler Python SDK Changelog
----------------------------

1.9.13 (January 22, 2025)
1.9.14 (February 10, 2026)
---------------------------

Notes
-----

- Python Versions: **v3.9, v3.10, v3.11, v3.12**

Enhancements:
-------------

Zscaler AI Guard
^^^^^^^^^^^^^^^^^^

(`#457 <https://github.com/zscaler/zscaler-sdk-python/pull/457>`_) - Added new Zscaler AI Guard API endpoints:

- ``/detection/execute-policy``
- ``/detection/resolve-and-execute-policy``

ZIA API
^^^^^^^

(`#457 <https://github.com/zscaler/zscaler-sdk-python/pull/457>`_) - Added new attributes `url_type`, `regex_patterns`, and `regex_patterns_retaining_parent_category` to ZIA `url_categories` resource to specify whether the category uses exact URLs or regex patterns. Supported values are `EXACT` and `REGEX`. See `Zscaler Release Notes 2026 <https://help.zscaler.com/zia/release-upgrade-summary-2026>`_ for details. To enable this feature, contact Zscaler Support.


ZTW API
^^^^^^^

(`#457 <https://github.com/zscaler/zscaler-sdk-python/pull/457>`_) - Added ``DELETE`` method for ``forwarding_rules`` resource.

Bug Fixes:
----------

(`#457 <https://github.com/zscaler/zscaler-sdk-python/pull/457>`_) - Replaced ``flatdict`` dependency with internal ``flatten_dict``/``unflatten_dict`` helpers to fix build failures on ``setuptools 82+``. Thanks `@pankaj28843 <https://github.com/pankaj28843>`_ for reporting `#454 <https://github.com/zscaler/zscaler-sdk-python/issues/454>`_ and `@enza252 <https://github.com/enza252>`_ for the `initial implementation <https://github.com/zscaler/zscaler-sdk-python/pull/455>`_.


1.9.13 (January 22, 2026)
---------------------------

Notes
Expand All @@ -19,7 +55,7 @@ Notes
(`#450 <https://github.com/zscaler/zscaler-sdk-python/pull/450>`_) - Added new function `get_rule_type_label` to retrieves a list of rule labels based on the specified rule type


1.9.12 (January 19, 2025)
1.9.12 (January 19, 2026)
---------------------------

Notes
Expand Down
14 changes: 14 additions & 0 deletions docsrc/zs/zaiguard/index.rst
Original file line number Diff line number Diff line change
@@ -0,0 +1,14 @@
Zscaler AI Guard
=================
This package covers the Zscaler AI Guard interface.

.. toctree::
:glob:
:hidden:

*

.. automodule:: zscaler.zaiguard
:members:
:undoc-members:
:show-inheritance:
12 changes: 12 additions & 0 deletions docsrc/zs/zaiguard/policy_detection.rst
Original file line number Diff line number Diff line change
@@ -0,0 +1,12 @@
Policy Detection
-----------------

The following methods allow for interaction with the Zscaler AI Guard Policy Detection API endpoints.

Methods are accessible via ``zaiguard.policy_detection``
.. _zaiguard-policy_detection:

.. automodule:: zscaler.zaiguard.policy_detection
:members:
:undoc-members:
:show-inheritance:
Loading
Loading