zscaler-sdk-python 1.4.1__tar.gz → 1.4.3__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 (380) hide show
  1. {zscaler_sdk_python-1.4.1 → zscaler_sdk_python-1.4.3}/PKG-INFO +1 -1
  2. {zscaler_sdk_python-1.4.1 → zscaler_sdk_python-1.4.3}/pyproject.toml +1 -1
  3. {zscaler_sdk_python-1.4.1 → zscaler_sdk_python-1.4.3}/zscaler/__init__.py +1 -1
  4. {zscaler_sdk_python-1.4.1 → zscaler_sdk_python-1.4.3}/zscaler/logger.py +2 -1
  5. {zscaler_sdk_python-1.4.1 → zscaler_sdk_python-1.4.3}/zscaler/request_executor.py +0 -7
  6. {zscaler_sdk_python-1.4.1 → zscaler_sdk_python-1.4.3}/zscaler/zcc/devices.py +1 -1
  7. {zscaler_sdk_python-1.4.1 → zscaler_sdk_python-1.4.3}/zscaler/zcc/legacy.py +2 -16
  8. {zscaler_sdk_python-1.4.1 → zscaler_sdk_python-1.4.3}/zscaler/zia/activate.py +1 -1
  9. {zscaler_sdk_python-1.4.1 → zscaler_sdk_python-1.4.3}/zscaler/zia/alert_subscriptions.py +1 -1
  10. {zscaler_sdk_python-1.4.1 → zscaler_sdk_python-1.4.3}/zscaler/zia/authentication_settings.py +1 -7
  11. {zscaler_sdk_python-1.4.1 → zscaler_sdk_python-1.4.3}/zscaler/zia/bandwidth_classes.py +0 -1
  12. {zscaler_sdk_python-1.4.1 → zscaler_sdk_python-1.4.3}/zscaler/zia/bandwidth_control_rules.py +8 -7
  13. {zscaler_sdk_python-1.4.1 → zscaler_sdk_python-1.4.3}/zscaler/zia/cloud_firewall.py +1 -1
  14. {zscaler_sdk_python-1.4.1 → zscaler_sdk_python-1.4.3}/zscaler/zia/dns_gatways.py +1 -1
  15. {zscaler_sdk_python-1.4.1 → zscaler_sdk_python-1.4.3}/zscaler/zia/legacy.py +2 -3
  16. {zscaler_sdk_python-1.4.1 → zscaler_sdk_python-1.4.3}/zscaler/zia/models/cloud_firewall_rules.py +2 -2
  17. {zscaler_sdk_python-1.4.1 → zscaler_sdk_python-1.4.3}/zscaler/zia/proxies.py +2 -1
  18. {zscaler_sdk_python-1.4.1 → zscaler_sdk_python-1.4.3}/zscaler/zia/traffic_extranet.py +2 -1
  19. {zscaler_sdk_python-1.4.1 → zscaler_sdk_python-1.4.3}/zscaler/zia/zia_service.py +1 -1
  20. {zscaler_sdk_python-1.4.1 → zscaler_sdk_python-1.4.3}/zscaler/zpa/app_protection.py +25 -48
  21. {zscaler_sdk_python-1.4.1 → zscaler_sdk_python-1.4.3}/zscaler/zpa/app_segments_ba.py +19 -7
  22. {zscaler_sdk_python-1.4.1 → zscaler_sdk_python-1.4.3}/zscaler/zpa/app_segments_ba_v2.py +13 -4
  23. {zscaler_sdk_python-1.4.1 → zscaler_sdk_python-1.4.3}/zscaler/zpa/app_segments_inspection.py +12 -3
  24. {zscaler_sdk_python-1.4.1 → zscaler_sdk_python-1.4.3}/zscaler/zpa/app_segments_pra.py +12 -3
  25. {zscaler_sdk_python-1.4.1 → zscaler_sdk_python-1.4.3}/zscaler/zpa/application_segment.py +14 -4
  26. {zscaler_sdk_python-1.4.1 → zscaler_sdk_python-1.4.3}/zscaler/zpa/emergency_access.py +5 -6
  27. {zscaler_sdk_python-1.4.1 → zscaler_sdk_python-1.4.3}/zscaler/zpa/microtenants.py +0 -4
  28. {zscaler_sdk_python-1.4.1 → zscaler_sdk_python-1.4.3}/zscaler/zpa/models/app_protection_predefined_controls.py +5 -4
  29. {zscaler_sdk_python-1.4.1 → zscaler_sdk_python-1.4.3}/zscaler/zpa/models/app_protection_profile.py +15 -10
  30. {zscaler_sdk_python-1.4.1 → zscaler_sdk_python-1.4.3}/zscaler/zpa/models/application_segment.py +16 -10
  31. {zscaler_sdk_python-1.4.1 → zscaler_sdk_python-1.4.3}/zscaler/zpa/models/application_segment_lb.py +4 -2
  32. {zscaler_sdk_python-1.4.1 → zscaler_sdk_python-1.4.3}/zscaler/zpa/models/cbi_certificate.py +7 -1
  33. {zscaler_sdk_python-1.4.1 → zscaler_sdk_python-1.4.3}/zscaler/zpa/models/cbi_profile.py +32 -22
  34. {zscaler_sdk_python-1.4.1 → zscaler_sdk_python-1.4.3}/zscaler/zpa/models/emergency_access.py +29 -16
  35. {zscaler_sdk_python-1.4.1 → zscaler_sdk_python-1.4.3}/zscaler/zpa/models/server_group.py +1 -0
  36. {zscaler_sdk_python-1.4.1 → zscaler_sdk_python-1.4.3}/zscaler/zpa/policies.py +343 -58
  37. {zscaler_sdk_python-1.4.1 → zscaler_sdk_python-1.4.3}/zscaler/zpa/provisioning.py +2 -2
  38. {zscaler_sdk_python-1.4.1 → zscaler_sdk_python-1.4.3}/zscaler/zpa/role_controller.py +1 -1
  39. {zscaler_sdk_python-1.4.1 → zscaler_sdk_python-1.4.3}/LICENSE.md +0 -0
  40. {zscaler_sdk_python-1.4.1 → zscaler_sdk_python-1.4.3}/README.md +0 -0
  41. {zscaler_sdk_python-1.4.1 → zscaler_sdk_python-1.4.3}/zscaler/api_client.py +0 -0
  42. {zscaler_sdk_python-1.4.1 → zscaler_sdk_python-1.4.3}/zscaler/cache/__init__.py +0 -0
  43. {zscaler_sdk_python-1.4.1 → zscaler_sdk_python-1.4.3}/zscaler/cache/cache.py +0 -0
  44. {zscaler_sdk_python-1.4.1 → zscaler_sdk_python-1.4.3}/zscaler/cache/no_op_cache.py +0 -0
  45. {zscaler_sdk_python-1.4.1 → zscaler_sdk_python-1.4.3}/zscaler/cache/zscaler_cache.py +0 -0
  46. {zscaler_sdk_python-1.4.1 → zscaler_sdk_python-1.4.3}/zscaler/config/__init__.py +0 -0
  47. {zscaler_sdk_python-1.4.1 → zscaler_sdk_python-1.4.3}/zscaler/config/config_setter.py +0 -0
  48. {zscaler_sdk_python-1.4.1 → zscaler_sdk_python-1.4.3}/zscaler/config/config_validator.py +0 -0
  49. {zscaler_sdk_python-1.4.1 → zscaler_sdk_python-1.4.3}/zscaler/constants.py +0 -0
  50. {zscaler_sdk_python-1.4.1 → zscaler_sdk_python-1.4.3}/zscaler/error_messages.py +0 -0
  51. {zscaler_sdk_python-1.4.1 → zscaler_sdk_python-1.4.3}/zscaler/errors/__init__.py +0 -0
  52. {zscaler_sdk_python-1.4.1 → zscaler_sdk_python-1.4.3}/zscaler/errors/error.py +0 -0
  53. {zscaler_sdk_python-1.4.1 → zscaler_sdk_python-1.4.3}/zscaler/errors/http_error.py +0 -0
  54. {zscaler_sdk_python-1.4.1 → zscaler_sdk_python-1.4.3}/zscaler/errors/response_checker.py +0 -0
  55. {zscaler_sdk_python-1.4.1 → zscaler_sdk_python-1.4.3}/zscaler/errors/zscaler_api_error.py +0 -0
  56. {zscaler_sdk_python-1.4.1 → zscaler_sdk_python-1.4.3}/zscaler/exceptions/__init__.py +0 -0
  57. {zscaler_sdk_python-1.4.1 → zscaler_sdk_python-1.4.3}/zscaler/exceptions/exceptions.py +0 -0
  58. {zscaler_sdk_python-1.4.1 → zscaler_sdk_python-1.4.3}/zscaler/helpers.py +0 -0
  59. {zscaler_sdk_python-1.4.1 → zscaler_sdk_python-1.4.3}/zscaler/oneapi_client.py +0 -0
  60. {zscaler_sdk_python-1.4.1 → zscaler_sdk_python-1.4.3}/zscaler/oneapi_collection.py +0 -0
  61. {zscaler_sdk_python-1.4.1 → zscaler_sdk_python-1.4.3}/zscaler/oneapi_http_client.py +0 -0
  62. {zscaler_sdk_python-1.4.1 → zscaler_sdk_python-1.4.3}/zscaler/oneapi_oauth_client.py +0 -0
  63. {zscaler_sdk_python-1.4.1 → zscaler_sdk_python-1.4.3}/zscaler/oneapi_object.py +0 -0
  64. {zscaler_sdk_python-1.4.1 → zscaler_sdk_python-1.4.3}/zscaler/oneapi_response.py +0 -0
  65. {zscaler_sdk_python-1.4.1 → zscaler_sdk_python-1.4.3}/zscaler/ratelimiter/__init__.py +0 -0
  66. {zscaler_sdk_python-1.4.1 → zscaler_sdk_python-1.4.3}/zscaler/ratelimiter/ratelimiter.py +0 -0
  67. {zscaler_sdk_python-1.4.1 → zscaler_sdk_python-1.4.3}/zscaler/user_agent.py +0 -0
  68. {zscaler_sdk_python-1.4.1 → zscaler_sdk_python-1.4.3}/zscaler/utils.py +0 -0
  69. {zscaler_sdk_python-1.4.1 → zscaler_sdk_python-1.4.3}/zscaler/zcc/__init__.py +0 -0
  70. {zscaler_sdk_python-1.4.1 → zscaler_sdk_python-1.4.3}/zscaler/zcc/admin_user.py +0 -0
  71. {zscaler_sdk_python-1.4.1 → zscaler_sdk_python-1.4.3}/zscaler/zcc/company.py +0 -0
  72. {zscaler_sdk_python-1.4.1 → zscaler_sdk_python-1.4.3}/zscaler/zcc/entitlements.py +0 -0
  73. {zscaler_sdk_python-1.4.1 → zscaler_sdk_python-1.4.3}/zscaler/zcc/fail_open_policy.py +0 -0
  74. {zscaler_sdk_python-1.4.1 → zscaler_sdk_python-1.4.3}/zscaler/zcc/forwarding_profile.py +0 -0
  75. {zscaler_sdk_python-1.4.1 → zscaler_sdk_python-1.4.3}/zscaler/zcc/models/admin_roles.py +0 -0
  76. {zscaler_sdk_python-1.4.1 → zscaler_sdk_python-1.4.3}/zscaler/zcc/models/admin_user.py +0 -0
  77. {zscaler_sdk_python-1.4.1 → zscaler_sdk_python-1.4.3}/zscaler/zcc/models/devices.py +0 -0
  78. {zscaler_sdk_python-1.4.1 → zscaler_sdk_python-1.4.3}/zscaler/zcc/models/failopenpolicy.py +0 -0
  79. {zscaler_sdk_python-1.4.1 → zscaler_sdk_python-1.4.3}/zscaler/zcc/models/forwardingprofile.py +0 -0
  80. {zscaler_sdk_python-1.4.1 → zscaler_sdk_python-1.4.3}/zscaler/zcc/models/getcompanyinfo.py +0 -0
  81. {zscaler_sdk_python-1.4.1 → zscaler_sdk_python-1.4.3}/zscaler/zcc/models/manage_pass.py +0 -0
  82. {zscaler_sdk_python-1.4.1 → zscaler_sdk_python-1.4.3}/zscaler/zcc/models/secrets_otp.py +0 -0
  83. {zscaler_sdk_python-1.4.1 → zscaler_sdk_python-1.4.3}/zscaler/zcc/models/secrets_passwords.py +0 -0
  84. {zscaler_sdk_python-1.4.1 → zscaler_sdk_python-1.4.3}/zscaler/zcc/models/trustednetworks.py +0 -0
  85. {zscaler_sdk_python-1.4.1 → zscaler_sdk_python-1.4.3}/zscaler/zcc/models/webappservice.py +0 -0
  86. {zscaler_sdk_python-1.4.1 → zscaler_sdk_python-1.4.3}/zscaler/zcc/models/webpolicy.py +0 -0
  87. {zscaler_sdk_python-1.4.1 → zscaler_sdk_python-1.4.3}/zscaler/zcc/models/webprivacy.py +0 -0
  88. {zscaler_sdk_python-1.4.1 → zscaler_sdk_python-1.4.3}/zscaler/zcc/models/zdxgroupentitlements.py +0 -0
  89. {zscaler_sdk_python-1.4.1 → zscaler_sdk_python-1.4.3}/zscaler/zcc/models/zpagroupentitlements.py +0 -0
  90. {zscaler_sdk_python-1.4.1 → zscaler_sdk_python-1.4.3}/zscaler/zcc/secrets.py +0 -0
  91. {zscaler_sdk_python-1.4.1 → zscaler_sdk_python-1.4.3}/zscaler/zcc/trusted_networks.py +0 -0
  92. {zscaler_sdk_python-1.4.1 → zscaler_sdk_python-1.4.3}/zscaler/zcc/web_app_service.py +0 -0
  93. {zscaler_sdk_python-1.4.1 → zscaler_sdk_python-1.4.3}/zscaler/zcc/web_policy.py +0 -0
  94. {zscaler_sdk_python-1.4.1 → zscaler_sdk_python-1.4.3}/zscaler/zcc/web_privacy.py +0 -0
  95. {zscaler_sdk_python-1.4.1 → zscaler_sdk_python-1.4.3}/zscaler/zcc/zcc_service.py +0 -0
  96. {zscaler_sdk_python-1.4.1 → zscaler_sdk_python-1.4.3}/zscaler/zdx/__init__.py +0 -0
  97. {zscaler_sdk_python-1.4.1 → zscaler_sdk_python-1.4.3}/zscaler/zdx/admin.py +0 -0
  98. {zscaler_sdk_python-1.4.1 → zscaler_sdk_python-1.4.3}/zscaler/zdx/alerts.py +0 -0
  99. {zscaler_sdk_python-1.4.1 → zscaler_sdk_python-1.4.3}/zscaler/zdx/apps.py +0 -0
  100. {zscaler_sdk_python-1.4.1 → zscaler_sdk_python-1.4.3}/zscaler/zdx/devices.py +0 -0
  101. {zscaler_sdk_python-1.4.1 → zscaler_sdk_python-1.4.3}/zscaler/zdx/inventory.py +0 -0
  102. {zscaler_sdk_python-1.4.1 → zscaler_sdk_python-1.4.3}/zscaler/zdx/legacy.py +0 -0
  103. {zscaler_sdk_python-1.4.1 → zscaler_sdk_python-1.4.3}/zscaler/zdx/models/activeapplications.py +0 -0
  104. {zscaler_sdk_python-1.4.1 → zscaler_sdk_python-1.4.3}/zscaler/zdx/models/administration.py +0 -0
  105. {zscaler_sdk_python-1.4.1 → zscaler_sdk_python-1.4.3}/zscaler/zdx/models/alerts.py +0 -0
  106. {zscaler_sdk_python-1.4.1 → zscaler_sdk_python-1.4.3}/zscaler/zdx/models/application_users.py +0 -0
  107. {zscaler_sdk_python-1.4.1 → zscaler_sdk_python-1.4.3}/zscaler/zdx/models/applications.py +0 -0
  108. {zscaler_sdk_python-1.4.1 → zscaler_sdk_python-1.4.3}/zscaler/zdx/models/call_quality_metrics.py +0 -0
  109. {zscaler_sdk_python-1.4.1 → zscaler_sdk_python-1.4.3}/zscaler/zdx/models/common.py +0 -0
  110. {zscaler_sdk_python-1.4.1 → zscaler_sdk_python-1.4.3}/zscaler/zdx/models/devices.py +0 -0
  111. {zscaler_sdk_python-1.4.1 → zscaler_sdk_python-1.4.3}/zscaler/zdx/models/software_inventory.py +0 -0
  112. {zscaler_sdk_python-1.4.1 → zscaler_sdk_python-1.4.3}/zscaler/zdx/models/troubleshooting.py +0 -0
  113. {zscaler_sdk_python-1.4.1 → zscaler_sdk_python-1.4.3}/zscaler/zdx/models/users.py +0 -0
  114. {zscaler_sdk_python-1.4.1 → zscaler_sdk_python-1.4.3}/zscaler/zdx/troubleshooting.py +0 -0
  115. {zscaler_sdk_python-1.4.1 → zscaler_sdk_python-1.4.3}/zscaler/zdx/users.py +0 -0
  116. {zscaler_sdk_python-1.4.1 → zscaler_sdk_python-1.4.3}/zscaler/zdx/zdx_service.py +0 -0
  117. {zscaler_sdk_python-1.4.1 → zscaler_sdk_python-1.4.3}/zscaler/zia/__init__.py +0 -0
  118. {zscaler_sdk_python-1.4.1 → zscaler_sdk_python-1.4.3}/zscaler/zia/admin_roles.py +0 -0
  119. {zscaler_sdk_python-1.4.1 → zscaler_sdk_python-1.4.3}/zscaler/zia/admin_users.py +0 -0
  120. {zscaler_sdk_python-1.4.1 → zscaler_sdk_python-1.4.3}/zscaler/zia/advanced_settings.py +0 -0
  121. {zscaler_sdk_python-1.4.1 → zscaler_sdk_python-1.4.3}/zscaler/zia/apptotal.py +0 -0
  122. {zscaler_sdk_python-1.4.1 → zscaler_sdk_python-1.4.3}/zscaler/zia/atp_policy.py +0 -0
  123. {zscaler_sdk_python-1.4.1 → zscaler_sdk_python-1.4.3}/zscaler/zia/audit_logs.py +0 -0
  124. {zscaler_sdk_python-1.4.1 → zscaler_sdk_python-1.4.3}/zscaler/zia/cloud_app_instances.py +0 -0
  125. {zscaler_sdk_python-1.4.1 → zscaler_sdk_python-1.4.3}/zscaler/zia/cloud_applications.py +0 -0
  126. {zscaler_sdk_python-1.4.1 → zscaler_sdk_python-1.4.3}/zscaler/zia/cloud_browser_isolation.py +0 -0
  127. {zscaler_sdk_python-1.4.1 → zscaler_sdk_python-1.4.3}/zscaler/zia/cloud_firewall_dns.py +0 -0
  128. {zscaler_sdk_python-1.4.1 → zscaler_sdk_python-1.4.3}/zscaler/zia/cloud_firewall_ips.py +0 -0
  129. {zscaler_sdk_python-1.4.1 → zscaler_sdk_python-1.4.3}/zscaler/zia/cloud_firewall_rules.py +0 -0
  130. {zscaler_sdk_python-1.4.1 → zscaler_sdk_python-1.4.3}/zscaler/zia/cloud_nss.py +0 -0
  131. {zscaler_sdk_python-1.4.1 → zscaler_sdk_python-1.4.3}/zscaler/zia/cloudappcontrol.py +0 -0
  132. {zscaler_sdk_python-1.4.1 → zscaler_sdk_python-1.4.3}/zscaler/zia/dedicated_ip_gateways.py +0 -0
  133. {zscaler_sdk_python-1.4.1 → zscaler_sdk_python-1.4.3}/zscaler/zia/device_management.py +0 -0
  134. {zscaler_sdk_python-1.4.1 → zscaler_sdk_python-1.4.3}/zscaler/zia/dlp_dictionary.py +0 -0
  135. {zscaler_sdk_python-1.4.1 → zscaler_sdk_python-1.4.3}/zscaler/zia/dlp_engine.py +0 -0
  136. {zscaler_sdk_python-1.4.1 → zscaler_sdk_python-1.4.3}/zscaler/zia/dlp_resources.py +0 -0
  137. {zscaler_sdk_python-1.4.1 → zscaler_sdk_python-1.4.3}/zscaler/zia/dlp_templates.py +0 -0
  138. {zscaler_sdk_python-1.4.1 → zscaler_sdk_python-1.4.3}/zscaler/zia/dlp_web_rules.py +0 -0
  139. {zscaler_sdk_python-1.4.1 → zscaler_sdk_python-1.4.3}/zscaler/zia/end_user_notification.py +0 -0
  140. {zscaler_sdk_python-1.4.1 → zscaler_sdk_python-1.4.3}/zscaler/zia/file_type_control_rule.py +0 -0
  141. {zscaler_sdk_python-1.4.1 → zscaler_sdk_python-1.4.3}/zscaler/zia/forwarding_control.py +0 -0
  142. {zscaler_sdk_python-1.4.1 → zscaler_sdk_python-1.4.3}/zscaler/zia/ftp_control_policy.py +0 -0
  143. {zscaler_sdk_python-1.4.1 → zscaler_sdk_python-1.4.3}/zscaler/zia/gre_tunnel.py +0 -0
  144. {zscaler_sdk_python-1.4.1 → zscaler_sdk_python-1.4.3}/zscaler/zia/intermediate_certificates.py +0 -0
  145. {zscaler_sdk_python-1.4.1 → zscaler_sdk_python-1.4.3}/zscaler/zia/iot_report.py +0 -0
  146. {zscaler_sdk_python-1.4.1 → zscaler_sdk_python-1.4.3}/zscaler/zia/ipv6_config.py +0 -0
  147. {zscaler_sdk_python-1.4.1 → zscaler_sdk_python-1.4.3}/zscaler/zia/locations.py +0 -0
  148. {zscaler_sdk_python-1.4.1 → zscaler_sdk_python-1.4.3}/zscaler/zia/malware_protection_policy.py +0 -0
  149. {zscaler_sdk_python-1.4.1 → zscaler_sdk_python-1.4.3}/zscaler/zia/mobile_threat_settings.py +0 -0
  150. {zscaler_sdk_python-1.4.1 → zscaler_sdk_python-1.4.3}/zscaler/zia/models/__init__.py +0 -0
  151. {zscaler_sdk_python-1.4.1 → zscaler_sdk_python-1.4.3}/zscaler/zia/models/activation.py +0 -0
  152. {zscaler_sdk_python-1.4.1 → zscaler_sdk_python-1.4.3}/zscaler/zia/models/admin_roles.py +0 -0
  153. {zscaler_sdk_python-1.4.1 → zscaler_sdk_python-1.4.3}/zscaler/zia/models/admin_users.py +0 -0
  154. {zscaler_sdk_python-1.4.1 → zscaler_sdk_python-1.4.3}/zscaler/zia/models/advanced_settings.py +0 -0
  155. {zscaler_sdk_python-1.4.1 → zscaler_sdk_python-1.4.3}/zscaler/zia/models/advanced_threat_settings.py +0 -0
  156. {zscaler_sdk_python-1.4.1 → zscaler_sdk_python-1.4.3}/zscaler/zia/models/alert_subscriptions.py +0 -0
  157. {zscaler_sdk_python-1.4.1 → zscaler_sdk_python-1.4.3}/zscaler/zia/models/apptotal.py +0 -0
  158. {zscaler_sdk_python-1.4.1 → zscaler_sdk_python-1.4.3}/zscaler/zia/models/authentication_settings.py +0 -0
  159. {zscaler_sdk_python-1.4.1 → zscaler_sdk_python-1.4.3}/zscaler/zia/models/bandwidth_classes.py +0 -0
  160. {zscaler_sdk_python-1.4.1 → zscaler_sdk_python-1.4.3}/zscaler/zia/models/bandwidth_control_rules.py +0 -0
  161. {zscaler_sdk_python-1.4.1 → zscaler_sdk_python-1.4.3}/zscaler/zia/models/cloud_app_instances.py +0 -0
  162. {zscaler_sdk_python-1.4.1 → zscaler_sdk_python-1.4.3}/zscaler/zia/models/cloud_app_policy.py +0 -0
  163. {zscaler_sdk_python-1.4.1 → zscaler_sdk_python-1.4.3}/zscaler/zia/models/cloud_browser_isolation.py +0 -0
  164. {zscaler_sdk_python-1.4.1 → zscaler_sdk_python-1.4.3}/zscaler/zia/models/cloud_firewall_app_services.py +0 -0
  165. {zscaler_sdk_python-1.4.1 → zscaler_sdk_python-1.4.3}/zscaler/zia/models/cloud_firewall_destination_groups.py +0 -0
  166. {zscaler_sdk_python-1.4.1 → zscaler_sdk_python-1.4.3}/zscaler/zia/models/cloud_firewall_dns_rules.py +0 -0
  167. {zscaler_sdk_python-1.4.1 → zscaler_sdk_python-1.4.3}/zscaler/zia/models/cloud_firewall_ips_rules.py +0 -0
  168. {zscaler_sdk_python-1.4.1 → zscaler_sdk_python-1.4.3}/zscaler/zia/models/cloud_firewall_nw_application_groups.py +0 -0
  169. {zscaler_sdk_python-1.4.1 → zscaler_sdk_python-1.4.3}/zscaler/zia/models/cloud_firewall_nw_applications.py +0 -0
  170. {zscaler_sdk_python-1.4.1 → zscaler_sdk_python-1.4.3}/zscaler/zia/models/cloud_firewall_nw_service.py +0 -0
  171. {zscaler_sdk_python-1.4.1 → zscaler_sdk_python-1.4.3}/zscaler/zia/models/cloud_firewall_nw_service_groups.py +0 -0
  172. {zscaler_sdk_python-1.4.1 → zscaler_sdk_python-1.4.3}/zscaler/zia/models/cloud_firewall_source_groups.py +0 -0
  173. {zscaler_sdk_python-1.4.1 → zscaler_sdk_python-1.4.3}/zscaler/zia/models/cloud_firewall_time_windows.py +0 -0
  174. {zscaler_sdk_python-1.4.1 → zscaler_sdk_python-1.4.3}/zscaler/zia/models/cloud_nss.py +0 -0
  175. {zscaler_sdk_python-1.4.1 → zscaler_sdk_python-1.4.3}/zscaler/zia/models/cloudappcontrol.py +0 -0
  176. {zscaler_sdk_python-1.4.1 → zscaler_sdk_python-1.4.3}/zscaler/zia/models/common.py +0 -0
  177. {zscaler_sdk_python-1.4.1 → zscaler_sdk_python-1.4.3}/zscaler/zia/models/dedicated_ip_gateways.py +0 -0
  178. {zscaler_sdk_python-1.4.1 → zscaler_sdk_python-1.4.3}/zscaler/zia/models/device_groups.py +0 -0
  179. {zscaler_sdk_python-1.4.1 → zscaler_sdk_python-1.4.3}/zscaler/zia/models/devices.py +0 -0
  180. {zscaler_sdk_python-1.4.1 → zscaler_sdk_python-1.4.3}/zscaler/zia/models/dlp_dictionary.py +0 -0
  181. {zscaler_sdk_python-1.4.1 → zscaler_sdk_python-1.4.3}/zscaler/zia/models/dlp_engine.py +0 -0
  182. {zscaler_sdk_python-1.4.1 → zscaler_sdk_python-1.4.3}/zscaler/zia/models/dlp_resources.py +0 -0
  183. {zscaler_sdk_python-1.4.1 → zscaler_sdk_python-1.4.3}/zscaler/zia/models/dlp_templates.py +0 -0
  184. {zscaler_sdk_python-1.4.1 → zscaler_sdk_python-1.4.3}/zscaler/zia/models/dlp_web_rules.py +0 -0
  185. {zscaler_sdk_python-1.4.1 → zscaler_sdk_python-1.4.3}/zscaler/zia/models/dns_gatways.py +0 -0
  186. {zscaler_sdk_python-1.4.1 → zscaler_sdk_python-1.4.3}/zscaler/zia/models/endusernotification.py +0 -0
  187. {zscaler_sdk_python-1.4.1 → zscaler_sdk_python-1.4.3}/zscaler/zia/models/filetyperules.py +0 -0
  188. {zscaler_sdk_python-1.4.1 → zscaler_sdk_python-1.4.3}/zscaler/zia/models/forwarding_control_policy.py +0 -0
  189. {zscaler_sdk_python-1.4.1 → zscaler_sdk_python-1.4.3}/zscaler/zia/models/ftp_control_policy.py +0 -0
  190. {zscaler_sdk_python-1.4.1 → zscaler_sdk_python-1.4.3}/zscaler/zia/models/gre_recommended_list.py +0 -0
  191. {zscaler_sdk_python-1.4.1 → zscaler_sdk_python-1.4.3}/zscaler/zia/models/gre_tunnel_info.py +0 -0
  192. {zscaler_sdk_python-1.4.1 → zscaler_sdk_python-1.4.3}/zscaler/zia/models/gre_tunnels.py +0 -0
  193. {zscaler_sdk_python-1.4.1 → zscaler_sdk_python-1.4.3}/zscaler/zia/models/gre_vips.py +0 -0
  194. {zscaler_sdk_python-1.4.1 → zscaler_sdk_python-1.4.3}/zscaler/zia/models/intermediate_certificates.py +0 -0
  195. {zscaler_sdk_python-1.4.1 → zscaler_sdk_python-1.4.3}/zscaler/zia/models/iotreport.py +0 -0
  196. {zscaler_sdk_python-1.4.1 → zscaler_sdk_python-1.4.3}/zscaler/zia/models/ipv6_config.py +0 -0
  197. {zscaler_sdk_python-1.4.1 → zscaler_sdk_python-1.4.3}/zscaler/zia/models/location_group.py +0 -0
  198. {zscaler_sdk_python-1.4.1 → zscaler_sdk_python-1.4.3}/zscaler/zia/models/location_management.py +0 -0
  199. {zscaler_sdk_python-1.4.1 → zscaler_sdk_python-1.4.3}/zscaler/zia/models/malware_protection_settings.py +0 -0
  200. {zscaler_sdk_python-1.4.1 → zscaler_sdk_python-1.4.3}/zscaler/zia/models/mobile_threat_settings.py +0 -0
  201. {zscaler_sdk_python-1.4.1 → zscaler_sdk_python-1.4.3}/zscaler/zia/models/nat_control_policy.py +0 -0
  202. {zscaler_sdk_python-1.4.1 → zscaler_sdk_python-1.4.3}/zscaler/zia/models/nss_servers.py +0 -0
  203. {zscaler_sdk_python-1.4.1 → zscaler_sdk_python-1.4.3}/zscaler/zia/models/organization_information.py +0 -0
  204. {zscaler_sdk_python-1.4.1 → zscaler_sdk_python-1.4.3}/zscaler/zia/models/pac_files.py +0 -0
  205. {zscaler_sdk_python-1.4.1 → zscaler_sdk_python-1.4.3}/zscaler/zia/models/proxies.py +0 -0
  206. {zscaler_sdk_python-1.4.1 → zscaler_sdk_python-1.4.3}/zscaler/zia/models/proxy_gatways.py +0 -0
  207. {zscaler_sdk_python-1.4.1 → zscaler_sdk_python-1.4.3}/zscaler/zia/models/remoteassistance.py +0 -0
  208. {zscaler_sdk_python-1.4.1 → zscaler_sdk_python-1.4.3}/zscaler/zia/models/risk_profiles.py +0 -0
  209. {zscaler_sdk_python-1.4.1 → zscaler_sdk_python-1.4.3}/zscaler/zia/models/rule_labels.py +0 -0
  210. {zscaler_sdk_python-1.4.1 → zscaler_sdk_python-1.4.3}/zscaler/zia/models/sandboxrules.py +0 -0
  211. {zscaler_sdk_python-1.4.1 → zscaler_sdk_python-1.4.3}/zscaler/zia/models/security_policy_settings.py +0 -0
  212. {zscaler_sdk_python-1.4.1 → zscaler_sdk_python-1.4.3}/zscaler/zia/models/shadow_it_report.py +0 -0
  213. {zscaler_sdk_python-1.4.1 → zscaler_sdk_python-1.4.3}/zscaler/zia/models/ssl_inspection_rules.py +0 -0
  214. {zscaler_sdk_python-1.4.1 → zscaler_sdk_python-1.4.3}/zscaler/zia/models/subclouds.py +0 -0
  215. {zscaler_sdk_python-1.4.1 → zscaler_sdk_python-1.4.3}/zscaler/zia/models/system_audit.py +0 -0
  216. {zscaler_sdk_python-1.4.1 → zscaler_sdk_python-1.4.3}/zscaler/zia/models/tenancy_restriction_profile.py +0 -0
  217. {zscaler_sdk_python-1.4.1 → zscaler_sdk_python-1.4.3}/zscaler/zia/models/time_intervals.py +0 -0
  218. {zscaler_sdk_python-1.4.1 → zscaler_sdk_python-1.4.3}/zscaler/zia/models/traffic_datacenters.py +0 -0
  219. {zscaler_sdk_python-1.4.1 → zscaler_sdk_python-1.4.3}/zscaler/zia/models/traffic_dc_exclusions.py +0 -0
  220. {zscaler_sdk_python-1.4.1 → zscaler_sdk_python-1.4.3}/zscaler/zia/models/traffic_extranet.py +0 -0
  221. {zscaler_sdk_python-1.4.1 → zscaler_sdk_python-1.4.3}/zscaler/zia/models/traffic_static_ip.py +0 -0
  222. {zscaler_sdk_python-1.4.1 → zscaler_sdk_python-1.4.3}/zscaler/zia/models/traffic_vpn_credentials.py +0 -0
  223. {zscaler_sdk_python-1.4.1 → zscaler_sdk_python-1.4.3}/zscaler/zia/models/url_filter_cloud_app_settings.py +0 -0
  224. {zscaler_sdk_python-1.4.1 → zscaler_sdk_python-1.4.3}/zscaler/zia/models/url_filtering_rules.py +0 -0
  225. {zscaler_sdk_python-1.4.1 → zscaler_sdk_python-1.4.3}/zscaler/zia/models/urlcategory.py +0 -0
  226. {zscaler_sdk_python-1.4.1 → zscaler_sdk_python-1.4.3}/zscaler/zia/models/user_management.py +0 -0
  227. {zscaler_sdk_python-1.4.1 → zscaler_sdk_python-1.4.3}/zscaler/zia/models/workload_groups.py +0 -0
  228. {zscaler_sdk_python-1.4.1 → zscaler_sdk_python-1.4.3}/zscaler/zia/models/zpa_gateway.py +0 -0
  229. {zscaler_sdk_python-1.4.1 → zscaler_sdk_python-1.4.3}/zscaler/zia/nat_control_policy.py +0 -0
  230. {zscaler_sdk_python-1.4.1 → zscaler_sdk_python-1.4.3}/zscaler/zia/nss_servers.py +0 -0
  231. {zscaler_sdk_python-1.4.1 → zscaler_sdk_python-1.4.3}/zscaler/zia/organization_information.py +0 -0
  232. {zscaler_sdk_python-1.4.1 → zscaler_sdk_python-1.4.3}/zscaler/zia/pac_files.py +0 -0
  233. {zscaler_sdk_python-1.4.1 → zscaler_sdk_python-1.4.3}/zscaler/zia/policy_export.py +0 -0
  234. {zscaler_sdk_python-1.4.1 → zscaler_sdk_python-1.4.3}/zscaler/zia/remote_assistance.py +0 -0
  235. {zscaler_sdk_python-1.4.1 → zscaler_sdk_python-1.4.3}/zscaler/zia/risk_profiles.py +0 -0
  236. {zscaler_sdk_python-1.4.1 → zscaler_sdk_python-1.4.3}/zscaler/zia/rule_labels.py +0 -0
  237. {zscaler_sdk_python-1.4.1 → zscaler_sdk_python-1.4.3}/zscaler/zia/sandbox.py +0 -0
  238. {zscaler_sdk_python-1.4.1 → zscaler_sdk_python-1.4.3}/zscaler/zia/sandbox_rules.py +0 -0
  239. {zscaler_sdk_python-1.4.1 → zscaler_sdk_python-1.4.3}/zscaler/zia/security_policy_settings.py +0 -0
  240. {zscaler_sdk_python-1.4.1 → zscaler_sdk_python-1.4.3}/zscaler/zia/shadow_it_report.py +0 -0
  241. {zscaler_sdk_python-1.4.1 → zscaler_sdk_python-1.4.3}/zscaler/zia/ssl_inspection_rules.py +0 -0
  242. {zscaler_sdk_python-1.4.1 → zscaler_sdk_python-1.4.3}/zscaler/zia/sub_clouds.py +0 -0
  243. {zscaler_sdk_python-1.4.1 → zscaler_sdk_python-1.4.3}/zscaler/zia/system_audit.py +0 -0
  244. {zscaler_sdk_python-1.4.1 → zscaler_sdk_python-1.4.3}/zscaler/zia/tenancy_restriction_profile.py +0 -0
  245. {zscaler_sdk_python-1.4.1 → zscaler_sdk_python-1.4.3}/zscaler/zia/time_intervals.py +0 -0
  246. {zscaler_sdk_python-1.4.1 → zscaler_sdk_python-1.4.3}/zscaler/zia/traffic_datacenters.py +0 -0
  247. {zscaler_sdk_python-1.4.1 → zscaler_sdk_python-1.4.3}/zscaler/zia/traffic_static_ip.py +0 -0
  248. {zscaler_sdk_python-1.4.1 → zscaler_sdk_python-1.4.3}/zscaler/zia/traffic_vpn_credentials.py +0 -0
  249. {zscaler_sdk_python-1.4.1 → zscaler_sdk_python-1.4.3}/zscaler/zia/url_categories.py +0 -0
  250. {zscaler_sdk_python-1.4.1 → zscaler_sdk_python-1.4.3}/zscaler/zia/url_filtering.py +0 -0
  251. {zscaler_sdk_python-1.4.1 → zscaler_sdk_python-1.4.3}/zscaler/zia/user_management.py +0 -0
  252. {zscaler_sdk_python-1.4.1 → zscaler_sdk_python-1.4.3}/zscaler/zia/workload_groups.py +0 -0
  253. {zscaler_sdk_python-1.4.1 → zscaler_sdk_python-1.4.3}/zscaler/zia/zpa_gateway.py +0 -0
  254. {zscaler_sdk_python-1.4.1 → zscaler_sdk_python-1.4.3}/zscaler/zpa/__init__.py +0 -0
  255. {zscaler_sdk_python-1.4.1 → zscaler_sdk_python-1.4.3}/zscaler/zpa/administrator_controller.py +0 -0
  256. {zscaler_sdk_python-1.4.1 → zscaler_sdk_python-1.4.3}/zscaler/zpa/app_connector_groups.py +0 -0
  257. {zscaler_sdk_python-1.4.1 → zscaler_sdk_python-1.4.3}/zscaler/zpa/app_connector_schedule.py +0 -0
  258. {zscaler_sdk_python-1.4.1 → zscaler_sdk_python-1.4.3}/zscaler/zpa/app_connectors.py +0 -0
  259. {zscaler_sdk_python-1.4.1 → zscaler_sdk_python-1.4.3}/zscaler/zpa/app_segment_by_type.py +0 -0
  260. {zscaler_sdk_python-1.4.1 → zscaler_sdk_python-1.4.3}/zscaler/zpa/cbi_banner.py +0 -0
  261. {zscaler_sdk_python-1.4.1 → zscaler_sdk_python-1.4.3}/zscaler/zpa/cbi_certificate.py +0 -0
  262. {zscaler_sdk_python-1.4.1 → zscaler_sdk_python-1.4.3}/zscaler/zpa/cbi_profile.py +0 -0
  263. {zscaler_sdk_python-1.4.1 → zscaler_sdk_python-1.4.3}/zscaler/zpa/cbi_region.py +0 -0
  264. {zscaler_sdk_python-1.4.1 → zscaler_sdk_python-1.4.3}/zscaler/zpa/cbi_zpa_profile.py +0 -0
  265. {zscaler_sdk_python-1.4.1 → zscaler_sdk_python-1.4.3}/zscaler/zpa/certificates.py +0 -0
  266. {zscaler_sdk_python-1.4.1 → zscaler_sdk_python-1.4.3}/zscaler/zpa/client_settings.py +0 -0
  267. {zscaler_sdk_python-1.4.1 → zscaler_sdk_python-1.4.3}/zscaler/zpa/cloud_connector_groups.py +0 -0
  268. {zscaler_sdk_python-1.4.1 → zscaler_sdk_python-1.4.3}/zscaler/zpa/customer_controller.py +0 -0
  269. {zscaler_sdk_python-1.4.1 → zscaler_sdk_python-1.4.3}/zscaler/zpa/customer_version_profile.py +0 -0
  270. {zscaler_sdk_python-1.4.1 → zscaler_sdk_python-1.4.3}/zscaler/zpa/enrollment_certificates.py +0 -0
  271. {zscaler_sdk_python-1.4.1 → zscaler_sdk_python-1.4.3}/zscaler/zpa/idp.py +0 -0
  272. {zscaler_sdk_python-1.4.1 → zscaler_sdk_python-1.4.3}/zscaler/zpa/legacy.py +0 -0
  273. {zscaler_sdk_python-1.4.1 → zscaler_sdk_python-1.4.3}/zscaler/zpa/lss.py +0 -0
  274. {zscaler_sdk_python-1.4.1 → zscaler_sdk_python-1.4.3}/zscaler/zpa/machine_groups.py +0 -0
  275. {zscaler_sdk_python-1.4.1 → zscaler_sdk_python-1.4.3}/zscaler/zpa/models/administrator_controller.py +0 -0
  276. {zscaler_sdk_python-1.4.1 → zscaler_sdk_python-1.4.3}/zscaler/zpa/models/app_connector_groups.py +0 -0
  277. {zscaler_sdk_python-1.4.1 → zscaler_sdk_python-1.4.3}/zscaler/zpa/models/app_connector_schedule.py +0 -0
  278. {zscaler_sdk_python-1.4.1 → zscaler_sdk_python-1.4.3}/zscaler/zpa/models/app_connectors.py +0 -0
  279. {zscaler_sdk_python-1.4.1 → zscaler_sdk_python-1.4.3}/zscaler/zpa/models/application_servers.py +0 -0
  280. {zscaler_sdk_python-1.4.1 → zscaler_sdk_python-1.4.3}/zscaler/zpa/models/cbi_banner.py +0 -0
  281. {zscaler_sdk_python-1.4.1 → zscaler_sdk_python-1.4.3}/zscaler/zpa/models/cbi_region.py +0 -0
  282. {zscaler_sdk_python-1.4.1 → zscaler_sdk_python-1.4.3}/zscaler/zpa/models/cbi_zpa_profile.py +0 -0
  283. {zscaler_sdk_python-1.4.1 → zscaler_sdk_python-1.4.3}/zscaler/zpa/models/certificates.py +0 -0
  284. {zscaler_sdk_python-1.4.1 → zscaler_sdk_python-1.4.3}/zscaler/zpa/models/client_settings.py +0 -0
  285. {zscaler_sdk_python-1.4.1 → zscaler_sdk_python-1.4.3}/zscaler/zpa/models/cloud_connector_groups.py +0 -0
  286. {zscaler_sdk_python-1.4.1 → zscaler_sdk_python-1.4.3}/zscaler/zpa/models/common.py +0 -0
  287. {zscaler_sdk_python-1.4.1 → zscaler_sdk_python-1.4.3}/zscaler/zpa/models/customer_controller.py +0 -0
  288. {zscaler_sdk_python-1.4.1 → zscaler_sdk_python-1.4.3}/zscaler/zpa/models/customer_version_profile.py +0 -0
  289. {zscaler_sdk_python-1.4.1 → zscaler_sdk_python-1.4.3}/zscaler/zpa/models/enrollment_certificates.py +0 -0
  290. {zscaler_sdk_python-1.4.1 → zscaler_sdk_python-1.4.3}/zscaler/zpa/models/idp.py +0 -0
  291. {zscaler_sdk_python-1.4.1 → zscaler_sdk_python-1.4.3}/zscaler/zpa/models/lss.py +0 -0
  292. {zscaler_sdk_python-1.4.1 → zscaler_sdk_python-1.4.3}/zscaler/zpa/models/machine_groups.py +0 -0
  293. {zscaler_sdk_python-1.4.1 → zscaler_sdk_python-1.4.3}/zscaler/zpa/models/microtenants.py +0 -0
  294. {zscaler_sdk_python-1.4.1 → zscaler_sdk_python-1.4.3}/zscaler/zpa/models/policyset_controller_v1.py +0 -0
  295. {zscaler_sdk_python-1.4.1 → zscaler_sdk_python-1.4.3}/zscaler/zpa/models/policyset_controller_v2.py +0 -0
  296. {zscaler_sdk_python-1.4.1 → zscaler_sdk_python-1.4.3}/zscaler/zpa/models/posture_profiles.py +0 -0
  297. {zscaler_sdk_python-1.4.1 → zscaler_sdk_python-1.4.3}/zscaler/zpa/models/pra_approval.py +0 -0
  298. {zscaler_sdk_python-1.4.1 → zscaler_sdk_python-1.4.3}/zscaler/zpa/models/pra_console.py +0 -0
  299. {zscaler_sdk_python-1.4.1 → zscaler_sdk_python-1.4.3}/zscaler/zpa/models/pra_cred_pool_controller.py +0 -0
  300. {zscaler_sdk_python-1.4.1 → zscaler_sdk_python-1.4.3}/zscaler/zpa/models/pra_credential.py +0 -0
  301. {zscaler_sdk_python-1.4.1 → zscaler_sdk_python-1.4.3}/zscaler/zpa/models/pra_portal.py +0 -0
  302. {zscaler_sdk_python-1.4.1 → zscaler_sdk_python-1.4.3}/zscaler/zpa/models/provisioning_keys.py +0 -0
  303. {zscaler_sdk_python-1.4.1 → zscaler_sdk_python-1.4.3}/zscaler/zpa/models/role_controller.py +0 -0
  304. {zscaler_sdk_python-1.4.1 → zscaler_sdk_python-1.4.3}/zscaler/zpa/models/saml_attributes.py +0 -0
  305. {zscaler_sdk_python-1.4.1 → zscaler_sdk_python-1.4.3}/zscaler/zpa/models/scim_attributes.py +0 -0
  306. {zscaler_sdk_python-1.4.1 → zscaler_sdk_python-1.4.3}/zscaler/zpa/models/scim_groups.py +0 -0
  307. {zscaler_sdk_python-1.4.1 → zscaler_sdk_python-1.4.3}/zscaler/zpa/models/segment_group.py +0 -0
  308. {zscaler_sdk_python-1.4.1 → zscaler_sdk_python-1.4.3}/zscaler/zpa/models/service_edge_groups.py +0 -0
  309. {zscaler_sdk_python-1.4.1 → zscaler_sdk_python-1.4.3}/zscaler/zpa/models/service_edge_schedule.py +0 -0
  310. {zscaler_sdk_python-1.4.1 → zscaler_sdk_python-1.4.3}/zscaler/zpa/models/service_edges.py +0 -0
  311. {zscaler_sdk_python-1.4.1 → zscaler_sdk_python-1.4.3}/zscaler/zpa/models/trusted_network.py +0 -0
  312. {zscaler_sdk_python-1.4.1 → zscaler_sdk_python-1.4.3}/zscaler/zpa/posture_profiles.py +0 -0
  313. {zscaler_sdk_python-1.4.1 → zscaler_sdk_python-1.4.3}/zscaler/zpa/pra_approval.py +0 -0
  314. {zscaler_sdk_python-1.4.1 → zscaler_sdk_python-1.4.3}/zscaler/zpa/pra_console.py +0 -0
  315. {zscaler_sdk_python-1.4.1 → zscaler_sdk_python-1.4.3}/zscaler/zpa/pra_credential.py +0 -0
  316. {zscaler_sdk_python-1.4.1 → zscaler_sdk_python-1.4.3}/zscaler/zpa/pra_credential_pool.py +0 -0
  317. {zscaler_sdk_python-1.4.1 → zscaler_sdk_python-1.4.3}/zscaler/zpa/pra_portal.py +0 -0
  318. {zscaler_sdk_python-1.4.1 → zscaler_sdk_python-1.4.3}/zscaler/zpa/saml_attributes.py +0 -0
  319. {zscaler_sdk_python-1.4.1 → zscaler_sdk_python-1.4.3}/zscaler/zpa/scim_attributes.py +0 -0
  320. {zscaler_sdk_python-1.4.1 → zscaler_sdk_python-1.4.3}/zscaler/zpa/scim_groups.py +0 -0
  321. {zscaler_sdk_python-1.4.1 → zscaler_sdk_python-1.4.3}/zscaler/zpa/segment_groups.py +0 -0
  322. {zscaler_sdk_python-1.4.1 → zscaler_sdk_python-1.4.3}/zscaler/zpa/server_groups.py +0 -0
  323. {zscaler_sdk_python-1.4.1 → zscaler_sdk_python-1.4.3}/zscaler/zpa/servers.py +0 -0
  324. {zscaler_sdk_python-1.4.1 → zscaler_sdk_python-1.4.3}/zscaler/zpa/service_edge_group.py +0 -0
  325. {zscaler_sdk_python-1.4.1 → zscaler_sdk_python-1.4.3}/zscaler/zpa/service_edge_schedule.py +0 -0
  326. {zscaler_sdk_python-1.4.1 → zscaler_sdk_python-1.4.3}/zscaler/zpa/service_edges.py +0 -0
  327. {zscaler_sdk_python-1.4.1 → zscaler_sdk_python-1.4.3}/zscaler/zpa/trusted_networks.py +0 -0
  328. {zscaler_sdk_python-1.4.1 → zscaler_sdk_python-1.4.3}/zscaler/zpa/zpa_service.py +0 -0
  329. {zscaler_sdk_python-1.4.1 → zscaler_sdk_python-1.4.3}/zscaler/ztw/__init__.py +0 -0
  330. {zscaler_sdk_python-1.4.1 → zscaler_sdk_python-1.4.3}/zscaler/ztw/account_details.py +0 -0
  331. {zscaler_sdk_python-1.4.1 → zscaler_sdk_python-1.4.3}/zscaler/ztw/activation.py +0 -0
  332. {zscaler_sdk_python-1.4.1 → zscaler_sdk_python-1.4.3}/zscaler/ztw/admin_roles.py +0 -0
  333. {zscaler_sdk_python-1.4.1 → zscaler_sdk_python-1.4.3}/zscaler/ztw/admin_users.py +0 -0
  334. {zscaler_sdk_python-1.4.1 → zscaler_sdk_python-1.4.3}/zscaler/ztw/api_keys.py +0 -0
  335. {zscaler_sdk_python-1.4.1 → zscaler_sdk_python-1.4.3}/zscaler/ztw/ec_groups.py +0 -0
  336. {zscaler_sdk_python-1.4.1 → zscaler_sdk_python-1.4.3}/zscaler/ztw/forwarding_gateways.py +0 -0
  337. {zscaler_sdk_python-1.4.1 → zscaler_sdk_python-1.4.3}/zscaler/ztw/forwarding_rules.py +0 -0
  338. {zscaler_sdk_python-1.4.1 → zscaler_sdk_python-1.4.3}/zscaler/ztw/ip_destination_groups.py +0 -0
  339. {zscaler_sdk_python-1.4.1 → zscaler_sdk_python-1.4.3}/zscaler/ztw/ip_groups.py +0 -0
  340. {zscaler_sdk_python-1.4.1 → zscaler_sdk_python-1.4.3}/zscaler/ztw/ip_source_groups.py +0 -0
  341. {zscaler_sdk_python-1.4.1 → zscaler_sdk_python-1.4.3}/zscaler/ztw/legacy.py +0 -0
  342. {zscaler_sdk_python-1.4.1 → zscaler_sdk_python-1.4.3}/zscaler/ztw/location_management.py +0 -0
  343. {zscaler_sdk_python-1.4.1 → zscaler_sdk_python-1.4.3}/zscaler/ztw/location_template.py +0 -0
  344. {zscaler_sdk_python-1.4.1 → zscaler_sdk_python-1.4.3}/zscaler/ztw/models/activation.py +0 -0
  345. {zscaler_sdk_python-1.4.1 → zscaler_sdk_python-1.4.3}/zscaler/ztw/models/admin_roles.py +0 -0
  346. {zscaler_sdk_python-1.4.1 → zscaler_sdk_python-1.4.3}/zscaler/ztw/models/admin_users.py +0 -0
  347. {zscaler_sdk_python-1.4.1 → zscaler_sdk_python-1.4.3}/zscaler/ztw/models/api_keys.py +0 -0
  348. {zscaler_sdk_python-1.4.1 → zscaler_sdk_python-1.4.3}/zscaler/ztw/models/common.py +0 -0
  349. {zscaler_sdk_python-1.4.1 → zscaler_sdk_python-1.4.3}/zscaler/ztw/models/ec_group_vm.py +0 -0
  350. {zscaler_sdk_python-1.4.1 → zscaler_sdk_python-1.4.3}/zscaler/ztw/models/ecgroup.py +0 -0
  351. {zscaler_sdk_python-1.4.1 → zscaler_sdk_python-1.4.3}/zscaler/ztw/models/forwarding_gateways.py +0 -0
  352. {zscaler_sdk_python-1.4.1 → zscaler_sdk_python-1.4.3}/zscaler/ztw/models/forwarding_rules.py +0 -0
  353. {zscaler_sdk_python-1.4.1 → zscaler_sdk_python-1.4.3}/zscaler/ztw/models/ip_destination_groups.py +0 -0
  354. {zscaler_sdk_python-1.4.1 → zscaler_sdk_python-1.4.3}/zscaler/ztw/models/ip_groups.py +0 -0
  355. {zscaler_sdk_python-1.4.1 → zscaler_sdk_python-1.4.3}/zscaler/ztw/models/ip_source_groups.py +0 -0
  356. {zscaler_sdk_python-1.4.1 → zscaler_sdk_python-1.4.3}/zscaler/ztw/models/location_management.py +0 -0
  357. {zscaler_sdk_python-1.4.1 → zscaler_sdk_python-1.4.3}/zscaler/ztw/models/location_templates.py +0 -0
  358. {zscaler_sdk_python-1.4.1 → zscaler_sdk_python-1.4.3}/zscaler/ztw/models/nw_service.py +0 -0
  359. {zscaler_sdk_python-1.4.1 → zscaler_sdk_python-1.4.3}/zscaler/ztw/models/nw_service_groups.py +0 -0
  360. {zscaler_sdk_python-1.4.1 → zscaler_sdk_python-1.4.3}/zscaler/ztw/models/provisioning_url.py +0 -0
  361. {zscaler_sdk_python-1.4.1 → zscaler_sdk_python-1.4.3}/zscaler/ztw/models/traffic_vpn_credentials.py +0 -0
  362. {zscaler_sdk_python-1.4.1 → zscaler_sdk_python-1.4.3}/zscaler/ztw/models/zpa_resources.py +0 -0
  363. {zscaler_sdk_python-1.4.1 → zscaler_sdk_python-1.4.3}/zscaler/ztw/nw_service.py +0 -0
  364. {zscaler_sdk_python-1.4.1 → zscaler_sdk_python-1.4.3}/zscaler/ztw/nw_service_groups.py +0 -0
  365. {zscaler_sdk_python-1.4.1 → zscaler_sdk_python-1.4.3}/zscaler/ztw/provisioning_url.py +0 -0
  366. {zscaler_sdk_python-1.4.1 → zscaler_sdk_python-1.4.3}/zscaler/ztw/ztw_service.py +0 -0
  367. {zscaler_sdk_python-1.4.1 → zscaler_sdk_python-1.4.3}/zscaler/zwa/__init__.py +0 -0
  368. {zscaler_sdk_python-1.4.1 → zscaler_sdk_python-1.4.3}/zscaler/zwa/audit_logs.py +0 -0
  369. {zscaler_sdk_python-1.4.1 → zscaler_sdk_python-1.4.3}/zscaler/zwa/dlp_incidents.py +0 -0
  370. {zscaler_sdk_python-1.4.1 → zscaler_sdk_python-1.4.3}/zscaler/zwa/legacy.py +0 -0
  371. {zscaler_sdk_python-1.4.1 → zscaler_sdk_python-1.4.3}/zscaler/zwa/models/audit_logs.py +0 -0
  372. {zscaler_sdk_python-1.4.1 → zscaler_sdk_python-1.4.3}/zscaler/zwa/models/change_history.py +0 -0
  373. {zscaler_sdk_python-1.4.1 → zscaler_sdk_python-1.4.3}/zscaler/zwa/models/common.py +0 -0
  374. {zscaler_sdk_python-1.4.1 → zscaler_sdk_python-1.4.3}/zscaler/zwa/models/generated_tickets.py +0 -0
  375. {zscaler_sdk_python-1.4.1 → zscaler_sdk_python-1.4.3}/zscaler/zwa/models/incident_details.py +0 -0
  376. {zscaler_sdk_python-1.4.1 → zscaler_sdk_python-1.4.3}/zscaler/zwa/models/incident_evidence.py +0 -0
  377. {zscaler_sdk_python-1.4.1 → zscaler_sdk_python-1.4.3}/zscaler/zwa/models/incident_group_search.py +0 -0
  378. {zscaler_sdk_python-1.4.1 → zscaler_sdk_python-1.4.3}/zscaler/zwa/models/incident_search.py +0 -0
  379. {zscaler_sdk_python-1.4.1 → zscaler_sdk_python-1.4.3}/zscaler/zwa/models/incident_trigger.py +0 -0
  380. {zscaler_sdk_python-1.4.1 → zscaler_sdk_python-1.4.3}/zscaler/zwa/zwa_service.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: zscaler-sdk-python
