Skip to content

Releases: zscaler/zscaler-sdk-python

v1.9.17

13 Mar 04:11
ad8c9b9

Choose a tag to compare

1.9.17 (March 12, 2025)

Notes

  • Python Versions: v3.10, v3.11, v3.12

Breaking Changes

  • Python 3.9 no longer supported. Minimum required Python version is now 3.10. This change resolves dependency conflicts with vcrpy and urllib3.

Enhancements

  • PR #467 - Added ZPA Tag Controller resources:

    • tag_namespace - Tag namespaces: list, get, get_by_name, create, update, delete, update_namespace_status
    • tag_key - Tag keys (scoped to namespace): list, get, get_by_name, create, update, delete, bulk_update_status
    • tag_group - Tag groups: list, get, get_by_name, create, update, delete
    • Access via client.zpa.tag_namespace, client.zpa.tag_key, client.zpa.tag_group
  • PR #467 - Added ZTB (Zero Trust Branch) package resources:

    • alarms - Alarms: list_alarms, get_alarm, create_alarm, update_alarm_patch, update_alarm_put, delete_alarm, bulk_acknowledge, bulk_acknowledge_all, bulk_ignore, bulk_ignore_all
    • api_keys - API Key Auth: list_api_keys, create_api_key, revoke_api_key
    • app_connector_config - App Connector Config: get_app_connector_config, create_app_connector_config, delete_app_connector
    • devices - Devices: list_active_devices, list_devices_by_category, get_device_tags, get_group_by_list, list_operating_systems, get_dhcp_history, get_device_details_v2, get_device_details_v3, get_filter_values, list_devices_group_by
    • groups_router - Groups Router: list_groups, get_group, create_group, update_group_patch, update_group_put, delete_group
    • template_router - Template Router: list_templates, get_template, create_template, update_template_put, delete_template, list_template_interfaces, list_template_names
    • Access via client.ztb.alarms, client.ztb.api_keys, client.ztb.app_connector_config, client.ztb.devices, client.ztb.groups_router, client.ztb.template_router, or via LegacyZTBClient for API key authentication

v1.9.16

17 Feb 04:28

Choose a tag to compare

1.9.16 (February 16, 2025)

Notes

  • Python Versions: v3.9, v3.10, v3.11, v3.12

Bug Fixes:

  • PR #460 - Fixed URLCategory model assigning function reference instead of calling form_list for regex_patterns and regex_patterns_retaining_parent_category

v1.9.15

14 Feb 02:10
11ed72a

Choose a tag to compare

1.9.15 (February 16, 2026)

Notes

  • Python Versions: v3.9, v3.10, v3.11, v3.12

Enhancements:

  • PR #459 - Added support to the following ZIA Endpoints:

    • Added GET /customFileTypes Retrieves the list of custom file types. Custom file types can be configured as rule conditions in different ZIA policies.
    • Added POST /customFileTypes Adds a new custom file type.
    • Added PUT /customFileTypes Updates information for a custom file type based on the specified ID
    • Added DELETE /customFileTypes/{id} Deletes a custom file type based on the specified ID
    • Added GET /customFileTypes/count Retrieves the count of custom file types available
    • Added GET /fileTypeCategories Retrieves the list of all file types, including predefined and custom file types
  • PR #459 - 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 for details. To enable this feature, contact Zscaler Support.

  • PR #459 - Added new attributes to ZIA:

    • ipscontrolpolicies: eunEnabled, and eunTemplateId
    • firewalldnscontrolpolicies: isWebEunEnabled and defaultDnsRuleNameUsed
    • dlp_web_rules: eunTemplateId
  • PR #459 - Added new tags field to ZPA applicationsegment

  • PR #459 - Added new attributes to all ZPA Application Segments:

    • policyStyle to enable FQDN-to-IP Policy Evaluation

Bug Fixes

  • PR #459 - Fixed URL formatting parameter for ZIA resource casb_dlp_rules
  • PR #459 - Fixed URL formatting parameter for ZIA function update_dc_exclusion. API requires the ID as JSON attribute and not as a parameter.

v1.9.14

11 Feb 02:49

Choose a tag to compare

1.9.14 (February 10, 2026)

Notes

  • Python Versions: v3.9, v3.10, v3.11, v3.12

Enhancements:

Zscaler AI Guard

  • PR #457 - Added new Zscaler AI Guard API endpoints
    • /detection/execute-policy
    • /detection/resolve-and-execute-policy

ZTW API

  • PR #457 - Added DELETE method for forwarding_rules resource.

  • PR #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 for details. To enable this feature, contact Zscaler Support.

Bug Fixes

v1.9.13

22 Jan 20:10
146c1af

Choose a tag to compare

1.9.13 (January 22, 2025)

Notes

  • Python Versions: v3.9, v3.10, v3.11, v3.12
  • PR #450 - Added new CRUD functioins for ZTW provisioning_url resource api.
  • PR #450 - Added new attribute dest_workload_groups_ids to ZTW forwarding_rules resource
  • PR #450 - Added new function get_rule_type_label to retrieves a list of rule labels based on the specified rule type

v1.9.12

19 Jan 23:24

Choose a tag to compare

1.9.12 (2026-01-19)

Bug Fixes

  • Added New VCR Unit Tests (#444) (7f13a31)
    • PR #450 - Added new pagination parameters to ZIA url_filtering_rule
    • PR #450 - Added new ZTW attribute src_workload_groups to fowarding_rules

v1.9.11

16 Dec 18:39

Choose a tag to compare

1.9.11 (December 16, 2025)

Notes

  • Python Versions: v3.9, v3.10, v3.11, v3.12
  • PR #443 - Removed extraneous Z-Insights domain modules (data_protection, genai, industry_peer, news_feed, risk_score, sandbox) that were incorrectly created for GraphQL types not exposed in the root Query. Z-Insights now correctly implements only the 6 queryable domains.

v1.9.10

16 Dec 02:19

Choose a tag to compare

1.9.10 (December 16, 2025)

Notes

  • Python Versions: v3.9, v3.10, v3.11, v3.12

Enhancements:

Z-Insights Analytics API Support (GraphQL)

  • PR #442 - Added comprehensive support for Z-Insights Analytics GraphQL API. Z-Insights provides unified real-time visibility into security analytics across web traffic, cyber security incidents, firewall activity, IoT devices, SaaS security, and Shadow IT discovery.
    • Added client.zinsights service with domain-specific API clients:
      • web_traffic - Web traffic analytics (location, protocols, threat categories, trends)
      • cyber_security - Security incidents and threat analysis
      • firewall - Zero Trust Firewall traffic and actions
      • saas_security - Cloud Access Security Broker (CASB) reports
      • shadow_it - Discovered application analytics and risk assessment
      • iot - IoT device visibility and classification statistics
    • Added GraphQL-specific error handling with GraphQLAPIError exception class
    • Implemented comprehensive input models with DRY architecture:
      • StringFilter - Universal filter supporting eq, ne, in, nin operations
      • Base classes BaseNameFilterBy and BaseNameTotalOrderBy for code reuse
      • Domain-specific filters and ordering options for all API domains
    • Added 14 enum types for type-safe API interactions (SortOrder, WebTrafficUnits, TrendInterval, etc.)
    • Included 6 comprehensive example scripts demonstrating real-world usage patterns
    • Full support for filtering, ordering, pagination, trend data, and nested GraphQL queries
    • Compatible with OneAPI authentication only (OAuth2.0 via Zidentity)

v1.9.9

11 Dec 17:47

Choose a tag to compare

1.9.9 (December 11, 2025)

Notes

  • Python Versions: v3.9, v3.10, v3.11, v3.12

Bug Fixes:

  • PR #439 - Fixed ZPA legacy client retry-after header parsing for non-standard format with 's' suffix (e.g., "8s" instead of "8").
  • PR #439 - Fixed ZIA legacy client Retry-After header parsing for format with " seconds" suffix (e.g., "0 seconds").
  • PR #439 - Fixed ZTW legacy client Retry-After header parsing for format with " seconds" suffix (e.g., "0 seconds").

v1.9.8

11 Dec 01:53

Choose a tag to compare

1.9.8(December 10, 2025)

Notes

  • Python Versions: v3.9, v3.10, v3.11, v3.12

Bug Fixes:

  • PR #438 - Fixed ZPA Legacy Client missing 429 rate limiting handling. The send() method now properly retries on 429 responses using retry-after header with fallback to default 2 seconds.
  • PR #438 - Added unit tests for legacy client rate limiting across all legacy clients (ZPA, ZIA, ZCC, ZDX, ZTW, ZWA).