zscaler-sdk-python 1.5.9__tar.gz → 1.6.0__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.5.9 → zscaler_sdk_python-1.6.0}/PKG-INFO +2 -2
- {zscaler_sdk_python-1.5.9 → zscaler_sdk_python-1.6.0}/README.md +1 -1
- {zscaler_sdk_python-1.5.9 → zscaler_sdk_python-1.6.0}/pyproject.toml +1 -1
- {zscaler_sdk_python-1.5.9 → zscaler_sdk_python-1.6.0}/zscaler/__init__.py +1 -1
- {zscaler_sdk_python-1.5.9 → zscaler_sdk_python-1.6.0}/zscaler/helpers.py +4 -2
- {zscaler_sdk_python-1.5.9 → zscaler_sdk_python-1.6.0}/zscaler/oneapi_http_client.py +3 -3
- {zscaler_sdk_python-1.5.9 → zscaler_sdk_python-1.6.0}/zscaler/request_executor.py +3 -1
- {zscaler_sdk_python-1.5.9 → zscaler_sdk_python-1.6.0}/zscaler/zcc/devices.py +2 -0
- zscaler_sdk_python-1.6.0/zscaler/zpa/admin_sso_controller.py +130 -0
- zscaler_sdk_python-1.6.0/zscaler/zpa/api_keys.py +307 -0
- {zscaler_sdk_python-1.5.9 → zscaler_sdk_python-1.6.0}/zscaler/zpa/app_connector_groups.py +0 -2
- zscaler_sdk_python-1.6.0/zscaler/zpa/c2c_ip_ranges.py +404 -0
- zscaler_sdk_python-1.6.0/zscaler/zpa/config_override_controller.py +215 -0
- zscaler_sdk_python-1.6.0/zscaler/zpa/customer_domain.py +164 -0
- {zscaler_sdk_python-1.5.9 → zscaler_sdk_python-1.6.0}/zscaler/zpa/legacy.py +104 -0
- {zscaler_sdk_python-1.5.9 → zscaler_sdk_python-1.6.0}/zscaler/zpa/microtenants.py +3 -3
- zscaler_sdk_python-1.6.0/zscaler/zpa/models/api_keys.py +120 -0
- {zscaler_sdk_python-1.5.9 → zscaler_sdk_python-1.6.0}/zscaler/zpa/models/app_connector_groups.py +0 -1
- zscaler_sdk_python-1.6.0/zscaler/zpa/models/c2c_ip_ranges.py +129 -0
- {zscaler_sdk_python-1.5.9 → zscaler_sdk_python-1.6.0}/zscaler/zpa/models/common.py +156 -1
- zscaler_sdk_python-1.6.0/zscaler/zpa/models/config_override_controller.py +101 -0
- zscaler_sdk_python-1.6.0/zscaler/zpa/models/customer_domain.py +81 -0
- zscaler_sdk_python-1.6.0/zscaler/zpa/models/microtenants.py +82 -0
- zscaler_sdk_python-1.6.0/zscaler/zpa/models/npn_client_controller.py +87 -0
- zscaler_sdk_python-1.6.0/zscaler/zpa/models/private_cloud_controller.py +571 -0
- zscaler_sdk_python-1.6.0/zscaler/zpa/models/private_cloud_group.py +241 -0
- zscaler_sdk_python-1.6.0/zscaler/zpa/models/user_portal_controller.py +127 -0
- zscaler_sdk_python-1.6.0/zscaler/zpa/models/user_portal_link.py +151 -0
- zscaler_sdk_python-1.6.0/zscaler/zpa/npn_client_controller.py +88 -0
- {zscaler_sdk_python-1.5.9 → zscaler_sdk_python-1.6.0}/zscaler/zpa/pra_console.py +1 -1
- zscaler_sdk_python-1.6.0/zscaler/zpa/private_cloud_controller.py +283 -0
- zscaler_sdk_python-1.6.0/zscaler/zpa/private_cloud_group.py +429 -0
- zscaler_sdk_python-1.6.0/zscaler/zpa/user_portal_controller.py +309 -0
- zscaler_sdk_python-1.6.0/zscaler/zpa/user_portal_link.py +469 -0
- {zscaler_sdk_python-1.5.9 → zscaler_sdk_python-1.6.0}/zscaler/zpa/zpa_service.py +100 -0
- zscaler_sdk_python-1.5.9/zscaler/zpa/models/microtenants.py +0 -235
- {zscaler_sdk_python-1.5.9 → zscaler_sdk_python-1.6.0}/LICENSE.md +0 -0
- {zscaler_sdk_python-1.5.9 → zscaler_sdk_python-1.6.0}/zscaler/api_client.py +0 -0
- {zscaler_sdk_python-1.5.9 → zscaler_sdk_python-1.6.0}/zscaler/cache/__init__.py +0 -0
- {zscaler_sdk_python-1.5.9 → zscaler_sdk_python-1.6.0}/zscaler/cache/cache.py +0 -0
- {zscaler_sdk_python-1.5.9 → zscaler_sdk_python-1.6.0}/zscaler/cache/no_op_cache.py +0 -0
- {zscaler_sdk_python-1.5.9 → zscaler_sdk_python-1.6.0}/zscaler/cache/zscaler_cache.py +0 -0
- {zscaler_sdk_python-1.5.9 → zscaler_sdk_python-1.6.0}/zscaler/config/__init__.py +0 -0
- {zscaler_sdk_python-1.5.9 → zscaler_sdk_python-1.6.0}/zscaler/config/config_setter.py +0 -0
- {zscaler_sdk_python-1.5.9 → zscaler_sdk_python-1.6.0}/zscaler/config/config_validator.py +0 -0
- {zscaler_sdk_python-1.5.9 → zscaler_sdk_python-1.6.0}/zscaler/constants.py +0 -0
- {zscaler_sdk_python-1.5.9 → zscaler_sdk_python-1.6.0}/zscaler/error_messages.py +0 -0
- {zscaler_sdk_python-1.5.9 → zscaler_sdk_python-1.6.0}/zscaler/errors/__init__.py +0 -0
- {zscaler_sdk_python-1.5.9 → zscaler_sdk_python-1.6.0}/zscaler/errors/error.py +0 -0
- {zscaler_sdk_python-1.5.9 → zscaler_sdk_python-1.6.0}/zscaler/errors/http_error.py +0 -0
- {zscaler_sdk_python-1.5.9 → zscaler_sdk_python-1.6.0}/zscaler/errors/response_checker.py +0 -0
- {zscaler_sdk_python-1.5.9 → zscaler_sdk_python-1.6.0}/zscaler/errors/zscaler_api_error.py +0 -0
- {zscaler_sdk_python-1.5.9 → zscaler_sdk_python-1.6.0}/zscaler/exceptions/__init__.py +0 -0
- {zscaler_sdk_python-1.5.9 → zscaler_sdk_python-1.6.0}/zscaler/exceptions/exceptions.py +0 -0
- {zscaler_sdk_python-1.5.9 → zscaler_sdk_python-1.6.0}/zscaler/logger.py +0 -0
- {zscaler_sdk_python-1.5.9 → zscaler_sdk_python-1.6.0}/zscaler/oneapi_client.py +0 -0
- {zscaler_sdk_python-1.5.9 → zscaler_sdk_python-1.6.0}/zscaler/oneapi_collection.py +0 -0
- {zscaler_sdk_python-1.5.9 → zscaler_sdk_python-1.6.0}/zscaler/oneapi_oauth_client.py +0 -0
- {zscaler_sdk_python-1.5.9 → zscaler_sdk_python-1.6.0}/zscaler/oneapi_object.py +0 -0
- {zscaler_sdk_python-1.5.9 → zscaler_sdk_python-1.6.0}/zscaler/oneapi_response.py +0 -0
- {zscaler_sdk_python-1.5.9 → zscaler_sdk_python-1.6.0}/zscaler/ratelimiter/__init__.py +0 -0
- {zscaler_sdk_python-1.5.9 → zscaler_sdk_python-1.6.0}/zscaler/ratelimiter/ratelimiter.py +0 -0
- {zscaler_sdk_python-1.5.9 → zscaler_sdk_python-1.6.0}/zscaler/user_agent.py +0 -0
- {zscaler_sdk_python-1.5.9 → zscaler_sdk_python-1.6.0}/zscaler/utils.py +0 -0
- {zscaler_sdk_python-1.5.9 → zscaler_sdk_python-1.6.0}/zscaler/zcc/__init__.py +0 -0
- {zscaler_sdk_python-1.5.9 → zscaler_sdk_python-1.6.0}/zscaler/zcc/admin_user.py +0 -0
- {zscaler_sdk_python-1.5.9 → zscaler_sdk_python-1.6.0}/zscaler/zcc/company.py +0 -0
- {zscaler_sdk_python-1.5.9 → zscaler_sdk_python-1.6.0}/zscaler/zcc/entitlements.py +0 -0
- {zscaler_sdk_python-1.5.9 → zscaler_sdk_python-1.6.0}/zscaler/zcc/fail_open_policy.py +0 -0
- {zscaler_sdk_python-1.5.9 → zscaler_sdk_python-1.6.0}/zscaler/zcc/forwarding_profile.py +0 -0
- {zscaler_sdk_python-1.5.9 → zscaler_sdk_python-1.6.0}/zscaler/zcc/legacy.py +0 -0
- {zscaler_sdk_python-1.5.9 → zscaler_sdk_python-1.6.0}/zscaler/zcc/models/admin_roles.py +0 -0
- {zscaler_sdk_python-1.5.9 → zscaler_sdk_python-1.6.0}/zscaler/zcc/models/admin_user.py +0 -0
- {zscaler_sdk_python-1.5.9 → zscaler_sdk_python-1.6.0}/zscaler/zcc/models/devices.py +0 -0
- {zscaler_sdk_python-1.5.9 → zscaler_sdk_python-1.6.0}/zscaler/zcc/models/failopenpolicy.py +0 -0
- {zscaler_sdk_python-1.5.9 → zscaler_sdk_python-1.6.0}/zscaler/zcc/models/forwardingprofile.py +0 -0
- {zscaler_sdk_python-1.5.9 → zscaler_sdk_python-1.6.0}/zscaler/zcc/models/getcompanyinfo.py +0 -0
- {zscaler_sdk_python-1.5.9 → zscaler_sdk_python-1.6.0}/zscaler/zcc/models/manage_pass.py +0 -0
- {zscaler_sdk_python-1.5.9 → zscaler_sdk_python-1.6.0}/zscaler/zcc/models/secrets_otp.py +0 -0
- {zscaler_sdk_python-1.5.9 → zscaler_sdk_python-1.6.0}/zscaler/zcc/models/secrets_passwords.py +0 -0
- {zscaler_sdk_python-1.5.9 → zscaler_sdk_python-1.6.0}/zscaler/zcc/models/trustednetworks.py +0 -0
- {zscaler_sdk_python-1.5.9 → zscaler_sdk_python-1.6.0}/zscaler/zcc/models/webappservice.py +0 -0
- {zscaler_sdk_python-1.5.9 → zscaler_sdk_python-1.6.0}/zscaler/zcc/models/webpolicy.py +0 -0
- {zscaler_sdk_python-1.5.9 → zscaler_sdk_python-1.6.0}/zscaler/zcc/models/webprivacy.py +0 -0
- {zscaler_sdk_python-1.5.9 → zscaler_sdk_python-1.6.0}/zscaler/zcc/models/zdxgroupentitlements.py +0 -0
- {zscaler_sdk_python-1.5.9 → zscaler_sdk_python-1.6.0}/zscaler/zcc/models/zpagroupentitlements.py +0 -0
- {zscaler_sdk_python-1.5.9 → zscaler_sdk_python-1.6.0}/zscaler/zcc/secrets.py +0 -0
- {zscaler_sdk_python-1.5.9 → zscaler_sdk_python-1.6.0}/zscaler/zcc/trusted_networks.py +0 -0
- {zscaler_sdk_python-1.5.9 → zscaler_sdk_python-1.6.0}/zscaler/zcc/web_app_service.py +0 -0
- {zscaler_sdk_python-1.5.9 → zscaler_sdk_python-1.6.0}/zscaler/zcc/web_policy.py +0 -0
- {zscaler_sdk_python-1.5.9 → zscaler_sdk_python-1.6.0}/zscaler/zcc/web_privacy.py +0 -0
- {zscaler_sdk_python-1.5.9 → zscaler_sdk_python-1.6.0}/zscaler/zcc/zcc_service.py +0 -0
- {zscaler_sdk_python-1.5.9 → zscaler_sdk_python-1.6.0}/zscaler/zdx/__init__.py +0 -0
- {zscaler_sdk_python-1.5.9 → zscaler_sdk_python-1.6.0}/zscaler/zdx/admin.py +0 -0
- {zscaler_sdk_python-1.5.9 → zscaler_sdk_python-1.6.0}/zscaler/zdx/alerts.py +0 -0
- {zscaler_sdk_python-1.5.9 → zscaler_sdk_python-1.6.0}/zscaler/zdx/apps.py +0 -0
- {zscaler_sdk_python-1.5.9 → zscaler_sdk_python-1.6.0}/zscaler/zdx/devices.py +0 -0
- {zscaler_sdk_python-1.5.9 → zscaler_sdk_python-1.6.0}/zscaler/zdx/inventory.py +0 -0
- {zscaler_sdk_python-1.5.9 → zscaler_sdk_python-1.6.0}/zscaler/zdx/legacy.py +0 -0
- {zscaler_sdk_python-1.5.9 → zscaler_sdk_python-1.6.0}/zscaler/zdx/models/activeapplications.py +0 -0
- {zscaler_sdk_python-1.5.9 → zscaler_sdk_python-1.6.0}/zscaler/zdx/models/administration.py +0 -0
- {zscaler_sdk_python-1.5.9 → zscaler_sdk_python-1.6.0}/zscaler/zdx/models/alerts.py +0 -0
- {zscaler_sdk_python-1.5.9 → zscaler_sdk_python-1.6.0}/zscaler/zdx/models/application_users.py +0 -0
- {zscaler_sdk_python-1.5.9 → zscaler_sdk_python-1.6.0}/zscaler/zdx/models/applications.py +0 -0
- {zscaler_sdk_python-1.5.9 → zscaler_sdk_python-1.6.0}/zscaler/zdx/models/call_quality_metrics.py +0 -0
- {zscaler_sdk_python-1.5.9 → zscaler_sdk_python-1.6.0}/zscaler/zdx/models/common.py +0 -0
- {zscaler_sdk_python-1.5.9 → zscaler_sdk_python-1.6.0}/zscaler/zdx/models/devices.py +0 -0
- {zscaler_sdk_python-1.5.9 → zscaler_sdk_python-1.6.0}/zscaler/zdx/models/software_inventory.py +0 -0
- {zscaler_sdk_python-1.5.9 → zscaler_sdk_python-1.6.0}/zscaler/zdx/models/troubleshooting.py +0 -0
- {zscaler_sdk_python-1.5.9 → zscaler_sdk_python-1.6.0}/zscaler/zdx/models/users.py +0 -0
- {zscaler_sdk_python-1.5.9 → zscaler_sdk_python-1.6.0}/zscaler/zdx/troubleshooting.py +0 -0
- {zscaler_sdk_python-1.5.9 → zscaler_sdk_python-1.6.0}/zscaler/zdx/users.py +0 -0
- {zscaler_sdk_python-1.5.9 → zscaler_sdk_python-1.6.0}/zscaler/zdx/zdx_service.py +0 -0
- {zscaler_sdk_python-1.5.9 → zscaler_sdk_python-1.6.0}/zscaler/zia/__init__.py +0 -0
- {zscaler_sdk_python-1.5.9 → zscaler_sdk_python-1.6.0}/zscaler/zia/activate.py +0 -0
- {zscaler_sdk_python-1.5.9 → zscaler_sdk_python-1.6.0}/zscaler/zia/admin_roles.py +0 -0
- {zscaler_sdk_python-1.5.9 → zscaler_sdk_python-1.6.0}/zscaler/zia/admin_users.py +0 -0
- {zscaler_sdk_python-1.5.9 → zscaler_sdk_python-1.6.0}/zscaler/zia/advanced_settings.py +0 -0
- {zscaler_sdk_python-1.5.9 → zscaler_sdk_python-1.6.0}/zscaler/zia/alert_subscriptions.py +0 -0
- {zscaler_sdk_python-1.5.9 → zscaler_sdk_python-1.6.0}/zscaler/zia/apptotal.py +0 -0
- {zscaler_sdk_python-1.5.9 → zscaler_sdk_python-1.6.0}/zscaler/zia/atp_policy.py +0 -0
- {zscaler_sdk_python-1.5.9 → zscaler_sdk_python-1.6.0}/zscaler/zia/audit_logs.py +0 -0
- {zscaler_sdk_python-1.5.9 → zscaler_sdk_python-1.6.0}/zscaler/zia/authentication_settings.py +0 -0
- {zscaler_sdk_python-1.5.9 → zscaler_sdk_python-1.6.0}/zscaler/zia/bandwidth_classes.py +0 -0
- {zscaler_sdk_python-1.5.9 → zscaler_sdk_python-1.6.0}/zscaler/zia/bandwidth_control_rules.py +0 -0
- {zscaler_sdk_python-1.5.9 → zscaler_sdk_python-1.6.0}/zscaler/zia/browser_control_settings.py +0 -0
- {zscaler_sdk_python-1.5.9 → zscaler_sdk_python-1.6.0}/zscaler/zia/casb_dlp_rules.py +0 -0
- {zscaler_sdk_python-1.5.9 → zscaler_sdk_python-1.6.0}/zscaler/zia/casb_malware_rules.py +0 -0
- {zscaler_sdk_python-1.5.9 → zscaler_sdk_python-1.6.0}/zscaler/zia/cloud_app_instances.py +0 -0
- {zscaler_sdk_python-1.5.9 → zscaler_sdk_python-1.6.0}/zscaler/zia/cloud_applications.py +0 -0
- {zscaler_sdk_python-1.5.9 → zscaler_sdk_python-1.6.0}/zscaler/zia/cloud_browser_isolation.py +0 -0
- {zscaler_sdk_python-1.5.9 → zscaler_sdk_python-1.6.0}/zscaler/zia/cloud_firewall.py +0 -0
- {zscaler_sdk_python-1.5.9 → zscaler_sdk_python-1.6.0}/zscaler/zia/cloud_firewall_dns.py +0 -0
- {zscaler_sdk_python-1.5.9 → zscaler_sdk_python-1.6.0}/zscaler/zia/cloud_firewall_ips.py +0 -0
- {zscaler_sdk_python-1.5.9 → zscaler_sdk_python-1.6.0}/zscaler/zia/cloud_firewall_rules.py +0 -0
- {zscaler_sdk_python-1.5.9 → zscaler_sdk_python-1.6.0}/zscaler/zia/cloud_nss.py +0 -0
- {zscaler_sdk_python-1.5.9 → zscaler_sdk_python-1.6.0}/zscaler/zia/cloudappcontrol.py +0 -0
- {zscaler_sdk_python-1.5.9 → zscaler_sdk_python-1.6.0}/zscaler/zia/dedicated_ip_gateways.py +0 -0
- {zscaler_sdk_python-1.5.9 → zscaler_sdk_python-1.6.0}/zscaler/zia/device_management.py +0 -0
- {zscaler_sdk_python-1.5.9 → zscaler_sdk_python-1.6.0}/zscaler/zia/dlp_dictionary.py +0 -0
- {zscaler_sdk_python-1.5.9 → zscaler_sdk_python-1.6.0}/zscaler/zia/dlp_engine.py +0 -0
- {zscaler_sdk_python-1.5.9 → zscaler_sdk_python-1.6.0}/zscaler/zia/dlp_resources.py +0 -0
- {zscaler_sdk_python-1.5.9 → zscaler_sdk_python-1.6.0}/zscaler/zia/dlp_templates.py +0 -0
- {zscaler_sdk_python-1.5.9 → zscaler_sdk_python-1.6.0}/zscaler/zia/dlp_web_rules.py +0 -0
- {zscaler_sdk_python-1.5.9 → zscaler_sdk_python-1.6.0}/zscaler/zia/dns_gatways.py +0 -0
- {zscaler_sdk_python-1.5.9 → zscaler_sdk_python-1.6.0}/zscaler/zia/end_user_notification.py +0 -0
- {zscaler_sdk_python-1.5.9 → zscaler_sdk_python-1.6.0}/zscaler/zia/file_type_control_rule.py +0 -0
- {zscaler_sdk_python-1.5.9 → zscaler_sdk_python-1.6.0}/zscaler/zia/forwarding_control.py +0 -0
- {zscaler_sdk_python-1.5.9 → zscaler_sdk_python-1.6.0}/zscaler/zia/ftp_control_policy.py +0 -0
- {zscaler_sdk_python-1.5.9 → zscaler_sdk_python-1.6.0}/zscaler/zia/gre_tunnel.py +0 -0
- {zscaler_sdk_python-1.5.9 → zscaler_sdk_python-1.6.0}/zscaler/zia/intermediate_certificates.py +0 -0
- {zscaler_sdk_python-1.5.9 → zscaler_sdk_python-1.6.0}/zscaler/zia/iot_report.py +0 -0
- {zscaler_sdk_python-1.5.9 → zscaler_sdk_python-1.6.0}/zscaler/zia/ipv6_config.py +0 -0
- {zscaler_sdk_python-1.5.9 → zscaler_sdk_python-1.6.0}/zscaler/zia/legacy.py +0 -0
- {zscaler_sdk_python-1.5.9 → zscaler_sdk_python-1.6.0}/zscaler/zia/locations.py +0 -0
- {zscaler_sdk_python-1.5.9 → zscaler_sdk_python-1.6.0}/zscaler/zia/malware_protection_policy.py +0 -0
- {zscaler_sdk_python-1.5.9 → zscaler_sdk_python-1.6.0}/zscaler/zia/mobile_threat_settings.py +0 -0
- {zscaler_sdk_python-1.5.9 → zscaler_sdk_python-1.6.0}/zscaler/zia/models/__init__.py +0 -0
- {zscaler_sdk_python-1.5.9 → zscaler_sdk_python-1.6.0}/zscaler/zia/models/activation.py +0 -0
- {zscaler_sdk_python-1.5.9 → zscaler_sdk_python-1.6.0}/zscaler/zia/models/admin_roles.py +0 -0
- {zscaler_sdk_python-1.5.9 → zscaler_sdk_python-1.6.0}/zscaler/zia/models/admin_users.py +0 -0
- {zscaler_sdk_python-1.5.9 → zscaler_sdk_python-1.6.0}/zscaler/zia/models/advanced_settings.py +0 -0
- {zscaler_sdk_python-1.5.9 → zscaler_sdk_python-1.6.0}/zscaler/zia/models/advanced_threat_settings.py +0 -0
- {zscaler_sdk_python-1.5.9 → zscaler_sdk_python-1.6.0}/zscaler/zia/models/alert_subscriptions.py +0 -0
- {zscaler_sdk_python-1.5.9 → zscaler_sdk_python-1.6.0}/zscaler/zia/models/apptotal.py +0 -0
- {zscaler_sdk_python-1.5.9 → zscaler_sdk_python-1.6.0}/zscaler/zia/models/authentication_settings.py +0 -0
- {zscaler_sdk_python-1.5.9 → zscaler_sdk_python-1.6.0}/zscaler/zia/models/bandwidth_classes.py +0 -0
- {zscaler_sdk_python-1.5.9 → zscaler_sdk_python-1.6.0}/zscaler/zia/models/bandwidth_control_rules.py +0 -0
- {zscaler_sdk_python-1.5.9 → zscaler_sdk_python-1.6.0}/zscaler/zia/models/browser_control_settings.py +0 -0
- {zscaler_sdk_python-1.5.9 → zscaler_sdk_python-1.6.0}/zscaler/zia/models/casb_dlp_rules.py +0 -0
- {zscaler_sdk_python-1.5.9 → zscaler_sdk_python-1.6.0}/zscaler/zia/models/casb_malware_rules.py +0 -0
- {zscaler_sdk_python-1.5.9 → zscaler_sdk_python-1.6.0}/zscaler/zia/models/cloud_app_instances.py +0 -0
- {zscaler_sdk_python-1.5.9 → zscaler_sdk_python-1.6.0}/zscaler/zia/models/cloud_app_policy.py +0 -0
- {zscaler_sdk_python-1.5.9 → zscaler_sdk_python-1.6.0}/zscaler/zia/models/cloud_browser_isolation.py +0 -0
- {zscaler_sdk_python-1.5.9 → zscaler_sdk_python-1.6.0}/zscaler/zia/models/cloud_firewall_app_services.py +0 -0
- {zscaler_sdk_python-1.5.9 → zscaler_sdk_python-1.6.0}/zscaler/zia/models/cloud_firewall_destination_groups.py +0 -0
- {zscaler_sdk_python-1.5.9 → zscaler_sdk_python-1.6.0}/zscaler/zia/models/cloud_firewall_dns_rules.py +0 -0
- {zscaler_sdk_python-1.5.9 → zscaler_sdk_python-1.6.0}/zscaler/zia/models/cloud_firewall_ips_rules.py +0 -0
- {zscaler_sdk_python-1.5.9 → zscaler_sdk_python-1.6.0}/zscaler/zia/models/cloud_firewall_nw_application_groups.py +0 -0
- {zscaler_sdk_python-1.5.9 → zscaler_sdk_python-1.6.0}/zscaler/zia/models/cloud_firewall_nw_applications.py +0 -0
- {zscaler_sdk_python-1.5.9 → zscaler_sdk_python-1.6.0}/zscaler/zia/models/cloud_firewall_nw_service.py +0 -0
- {zscaler_sdk_python-1.5.9 → zscaler_sdk_python-1.6.0}/zscaler/zia/models/cloud_firewall_nw_service_groups.py +0 -0
- {zscaler_sdk_python-1.5.9 → zscaler_sdk_python-1.6.0}/zscaler/zia/models/cloud_firewall_rules.py +0 -0
- {zscaler_sdk_python-1.5.9 → zscaler_sdk_python-1.6.0}/zscaler/zia/models/cloud_firewall_source_groups.py +0 -0
- {zscaler_sdk_python-1.5.9 → zscaler_sdk_python-1.6.0}/zscaler/zia/models/cloud_firewall_time_windows.py +0 -0
- {zscaler_sdk_python-1.5.9 → zscaler_sdk_python-1.6.0}/zscaler/zia/models/cloud_nss.py +0 -0
- {zscaler_sdk_python-1.5.9 → zscaler_sdk_python-1.6.0}/zscaler/zia/models/cloudappcontrol.py +0 -0
- {zscaler_sdk_python-1.5.9 → zscaler_sdk_python-1.6.0}/zscaler/zia/models/common.py +0 -0
- {zscaler_sdk_python-1.5.9 → zscaler_sdk_python-1.6.0}/zscaler/zia/models/dedicated_ip_gateways.py +0 -0
- {zscaler_sdk_python-1.5.9 → zscaler_sdk_python-1.6.0}/zscaler/zia/models/device_groups.py +0 -0
- {zscaler_sdk_python-1.5.9 → zscaler_sdk_python-1.6.0}/zscaler/zia/models/devices.py +0 -0
- {zscaler_sdk_python-1.5.9 → zscaler_sdk_python-1.6.0}/zscaler/zia/models/dlp_dictionary.py +0 -0
- {zscaler_sdk_python-1.5.9 → zscaler_sdk_python-1.6.0}/zscaler/zia/models/dlp_engine.py +0 -0
- {zscaler_sdk_python-1.5.9 → zscaler_sdk_python-1.6.0}/zscaler/zia/models/dlp_resources.py +0 -0
- {zscaler_sdk_python-1.5.9 → zscaler_sdk_python-1.6.0}/zscaler/zia/models/dlp_templates.py +0 -0
- {zscaler_sdk_python-1.5.9 → zscaler_sdk_python-1.6.0}/zscaler/zia/models/dlp_web_rules.py +0 -0
- {zscaler_sdk_python-1.5.9 → zscaler_sdk_python-1.6.0}/zscaler/zia/models/dns_gateways.py +0 -0
- {zscaler_sdk_python-1.5.9 → zscaler_sdk_python-1.6.0}/zscaler/zia/models/endusernotification.py +0 -0
- {zscaler_sdk_python-1.5.9 → zscaler_sdk_python-1.6.0}/zscaler/zia/models/filetyperules.py +0 -0
- {zscaler_sdk_python-1.5.9 → zscaler_sdk_python-1.6.0}/zscaler/zia/models/forwarding_control_policy.py +0 -0
- {zscaler_sdk_python-1.5.9 → zscaler_sdk_python-1.6.0}/zscaler/zia/models/ftp_control_policy.py +0 -0
- {zscaler_sdk_python-1.5.9 → zscaler_sdk_python-1.6.0}/zscaler/zia/models/gre_recommended_list.py +0 -0
- {zscaler_sdk_python-1.5.9 → zscaler_sdk_python-1.6.0}/zscaler/zia/models/gre_tunnel_info.py +0 -0
- {zscaler_sdk_python-1.5.9 → zscaler_sdk_python-1.6.0}/zscaler/zia/models/gre_tunnels.py +0 -0
- {zscaler_sdk_python-1.5.9 → zscaler_sdk_python-1.6.0}/zscaler/zia/models/gre_vips.py +0 -0
- {zscaler_sdk_python-1.5.9 → zscaler_sdk_python-1.6.0}/zscaler/zia/models/intermediate_certificates.py +0 -0
- {zscaler_sdk_python-1.5.9 → zscaler_sdk_python-1.6.0}/zscaler/zia/models/iotreport.py +0 -0
- {zscaler_sdk_python-1.5.9 → zscaler_sdk_python-1.6.0}/zscaler/zia/models/ipv6_config.py +0 -0
- {zscaler_sdk_python-1.5.9 → zscaler_sdk_python-1.6.0}/zscaler/zia/models/location_group.py +0 -0
- {zscaler_sdk_python-1.5.9 → zscaler_sdk_python-1.6.0}/zscaler/zia/models/location_management.py +0 -0
- {zscaler_sdk_python-1.5.9 → zscaler_sdk_python-1.6.0}/zscaler/zia/models/malware_protection_settings.py +0 -0
- {zscaler_sdk_python-1.5.9 → zscaler_sdk_python-1.6.0}/zscaler/zia/models/mobile_threat_settings.py +0 -0
- {zscaler_sdk_python-1.5.9 → zscaler_sdk_python-1.6.0}/zscaler/zia/models/nat_control_policy.py +0 -0
- {zscaler_sdk_python-1.5.9 → zscaler_sdk_python-1.6.0}/zscaler/zia/models/nss_servers.py +0 -0
- {zscaler_sdk_python-1.5.9 → zscaler_sdk_python-1.6.0}/zscaler/zia/models/organization_information.py +0 -0
- {zscaler_sdk_python-1.5.9 → zscaler_sdk_python-1.6.0}/zscaler/zia/models/pac_files.py +0 -0
- {zscaler_sdk_python-1.5.9 → zscaler_sdk_python-1.6.0}/zscaler/zia/models/proxies.py +0 -0
- {zscaler_sdk_python-1.5.9 → zscaler_sdk_python-1.6.0}/zscaler/zia/models/proxy_gateways.py +0 -0
- {zscaler_sdk_python-1.5.9 → zscaler_sdk_python-1.6.0}/zscaler/zia/models/remoteassistance.py +0 -0
- {zscaler_sdk_python-1.5.9 → zscaler_sdk_python-1.6.0}/zscaler/zia/models/risk_profiles.py +0 -0
- {zscaler_sdk_python-1.5.9 → zscaler_sdk_python-1.6.0}/zscaler/zia/models/rule_labels.py +0 -0
- {zscaler_sdk_python-1.5.9 → zscaler_sdk_python-1.6.0}/zscaler/zia/models/saas_security_api.py +0 -0
- {zscaler_sdk_python-1.5.9 → zscaler_sdk_python-1.6.0}/zscaler/zia/models/sandboxrules.py +0 -0
- {zscaler_sdk_python-1.5.9 → zscaler_sdk_python-1.6.0}/zscaler/zia/models/security_policy_settings.py +0 -0
- {zscaler_sdk_python-1.5.9 → zscaler_sdk_python-1.6.0}/zscaler/zia/models/shadow_it_report.py +0 -0
- {zscaler_sdk_python-1.5.9 → zscaler_sdk_python-1.6.0}/zscaler/zia/models/ssl_inspection_rules.py +0 -0
- {zscaler_sdk_python-1.5.9 → zscaler_sdk_python-1.6.0}/zscaler/zia/models/subclouds.py +0 -0
- {zscaler_sdk_python-1.5.9 → zscaler_sdk_python-1.6.0}/zscaler/zia/models/system_audit.py +0 -0
- {zscaler_sdk_python-1.5.9 → zscaler_sdk_python-1.6.0}/zscaler/zia/models/tenancy_restriction_profile.py +0 -0
- {zscaler_sdk_python-1.5.9 → zscaler_sdk_python-1.6.0}/zscaler/zia/models/time_intervals.py +0 -0
- {zscaler_sdk_python-1.5.9 → zscaler_sdk_python-1.6.0}/zscaler/zia/models/traffic_datacenters.py +0 -0
- {zscaler_sdk_python-1.5.9 → zscaler_sdk_python-1.6.0}/zscaler/zia/models/traffic_dc_exclusions.py +0 -0
- {zscaler_sdk_python-1.5.9 → zscaler_sdk_python-1.6.0}/zscaler/zia/models/traffic_extranet.py +0 -0
- {zscaler_sdk_python-1.5.9 → zscaler_sdk_python-1.6.0}/zscaler/zia/models/traffic_static_ip.py +0 -0
- {zscaler_sdk_python-1.5.9 → zscaler_sdk_python-1.6.0}/zscaler/zia/models/traffic_vpn_credentials.py +0 -0
- {zscaler_sdk_python-1.5.9 → zscaler_sdk_python-1.6.0}/zscaler/zia/models/url_filter_cloud_app_settings.py +0 -0
- {zscaler_sdk_python-1.5.9 → zscaler_sdk_python-1.6.0}/zscaler/zia/models/url_filtering_rules.py +0 -0
- {zscaler_sdk_python-1.5.9 → zscaler_sdk_python-1.6.0}/zscaler/zia/models/urlcategory.py +0 -0
- {zscaler_sdk_python-1.5.9 → zscaler_sdk_python-1.6.0}/zscaler/zia/models/user_management.py +0 -0
- {zscaler_sdk_python-1.5.9 → zscaler_sdk_python-1.6.0}/zscaler/zia/models/vzen_clusters.py +0 -0
- {zscaler_sdk_python-1.5.9 → zscaler_sdk_python-1.6.0}/zscaler/zia/models/workload_groups.py +0 -0
- {zscaler_sdk_python-1.5.9 → zscaler_sdk_python-1.6.0}/zscaler/zia/models/zpa_gateway.py +0 -0
- {zscaler_sdk_python-1.5.9 → zscaler_sdk_python-1.6.0}/zscaler/zia/nat_control_policy.py +0 -0
- {zscaler_sdk_python-1.5.9 → zscaler_sdk_python-1.6.0}/zscaler/zia/nss_servers.py +0 -0
- {zscaler_sdk_python-1.5.9 → zscaler_sdk_python-1.6.0}/zscaler/zia/organization_information.py +0 -0
- {zscaler_sdk_python-1.5.9 → zscaler_sdk_python-1.6.0}/zscaler/zia/pac_files.py +0 -0
- {zscaler_sdk_python-1.5.9 → zscaler_sdk_python-1.6.0}/zscaler/zia/policy_export.py +0 -0
- {zscaler_sdk_python-1.5.9 → zscaler_sdk_python-1.6.0}/zscaler/zia/proxies.py +0 -0
- {zscaler_sdk_python-1.5.9 → zscaler_sdk_python-1.6.0}/zscaler/zia/remote_assistance.py +0 -0
- {zscaler_sdk_python-1.5.9 → zscaler_sdk_python-1.6.0}/zscaler/zia/risk_profiles.py +0 -0
- {zscaler_sdk_python-1.5.9 → zscaler_sdk_python-1.6.0}/zscaler/zia/rule_labels.py +0 -0
- {zscaler_sdk_python-1.5.9 → zscaler_sdk_python-1.6.0}/zscaler/zia/saas_security_api.py +0 -0
- {zscaler_sdk_python-1.5.9 → zscaler_sdk_python-1.6.0}/zscaler/zia/sandbox.py +0 -0
- {zscaler_sdk_python-1.5.9 → zscaler_sdk_python-1.6.0}/zscaler/zia/sandbox_rules.py +0 -0
- {zscaler_sdk_python-1.5.9 → zscaler_sdk_python-1.6.0}/zscaler/zia/security_policy_settings.py +0 -0
- {zscaler_sdk_python-1.5.9 → zscaler_sdk_python-1.6.0}/zscaler/zia/shadow_it_report.py +0 -0
- {zscaler_sdk_python-1.5.9 → zscaler_sdk_python-1.6.0}/zscaler/zia/ssl_inspection_rules.py +0 -0
- {zscaler_sdk_python-1.5.9 → zscaler_sdk_python-1.6.0}/zscaler/zia/sub_clouds.py +0 -0
- {zscaler_sdk_python-1.5.9 → zscaler_sdk_python-1.6.0}/zscaler/zia/system_audit.py +0 -0
- {zscaler_sdk_python-1.5.9 → zscaler_sdk_python-1.6.0}/zscaler/zia/tenancy_restriction_profile.py +0 -0
- {zscaler_sdk_python-1.5.9 → zscaler_sdk_python-1.6.0}/zscaler/zia/time_intervals.py +0 -0
- {zscaler_sdk_python-1.5.9 → zscaler_sdk_python-1.6.0}/zscaler/zia/traffic_datacenters.py +0 -0
- {zscaler_sdk_python-1.5.9 → zscaler_sdk_python-1.6.0}/zscaler/zia/traffic_extranet.py +0 -0
- {zscaler_sdk_python-1.5.9 → zscaler_sdk_python-1.6.0}/zscaler/zia/traffic_static_ip.py +0 -0
- {zscaler_sdk_python-1.5.9 → zscaler_sdk_python-1.6.0}/zscaler/zia/traffic_vpn_credentials.py +0 -0
- {zscaler_sdk_python-1.5.9 → zscaler_sdk_python-1.6.0}/zscaler/zia/url_categories.py +0 -0
- {zscaler_sdk_python-1.5.9 → zscaler_sdk_python-1.6.0}/zscaler/zia/url_filtering.py +0 -0
- {zscaler_sdk_python-1.5.9 → zscaler_sdk_python-1.6.0}/zscaler/zia/user_management.py +0 -0
- {zscaler_sdk_python-1.5.9 → zscaler_sdk_python-1.6.0}/zscaler/zia/vzen_clusters.py +0 -0
- {zscaler_sdk_python-1.5.9 → zscaler_sdk_python-1.6.0}/zscaler/zia/workload_groups.py +0 -0
- {zscaler_sdk_python-1.5.9 → zscaler_sdk_python-1.6.0}/zscaler/zia/zia_service.py +0 -0
- {zscaler_sdk_python-1.5.9 → zscaler_sdk_python-1.6.0}/zscaler/zia/zpa_gateway.py +0 -0
- {zscaler_sdk_python-1.5.9 → zscaler_sdk_python-1.6.0}/zscaler/zpa/__init__.py +0 -0
- {zscaler_sdk_python-1.5.9 → zscaler_sdk_python-1.6.0}/zscaler/zpa/administrator_controller.py +0 -0
- {zscaler_sdk_python-1.5.9 → zscaler_sdk_python-1.6.0}/zscaler/zpa/app_connector_schedule.py +0 -0
- {zscaler_sdk_python-1.5.9 → zscaler_sdk_python-1.6.0}/zscaler/zpa/app_connectors.py +0 -0
- {zscaler_sdk_python-1.5.9 → zscaler_sdk_python-1.6.0}/zscaler/zpa/app_protection.py +0 -0
- {zscaler_sdk_python-1.5.9 → zscaler_sdk_python-1.6.0}/zscaler/zpa/app_segment_by_type.py +0 -0
- {zscaler_sdk_python-1.5.9 → zscaler_sdk_python-1.6.0}/zscaler/zpa/app_segments_ba.py +0 -0
- {zscaler_sdk_python-1.5.9 → zscaler_sdk_python-1.6.0}/zscaler/zpa/app_segments_ba_v2.py +0 -0
- {zscaler_sdk_python-1.5.9 → zscaler_sdk_python-1.6.0}/zscaler/zpa/app_segments_inspection.py +0 -0
- {zscaler_sdk_python-1.5.9 → zscaler_sdk_python-1.6.0}/zscaler/zpa/app_segments_pra.py +0 -0
- {zscaler_sdk_python-1.5.9 → zscaler_sdk_python-1.6.0}/zscaler/zpa/application_segment.py +0 -0
- {zscaler_sdk_python-1.5.9 → zscaler_sdk_python-1.6.0}/zscaler/zpa/cbi_banner.py +0 -0
- {zscaler_sdk_python-1.5.9 → zscaler_sdk_python-1.6.0}/zscaler/zpa/cbi_certificate.py +0 -0
- {zscaler_sdk_python-1.5.9 → zscaler_sdk_python-1.6.0}/zscaler/zpa/cbi_profile.py +0 -0
- {zscaler_sdk_python-1.5.9 → zscaler_sdk_python-1.6.0}/zscaler/zpa/cbi_region.py +0 -0
- {zscaler_sdk_python-1.5.9 → zscaler_sdk_python-1.6.0}/zscaler/zpa/cbi_zpa_profile.py +0 -0
- {zscaler_sdk_python-1.5.9 → zscaler_sdk_python-1.6.0}/zscaler/zpa/certificates.py +0 -0
- {zscaler_sdk_python-1.5.9 → zscaler_sdk_python-1.6.0}/zscaler/zpa/client_settings.py +0 -0
- {zscaler_sdk_python-1.5.9 → zscaler_sdk_python-1.6.0}/zscaler/zpa/cloud_connector_groups.py +0 -0
- {zscaler_sdk_python-1.5.9 → zscaler_sdk_python-1.6.0}/zscaler/zpa/customer_controller.py +0 -0
- {zscaler_sdk_python-1.5.9 → zscaler_sdk_python-1.6.0}/zscaler/zpa/customer_version_profile.py +0 -0
- {zscaler_sdk_python-1.5.9 → zscaler_sdk_python-1.6.0}/zscaler/zpa/emergency_access.py +0 -0
- {zscaler_sdk_python-1.5.9 → zscaler_sdk_python-1.6.0}/zscaler/zpa/enrollment_certificates.py +0 -0
- {zscaler_sdk_python-1.5.9 → zscaler_sdk_python-1.6.0}/zscaler/zpa/idp.py +0 -0
- {zscaler_sdk_python-1.5.9 → zscaler_sdk_python-1.6.0}/zscaler/zpa/lss.py +0 -0
- {zscaler_sdk_python-1.5.9 → zscaler_sdk_python-1.6.0}/zscaler/zpa/machine_groups.py +0 -0
- {zscaler_sdk_python-1.5.9 → zscaler_sdk_python-1.6.0}/zscaler/zpa/models/administrator_controller.py +0 -0
- {zscaler_sdk_python-1.5.9 → zscaler_sdk_python-1.6.0}/zscaler/zpa/models/app_connector_schedule.py +0 -0
- {zscaler_sdk_python-1.5.9 → zscaler_sdk_python-1.6.0}/zscaler/zpa/models/app_connectors.py +0 -0
- {zscaler_sdk_python-1.5.9 → zscaler_sdk_python-1.6.0}/zscaler/zpa/models/app_protection_predefined_controls.py +0 -0
- {zscaler_sdk_python-1.5.9 → zscaler_sdk_python-1.6.0}/zscaler/zpa/models/app_protection_profile.py +0 -0
- {zscaler_sdk_python-1.5.9 → zscaler_sdk_python-1.6.0}/zscaler/zpa/models/application_segment.py +0 -0
- {zscaler_sdk_python-1.5.9 → zscaler_sdk_python-1.6.0}/zscaler/zpa/models/application_segment_lb.py +0 -0
- {zscaler_sdk_python-1.5.9 → zscaler_sdk_python-1.6.0}/zscaler/zpa/models/application_servers.py +0 -0
- {zscaler_sdk_python-1.5.9 → zscaler_sdk_python-1.6.0}/zscaler/zpa/models/cbi_banner.py +0 -0
- {zscaler_sdk_python-1.5.9 → zscaler_sdk_python-1.6.0}/zscaler/zpa/models/cbi_certificate.py +0 -0
- {zscaler_sdk_python-1.5.9 → zscaler_sdk_python-1.6.0}/zscaler/zpa/models/cbi_profile.py +0 -0
- {zscaler_sdk_python-1.5.9 → zscaler_sdk_python-1.6.0}/zscaler/zpa/models/cbi_region.py +0 -0
- {zscaler_sdk_python-1.5.9 → zscaler_sdk_python-1.6.0}/zscaler/zpa/models/cbi_zpa_profile.py +0 -0
- {zscaler_sdk_python-1.5.9 → zscaler_sdk_python-1.6.0}/zscaler/zpa/models/certificates.py +0 -0
- {zscaler_sdk_python-1.5.9 → zscaler_sdk_python-1.6.0}/zscaler/zpa/models/client_settings.py +0 -0
- {zscaler_sdk_python-1.5.9 → zscaler_sdk_python-1.6.0}/zscaler/zpa/models/cloud_connector_groups.py +0 -0
- {zscaler_sdk_python-1.5.9 → zscaler_sdk_python-1.6.0}/zscaler/zpa/models/customer_controller.py +0 -0
- {zscaler_sdk_python-1.5.9 → zscaler_sdk_python-1.6.0}/zscaler/zpa/models/customer_version_profile.py +0 -0
- {zscaler_sdk_python-1.5.9 → zscaler_sdk_python-1.6.0}/zscaler/zpa/models/emergency_access.py +0 -0
- {zscaler_sdk_python-1.5.9 → zscaler_sdk_python-1.6.0}/zscaler/zpa/models/enrollment_certificates.py +0 -0
- {zscaler_sdk_python-1.5.9 → zscaler_sdk_python-1.6.0}/zscaler/zpa/models/idp.py +0 -0
- {zscaler_sdk_python-1.5.9 → zscaler_sdk_python-1.6.0}/zscaler/zpa/models/lss.py +0 -0
- {zscaler_sdk_python-1.5.9 → zscaler_sdk_python-1.6.0}/zscaler/zpa/models/machine_groups.py +0 -0
- {zscaler_sdk_python-1.5.9 → zscaler_sdk_python-1.6.0}/zscaler/zpa/models/policyset_controller_v1.py +0 -0
- {zscaler_sdk_python-1.5.9 → zscaler_sdk_python-1.6.0}/zscaler/zpa/models/policyset_controller_v2.py +0 -0
- {zscaler_sdk_python-1.5.9 → zscaler_sdk_python-1.6.0}/zscaler/zpa/models/posture_profiles.py +0 -0
- {zscaler_sdk_python-1.5.9 → zscaler_sdk_python-1.6.0}/zscaler/zpa/models/pra_approval.py +0 -0
- {zscaler_sdk_python-1.5.9 → zscaler_sdk_python-1.6.0}/zscaler/zpa/models/pra_console.py +0 -0
- {zscaler_sdk_python-1.5.9 → zscaler_sdk_python-1.6.0}/zscaler/zpa/models/pra_cred_pool_controller.py +0 -0
- {zscaler_sdk_python-1.5.9 → zscaler_sdk_python-1.6.0}/zscaler/zpa/models/pra_credential.py +0 -0
- {zscaler_sdk_python-1.5.9 → zscaler_sdk_python-1.6.0}/zscaler/zpa/models/pra_portal.py +0 -0
- {zscaler_sdk_python-1.5.9 → zscaler_sdk_python-1.6.0}/zscaler/zpa/models/provisioning_keys.py +0 -0
- {zscaler_sdk_python-1.5.9 → zscaler_sdk_python-1.6.0}/zscaler/zpa/models/role_controller.py +0 -0
- {zscaler_sdk_python-1.5.9 → zscaler_sdk_python-1.6.0}/zscaler/zpa/models/saml_attributes.py +0 -0
- {zscaler_sdk_python-1.5.9 → zscaler_sdk_python-1.6.0}/zscaler/zpa/models/scim_attributes.py +0 -0
- {zscaler_sdk_python-1.5.9 → zscaler_sdk_python-1.6.0}/zscaler/zpa/models/scim_groups.py +0 -0
- {zscaler_sdk_python-1.5.9 → zscaler_sdk_python-1.6.0}/zscaler/zpa/models/segment_group.py +0 -0
- {zscaler_sdk_python-1.5.9 → zscaler_sdk_python-1.6.0}/zscaler/zpa/models/server_group.py +0 -0
- {zscaler_sdk_python-1.5.9 → zscaler_sdk_python-1.6.0}/zscaler/zpa/models/service_edge_groups.py +0 -0
- {zscaler_sdk_python-1.5.9 → zscaler_sdk_python-1.6.0}/zscaler/zpa/models/service_edge_schedule.py +0 -0
- {zscaler_sdk_python-1.5.9 → zscaler_sdk_python-1.6.0}/zscaler/zpa/models/service_edges.py +0 -0
- {zscaler_sdk_python-1.5.9 → zscaler_sdk_python-1.6.0}/zscaler/zpa/models/trusted_network.py +0 -0
- {zscaler_sdk_python-1.5.9 → zscaler_sdk_python-1.6.0}/zscaler/zpa/policies.py +0 -0
- {zscaler_sdk_python-1.5.9 → zscaler_sdk_python-1.6.0}/zscaler/zpa/posture_profiles.py +0 -0
- {zscaler_sdk_python-1.5.9 → zscaler_sdk_python-1.6.0}/zscaler/zpa/pra_approval.py +0 -0
- {zscaler_sdk_python-1.5.9 → zscaler_sdk_python-1.6.0}/zscaler/zpa/pra_credential.py +0 -0
- {zscaler_sdk_python-1.5.9 → zscaler_sdk_python-1.6.0}/zscaler/zpa/pra_credential_pool.py +0 -0
- {zscaler_sdk_python-1.5.9 → zscaler_sdk_python-1.6.0}/zscaler/zpa/pra_portal.py +0 -0
- {zscaler_sdk_python-1.5.9 → zscaler_sdk_python-1.6.0}/zscaler/zpa/provisioning.py +0 -0
- {zscaler_sdk_python-1.5.9 → zscaler_sdk_python-1.6.0}/zscaler/zpa/role_controller.py +0 -0
- {zscaler_sdk_python-1.5.9 → zscaler_sdk_python-1.6.0}/zscaler/zpa/saml_attributes.py +0 -0
- {zscaler_sdk_python-1.5.9 → zscaler_sdk_python-1.6.0}/zscaler/zpa/scim_attributes.py +0 -0
- {zscaler_sdk_python-1.5.9 → zscaler_sdk_python-1.6.0}/zscaler/zpa/scim_groups.py +0 -0
- {zscaler_sdk_python-1.5.9 → zscaler_sdk_python-1.6.0}/zscaler/zpa/segment_groups.py +0 -0
- {zscaler_sdk_python-1.5.9 → zscaler_sdk_python-1.6.0}/zscaler/zpa/server_groups.py +0 -0
- {zscaler_sdk_python-1.5.9 → zscaler_sdk_python-1.6.0}/zscaler/zpa/servers.py +0 -0
- {zscaler_sdk_python-1.5.9 → zscaler_sdk_python-1.6.0}/zscaler/zpa/service_edge_group.py +0 -0
- {zscaler_sdk_python-1.5.9 → zscaler_sdk_python-1.6.0}/zscaler/zpa/service_edge_schedule.py +0 -0
- {zscaler_sdk_python-1.5.9 → zscaler_sdk_python-1.6.0}/zscaler/zpa/service_edges.py +0 -0
- {zscaler_sdk_python-1.5.9 → zscaler_sdk_python-1.6.0}/zscaler/zpa/trusted_networks.py +0 -0
- {zscaler_sdk_python-1.5.9 → zscaler_sdk_python-1.6.0}/zscaler/ztw/__init__.py +0 -0
- {zscaler_sdk_python-1.5.9 → zscaler_sdk_python-1.6.0}/zscaler/ztw/account_details.py +0 -0
- {zscaler_sdk_python-1.5.9 → zscaler_sdk_python-1.6.0}/zscaler/ztw/activation.py +0 -0
- {zscaler_sdk_python-1.5.9 → zscaler_sdk_python-1.6.0}/zscaler/ztw/admin_roles.py +0 -0
- {zscaler_sdk_python-1.5.9 → zscaler_sdk_python-1.6.0}/zscaler/ztw/admin_users.py +0 -0
- {zscaler_sdk_python-1.5.9 → zscaler_sdk_python-1.6.0}/zscaler/ztw/api_keys.py +0 -0
- {zscaler_sdk_python-1.5.9 → zscaler_sdk_python-1.6.0}/zscaler/ztw/ec_groups.py +0 -0
- {zscaler_sdk_python-1.5.9 → zscaler_sdk_python-1.6.0}/zscaler/ztw/forwarding_gateways.py +0 -0
- {zscaler_sdk_python-1.5.9 → zscaler_sdk_python-1.6.0}/zscaler/ztw/forwarding_rules.py +0 -0
- {zscaler_sdk_python-1.5.9 → zscaler_sdk_python-1.6.0}/zscaler/ztw/ip_destination_groups.py +0 -0
- {zscaler_sdk_python-1.5.9 → zscaler_sdk_python-1.6.0}/zscaler/ztw/ip_groups.py +0 -0
- {zscaler_sdk_python-1.5.9 → zscaler_sdk_python-1.6.0}/zscaler/ztw/ip_source_groups.py +0 -0
- {zscaler_sdk_python-1.5.9 → zscaler_sdk_python-1.6.0}/zscaler/ztw/legacy.py +0 -0
- {zscaler_sdk_python-1.5.9 → zscaler_sdk_python-1.6.0}/zscaler/ztw/location_management.py +0 -0
- {zscaler_sdk_python-1.5.9 → zscaler_sdk_python-1.6.0}/zscaler/ztw/location_template.py +0 -0
- {zscaler_sdk_python-1.5.9 → zscaler_sdk_python-1.6.0}/zscaler/ztw/models/activation.py +0 -0
- {zscaler_sdk_python-1.5.9 → zscaler_sdk_python-1.6.0}/zscaler/ztw/models/admin_roles.py +0 -0
- {zscaler_sdk_python-1.5.9 → zscaler_sdk_python-1.6.0}/zscaler/ztw/models/admin_users.py +0 -0
- {zscaler_sdk_python-1.5.9 → zscaler_sdk_python-1.6.0}/zscaler/ztw/models/api_keys.py +0 -0
- {zscaler_sdk_python-1.5.9 → zscaler_sdk_python-1.6.0}/zscaler/ztw/models/common.py +0 -0
- {zscaler_sdk_python-1.5.9 → zscaler_sdk_python-1.6.0}/zscaler/ztw/models/ec_group_vm.py +0 -0
- {zscaler_sdk_python-1.5.9 → zscaler_sdk_python-1.6.0}/zscaler/ztw/models/ecgroup.py +0 -0
- {zscaler_sdk_python-1.5.9 → zscaler_sdk_python-1.6.0}/zscaler/ztw/models/forwarding_gateways.py +0 -0
- {zscaler_sdk_python-1.5.9 → zscaler_sdk_python-1.6.0}/zscaler/ztw/models/forwarding_rules.py +0 -0
- {zscaler_sdk_python-1.5.9 → zscaler_sdk_python-1.6.0}/zscaler/ztw/models/ip_destination_groups.py +0 -0
- {zscaler_sdk_python-1.5.9 → zscaler_sdk_python-1.6.0}/zscaler/ztw/models/ip_groups.py +0 -0
- {zscaler_sdk_python-1.5.9 → zscaler_sdk_python-1.6.0}/zscaler/ztw/models/ip_source_groups.py +0 -0
- {zscaler_sdk_python-1.5.9 → zscaler_sdk_python-1.6.0}/zscaler/ztw/models/location_management.py +0 -0
- {zscaler_sdk_python-1.5.9 → zscaler_sdk_python-1.6.0}/zscaler/ztw/models/location_templates.py +0 -0
- {zscaler_sdk_python-1.5.9 → zscaler_sdk_python-1.6.0}/zscaler/ztw/models/nw_service.py +0 -0
- {zscaler_sdk_python-1.5.9 → zscaler_sdk_python-1.6.0}/zscaler/ztw/models/nw_service_groups.py +0 -0
- {zscaler_sdk_python-1.5.9 → zscaler_sdk_python-1.6.0}/zscaler/ztw/models/provisioning_url.py +0 -0
- {zscaler_sdk_python-1.5.9 → zscaler_sdk_python-1.6.0}/zscaler/ztw/models/traffic_vpn_credentials.py +0 -0
- {zscaler_sdk_python-1.5.9 → zscaler_sdk_python-1.6.0}/zscaler/ztw/models/zpa_resources.py +0 -0
- {zscaler_sdk_python-1.5.9 → zscaler_sdk_python-1.6.0}/zscaler/ztw/nw_service.py +0 -0
- {zscaler_sdk_python-1.5.9 → zscaler_sdk_python-1.6.0}/zscaler/ztw/nw_service_groups.py +0 -0
- {zscaler_sdk_python-1.5.9 → zscaler_sdk_python-1.6.0}/zscaler/ztw/provisioning_url.py +0 -0
- {zscaler_sdk_python-1.5.9 → zscaler_sdk_python-1.6.0}/zscaler/ztw/ztw_service.py +0 -0
- {zscaler_sdk_python-1.5.9 → zscaler_sdk_python-1.6.0}/zscaler/zwa/__init__.py +0 -0
- {zscaler_sdk_python-1.5.9 → zscaler_sdk_python-1.6.0}/zscaler/zwa/audit_logs.py +0 -0
- {zscaler_sdk_python-1.5.9 → zscaler_sdk_python-1.6.0}/zscaler/zwa/dlp_incidents.py +0 -0
- {zscaler_sdk_python-1.5.9 → zscaler_sdk_python-1.6.0}/zscaler/zwa/legacy.py +0 -0
- {zscaler_sdk_python-1.5.9 → zscaler_sdk_python-1.6.0}/zscaler/zwa/models/audit_logs.py +0 -0
- {zscaler_sdk_python-1.5.9 → zscaler_sdk_python-1.6.0}/zscaler/zwa/models/change_history.py +0 -0
- {zscaler_sdk_python-1.5.9 → zscaler_sdk_python-1.6.0}/zscaler/zwa/models/common.py +0 -0
- {zscaler_sdk_python-1.5.9 → zscaler_sdk_python-1.6.0}/zscaler/zwa/models/generated_tickets.py +0 -0
- {zscaler_sdk_python-1.5.9 → zscaler_sdk_python-1.6.0}/zscaler/zwa/models/incident_details.py +0 -0
- {zscaler_sdk_python-1.5.9 → zscaler_sdk_python-1.6.0}/zscaler/zwa/models/incident_evidence.py +0 -0
- {zscaler_sdk_python-1.5.9 → zscaler_sdk_python-1.6.0}/zscaler/zwa/models/incident_group_search.py +0 -0
- {zscaler_sdk_python-1.5.9 → zscaler_sdk_python-1.6.0}/zscaler/zwa/models/incident_search.py +0 -0
- {zscaler_sdk_python-1.5.9 → zscaler_sdk_python-1.6.0}/zscaler/zwa/models/incident_trigger.py +0 -0
- {zscaler_sdk_python-1.5.9 → zscaler_sdk_python-1.6.0}/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.
|
|
3
|
+
Version: 1.6.0
|
|
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
|
|
@@ -1077,7 +1077,7 @@ The ZCC Cloud is identified by several cloud name prefixes, which determines whi
|
|
|
1077
1077
|
|
|
1078
1078
|
### Environment variables
|
|
1079
1079
|
|
|
1080
|
-
You can provide credentials via the `ZCC_CLIENT_ID`, `
|
|
1080
|
+
You can provide credentials via the `ZCC_CLIENT_ID`, `ZCC_CLIENT_SECRET`, `ZCC_CLOUD` environment variables, representing your ZIA `api_key`, `secret_key`, and `cloud` respectively.
|
|
1081
1081
|
|
|
1082
1082
|
~> **NOTE** `ZCC_CLOUD` environment variable is required, and is used to identify the correct API gateway where the API requests should be forwarded to.
|
|
1083
1083
|
|
|
@@ -1038,7 +1038,7 @@ The ZCC Cloud is identified by several cloud name prefixes, which determines whi
|
|
|
1038
1038
|
|
|
1039
1039
|
### Environment variables
|
|
1040
1040
|
|
|
1041
|
-
You can provide credentials via the `ZCC_CLIENT_ID`, `
|
|
1041
|
+
You can provide credentials via the `ZCC_CLIENT_ID`, `ZCC_CLIENT_SECRET`, `ZCC_CLOUD` environment variables, representing your ZIA `api_key`, `secret_key`, and `cloud` respectively.
|
|
1042
1042
|
|
|
1043
1043
|
~> **NOTE** `ZCC_CLOUD` environment variable is required, and is used to identify the correct API gateway where the API requests should be forwarded to.
|
|
1044
1044
|
|
|
@@ -124,7 +124,8 @@ def to_snake_case(string):
|
|
|
124
124
|
"extranetDTO": "extranet_dto",
|
|
125
125
|
"locationGroupDTO": "location_group_dto",
|
|
126
126
|
"locationDTO": "location_dto",
|
|
127
|
-
"predefinedADPControls": "predefined_adp_controls"
|
|
127
|
+
"predefinedADPControls": "predefined_adp_controls",
|
|
128
|
+
"runtimeOS": "runtime_os"
|
|
128
129
|
}
|
|
129
130
|
|
|
130
131
|
if string in FIELD_EXCEPTIONS:
|
|
@@ -256,7 +257,8 @@ def to_lower_camel_case(string):
|
|
|
256
257
|
"extranet_dto": "extranetDTO",
|
|
257
258
|
"location_group_dto": "locationGroupDTO",
|
|
258
259
|
"location_dto": "locationDTO",
|
|
259
|
-
"predefined_adp_controls": "predefinedADPControls"
|
|
260
|
+
"predefined_adp_controls": "predefinedADPControls",
|
|
261
|
+
"runtime_os": "runtimeOS"
|
|
260
262
|
}
|
|
261
263
|
|
|
262
264
|
if string in FIELD_EXCEPTIONS:
|
|
@@ -104,11 +104,11 @@ class HTTPClient:
|
|
|
104
104
|
}
|
|
105
105
|
|
|
106
106
|
# Handle payload
|
|
107
|
-
if
|
|
107
|
+
if "json" in request:
|
|
108
108
|
params["json"] = request["json"]
|
|
109
|
-
elif
|
|
109
|
+
elif "data" in request:
|
|
110
110
|
params["data"] = request["data"]
|
|
111
|
-
elif
|
|
111
|
+
elif "form" in request:
|
|
112
112
|
params["data"] = request["form"]
|
|
113
113
|
if request["params"]:
|
|
114
114
|
params["params"] = request["params"]
|
|
@@ -188,7 +188,9 @@ class RequestExecutor:
|
|
|
188
188
|
logger.error(f"Service detection failed: {e}")
|
|
189
189
|
raise
|
|
190
190
|
|
|
191
|
-
|
|
191
|
+
# Preserve empty lists, only convert None to empty dict
|
|
192
|
+
if body is None:
|
|
193
|
+
body = {}
|
|
192
194
|
headers = headers or {}
|
|
193
195
|
params = params or {}
|
|
194
196
|
|
|
@@ -0,0 +1,130 @@
|
|
|
1
|
+
"""
|
|
2
|
+
Copyright (c) 2023, Zscaler Inc.
|
|
3
|
+
|
|
4
|
+
Permission to use, copy, modify, and/or distribute this software for any
|
|
5
|
+
purpose with or without fee is hereby granted, provided that the above
|
|
6
|
+
copyright notice and this permission notice appear in all copies.
|
|
7
|
+
|
|
8
|
+
THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
|
|
9
|
+
WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
|
|
10
|
+
MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
|
|
11
|
+
ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
|
|
12
|
+
WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
|
|
13
|
+
ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
|
|
14
|
+
OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
|
|
15
|
+
"""
|
|
16
|
+
|
|
17
|
+
from zscaler.api_client import APIClient
|
|
18
|
+
from zscaler.request_executor import RequestExecutor
|
|
19
|
+
from zscaler.utils import format_url
|
|
20
|
+
|
|
21
|
+
|
|
22
|
+
class AdminSSOControllerAPI(APIClient):
|
|
23
|
+
"""
|
|
24
|
+
A Client object for the admin sso configuration controller resource.
|
|
25
|
+
"""
|
|
26
|
+
|
|
27
|
+
def __init__(self, request_executor, config):
|
|
28
|
+
super().__init__()
|
|
29
|
+
self._request_executor: RequestExecutor = request_executor
|
|
30
|
+
customer_id = config["client"].get("customerId")
|
|
31
|
+
self._zpa_base_endpoint = f"/zpa/mgmtconfig/v1/admin/customers/{customer_id}/v2"
|
|
32
|
+
|
|
33
|
+
def get_sso_controller(self) -> tuple:
|
|
34
|
+
"""
|
|
35
|
+
Fetches Admin SSO Login Details
|
|
36
|
+
|
|
37
|
+
Args:
|
|
38
|
+
N/A:
|
|
39
|
+
|
|
40
|
+
Returns:
|
|
41
|
+
:obj:`Tuple[dict, Response, Exception]`:
|
|
42
|
+
A tuple containing:
|
|
43
|
+
- A dictionary with the SSO setting (e.g., `{"ssologinonly": True}`) if the request succeeds,
|
|
44
|
+
- The raw `Response` object,
|
|
45
|
+
- Or an `Exception` if an error occurred.
|
|
46
|
+
|
|
47
|
+
Examples:
|
|
48
|
+
>>> fetched, _, err = client.zpa.admin_sso_controller.get_sso_controller()
|
|
49
|
+
>>> if err:
|
|
50
|
+
... print(f"Error fetching updated SSO setting: {err}")
|
|
51
|
+
... return
|
|
52
|
+
... print(f"Current SSO login-only setting: {fetched['ssologinonly']}")
|
|
53
|
+
"""
|
|
54
|
+
http_method = "get".upper()
|
|
55
|
+
api_url = format_url(
|
|
56
|
+
f"""{
|
|
57
|
+
self._zpa_base_endpoint}
|
|
58
|
+
/ssoLoginOptions
|
|
59
|
+
"""
|
|
60
|
+
)
|
|
61
|
+
|
|
62
|
+
request, error = self._request_executor.create_request(http_method, api_url)
|
|
63
|
+
if error:
|
|
64
|
+
return (None, None, error)
|
|
65
|
+
|
|
66
|
+
response, error = self._request_executor.execute(request)
|
|
67
|
+
if error:
|
|
68
|
+
return (None, response, error)
|
|
69
|
+
|
|
70
|
+
try:
|
|
71
|
+
result = response.get_body()
|
|
72
|
+
except Exception as error:
|
|
73
|
+
return (None, response, error)
|
|
74
|
+
|
|
75
|
+
return (result, response, None)
|
|
76
|
+
|
|
77
|
+
def update_sso_controller(self, **kwargs) -> tuple:
|
|
78
|
+
"""
|
|
79
|
+
Update SSO Options
|
|
80
|
+
|
|
81
|
+
Args:
|
|
82
|
+
ssologinonly (bool): Enable SSO Login Option
|
|
83
|
+
|
|
84
|
+
Returns:
|
|
85
|
+
:obj:`Tuple[dict, Response, Exception]`:
|
|
86
|
+
A tuple containing:
|
|
87
|
+
- An empty dictionary `{}` on success (due to 204 No Content),
|
|
88
|
+
- The raw `Response` object,
|
|
89
|
+
- Or an `Exception` if an error occurred.
|
|
90
|
+
|
|
91
|
+
The dictionary is always empty since the API returns no response body.
|
|
92
|
+
|
|
93
|
+
Example:
|
|
94
|
+
|
|
95
|
+
Enable SSO Login Option
|
|
96
|
+
|
|
97
|
+
>>> _, _, err = client.zpa.admin_sso_controller.update_sso_controller(
|
|
98
|
+
... ssologinonly=True
|
|
99
|
+
... )
|
|
100
|
+
>>> if err:
|
|
101
|
+
... print(f"Error updating SSO login option: {err}")
|
|
102
|
+
... return
|
|
103
|
+
... print("SSO login-only setting updated successfully.")
|
|
104
|
+
"""
|
|
105
|
+
http_method = "post".upper()
|
|
106
|
+
api_url = format_url(
|
|
107
|
+
f"""
|
|
108
|
+
{self._zpa_base_endpoint}
|
|
109
|
+
/ssoLoginOptions
|
|
110
|
+
"""
|
|
111
|
+
)
|
|
112
|
+
|
|
113
|
+
body = kwargs
|
|
114
|
+
request, error = self._request_executor.create_request(http_method, api_url, body=body)
|
|
115
|
+
if error:
|
|
116
|
+
return (None, None, error)
|
|
117
|
+
|
|
118
|
+
response, error = self._request_executor.execute(request)
|
|
119
|
+
if error or response is None:
|
|
120
|
+
return (None, response, error)
|
|
121
|
+
|
|
122
|
+
if getattr(response, "status_code", None) == 204:
|
|
123
|
+
return ({}, response, None)
|
|
124
|
+
|
|
125
|
+
try:
|
|
126
|
+
result = response.get_body()
|
|
127
|
+
except Exception as error:
|
|
128
|
+
return (None, response, error)
|
|
129
|
+
|
|
130
|
+
return (result, response, None)
|
|
@@ -0,0 +1,307 @@
|
|
|
1
|
+
"""
|
|
2
|
+
Copyright (c) 2023, Zscaler Inc.
|
|
3
|
+
|
|
4
|
+
Permission to use, copy, modify, and/or distribute this software for any
|
|
5
|
+
purpose with or without fee is hereby granted, provided that the above
|
|
6
|
+
copyright notice and this permission notice appear in all copies.
|
|
7
|
+
|
|
8
|
+
THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
|
|
9
|
+
WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
|
|
10
|
+
MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
|
|
11
|
+
ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
|
|
12
|
+
WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
|
|
13
|
+
ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
|
|
14
|
+
OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
|
|
15
|
+
"""
|
|
16
|
+
|
|
17
|
+
from zscaler.api_client import APIClient
|
|
18
|
+
from zscaler.request_executor import RequestExecutor
|
|
19
|
+
from zscaler.zpa.models.api_keys import ApiKeys
|
|
20
|
+
from zscaler.utils import format_url
|
|
21
|
+
|
|
22
|
+
|
|
23
|
+
class ApiKeysAPI(APIClient):
|
|
24
|
+
"""
|
|
25
|
+
A Client object for the Api Keys resource.
|
|
26
|
+
"""
|
|
27
|
+
|
|
28
|
+
def __init__(self, request_executor, config):
|
|
29
|
+
super().__init__()
|
|
30
|
+
self._request_executor: RequestExecutor = request_executor
|
|
31
|
+
customer_id = config["client"].get("customerId")
|
|
32
|
+
self._zpa_base_endpoint = f"/zpa/mgmtconfig/v1/admin/customers/{customer_id}"
|
|
33
|
+
|
|
34
|
+
def list_api_keys(self, query_params=None) -> tuple:
|
|
35
|
+
"""
|
|
36
|
+
List all API keys details.
|
|
37
|
+
|
|
38
|
+
Args:
|
|
39
|
+
query_params {dict}: Map of query parameters for the request.
|
|
40
|
+
|
|
41
|
+
``[query_params.page]`` {str}: Specifies the page number.
|
|
42
|
+
|
|
43
|
+
``[query_params.page_size]`` {str}: Specifies the page size.
|
|
44
|
+
If not provided, the default page size is 20. The max page size is 500.
|
|
45
|
+
|
|
46
|
+
``[query_params.search]`` {str}: Search string for filtering results.
|
|
47
|
+
``[query_params.microtenant_id]`` {str}: The unique identifier of the microtenant of ZPA tenant.
|
|
48
|
+
|
|
49
|
+
Returns:
|
|
50
|
+
:obj:`Tuple`: A tuple containing (list of ApiKeys instances, Response, error)
|
|
51
|
+
|
|
52
|
+
Examples:
|
|
53
|
+
>>> key_list, _, err = client.zpa.api_keys.list_api_keys(
|
|
54
|
+
... query_params={'search': 'ZPA_Dev01', 'page': '1', 'page_size': '100'})
|
|
55
|
+
... if err:
|
|
56
|
+
... print(f"Error listing api key: {err}")
|
|
57
|
+
... return
|
|
58
|
+
... print(f"Total api key found: {len(key_list)}")
|
|
59
|
+
... for key in keys:
|
|
60
|
+
... print(key.as_dict())
|
|
61
|
+
"""
|
|
62
|
+
http_method = "get".upper()
|
|
63
|
+
api_url = format_url(
|
|
64
|
+
f"""
|
|
65
|
+
{self._zpa_base_endpoint}
|
|
66
|
+
/apiKeys
|
|
67
|
+
"""
|
|
68
|
+
)
|
|
69
|
+
|
|
70
|
+
query_params = query_params or {}
|
|
71
|
+
microtenant_id = query_params.get("microtenant_id", None)
|
|
72
|
+
if microtenant_id:
|
|
73
|
+
query_params["microtenantId"] = microtenant_id
|
|
74
|
+
|
|
75
|
+
request, error = self._request_executor.create_request(http_method, api_url, params=query_params)
|
|
76
|
+
if error:
|
|
77
|
+
return (None, None, error)
|
|
78
|
+
|
|
79
|
+
response, error = self._request_executor.execute(request, ApiKeys)
|
|
80
|
+
if error:
|
|
81
|
+
return (None, response, error)
|
|
82
|
+
|
|
83
|
+
try:
|
|
84
|
+
result = []
|
|
85
|
+
for item in response.get_results():
|
|
86
|
+
result.append(ApiKeys(self.form_response_body(item)))
|
|
87
|
+
except Exception as error:
|
|
88
|
+
return (None, response, error)
|
|
89
|
+
return (result, response, None)
|
|
90
|
+
|
|
91
|
+
def get_api_key(self, key_id: str, query_params=None) -> tuple:
|
|
92
|
+
"""
|
|
93
|
+
Fetches a specific api key by ID.
|
|
94
|
+
|
|
95
|
+
Args:
|
|
96
|
+
key_id (str): The unique identifier for the API Key.
|
|
97
|
+
query_params (dict, optional): Map of query parameters for the request.
|
|
98
|
+
``[query_params.microtenant_id]`` {str}: The microtenant ID, if applicable.
|
|
99
|
+
|
|
100
|
+
Returns:
|
|
101
|
+
:obj:`Tuple`: A tuple containing (ApiKeys instance, Response, error).
|
|
102
|
+
|
|
103
|
+
Examples:
|
|
104
|
+
>>> fetched_key, _, err = client.zpa.api_keys.get_api_key('999999')
|
|
105
|
+
... if err:
|
|
106
|
+
... print(f"Error fetching key by ID: {err}")
|
|
107
|
+
... return
|
|
108
|
+
... print(f"Fetched key by ID: {fetched_key.as_dict()}")
|
|
109
|
+
"""
|
|
110
|
+
http_method = "get".upper()
|
|
111
|
+
api_url = format_url(
|
|
112
|
+
f"""{
|
|
113
|
+
self._zpa_base_endpoint}
|
|
114
|
+
/apiKeys/{key_id}
|
|
115
|
+
"""
|
|
116
|
+
)
|
|
117
|
+
|
|
118
|
+
query_params = query_params or {}
|
|
119
|
+
microtenant_id = query_params.get("microtenant_id", None)
|
|
120
|
+
if microtenant_id:
|
|
121
|
+
query_params["microtenantId"] = microtenant_id
|
|
122
|
+
|
|
123
|
+
request, error = self._request_executor.create_request(http_method, api_url, params=query_params)
|
|
124
|
+
if error:
|
|
125
|
+
return (None, None, error)
|
|
126
|
+
|
|
127
|
+
response, error = self._request_executor.execute(request, ApiKeys)
|
|
128
|
+
if error:
|
|
129
|
+
return (None, response, error)
|
|
130
|
+
|
|
131
|
+
try:
|
|
132
|
+
result = ApiKeys(self.form_response_body(response.get_body()))
|
|
133
|
+
except Exception as error:
|
|
134
|
+
return (None, response, error)
|
|
135
|
+
return (result, response, None)
|
|
136
|
+
|
|
137
|
+
def add_api_key(self, **kwargs) -> tuple:
|
|
138
|
+
"""
|
|
139
|
+
Adds a new ZPA API Key.
|
|
140
|
+
|
|
141
|
+
Args:
|
|
142
|
+
name (str): The name of the API Key.
|
|
143
|
+
|
|
144
|
+
Keyword Args:
|
|
145
|
+
enabled (bool): Whether the API Key is enabled. Defaults to True.
|
|
146
|
+
token_expiry_time_in_sec (str): The API Key Client ID.
|
|
147
|
+
role_id (str): The unique identifier for the role associated with the API Key.
|
|
148
|
+
|
|
149
|
+
Returns:
|
|
150
|
+
:obj:`Tuple[dict, Response, Exception]`:
|
|
151
|
+
A tuple containing:
|
|
152
|
+
- An empty dictionary `{}` on success (due to 204 No Content),
|
|
153
|
+
- The raw `Response` object,
|
|
154
|
+
- Or an `Exception` if an error occurred.
|
|
155
|
+
- This returns the client_secret attribute
|
|
156
|
+
|
|
157
|
+
Examples:
|
|
158
|
+
>>> added_key, _, err = client.zpa.api_keys.add_api_key(
|
|
159
|
+
... name=f"NewAPIKey_{random.randint(1000, 10000)}",
|
|
160
|
+
... enabled=True,
|
|
161
|
+
... token_expiry_time_in_sec= '3600',
|
|
162
|
+
... role_id='28',
|
|
163
|
+
... )
|
|
164
|
+
... if err:
|
|
165
|
+
... print(f"Error creating api key: {err}")
|
|
166
|
+
... return
|
|
167
|
+
... print(f"API key created successfully: {added_key.as_dict()}")
|
|
168
|
+
... key_dict = added_key.as_dict()
|
|
169
|
+
... client_secret = key_dict.get('client_secret')
|
|
170
|
+
... print(f"Client Secret: {client_secret}")
|
|
171
|
+
"""
|
|
172
|
+
http_method = "post".upper()
|
|
173
|
+
api_url = format_url(
|
|
174
|
+
f"""{
|
|
175
|
+
self._zpa_base_endpoint}
|
|
176
|
+
/apiKeys
|
|
177
|
+
"""
|
|
178
|
+
)
|
|
179
|
+
|
|
180
|
+
body = kwargs
|
|
181
|
+
|
|
182
|
+
microtenant_id = body.get("microtenant_id", None)
|
|
183
|
+
params = {"microtenantId": microtenant_id} if microtenant_id else {}
|
|
184
|
+
|
|
185
|
+
request, error = self._request_executor.create_request(http_method, api_url, body=body, params=params)
|
|
186
|
+
if error:
|
|
187
|
+
return (None, None, error)
|
|
188
|
+
|
|
189
|
+
response, error = self._request_executor.execute(request, ApiKeys)
|
|
190
|
+
if error:
|
|
191
|
+
return (None, response, error)
|
|
192
|
+
|
|
193
|
+
try:
|
|
194
|
+
result = ApiKeys(self.form_response_body(response.get_body()))
|
|
195
|
+
except Exception as error:
|
|
196
|
+
return (None, response, error)
|
|
197
|
+
return (result, response, None)
|
|
198
|
+
|
|
199
|
+
def update_api_key(self, key_id: str, **kwargs) -> tuple:
|
|
200
|
+
"""
|
|
201
|
+
Update a new ZPA API Key.
|
|
202
|
+
|
|
203
|
+
Args:
|
|
204
|
+
key_id (str): The unique identifier for the API Key.
|
|
205
|
+
microtenant_id (str, optional): The optional ID of the microtenant if applicable.
|
|
206
|
+
|
|
207
|
+
Args:
|
|
208
|
+
name (str): The name of the API Key.
|
|
209
|
+
|
|
210
|
+
Keyword Args:
|
|
211
|
+
enabled (bool): Whether the API Key is enabled. Defaults to True.
|
|
212
|
+
token_expiry_time_in_sec (str): The API Key Client ID.
|
|
213
|
+
role_id (str): The unique identifier for the role associated with the API Key.
|
|
214
|
+
|
|
215
|
+
Returns:
|
|
216
|
+
:obj:`Tuple[dict, Response, Exception]`:
|
|
217
|
+
A tuple containing:
|
|
218
|
+
- An empty dictionary `{}` on success (due to 204 No Content),
|
|
219
|
+
- The raw `Response` object,
|
|
220
|
+
- Or an `Exception` if an error occurred.
|
|
221
|
+
- This method does not return the client_secret attribute
|
|
222
|
+
|
|
223
|
+
The dictionary is always empty since the API returns no response body.
|
|
224
|
+
|
|
225
|
+
Examples:
|
|
226
|
+
>>> added_key, _, err = client.zpa.api_keys.add_api_key(
|
|
227
|
+
... name=f"NewAPIKey_{random.randint(1000, 10000)}",
|
|
228
|
+
... enabled=True,
|
|
229
|
+
... token_expiry_time_in_sec= '3600',
|
|
230
|
+
... role_id='28',
|
|
231
|
+
... )
|
|
232
|
+
... if err:
|
|
233
|
+
... print(f"Error creating api key: {err}")
|
|
234
|
+
... return
|
|
235
|
+
... print(f"API key created successfully: {added_key.as_dict()}")
|
|
236
|
+
"""
|
|
237
|
+
http_method = "put".upper()
|
|
238
|
+
api_url = format_url(
|
|
239
|
+
f"""
|
|
240
|
+
{self._zpa_base_endpoint}
|
|
241
|
+
/apiKeys/{key_id}
|
|
242
|
+
"""
|
|
243
|
+
)
|
|
244
|
+
|
|
245
|
+
body = {}
|
|
246
|
+
|
|
247
|
+
body.update(kwargs)
|
|
248
|
+
|
|
249
|
+
microtenant_id = body.get("microtenant_id", None)
|
|
250
|
+
params = {"microtenantId": microtenant_id} if microtenant_id else {}
|
|
251
|
+
|
|
252
|
+
request, error = self._request_executor.create_request(http_method, api_url, body, {}, params)
|
|
253
|
+
if error:
|
|
254
|
+
return (None, None, error)
|
|
255
|
+
|
|
256
|
+
response, error = self._request_executor.execute(request, ApiKeys)
|
|
257
|
+
if error:
|
|
258
|
+
return (None, response, error)
|
|
259
|
+
|
|
260
|
+
if response is None:
|
|
261
|
+
return (ApiKeys({"id": key_id}), None, None)
|
|
262
|
+
|
|
263
|
+
try:
|
|
264
|
+
result = ApiKeys(self.form_response_body(response.get_body()))
|
|
265
|
+
except Exception as error:
|
|
266
|
+
return (None, response, error)
|
|
267
|
+
return (result, response, None)
|
|
268
|
+
|
|
269
|
+
def delete_api_key(self, key_id: str, microtenant_id: str = None) -> tuple:
|
|
270
|
+
"""
|
|
271
|
+
Deletes the specified API Key from ZPA.
|
|
272
|
+
|
|
273
|
+
Args:
|
|
274
|
+
key_id (str): The unique identifier for the API Key.
|
|
275
|
+
microtenant_id (str, optional): The optional ID of the microtenant if applicable.
|
|
276
|
+
|
|
277
|
+
Returns:
|
|
278
|
+
tuple: A tuple containing the response and error (if any).
|
|
279
|
+
|
|
280
|
+
Examples:
|
|
281
|
+
>>> _, _, err = client.zpa.api_keys.delete_key_id(
|
|
282
|
+
... key_id='999999'
|
|
283
|
+
... )
|
|
284
|
+
... if err:
|
|
285
|
+
... print(f"Error deleting api key: {err}")
|
|
286
|
+
... return
|
|
287
|
+
... print(f"API Key with ID {'999999'} deleted successfully.")
|
|
288
|
+
"""
|
|
289
|
+
http_method = "delete".upper()
|
|
290
|
+
api_url = format_url(
|
|
291
|
+
f"""
|
|
292
|
+
{self._zpa_base_endpoint}
|
|
293
|
+
/apiKeys/{key_id}
|
|
294
|
+
"""
|
|
295
|
+
)
|
|
296
|
+
|
|
297
|
+
params = {"microtenantId": microtenant_id} if microtenant_id else {}
|
|
298
|
+
|
|
299
|
+
request, error = self._request_executor.create_request(http_method, api_url, params=params)
|
|
300
|
+
if error:
|
|
301
|
+
return (None, None, error)
|
|
302
|
+
|
|
303
|
+
response, error = self._request_executor.execute(request)
|
|
304
|
+
if error:
|
|
305
|
+
return (None, response, error)
|
|
306
|
+
|
|
307
|
+
return (None, response, None)
|
|
@@ -300,11 +300,9 @@ class AppConnectorGroupAPI(APIClient):
|
|
|
300
300
|
|
|
301
301
|
body.update(kwargs)
|
|
302
302
|
|
|
303
|
-
# Use get instead of pop to keep microtenant_id in the body
|
|
304
303
|
microtenant_id = body.get("microtenant_id", None)
|
|
305
304
|
params = {"microtenantId": microtenant_id} if microtenant_id else {}
|
|
306
305
|
|
|
307
|
-
# Create the request
|
|
308
306
|
request, error = self._request_executor.create_request(http_method, api_url, body, {}, params)
|
|
309
307
|
if error:
|
|
310
308
|
return (None, None, error)
|