3
- Version: 1.4.1
3
+ Version: 1.4.3
4
4
  Summary: Official Python SDK for the Zscaler Products
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 = "1.4.1"
3
+ version = "1.4.3"
4
4
  description = "Official Python SDK for the Zscaler Products"
5
5
  authors = ["Zscaler, Inc. <devrel@zscaler.com>"]
6
6
  license = "MIT"
@@ -29,7 +29,7 @@ __license__ = "MIT"
29
29
  __contributors__ = [
30
30
  "William Guilherme",
31
31
  ]
32
- __version__ = "1.4.1"
32
+ __version__ = "1.4.3"
33
33
 
34
34
 
35
35
  from zscaler.oneapi_client import Client as ZscalerClient # noqa
@@ -24,7 +24,8 @@ def setup_logging(logger_name="zscaler-sdk-python", enabled=None, verbose=None):
24
24
 
25
25
  if not enabled:
26
26
  # If logging is not enabled, set up a null handler
27
- logging.disable(logging.INFO)
27
+ # logging.disable(logging.INFO)
28
+ logging.getLogger(logger_name).addHandler(logging.NullHandler())
28
29
  return
29
30
 
30
31
  if verbose is None:
@@ -77,13 +77,6 @@ class RequestExecutor:
77
77
  self._config = config
