zscaler-sdk-python 1.7.7__tar.gz → 1.7.9__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 (425) hide show
  1. {zscaler_sdk_python-1.7.7 → zscaler_sdk_python-1.7.9}/PKG-INFO +1 -1
  2. {zscaler_sdk_python-1.7.7 → zscaler_sdk_python-1.7.9}/pyproject.toml +1 -1
  3. {zscaler_sdk_python-1.7.7 → zscaler_sdk_python-1.7.9}/zscaler/__init__.py +1 -1
  4. {zscaler_sdk_python-1.7.7 → zscaler_sdk_python-1.7.9}/zscaler/helpers.py +1 -0
  5. {zscaler_sdk_python-1.7.7 → zscaler_sdk_python-1.7.9}/zscaler/oneapi_client.py +4 -0
  6. {zscaler_sdk_python-1.7.7 → zscaler_sdk_python-1.7.9}/zscaler/request_executor.py +2 -8
  7. {zscaler_sdk_python-1.7.7 → zscaler_sdk_python-1.7.9}/zscaler/zia/legacy.py +105 -9
  8. {zscaler_sdk_python-1.7.7 → zscaler_sdk_python-1.7.9}/zscaler/zia/models/location_management.py +7 -3
  9. {zscaler_sdk_python-1.7.7 → zscaler_sdk_python-1.7.9}/LICENSE.md +0 -0
  10. {zscaler_sdk_python-1.7.7 → zscaler_sdk_python-1.7.9}/README.md +0 -0
  11. {zscaler_sdk_python-1.7.7 → zscaler_sdk_python-1.7.9}/zscaler/api_client.py +0 -0
  12. {zscaler_sdk_python-1.7.7 → zscaler_sdk_python-1.7.9}/zscaler/cache/__init__.py +0 -0
  13. {zscaler_sdk_python-1.7.7 → zscaler_sdk_python-1.7.9}/zscaler/cache/cache.py +0 -0
  14. {zscaler_sdk_python-1.7.7 → zscaler_sdk_python-1.7.9}/zscaler/cache/no_op_cache.py +0 -0
  15. {zscaler_sdk_python-1.7.7 → zscaler_sdk_python-1.7.9}/zscaler/cache/zscaler_cache.py +0 -0
  16. {zscaler_sdk_python-1.7.7 → zscaler_sdk_python-1.7.9}/zscaler/config/__init__.py +0 -0
  17. {zscaler_sdk_python-1.7.7 → zscaler_sdk_python-1.7.9}/zscaler/config/config_setter.py +0 -0
  18. {zscaler_sdk_python-1.7.7 → zscaler_sdk_python-1.7.9}/zscaler/config/config_validator.py +0 -0
  19. {zscaler_sdk_python-1.7.7 → zscaler_sdk_python-1.7.9}/zscaler/constants.py +0 -0
  20. {zscaler_sdk_python-1.7.7 → zscaler_sdk_python-1.7.9}/zscaler/error_messages.py +0 -0
  21. {zscaler_sdk_python-1.7.7 → zscaler_sdk_python-1.7.9}/zscaler/errors/__init__.py +0 -0
  22. {zscaler_sdk_python-1.7.7 → zscaler_sdk_python-1.7.9}/zscaler/errors/error.py +0 -0
  23. {zscaler_sdk_python-1.7.7 → zscaler_sdk_python-1.7.9}/zscaler/errors/http_error.py +0 -0
  24. {zscaler_sdk_python-1.7.7 → zscaler_sdk_python-1.7.9}/zscaler/errors/response_checker.py +0 -0
  25. {zscaler_sdk_python-1.7.7 → zscaler_sdk_python-1.7.9}/zscaler/errors/zscaler_api_error.py +0 -0
  26. {zscaler_sdk_python-1.7.7 → zscaler_sdk_python-1.7.9}/zscaler/exceptions/__init__.py +0 -0
  27. {zscaler_sdk_python-1.7.7 → zscaler_sdk_python-1.7.9}/zscaler/exceptions/exceptions.py +0 -0
  28. {zscaler_sdk_python-1.7.7 → zscaler_sdk_python-1.7.9}/zscaler/logger.py +0 -0
  29. {zscaler_sdk_python-1.7.7 → zscaler_sdk_python-1.7.9}/zscaler/oneapi_collection.py +0 -0
  30. {zscaler_sdk_python-1.7.7 → zscaler_sdk_python-1.7.9}/zscaler/oneapi_http_client.py +0 -0
  31. {zscaler_sdk_python-1.7.7 → zscaler_sdk_python-1.7.9}/zscaler/oneapi_oauth_client.py +0 -0
  32. {zscaler_sdk_python-1.7.7 → zscaler_sdk_python-1.7.9}/zscaler/oneapi_object.py +0 -0
  33. {zscaler_sdk_python-1.7.7 → zscaler_sdk_python-1.7.9}/zscaler/oneapi_response.py +0 -0
  34. {zscaler_sdk_python-1.7.7 → zscaler_sdk_python-1.7.9}/zscaler/ratelimiter/__init__.py +0 -0
  35. {zscaler_sdk_python-1.7.7 → zscaler_sdk_python-1.7.9}/zscaler/ratelimiter/ratelimiter.py +0 -0
  36. {zscaler_sdk_python-1.7.7 → zscaler_sdk_python-1.7.9}/zscaler/user_agent.py +0 -0
  37. {zscaler_sdk_python-1.7.7 → zscaler_sdk_python-1.7.9}/zscaler/utils.py +0 -0
  38. {zscaler_sdk_python-1.7.7 → zscaler_sdk_python-1.7.9}/zscaler/zcc/__init__.py +0 -0
  39. {zscaler_sdk_python-1.7.7 → zscaler_sdk_python-1.7.9}/zscaler/zcc/admin_user.py +0 -0
  40. {zscaler_sdk_python-1.7.7 → zscaler_sdk_python-1.7.9}/zscaler/zcc/company.py +0 -0
  41. {zscaler_sdk_python-1.7.7 → zscaler_sdk_python-1.7.9}/zscaler/zcc/devices.py +0 -0
  42. {zscaler_sdk_python-1.7.7 → zscaler_sdk_python-1.7.9}/zscaler/zcc/entitlements.py +0 -0
  43. {zscaler_sdk_python-1.7.7 → zscaler_sdk_python-1.7.9}/zscaler/zcc/fail_open_policy.py +0 -0
  44. {zscaler_sdk_python-1.7.7 → zscaler_sdk_python-1.7.9}/zscaler/zcc/forwarding_profile.py +0 -0
  45. {zscaler_sdk_python-1.7.7 → zscaler_sdk_python-1.7.9}/zscaler/zcc/legacy.py +0 -0
  46. {zscaler_sdk_python-1.7.7 → zscaler_sdk_python-1.7.9}/zscaler/zcc/models/admin_roles.py +0 -0
  47. {zscaler_sdk_python-1.7.7 → zscaler_sdk_python-1.7.9}/zscaler/zcc/models/admin_user.py +0 -0
  48. {zscaler_sdk_python-1.7.7 → zscaler_sdk_python-1.7.9}/zscaler/zcc/models/devices.py +0 -0
  49. {zscaler_sdk_python-1.7.7 → zscaler_sdk_python-1.7.9}/zscaler/zcc/models/failopenpolicy.py +0 -0
  50. {zscaler_sdk_python-1.7.7 → zscaler_sdk_python-1.7.9}/zscaler/zcc/models/forwardingprofile.py +0 -0
  51. {zscaler_sdk_python-1.7.7 → zscaler_sdk_python-1.7.9}/zscaler/zcc/models/getcompanyinfo.py +0 -0
  52. {zscaler_sdk_python-1.7.7 → zscaler_sdk_python-1.7.9}/zscaler/zcc/models/manage_pass.py +0 -0
  53. {zscaler_sdk_python-1.7.7 → zscaler_sdk_python-1.7.9}/zscaler/zcc/models/secrets_otp.py +0 -0
  54. {zscaler_sdk_python-1.7.7 → zscaler_sdk_python-1.7.9}/zscaler/zcc/models/secrets_passwords.py +0 -0
  55. {zscaler_sdk_python-1.7.7 → zscaler_sdk_python-1.7.9}/zscaler/zcc/models/trustednetworks.py +0 -0
  56. {zscaler_sdk_python-1.7.7 → zscaler_sdk_python-1.7.9}/zscaler/zcc/models/webappservice.py +0 -0
  57. {zscaler_sdk_python-1.7.7 → zscaler_sdk_python-1.7.9}/zscaler/zcc/models/webpolicy.py +0 -0
  58. {zscaler_sdk_python-1.7.7 → zscaler_sdk_python-1.7.9}/zscaler/zcc/models/webprivacy.py +0 -0
  59. {zscaler_sdk_python-1.7.7 → zscaler_sdk_python-1.7.9}/zscaler/zcc/models/zdxgroupentitlements.py +0 -0
  60. {zscaler_sdk_python-1.7.7 → zscaler_sdk_python-1.7.9}/zscaler/zcc/models/zpagroupentitlements.py +0 -0
  61. {zscaler_sdk_python-1.7.7 → zscaler_sdk_python-1.7.9}/zscaler/zcc/secrets.py +0 -0
  62. {zscaler_sdk_python-1.7.7 → zscaler_sdk_python-1.7.9}/zscaler/zcc/trusted_networks.py +0 -0
  63. {zscaler_sdk_python-1.7.7 → zscaler_sdk_python-1.7.9}/zscaler/zcc/web_app_service.py +0 -0
  64. {zscaler_sdk_python-1.7.7 → zscaler_sdk_python-1.7.9}/zscaler/zcc/web_policy.py +0 -0
  65. {zscaler_sdk_python-1.7.7 → zscaler_sdk_python-1.7.9}/zscaler/zcc/web_privacy.py +0 -0
  66. {zscaler_sdk_python-1.7.7 → zscaler_sdk_python-1.7.9}/zscaler/zcc/zcc_service.py +0 -0
  67. {zscaler_sdk_python-1.7.7 → zscaler_sdk_python-1.7.9}/zscaler/zdx/__init__.py +0 -0
  68. {zscaler_sdk_python-1.7.7 → zscaler_sdk_python-1.7.9}/zscaler/zdx/admin.py +0 -0
  69. {zscaler_sdk_python-1.7.7 → zscaler_sdk_python-1.7.9}/zscaler/zdx/alerts.py +0 -0
  70. {zscaler_sdk_python-1.7.7 → zscaler_sdk_python-1.7.9}/zscaler/zdx/apps.py +0 -0
  71. {zscaler_sdk_python-1.7.7 → zscaler_sdk_python-1.7.9}/zscaler/zdx/devices.py +0 -0
  72. {zscaler_sdk_python-1.7.7 → zscaler_sdk_python-1.7.9}/zscaler/zdx/inventory.py +0 -0
  73. {zscaler_sdk_python-1.7.7 → zscaler_sdk_python-1.7.9}/zscaler/zdx/legacy.py +0 -0
  74. {zscaler_sdk_python-1.7.7 → zscaler_sdk_python-1.7.9}/zscaler/zdx/models/administration.py +0 -0
  75. {zscaler_sdk_python-1.7.7 → zscaler_sdk_python-1.7.9}/zscaler/zdx/models/alerts.py +0 -0
  76. {zscaler_sdk_python-1.7.7 → zscaler_sdk_python-1.7.9}/zscaler/zdx/models/application_users.py +0 -0
  77. {zscaler_sdk_python-1.7.7 → zscaler_sdk_python-1.7.9}/zscaler/zdx/models/applications.py +0 -0
  78. {zscaler_sdk_python-1.7.7 → zscaler_sdk_python-1.7.9}/zscaler/zdx/models/call_quality_metrics.py +0 -0
  79. {zscaler_sdk_python-1.7.7 → zscaler_sdk_python-1.7.9}/zscaler/zdx/models/common.py +0 -0
  80. {zscaler_sdk_python-1.7.7 → zscaler_sdk_python-1.7.9}/zscaler/zdx/models/devices.py +0 -0
  81. {zscaler_sdk_python-1.7.7 → zscaler_sdk_python-1.7.9}/zscaler/zdx/models/snapshot.py +0 -0
  82. {zscaler_sdk_python-1.7.7 → zscaler_sdk_python-1.7.9}/zscaler/zdx/models/software_inventory.py +0 -0
  83. {zscaler_sdk_python-1.7.7 → zscaler_sdk_python-1.7.9}/zscaler/zdx/models/troubleshooting.py +0 -0
  84. {zscaler_sdk_python-1.7.7 → zscaler_sdk_python-1.7.9}/zscaler/zdx/models/users.py +0 -0
  85. {zscaler_sdk_python-1.7.7 → zscaler_sdk_python-1.7.9}/zscaler/zdx/snapshot.py +0 -0
  86. {zscaler_sdk_python-1.7.7 → zscaler_sdk_python-1.7.9}/zscaler/zdx/troubleshooting.py +0 -0
  87. {zscaler_sdk_python-1.7.7 → zscaler_sdk_python-1.7.9}/zscaler/zdx/users.py +0 -0
  88. {zscaler_sdk_python-1.7.7 → zscaler_sdk_python-1.7.9}/zscaler/zdx/zdx_service.py +0 -0
  89. {zscaler_sdk_python-1.7.7 → zscaler_sdk_python-1.7.9}/zscaler/zia/__init__.py +0 -0
  90. {zscaler_sdk_python-1.7.7 → zscaler_sdk_python-1.7.9}/zscaler/zia/activate.py +0 -0
  91. {zscaler_sdk_python-1.7.7 → zscaler_sdk_python-1.7.9}/zscaler/zia/admin_roles.py +0 -0
  92. {zscaler_sdk_python-1.7.7 → zscaler_sdk_python-1.7.9}/zscaler/zia/admin_users.py +0 -0
  93. {zscaler_sdk_python-1.7.7 → zscaler_sdk_python-1.7.9}/zscaler/zia/advanced_settings.py +0 -0
  94. {zscaler_sdk_python-1.7.7 → zscaler_sdk_python-1.7.9}/zscaler/zia/alert_subscriptions.py +0 -0
  95. {zscaler_sdk_python-1.7.7 → zscaler_sdk_python-1.7.9}/zscaler/zia/apptotal.py +0 -0
  96. {zscaler_sdk_python-1.7.7 → zscaler_sdk_python-1.7.9}/zscaler/zia/atp_policy.py +0 -0
  97. {zscaler_sdk_python-1.7.7 → zscaler_sdk_python-1.7.9}/zscaler/zia/audit_logs.py +0 -0
  98. {zscaler_sdk_python-1.7.7 → zscaler_sdk_python-1.7.9}/zscaler/zia/authentication_settings.py +0 -0
  99. {zscaler_sdk_python-1.7.7 → zscaler_sdk_python-1.7.9}/zscaler/zia/bandwidth_classes.py +0 -0
  100. {zscaler_sdk_python-1.7.7 → zscaler_sdk_python-1.7.9}/zscaler/zia/bandwidth_control_rules.py +0 -0
  101. {zscaler_sdk_python-1.7.7 → zscaler_sdk_python-1.7.9}/zscaler/zia/browser_control_settings.py +0 -0
  102. {zscaler_sdk_python-1.7.7 → zscaler_sdk_python-1.7.9}/zscaler/zia/casb_dlp_rules.py +0 -0
  103. {zscaler_sdk_python-1.7.7 → zscaler_sdk_python-1.7.9}/zscaler/zia/casb_malware_rules.py +0 -0
  104. {zscaler_sdk_python-1.7.7 → zscaler_sdk_python-1.7.9}/zscaler/zia/cloud_app_instances.py +0 -0
  105. {zscaler_sdk_python-1.7.7 → zscaler_sdk_python-1.7.9}/zscaler/zia/cloud_applications.py +0 -0
  106. {zscaler_sdk_python-1.7.7 → zscaler_sdk_python-1.7.9}/zscaler/zia/cloud_browser_isolation.py +0 -0
  107. {zscaler_sdk_python-1.7.7 → zscaler_sdk_python-1.7.9}/zscaler/zia/cloud_firewall.py +0 -0
  108. {zscaler_sdk_python-1.7.7 → zscaler_sdk_python-1.7.9}/zscaler/zia/cloud_firewall_dns.py +0 -0
  109. {zscaler_sdk_python-1.7.7 → zscaler_sdk_python-1.7.9}/zscaler/zia/cloud_firewall_ips.py +0 -0
  110. {zscaler_sdk_python-1.7.7 → zscaler_sdk_python-1.7.9}/zscaler/zia/cloud_firewall_rules.py +0 -0
  111. {zscaler_sdk_python-1.7.7 → zscaler_sdk_python-1.7.9}/zscaler/zia/cloud_nss.py +0 -0
  112. {zscaler_sdk_python-1.7.7 → zscaler_sdk_python-1.7.9}/zscaler/zia/cloud_to_cloud_ir.py +0 -0
  113. {zscaler_sdk_python-1.7.7 → zscaler_sdk_python-1.7.9}/zscaler/zia/cloudappcontrol.py +0 -0
  114. {zscaler_sdk_python-1.7.7 → zscaler_sdk_python-1.7.9}/zscaler/zia/dedicated_ip_gateways.py +0 -0
  115. {zscaler_sdk_python-1.7.7 → zscaler_sdk_python-1.7.9}/zscaler/zia/device_management.py +0 -0
  116. {zscaler_sdk_python-1.7.7 → zscaler_sdk_python-1.7.9}/zscaler/zia/dlp_dictionary.py +0 -0
  117. {zscaler_sdk_python-1.7.7 → zscaler_sdk_python-1.7.9}/zscaler/zia/dlp_engine.py +0 -0
  118. {zscaler_sdk_python-1.7.7 → zscaler_sdk_python-1.7.9}/zscaler/zia/dlp_resources.py +0 -0
  119. {zscaler_sdk_python-1.7.7 → zscaler_sdk_python-1.7.9}/zscaler/zia/dlp_templates.py +0 -0
  120. {zscaler_sdk_python-1.7.7 → zscaler_sdk_python-1.7.9}/zscaler/zia/dlp_web_rules.py +0 -0
  121. {zscaler_sdk_python-1.7.7 → zscaler_sdk_python-1.7.9}/zscaler/zia/dns_gatways.py +0 -0
  122. {zscaler_sdk_python-1.7.7 → zscaler_sdk_python-1.7.9}/zscaler/zia/end_user_notification.py +0 -0
  123. {zscaler_sdk_python-1.7.7 → zscaler_sdk_python-1.7.9}/zscaler/zia/file_type_control_rule.py +0 -0
  124. {zscaler_sdk_python-1.7.7 → zscaler_sdk_python-1.7.9}/zscaler/zia/forwarding_control.py +0 -0
  125. {zscaler_sdk_python-1.7.7 → zscaler_sdk_python-1.7.9}/zscaler/zia/ftp_control_policy.py +0 -0
  126. {zscaler_sdk_python-1.7.7 → zscaler_sdk_python-1.7.9}/zscaler/zia/gre_tunnel.py +0 -0
  127. {zscaler_sdk_python-1.7.7 → zscaler_sdk_python-1.7.9}/zscaler/zia/intermediate_certificates.py +0 -0
  128. {zscaler_sdk_python-1.7.7 → zscaler_sdk_python-1.7.9}/zscaler/zia/iot_report.py +0 -0
  129. {zscaler_sdk_python-1.7.7 → zscaler_sdk_python-1.7.9}/zscaler/zia/ipv6_config.py +0 -0
  130. {zscaler_sdk_python-1.7.7 → zscaler_sdk_python-1.7.9}/zscaler/zia/locations.py +0 -0
  131. {zscaler_sdk_python-1.7.7 → zscaler_sdk_python-1.7.9}/zscaler/zia/malware_protection_policy.py +0 -0
  132. {zscaler_sdk_python-1.7.7 → zscaler_sdk_python-1.7.9}/zscaler/zia/mobile_threat_settings.py +0 -0
  133. {zscaler_sdk_python-1.7.7 → zscaler_sdk_python-1.7.9}/zscaler/zia/models/__init__.py +0 -0
  134. {zscaler_sdk_python-1.7.7 → zscaler_sdk_python-1.7.9}/zscaler/zia/models/activation.py +0 -0
  135. {zscaler_sdk_python-1.7.7 → zscaler_sdk_python-1.7.9}/zscaler/zia/models/admin_roles.py +0 -0
  136. {zscaler_sdk_python-1.7.7 → zscaler_sdk_python-1.7.9}/zscaler/zia/models/admin_users.py +0 -0
  137. {zscaler_sdk_python-1.7.7 → zscaler_sdk_python-1.7.9}/zscaler/zia/models/advanced_settings.py +0 -0
  138. {zscaler_sdk_python-1.7.7 → zscaler_sdk_python-1.7.9}/zscaler/zia/models/advanced_threat_settings.py +0 -0
  139. {zscaler_sdk_python-1.7.7 → zscaler_sdk_python-1.7.9}/zscaler/zia/models/alert_subscriptions.py +0 -0
  140. {zscaler_sdk_python-1.7.7 → zscaler_sdk_python-1.7.9}/zscaler/zia/models/apptotal.py +0 -0
  141. {zscaler_sdk_python-1.7.7 → zscaler_sdk_python-1.7.9}/zscaler/zia/models/authentication_settings.py +0 -0
  142. {zscaler_sdk_python-1.7.7 → zscaler_sdk_python-1.7.9}/zscaler/zia/models/bandwidth_classes.py +0 -0
  143. {zscaler_sdk_python-1.7.7 → zscaler_sdk_python-1.7.9}/zscaler/zia/models/bandwidth_control_rules.py +0 -0
  144. {zscaler_sdk_python-1.7.7 → zscaler_sdk_python-1.7.9}/zscaler/zia/models/browser_control_settings.py +0 -0
  145. {zscaler_sdk_python-1.7.7 → zscaler_sdk_python-1.7.9}/zscaler/zia/models/casb_dlp_rules.py +0 -0
  146. {zscaler_sdk_python-1.7.7 → zscaler_sdk_python-1.7.9}/zscaler/zia/models/casb_malware_rules.py +0 -0
  147. {zscaler_sdk_python-1.7.7 → zscaler_sdk_python-1.7.9}/zscaler/zia/models/cloud_app_instances.py +0 -0
  148. {zscaler_sdk_python-1.7.7 → zscaler_sdk_python-1.7.9}/zscaler/zia/models/cloud_app_policy.py +0 -0
  149. {zscaler_sdk_python-1.7.7 → zscaler_sdk_python-1.7.9}/zscaler/zia/models/cloud_browser_isolation.py +0 -0
  150. {zscaler_sdk_python-1.7.7 → zscaler_sdk_python-1.7.9}/zscaler/zia/models/cloud_firewall_app_services.py +0 -0
  151. {zscaler_sdk_python-1.7.7 → zscaler_sdk_python-1.7.9}/zscaler/zia/models/cloud_firewall_destination_groups.py +0 -0
  152. {zscaler_sdk_python-1.7.7 → zscaler_sdk_python-1.7.9}/zscaler/zia/models/cloud_firewall_dns_rules.py +0 -0
  153. {zscaler_sdk_python-1.7.7 → zscaler_sdk_python-1.7.9}/zscaler/zia/models/cloud_firewall_ips_rules.py +0 -0
  154. {zscaler_sdk_python-1.7.7 → zscaler_sdk_python-1.7.9}/zscaler/zia/models/cloud_firewall_nw_application_groups.py +0 -0
  155. {zscaler_sdk_python-1.7.7 → zscaler_sdk_python-1.7.9}/zscaler/zia/models/cloud_firewall_nw_applications.py +0 -0
  156. {zscaler_sdk_python-1.7.7 → zscaler_sdk_python-1.7.9}/zscaler/zia/models/cloud_firewall_nw_service.py +0 -0
  157. {zscaler_sdk_python-1.7.7 → zscaler_sdk_python-1.7.9}/zscaler/zia/models/cloud_firewall_nw_service_groups.py +0 -0
  158. {zscaler_sdk_python-1.7.7 → zscaler_sdk_python-1.7.9}/zscaler/zia/models/cloud_firewall_rules.py +0 -0
  159. {zscaler_sdk_python-1.7.7 → zscaler_sdk_python-1.7.9}/zscaler/zia/models/cloud_firewall_source_groups.py +0 -0
  160. {zscaler_sdk_python-1.7.7 → zscaler_sdk_python-1.7.9}/zscaler/zia/models/cloud_firewall_time_windows.py +0 -0
  161. {zscaler_sdk_python-1.7.7 → zscaler_sdk_python-1.7.9}/zscaler/zia/models/cloud_nss.py +0 -0
  162. {zscaler_sdk_python-1.7.7 → zscaler_sdk_python-1.7.9}/zscaler/zia/models/cloud_to_cloud_ir.py +0 -0
  163. {zscaler_sdk_python-1.7.7 → zscaler_sdk_python-1.7.9}/zscaler/zia/models/cloudappcontrol.py +0 -0
  164. {zscaler_sdk_python-1.7.7 → zscaler_sdk_python-1.7.9}/zscaler/zia/models/common.py +0 -0
  165. {zscaler_sdk_python-1.7.7 → zscaler_sdk_python-1.7.9}/zscaler/zia/models/dedicated_ip_gateways.py +0 -0
  166. {zscaler_sdk_python-1.7.7 → zscaler_sdk_python-1.7.9}/zscaler/zia/models/device_groups.py +0 -0
  167. {zscaler_sdk_python-1.7.7 → zscaler_sdk_python-1.7.9}/zscaler/zia/models/devices.py +0 -0
  168. {zscaler_sdk_python-1.7.7 → zscaler_sdk_python-1.7.9}/zscaler/zia/models/dlp_dictionary.py +0 -0
  169. {zscaler_sdk_python-1.7.7 → zscaler_sdk_python-1.7.9}/zscaler/zia/models/dlp_engine.py +0 -0
  170. {zscaler_sdk_python-1.7.7 → zscaler_sdk_python-1.7.9}/zscaler/zia/models/dlp_resources.py +0 -0
  171. {zscaler_sdk_python-1.7.7 → zscaler_sdk_python-1.7.9}/zscaler/zia/models/dlp_templates.py +0 -0
  172. {zscaler_sdk_python-1.7.7 → zscaler_sdk_python-1.7.9}/zscaler/zia/models/dlp_web_rules.py +0 -0
  173. {zscaler_sdk_python-1.7.7 → zscaler_sdk_python-1.7.9}/zscaler/zia/models/dns_gateways.py +0 -0
  174. {zscaler_sdk_python-1.7.7 → zscaler_sdk_python-1.7.9}/zscaler/zia/models/endusernotification.py +0 -0
  175. {zscaler_sdk_python-1.7.7 → zscaler_sdk_python-1.7.9}/zscaler/zia/models/filetyperules.py +0 -0
  176. {zscaler_sdk_python-1.7.7 → zscaler_sdk_python-1.7.9}/zscaler/zia/models/forwarding_control_policy.py +0 -0
  177. {zscaler_sdk_python-1.7.7 → zscaler_sdk_python-1.7.9}/zscaler/zia/models/ftp_control_policy.py +0 -0
  178. {zscaler_sdk_python-1.7.7 → zscaler_sdk_python-1.7.9}/zscaler/zia/models/gre_recommended_list.py +0 -0
  179. {zscaler_sdk_python-1.7.7 → zscaler_sdk_python-1.7.9}/zscaler/zia/models/gre_tunnel_info.py +0 -0
  180. {zscaler_sdk_python-1.7.7 → zscaler_sdk_python-1.7.9}/zscaler/zia/models/gre_tunnels.py +0 -0
  181. {zscaler_sdk_python-1.7.7 → zscaler_sdk_python-1.7.9}/zscaler/zia/models/gre_vips.py +0 -0
  182. {zscaler_sdk_python-1.7.7 → zscaler_sdk_python-1.7.9}/zscaler/zia/models/intermediate_certificates.py +0 -0
  183. {zscaler_sdk_python-1.7.7 → zscaler_sdk_python-1.7.9}/zscaler/zia/models/iotreport.py +0 -0
  184. {zscaler_sdk_python-1.7.7 → zscaler_sdk_python-1.7.9}/zscaler/zia/models/ipv6_config.py +0 -0
  185. {zscaler_sdk_python-1.7.7 → zscaler_sdk_python-1.7.9}/zscaler/zia/models/location_group.py +0 -0
  186. {zscaler_sdk_python-1.7.7 → zscaler_sdk_python-1.7.9}/zscaler/zia/models/malware_protection_settings.py +0 -0
  187. {zscaler_sdk_python-1.7.7 → zscaler_sdk_python-1.7.9}/zscaler/zia/models/mobile_threat_settings.py +0 -0
  188. {zscaler_sdk_python-1.7.7 → zscaler_sdk_python-1.7.9}/zscaler/zia/models/nat_control_policy.py +0 -0
  189. {zscaler_sdk_python-1.7.7 → zscaler_sdk_python-1.7.9}/zscaler/zia/models/nss_servers.py +0 -0
  190. {zscaler_sdk_python-1.7.7 → zscaler_sdk_python-1.7.9}/zscaler/zia/models/organization_information.py +0 -0
  191. {zscaler_sdk_python-1.7.7 → zscaler_sdk_python-1.7.9}/zscaler/zia/models/pac_files.py +0 -0
  192. {zscaler_sdk_python-1.7.7 → zscaler_sdk_python-1.7.9}/zscaler/zia/models/proxies.py +0 -0
  193. {zscaler_sdk_python-1.7.7 → zscaler_sdk_python-1.7.9}/zscaler/zia/models/proxy_gateways.py +0 -0
  194. {zscaler_sdk_python-1.7.7 → zscaler_sdk_python-1.7.9}/zscaler/zia/models/remoteassistance.py +0 -0
  195. {zscaler_sdk_python-1.7.7 → zscaler_sdk_python-1.7.9}/zscaler/zia/models/risk_profiles.py +0 -0
  196. {zscaler_sdk_python-1.7.7 → zscaler_sdk_python-1.7.9}/zscaler/zia/models/rule_labels.py +0 -0
  197. {zscaler_sdk_python-1.7.7 → zscaler_sdk_python-1.7.9}/zscaler/zia/models/saas_security_api.py +0 -0
  198. {zscaler_sdk_python-1.7.7 → zscaler_sdk_python-1.7.9}/zscaler/zia/models/sandboxrules.py +0 -0
  199. {zscaler_sdk_python-1.7.7 → zscaler_sdk_python-1.7.9}/zscaler/zia/models/security_policy_settings.py +0 -0
  200. {zscaler_sdk_python-1.7.7 → zscaler_sdk_python-1.7.9}/zscaler/zia/models/shadow_it_report.py +0 -0
  201. {zscaler_sdk_python-1.7.7 → zscaler_sdk_python-1.7.9}/zscaler/zia/models/ssl_inspection_rules.py +0 -0
  202. {zscaler_sdk_python-1.7.7 → zscaler_sdk_python-1.7.9}/zscaler/zia/models/subclouds.py +0 -0
  203. {zscaler_sdk_python-1.7.7 → zscaler_sdk_python-1.7.9}/zscaler/zia/models/system_audit.py +0 -0
  204. {zscaler_sdk_python-1.7.7 → zscaler_sdk_python-1.7.9}/zscaler/zia/models/tenancy_restriction_profile.py +0 -0
  205. {zscaler_sdk_python-1.7.7 → zscaler_sdk_python-1.7.9}/zscaler/zia/models/time_intervals.py +0 -0
  206. {zscaler_sdk_python-1.7.7 → zscaler_sdk_python-1.7.9}/zscaler/zia/models/traffic_datacenters.py +0 -0
  207. {zscaler_sdk_python-1.7.7 → zscaler_sdk_python-1.7.9}/zscaler/zia/models/traffic_dc_exclusions.py +0 -0
  208. {zscaler_sdk_python-1.7.7 → zscaler_sdk_python-1.7.9}/zscaler/zia/models/traffic_extranet.py +0 -0
  209. {zscaler_sdk_python-1.7.7 → zscaler_sdk_python-1.7.9}/zscaler/zia/models/traffic_static_ip.py +0 -0
  210. {zscaler_sdk_python-1.7.7 → zscaler_sdk_python-1.7.9}/zscaler/zia/models/traffic_vpn_credentials.py +0 -0
  211. {zscaler_sdk_python-1.7.7 → zscaler_sdk_python-1.7.9}/zscaler/zia/models/url_filter_cloud_app_settings.py +0 -0
  212. {zscaler_sdk_python-1.7.7 → zscaler_sdk_python-1.7.9}/zscaler/zia/models/url_filtering_rules.py +0 -0
  213. {zscaler_sdk_python-1.7.7 → zscaler_sdk_python-1.7.9}/zscaler/zia/models/urlcategory.py +0 -0
  214. {zscaler_sdk_python-1.7.7 → zscaler_sdk_python-1.7.9}/zscaler/zia/models/user_management.py +0 -0
  215. {zscaler_sdk_python-1.7.7 → zscaler_sdk_python-1.7.9}/zscaler/zia/models/vzen_clusters.py +0 -0
  216. {zscaler_sdk_python-1.7.7 → zscaler_sdk_python-1.7.9}/zscaler/zia/models/workload_groups.py +0 -0
  217. {zscaler_sdk_python-1.7.7 → zscaler_sdk_python-1.7.9}/zscaler/zia/models/zpa_gateway.py +0 -0
  218. {zscaler_sdk_python-1.7.7 → zscaler_sdk_python-1.7.9}/zscaler/zia/nat_control_policy.py +0 -0
  219. {zscaler_sdk_python-1.7.7 → zscaler_sdk_python-1.7.9}/zscaler/zia/nss_servers.py +0 -0
  220. {zscaler_sdk_python-1.7.7 → zscaler_sdk_python-1.7.9}/zscaler/zia/organization_information.py +0 -0
  221. {zscaler_sdk_python-1.7.7 → zscaler_sdk_python-1.7.9}/zscaler/zia/pac_files.py +0 -0
  222. {zscaler_sdk_python-1.7.7 → zscaler_sdk_python-1.7.9}/zscaler/zia/policy_export.py +0 -0
  223. {zscaler_sdk_python-1.7.7 → zscaler_sdk_python-1.7.9}/zscaler/zia/proxies.py +0 -0
  224. {zscaler_sdk_python-1.7.7 → zscaler_sdk_python-1.7.9}/zscaler/zia/remote_assistance.py +0 -0
  225. {zscaler_sdk_python-1.7.7 → zscaler_sdk_python-1.7.9}/zscaler/zia/risk_profiles.py +0 -0
  226. {zscaler_sdk_python-1.7.7 → zscaler_sdk_python-1.7.9}/zscaler/zia/rule_labels.py +0 -0
  227. {zscaler_sdk_python-1.7.7 → zscaler_sdk_python-1.7.9}/zscaler/zia/saas_security_api.py +0 -0
  228. {zscaler_sdk_python-1.7.7 → zscaler_sdk_python-1.7.9}/zscaler/zia/sandbox.py +0 -0
  229. {zscaler_sdk_python-1.7.7 → zscaler_sdk_python-1.7.9}/zscaler/zia/sandbox_rules.py +0 -0
  230. {zscaler_sdk_python-1.7.7 → zscaler_sdk_python-1.7.9}/zscaler/zia/security_policy_settings.py +0 -0
  231. {zscaler_sdk_python-1.7.7 → zscaler_sdk_python-1.7.9}/zscaler/zia/shadow_it_report.py +0 -0
  232. {zscaler_sdk_python-1.7.7 → zscaler_sdk_python-1.7.9}/zscaler/zia/ssl_inspection_rules.py +0 -0
  233. {zscaler_sdk_python-1.7.7 → zscaler_sdk_python-1.7.9}/zscaler/zia/sub_clouds.py +0 -0
  234. {zscaler_sdk_python-1.7.7 → zscaler_sdk_python-1.7.9}/zscaler/zia/system_audit.py +0 -0
  235. {zscaler_sdk_python-1.7.7 → zscaler_sdk_python-1.7.9}/zscaler/zia/tenancy_restriction_profile.py +0 -0
  236. {zscaler_sdk_python-1.7.7 → zscaler_sdk_python-1.7.9}/zscaler/zia/time_intervals.py +0 -0
  237. {zscaler_sdk_python-1.7.7 → zscaler_sdk_python-1.7.9}/zscaler/zia/traffic_datacenters.py +0 -0
  238. {zscaler_sdk_python-1.7.7 → zscaler_sdk_python-1.7.9}/zscaler/zia/traffic_extranet.py +0 -0
  239. {zscaler_sdk_python-1.7.7 → zscaler_sdk_python-1.7.9}/zscaler/zia/traffic_static_ip.py +0 -0
  240. {zscaler_sdk_python-1.7.7 → zscaler_sdk_python-1.7.9}/zscaler/zia/traffic_vpn_credentials.py +0 -0
  241. {zscaler_sdk_python-1.7.7 → zscaler_sdk_python-1.7.9}/zscaler/zia/url_categories.py +0 -0
  242. {zscaler_sdk_python-1.7.7 → zscaler_sdk_python-1.7.9}/zscaler/zia/url_filtering.py +0 -0
  243. {zscaler_sdk_python-1.7.7 → zscaler_sdk_python-1.7.9}/zscaler/zia/user_management.py +0 -0
  244. {zscaler_sdk_python-1.7.7 → zscaler_sdk_python-1.7.9}/zscaler/zia/vzen_clusters.py +0 -0
  245. {zscaler_sdk_python-1.7.7 → zscaler_sdk_python-1.7.9}/zscaler/zia/workload_groups.py +0 -0
  246. {zscaler_sdk_python-1.7.7 → zscaler_sdk_python-1.7.9}/zscaler/zia/zia_service.py +0 -0
  247. {zscaler_sdk_python-1.7.7 → zscaler_sdk_python-1.7.9}/zscaler/zia/zpa_gateway.py +0 -0
  248. {zscaler_sdk_python-1.7.7 → zscaler_sdk_python-1.7.9}/zscaler/zidentity/__init__.py +0 -0
  249. {zscaler_sdk_python-1.7.7 → zscaler_sdk_python-1.7.9}/zscaler/zidentity/api_client.py +0 -0
  250. {zscaler_sdk_python-1.7.7 → zscaler_sdk_python-1.7.9}/zscaler/zidentity/groups.py +0 -0
  251. {zscaler_sdk_python-1.7.7 → zscaler_sdk_python-1.7.9}/zscaler/zidentity/models/api_client.py +0 -0
  252. {zscaler_sdk_python-1.7.7 → zscaler_sdk_python-1.7.9}/zscaler/zidentity/models/common.py +0 -0
  253. {zscaler_sdk_python-1.7.7 → zscaler_sdk_python-1.7.9}/zscaler/zidentity/models/groups.py +0 -0
  254. {zscaler_sdk_python-1.7.7 → zscaler_sdk_python-1.7.9}/zscaler/zidentity/models/resource_servers.py +0 -0
  255. {zscaler_sdk_python-1.7.7 → zscaler_sdk_python-1.7.9}/zscaler/zidentity/models/user_entitlement.py +0 -0
  256. {zscaler_sdk_python-1.7.7 → zscaler_sdk_python-1.7.9}/zscaler/zidentity/models/users.py +0 -0
  257. {zscaler_sdk_python-1.7.7 → zscaler_sdk_python-1.7.9}/zscaler/zidentity/resource_servers.py +0 -0
  258. {zscaler_sdk_python-1.7.7 → zscaler_sdk_python-1.7.9}/zscaler/zidentity/user_entitlement.py +0 -0
  259. {zscaler_sdk_python-1.7.7 → zscaler_sdk_python-1.7.9}/zscaler/zidentity/users.py +0 -0
  260. {zscaler_sdk_python-1.7.7 → zscaler_sdk_python-1.7.9}/zscaler/zidentity/zidentity_service.py +0 -0
  261. {zscaler_sdk_python-1.7.7 → zscaler_sdk_python-1.7.9}/zscaler/zpa/__init__.py +0 -0
  262. {zscaler_sdk_python-1.7.7 → zscaler_sdk_python-1.7.9}/zscaler/zpa/admin_sso_controller.py +0 -0
  263. {zscaler_sdk_python-1.7.7 → zscaler_sdk_python-1.7.9}/zscaler/zpa/administrator_controller.py +0 -0
  264. {zscaler_sdk_python-1.7.7 → zscaler_sdk_python-1.7.9}/zscaler/zpa/api_keys.py +0 -0
  265. {zscaler_sdk_python-1.7.7 → zscaler_sdk_python-1.7.9}/zscaler/zpa/app_connector_groups.py +0 -0
  266. {zscaler_sdk_python-1.7.7 → zscaler_sdk_python-1.7.9}/zscaler/zpa/app_connector_schedule.py +0 -0
  267. {zscaler_sdk_python-1.7.7 → zscaler_sdk_python-1.7.9}/zscaler/zpa/app_connectors.py +0 -0
  268. {zscaler_sdk_python-1.7.7 → zscaler_sdk_python-1.7.9}/zscaler/zpa/app_protection.py +0 -0
  269. {zscaler_sdk_python-1.7.7 → zscaler_sdk_python-1.7.9}/zscaler/zpa/app_segment_by_type.py +0 -0
  270. {zscaler_sdk_python-1.7.7 → zscaler_sdk_python-1.7.9}/zscaler/zpa/app_segments_ba.py +0 -0
  271. {zscaler_sdk_python-1.7.7 → zscaler_sdk_python-1.7.9}/zscaler/zpa/app_segments_ba_v2.py +0 -0
  272. {zscaler_sdk_python-1.7.7 → zscaler_sdk_python-1.7.9}/zscaler/zpa/app_segments_inspection.py +0 -0
  273. {zscaler_sdk_python-1.7.7 → zscaler_sdk_python-1.7.9}/zscaler/zpa/app_segments_pra.py +0 -0
  274. {zscaler_sdk_python-1.7.7 → zscaler_sdk_python-1.7.9}/zscaler/zpa/application_segment.py +0 -0
  275. {zscaler_sdk_python-1.7.7 → zscaler_sdk_python-1.7.9}/zscaler/zpa/c2c_ip_ranges.py +0 -0
  276. {zscaler_sdk_python-1.7.7 → zscaler_sdk_python-1.7.9}/zscaler/zpa/cbi_banner.py +0 -0
  277. {zscaler_sdk_python-1.7.7 → zscaler_sdk_python-1.7.9}/zscaler/zpa/cbi_certificate.py +0 -0
  278. {zscaler_sdk_python-1.7.7 → zscaler_sdk_python-1.7.9}/zscaler/zpa/cbi_profile.py +0 -0
  279. {zscaler_sdk_python-1.7.7 → zscaler_sdk_python-1.7.9}/zscaler/zpa/cbi_region.py +0 -0
  280. {zscaler_sdk_python-1.7.7 → zscaler_sdk_python-1.7.9}/zscaler/zpa/cbi_zpa_profile.py +0 -0
  281. {zscaler_sdk_python-1.7.7 → zscaler_sdk_python-1.7.9}/zscaler/zpa/certificates.py +0 -0
  282. {zscaler_sdk_python-1.7.7 → zscaler_sdk_python-1.7.9}/zscaler/zpa/client_settings.py +0 -0
  283. {zscaler_sdk_python-1.7.7 → zscaler_sdk_python-1.7.9}/zscaler/zpa/cloud_connector_groups.py +0 -0
  284. {zscaler_sdk_python-1.7.7 → zscaler_sdk_python-1.7.9}/zscaler/zpa/config_override_controller.py +0 -0
  285. {zscaler_sdk_python-1.7.7 → zscaler_sdk_python-1.7.9}/zscaler/zpa/customer_controller.py +0 -0
  286. {zscaler_sdk_python-1.7.7 → zscaler_sdk_python-1.7.9}/zscaler/zpa/customer_domain.py +0 -0
  287. {zscaler_sdk_python-1.7.7 → zscaler_sdk_python-1.7.9}/zscaler/zpa/customer_version_profile.py +0 -0
  288. {zscaler_sdk_python-1.7.7 → zscaler_sdk_python-1.7.9}/zscaler/zpa/emergency_access.py +0 -0
  289. {zscaler_sdk_python-1.7.7 → zscaler_sdk_python-1.7.9}/zscaler/zpa/enrollment_certificates.py +0 -0
  290. {zscaler_sdk_python-1.7.7 → zscaler_sdk_python-1.7.9}/zscaler/zpa/idp.py +0 -0
  291. {zscaler_sdk_python-1.7.7 → zscaler_sdk_python-1.7.9}/zscaler/zpa/legacy.py +0 -0
  292. {zscaler_sdk_python-1.7.7 → zscaler_sdk_python-1.7.9}/zscaler/zpa/lss.py +0 -0
  293. {zscaler_sdk_python-1.7.7 → zscaler_sdk_python-1.7.9}/zscaler/zpa/machine_groups.py +0 -0
  294. {zscaler_sdk_python-1.7.7 → zscaler_sdk_python-1.7.9}/zscaler/zpa/microtenants.py +0 -0
  295. {zscaler_sdk_python-1.7.7 → zscaler_sdk_python-1.7.9}/zscaler/zpa/models/administrator_controller.py +0 -0
  296. {zscaler_sdk_python-1.7.7 → zscaler_sdk_python-1.7.9}/zscaler/zpa/models/api_keys.py +0 -0
  297. {zscaler_sdk_python-1.7.7 → zscaler_sdk_python-1.7.9}/zscaler/zpa/models/app_connector_groups.py +0 -0
  298. {zscaler_sdk_python-1.7.7 → zscaler_sdk_python-1.7.9}/zscaler/zpa/models/app_connector_schedule.py +0 -0
  299. {zscaler_sdk_python-1.7.7 → zscaler_sdk_python-1.7.9}/zscaler/zpa/models/app_connectors.py +0 -0
  300. {zscaler_sdk_python-1.7.7 → zscaler_sdk_python-1.7.9}/zscaler/zpa/models/app_protection_predefined_controls.py +0 -0
  301. {zscaler_sdk_python-1.7.7 → zscaler_sdk_python-1.7.9}/zscaler/zpa/models/app_protection_profile.py +0 -0
  302. {zscaler_sdk_python-1.7.7 → zscaler_sdk_python-1.7.9}/zscaler/zpa/models/application_segment.py +0 -0
  303. {zscaler_sdk_python-1.7.7 → zscaler_sdk_python-1.7.9}/zscaler/zpa/models/application_segment_lb.py +0 -0
  304. {zscaler_sdk_python-1.7.7 → zscaler_sdk_python-1.7.9}/zscaler/zpa/models/application_servers.py +0 -0
  305. {zscaler_sdk_python-1.7.7 → zscaler_sdk_python-1.7.9}/zscaler/zpa/models/c2c_ip_ranges.py +0 -0
  306. {zscaler_sdk_python-1.7.7 → zscaler_sdk_python-1.7.9}/zscaler/zpa/models/cbi_banner.py +0 -0
  307. {zscaler_sdk_python-1.7.7 → zscaler_sdk_python-1.7.9}/zscaler/zpa/models/cbi_certificate.py +0 -0
  308. {zscaler_sdk_python-1.7.7 → zscaler_sdk_python-1.7.9}/zscaler/zpa/models/cbi_profile.py +0 -0
  309. {zscaler_sdk_python-1.7.7 → zscaler_sdk_python-1.7.9}/zscaler/zpa/models/cbi_region.py +0 -0
  310. {zscaler_sdk_python-1.7.7 → zscaler_sdk_python-1.7.9}/zscaler/zpa/models/cbi_zpa_profile.py +0 -0
  311. {zscaler_sdk_python-1.7.7 → zscaler_sdk_python-1.7.9}/zscaler/zpa/models/certificates.py +0 -0
  312. {zscaler_sdk_python-1.7.7 → zscaler_sdk_python-1.7.9}/zscaler/zpa/models/client_settings.py +0 -0
  313. {zscaler_sdk_python-1.7.7 → zscaler_sdk_python-1.7.9}/zscaler/zpa/models/cloud_connector_groups.py +0 -0
  314. {zscaler_sdk_python-1.7.7 → zscaler_sdk_python-1.7.9}/zscaler/zpa/models/common.py +0 -0
  315. {zscaler_sdk_python-1.7.7 → zscaler_sdk_python-1.7.9}/zscaler/zpa/models/config_override_controller.py +0 -0
  316. {zscaler_sdk_python-1.7.7 → zscaler_sdk_python-1.7.9}/zscaler/zpa/models/customer_controller.py +0 -0
  317. {zscaler_sdk_python-1.7.7 → zscaler_sdk_python-1.7.9}/zscaler/zpa/models/customer_domain.py +0 -0
  318. {zscaler_sdk_python-1.7.7 → zscaler_sdk_python-1.7.9}/zscaler/zpa/models/customer_version_profile.py +0 -0
  319. {zscaler_sdk_python-1.7.7 → zscaler_sdk_python-1.7.9}/zscaler/zpa/models/emergency_access.py +0 -0
  320. {zscaler_sdk_python-1.7.7 → zscaler_sdk_python-1.7.9}/zscaler/zpa/models/enrollment_certificates.py +0 -0
  321. {zscaler_sdk_python-1.7.7 → zscaler_sdk_python-1.7.9}/zscaler/zpa/models/idp.py +0 -0
  322. {zscaler_sdk_python-1.7.7 → zscaler_sdk_python-1.7.9}/zscaler/zpa/models/lss.py +0 -0
  323. {zscaler_sdk_python-1.7.7 → zscaler_sdk_python-1.7.9}/zscaler/zpa/models/machine_groups.py +0 -0
  324. {zscaler_sdk_python-1.7.7 → zscaler_sdk_python-1.7.9}/zscaler/zpa/models/microtenants.py +0 -0
  325. {zscaler_sdk_python-1.7.7 → zscaler_sdk_python-1.7.9}/zscaler/zpa/models/npn_client_controller.py +0 -0
  326. {zscaler_sdk_python-1.7.7 → zscaler_sdk_python-1.7.9}/zscaler/zpa/models/policyset_controller_v1.py +0 -0
  327. {zscaler_sdk_python-1.7.7 → zscaler_sdk_python-1.7.9}/zscaler/zpa/models/policyset_controller_v2.py +0 -0
  328. {zscaler_sdk_python-1.7.7 → zscaler_sdk_python-1.7.9}/zscaler/zpa/models/posture_profiles.py +0 -0
  329. {zscaler_sdk_python-1.7.7 → zscaler_sdk_python-1.7.9}/zscaler/zpa/models/pra_approval.py +0 -0
  330. {zscaler_sdk_python-1.7.7 → zscaler_sdk_python-1.7.9}/zscaler/zpa/models/pra_console.py +0 -0
  331. {zscaler_sdk_python-1.7.7 → zscaler_sdk_python-1.7.9}/zscaler/zpa/models/pra_cred_pool_controller.py +0 -0
  332. {zscaler_sdk_python-1.7.7 → zscaler_sdk_python-1.7.9}/zscaler/zpa/models/pra_credential.py +0 -0
  333. {zscaler_sdk_python-1.7.7 → zscaler_sdk_python-1.7.9}/zscaler/zpa/models/pra_portal.py +0 -0
  334. {zscaler_sdk_python-1.7.7 → zscaler_sdk_python-1.7.9}/zscaler/zpa/models/private_cloud_controller.py +0 -0
  335. {zscaler_sdk_python-1.7.7 → zscaler_sdk_python-1.7.9}/zscaler/zpa/models/private_cloud_group.py +0 -0
  336. {zscaler_sdk_python-1.7.7 → zscaler_sdk_python-1.7.9}/zscaler/zpa/models/provisioning_keys.py +0 -0
  337. {zscaler_sdk_python-1.7.7 → zscaler_sdk_python-1.7.9}/zscaler/zpa/models/role_controller.py +0 -0
  338. {zscaler_sdk_python-1.7.7 → zscaler_sdk_python-1.7.9}/zscaler/zpa/models/saml_attributes.py +0 -0
  339. {zscaler_sdk_python-1.7.7 → zscaler_sdk_python-1.7.9}/zscaler/zpa/models/scim_attributes.py +0 -0
  340. {zscaler_sdk_python-1.7.7 → zscaler_sdk_python-1.7.9}/zscaler/zpa/models/scim_groups.py +0 -0
  341. {zscaler_sdk_python-1.7.7 → zscaler_sdk_python-1.7.9}/zscaler/zpa/models/segment_group.py +0 -0
  342. {zscaler_sdk_python-1.7.7 → zscaler_sdk_python-1.7.9}/zscaler/zpa/models/server_group.py +0 -0
  343. {zscaler_sdk_python-1.7.7 → zscaler_sdk_python-1.7.9}/zscaler/zpa/models/service_edge_groups.py +0 -0
  344. {zscaler_sdk_python-1.7.7 → zscaler_sdk_python-1.7.9}/zscaler/zpa/models/service_edge_schedule.py +0 -0
  345. {zscaler_sdk_python-1.7.7 → zscaler_sdk_python-1.7.9}/zscaler/zpa/models/service_edges.py +0 -0
  346. {zscaler_sdk_python-1.7.7 → zscaler_sdk_python-1.7.9}/zscaler/zpa/models/trusted_network.py +0 -0
  347. {zscaler_sdk_python-1.7.7 → zscaler_sdk_python-1.7.9}/zscaler/zpa/models/user_portal_controller.py +0 -0
  348. {zscaler_sdk_python-1.7.7 → zscaler_sdk_python-1.7.9}/zscaler/zpa/models/user_portal_link.py +0 -0
  349. {zscaler_sdk_python-1.7.7 → zscaler_sdk_python-1.7.9}/zscaler/zpa/npn_client_controller.py +0 -0
  350. {zscaler_sdk_python-1.7.7 → zscaler_sdk_python-1.7.9}/zscaler/zpa/policies.py +0 -0
  351. {zscaler_sdk_python-1.7.7 → zscaler_sdk_python-1.7.9}/zscaler/zpa/posture_profiles.py +0 -0
  352. {zscaler_sdk_python-1.7.7 → zscaler_sdk_python-1.7.9}/zscaler/zpa/pra_approval.py +0 -0
  353. {zscaler_sdk_python-1.7.7 → zscaler_sdk_python-1.7.9}/zscaler/zpa/pra_console.py +0 -0
  354. {zscaler_sdk_python-1.7.7 → zscaler_sdk_python-1.7.9}/zscaler/zpa/pra_credential.py +0 -0
  355. {zscaler_sdk_python-1.7.7 → zscaler_sdk_python-1.7.9}/zscaler/zpa/pra_credential_pool.py +0 -0
  356. {zscaler_sdk_python-1.7.7 → zscaler_sdk_python-1.7.9}/zscaler/zpa/pra_portal.py +0 -0
  357. {zscaler_sdk_python-1.7.7 → zscaler_sdk_python-1.7.9}/zscaler/zpa/private_cloud_controller.py +0 -0
  358. {zscaler_sdk_python-1.7.7 → zscaler_sdk_python-1.7.9}/zscaler/zpa/private_cloud_group.py +0 -0
  359. {zscaler_sdk_python-1.7.7 → zscaler_sdk_python-1.7.9}/zscaler/zpa/provisioning.py +0 -0
  360. {zscaler_sdk_python-1.7.7 → zscaler_sdk_python-1.7.9}/zscaler/zpa/role_controller.py +0 -0
  361. {zscaler_sdk_python-1.7.7 → zscaler_sdk_python-1.7.9}/zscaler/zpa/saml_attributes.py +0 -0
  362. {zscaler_sdk_python-1.7.7 → zscaler_sdk_python-1.7.9}/zscaler/zpa/scim_attributes.py +0 -0
  363. {zscaler_sdk_python-1.7.7 → zscaler_sdk_python-1.7.9}/zscaler/zpa/scim_groups.py +0 -0
  364. {zscaler_sdk_python-1.7.7 → zscaler_sdk_python-1.7.9}/zscaler/zpa/segment_groups.py +0 -0
  365. {zscaler_sdk_python-1.7.7 → zscaler_sdk_python-1.7.9}/zscaler/zpa/server_groups.py +0 -0
  366. {zscaler_sdk_python-1.7.7 → zscaler_sdk_python-1.7.9}/zscaler/zpa/servers.py +0 -0
  367. {zscaler_sdk_python-1.7.7 → zscaler_sdk_python-1.7.9}/zscaler/zpa/service_edge_group.py +0 -0
  368. {zscaler_sdk_python-1.7.7 → zscaler_sdk_python-1.7.9}/zscaler/zpa/service_edge_schedule.py +0 -0
  369. {zscaler_sdk_python-1.7.7 → zscaler_sdk_python-1.7.9}/zscaler/zpa/service_edges.py +0 -0
  370. {zscaler_sdk_python-1.7.7 → zscaler_sdk_python-1.7.9}/zscaler/zpa/trusted_networks.py +0 -0
  371. {zscaler_sdk_python-1.7.7 → zscaler_sdk_python-1.7.9}/zscaler/zpa/user_portal_controller.py +0 -0
  372. {zscaler_sdk_python-1.7.7 → zscaler_sdk_python-1.7.9}/zscaler/zpa/user_portal_link.py +0 -0
  373. {zscaler_sdk_python-1.7.7 → zscaler_sdk_python-1.7.9}/zscaler/zpa/zpa_service.py +0 -0
  374. {zscaler_sdk_python-1.7.7 → zscaler_sdk_python-1.7.9}/zscaler/ztw/__init__.py +0 -0
  375. {zscaler_sdk_python-1.7.7 → zscaler_sdk_python-1.7.9}/zscaler/ztw/account_details.py +0 -0
  376. {zscaler_sdk_python-1.7.7 → zscaler_sdk_python-1.7.9}/zscaler/ztw/activation.py +0 -0
  377. {zscaler_sdk_python-1.7.7 → zscaler_sdk_python-1.7.9}/zscaler/ztw/admin_roles.py +0 -0
  378. {zscaler_sdk_python-1.7.7 → zscaler_sdk_python-1.7.9}/zscaler/ztw/admin_users.py +0 -0
  379. {zscaler_sdk_python-1.7.7 → zscaler_sdk_python-1.7.9}/zscaler/ztw/api_keys.py +0 -0
  380. {zscaler_sdk_python-1.7.7 → zscaler_sdk_python-1.7.9}/zscaler/ztw/ec_groups.py +0 -0
  381. {zscaler_sdk_python-1.7.7 → zscaler_sdk_python-1.7.9}/zscaler/ztw/forwarding_gateways.py +0 -0
  382. {zscaler_sdk_python-1.7.7 → zscaler_sdk_python-1.7.9}/zscaler/ztw/forwarding_rules.py +0 -0
  383. {zscaler_sdk_python-1.7.7 → zscaler_sdk_python-1.7.9}/zscaler/ztw/ip_destination_groups.py +0 -0
  384. {zscaler_sdk_python-1.7.7 → zscaler_sdk_python-1.7.9}/zscaler/ztw/ip_groups.py +0 -0
  385. {zscaler_sdk_python-1.7.7 → zscaler_sdk_python-1.7.9}/zscaler/ztw/ip_source_groups.py +0 -0
  386. {zscaler_sdk_python-1.7.7 → zscaler_sdk_python-1.7.9}/zscaler/ztw/legacy.py +0 -0
  387. {zscaler_sdk_python-1.7.7 → zscaler_sdk_python-1.7.9}/zscaler/ztw/location_management.py +0 -0
  388. {zscaler_sdk_python-1.7.7 → zscaler_sdk_python-1.7.9}/zscaler/ztw/location_template.py +0 -0
  389. {zscaler_sdk_python-1.7.7 → zscaler_sdk_python-1.7.9}/zscaler/ztw/models/activation.py +0 -0
  390. {zscaler_sdk_python-1.7.7 → zscaler_sdk_python-1.7.9}/zscaler/ztw/models/admin_roles.py +0 -0
  391. {zscaler_sdk_python-1.7.7 → zscaler_sdk_python-1.7.9}/zscaler/ztw/models/admin_users.py +0 -0
  392. {zscaler_sdk_python-1.7.7 → zscaler_sdk_python-1.7.9}/zscaler/ztw/models/api_keys.py +0 -0
  393. {zscaler_sdk_python-1.7.7 → zscaler_sdk_python-1.7.9}/zscaler/ztw/models/common.py +0 -0
  394. {zscaler_sdk_python-1.7.7 → zscaler_sdk_python-1.7.9}/zscaler/ztw/models/ec_group_vm.py +0 -0
  395. {zscaler_sdk_python-1.7.7 → zscaler_sdk_python-1.7.9}/zscaler/ztw/models/ecgroup.py +0 -0
  396. {zscaler_sdk_python-1.7.7 → zscaler_sdk_python-1.7.9}/zscaler/ztw/models/forwarding_gateways.py +0 -0
  397. {zscaler_sdk_python-1.7.7 → zscaler_sdk_python-1.7.9}/zscaler/ztw/models/forwarding_rules.py +0 -0
  398. {zscaler_sdk_python-1.7.7 → zscaler_sdk_python-1.7.9}/zscaler/ztw/models/ip_destination_groups.py +0 -0
  399. {zscaler_sdk_python-1.7.7 → zscaler_sdk_python-1.7.9}/zscaler/ztw/models/ip_groups.py +0 -0
  400. {zscaler_sdk_python-1.7.7 → zscaler_sdk_python-1.7.9}/zscaler/ztw/models/ip_source_groups.py +0 -0
  401. {zscaler_sdk_python-1.7.7 → zscaler_sdk_python-1.7.9}/zscaler/ztw/models/location_management.py +0 -0
  402. {zscaler_sdk_python-1.7.7 → zscaler_sdk_python-1.7.9}/zscaler/ztw/models/location_templates.py +0 -0
  403. {zscaler_sdk_python-1.7.7 → zscaler_sdk_python-1.7.9}/zscaler/ztw/models/nw_service.py +0 -0
  404. {zscaler_sdk_python-1.7.7 → zscaler_sdk_python-1.7.9}/zscaler/ztw/models/nw_service_groups.py +0 -0
  405. {zscaler_sdk_python-1.7.7 → zscaler_sdk_python-1.7.9}/zscaler/ztw/models/provisioning_url.py +0 -0
  406. {zscaler_sdk_python-1.7.7 → zscaler_sdk_python-1.7.9}/zscaler/ztw/models/traffic_vpn_credentials.py +0 -0
  407. {zscaler_sdk_python-1.7.7 → zscaler_sdk_python-1.7.9}/zscaler/ztw/models/zpa_resources.py +0 -0
  408. {zscaler_sdk_python-1.7.7 → zscaler_sdk_python-1.7.9}/zscaler/ztw/nw_service.py +0 -0
  409. {zscaler_sdk_python-1.7.7 → zscaler_sdk_python-1.7.9}/zscaler/ztw/nw_service_groups.py +0 -0
  410. {zscaler_sdk_python-1.7.7 → zscaler_sdk_python-1.7.9}/zscaler/ztw/provisioning_url.py +0 -0
  411. {zscaler_sdk_python-1.7.7 → zscaler_sdk_python-1.7.9}/zscaler/ztw/ztw_service.py +0 -0
  412. {zscaler_sdk_python-1.7.7 → zscaler_sdk_python-1.7.9}/zscaler/zwa/__init__.py +0 -0
  413. {zscaler_sdk_python-1.7.7 → zscaler_sdk_python-1.7.9}/zscaler/zwa/audit_logs.py +0 -0
  414. {zscaler_sdk_python-1.7.7 → zscaler_sdk_python-1.7.9}/zscaler/zwa/dlp_incidents.py +0 -0
  415. {zscaler_sdk_python-1.7.7 → zscaler_sdk_python-1.7.9}/zscaler/zwa/legacy.py +0 -0
  416. {zscaler_sdk_python-1.7.7 → zscaler_sdk_python-1.7.9}/zscaler/zwa/models/audit_logs.py +0 -0
  417. {zscaler_sdk_python-1.7.7 → zscaler_sdk_python-1.7.9}/zscaler/zwa/models/change_history.py +0 -0
  418. {zscaler_sdk_python-1.7.7 → zscaler_sdk_python-1.7.9}/zscaler/zwa/models/common.py +0 -0
  419. {zscaler_sdk_python-1.7.7 → zscaler_sdk_python-1.7.9}/zscaler/zwa/models/generated_tickets.py +0 -0
  420. {zscaler_sdk_python-1.7.7 → zscaler_sdk_python-1.7.9}/zscaler/zwa/models/incident_details.py +0 -0
  421. {zscaler_sdk_python-1.7.7 → zscaler_sdk_python-1.7.9}/zscaler/zwa/models/incident_evidence.py +0 -0
  422. {zscaler_sdk_python-1.7.7 → zscaler_sdk_python-1.7.9}/zscaler/zwa/models/incident_group_search.py +0 -0
  423. {zscaler_sdk_python-1.7.7 → zscaler_sdk_python-1.7.9}/zscaler/zwa/models/incident_search.py +0 -0
  424. {zscaler_sdk_python-1.7.7 → zscaler_sdk_python-1.7.9}/zscaler/zwa/models/incident_trigger.py +0 -0
  425. {zscaler_sdk_python-1.7.7 → zscaler_sdk_python-1.7.9}/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.7.7
