zscaler-sdk-python 1.7.2__tar.gz → 1.7.4__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.
- {zscaler_sdk_python-1.7.2 → zscaler_sdk_python-1.7.4}/PKG-INFO +1 -1
- {zscaler_sdk_python-1.7.2 → zscaler_sdk_python-1.7.4}/pyproject.toml +1 -1
- {zscaler_sdk_python-1.7.2 → zscaler_sdk_python-1.7.4}/zscaler/__init__.py +1 -1
- {zscaler_sdk_python-1.7.2 → zscaler_sdk_python-1.7.4}/zscaler/oneapi_client.py +1 -0
- {zscaler_sdk_python-1.7.2 → zscaler_sdk_python-1.7.4}/zscaler/oneapi_response.py +8 -0
- {zscaler_sdk_python-1.7.2 → zscaler_sdk_python-1.7.4}/zscaler/request_executor.py +18 -2
- {zscaler_sdk_python-1.7.2 → zscaler_sdk_python-1.7.4}/zscaler/utils.py +1 -0
- {zscaler_sdk_python-1.7.2 → zscaler_sdk_python-1.7.4}/zscaler/zcc/devices.py +8 -11
- {zscaler_sdk_python-1.7.2 → zscaler_sdk_python-1.7.4}/zscaler/zcc/models/devices.py +221 -55
- {zscaler_sdk_python-1.7.2 → zscaler_sdk_python-1.7.4}/zscaler/zdx/alerts.py +4 -12
- {zscaler_sdk_python-1.7.2 → zscaler_sdk_python-1.7.4}/zscaler/zdx/apps.py +5 -13
- {zscaler_sdk_python-1.7.2 → zscaler_sdk_python-1.7.4}/zscaler/zdx/devices.py +27 -9
- {zscaler_sdk_python-1.7.2 → zscaler_sdk_python-1.7.4}/zscaler/zdx/inventory.py +8 -10
- {zscaler_sdk_python-1.7.2 → zscaler_sdk_python-1.7.4}/zscaler/zdx/legacy.py +10 -0
- zscaler_sdk_python-1.7.4/zscaler/zdx/models/alerts.py +216 -0
- {zscaler_sdk_python-1.7.2 → zscaler_sdk_python-1.7.4}/zscaler/zdx/models/application_users.py +17 -8
- {zscaler_sdk_python-1.7.2 → zscaler_sdk_python-1.7.4}/zscaler/zdx/models/applications.py +107 -16
- zscaler_sdk_python-1.7.4/zscaler/zdx/models/common.py +391 -0
- {zscaler_sdk_python-1.7.2 → zscaler_sdk_python-1.7.4}/zscaler/zdx/models/devices.py +333 -27
- zscaler_sdk_python-1.7.2/zscaler/zdx/models/activeapplications.py → zscaler_sdk_python-1.7.4/zscaler/zdx/models/snapshot.py +31 -16
- {zscaler_sdk_python-1.7.2 → zscaler_sdk_python-1.7.4}/zscaler/zdx/models/software_inventory.py +35 -52
- {zscaler_sdk_python-1.7.2 → zscaler_sdk_python-1.7.4}/zscaler/zdx/models/troubleshooting.py +115 -14
- {zscaler_sdk_python-1.7.2 → zscaler_sdk_python-1.7.4}/zscaler/zdx/models/users.py +22 -22
- zscaler_sdk_python-1.7.4/zscaler/zdx/snapshot.py +126 -0
- {zscaler_sdk_python-1.7.2 → zscaler_sdk_python-1.7.4}/zscaler/zdx/troubleshooting.py +6 -15
- {zscaler_sdk_python-1.7.2 → zscaler_sdk_python-1.7.4}/zscaler/zdx/users.py +4 -7
- {zscaler_sdk_python-1.7.2 → zscaler_sdk_python-1.7.4}/zscaler/zdx/zdx_service.py +9 -0
- zscaler_sdk_python-1.7.4/zscaler/zia/activate.py +206 -0
- {zscaler_sdk_python-1.7.2 → zscaler_sdk_python-1.7.4}/zscaler/zia/dlp_web_rules.py +1 -0
- {zscaler_sdk_python-1.7.2 → zscaler_sdk_python-1.7.4}/zscaler/zia/legacy.py +21 -9
- {zscaler_sdk_python-1.7.2 → zscaler_sdk_python-1.7.4}/zscaler/zia/locations.py +8 -7
- zscaler_sdk_python-1.7.4/zscaler/zia/models/activation.py +98 -0
- {zscaler_sdk_python-1.7.2 → zscaler_sdk_python-1.7.4}/zscaler/zia/models/cloud_firewall_ips_rules.py +0 -1
- {zscaler_sdk_python-1.7.2 → zscaler_sdk_python-1.7.4}/zscaler/zia/models/dlp_web_rules.py +7 -2
- {zscaler_sdk_python-1.7.2 → zscaler_sdk_python-1.7.4}/zscaler/zia/models/filetyperules.py +3 -0
- {zscaler_sdk_python-1.7.2 → zscaler_sdk_python-1.7.4}/zscaler/zia/models/pac_files.py +111 -0
- {zscaler_sdk_python-1.7.2 → zscaler_sdk_python-1.7.4}/zscaler/zia/pac_files.py +7 -7
- zscaler_sdk_python-1.7.2/zscaler/zdx/models/alerts.py +0 -132
- zscaler_sdk_python-1.7.2/zscaler/zdx/models/common.py +0 -167
- zscaler_sdk_python-1.7.2/zscaler/zia/activate.py +0 -106
- zscaler_sdk_python-1.7.2/zscaler/zia/models/activation.py +0 -46
- {zscaler_sdk_python-1.7.2 → zscaler_sdk_python-1.7.4}/LICENSE.md +0 -0
- {zscaler_sdk_python-1.7.2 → zscaler_sdk_python-1.7.4}/README.md +0 -0
- {zscaler_sdk_python-1.7.2 → zscaler_sdk_python-1.7.4}/zscaler/api_client.py +0 -0
- {zscaler_sdk_python-1.7.2 → zscaler_sdk_python-1.7.4}/zscaler/cache/__init__.py +0 -0
- {zscaler_sdk_python-1.7.2 → zscaler_sdk_python-1.7.4}/zscaler/cache/cache.py +0 -0
- {zscaler_sdk_python-1.7.2 → zscaler_sdk_python-1.7.4}/zscaler/cache/no_op_cache.py +0 -0
- {zscaler_sdk_python-1.7.2 → zscaler_sdk_python-1.7.4}/zscaler/cache/zscaler_cache.py +0 -0
- {zscaler_sdk_python-1.7.2 → zscaler_sdk_python-1.7.4}/zscaler/config/__init__.py +0 -0
- {zscaler_sdk_python-1.7.2 → zscaler_sdk_python-1.7.4}/zscaler/config/config_setter.py +0 -0
- {zscaler_sdk_python-1.7.2 → zscaler_sdk_python-1.7.4}/zscaler/config/config_validator.py +0 -0
- {zscaler_sdk_python-1.7.2 → zscaler_sdk_python-1.7.4}/zscaler/constants.py +0 -0
- {zscaler_sdk_python-1.7.2 → zscaler_sdk_python-1.7.4}/zscaler/error_messages.py +0 -0
- {zscaler_sdk_python-1.7.2 → zscaler_sdk_python-1.7.4}/zscaler/errors/__init__.py +0 -0
- {zscaler_sdk_python-1.7.2 → zscaler_sdk_python-1.7.4}/zscaler/errors/error.py +0 -0
- {zscaler_sdk_python-1.7.2 → zscaler_sdk_python-1.7.4}/zscaler/errors/http_error.py +0 -0
- {zscaler_sdk_python-1.7.2 → zscaler_sdk_python-1.7.4}/zscaler/errors/response_checker.py +0 -0
- {zscaler_sdk_python-1.7.2 → zscaler_sdk_python-1.7.4}/zscaler/errors/zscaler_api_error.py +0 -0
- {zscaler_sdk_python-1.7.2 → zscaler_sdk_python-1.7.4}/zscaler/exceptions/__init__.py +0 -0
- {zscaler_sdk_python-1.7.2 → zscaler_sdk_python-1.7.4}/zscaler/exceptions/exceptions.py +0 -0
- {zscaler_sdk_python-1.7.2 → zscaler_sdk_python-1.7.4}/zscaler/helpers.py +0 -0
- {zscaler_sdk_python-1.7.2 → zscaler_sdk_python-1.7.4}/zscaler/logger.py +0 -0
- {zscaler_sdk_python-1.7.2 → zscaler_sdk_python-1.7.4}/zscaler/oneapi_collection.py +0 -0
- {zscaler_sdk_python-1.7.2 → zscaler_sdk_python-1.7.4}/zscaler/oneapi_http_client.py +0 -0
- {zscaler_sdk_python-1.7.2 → zscaler_sdk_python-1.7.4}/zscaler/oneapi_oauth_client.py +0 -0
- {zscaler_sdk_python-1.7.2 → zscaler_sdk_python-1.7.4}/zscaler/oneapi_object.py +0 -0
- {zscaler_sdk_python-1.7.2 → zscaler_sdk_python-1.7.4}/zscaler/ratelimiter/__init__.py +0 -0
- {zscaler_sdk_python-1.7.2 → zscaler_sdk_python-1.7.4}/zscaler/ratelimiter/ratelimiter.py +0 -0
- {zscaler_sdk_python-1.7.2 → zscaler_sdk_python-1.7.4}/zscaler/user_agent.py +0 -0
- {zscaler_sdk_python-1.7.2 → zscaler_sdk_python-1.7.4}/zscaler/zcc/__init__.py +0 -0
- {zscaler_sdk_python-1.7.2 → zscaler_sdk_python-1.7.4}/zscaler/zcc/admin_user.py +0 -0
- {zscaler_sdk_python-1.7.2 → zscaler_sdk_python-1.7.4}/zscaler/zcc/company.py +0 -0
- {zscaler_sdk_python-1.7.2 → zscaler_sdk_python-1.7.4}/zscaler/zcc/entitlements.py +0 -0
- {zscaler_sdk_python-1.7.2 → zscaler_sdk_python-1.7.4}/zscaler/zcc/fail_open_policy.py +0 -0
- {zscaler_sdk_python-1.7.2 → zscaler_sdk_python-1.7.4}/zscaler/zcc/forwarding_profile.py +0 -0
- {zscaler_sdk_python-1.7.2 → zscaler_sdk_python-1.7.4}/zscaler/zcc/legacy.py +0 -0
- {zscaler_sdk_python-1.7.2 → zscaler_sdk_python-1.7.4}/zscaler/zcc/models/admin_roles.py +0 -0
- {zscaler_sdk_python-1.7.2 → zscaler_sdk_python-1.7.4}/zscaler/zcc/models/admin_user.py +0 -0
- {zscaler_sdk_python-1.7.2 → zscaler_sdk_python-1.7.4}/zscaler/zcc/models/failopenpolicy.py +0 -0
- {zscaler_sdk_python-1.7.2 → zscaler_sdk_python-1.7.4}/zscaler/zcc/models/forwardingprofile.py +0 -0
- {zscaler_sdk_python-1.7.2 → zscaler_sdk_python-1.7.4}/zscaler/zcc/models/getcompanyinfo.py +0 -0
- {zscaler_sdk_python-1.7.2 → zscaler_sdk_python-1.7.4}/zscaler/zcc/models/manage_pass.py +0 -0
- {zscaler_sdk_python-1.7.2 → zscaler_sdk_python-1.7.4}/zscaler/zcc/models/secrets_otp.py +0 -0
- {zscaler_sdk_python-1.7.2 → zscaler_sdk_python-1.7.4}/zscaler/zcc/models/secrets_passwords.py +0 -0
- {zscaler_sdk_python-1.7.2 → zscaler_sdk_python-1.7.4}/zscaler/zcc/models/trustednetworks.py +0 -0
- {zscaler_sdk_python-1.7.2 → zscaler_sdk_python-1.7.4}/zscaler/zcc/models/webappservice.py +0 -0
- {zscaler_sdk_python-1.7.2 → zscaler_sdk_python-1.7.4}/zscaler/zcc/models/webpolicy.py +0 -0
- {zscaler_sdk_python-1.7.2 → zscaler_sdk_python-1.7.4}/zscaler/zcc/models/webprivacy.py +0 -0
- {zscaler_sdk_python-1.7.2 → zscaler_sdk_python-1.7.4}/zscaler/zcc/models/zdxgroupentitlements.py +0 -0
- {zscaler_sdk_python-1.7.2 → zscaler_sdk_python-1.7.4}/zscaler/zcc/models/zpagroupentitlements.py +0 -0
- {zscaler_sdk_python-1.7.2 → zscaler_sdk_python-1.7.4}/zscaler/zcc/secrets.py +0 -0
- {zscaler_sdk_python-1.7.2 → zscaler_sdk_python-1.7.4}/zscaler/zcc/trusted_networks.py +0 -0
- {zscaler_sdk_python-1.7.2 → zscaler_sdk_python-1.7.4}/zscaler/zcc/web_app_service.py +0 -0
- {zscaler_sdk_python-1.7.2 → zscaler_sdk_python-1.7.4}/zscaler/zcc/web_policy.py +0 -0
- {zscaler_sdk_python-1.7.2 → zscaler_sdk_python-1.7.4}/zscaler/zcc/web_privacy.py +0 -0
- {zscaler_sdk_python-1.7.2 → zscaler_sdk_python-1.7.4}/zscaler/zcc/zcc_service.py +0 -0
- {zscaler_sdk_python-1.7.2 → zscaler_sdk_python-1.7.4}/zscaler/zdx/__init__.py +0 -0
- {zscaler_sdk_python-1.7.2 → zscaler_sdk_python-1.7.4}/zscaler/zdx/admin.py +0 -0
- {zscaler_sdk_python-1.7.2 → zscaler_sdk_python-1.7.4}/zscaler/zdx/models/administration.py +0 -0
- {zscaler_sdk_python-1.7.2 → zscaler_sdk_python-1.7.4}/zscaler/zdx/models/call_quality_metrics.py +0 -0
- {zscaler_sdk_python-1.7.2 → zscaler_sdk_python-1.7.4}/zscaler/zia/__init__.py +0 -0
- {zscaler_sdk_python-1.7.2 → zscaler_sdk_python-1.7.4}/zscaler/zia/admin_roles.py +0 -0
- {zscaler_sdk_python-1.7.2 → zscaler_sdk_python-1.7.4}/zscaler/zia/admin_users.py +0 -0
- {zscaler_sdk_python-1.7.2 → zscaler_sdk_python-1.7.4}/zscaler/zia/advanced_settings.py +0 -0
- {zscaler_sdk_python-1.7.2 → zscaler_sdk_python-1.7.4}/zscaler/zia/alert_subscriptions.py +0 -0
- {zscaler_sdk_python-1.7.2 → zscaler_sdk_python-1.7.4}/zscaler/zia/apptotal.py +0 -0
- {zscaler_sdk_python-1.7.2 → zscaler_sdk_python-1.7.4}/zscaler/zia/atp_policy.py +0 -0
- {zscaler_sdk_python-1.7.2 → zscaler_sdk_python-1.7.4}/zscaler/zia/audit_logs.py +0 -0
- {zscaler_sdk_python-1.7.2 → zscaler_sdk_python-1.7.4}/zscaler/zia/authentication_settings.py +0 -0
- {zscaler_sdk_python-1.7.2 → zscaler_sdk_python-1.7.4}/zscaler/zia/bandwidth_classes.py +0 -0
- {zscaler_sdk_python-1.7.2 → zscaler_sdk_python-1.7.4}/zscaler/zia/bandwidth_control_rules.py +0 -0
- {zscaler_sdk_python-1.7.2 → zscaler_sdk_python-1.7.4}/zscaler/zia/browser_control_settings.py +0 -0
- {zscaler_sdk_python-1.7.2 → zscaler_sdk_python-1.7.4}/zscaler/zia/casb_dlp_rules.py +0 -0
- {zscaler_sdk_python-1.7.2 → zscaler_sdk_python-1.7.4}/zscaler/zia/casb_malware_rules.py +0 -0
- {zscaler_sdk_python-1.7.2 → zscaler_sdk_python-1.7.4}/zscaler/zia/cloud_app_instances.py +0 -0
- {zscaler_sdk_python-1.7.2 → zscaler_sdk_python-1.7.4}/zscaler/zia/cloud_applications.py +0 -0
- {zscaler_sdk_python-1.7.2 → zscaler_sdk_python-1.7.4}/zscaler/zia/cloud_browser_isolation.py +0 -0
- {zscaler_sdk_python-1.7.2 → zscaler_sdk_python-1.7.4}/zscaler/zia/cloud_firewall.py +0 -0
- {zscaler_sdk_python-1.7.2 → zscaler_sdk_python-1.7.4}/zscaler/zia/cloud_firewall_dns.py +0 -0
- {zscaler_sdk_python-1.7.2 → zscaler_sdk_python-1.7.4}/zscaler/zia/cloud_firewall_ips.py +0 -0
- {zscaler_sdk_python-1.7.2 → zscaler_sdk_python-1.7.4}/zscaler/zia/cloud_firewall_rules.py +0 -0
- {zscaler_sdk_python-1.7.2 → zscaler_sdk_python-1.7.4}/zscaler/zia/cloud_nss.py +0 -0
- {zscaler_sdk_python-1.7.2 → zscaler_sdk_python-1.7.4}/zscaler/zia/cloud_to_cloud_ir.py +0 -0
- {zscaler_sdk_python-1.7.2 → zscaler_sdk_python-1.7.4}/zscaler/zia/cloudappcontrol.py +0 -0
- {zscaler_sdk_python-1.7.2 → zscaler_sdk_python-1.7.4}/zscaler/zia/dedicated_ip_gateways.py +0 -0
- {zscaler_sdk_python-1.7.2 → zscaler_sdk_python-1.7.4}/zscaler/zia/device_management.py +0 -0
- {zscaler_sdk_python-1.7.2 → zscaler_sdk_python-1.7.4}/zscaler/zia/dlp_dictionary.py +0 -0
- {zscaler_sdk_python-1.7.2 → zscaler_sdk_python-1.7.4}/zscaler/zia/dlp_engine.py +0 -0
- {zscaler_sdk_python-1.7.2 → zscaler_sdk_python-1.7.4}/zscaler/zia/dlp_resources.py +0 -0
- {zscaler_sdk_python-1.7.2 → zscaler_sdk_python-1.7.4}/zscaler/zia/dlp_templates.py +0 -0
- {zscaler_sdk_python-1.7.2 → zscaler_sdk_python-1.7.4}/zscaler/zia/dns_gatways.py +0 -0
- {zscaler_sdk_python-1.7.2 → zscaler_sdk_python-1.7.4}/zscaler/zia/end_user_notification.py +0 -0
- {zscaler_sdk_python-1.7.2 → zscaler_sdk_python-1.7.4}/zscaler/zia/file_type_control_rule.py +0 -0
- {zscaler_sdk_python-1.7.2 → zscaler_sdk_python-1.7.4}/zscaler/zia/forwarding_control.py +0 -0
- {zscaler_sdk_python-1.7.2 → zscaler_sdk_python-1.7.4}/zscaler/zia/ftp_control_policy.py +0 -0
- {zscaler_sdk_python-1.7.2 → zscaler_sdk_python-1.7.4}/zscaler/zia/gre_tunnel.py +0 -0
- {zscaler_sdk_python-1.7.2 → zscaler_sdk_python-1.7.4}/zscaler/zia/intermediate_certificates.py +0 -0
- {zscaler_sdk_python-1.7.2 → zscaler_sdk_python-1.7.4}/zscaler/zia/iot_report.py +0 -0
- {zscaler_sdk_python-1.7.2 → zscaler_sdk_python-1.7.4}/zscaler/zia/ipv6_config.py +0 -0
- {zscaler_sdk_python-1.7.2 → zscaler_sdk_python-1.7.4}/zscaler/zia/malware_protection_policy.py +0 -0
- {zscaler_sdk_python-1.7.2 → zscaler_sdk_python-1.7.4}/zscaler/zia/mobile_threat_settings.py +0 -0
- {zscaler_sdk_python-1.7.2 → zscaler_sdk_python-1.7.4}/zscaler/zia/models/__init__.py +0 -0
- {zscaler_sdk_python-1.7.2 → zscaler_sdk_python-1.7.4}/zscaler/zia/models/admin_roles.py +0 -0
- {zscaler_sdk_python-1.7.2 → zscaler_sdk_python-1.7.4}/zscaler/zia/models/admin_users.py +0 -0
- {zscaler_sdk_python-1.7.2 → zscaler_sdk_python-1.7.4}/zscaler/zia/models/advanced_settings.py +0 -0
- {zscaler_sdk_python-1.7.2 → zscaler_sdk_python-1.7.4}/zscaler/zia/models/advanced_threat_settings.py +0 -0
- {zscaler_sdk_python-1.7.2 → zscaler_sdk_python-1.7.4}/zscaler/zia/models/alert_subscriptions.py +0 -0
- {zscaler_sdk_python-1.7.2 → zscaler_sdk_python-1.7.4}/zscaler/zia/models/apptotal.py +0 -0
- {zscaler_sdk_python-1.7.2 → zscaler_sdk_python-1.7.4}/zscaler/zia/models/authentication_settings.py +0 -0
- {zscaler_sdk_python-1.7.2 → zscaler_sdk_python-1.7.4}/zscaler/zia/models/bandwidth_classes.py +0 -0
- {zscaler_sdk_python-1.7.2 → zscaler_sdk_python-1.7.4}/zscaler/zia/models/bandwidth_control_rules.py +0 -0
- {zscaler_sdk_python-1.7.2 → zscaler_sdk_python-1.7.4}/zscaler/zia/models/browser_control_settings.py +0 -0
- {zscaler_sdk_python-1.7.2 → zscaler_sdk_python-1.7.4}/zscaler/zia/models/casb_dlp_rules.py +0 -0
- {zscaler_sdk_python-1.7.2 → zscaler_sdk_python-1.7.4}/zscaler/zia/models/casb_malware_rules.py +0 -0
- {zscaler_sdk_python-1.7.2 → zscaler_sdk_python-1.7.4}/zscaler/zia/models/cloud_app_instances.py +0 -0
- {zscaler_sdk_python-1.7.2 → zscaler_sdk_python-1.7.4}/zscaler/zia/models/cloud_app_policy.py +0 -0
- {zscaler_sdk_python-1.7.2 → zscaler_sdk_python-1.7.4}/zscaler/zia/models/cloud_browser_isolation.py +0 -0
- {zscaler_sdk_python-1.7.2 → zscaler_sdk_python-1.7.4}/zscaler/zia/models/cloud_firewall_app_services.py +0 -0
- {zscaler_sdk_python-1.7.2 → zscaler_sdk_python-1.7.4}/zscaler/zia/models/cloud_firewall_destination_groups.py +0 -0
- {zscaler_sdk_python-1.7.2 → zscaler_sdk_python-1.7.4}/zscaler/zia/models/cloud_firewall_dns_rules.py +0 -0
- {zscaler_sdk_python-1.7.2 → zscaler_sdk_python-1.7.4}/zscaler/zia/models/cloud_firewall_nw_application_groups.py +0 -0
- {zscaler_sdk_python-1.7.2 → zscaler_sdk_python-1.7.4}/zscaler/zia/models/cloud_firewall_nw_applications.py +0 -0
- {zscaler_sdk_python-1.7.2 → zscaler_sdk_python-1.7.4}/zscaler/zia/models/cloud_firewall_nw_service.py +0 -0
- {zscaler_sdk_python-1.7.2 → zscaler_sdk_python-1.7.4}/zscaler/zia/models/cloud_firewall_nw_service_groups.py +0 -0
- {zscaler_sdk_python-1.7.2 → zscaler_sdk_python-1.7.4}/zscaler/zia/models/cloud_firewall_rules.py +0 -0
- {zscaler_sdk_python-1.7.2 → zscaler_sdk_python-1.7.4}/zscaler/zia/models/cloud_firewall_source_groups.py +0 -0
- {zscaler_sdk_python-1.7.2 → zscaler_sdk_python-1.7.4}/zscaler/zia/models/cloud_firewall_time_windows.py +0 -0
- {zscaler_sdk_python-1.7.2 → zscaler_sdk_python-1.7.4}/zscaler/zia/models/cloud_nss.py +0 -0
- {zscaler_sdk_python-1.7.2 → zscaler_sdk_python-1.7.4}/zscaler/zia/models/cloud_to_cloud_ir.py +0 -0
- {zscaler_sdk_python-1.7.2 → zscaler_sdk_python-1.7.4}/zscaler/zia/models/cloudappcontrol.py +0 -0
- {zscaler_sdk_python-1.7.2 → zscaler_sdk_python-1.7.4}/zscaler/zia/models/common.py +0 -0
- {zscaler_sdk_python-1.7.2 → zscaler_sdk_python-1.7.4}/zscaler/zia/models/dedicated_ip_gateways.py +0 -0
- {zscaler_sdk_python-1.7.2 → zscaler_sdk_python-1.7.4}/zscaler/zia/models/device_groups.py +0 -0
- {zscaler_sdk_python-1.7.2 → zscaler_sdk_python-1.7.4}/zscaler/zia/models/devices.py +0 -0
- {zscaler_sdk_python-1.7.2 → zscaler_sdk_python-1.7.4}/zscaler/zia/models/dlp_dictionary.py +0 -0
- {zscaler_sdk_python-1.7.2 → zscaler_sdk_python-1.7.4}/zscaler/zia/models/dlp_engine.py +0 -0
- {zscaler_sdk_python-1.7.2 → zscaler_sdk_python-1.7.4}/zscaler/zia/models/dlp_resources.py +0 -0
- {zscaler_sdk_python-1.7.2 → zscaler_sdk_python-1.7.4}/zscaler/zia/models/dlp_templates.py +0 -0
- {zscaler_sdk_python-1.7.2 → zscaler_sdk_python-1.7.4}/zscaler/zia/models/dns_gateways.py +0 -0
- {zscaler_sdk_python-1.7.2 → zscaler_sdk_python-1.7.4}/zscaler/zia/models/endusernotification.py +0 -0
- {zscaler_sdk_python-1.7.2 → zscaler_sdk_python-1.7.4}/zscaler/zia/models/forwarding_control_policy.py +0 -0
- {zscaler_sdk_python-1.7.2 → zscaler_sdk_python-1.7.4}/zscaler/zia/models/ftp_control_policy.py +0 -0
- {zscaler_sdk_python-1.7.2 → zscaler_sdk_python-1.7.4}/zscaler/zia/models/gre_recommended_list.py +0 -0
- {zscaler_sdk_python-1.7.2 → zscaler_sdk_python-1.7.4}/zscaler/zia/models/gre_tunnel_info.py +0 -0
- {zscaler_sdk_python-1.7.2 → zscaler_sdk_python-1.7.4}/zscaler/zia/models/gre_tunnels.py +0 -0
- {zscaler_sdk_python-1.7.2 → zscaler_sdk_python-1.7.4}/zscaler/zia/models/gre_vips.py +0 -0
- {zscaler_sdk_python-1.7.2 → zscaler_sdk_python-1.7.4}/zscaler/zia/models/intermediate_certificates.py +0 -0
- {zscaler_sdk_python-1.7.2 → zscaler_sdk_python-1.7.4}/zscaler/zia/models/iotreport.py +0 -0
- {zscaler_sdk_python-1.7.2 → zscaler_sdk_python-1.7.4}/zscaler/zia/models/ipv6_config.py +0 -0
- {zscaler_sdk_python-1.7.2 → zscaler_sdk_python-1.7.4}/zscaler/zia/models/location_group.py +0 -0
- {zscaler_sdk_python-1.7.2 → zscaler_sdk_python-1.7.4}/zscaler/zia/models/location_management.py +0 -0
- {zscaler_sdk_python-1.7.2 → zscaler_sdk_python-1.7.4}/zscaler/zia/models/malware_protection_settings.py +0 -0
- {zscaler_sdk_python-1.7.2 → zscaler_sdk_python-1.7.4}/zscaler/zia/models/mobile_threat_settings.py +0 -0
- {zscaler_sdk_python-1.7.2 → zscaler_sdk_python-1.7.4}/zscaler/zia/models/nat_control_policy.py +0 -0
- {zscaler_sdk_python-1.7.2 → zscaler_sdk_python-1.7.4}/zscaler/zia/models/nss_servers.py +0 -0
- {zscaler_sdk_python-1.7.2 → zscaler_sdk_python-1.7.4}/zscaler/zia/models/organization_information.py +0 -0
- {zscaler_sdk_python-1.7.2 → zscaler_sdk_python-1.7.4}/zscaler/zia/models/proxies.py +0 -0
- {zscaler_sdk_python-1.7.2 → zscaler_sdk_python-1.7.4}/zscaler/zia/models/proxy_gateways.py +0 -0
- {zscaler_sdk_python-1.7.2 → zscaler_sdk_python-1.7.4}/zscaler/zia/models/remoteassistance.py +0 -0
- {zscaler_sdk_python-1.7.2 → zscaler_sdk_python-1.7.4}/zscaler/zia/models/risk_profiles.py +0 -0
- {zscaler_sdk_python-1.7.2 → zscaler_sdk_python-1.7.4}/zscaler/zia/models/rule_labels.py +0 -0
- {zscaler_sdk_python-1.7.2 → zscaler_sdk_python-1.7.4}/zscaler/zia/models/saas_security_api.py +0 -0
- {zscaler_sdk_python-1.7.2 → zscaler_sdk_python-1.7.4}/zscaler/zia/models/sandboxrules.py +0 -0
- {zscaler_sdk_python-1.7.2 → zscaler_sdk_python-1.7.4}/zscaler/zia/models/security_policy_settings.py +0 -0
- {zscaler_sdk_python-1.7.2 → zscaler_sdk_python-1.7.4}/zscaler/zia/models/shadow_it_report.py +0 -0
- {zscaler_sdk_python-1.7.2 → zscaler_sdk_python-1.7.4}/zscaler/zia/models/ssl_inspection_rules.py +0 -0
- {zscaler_sdk_python-1.7.2 → zscaler_sdk_python-1.7.4}/zscaler/zia/models/subclouds.py +0 -0
- {zscaler_sdk_python-1.7.2 → zscaler_sdk_python-1.7.4}/zscaler/zia/models/system_audit.py +0 -0
- {zscaler_sdk_python-1.7.2 → zscaler_sdk_python-1.7.4}/zscaler/zia/models/tenancy_restriction_profile.py +0 -0
- {zscaler_sdk_python-1.7.2 → zscaler_sdk_python-1.7.4}/zscaler/zia/models/time_intervals.py +0 -0
- {zscaler_sdk_python-1.7.2 → zscaler_sdk_python-1.7.4}/zscaler/zia/models/traffic_datacenters.py +0 -0
- {zscaler_sdk_python-1.7.2 → zscaler_sdk_python-1.7.4}/zscaler/zia/models/traffic_dc_exclusions.py +0 -0
- {zscaler_sdk_python-1.7.2 → zscaler_sdk_python-1.7.4}/zscaler/zia/models/traffic_extranet.py +0 -0
- {zscaler_sdk_python-1.7.2 → zscaler_sdk_python-1.7.4}/zscaler/zia/models/traffic_static_ip.py +0 -0
- {zscaler_sdk_python-1.7.2 → zscaler_sdk_python-1.7.4}/zscaler/zia/models/traffic_vpn_credentials.py +0 -0
- {zscaler_sdk_python-1.7.2 → zscaler_sdk_python-1.7.4}/zscaler/zia/models/url_filter_cloud_app_settings.py +0 -0
- {zscaler_sdk_python-1.7.2 → zscaler_sdk_python-1.7.4}/zscaler/zia/models/url_filtering_rules.py +0 -0
- {zscaler_sdk_python-1.7.2 → zscaler_sdk_python-1.7.4}/zscaler/zia/models/urlcategory.py +0 -0
- {zscaler_sdk_python-1.7.2 → zscaler_sdk_python-1.7.4}/zscaler/zia/models/user_management.py +0 -0
- {zscaler_sdk_python-1.7.2 → zscaler_sdk_python-1.7.4}/zscaler/zia/models/vzen_clusters.py +0 -0
- {zscaler_sdk_python-1.7.2 → zscaler_sdk_python-1.7.4}/zscaler/zia/models/workload_groups.py +0 -0
- {zscaler_sdk_python-1.7.2 → zscaler_sdk_python-1.7.4}/zscaler/zia/models/zpa_gateway.py +0 -0
- {zscaler_sdk_python-1.7.2 → zscaler_sdk_python-1.7.4}/zscaler/zia/nat_control_policy.py +0 -0
- {zscaler_sdk_python-1.7.2 → zscaler_sdk_python-1.7.4}/zscaler/zia/nss_servers.py +0 -0
- {zscaler_sdk_python-1.7.2 → zscaler_sdk_python-1.7.4}/zscaler/zia/organization_information.py +0 -0
- {zscaler_sdk_python-1.7.2 → zscaler_sdk_python-1.7.4}/zscaler/zia/policy_export.py +0 -0
- {zscaler_sdk_python-1.7.2 → zscaler_sdk_python-1.7.4}/zscaler/zia/proxies.py +0 -0
- {zscaler_sdk_python-1.7.2 → zscaler_sdk_python-1.7.4}/zscaler/zia/remote_assistance.py +0 -0
- {zscaler_sdk_python-1.7.2 → zscaler_sdk_python-1.7.4}/zscaler/zia/risk_profiles.py +0 -0
- {zscaler_sdk_python-1.7.2 → zscaler_sdk_python-1.7.4}/zscaler/zia/rule_labels.py +0 -0
- {zscaler_sdk_python-1.7.2 → zscaler_sdk_python-1.7.4}/zscaler/zia/saas_security_api.py +0 -0
- {zscaler_sdk_python-1.7.2 → zscaler_sdk_python-1.7.4}/zscaler/zia/sandbox.py +0 -0
- {zscaler_sdk_python-1.7.2 → zscaler_sdk_python-1.7.4}/zscaler/zia/sandbox_rules.py +0 -0
- {zscaler_sdk_python-1.7.2 → zscaler_sdk_python-1.7.4}/zscaler/zia/security_policy_settings.py +0 -0
- {zscaler_sdk_python-1.7.2 → zscaler_sdk_python-1.7.4}/zscaler/zia/shadow_it_report.py +0 -0
- {zscaler_sdk_python-1.7.2 → zscaler_sdk_python-1.7.4}/zscaler/zia/ssl_inspection_rules.py +0 -0
- {zscaler_sdk_python-1.7.2 → zscaler_sdk_python-1.7.4}/zscaler/zia/sub_clouds.py +0 -0
- {zscaler_sdk_python-1.7.2 → zscaler_sdk_python-1.7.4}/zscaler/zia/system_audit.py +0 -0
- {zscaler_sdk_python-1.7.2 → zscaler_sdk_python-1.7.4}/zscaler/zia/tenancy_restriction_profile.py +0 -0
- {zscaler_sdk_python-1.7.2 → zscaler_sdk_python-1.7.4}/zscaler/zia/time_intervals.py +0 -0
- {zscaler_sdk_python-1.7.2 → zscaler_sdk_python-1.7.4}/zscaler/zia/traffic_datacenters.py +0 -0
- {zscaler_sdk_python-1.7.2 → zscaler_sdk_python-1.7.4}/zscaler/zia/traffic_extranet.py +0 -0
- {zscaler_sdk_python-1.7.2 → zscaler_sdk_python-1.7.4}/zscaler/zia/traffic_static_ip.py +0 -0
- {zscaler_sdk_python-1.7.2 → zscaler_sdk_python-1.7.4}/zscaler/zia/traffic_vpn_credentials.py +0 -0
- {zscaler_sdk_python-1.7.2 → zscaler_sdk_python-1.7.4}/zscaler/zia/url_categories.py +0 -0
- {zscaler_sdk_python-1.7.2 → zscaler_sdk_python-1.7.4}/zscaler/zia/url_filtering.py +0 -0
- {zscaler_sdk_python-1.7.2 → zscaler_sdk_python-1.7.4}/zscaler/zia/user_management.py +0 -0
- {zscaler_sdk_python-1.7.2 → zscaler_sdk_python-1.7.4}/zscaler/zia/vzen_clusters.py +0 -0
- {zscaler_sdk_python-1.7.2 → zscaler_sdk_python-1.7.4}/zscaler/zia/workload_groups.py +0 -0
- {zscaler_sdk_python-1.7.2 → zscaler_sdk_python-1.7.4}/zscaler/zia/zia_service.py +0 -0
- {zscaler_sdk_python-1.7.2 → zscaler_sdk_python-1.7.4}/zscaler/zia/zpa_gateway.py +0 -0
- {zscaler_sdk_python-1.7.2 → zscaler_sdk_python-1.7.4}/zscaler/zidentity/__init__.py +0 -0
- {zscaler_sdk_python-1.7.2 → zscaler_sdk_python-1.7.4}/zscaler/zidentity/api_client.py +0 -0
- {zscaler_sdk_python-1.7.2 → zscaler_sdk_python-1.7.4}/zscaler/zidentity/groups.py +0 -0
- {zscaler_sdk_python-1.7.2 → zscaler_sdk_python-1.7.4}/zscaler/zidentity/models/api_client.py +0 -0
- {zscaler_sdk_python-1.7.2 → zscaler_sdk_python-1.7.4}/zscaler/zidentity/models/common.py +0 -0
- {zscaler_sdk_python-1.7.2 → zscaler_sdk_python-1.7.4}/zscaler/zidentity/models/groups.py +0 -0
- {zscaler_sdk_python-1.7.2 → zscaler_sdk_python-1.7.4}/zscaler/zidentity/models/resource_servers.py +0 -0
- {zscaler_sdk_python-1.7.2 → zscaler_sdk_python-1.7.4}/zscaler/zidentity/models/user_entitlement.py +0 -0
- {zscaler_sdk_python-1.7.2 → zscaler_sdk_python-1.7.4}/zscaler/zidentity/models/users.py +0 -0
- {zscaler_sdk_python-1.7.2 → zscaler_sdk_python-1.7.4}/zscaler/zidentity/resource_servers.py +0 -0
- {zscaler_sdk_python-1.7.2 → zscaler_sdk_python-1.7.4}/zscaler/zidentity/user_entitlement.py +0 -0
- {zscaler_sdk_python-1.7.2 → zscaler_sdk_python-1.7.4}/zscaler/zidentity/users.py +0 -0
- {zscaler_sdk_python-1.7.2 → zscaler_sdk_python-1.7.4}/zscaler/zidentity/zidentity_service.py +0 -0
- {zscaler_sdk_python-1.7.2 → zscaler_sdk_python-1.7.4}/zscaler/zpa/__init__.py +0 -0
- {zscaler_sdk_python-1.7.2 → zscaler_sdk_python-1.7.4}/zscaler/zpa/admin_sso_controller.py +0 -0
- {zscaler_sdk_python-1.7.2 → zscaler_sdk_python-1.7.4}/zscaler/zpa/administrator_controller.py +0 -0
- {zscaler_sdk_python-1.7.2 → zscaler_sdk_python-1.7.4}/zscaler/zpa/api_keys.py +0 -0
- {zscaler_sdk_python-1.7.2 → zscaler_sdk_python-1.7.4}/zscaler/zpa/app_connector_groups.py +0 -0
- {zscaler_sdk_python-1.7.2 → zscaler_sdk_python-1.7.4}/zscaler/zpa/app_connector_schedule.py +0 -0
- {zscaler_sdk_python-1.7.2 → zscaler_sdk_python-1.7.4}/zscaler/zpa/app_connectors.py +0 -0
- {zscaler_sdk_python-1.7.2 → zscaler_sdk_python-1.7.4}/zscaler/zpa/app_protection.py +0 -0
- {zscaler_sdk_python-1.7.2 → zscaler_sdk_python-1.7.4}/zscaler/zpa/app_segment_by_type.py +0 -0
- {zscaler_sdk_python-1.7.2 → zscaler_sdk_python-1.7.4}/zscaler/zpa/app_segments_ba.py +0 -0
- {zscaler_sdk_python-1.7.2 → zscaler_sdk_python-1.7.4}/zscaler/zpa/app_segments_ba_v2.py +0 -0
- {zscaler_sdk_python-1.7.2 → zscaler_sdk_python-1.7.4}/zscaler/zpa/app_segments_inspection.py +0 -0
- {zscaler_sdk_python-1.7.2 → zscaler_sdk_python-1.7.4}/zscaler/zpa/app_segments_pra.py +0 -0
- {zscaler_sdk_python-1.7.2 → zscaler_sdk_python-1.7.4}/zscaler/zpa/application_segment.py +0 -0
- {zscaler_sdk_python-1.7.2 → zscaler_sdk_python-1.7.4}/zscaler/zpa/c2c_ip_ranges.py +0 -0
- {zscaler_sdk_python-1.7.2 → zscaler_sdk_python-1.7.4}/zscaler/zpa/cbi_banner.py +0 -0
- {zscaler_sdk_python-1.7.2 → zscaler_sdk_python-1.7.4}/zscaler/zpa/cbi_certificate.py +0 -0
- {zscaler_sdk_python-1.7.2 → zscaler_sdk_python-1.7.4}/zscaler/zpa/cbi_profile.py +0 -0
- {zscaler_sdk_python-1.7.2 → zscaler_sdk_python-1.7.4}/zscaler/zpa/cbi_region.py +0 -0
- {zscaler_sdk_python-1.7.2 → zscaler_sdk_python-1.7.4}/zscaler/zpa/cbi_zpa_profile.py +0 -0
- {zscaler_sdk_python-1.7.2 → zscaler_sdk_python-1.7.4}/zscaler/zpa/certificates.py +0 -0
- {zscaler_sdk_python-1.7.2 → zscaler_sdk_python-1.7.4}/zscaler/zpa/client_settings.py +0 -0
- {zscaler_sdk_python-1.7.2 → zscaler_sdk_python-1.7.4}/zscaler/zpa/cloud_connector_groups.py +0 -0
- {zscaler_sdk_python-1.7.2 → zscaler_sdk_python-1.7.4}/zscaler/zpa/config_override_controller.py +0 -0
- {zscaler_sdk_python-1.7.2 → zscaler_sdk_python-1.7.4}/zscaler/zpa/customer_controller.py +0 -0
- {zscaler_sdk_python-1.7.2 → zscaler_sdk_python-1.7.4}/zscaler/zpa/customer_domain.py +0 -0
- {zscaler_sdk_python-1.7.2 → zscaler_sdk_python-1.7.4}/zscaler/zpa/customer_version_profile.py +0 -0
- {zscaler_sdk_python-1.7.2 → zscaler_sdk_python-1.7.4}/zscaler/zpa/emergency_access.py +0 -0
- {zscaler_sdk_python-1.7.2 → zscaler_sdk_python-1.7.4}/zscaler/zpa/enrollment_certificates.py +0 -0
- {zscaler_sdk_python-1.7.2 → zscaler_sdk_python-1.7.4}/zscaler/zpa/idp.py +0 -0
- {zscaler_sdk_python-1.7.2 → zscaler_sdk_python-1.7.4}/zscaler/zpa/legacy.py +0 -0
- {zscaler_sdk_python-1.7.2 → zscaler_sdk_python-1.7.4}/zscaler/zpa/lss.py +0 -0
- {zscaler_sdk_python-1.7.2 → zscaler_sdk_python-1.7.4}/zscaler/zpa/machine_groups.py +0 -0
- {zscaler_sdk_python-1.7.2 → zscaler_sdk_python-1.7.4}/zscaler/zpa/microtenants.py +0 -0
- {zscaler_sdk_python-1.7.2 → zscaler_sdk_python-1.7.4}/zscaler/zpa/models/administrator_controller.py +0 -0
- {zscaler_sdk_python-1.7.2 → zscaler_sdk_python-1.7.4}/zscaler/zpa/models/api_keys.py +0 -0
- {zscaler_sdk_python-1.7.2 → zscaler_sdk_python-1.7.4}/zscaler/zpa/models/app_connector_groups.py +0 -0
- {zscaler_sdk_python-1.7.2 → zscaler_sdk_python-1.7.4}/zscaler/zpa/models/app_connector_schedule.py +0 -0
- {zscaler_sdk_python-1.7.2 → zscaler_sdk_python-1.7.4}/zscaler/zpa/models/app_connectors.py +0 -0
- {zscaler_sdk_python-1.7.2 → zscaler_sdk_python-1.7.4}/zscaler/zpa/models/app_protection_predefined_controls.py +0 -0
- {zscaler_sdk_python-1.7.2 → zscaler_sdk_python-1.7.4}/zscaler/zpa/models/app_protection_profile.py +0 -0
- {zscaler_sdk_python-1.7.2 → zscaler_sdk_python-1.7.4}/zscaler/zpa/models/application_segment.py +0 -0
- {zscaler_sdk_python-1.7.2 → zscaler_sdk_python-1.7.4}/zscaler/zpa/models/application_segment_lb.py +0 -0
- {zscaler_sdk_python-1.7.2 → zscaler_sdk_python-1.7.4}/zscaler/zpa/models/application_servers.py +0 -0
- {zscaler_sdk_python-1.7.2 → zscaler_sdk_python-1.7.4}/zscaler/zpa/models/c2c_ip_ranges.py +0 -0
- {zscaler_sdk_python-1.7.2 → zscaler_sdk_python-1.7.4}/zscaler/zpa/models/cbi_banner.py +0 -0
- {zscaler_sdk_python-1.7.2 → zscaler_sdk_python-1.7.4}/zscaler/zpa/models/cbi_certificate.py +0 -0
- {zscaler_sdk_python-1.7.2 → zscaler_sdk_python-1.7.4}/zscaler/zpa/models/cbi_profile.py +0 -0
- {zscaler_sdk_python-1.7.2 → zscaler_sdk_python-1.7.4}/zscaler/zpa/models/cbi_region.py +0 -0
- {zscaler_sdk_python-1.7.2 → zscaler_sdk_python-1.7.4}/zscaler/zpa/models/cbi_zpa_profile.py +0 -0
- {zscaler_sdk_python-1.7.2 → zscaler_sdk_python-1.7.4}/zscaler/zpa/models/certificates.py +0 -0
- {zscaler_sdk_python-1.7.2 → zscaler_sdk_python-1.7.4}/zscaler/zpa/models/client_settings.py +0 -0
- {zscaler_sdk_python-1.7.2 → zscaler_sdk_python-1.7.4}/zscaler/zpa/models/cloud_connector_groups.py +0 -0
- {zscaler_sdk_python-1.7.2 → zscaler_sdk_python-1.7.4}/zscaler/zpa/models/common.py +0 -0
- {zscaler_sdk_python-1.7.2 → zscaler_sdk_python-1.7.4}/zscaler/zpa/models/config_override_controller.py +0 -0
- {zscaler_sdk_python-1.7.2 → zscaler_sdk_python-1.7.4}/zscaler/zpa/models/customer_controller.py +0 -0
- {zscaler_sdk_python-1.7.2 → zscaler_sdk_python-1.7.4}/zscaler/zpa/models/customer_domain.py +0 -0
- {zscaler_sdk_python-1.7.2 → zscaler_sdk_python-1.7.4}/zscaler/zpa/models/customer_version_profile.py +0 -0
- {zscaler_sdk_python-1.7.2 → zscaler_sdk_python-1.7.4}/zscaler/zpa/models/emergency_access.py +0 -0
- {zscaler_sdk_python-1.7.2 → zscaler_sdk_python-1.7.4}/zscaler/zpa/models/enrollment_certificates.py +0 -0
- {zscaler_sdk_python-1.7.2 → zscaler_sdk_python-1.7.4}/zscaler/zpa/models/idp.py +0 -0
- {zscaler_sdk_python-1.7.2 → zscaler_sdk_python-1.7.4}/zscaler/zpa/models/lss.py +0 -0
- {zscaler_sdk_python-1.7.2 → zscaler_sdk_python-1.7.4}/zscaler/zpa/models/machine_groups.py +0 -0
- {zscaler_sdk_python-1.7.2 → zscaler_sdk_python-1.7.4}/zscaler/zpa/models/microtenants.py +0 -0
- {zscaler_sdk_python-1.7.2 → zscaler_sdk_python-1.7.4}/zscaler/zpa/models/npn_client_controller.py +0 -0
- {zscaler_sdk_python-1.7.2 → zscaler_sdk_python-1.7.4}/zscaler/zpa/models/policyset_controller_v1.py +0 -0
- {zscaler_sdk_python-1.7.2 → zscaler_sdk_python-1.7.4}/zscaler/zpa/models/policyset_controller_v2.py +0 -0
- {zscaler_sdk_python-1.7.2 → zscaler_sdk_python-1.7.4}/zscaler/zpa/models/posture_profiles.py +0 -0
- {zscaler_sdk_python-1.7.2 → zscaler_sdk_python-1.7.4}/zscaler/zpa/models/pra_approval.py +0 -0
- {zscaler_sdk_python-1.7.2 → zscaler_sdk_python-1.7.4}/zscaler/zpa/models/pra_console.py +0 -0
- {zscaler_sdk_python-1.7.2 → zscaler_sdk_python-1.7.4}/zscaler/zpa/models/pra_cred_pool_controller.py +0 -0
- {zscaler_sdk_python-1.7.2 → zscaler_sdk_python-1.7.4}/zscaler/zpa/models/pra_credential.py +0 -0
- {zscaler_sdk_python-1.7.2 → zscaler_sdk_python-1.7.4}/zscaler/zpa/models/pra_portal.py +0 -0
- {zscaler_sdk_python-1.7.2 → zscaler_sdk_python-1.7.4}/zscaler/zpa/models/private_cloud_controller.py +0 -0
- {zscaler_sdk_python-1.7.2 → zscaler_sdk_python-1.7.4}/zscaler/zpa/models/private_cloud_group.py +0 -0
- {zscaler_sdk_python-1.7.2 → zscaler_sdk_python-1.7.4}/zscaler/zpa/models/provisioning_keys.py +0 -0
- {zscaler_sdk_python-1.7.2 → zscaler_sdk_python-1.7.4}/zscaler/zpa/models/role_controller.py +0 -0
- {zscaler_sdk_python-1.7.2 → zscaler_sdk_python-1.7.4}/zscaler/zpa/models/saml_attributes.py +0 -0
- {zscaler_sdk_python-1.7.2 → zscaler_sdk_python-1.7.4}/zscaler/zpa/models/scim_attributes.py +0 -0
- {zscaler_sdk_python-1.7.2 → zscaler_sdk_python-1.7.4}/zscaler/zpa/models/scim_groups.py +0 -0
- {zscaler_sdk_python-1.7.2 → zscaler_sdk_python-1.7.4}/zscaler/zpa/models/segment_group.py +0 -0
- {zscaler_sdk_python-1.7.2 → zscaler_sdk_python-1.7.4}/zscaler/zpa/models/server_group.py +0 -0
- {zscaler_sdk_python-1.7.2 → zscaler_sdk_python-1.7.4}/zscaler/zpa/models/service_edge_groups.py +0 -0
- {zscaler_sdk_python-1.7.2 → zscaler_sdk_python-1.7.4}/zscaler/zpa/models/service_edge_schedule.py +0 -0
- {zscaler_sdk_python-1.7.2 → zscaler_sdk_python-1.7.4}/zscaler/zpa/models/service_edges.py +0 -0
- {zscaler_sdk_python-1.7.2 → zscaler_sdk_python-1.7.4}/zscaler/zpa/models/trusted_network.py +0 -0
- {zscaler_sdk_python-1.7.2 → zscaler_sdk_python-1.7.4}/zscaler/zpa/models/user_portal_controller.py +0 -0
- {zscaler_sdk_python-1.7.2 → zscaler_sdk_python-1.7.4}/zscaler/zpa/models/user_portal_link.py +0 -0
- {zscaler_sdk_python-1.7.2 → zscaler_sdk_python-1.7.4}/zscaler/zpa/npn_client_controller.py +0 -0
- {zscaler_sdk_python-1.7.2 → zscaler_sdk_python-1.7.4}/zscaler/zpa/policies.py +0 -0
- {zscaler_sdk_python-1.7.2 → zscaler_sdk_python-1.7.4}/zscaler/zpa/posture_profiles.py +0 -0
- {zscaler_sdk_python-1.7.2 → zscaler_sdk_python-1.7.4}/zscaler/zpa/pra_approval.py +0 -0
- {zscaler_sdk_python-1.7.2 → zscaler_sdk_python-1.7.4}/zscaler/zpa/pra_console.py +0 -0
- {zscaler_sdk_python-1.7.2 → zscaler_sdk_python-1.7.4}/zscaler/zpa/pra_credential.py +0 -0
- {zscaler_sdk_python-1.7.2 → zscaler_sdk_python-1.7.4}/zscaler/zpa/pra_credential_pool.py +0 -0
- {zscaler_sdk_python-1.7.2 → zscaler_sdk_python-1.7.4}/zscaler/zpa/pra_portal.py +0 -0
- {zscaler_sdk_python-1.7.2 → zscaler_sdk_python-1.7.4}/zscaler/zpa/private_cloud_controller.py +0 -0
- {zscaler_sdk_python-1.7.2 → zscaler_sdk_python-1.7.4}/zscaler/zpa/private_cloud_group.py +0 -0
- {zscaler_sdk_python-1.7.2 → zscaler_sdk_python-1.7.4}/zscaler/zpa/provisioning.py +0 -0
- {zscaler_sdk_python-1.7.2 → zscaler_sdk_python-1.7.4}/zscaler/zpa/role_controller.py +0 -0
- {zscaler_sdk_python-1.7.2 → zscaler_sdk_python-1.7.4}/zscaler/zpa/saml_attributes.py +0 -0
- {zscaler_sdk_python-1.7.2 → zscaler_sdk_python-1.7.4}/zscaler/zpa/scim_attributes.py +0 -0
- {zscaler_sdk_python-1.7.2 → zscaler_sdk_python-1.7.4}/zscaler/zpa/scim_groups.py +0 -0
- {zscaler_sdk_python-1.7.2 → zscaler_sdk_python-1.7.4}/zscaler/zpa/segment_groups.py +0 -0
- {zscaler_sdk_python-1.7.2 → zscaler_sdk_python-1.7.4}/zscaler/zpa/server_groups.py +0 -0
- {zscaler_sdk_python-1.7.2 → zscaler_sdk_python-1.7.4}/zscaler/zpa/servers.py +0 -0
- {zscaler_sdk_python-1.7.2 → zscaler_sdk_python-1.7.4}/zscaler/zpa/service_edge_group.py +0 -0
- {zscaler_sdk_python-1.7.2 → zscaler_sdk_python-1.7.4}/zscaler/zpa/service_edge_schedule.py +0 -0
- {zscaler_sdk_python-1.7.2 → zscaler_sdk_python-1.7.4}/zscaler/zpa/service_edges.py +0 -0
- {zscaler_sdk_python-1.7.2 → zscaler_sdk_python-1.7.4}/zscaler/zpa/trusted_networks.py +0 -0
- {zscaler_sdk_python-1.7.2 → zscaler_sdk_python-1.7.4}/zscaler/zpa/user_portal_controller.py +0 -0
- {zscaler_sdk_python-1.7.2 → zscaler_sdk_python-1.7.4}/zscaler/zpa/user_portal_link.py +0 -0
- {zscaler_sdk_python-1.7.2 → zscaler_sdk_python-1.7.4}/zscaler/zpa/zpa_service.py +0 -0
- {zscaler_sdk_python-1.7.2 → zscaler_sdk_python-1.7.4}/zscaler/ztw/__init__.py +0 -0
- {zscaler_sdk_python-1.7.2 → zscaler_sdk_python-1.7.4}/zscaler/ztw/account_details.py +0 -0
- {zscaler_sdk_python-1.7.2 → zscaler_sdk_python-1.7.4}/zscaler/ztw/activation.py +0 -0
- {zscaler_sdk_python-1.7.2 → zscaler_sdk_python-1.7.4}/zscaler/ztw/admin_roles.py +0 -0
- {zscaler_sdk_python-1.7.2 → zscaler_sdk_python-1.7.4}/zscaler/ztw/admin_users.py +0 -0
- {zscaler_sdk_python-1.7.2 → zscaler_sdk_python-1.7.4}/zscaler/ztw/api_keys.py +0 -0
- {zscaler_sdk_python-1.7.2 → zscaler_sdk_python-1.7.4}/zscaler/ztw/ec_groups.py +0 -0
- {zscaler_sdk_python-1.7.2 → zscaler_sdk_python-1.7.4}/zscaler/ztw/forwarding_gateways.py +0 -0
- {zscaler_sdk_python-1.7.2 → zscaler_sdk_python-1.7.4}/zscaler/ztw/forwarding_rules.py +0 -0
- {zscaler_sdk_python-1.7.2 → zscaler_sdk_python-1.7.4}/zscaler/ztw/ip_destination_groups.py +0 -0
- {zscaler_sdk_python-1.7.2 → zscaler_sdk_python-1.7.4}/zscaler/ztw/ip_groups.py +0 -0
- {zscaler_sdk_python-1.7.2 → zscaler_sdk_python-1.7.4}/zscaler/ztw/ip_source_groups.py +0 -0
- {zscaler_sdk_python-1.7.2 → zscaler_sdk_python-1.7.4}/zscaler/ztw/legacy.py +0 -0
- {zscaler_sdk_python-1.7.2 → zscaler_sdk_python-1.7.4}/zscaler/ztw/location_management.py +0 -0
- {zscaler_sdk_python-1.7.2 → zscaler_sdk_python-1.7.4}/zscaler/ztw/location_template.py +0 -0
- {zscaler_sdk_python-1.7.2 → zscaler_sdk_python-1.7.4}/zscaler/ztw/models/activation.py +0 -0
- {zscaler_sdk_python-1.7.2 → zscaler_sdk_python-1.7.4}/zscaler/ztw/models/admin_roles.py +0 -0
- {zscaler_sdk_python-1.7.2 → zscaler_sdk_python-1.7.4}/zscaler/ztw/models/admin_users.py +0 -0
- {zscaler_sdk_python-1.7.2 → zscaler_sdk_python-1.7.4}/zscaler/ztw/models/api_keys.py +0 -0
- {zscaler_sdk_python-1.7.2 → zscaler_sdk_python-1.7.4}/zscaler/ztw/models/common.py +0 -0
- {zscaler_sdk_python-1.7.2 → zscaler_sdk_python-1.7.4}/zscaler/ztw/models/ec_group_vm.py +0 -0
- {zscaler_sdk_python-1.7.2 → zscaler_sdk_python-1.7.4}/zscaler/ztw/models/ecgroup.py +0 -0
- {zscaler_sdk_python-1.7.2 → zscaler_sdk_python-1.7.4}/zscaler/ztw/models/forwarding_gateways.py +0 -0
- {zscaler_sdk_python-1.7.2 → zscaler_sdk_python-1.7.4}/zscaler/ztw/models/forwarding_rules.py +0 -0
- {zscaler_sdk_python-1.7.2 → zscaler_sdk_python-1.7.4}/zscaler/ztw/models/ip_destination_groups.py +0 -0
- {zscaler_sdk_python-1.7.2 → zscaler_sdk_python-1.7.4}/zscaler/ztw/models/ip_groups.py +0 -0
- {zscaler_sdk_python-1.7.2 → zscaler_sdk_python-1.7.4}/zscaler/ztw/models/ip_source_groups.py +0 -0
- {zscaler_sdk_python-1.7.2 → zscaler_sdk_python-1.7.4}/zscaler/ztw/models/location_management.py +0 -0
- {zscaler_sdk_python-1.7.2 → zscaler_sdk_python-1.7.4}/zscaler/ztw/models/location_templates.py +0 -0
- {zscaler_sdk_python-1.7.2 → zscaler_sdk_python-1.7.4}/zscaler/ztw/models/nw_service.py +0 -0
- {zscaler_sdk_python-1.7.2 → zscaler_sdk_python-1.7.4}/zscaler/ztw/models/nw_service_groups.py +0 -0
- {zscaler_sdk_python-1.7.2 → zscaler_sdk_python-1.7.4}/zscaler/ztw/models/provisioning_url.py +0 -0
- {zscaler_sdk_python-1.7.2 → zscaler_sdk_python-1.7.4}/zscaler/ztw/models/traffic_vpn_credentials.py +0 -0
- {zscaler_sdk_python-1.7.2 → zscaler_sdk_python-1.7.4}/zscaler/ztw/models/zpa_resources.py +0 -0
- {zscaler_sdk_python-1.7.2 → zscaler_sdk_python-1.7.4}/zscaler/ztw/nw_service.py +0 -0
- {zscaler_sdk_python-1.7.2 → zscaler_sdk_python-1.7.4}/zscaler/ztw/nw_service_groups.py +0 -0
- {zscaler_sdk_python-1.7.2 → zscaler_sdk_python-1.7.4}/zscaler/ztw/provisioning_url.py +0 -0
- {zscaler_sdk_python-1.7.2 → zscaler_sdk_python-1.7.4}/zscaler/ztw/ztw_service.py +0 -0
- {zscaler_sdk_python-1.7.2 → zscaler_sdk_python-1.7.4}/zscaler/zwa/__init__.py +0 -0
- {zscaler_sdk_python-1.7.2 → zscaler_sdk_python-1.7.4}/zscaler/zwa/audit_logs.py +0 -0
- {zscaler_sdk_python-1.7.2 → zscaler_sdk_python-1.7.4}/zscaler/zwa/dlp_incidents.py +0 -0
- {zscaler_sdk_python-1.7.2 → zscaler_sdk_python-1.7.4}/zscaler/zwa/legacy.py +0 -0
- {zscaler_sdk_python-1.7.2 → zscaler_sdk_python-1.7.4}/zscaler/zwa/models/audit_logs.py +0 -0
- {zscaler_sdk_python-1.7.2 → zscaler_sdk_python-1.7.4}/zscaler/zwa/models/change_history.py +0 -0
- {zscaler_sdk_python-1.7.2 → zscaler_sdk_python-1.7.4}/zscaler/zwa/models/common.py +0 -0
- {zscaler_sdk_python-1.7.2 → zscaler_sdk_python-1.7.4}/zscaler/zwa/models/generated_tickets.py +0 -0
- {zscaler_sdk_python-1.7.2 → zscaler_sdk_python-1.7.4}/zscaler/zwa/models/incident_details.py +0 -0
- {zscaler_sdk_python-1.7.2 → zscaler_sdk_python-1.7.4}/zscaler/zwa/models/incident_evidence.py +0 -0
- {zscaler_sdk_python-1.7.2 → zscaler_sdk_python-1.7.4}/zscaler/zwa/models/incident_group_search.py +0 -0
- {zscaler_sdk_python-1.7.2 → zscaler_sdk_python-1.7.4}/zscaler/zwa/models/incident_search.py +0 -0
- {zscaler_sdk_python-1.7.2 → zscaler_sdk_python-1.7.4}/zscaler/zwa/models/incident_trigger.py +0 -0
- {zscaler_sdk_python-1.7.2 → zscaler_sdk_python-1.7.4}/zscaler/zwa/zwa_service.py +0 -0
|
@@ -293,6 +293,7 @@ class Client:
|
|
|
293
293
|
service_type = self._config.get("client", {}).get("service", "zia")
|
|
294
294
|
|
|
295
295
|
if service_type.lower() in ["zia", "ztw"]:
|
|
296
|
+
# For ZIA, deauthenticate only if mutations occurred; executor will decide.
|
|
296
297
|
self.logger.debug(f"Deauthenticating Zscaler session for {service_type} service.")
|
|
297
298
|
self._request_executor.deauthenticate(service_type)
|
|
298
299
|
self.logger.debug(f"Zscaler session deauthenticated for {service_type}.")
|
|
@@ -168,6 +168,14 @@ class ZscalerAPIResponse:
|
|
|
168
168
|
self._results_total = self._body.get("results_total")
|
|
169
169
|
self._page_offset = self._body.get("pageOffset")
|
|
170
170
|
self._page_size = self._body.get("pageSize")
|
|
171
|
+
elif self._service_type == "ZCC":
|
|
172
|
+
# ZCC can return either a single object or a list of objects
|
|
173
|
+
if isinstance(self._body, dict):
|
|
174
|
+
# If it's a single object, wrap it in a list
|
|
175
|
+
self._list = [self._body]
|
|
176
|
+
else:
|
|
177
|
+
# If it's already a list, use it as is
|
|
178
|
+
self._list = self._body if isinstance(self._body, list) else []
|
|
171
179
|
else:
|
|
172
180
|
# ZPA and possibly other services use a dict with "list" field
|
|
173
181
|
self._list = self._body.get("list", [])
|
|
@@ -261,7 +261,12 @@ class RequestExecutor:
|
|
|
261
261
|
"uuid": uuid.uuid4(),
|
|
262
262
|
"service_type": service_type,
|
|
263
263
|
}
|
|
264
|
-
|
|
264
|
+
|
|
265
|
+
# Special handling for PAC file validation endpoint
|
|
266
|
+
if "/pacFiles/validate" in endpoint and service_type == "zia":
|
|
267
|
+
# For PAC file validation, send as raw data without any modification
|
|
268
|
+
request["data"] = body
|
|
269
|
+
elif use_raw_data_for_body:
|
|
265
270
|
request["data"] = body
|
|
266
271
|
else:
|
|
267
272
|
json_payload = self._prepare_body(endpoint, body)
|
|
@@ -269,7 +274,14 @@ class RequestExecutor:
|
|
|
269
274
|
return request, None
|
|
270
275
|
|
|
271
276
|
def _prepare_headers(self, headers, endpoint=""):
|
|
272
|
-
|
|
277
|
+
# Special handling for PAC file validation - preserve custom Content-Type
|
|
278
|
+
if "/pacFiles/validate" in endpoint:
|
|
279
|
+
# For PAC validation, don't override Content-Type from default headers
|
|
280
|
+
default_headers = {k: v for k, v in self._default_headers.items() if k != "Content-Type"}
|
|
281
|
+
headers = {**default_headers, **(self._custom_headers or {}), **headers}
|
|
282
|
+
else:
|
|
283
|
+
headers = {**self._default_headers, **(self._custom_headers or {}), **headers}
|
|
284
|
+
|
|
273
285
|
if "/zscsb" not in endpoint and not self.use_legacy_client:
|
|
274
286
|
headers["Authorization"] = f"Bearer {self._oauth._get_access_token()}"
|
|
275
287
|
return headers
|
|
@@ -282,6 +294,10 @@ class RequestExecutor:
|
|
|
282
294
|
if self.use_legacy_client and self.zdx_legacy_client:
|
|
283
295
|
return body # Do not convert anything, just return as-is
|
|
284
296
|
|
|
297
|
+
# Special handling for ZDX endpoints - keep snake_case format
|
|
298
|
+
if "/zdx/" in endpoint:
|
|
299
|
+
return body # Do not convert ZDX requests to camelCase
|
|
300
|
+
|
|
285
301
|
# Preserve existing logic for other services
|
|
286
302
|
if body:
|
|
287
303
|
body = convert_keys_to_camel_case(body)
|
|
@@ -426,6 +426,7 @@ def zdx_params(func):
|
|
|
426
426
|
("score_bucket", "score_bucket"), # New: str (poor, okay, good)
|
|
427
427
|
("limit", "limit"), # New: int
|
|
428
428
|
("offset", "offset"), # New: str (API-defined pagination)
|
|
429
|
+
("expiry", "expiry"), # New: int
|
|
429
430
|
]:
|
|
430
431
|
if key in kwargs:
|
|
431
432
|
value = kwargs.pop(key)
|
|
@@ -377,27 +377,25 @@ class DevicesAPI(APIClient):
|
|
|
377
377
|
``[query_params.udid]`` {str, optional}: Filter by unique device identifier.
|
|
378
378
|
|
|
379
379
|
Returns:
|
|
380
|
-
:obj:`
|
|
380
|
+
:obj:`DeviceDetails`: Returns device detail information in the Client Connector Portal.
|
|
381
381
|
|
|
382
382
|
Examples:
|
|
383
|
-
Prints
|
|
383
|
+
Prints device details in the Client Connector Portal to the console:
|
|
384
384
|
|
|
385
385
|
>>> details, _, err = client.zcc.devices.get_device_details()
|
|
386
386
|
>>> if err:
|
|
387
387
|
... print(f"Error listing device details: {err}")
|
|
388
388
|
... return
|
|
389
|
-
...
|
|
390
|
-
... print(device.as_dict())
|
|
389
|
+
... print(details.as_dict())
|
|
391
390
|
|
|
392
|
-
Prints
|
|
391
|
+
Prints device details in the Client Connector Portal to the console:
|
|
393
392
|
|
|
394
393
|
>>> details, _, err = client.zcc.devices.get_device_details(
|
|
395
394
|
... query_params:{'username': 'jdoe'})
|
|
396
395
|
>>> if err:
|
|
397
396
|
... print(f"Error listing device details: {err}")
|
|
398
397
|
... return
|
|
399
|
-
...
|
|
400
|
-
... print(device.as_dict())
|
|
398
|
+
... print(details.as_dict())
|
|
401
399
|
"""
|
|
402
400
|
http_method = "get".upper()
|
|
403
401
|
api_url = format_url(
|
|
@@ -417,14 +415,13 @@ class DevicesAPI(APIClient):
|
|
|
417
415
|
if error:
|
|
418
416
|
return (None, None, error)
|
|
419
417
|
|
|
420
|
-
response, error = self._request_executor.execute(request
|
|
418
|
+
response, error = self._request_executor.execute(request)
|
|
421
419
|
if error:
|
|
422
420
|
return (None, response, error)
|
|
423
421
|
|
|
424
422
|
try:
|
|
425
|
-
|
|
426
|
-
|
|
427
|
-
result.append(DeviceDetails(self.form_response_body(item)))
|
|
423
|
+
# Handle single object response directly since getDeviceDetails returns a single object
|
|
424
|
+
result = DeviceDetails(self.form_response_body(response.get_body()))
|
|
428
425
|
except Exception as error:
|
|
429
426
|
return (None, response, error)
|
|
430
427
|
return (result, response, None)
|
|
@@ -291,12 +291,12 @@ class DeviceCleanup(ZscalerObject):
|
|
|
291
291
|
|
|
292
292
|
class DeviceDetails(ZscalerObject):
|
|
293
293
|
"""
|
|
294
|
-
A class for
|
|
294
|
+
A class for Device Details objects.
|
|
295
295
|
"""
|
|
296
296
|
|
|
297
297
|
def __init__(self, config=None):
|
|
298
298
|
"""
|
|
299
|
-
Initialize the
|
|
299
|
+
Initialize the Device Details model based on API response.
|
|
300
300
|
|
|
301
301
|
Args:
|
|
302
302
|
config (dict): A dictionary representing the configuration.
|
|
@@ -304,58 +304,108 @@ class DeviceDetails(ZscalerObject):
|
|
|
304
304
|
super().__init__(config)
|
|
305
305
|
|
|
306
306
|
if config:
|
|
307
|
-
|
|
308
|
-
|
|
309
|
-
self.carrier = config
|
|
310
|
-
|
|
311
|
-
self.
|
|
312
|
-
|
|
313
|
-
self.
|
|
314
|
-
|
|
315
|
-
self.
|
|
316
|
-
|
|
317
|
-
self.
|
|
318
|
-
|
|
319
|
-
self.
|
|
320
|
-
|
|
321
|
-
self.
|
|
322
|
-
|
|
323
|
-
self.
|
|
324
|
-
|
|
325
|
-
self.
|
|
326
|
-
|
|
327
|
-
self.
|
|
328
|
-
|
|
329
|
-
self.
|
|
330
|
-
|
|
331
|
-
self.
|
|
332
|
-
|
|
333
|
-
self.
|
|
334
|
-
|
|
335
|
-
|
|
336
|
-
|
|
337
|
-
|
|
338
|
-
|
|
339
|
-
|
|
340
|
-
|
|
341
|
-
|
|
342
|
-
|
|
343
|
-
|
|
344
|
-
|
|
345
|
-
|
|
346
|
-
|
|
347
|
-
|
|
348
|
-
|
|
349
|
-
|
|
350
|
-
|
|
351
|
-
|
|
352
|
-
|
|
353
|
-
|
|
354
|
-
|
|
355
|
-
|
|
356
|
-
|
|
357
|
-
|
|
358
|
-
|
|
307
|
+
# Handle attributes that might be in snake_case or camelCase
|
|
308
|
+
self.agent_version = config.get("agent_version") or config.get("agentVersion")
|
|
309
|
+
self.carrier = config.get("carrier")
|
|
310
|
+
self.config_download_time = config.get("config_download_time") or config.get("configDownloadTime")
|
|
311
|
+
self.deregistration_time = config.get("deregistration_time") or config.get("deregistrationTime")
|
|
312
|
+
self.device_policy_name = config.get("device_policy_name") or config.get("devicePolicyName")
|
|
313
|
+
self.device_locale = config.get("device_locale") or config.get("deviceLocale")
|
|
314
|
+
self.download_count = config.get("download_count") or config.get("downloadCount")
|
|
315
|
+
self.external_model = config.get("external_model") or config.get("externalModel")
|
|
316
|
+
self.hardware_fingerprint = config.get("hardware_fingerprint") or config.get("hardwareFingerprint")
|
|
317
|
+
self.keep_alive_time = config.get("keep_alive_time") or config.get("keepAliveTime")
|
|
318
|
+
self.last_seen_time = config.get("last_seen_time") or config.get("lastSeenTime")
|
|
319
|
+
self.mac_address = config.get("mac_address") or config.get("macAddress")
|
|
320
|
+
self.machine_hostname = config.get("machine_hostname") or config.get("machineHostname")
|
|
321
|
+
self.manufacturer = config.get("manufacturer")
|
|
322
|
+
self.os_version = config.get("os_version") or config.get("osVersion")
|
|
323
|
+
self.owner = config.get("owner")
|
|
324
|
+
self.registration_time = config.get("registration_time") or config.get("registrationTime")
|
|
325
|
+
self.rooted = config.get("rooted")
|
|
326
|
+
self.state = config.get("state")
|
|
327
|
+
self.tunnel_version = config.get("tunnel_version") or config.get("tunnelVersion")
|
|
328
|
+
self.type = config.get("type")
|
|
329
|
+
self.unique_id = config.get("unique_id") or config.get("uniqueId")
|
|
330
|
+
self.upm_version = config.get("upm_version") or config.get("upmVersion")
|
|
331
|
+
self.user_name = config.get("user_name") or config.get("userName")
|
|
332
|
+
self.zad_version = config.get("zad_version") or config.get("zadVersion")
|
|
333
|
+
self.zapp_arch = config.get("zapp_arch") or config.get("zappArch")
|
|
334
|
+
|
|
335
|
+
# Additional fields from the API response
|
|
336
|
+
self.id = config["id"] \
|
|
337
|
+
if "id" in config else None
|
|
338
|
+
self.internal_model = config["internal_model"] \
|
|
339
|
+
if "internal_model" in config else None
|
|
340
|
+
self.zdp_version = config["zdpVersion"] \
|
|
341
|
+
if "zdpVersion" in config else None
|
|
342
|
+
self.serial_number = config["serialNumber"] \
|
|
343
|
+
if "serialNumber" in config else None
|
|
344
|
+
self.zia_enabled = config["ziaEnabled"] \
|
|
345
|
+
if "ziaEnabled" in config else None
|
|
346
|
+
self.zpa_enabled = config["zpaEnabled"] \
|
|
347
|
+
if "zpaEnabled" in config else None
|
|
348
|
+
self.zdx_enabled = config["zdxEnabled"] \
|
|
349
|
+
if "zdxEnabled" in config else None
|
|
350
|
+
self.zd_enabled = config["zdEnabled"] \
|
|
351
|
+
if "zdEnabled" in config else None
|
|
352
|
+
self.zdp_enabled = config["zdpEnabled"] \
|
|
353
|
+
if "zdpEnabled" in config else None
|
|
354
|
+
self.zia_health = config["ziaHealth"] \
|
|
355
|
+
if "ziaHealth" in config else None
|
|
356
|
+
self.zpa_health = config["zpaHealth"] \
|
|
357
|
+
if "zpaHealth" in config else None
|
|
358
|
+
self.zdx_health = config["zdxHealth"] \
|
|
359
|
+
if "zdxHealth" in config else None
|
|
360
|
+
self.zd_health = config["zdHealth"] \
|
|
361
|
+
if "zdHealth" in config else None
|
|
362
|
+
self.zdp_health = config["zdpHealth"] \
|
|
363
|
+
if "zdpHealth" in config else None
|
|
364
|
+
self.zpa_last_seen_time = config["zpaLastSeenTime"] \
|
|
365
|
+
if "zpaLastSeenTime" in config else None
|
|
366
|
+
self.zdx_last_seen_time = config["zdxLastSeenTime"] \
|
|
367
|
+
if "zdxLastSeenTime" in config else None
|
|
368
|
+
self.zd_last_seen_time = config["zdLastSeenTime"] \
|
|
369
|
+
if "zdLastSeenTime" in config else None
|
|
370
|
+
self.zdp_last_seen_time = config["zdpLastSeenTime"] \
|
|
371
|
+
if "zdpLastSeenTime" in config else None
|
|
372
|
+
self.zcc_logged_in_user_type = config["zccLoggedInUserType"] \
|
|
373
|
+
if "zccLoggedInUserType" in config else None
|
|
374
|
+
self.external_device_id = config["externalDeviceId"] \
|
|
375
|
+
if "externalDeviceId" in config else None
|
|
376
|
+
self.zcc_force_revert = config["zccForceRevert"] \
|
|
377
|
+
if "zccForceRevert" in config else None
|
|
378
|
+
self.anti_tampering_status = config["antiTamperingStatus"] \
|
|
379
|
+
if "antiTamperingStatus" in config else None
|
|
380
|
+
self.device_trust = config["deviceTrust"] \
|
|
381
|
+
if "deviceTrust" in config else None
|
|
382
|
+
self.zcc_tunnel_version = config["zccTunnelVersion"] \
|
|
383
|
+
if "zccTunnelVersion" in config else None
|
|
384
|
+
self.vdi = config["vdi"] \
|
|
385
|
+
if "vdi" in config else None
|
|
386
|
+
self.strict_enforcement = config["strictEnforcement"] \
|
|
387
|
+
if "strictEnforcement" in config else None
|
|
388
|
+
self.expected_zcc_version = config["expectedZCCVersion"] \
|
|
389
|
+
if "expectedZCCVersion" in config else None
|
|
390
|
+
self.expected_zcc_version_timestamp = config["expectedZCCVersionTimestamp"] \
|
|
391
|
+
if "expectedZCCVersionTimestamp" in config else None
|
|
392
|
+
self.zcc_upgrade_status = config["zccUpgradeStatus"] \
|
|
393
|
+
if "zccUpgradeStatus" in config else None
|
|
394
|
+
|
|
395
|
+
self.device_otp_array = ZscalerCollection.form_list(
|
|
396
|
+
config["deviceOtpArray"] if "deviceOtpArray" in config else [], str
|
|
397
|
+
)
|
|
398
|
+
|
|
399
|
+
if "logFetchInfo" in config:
|
|
400
|
+
if isinstance(config["logFetchInfo"], LogFetchInfo):
|
|
401
|
+
self.log_fetch_info = config["logFetchInfo"]
|
|
402
|
+
elif config["logFetchInfo"] is not None:
|
|
403
|
+
self.log_fetch_info = LogFetchInfo(config["logFetchInfo"])
|
|
404
|
+
else:
|
|
405
|
+
self.log_fetch_info = None
|
|
406
|
+
else:
|
|
407
|
+
self.log_fetch_info = None
|
|
408
|
+
|
|
359
409
|
else:
|
|
360
410
|
self.agent_version = None
|
|
361
411
|
self.carrier = None
|
|
@@ -383,6 +433,39 @@ class DeviceDetails(ZscalerObject):
|
|
|
383
433
|
self.user_name = None
|
|
384
434
|
self.zad_version = None
|
|
385
435
|
self.zapp_arch = None
|
|
436
|
+
self.log_fetch_info = None
|
|
437
|
+
self.device_otp_array = None
|
|
438
|
+
|
|
439
|
+
# Additional fields from the API response
|
|
440
|
+
self.id = None
|
|
441
|
+
self.internal_model = None
|
|
442
|
+
self.zdp_version = None
|
|
443
|
+
self.serial_number = None
|
|
444
|
+
self.zia_enabled = None
|
|
445
|
+
self.zpa_enabled = None
|
|
446
|
+
self.zdx_enabled = None
|
|
447
|
+
self.zd_enabled = None
|
|
448
|
+
self.zdp_enabled = None
|
|
449
|
+
self.zia_health = None
|
|
450
|
+
self.zpa_health = None
|
|
451
|
+
self.zdx_health = None
|
|
452
|
+
self.zd_health = None
|
|
453
|
+
self.zdp_health = None
|
|
454
|
+
self.zpa_last_seen_time = None
|
|
455
|
+
self.zdx_last_seen_time = None
|
|
456
|
+
self.zd_last_seen_time = None
|
|
457
|
+
self.zdp_last_seen_time = None
|
|
458
|
+
self.zcc_logged_in_user_type = None
|
|
459
|
+
self.external_device_id = None
|
|
460
|
+
self.zcc_force_revert = None
|
|
461
|
+
self.anti_tampering_status = None
|
|
462
|
+
self.device_trust = None
|
|
463
|
+
self.zcc_tunnel_version = None
|
|
464
|
+
self.vdi = None
|
|
465
|
+
self.strict_enforcement = None
|
|
466
|
+
self.expected_zcc_version = None
|
|
467
|
+
self.expected_zcc_version_timestamp = None
|
|
468
|
+
self.zcc_upgrade_status = None
|
|
386
469
|
|
|
387
470
|
def request_format(self):
|
|
388
471
|
"""
|
|
@@ -415,7 +498,90 @@ class DeviceDetails(ZscalerObject):
|
|
|
415
498
|
"upmVersion": self.upm_version,
|
|
416
499
|
"user_name": self.user_name,
|
|
417
500
|
"zadVersion": self.zad_version,
|
|
418
|
-
"zappArch": self.zapp_arch
|
|
501
|
+
"zappArch": self.zapp_arch,
|
|
502
|
+
"deviceOtpArray": self.device_otp_array,
|
|
503
|
+
"logFetchInfo": self.log_fetch_info,
|
|
504
|
+
"id": self.id,
|
|
505
|
+
"internal_model": self.internal_model,
|
|
506
|
+
"zdpVersion": self.zdp_version,
|
|
507
|
+
"serialNumber": self.serial_number,
|
|
508
|
+
"ziaEnabled": self.zia_enabled,
|
|
509
|
+
"zpaEnabled": self.zpa_enabled,
|
|
510
|
+
"zdxEnabled": self.zdx_enabled,
|
|
511
|
+
"zdEnabled": self.zd_enabled,
|
|
512
|
+
"zdpEnabled": self.zdp_enabled,
|
|
513
|
+
"ziaHealth": self.zia_health,
|
|
514
|
+
"zpaHealth": self.zpa_health,
|
|
515
|
+
"zdxHealth": self.zdx_health,
|
|
516
|
+
"zdHealth": self.zd_health,
|
|
517
|
+
"zdpHealth": self.zdp_health,
|
|
518
|
+
"zpaLastSeenTime": self.zpa_last_seen_time,
|
|
519
|
+
"zdxLastSeenTime": self.zdx_last_seen_time,
|
|
520
|
+
"zdLastSeenTime": self.zd_last_seen_time,
|
|
521
|
+
"zdpLastSeenTime": self.zdp_last_seen_time,
|
|
522
|
+
"zccLoggedInUserType": self.zcc_logged_in_user_type,
|
|
523
|
+
"externalDeviceId": self.external_device_id,
|
|
524
|
+
"zccForceRevert": self.zcc_force_revert,
|
|
525
|
+
"antiTamperingStatus": self.anti_tampering_status,
|
|
526
|
+
"deviceTrust": self.device_trust,
|
|
527
|
+
"zccTunnelVersion": self.zcc_tunnel_version,
|
|
528
|
+
"vdi": self.vdi,
|
|
529
|
+
"strictEnforcement": self.strict_enforcement,
|
|
530
|
+
"expectedZCCVersion": self.expected_zcc_version,
|
|
531
|
+
"expectedZCCVersionTimestamp": self.expected_zcc_version_timestamp,
|
|
532
|
+
"zccUpgradeStatus": self.zcc_upgrade_status
|
|
533
|
+
}
|
|
534
|
+
parent_req_format.update(current_obj_format)
|
|
535
|
+
return parent_req_format
|
|
536
|
+
|
|
537
|
+
|
|
538
|
+
class LogFetchInfo(ZscalerObject):
|
|
539
|
+
"""
|
|
540
|
+
A class for LogFetchInfo objects.
|
|
541
|
+
"""
|
|
542
|
+
|
|
543
|
+
def __init__(self, config=None):
|
|
544
|
+
"""
|
|
545
|
+
Initialize the LogFetchInfo model based on API response.
|
|
546
|
+
|
|
547
|
+
Args:
|
|
548
|
+
config (dict): A dictionary representing the configuration.
|
|
549
|
+
"""
|
|
550
|
+
super().__init__(config)
|
|
551
|
+
|
|
552
|
+
if config:
|
|
553
|
+
self.log_ts = config["logTs"] \
|
|
554
|
+
if "logTs" in config else None
|
|
555
|
+
self.log_ack_ts = config["logAckTs"] \
|
|
556
|
+
if "logAckTs" in config else None
|
|
557
|
+
self.error = config["error"] \
|
|
558
|
+
if "error" in config else None
|
|
559
|
+
self.log_fetch_pcap_enabled = config["logFetchPCAPEnabled"] \
|
|
560
|
+
if "logFetchPCAPEnabled" in config else None
|
|
561
|
+
self.log_fetch_db_enabled = config["logFetchDBEnabled"] \
|
|
562
|
+
if "logFetchDBEnabled" in config else None
|
|
563
|
+
self.log_fetch_from_no_of_days = config["logFetchFromNoOfDays"] \
|
|
564
|
+
if "logFetchFromNoOfDays" in config else None
|
|
565
|
+
else:
|
|
566
|
+
self.log_ts = None
|
|
567
|
+
self.log_ack_ts = None
|
|
568
|
+
self.error = None
|
|
569
|
+
self.log_fetch_pcap_enabled = None
|
|
570
|
+
self.log_fetch_db_enabled = None
|
|
571
|
+
self.log_fetch_from_no_of_days = None
|
|
572
|
+
|
|
573
|
+
def request_format(self):
|
|
574
|
+
"""
|
|
575
|
+
Return the object as a dictionary in the format expected for API requests.
|
|
576
|
+
"""
|
|
577
|
+
parent_req_format = super().request_format()
|
|
578
|
+
current_obj_format = {
|
|
579
|
+
"logTs": self.log_ts,
|
|
580
|
+
"logAckTs": self.log_ack_ts,
|
|
581
|
+
"error": self.error,
|
|
582
|
+
"logFetchPCAPEnabled": self.log_fetch_pcap_enabled,
|
|
583
|
+
"logFetchDBEnabled": self.log_fetch_db_enabled,
|
|
584
|
+
"logFetchFromNoOfDays": self.log_fetch_from_no_of_days
|
|
419
585
|
}
|
|
420
586
|
parent_req_format.update(current_obj_format)
|
|
421
587
|
return parent_req_format
|
|
@@ -18,6 +18,7 @@ from zscaler.api_client import APIClient
|
|
|
18
18
|
from zscaler.request_executor import RequestExecutor
|
|
19
19
|
from zscaler.zdx.models.alerts import Alerts
|
|
20
20
|
from zscaler.zdx.models.alerts import AlertDetails
|
|
21
|
+
from zscaler.zdx.models.alerts import AffectedDevices
|
|
21
22
|
from zscaler.utils import format_url, zdx_params
|
|
22
23
|
|
|
23
24
|
|
|
@@ -102,20 +103,11 @@ class AlertsAPI(APIClient):
|
|
|
102
103
|
if error:
|
|
103
104
|
return (None, response, error)
|
|
104
105
|
|
|
105
|
-
# try:
|
|
106
|
-
# parsed_response = self.form_response_body(response.get_body())
|
|
107
|
-
# alerts_list = parsed_response.get("alerts", [])
|
|
108
|
-
# result = [Alerts(alert) for alert in alerts_list]
|
|
109
|
-
# except Exception as error:
|
|
110
|
-
# return (None, response, error)
|
|
111
|
-
# return (result, response, None)
|
|
112
|
-
|
|
113
106
|
try:
|
|
114
|
-
result = []
|
|
115
|
-
for item in response.get_results():
|
|
116
|
-
result.append(Alerts(self.form_response_body(item)))
|
|
107
|
+
result = [Alerts(self.form_response_body(response.get_body()))]
|
|
117
108
|
except Exception as error:
|
|
118
109
|
return (None, response, error)
|
|
110
|
+
|
|
119
111
|
return (result, response, None)
|
|
120
112
|
|
|
121
113
|
def get_alert(self, alert_id: str) -> tuple:
|
|
@@ -316,7 +308,7 @@ class AlertsAPI(APIClient):
|
|
|
316
308
|
return (None, response, error)
|
|
317
309
|
|
|
318
310
|
try:
|
|
319
|
-
result = [
|
|
311
|
+
result = [AffectedDevices(self.form_response_body(response.get_body()))]
|
|
320
312
|
except Exception as error:
|
|
321
313
|
return (None, response, error)
|
|
322
314
|
|
|
@@ -20,8 +20,8 @@ from zscaler.zdx.models.applications import ActiveApplications
|
|
|
20
20
|
from zscaler.zdx.models.applications import ApplicationScore
|
|
21
21
|
from zscaler.zdx.models.applications import ApplicationScoreTrend
|
|
22
22
|
from zscaler.zdx.models.applications import ApplicationMetrics
|
|
23
|
-
from zscaler.zdx.models.users import UserDetails
|
|
24
23
|
from zscaler.zdx.models.application_users import ApplicationUserDetails
|
|
24
|
+
from zscaler.zdx.models.application_users import ApplicationActiveUsers
|
|
25
25
|
from zscaler.utils import format_url, zdx_params
|
|
26
26
|
|
|
27
27
|
|
|
@@ -305,7 +305,9 @@ class AppsAPI(APIClient):
|
|
|
305
305
|
return (None, response, error)
|
|
306
306
|
|
|
307
307
|
try:
|
|
308
|
-
result = [
|
|
308
|
+
result = []
|
|
309
|
+
for item in response.get_results():
|
|
310
|
+
result.append(ApplicationMetrics(item))
|
|
309
311
|
except Exception as error:
|
|
310
312
|
return (None, response, error)
|
|
311
313
|
|
|
@@ -381,18 +383,8 @@ class AppsAPI(APIClient):
|
|
|
381
383
|
if error:
|
|
382
384
|
return (None, response, error)
|
|
383
385
|
|
|
384
|
-
# try:
|
|
385
|
-
# result = [ApplicationUsers(
|
|
386
|
-
# self.form_response_body(response.get_body()))]
|
|
387
|
-
# except Exception as error:
|
|
388
|
-
# return (None, response, error)
|
|
389
|
-
|
|
390
|
-
# return (result, response, None)
|
|
391
386
|
try:
|
|
392
|
-
|
|
393
|
-
users_list = parsed_response.get("users", [])
|
|
394
|
-
result = [UserDetails(user) for user in users_list]
|
|
395
|
-
|
|
387
|
+
result = [ApplicationActiveUsers(self.form_response_body(response.get_body()))]
|
|
396
388
|
except Exception as error:
|
|
397
389
|
return (None, response, error)
|
|
398
390
|
|
|
@@ -373,7 +373,9 @@ class DevicesAPI(APIClient):
|
|
|
373
373
|
return (None, response, error)
|
|
374
374
|
|
|
375
375
|
try:
|
|
376
|
-
result = [
|
|
376
|
+
result = []
|
|
377
|
+
for item in response.get_results():
|
|
378
|
+
result.append(DeviceAppWebProbes(item))
|
|
377
379
|
except Exception as error:
|
|
378
380
|
return (None, response, error)
|
|
379
381
|
|
|
@@ -440,7 +442,9 @@ class DevicesAPI(APIClient):
|
|
|
440
442
|
return (None, response, error)
|
|
441
443
|
|
|
442
444
|
try:
|
|
443
|
-
result = [
|
|
445
|
+
result = []
|
|
446
|
+
for item in response.get_results():
|
|
447
|
+
result.append(DeviceWebProbePageFetch(item))
|
|
444
448
|
except Exception as error:
|
|
445
449
|
return (None, response, error)
|
|
446
450
|
|
|
@@ -497,7 +501,9 @@ class DevicesAPI(APIClient):
|
|
|
497
501
|
return (None, response, error)
|
|
498
502
|
|
|
499
503
|
try:
|
|
500
|
-
result = [
|
|
504
|
+
result = []
|
|
505
|
+
for item in response.get_results():
|
|
506
|
+
result.append(DeviceAppCloudPathProbes(item))
|
|
501
507
|
except Exception as error:
|
|
502
508
|
return (None, response, error)
|
|
503
509
|
|
|
@@ -554,7 +560,9 @@ class DevicesAPI(APIClient):
|
|
|
554
560
|
return (None, response, error)
|
|
555
561
|
|
|
556
562
|
try:
|
|
557
|
-
result = [
|
|
563
|
+
result = []
|
|
564
|
+
for item in response.get_results():
|
|
565
|
+
result.append(DeviceCloudPathProbesMetric(item))
|
|
558
566
|
except Exception as error:
|
|
559
567
|
return (None, response, error)
|
|
560
568
|
|
|
@@ -613,7 +621,9 @@ class DevicesAPI(APIClient):
|
|
|
613
621
|
return (None, response, error)
|
|
614
622
|
|
|
615
623
|
try:
|
|
616
|
-
result = [
|
|
624
|
+
result = []
|
|
625
|
+
for item in response.get_results():
|
|
626
|
+
result.append(DeviceCloudPathProbesHopData(item))
|
|
617
627
|
except Exception as error:
|
|
618
628
|
return (None, response, error)
|
|
619
629
|
|
|
@@ -666,7 +676,9 @@ class DevicesAPI(APIClient):
|
|
|
666
676
|
return (None, response, error)
|
|
667
677
|
|
|
668
678
|
try:
|
|
669
|
-
result = [
|
|
679
|
+
result = []
|
|
680
|
+
for item in response.get_results():
|
|
681
|
+
result.append(CallQualityMetrics(item))
|
|
670
682
|
except Exception as error:
|
|
671
683
|
return (None, response, error)
|
|
672
684
|
|
|
@@ -721,7 +733,9 @@ class DevicesAPI(APIClient):
|
|
|
721
733
|
return (None, response, error)
|
|
722
734
|
|
|
723
735
|
try:
|
|
724
|
-
result = [
|
|
736
|
+
result = []
|
|
737
|
+
for item in response.get_results():
|
|
738
|
+
result.append(DeviceHealthMetrics(item))
|
|
725
739
|
except Exception as error:
|
|
726
740
|
return (None, response, error)
|
|
727
741
|
|
|
@@ -776,7 +790,9 @@ class DevicesAPI(APIClient):
|
|
|
776
790
|
return (None, response, error)
|
|
777
791
|
|
|
778
792
|
try:
|
|
779
|
-
result = [
|
|
793
|
+
result = []
|
|
794
|
+
for item in response.get_results():
|
|
795
|
+
result.append(DeviceEvents(item))
|
|
780
796
|
except Exception as error:
|
|
781
797
|
return (None, response, error)
|
|
782
798
|
|
|
@@ -834,7 +850,9 @@ class DevicesAPI(APIClient):
|
|
|
834
850
|
return (None, response, error)
|
|
835
851
|
|
|
836
852
|
try:
|
|
837
|
-
result = [
|
|
853
|
+
result = []
|
|
854
|
+
for item in response.get_results():
|
|
855
|
+
result.append(DeviceActiveGeo(item))
|
|
838
856
|
except Exception as error:
|
|
839
857
|
return (None, response, error)
|
|
840
858
|
|