78
78
  self._cache = cache
79
79
 
80
- # ✅ Setup logging based on config flags
81
- # log_config = self._config["client"].get("logging", {})
82
- # setup_logging(
83
- # enabled=log_config.get("enabled", False),
84
- # verbose=log_config.get("verbose", False),
85
- # )
86
-
87
80
  # Retrieve cloud, service, and customer ID (optional)
88
81
  self.cloud = self._config["client"].get("cloud", "production").lower()
89
82
  self.sandbox_cloud = self._config["client"].get("sandboxCloud", "").lower()
@@ -438,7 +438,7 @@ class DevicesAPI(APIClient):
438
438
  ``[query_params.page_size]`` {int}: Specifies the page size.
439
439
  If not provided, the default page size is 30.
440
440
  The max page size is 5000.
441
-
441
+
442
442
  client_connector_version (list[str]): List of the client connector agent versions
443
443
  os_type (int): Valid options are: ios, android, windows, macos, linux.
444
444
  udids (list[str]): The list of udids for the devices to be removed
@@ -11,26 +11,13 @@ from zscaler.utils import (
11
11
  is_token_expired,
12
12
  RateLimitExceededError
13
13
  )
14
- from zscaler.logger import setup_logging
15
14
  from zscaler.errors.response_checker import check_response_for_error