3
+ Version: 1.7.9
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.7.7"
3
+ version = "1.7.9"
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.7.7"
32
+ __version__ = "1.7.9"
33
33
 
34
34
 
35
35
  from zscaler.oneapi_client import Client as ZscalerClient # noqa
@@ -152,6 +152,7 @@ def to_lower_camel_case(string):
152
152
  FIELD_EXCEPTIONS = {
153
153
  "predefined_adp_controls": "predefinedADPControls",
154
154
  "surrogate_ip": "surrogateIP",
155
+ "surrogate_ip_enforced_for_known_browsers": "surrogateIPEnforcedForKnownBrowsers",
155
156
  "internal_ip_range": "internalIpRange",
156
157
  "start_ip_address": "startIPAddress",
157
158
  "end_ip_address": "endIPAddress",
@@ -368,6 +368,8 @@ class LegacyZIAClient(Client):
368
368
  cache = config.get("cache", None)
369
369
  fail_safe = config.get("failSafe", None)
370
370
  request_executor_impl = config.get("requestExecutor", None)
371
+ session_safety_margin = config.get("session_safety_margin", None)
372
+ use_session_validation = config.get("use_session_validation", None)
371
373
 
372
374
  # Initialize the LegacyZIAClientHelper with the extracted parameters
373
375
  legacy_helper = LegacyZIAClientHelper(
@@ -379,6 +381,8 @@ class LegacyZIAClient(Client):
379
381
  cache=cache,
380
382
  fail_safe=fail_safe,
381
383
  request_executor_impl=request_executor_impl,
384
+ session_safety_margin=session_safety_margin,
385
+ use_session_validation=use_session_validation,
382
386
  )
383
387
  super().__init__(config, zia_legacy_client=legacy_helper, use_legacy_client=True)
384
388
 
@@ -651,16 +651,10 @@ class RequestExecutor:
651
651
  try:
652
652
  # Determine the base URL and endpoint based on service type
653
653
  if service_type.lower() == "zia":
654
- if self.cloud and self.cloud != "production":
655
- base_url = f"https://api.{self.cloud}.zsapi.net"
656
- else:
657
- base_url = "https://api.{self.cloud}.zsapi.net"
654
+ base_url = self.get_base_url("/zia/api/v1/authenticatedSession")
658
655
  endpoint = "/zia/api/v1/authenticatedSession"
659
656
  elif service_type.lower() == "ztw":
660
- if self.cloud and self.cloud != "production":
661
- base_url = f"https://api.{self.cloud}.zsapi.net"
662
- else:
663
- base_url = "https://api.{self.cloud}.zsapi.net"
657
+ base_url = self.get_base_url("/ztw/api/v1/auth")
664
658
  endpoint = "/ztw/api/v1/auth"
665
659
 
666
660
  url = f"{base_url}{endpoint}"
@@ -18,6 +18,8 @@ import datetime
18
18
  import logging
19
19
  import os
20
20
  import re
21
+ import time
22
+ import uuid
21
23
  from time import sleep
22
24
 
23
25
  import requests
@@ -28,7 +30,7 @@ from zscaler.cache.zscaler_cache import ZscalerCache
28
30
  from zscaler.ratelimiter.ratelimiter import RateLimiter
29
31
  from zscaler.user_agent import UserAgent
30
32
  from zscaler.utils import obfuscate_api_key
31
- from zscaler.logger import setup_logging
33
+ from zscaler.logger import setup_logging, dump_request, dump_response
32
34
  from zscaler.errors.response_checker import check_response_for_error
33
35
 
34
36
  setup_logging(logger_name="zscaler-sdk-python")
@@ -64,6 +66,15 @@ class LegacyZIAClientHelper:
64
66
  attribute. The override URL will be prepended to the API endpoint suffixes. The protocol must be included
65
67
  i.e. http:// or https://.
66
68
 
69
+ session_safety_margin (int):
70
+ Safety margin in seconds before the 5-minute session idle timeout to proactively refresh
71
+ the session. Default is 30 seconds (refreshes at 4.5 minutes). Cannot exceed 5 minutes.
72
+
73
+ use_session_validation (bool):
74
+ Whether to use the new session idle timeout validation (default: True) or legacy
75
+ passwordExpiryTime validation (False). The new behavior is recommended for the 5-minute
76
+ session timeout requirement.
77
+
67
78
  """
68
79
 
69
80
  _vendor = "Zscaler"
@@ -73,7 +84,7 @@ class LegacyZIAClientHelper:
73
84
  url = "https://zsapi.zscaler.net"
74
85
  env_cloud = "zscaler"
75
86
 
76
- def __init__(self, cloud, timeout=240, cache=None, fail_safe=False, request_executor_impl=None, **kw):
87
+ def __init__(self, cloud, timeout=240, cache=None, fail_safe=False, request_executor_impl=None, session_safety_margin=30, use_session_validation=True, **kw):
77
88
  from zscaler.request_executor import RequestExecutor
78
89
 
79
90
  self.api_key = kw.get("api_key", os.getenv(f"{self._env_base}_API_KEY"))
@@ -99,6 +110,21 @@ class LegacyZIAClientHelper:
99
110
  self.sandbox_token = kw.get("sandbox_token") or os.getenv(f"{self._env_base}_SANDBOX_TOKEN")
100
111
  self.timeout = timeout
101
112
  self.fail_safe = fail_safe
113
+
114
+ # Session management configuration
115
+ env_safety_margin = os.getenv(f"{self._env_base}_SESSION_SAFETY_MARGIN")
116
+ if env_safety_margin is not None:
117
+ self.session_safety_margin = int(env_safety_margin)
118
+ else:
119
+ self.session_safety_margin = kw.get("session_safety_margin", session_safety_margin)
120
+
121
+ # Ensure session_safety_margin has a default value if None
122
+ if self.session_safety_margin is None:
123
+ self.session_safety_margin = 30 # Default 30 seconds
124
+
125
+ self.max_idle_time = datetime.timedelta(minutes=5) - datetime.timedelta(seconds=self.session_safety_margin)
126
+ self.last_activity = None
127
+ self.use_session_validation = kw.get("use_session_validation", use_session_validation) or os.getenv(f"{self._env_base}_USE_SESSION_VALIDATION", "true").lower() == "true"
102
128
  cache_enabled = os.environ.get("ZSCALER_CLIENT_CACHE_ENABLED", "false").lower() == "true"
103
129
  self.cache = NoOpCache()
104
130
  if cache is None and cache_enabled:
@@ -157,10 +183,8 @@ class LegacyZIAClientHelper:
157
183
 
158
184
  def is_session_expired(self) -> bool:
159
185
  """
160
- Checks whether the current session is expired.
161
-
162
- Returns:
163
- bool: True if the session is expired or if the session details are missing.
186
+ Checks whether the current session is expired using passwordExpiryTime.
187
+ This maintains backward compatibility.
164
188
  """
165
189
  # no session yet → force login
166
190
  if self.auth_details is None or self.session_refreshed is None:
@@ -175,6 +199,68 @@ class LegacyZIAClientHelper:
175
199
  safety_window = self.session_timeout_offset
176
200
  return datetime.datetime.utcnow() >= (expiry_time - safety_window)
177
201
 
202
+ def is_session_idle_expired(self) -> bool:
203
+ """
204
+ Checks if the session has been idle for too long (approaching 5-minute limit).
205
+ This is the new default behavior for session idle timeout.
206
+ """
207
+ if self.last_activity is None:
208
+ return True
209
+
210
+ idle_duration = datetime.datetime.utcnow() - self.last_activity
211
+ return idle_duration >= self.max_idle_time
212
+
213
+ def validate_session_status(self) -> bool:
214
+ """
215
+ Actively checks session status via GET /api/v1/authenticatedSession.
216
+ Returns True if session is valid, False if expired.
217
+ """
218
+ try:
219
+ url = f"{self.url}/api/v1/authenticatedSession"
220
+ headers = self.headers.copy()
221
+ headers["Cookie"] = f"JSESSIONID={self.session_id}"
222
+
223
+ response = requests.get(url, headers=headers, timeout=self.timeout)
224
+
225
+ if response.status_code == 200:
226
+ # Session is still valid, update last activity
227
+ self.last_activity = datetime.datetime.utcnow()
228
+ return True
229
+ else:
230
+ # Session expired or invalid
231
+ return False
232
+
233
+ except Exception as e:
234
+ logger.warning(f"Session validation failed: {e}")
235
+ return False
236
+
237
+ def ensure_valid_session(self):
238
+ """
239
+ Ensures the session is valid before making API calls.
240
+ Uses the configured validation strategy.
241
+ """
242
+ if self.use_session_validation:
243
+ # New default behavior: check session idle timeout
244
+ if self.is_session_idle_expired():
245
+ logger.info("Session approaching idle timeout, refreshing...")
246
+ self.authenticate()
247
+ return
248
+
249
+ # Actively validate session status
250
+ if not self.validate_session_status():
251
+ logger.info("Session validation failed, refreshing...")
252
+ self.authenticate()
253
+ return
254
+ else:
255
+ # Legacy behavior: use passwordExpiryTime
256
+ if self.is_session_expired():
257
+ logger.info("Session expired based on passwordExpiryTime, refreshing...")
258
+ self.authenticate()
259
+ return
260
+
261
+ # Update last activity time
262
+ self.last_activity = datetime.datetime.utcnow()
263
+
178
264
  def authenticate(self):
179
265
  """
180
266
  Creates a ZIA authentication session and sets the JSESSIONID.
@@ -190,8 +276,18 @@ class LegacyZIAClientHelper:
190
276
  }