15
+ from zscaler.logger import setup_logging
16
16
 
17
17
  # Setup the logger
18
18
  setup_logging(logger_name="zscaler-sdk-python")
19
19
  logger = logging.getLogger("zscaler-sdk-python")
20
20
 
21
- import os, time, urllib.parse, logging, requests
22
- from datetime import datetime, timedelta
23
- from zscaler import __version__
24
- from zscaler.user_agent import UserAgent
25
- from zscaler.cache.no_op_cache import NoOpCache
26
- from zscaler.cache.cache import Cache
27
- from zscaler.cache.zscaler_cache import ZscalerCache
28
- from zscaler.errors.response_checker import check_response_for_error
29
- from zscaler.ratelimiter.ratelimiter import RateLimiter
30
- from zscaler.utils import is_token_expired
31
-
32
- logger = logging.getLogger("zscaler-sdk-python")
33
-
34
21
 
35
22
  class LegacyZCCClientHelper:
36
23
  """
@@ -148,7 +135,7 @@ class LegacyZCCClientHelper:
148
135
  _, err = check_response_for_error(url, resp, resp.text)
149
136
  if err:
150
137
  raise err
151
-
138
+
152
139
  logger.info("Login attempt with status: %d", resp.status_code)
153
140
  return resp
154
141
  except Exception as e:
@@ -317,7 +304,6 @@ class LegacyZCCClientHelper:
317
304
  "json": json or {},
318
305
  }
319
306
 
320
-
321
307
  def set_session(self, session):
322
308
  """Dummy method for compatibility with the request executor."""
323
309
  self._session = session
@@ -76,7 +76,7 @@ class ActivationAPI(APIClient):
76
76
  :obj:`Activation`, response object, and error if any.
77
77
 
78
78
  Examples:
79
- >>> config_activate, response, error = zia.config.activate()
79
+ >>> config_activate, response, error = zia.activate.activate()
80
80
  """
81
81
  http_method = "post".upper()
82
82
  api_url = format_url(
@@ -237,7 +237,7 @@ class AlertSubscriptionsAPI(APIClient):
237
237
  """
238
238
  )
239
239
 
240
- body = kwargs.copy()
240
+ body = kwargs
241
241
  body["id"] = subscription_id
242
242
 
243
243
  request, error = self._request_executor.create_request(http_method, api_url, body, {}, {})
@@ -41,13 +41,7 @@ class AuthenticationSettingsAPI(APIClient):
41
41
  - list[str]: List of domains or URLs which are exempted from SSL Inspection
42
42
  - Response: The raw HTTP response from the API.
43
43
  - error: Error details if the request fails.
44
-
45
- Examples:
46
- >>> urls, response, err = client.zia.authentication_settings.get_exempted_urls()
47
- >>> if not err:
48
- ... print("Listed URLs:", urls)
49
44
  """
50
-
51
45
  http_method = "get".upper()
52
46
  api_url = format_url(
53
47
  f"""
@@ -60,7 +54,7 @@ class AuthenticationSettingsAPI(APIClient):
60
54
  if error:
61
55
  return (None, None, error)
62
56
 
63
- response, error = self._request_executor.execute(request)
57
+ response, error = self._request_executor.execute(request, dict)
64
58
  if error:
65
59
  return (None, response, error)
66
60
 
@@ -91,7 +91,6 @@ class BandwidthClassesAPI(APIClient):
91
91
 
92
92
  return (results, response, None)
93
93
 
94
-
95
94
  def list_classes_lite(self) -> tuple:
96
95
  """
97
96
  Fetches a specific bandwidth class lite by ID.
@@ -36,7 +36,7 @@ class BandwidthControlRulesAPI(APIClient):
36
36
  List bandwidth control rules in your organization.
37
37
  If the `search` parameter is provided, the function filters the rules client-side.
38
38
 
39
- Note: This API endpoint can be accessed only through Zscaler OneAPI with the correct access
39
+ Note: This API endpoint can be accessed only through Zscaler OneAPI with the correct access
40
40
  token included in the request's Authorization header.
41
41
 
42
42
  Args:
@@ -109,7 +109,7 @@ class BandwidthControlRulesAPI(APIClient):
109
109
  """
110
110
  Fetches a specific bandwidth control rule lite.
111
111
 
112
- Note: This API endpoint can be accessed only through Zscaler OneAPI with the correct access
112
+ Note: This API endpoint can be accessed only through Zscaler OneAPI with the correct access
113
113
  token included in the request's Authorization header.
114
114
 
115
115
  Args:
@@ -164,7 +164,7 @@ class BandwidthControlRulesAPI(APIClient):
164
164
  """
165
165
  Returns information for the specified bandwidth control rule.
166
166
 
167
- Note: This API endpoint can be accessed only through Zscaler OneAPI with the correct access
167
+ Note: This API endpoint can be accessed only through Zscaler OneAPI with the correct access
168
168
  token included in the request's Authorization header.
169
169
 
170
170
  Args:
@@ -216,7 +216,7 @@ class BandwidthControlRulesAPI(APIClient):
216
216
  """
217
217
  Adds a new cloud bandwidth control rule.
218
218
 
219
- Note: This API endpoint can be accessed only through Zscaler OneAPI with the correct access
219
+ Note: This API endpoint can be accessed only through Zscaler OneAPI with the correct access
220
220
  token included in the request's Authorization header.
221
221
 
222
222
  Args:
@@ -268,6 +268,7 @@ class BandwidthControlRulesAPI(APIClient):
268
268
 
269
269
  body = kwargs
270
270
 
271
+ # Convert 'enabled' to 'state' (ENABLED/DISABLED) if it's present in the payload
271
272
  if "enabled" in kwargs:
272
273
  kwargs["state"] = "ENABLED" if kwargs.pop("enabled") else "DISABLED"
273
274
 
@@ -296,7 +297,7 @@ class BandwidthControlRulesAPI(APIClient):
296
297
  """
297
298
  Updates an existing bandwidth control rule.
298
299
 
299
- Note: This API endpoint can be accessed only through Zscaler OneAPI with the correct access
300
+ Note: This API endpoint can be accessed only through Zscaler OneAPI with the correct access
300
301
  token included in the request's Authorization header.
301
302
 
302
303
  Args:
@@ -348,7 +349,7 @@ class BandwidthControlRulesAPI(APIClient):
348
349
  """
349
350
  )
350
351
 
351
- body = kwargs.copy()
352
+ body = kwargs
352
353
  body["id"] = rule_id
353
354
 
354
355
  if "enabled" in kwargs:
@@ -379,7 +380,7 @@ class BandwidthControlRulesAPI(APIClient):
379
380
  """
380
381
  Deletes the specified bandwidth control rule.
381
382
 
382
- Note: This API endpoint can be accessed only through Zscaler OneAPI with the correct access
383
+ Note: This API endpoint can be accessed only through Zscaler OneAPI with the correct access
383
384
  token included in the request's Authorization header.
384
385
 
385
386
  Args:
@@ -561,7 +561,7 @@ class FirewallResourcesAPI(APIClient):
561
561
  ... print(f"Error updating group: {error}")
562
562
  ... return
563
563
  ... print(f"Group updated successfully: {updated_group.as_dict()}")
564
-
564
+
565
565
  Update a Destination IP Group with country and url category for the US:
566
566
 
567
567
  >>> updated_group, _, error = client.zia.cloud_firewall.update_ip_destination_group(
@@ -264,7 +264,7 @@ class DNSGatewayAPI(APIClient):
264
264
  /dnsGateways/{gateway_id}
265
265
  """
266
266
  )
267
- body = kwargs.copy()
267
+ body = kwargs
268
268
  body["id"] = gateway_id
269
269
 
270
270
  request, error = self._request_executor.create_request(
@@ -307,7 +307,6 @@ class LegacyZIAClientHelper:
307
307
  """Dummy method for compatibility with the request executor."""
308
308
  self._session = session
309
309
 
310
-
311
310
  @property
312
311
  def activate(self):
313
312
  """
@@ -417,7 +416,7 @@ class LegacyZIAClientHelper:
417
416
  from zscaler.zia.shadow_it_report import ShadowITAPI
418
417
 
419
418
  return ShadowITAPI(self.request_executor)
420
-
419
+
421
420
  @property
422
421
  def cloud_browser_isolation(self):
423
422
  """
@@ -951,4 +950,4 @@ class LegacyZIAClientHelper:
951
950
  return self.request_executor.get_custom_headers()
952
951
 
953
952
  def get_default_headers(self):
954
- return self.request_executor.get_default_headers()
953
+ return self.request_executor.get_default_headers()
@@ -87,7 +87,7 @@ class FirewallRule(ZscalerObject):
87
87
  self.app_service_groups = ZscalerCollection.form_list(
88
88
  config["appServiceGroups"] if "appServiceGroups" in config else [], app_services.AppServices
89
89
  )
90
- self.nw_services = ZscalerCollection.form_list(
90
+ self.app_services = ZscalerCollection.form_list(
91
91
  config["appServices"] if "appServices" in config else [], app_services.AppServices
92
92
  )
93
93
  self.locations = ZscalerCollection.form_list(
@@ -128,7 +128,7 @@ class FirewallRule(ZscalerObject):
128
128
 
129
129
  self.devices = ZscalerCollection.form_list(config["devices"] if "devices" in config else [], devices.Devices)
130
130
 
131
- self.nw_services = ZscalerCollection.form_list(
131
+ self.labels = ZscalerCollection.form_list(
132
132
  config["labels"] if "labels" in config else [], rule_labels.RuleLabels
133
133
  )
134
134
 
@@ -348,7 +348,8 @@ class ProxiesAPI(APIClient):
348
348
  /proxies/{proxy_id}
349
349
  """
350
350
  )
351
- body = kwargs.copy()
351
+
352
+ body = kwargs
352
353
  body["id"] = proxy_id
353
354
 
354
355
  request, error = self._request_executor.create_request(http_method, api_url, body, {}, {})
@@ -250,7 +250,8 @@ class TrafficExtranetAPI(APIClient):
250
250
  /extranet/{extranet_id}
251
251
  """
252
252
  )
253
- body = kwargs.copy()
253
+
254
+ body = kwargs
254
255
  body["id"] = extranet_id
255
256
 
256
257
  request, error = self._request_executor.create_request(http_method, api_url, body, {}, {})
@@ -177,7 +177,7 @@ class ZIAService:
177
177
 
178
178
  """
179
179
  return ShadowITAPI(self._request_executor)
180
-
180
+
181
181
  @property
182
182
  def cloud_nss(self):
183
183
  """
@@ -223,7 +223,7 @@ class InspectionControllerAPI(APIClient):
223
223
  """
224
224
  )
225
225
  version = kwargs.pop("predefined_controls_version", "OWASP_CRS/3.3.0")
226
-
226
+
227
227
  groups, _, err = self.list_predef_controls(query_params={"version": version})
228
228
  if err or not groups:
229
229
  return None, None, f"Failed to retrieve predefined control groups: {err}"
@@ -268,7 +268,7 @@ class InspectionControllerAPI(APIClient):
268
268
 
269
269
  try:
270
270
  created_profile = AppProtectionProfile(self.form_response_body(response.get_body()))
271
-
271
+
272
272
  # Fetch the full created profile explicitly
273
273
  profile_id = created_profile.id
274
274
  full_profile, _, fetch_error = self.get_profile(profile_id)
@@ -297,7 +297,7 @@ class InspectionControllerAPI(APIClient):
297
297
  """
298
298
  )
299
299
  version = kwargs.pop("predefined_controls_version", "OWASP_CRS/3.3.0")
300
-
300
+
301
301
  # Get default predefined controls
302
302
  groups, _, err = self.list_predef_controls(query_params={"version": version})
303
303
  if err or not groups:
@@ -483,8 +483,14 @@ class InspectionControllerAPI(APIClient):
483
483
  if kwargs.get("predefined_controls"):
484
484
  predefined_controls_extra = kwargs.pop("predefined_controls")
485
485
  payload["predefinedControls"].extend(
486
- [{"id": control["id"], "action": control["action"], "default_action": control["action"]}
487
- for control in predefined_controls_extra]
486
+ [
487
+ {
488
+ "id": control["id"],
489
+ "action": control["action"],
490
+ "default_action": control["action"]
491
+ }
492
+ for control in predefined_controls_extra
493
+ ]
488
494
  )
489
495
 
490
496
  # Add custom controls if provided
@@ -582,7 +588,7 @@ class InspectionControllerAPI(APIClient):
582
588
 
583
589
  Returns:
584
590
  PredefinedInspectionControlResource: The corresponding predefined control object.
585
-
591
+
586
592
  Examples:
587
593
  >>> predef_controls, _, err = client.zpa.app_protection.get_all_predef_control(
588
594
  ... query_params={'version': 'OWASP_CRS/4.8.0'})
@@ -628,7 +634,7 @@ class InspectionControllerAPI(APIClient):
628
634
 
629
635
  Returns:
630
636
  AppProtectionCustomControl: The corresponding predefined control object.
631
-
637
+
632
638
  Examples:
633
639
  >>> fetched_predf_control, _, err = client.zpa.app_protection.get_predef_control(control_id='72057594037928524')
634
640
  >>> if err:
@@ -837,53 +843,24 @@ class InspectionControllerAPI(APIClient):
837
843
  print(f"Fetched predefined control adp: {fetched_predf_control.as_dict()}")
838
844
 
839
845
  """
840
- # SUPPORTED = {"OWASP_CRS/4.8.0", "OWASP_CRS/3.3.5", "OWASP_CRS/3.3.0"}
841
- # qp = dict(query_params or {})
842
-
843
- # version = qp.get("version")
844
- # if version is None:
845
- # return (None, None,
846
- # ValueError("'version' is required in query_params"))
847
- # if version not in SUPPORTED:
848
- # return (None, None,
849
- # ValueError(f"Unsupported version '{version}'. "
850
- # f"Supported values: {', '.join(sorted(SUPPORTED))}"))
851
-
852
- # search_field = qp.pop("search_field", None)
853
- # if "search" in qp and search_field:
854
- # qp["search"] = f"{qp['search']}+EQ+{search_field}"
855
-
856
- # base_url = f"{self._zpa_base_endpoint}/inspectionControls/predefined"
857
- # query_str = "&".join(f"{k}={quote(str(v), safe='')}" for k, v in qp.items())
858
- # api_url = f"{base_url}?{query_str}"
859
-
860
- # request, err = self._request_executor.create_request("GET", api_url)
861
- # if err:
862
- # return (None, None, err)
863
-
864
- # response, err = self._request_executor.execute(request)
865
- # if err:
866
- # return (None, response, err)
867
-
868
- # try:
869
- # body = self.form_response_body(response.get_body())
870
- # result = PredefinedInspectionControlResource(body)
871
- # except Exception as exc:
872
- # return (None, response, exc)
873
-
874
- # return (result, response, None)
875
-
876
846
  SUPPORTED = {"OWASP_CRS/4.8.0", "OWASP_CRS/3.3.5", "OWASP_CRS/3.3.0"}
877
847
  qp = dict(query_params or {})
878
848
 
879
849
  version = qp.get("version")
880
850
  if version is None:
881
- return (None, None,
882
- ValueError("'version' is required in query_params"))
851
+ return (
852
+ None,
853
+ None,
854
+ ValueError("'version' is required in query_params")
855
+ )
883
856
  if version not in SUPPORTED:
884
- return (None, None,
885
- ValueError(f"Unsupported version '{version}'. "
886
- f"Supported values: {', '.join(sorted(SUPPORTED))}"))
857
+ return (
858
+ None,
859
+ None,
860
+ ValueError(
861
+ f"Unsupported version '{version}'. Supported values: {', '.join(sorted(SUPPORTED))}"
862
+ )
863
+ )
887
864
 
888
865
  search_field = qp.pop("search_field", None)
889
866
  if "search" in qp and search_field:
@@ -423,29 +423,41 @@ class ApplicationSegmentBAAPI(APIClient):
423
423
  for app in clientless_apps:
424
424
  # Find the segment that matches the domain and belongs to this segment
425
425
  matched_segment = next(
426
- (seg for seg in segments_list
427
- if seg.domain == app.get("domain") and str(seg.app_id) == segment_id),
426
+ (
427
+ seg for seg in segments_list
428
+ if seg.domain == app.get("domain") and str(seg.app_id) == segment_id
429
+ ),
428
430
  None
429
431
  )
430
-
432
+
431
433
  if not matched_segment:
432
- return (None, None, f"Error: No matching clientless App found for domain '{app.get('domain')}' in existing segments.")
434
+ return (None, None, f"Error: No matching clientless App found for domain \
435
+ '{app.get('domain')}' in existing segments.")
433
436
 
434
437
  # Update the app with required IDs
435
438
  app["appId"] = segment_id
436
439
  app["id"] = matched_segment.id
437
440
  body["clientlessApps"].append(app)
438
441
 
439
- # Handle port ranges
440
442
  if "tcp_port_ranges" in body:
441
443
  body["tcpPortRanges"] = body.pop("tcp_port_ranges")
442
- elif "tcp_port_range" in body:
444
+ else:
445
+ body["tcpPortRanges"] = []
446
+
447
+ if "tcp_port_range" in body:
443
448
  body["tcpPortRange"] = [{"from": pr["from"], "to": pr["to"]} for pr in body.pop("tcp_port_range")]
449
+ else:
450
+ body["tcpPortRange"] = []
444
451
 
445
452
  if "udp_port_ranges" in body:
446
453
  body["udpPortRanges"] = body.pop("udp_port_ranges")
447
- elif "udp_port_range" in body:
454
+ else:
455
+ body["udpPortRanges"] = [] # Explicitly clear if not provided
456
+
457
+ if "udp_port_range" in body:
448
458
  body["udpPortRange"] = [{"from": pr["from"], "to": pr["to"]} for pr in body.pop("udp_port_range")]
459
+ else:
460
+ body["udpPortRange"] = [] # Explicitly clear if not provided
449
461
 
450
462
  add_id_groups(self.reformat_params, kwargs, body)
451
463
 
@@ -310,7 +310,7 @@ class AppSegmentsBAV2API(APIClient):
310
310
  Create an application segment using **new TCP port format** (`tcp_port_range`):
311
311
 
312
312
  >>> updated_segment, _, err = client.zpa.app_segments_ba_v2.add_segment_ba(
313
- ... segment_id='1455863112',
313
+ ... segment_id='1455863112',
314
314
  ... name=f"UpdatedBASegment_{random.randint(1000, 10000)}",
315
315
  ... description=f"UpdatedBASegment_{random.randint(1000, 10000)}",
316
316
  ... enabled=True,
@@ -398,16 +398,25 @@ class AppSegmentsBAV2API(APIClient):
398
398
 
399
399
  body["commonAppsDto"] = common_apps_dto
400
400
 
401
- # --- Normalize port ranges ---
402
401
  if "tcp_port_ranges" in body:
403
402
  body["tcpPortRanges"] = body.pop("tcp_port_ranges")
404
- elif "tcp_port_range" in body:
403
+ else:
404
+ body["tcpPortRanges"] = []
405
+
406
+ if "tcp_port_range" in body:
405
407
  body["tcpPortRange"] = [{"from": pr["from"], "to": pr["to"]} for pr in body.pop("tcp_port_range")]
408
+ else:
409
+ body["tcpPortRange"] = []
406
410
 
407
411
  if "udp_port_ranges" in body:
408
412
  body["udpPortRanges"] = body.pop("udp_port_ranges")
409
- elif "udp_port_range" in body:
413
+ else:
414
+ body["udpPortRanges"] = [] # Explicitly clear if not provided
415
+
416
+ if "udp_port_range" in body:
410
417
  body["udpPortRange"] = [{"from": pr["from"], "to": pr["to"]} for pr in body.pop("udp_port_range")]
418
+ else:
419
+ body["udpPortRange"] = [] # Explicitly clear if not provided
411
420
 
412
421
  add_id_groups(self.reformat_params, kwargs, body)
413
422
 
@@ -434,16 +434,25 @@ class AppSegmentsInspectionAPI(APIClient):
434
434
 
435
435
  body["commonAppsDto"] = common_apps_dto
436
436
 
437
- # --- Normalize port ranges ---
438
437
  if "tcp_port_ranges" in body:
439
438
  body["tcpPortRanges"] = body.pop("tcp_port_ranges")
440
- elif "tcp_port_range" in body:
439
+ else:
440
+ body["tcpPortRanges"] = []
441
+
442
+ if "tcp_port_range" in body:
441
443
  body["tcpPortRange"] = [{"from": pr["from"], "to": pr["to"]} for pr in body.pop("tcp_port_range")]
444
+ else:
445
+ body["tcpPortRange"] = []
442
446
 
443
447
  if "udp_port_ranges" in body:
444
448
  body["udpPortRanges"] = body.pop("udp_port_ranges")
445
- elif "udp_port_range" in body:
449
+ else:
450
+ body["udpPortRanges"] = [] # Explicitly clear if not provided
451
+
452
+ if "udp_port_range" in body:
446
453
  body["udpPortRange"] = [{"from": pr["from"], "to": pr["to"]} for pr in body.pop("udp_port_range")]
454
+ else:
455
+ body["udpPortRange"] = [] # Explicitly clear if not provided
447
456
 
448
457
  add_id_groups(self.reformat_params, kwargs, body)
449
458
 
@@ -393,16 +393,25 @@ class AppSegmentsPRAAPI(APIClient):
393
393
 
394
394
  body["commonAppsDto"] = common_apps_dto
395
395
 
396
- # --- Normalize port ranges ---
397
396
  if "tcp_port_ranges" in body:
398
397
  body["tcpPortRanges"] = body.pop("tcp_port_ranges")
399
- elif "tcp_port_range" in body:
398
+ else:
399
+ body["tcpPortRanges"] = []
400
+
401
+ if "tcp_port_range" in body:
400
402
  body["tcpPortRange"] = [{"from": pr["from"], "to": pr["to"]} for pr in body.pop("tcp_port_range")]
403
+ else:
404
+ body["tcpPortRange"] = []
401
405
 
402
406
  if "udp_port_ranges" in body:
403
407
  body["udpPortRanges"] = body.pop("udp_port_ranges")
404
- elif "udp_port_range" in body:
408
+ else:
409
+ body["udpPortRanges"] = [] # Explicitly clear if not provided
410
+
411
+ if "udp_port_range" in body:
405
412
  body["udpPortRange"] = [{"from": pr["from"], "to": pr["to"]} for pr in body.pop("udp_port_range")]
413
+ else:
414
+ body["udpPortRange"] = [] # Explicitly clear if not provided
406
415
 
407
416
  add_id_groups(self.reformat_params, kwargs, body)
408
417
 
@@ -432,13 +432,23 @@ class ApplicationSegmentAPI(APIClient):
432
432
 
433
433
  if "tcp_port_ranges" in body:
434
434
  body["tcpPortRanges"] = body.pop("tcp_port_ranges")
435
- elif "tcp_port_range" in body:
435
+ else:
436
+ body["tcpPortRanges"] = []
437
+
438
+ if "tcp_port_range" in body:
436
439
  body["tcpPortRange"] = [{"from": pr["from"], "to": pr["to"]} for pr in body.pop("tcp_port_range")]
440
+ else:
441
+ body["tcpPortRange"] = []
437
442
 
438
443
  if "udp_port_ranges" in body:
439
444
  body["udpPortRanges"] = body.pop("udp_port_ranges")
440
- elif "udp_port_range" in body:
445
+ else:
446
+ body["udpPortRanges"] = [] # Explicitly clear if not provided
447
+
448
+ if "udp_port_range" in body:
441
449
  body["udpPortRange"] = [{"from": pr["from"], "to": pr["to"]} for pr in body.pop("udp_port_range")]
450
+ else:
451
+ body["udpPortRange"] = [] # Explicitly clear if not provided
442
452
 
443
453
  add_id_groups(self.reformat_params, kwargs, body)
444
454
 
@@ -844,7 +854,7 @@ class ApplicationSegmentAPI(APIClient):
844
854
  except Exception as error:
845
855
  return (None, response, error)
846
856
  return (result, response, None)
847
-
857
+
848
858
  def update_weighted_lb_config(self, segment_id: str, query_params=None, **kwargs) -> tuple:
849
859
  """
850
860
  Updates the Weighted Load Balancing configuration for the specified Application Segment.
@@ -868,7 +878,7 @@ class ApplicationSegmentAPI(APIClient):
868
878
  application_to_server_group_mappings (list of dict):
869
879
  A list of mappings that define server groups and their associated weights and passive flags.
870
880
  Each item must be a dictionary with the following keys:
871
-
881
+
872
882
  - `id` (str): The ID of the server group.
873
883
  - `weight` (str): The weight assigned to this server group.
874
884
  - `passive` (bool): Indicates whether the server group operates in passive mode.