191
277
 
192
278
  url = f"{self.url}/api/v1/authenticatedSession"
279
+ method = "POST"
280
+ request_uuid = str(uuid.uuid4())
281
+ start_time = time.time()
282
+
283
+ # Log authentication request using the same formatting as regular API calls
284
+ dump_request(logger, url, method, payload, {}, self.headers, request_uuid)
285
+
193
286
  resp = requests.post(url, json=payload, headers=self.headers, timeout=self.timeout)
194
287
 
288
+ # Log authentication response using the same formatting as regular API calls
289
+ dump_response(logger, url, method, resp, {}, request_uuid, start_time)
290
+
195
291
  parsed_response, err = check_response_for_error(url, resp, resp.text)
196
292
  if err:
197
293
  raise err
@@ -202,6 +298,7 @@ class LegacyZIAClientHelper:
202
298
 
203
299
  self.session_refreshed = datetime.datetime.now()
204
300
  self.auth_details = parsed_response
301
+ self.last_activity = datetime.datetime.utcnow() # Set initial activity time
205
302
  logger.info("Authentication successful. JSESSIONID set.")
206
303
 
207
304
  def __enter__(self):
@@ -254,9 +351,8 @@ class LegacyZIAClientHelper:
254
351
 
255
352
  while attempts < 5:
256
353
  try:
257
- if self.is_session_expired():
258
- logger.warning("Session expired. Refreshing...")
259
- self.authenticate()
354
+ # Ensure session is valid before making any request
355
+ self.ensure_valid_session()
260
356
 
261
357
  # Always refresh session cookie
262
358
  headers_with_user_agent = self.headers.copy()
@@ -39,6 +39,7 @@ class LocationManagement(ZscalerObject):
39
39
  self.up_bandwidth = config["upBandwidth"] if "upBandwidth" in config else None
40
40
  self.dn_bandwidth = config["dnBandwidth"] if "dnBandwidth" in config else None
41
41
  self.country = config["country"] if "country" in config else None
42
+ self.state = config["state"] if "state" in config else None
42
43
  self.language = config["language"] if "language" in config else None
43
44
  self.tz = config["tz"] if "tz" in config else None
44
45
  self.geo_override = config["geoOverride"] if "geoOverride" in config else False
@@ -76,9 +77,9 @@ class LocationManagement(ZscalerObject):
76
77
  self.cookies_and_proxy = config["cookiesAndProxy"] if "cookiesAndProxy" in config else None
77
78
  self.idle_time_in_minutes = config["idleTimeInMinutes"] if "idleTimeInMinutes" in config else None
78
79
  self.display_time_unit = config["displayTimeUnit"] if "displayTimeUnit" in config else None
79
- # self.surrogate_ip_enforced_for_known_browsers = (
80
- # config["surrogateIPEnforcedForKnownBrowsers"] if "surrogateIPEnforcedForKnownBrowsers" in config else False
81
- # )
80
+ self.surrogate_refresh_time_unit = (
81
+ config["surrogateRefreshTimeUnit"] if "surrogateRefreshTimeUnit" in config else None
82
+ )
82
83
  self.surrogate_refresh_time_in_minutes = (
83
84
  config["surrogateRefreshTimeInMinutes"] if "surrogateRefreshTimeInMinutes" in config else None
84
85
  )
@@ -169,6 +170,7 @@ class LocationManagement(ZscalerObject):
169
170
  self.up_bandwidth = None
170
171
  self.dn_bandwidth = None
171
172
  self.country = None
173
+ self.state = None
172
174
  self.language = None
173
175
  self.tz = None
174
176
  self.geo_override = False
@@ -226,6 +228,7 @@ class LocationManagement(ZscalerObject):
226
228
  "upBandwidth": self.up_bandwidth,
227
229
  "dnBandwidth": self.dn_bandwidth,
228
230
  "country": self.country,
231
+ "state": self.state,
229
232
  "language": self.language,
230
233
  "tz": self.tz,
231
234
  "geoOverride": self.geo_override,
@@ -243,6 +246,7 @@ class LocationManagement(ZscalerObject):
243
246
  "displayTimeUnit": self.display_time_unit,
244
247
  "surrogateIPEnforcedForKnownBrowsers": self.surrogate_ip_enforced_for_known_browsers,
245
248
  "surrogateRefreshTimeInMinutes": self.surrogate_refresh_time_in_minutes,
249
+ "surrogateRefreshTimeUnit": self.surrogate_refresh_time_unit,
246
250
  "kerberosAuth": self.kerberos_auth,
247
251
  "basicAuthEnabled": self.basic_auth_enabled,
248
252
  "digestAuthEnabled": self.digest_auth_enabled,