gcore 0.9.0__py3-none-any.whl → 0.11.0__py3-none-any.whl
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.
Potentially problematic release.
This version of gcore might be problematic. Click here for more details.
- gcore/_base_client.py +3 -3
- gcore/_client.py +18 -0
- gcore/_compat.py +48 -48
- gcore/_models.py +41 -41
- gcore/_types.py +35 -1
- gcore/_utils/__init__.py +9 -2
- gcore/_utils/_compat.py +45 -0
- gcore/_utils/_datetime_parse.py +136 -0
- gcore/_utils/_transform.py +11 -1
- gcore/_utils/_typing.py +6 -1
- gcore/_utils/_utils.py +0 -1
- gcore/_version.py +1 -1
- gcore/resources/__init__.py +28 -0
- gcore/resources/cloud/__init__.py +14 -0
- gcore/resources/cloud/audit_logs.py +3 -3
- gcore/resources/cloud/baremetal/images.py +3 -4
- gcore/resources/cloud/baremetal/servers.py +16 -4
- gcore/resources/cloud/cloud.py +32 -0
- gcore/resources/cloud/cost_reports.py +24 -16
- gcore/resources/cloud/file_shares/access_rules.py +2 -2
- gcore/resources/cloud/file_shares/file_shares.py +30 -14
- gcore/resources/cloud/floating_ips.py +196 -4
- gcore/resources/cloud/gpu_baremetal_clusters/flavors.py +1 -1
- gcore/resources/cloud/gpu_baremetal_clusters/gpu_baremetal_clusters.py +166 -190
- gcore/resources/cloud/gpu_baremetal_clusters/servers.py +268 -12
- gcore/resources/cloud/inference/__init__.py +14 -14
- gcore/resources/cloud/inference/applications/__init__.py +47 -0
- gcore/resources/cloud/inference/applications/applications.py +134 -0
- gcore/resources/cloud/inference/applications/deployments.py +649 -0
- gcore/resources/cloud/inference/applications/templates.py +238 -0
- gcore/resources/cloud/inference/deployments/deployments.py +41 -22
- gcore/resources/cloud/inference/inference.py +32 -32
- gcore/resources/cloud/inference/registry_credentials.py +8 -9
- gcore/resources/cloud/instances/images.py +4 -4
- gcore/resources/cloud/instances/instances.py +254 -4
- gcore/resources/cloud/instances/interfaces.py +544 -0
- gcore/resources/cloud/k8s/__init__.py +47 -0
- gcore/resources/cloud/k8s/clusters/__init__.py +47 -0
- gcore/resources/cloud/k8s/clusters/clusters.py +1391 -0
- gcore/resources/cloud/k8s/clusters/nodes.py +291 -0
- gcore/resources/cloud/k8s/clusters/pools/__init__.py +33 -0
- gcore/resources/cloud/k8s/clusters/pools/nodes.py +303 -0
- gcore/resources/cloud/k8s/clusters/pools/pools.py +870 -0
- gcore/resources/cloud/k8s/flavors.py +209 -0
- gcore/resources/cloud/k8s/k8s.py +233 -0
- gcore/resources/cloud/load_balancers/l7_policies/l7_policies.py +11 -12
- gcore/resources/cloud/load_balancers/l7_policies/rules.py +9 -10
- gcore/resources/cloud/load_balancers/listeners.py +18 -18
- gcore/resources/cloud/load_balancers/load_balancers.py +4 -4
- gcore/resources/cloud/load_balancers/pools/health_monitors.py +26 -10
- gcore/resources/cloud/load_balancers/pools/members.py +34 -4
- gcore/resources/cloud/load_balancers/pools/pools.py +32 -8
- gcore/resources/cloud/networks/networks.py +192 -4
- gcore/resources/cloud/networks/subnets.py +140 -8
- gcore/resources/cloud/reserved_fixed_ips/vip.py +5 -7
- gcore/resources/cloud/security_groups/security_groups.py +6 -6
- gcore/resources/cloud/tasks.py +46 -46
- gcore/resources/cloud/users/role_assignments.py +5 -4
- gcore/resources/cloud/volumes.py +4 -4
- gcore/resources/dns/__init__.py +75 -0
- gcore/resources/dns/dns.py +374 -0
- gcore/resources/dns/locations.py +288 -0
- gcore/resources/dns/metrics.py +214 -0
- gcore/resources/dns/pickers/__init__.py +33 -0
- gcore/resources/dns/pickers/pickers.py +167 -0
- gcore/resources/dns/pickers/presets.py +135 -0
- gcore/resources/dns/zones/__init__.py +47 -0
- gcore/resources/{cloud/inference/models.py → dns/zones/dnssec.py} +80 -122
- gcore/resources/dns/zones/rrsets.py +1005 -0
- gcore/resources/dns/zones/zones.py +1493 -0
- gcore/resources/security/bgp_announces.py +15 -15
- gcore/resources/storage/__init__.py +75 -0
- gcore/resources/storage/buckets/__init__.py +61 -0
- gcore/resources/storage/buckets/buckets.py +470 -0
- gcore/resources/storage/buckets/cors.py +265 -0
- gcore/resources/storage/buckets/lifecycle.py +276 -0
- gcore/resources/storage/buckets/policy.py +345 -0
- gcore/resources/storage/credentials.py +221 -0
- gcore/resources/storage/locations.py +190 -0
- gcore/resources/storage/statistics.py +364 -0
- gcore/resources/storage/storage.py +1042 -0
- gcore/resources/streaming/ai_tasks.py +56 -70
- gcore/resources/streaming/playlists.py +18 -18
- gcore/resources/streaming/quality_sets.py +8 -8
- gcore/resources/streaming/statistics.py +4 -122
- gcore/resources/streaming/streams/overlays.py +6 -6
- gcore/resources/streaming/streams/streams.py +40 -64
- gcore/resources/streaming/videos/subtitles.py +32 -30
- gcore/resources/streaming/videos/videos.py +78 -72
- gcore/resources/waap/__init__.py +14 -0
- gcore/resources/waap/custom_page_sets.py +40 -34
- gcore/resources/waap/domains/__init__.py +14 -28
- gcore/resources/waap/domains/advanced_rules.py +7 -10
- gcore/resources/waap/domains/{api_discovery/api_discovery.py → api_discovery.py} +292 -59
- gcore/resources/waap/domains/api_path_groups.py +5 -5
- gcore/resources/waap/domains/api_paths.py +28 -30
- gcore/resources/waap/domains/custom_rules.py +7 -10
- gcore/resources/waap/domains/domains.py +124 -68
- gcore/resources/waap/domains/firewall_rules.py +5 -7
- gcore/resources/waap/domains/insight_silences.py +34 -11
- gcore/resources/waap/domains/insights.py +43 -17
- gcore/resources/waap/domains/statistics.py +977 -0
- gcore/resources/waap/insights.py +233 -0
- gcore/resources/waap/ip_info/__init__.py +33 -0
- gcore/resources/waap/{ip_info.py → ip_info/ip_info.py} +149 -235
- gcore/resources/waap/ip_info/metrics.py +203 -0
- gcore/resources/waap/waap.py +40 -8
- gcore/types/cloud/__init__.py +2 -4
- gcore/types/cloud/audit_log_list_params.py +2 -1
- gcore/types/cloud/baremetal/image_list_params.py +3 -2
- gcore/types/cloud/baremetal/server_create_params.py +8 -6
- gcore/types/cloud/baremetal/server_list_params.py +3 -2
- gcore/types/cloud/baremetal/server_rebuild_params.py +2 -0
- gcore/types/cloud/cost_report_get_aggregated_monthly_params.py +35 -31
- gcore/types/cloud/cost_report_get_aggregated_params.py +26 -25
- gcore/types/cloud/cost_report_get_detailed_params.py +26 -25
- gcore/types/cloud/ddos_profile.py +13 -7
- gcore/types/cloud/ddos_profile_field.py +21 -8
- gcore/types/cloud/ddos_profile_option_list.py +7 -6
- gcore/types/cloud/ddos_profile_status.py +2 -2
- gcore/types/cloud/ddos_profile_template.py +7 -3
- gcore/types/cloud/ddos_profile_template_field.py +12 -3
- gcore/types/cloud/file_share.py +2 -2
- gcore/types/cloud/file_share_create_params.py +12 -6
- gcore/types/cloud/floating_ip_list_params.py +3 -2
- gcore/types/cloud/gpu_baremetal_cluster.py +101 -74
- gcore/types/cloud/gpu_baremetal_cluster_create_params.py +76 -93
- gcore/types/cloud/gpu_baremetal_cluster_delete_params.py +17 -10
- gcore/types/cloud/gpu_baremetal_cluster_list_params.py +14 -3
- gcore/types/cloud/gpu_baremetal_cluster_rebuild_params.py +4 -2
- gcore/types/cloud/gpu_baremetal_clusters/__init__.py +6 -0
- gcore/types/cloud/gpu_baremetal_clusters/gpu_baremetal_cluster_server.py +74 -0
- gcore/types/cloud/{gpu_baremetal_cluster_server.py → gpu_baremetal_clusters/gpu_baremetal_cluster_server_v1.py} +10 -10
- gcore/types/cloud/gpu_baremetal_clusters/gpu_baremetal_cluster_server_v1_list.py +16 -0
- gcore/types/cloud/{gpu_baremetal_flavor.py → gpu_baremetal_clusters/gpu_baremetal_flavor.py} +1 -1
- gcore/types/cloud/{gpu_baremetal_flavor_list.py → gpu_baremetal_clusters/gpu_baremetal_flavor_list.py} +1 -1
- gcore/types/cloud/gpu_baremetal_clusters/server_list_params.py +75 -0
- gcore/types/cloud/health_monitor.py +6 -0
- gcore/types/cloud/inference/__init__.py +0 -5
- gcore/types/cloud/inference/applications/__init__.py +12 -0
- gcore/types/cloud/inference/applications/deployment_create_params.py +68 -0
- gcore/types/cloud/inference/applications/deployment_patch_params.py +62 -0
- gcore/types/cloud/inference/applications/inference_application_deployment.py +111 -0
- gcore/types/cloud/inference/applications/inference_application_deployment_list.py +16 -0
- gcore/types/cloud/inference/applications/inference_application_template.py +94 -0
- gcore/types/cloud/inference/applications/inference_application_template_list.py +16 -0
- gcore/types/cloud/inference/deployment_create_params.py +7 -6
- gcore/types/cloud/inference/deployment_update_params.py +7 -6
- gcore/types/cloud/instance_assign_security_group_params.py +4 -2
- gcore/types/cloud/instance_list_params.py +3 -2
- gcore/types/cloud/instance_unassign_security_group_params.py +4 -2
- gcore/types/cloud/instances/image_list_params.py +3 -2
- gcore/types/cloud/k8s/__init__.py +13 -0
- gcore/types/cloud/k8s/cluster_create_params.py +299 -0
- gcore/types/cloud/k8s/cluster_delete_params.py +16 -0
- gcore/types/cloud/k8s/cluster_update_params.py +203 -0
- gcore/types/cloud/k8s/cluster_upgrade_params.py +16 -0
- gcore/types/cloud/k8s/clusters/__init__.py +10 -0
- gcore/types/cloud/k8s/clusters/k8s_cluster_pool.py +66 -0
- gcore/types/cloud/k8s/clusters/k8s_cluster_pool_list.py +16 -0
- gcore/types/cloud/k8s/clusters/node_list_params.py +16 -0
- gcore/types/cloud/k8s/clusters/pool_create_params.py +53 -0
- gcore/types/cloud/k8s/clusters/pool_resize_params.py +18 -0
- gcore/types/cloud/k8s/clusters/pool_update_params.py +34 -0
- gcore/types/{waap/domains/analytics → cloud/k8s/clusters/pools}/__init__.py +1 -1
- gcore/types/cloud/k8s/clusters/pools/node_list_params.py +18 -0
- gcore/types/cloud/k8s/flavor_list_params.py +19 -0
- gcore/types/cloud/k8s/k8s_cluster.py +209 -0
- gcore/types/cloud/k8s/k8s_cluster_certificate.py +13 -0
- gcore/types/cloud/k8s/k8s_cluster_kubeconfig.py +19 -0
- gcore/types/cloud/k8s/k8s_cluster_list.py +16 -0
- gcore/types/cloud/k8s_cluster_version.py +10 -0
- gcore/types/cloud/{gpu_baremetal_cluster_server_list.py → k8s_cluster_version_list.py} +4 -4
- gcore/types/cloud/load_balancer_create_params.py +31 -7
- gcore/types/cloud/load_balancer_list_params.py +3 -2
- gcore/types/cloud/load_balancers/l7_policies/rule_create_params.py +3 -2
- gcore/types/cloud/load_balancers/l7_policies/rule_replace_params.py +3 -2
- gcore/types/cloud/load_balancers/l7_policy_create_params.py +3 -2
- gcore/types/cloud/load_balancers/l7_policy_replace_params.py +3 -2
- gcore/types/cloud/load_balancers/listener_create_params.py +4 -3
- gcore/types/cloud/load_balancers/listener_update_params.py +5 -3
- gcore/types/cloud/load_balancers/pool_create_params.py +27 -4
- gcore/types/cloud/load_balancers/pool_update_params.py +27 -4
- gcore/types/cloud/load_balancers/pools/health_monitor_create_params.py +7 -2
- gcore/types/cloud/load_balancers/pools/member_add_params.py +20 -2
- gcore/types/cloud/member.py +19 -1
- gcore/types/cloud/network_list_params.py +3 -2
- gcore/types/cloud/networks/subnet_create_params.py +3 -2
- gcore/types/cloud/networks/subnet_list_params.py +3 -2
- gcore/types/cloud/networks/subnet_update_params.py +3 -2
- gcore/types/cloud/project.py +9 -9
- gcore/types/cloud/region.py +0 -3
- gcore/types/cloud/reserved_fixed_ips/vip_replace_connected_ports_params.py +3 -2
- gcore/types/cloud/reserved_fixed_ips/vip_update_connected_ports_params.py +3 -2
- gcore/types/cloud/security_group_create_params.py +4 -2
- gcore/types/cloud/security_group_list_params.py +3 -2
- gcore/types/cloud/task_id_list.py +8 -1
- gcore/types/cloud/task_list_params.py +23 -23
- gcore/types/cloud/usage_report_get_params.py +26 -25
- gcore/types/cloud/users/role_assignment.py +2 -1
- gcore/types/cloud/users/role_assignment_create_params.py +4 -2
- gcore/types/cloud/users/role_assignment_update_params.py +4 -2
- gcore/types/cloud/volume_list_params.py +3 -2
- gcore/types/dns/__init__.py +31 -0
- gcore/types/dns/dns_get_account_overview_response.py +21 -0
- gcore/types/dns/dns_label_name.py +13 -0
- gcore/types/dns/dns_location_translations.py +11 -0
- gcore/types/dns/dns_lookup_params.py +15 -0
- gcore/types/dns/dns_lookup_response.py +21 -0
- gcore/types/dns/dns_name_server.py +17 -0
- gcore/types/dns/location_list_continents_response.py +10 -0
- gcore/types/dns/location_list_countries_response.py +10 -0
- gcore/types/dns/location_list_regions_response.py +10 -0
- gcore/types/dns/location_list_response.py +16 -0
- gcore/types/dns/metric_list_params.py +24 -0
- gcore/types/dns/metric_list_response.py +7 -0
- gcore/types/dns/picker_list_response.py +10 -0
- gcore/types/dns/pickers/__init__.py +5 -0
- gcore/types/dns/pickers/preset_list_response.py +10 -0
- gcore/types/dns/zone_check_delegation_status_response.py +20 -0
- gcore/types/dns/zone_create_params.py +59 -0
- gcore/types/dns/zone_create_response.py +13 -0
- gcore/types/dns/zone_export_response.py +11 -0
- gcore/types/dns/zone_get_response.py +106 -0
- gcore/types/dns/zone_get_statistics_params.py +43 -0
- gcore/types/dns/zone_get_statistics_response.py +19 -0
- gcore/types/dns/zone_import_params.py +32 -0
- gcore/types/dns/zone_import_response.py +26 -0
- gcore/types/dns/zone_list_params.py +57 -0
- gcore/types/dns/zone_list_response.py +105 -0
- gcore/types/dns/zone_replace_params.py +61 -0
- gcore/types/dns/zones/__init__.py +15 -0
- gcore/types/dns/zones/dns_failover_log.py +19 -0
- gcore/types/dns/zones/dns_output_rrset.py +123 -0
- gcore/types/dns/zones/dnssec_get_response.py +38 -0
- gcore/types/dns/zones/dnssec_update_params.py +11 -0
- gcore/types/dns/zones/dnssec_update_response.py +38 -0
- gcore/types/dns/zones/rrset_create_params.py +82 -0
- gcore/types/dns/zones/rrset_get_failover_logs_params.py +21 -0
- gcore/types/dns/zones/rrset_get_failover_logs_response.py +15 -0
- gcore/types/dns/zones/rrset_list_params.py +21 -0
- gcore/types/dns/zones/rrset_list_response.py +14 -0
- gcore/types/dns/zones/rrset_replace_params.py +82 -0
- gcore/types/security/__init__.py +1 -1
- gcore/types/security/{bgp_announce_change_params.py → bgp_announce_toggle_params.py} +2 -2
- gcore/types/security/client_profile.py +1 -1
- gcore/types/security/profile_create_params.py +2 -2
- gcore/types/security/profile_recreate_params.py +2 -2
- gcore/types/security/profile_replace_params.py +2 -2
- gcore/types/storage/__init__.py +21 -0
- gcore/types/storage/bucket.py +15 -0
- gcore/types/storage/bucket_list_params.py +15 -0
- gcore/types/storage/buckets/__init__.py +9 -0
- gcore/types/storage/buckets/bucket_cors.py +18 -0
- gcore/types/storage/buckets/bucket_policy.py +7 -0
- gcore/types/storage/buckets/cor_create_params.py +17 -0
- gcore/types/storage/buckets/lifecycle_create_params.py +18 -0
- gcore/types/storage/buckets/policy_get_response.py +7 -0
- gcore/types/storage/credential_recreate_params.py +36 -0
- gcore/types/storage/location.py +24 -0
- gcore/types/storage/location_list_params.py +13 -0
- gcore/types/storage/statistic_get_usage_aggregated_params.py +24 -0
- gcore/types/storage/statistic_get_usage_series_params.py +38 -0
- gcore/types/storage/statistic_get_usage_series_response.py +12 -0
- gcore/types/storage/storage.py +101 -0
- gcore/types/storage/storage_create_params.py +44 -0
- gcore/types/storage/storage_list_params.py +39 -0
- gcore/types/storage/storage_restore_params.py +11 -0
- gcore/types/storage/storage_update_params.py +18 -0
- gcore/types/storage/usage_series.py +201 -0
- gcore/types/storage/usage_total.py +54 -0
- gcore/types/streaming/__init__.py +0 -4
- gcore/types/streaming/ai_contentmoderation_hardnudity.py +1 -1
- gcore/types/streaming/ai_contentmoderation_nsfw.py +1 -1
- gcore/types/streaming/ai_contentmoderation_softnudity.py +1 -1
- gcore/types/streaming/ai_contentmoderation_sport.py +1 -1
- gcore/types/streaming/ai_task.py +1 -5
- gcore/types/streaming/ai_task_create_params.py +2 -2
- gcore/types/streaming/ai_task_get_response.py +0 -46
- gcore/types/streaming/clip.py +2 -1
- gcore/types/streaming/create_video_param.py +13 -12
- gcore/types/streaming/max_stream_series.py +5 -5
- gcore/types/streaming/playlist.py +1 -1
- gcore/types/streaming/playlist_create_params.py +1 -1
- gcore/types/streaming/playlist_update_params.py +1 -1
- gcore/types/streaming/playlist_video.py +13 -12
- gcore/types/streaming/storage_series.py +5 -5
- gcore/types/streaming/stream.py +86 -49
- gcore/types/streaming/stream_create_clip_params.py +2 -1
- gcore/types/streaming/stream_create_params.py +9 -23
- gcore/types/streaming/stream_series.py +5 -5
- gcore/types/streaming/stream_update_params.py +9 -23
- gcore/types/streaming/video.py +53 -42
- gcore/types/streaming/video_update_params.py +13 -12
- gcore/types/streaming/vod_statistics_series.py +5 -5
- gcore/types/streaming/vod_total_stream_duration_series.py +3 -3
- gcore/types/waap/__init__.py +6 -54
- gcore/types/waap/custom_page_set_create_params.py +121 -14
- gcore/types/waap/custom_page_set_preview_params.py +11 -4
- gcore/types/waap/custom_page_set_update_params.py +122 -15
- gcore/types/waap/domain_list_params.py +2 -4
- gcore/types/waap/domain_update_params.py +1 -1
- gcore/types/waap/domains/__init__.py +28 -18
- gcore/types/waap/domains/advanced_rule_create_params.py +7 -4
- gcore/types/waap/domains/advanced_rule_list_params.py +1 -3
- gcore/types/waap/domains/advanced_rule_update_params.py +6 -3
- gcore/types/waap/domains/{api_discovery/scan_result_list_params.py → api_discovery_list_scan_results_params.py} +2 -2
- gcore/types/waap/domains/api_path_create_params.py +4 -3
- gcore/types/waap/domains/{api_path_group_list_response.py → api_path_group_list.py} +2 -2
- gcore/types/waap/domains/api_path_list_params.py +3 -1
- gcore/types/waap/domains/api_path_update_params.py +5 -4
- gcore/types/waap/domains/custom_rule_create_params.py +13 -14
- gcore/types/waap/domains/custom_rule_list_params.py +1 -3
- gcore/types/waap/domains/custom_rule_update_params.py +12 -13
- gcore/types/waap/domains/firewall_rule_create_params.py +3 -2
- gcore/types/waap/domains/firewall_rule_update_params.py +2 -1
- gcore/types/waap/domains/insight_list_params.py +19 -7
- gcore/types/waap/domains/insight_replace_params.py +3 -5
- gcore/types/waap/domains/insight_silence_list_params.py +17 -6
- gcore/types/waap/domains/setting_update_params.py +3 -2
- gcore/types/waap/domains/{analytics_list_ddos_attacks_params.py → statistic_get_ddos_attacks_params.py} +2 -2
- gcore/types/waap/domains/statistic_get_ddos_info_params.py +28 -0
- gcore/types/waap/domains/statistic_get_events_aggregated_params.py +33 -0
- gcore/types/waap/domains/statistic_get_requests_series_params.py +74 -0
- gcore/types/waap/domains/statistic_get_traffic_series_params.py +22 -0
- gcore/types/waap/domains/statistic_get_traffic_series_response.py +10 -0
- gcore/types/waap/{waap_advanced_rule.py → domains/waap_advanced_rule.py} +4 -3
- gcore/types/waap/domains/{api_discovery_get_settings_response.py → waap_api_discovery_settings.py} +2 -2
- gcore/types/waap/domains/{api_path_get_response.py → waap_api_path.py} +6 -6
- gcore/types/waap/domains/{api_discovery/scan_result_get_response.py → waap_api_scan_result.py} +5 -5
- gcore/types/waap/{waap_blocked_statistics.py → domains/waap_blocked_statistics.py} +1 -1
- gcore/types/waap/{waap_count_statistics.py → domains/waap_count_statistics.py} +1 -1
- gcore/types/waap/{waap_custom_rule.py → domains/waap_custom_rule.py} +5 -8
- gcore/types/waap/{waap_ddos_attack.py → domains/waap_ddos_attack.py} +1 -1
- gcore/types/waap/{waap_ddos_info.py → domains/waap_ddos_info.py} +1 -1
- gcore/types/waap/{waap_event_statistics.py → domains/waap_event_statistics.py} +1 -1
- gcore/types/waap/{waap_firewall_rule.py → domains/waap_firewall_rule.py} +4 -3
- gcore/types/waap/{waap_insight.py → domains/waap_insight.py} +4 -4
- gcore/types/waap/{waap_insight_silence.py → domains/waap_insight_silence.py} +1 -1
- gcore/types/waap/domains/waap_request_details.py +186 -0
- gcore/types/waap/{waap_request_summary.py → domains/waap_request_summary.py} +1 -1
- gcore/types/waap/domains/{api_discovery_scan_openapi_response.py → waap_task_id.py} +2 -2
- gcore/types/waap/{waap_traffic_metrics.py → domains/waap_traffic_metrics.py} +1 -1
- gcore/types/waap/insight_list_types_params.py +28 -0
- gcore/types/waap/ip_info/__init__.py +6 -0
- gcore/types/waap/{ip_info_get_counts_params.py → ip_info/metric_list_params.py} +2 -2
- gcore/types/waap/{waap_ip_info_counts.py → ip_info/waap_ip_info_counts.py} +1 -1
- gcore/types/waap/{ip_info_get_params.py → ip_info_get_ip_info_params.py} +2 -2
- gcore/types/waap/{waap_ip_info.py → ip_info_get_ip_info_response.py} +2 -2
- gcore/types/waap/ip_info_get_top_urls_response.py +12 -3
- gcore/types/waap/{ip_info_get_top_sessions_params.py → ip_info_get_top_user_sessions_params.py} +2 -2
- gcore/types/waap/{ip_info_get_top_sessions_response.py → ip_info_get_top_user_sessions_response.py} +2 -2
- gcore/types/waap/waap_custom_page_set.py +113 -13
- gcore/types/waap/waap_detailed_domain.py +2 -2
- gcore/types/waap/waap_insight_type.py +33 -0
- gcore/types/waap/waap_ip_ddos_info_model.py +3 -3
- gcore/types/waap/waap_rule_set.py +26 -3
- gcore/types/waap/waap_summary_domain.py +2 -2
- {gcore-0.9.0.dist-info → gcore-0.11.0.dist-info}/METADATA +7 -2
- {gcore-0.9.0.dist-info → gcore-0.11.0.dist-info}/RECORD +362 -281
- gcore/resources/waap/domains/analytics/__init__.py +0 -33
- gcore/resources/waap/domains/analytics/analytics.py +0 -676
- gcore/resources/waap/domains/analytics/requests.py +0 -378
- gcore/resources/waap/domains/api_discovery/__init__.py +0 -33
- gcore/resources/waap/domains/api_discovery/scan_results.py +0 -352
- gcore/resources/waap/domains/policies.py +0 -173
- gcore/types/cloud/inference/inference_model.py +0 -65
- gcore/types/cloud/inference/inference_registry_credentials_create.py +0 -22
- gcore/types/cloud/inference/model_list_params.py +0 -21
- gcore/types/streaming/ai_contentmoderation_casm.py +0 -39
- gcore/types/streaming/ai_contentmoderation_weapon.py +0 -39
- gcore/types/streaming/meet_series.py +0 -23
- gcore/types/streaming/statistic_get_meet_series_params.py +0 -20
- gcore/types/waap/domains/analytics/request_list_params.py +0 -53
- gcore/types/waap/domains/analytics_get_event_statistics_params.py +0 -34
- gcore/types/waap/domains/analytics_list_ddos_info_params.py +0 -31
- gcore/types/waap/domains/analytics_list_event_traffic_params.py +0 -26
- gcore/types/waap/domains/analytics_list_event_traffic_response.py +0 -10
- gcore/types/waap/domains/api_discovery/__init__.py +0 -7
- gcore/types/waap/domains/api_discovery/scan_result_list_response.py +0 -29
- gcore/types/waap/domains/api_discovery_update_settings_response.py +0 -36
- gcore/types/waap/domains/api_discovery_upload_openapi_response.py +0 -10
- gcore/types/waap/domains/api_path_create_response.py +0 -50
- gcore/types/waap/domains/api_path_list_response.py +0 -50
- gcore/types/waap/waap_block_csrf_page_data.py +0 -28
- gcore/types/waap/waap_block_csrf_page_data_param.py +0 -28
- gcore/types/waap/waap_block_page_data.py +0 -28
- gcore/types/waap/waap_block_page_data_param.py +0 -28
- gcore/types/waap/waap_captcha_page_data.py +0 -31
- gcore/types/waap/waap_captcha_page_data_param.py +0 -31
- gcore/types/waap/waap_common_tag.py +0 -16
- gcore/types/waap/waap_cookie_disabled_page_data.py +0 -18
- gcore/types/waap/waap_cookie_disabled_page_data_param.py +0 -18
- gcore/types/waap/waap_customer_rule_state.py +0 -7
- gcore/types/waap/waap_domain_policy.py +0 -29
- gcore/types/waap/waap_domain_status.py +0 -7
- gcore/types/waap/waap_handshake_page_data.py +0 -25
- gcore/types/waap/waap_handshake_page_data_param.py +0 -25
- gcore/types/waap/waap_insight_silence_sort_by.py +0 -9
- gcore/types/waap/waap_insight_sort_by.py +0 -20
- gcore/types/waap/waap_insight_status.py +0 -7
- gcore/types/waap/waap_javascript_disabled_page_data.py +0 -18
- gcore/types/waap/waap_javascript_disabled_page_data_param.py +0 -18
- gcore/types/waap/waap_network_details.py +0 -17
- gcore/types/waap/waap_page_type.py +0 -9
- gcore/types/waap/waap_paginated_custom_page_set.py +0 -22
- gcore/types/waap/waap_paginated_ddos_attack.py +0 -22
- gcore/types/waap/waap_paginated_ddos_info.py +0 -22
- gcore/types/waap/waap_paginated_request_summary.py +0 -22
- gcore/types/waap/waap_pattern_matched_tag.py +0 -37
- gcore/types/waap/waap_policy_action.py +0 -7
- gcore/types/waap/waap_request_details.py +0 -92
- gcore/types/waap/waap_request_organization.py +0 -13
- gcore/types/waap/waap_resolution.py +0 -7
- gcore/types/waap/waap_rule_action_type.py +0 -7
- gcore/types/waap/waap_top_url.py +0 -13
- gcore/types/waap/waap_traffic_type.py +0 -28
- gcore/types/waap/waap_user_agent_details.py +0 -40
- {gcore-0.9.0.dist-info → gcore-0.11.0.dist-info}/WHEEL +0 -0
- {gcore-0.9.0.dist-info → gcore-0.11.0.dist-info}/licenses/LICENSE +0 -0
|
@@ -10,7 +10,7 @@ __all__ = ["FirewallRuleCreateParams", "Action", "ActionBlock", "Condition", "Co
|
|
|
10
10
|
|
|
11
11
|
class FirewallRuleCreateParams(TypedDict, total=False):
|
|
12
12
|
action: Required[Action]
|
|
13
|
-
"""The action that
|
|
13
|
+
"""The action that the rule takes when triggered"""
|
|
14
14
|
|
|
15
15
|
conditions: Required[Iterable[Condition]]
|
|
16
16
|
"""The condition required for the WAAP engine to trigger the rule."""
|
|
@@ -30,7 +30,8 @@ class ActionBlock(TypedDict, total=False):
|
|
|
30
30
|
"""How long a rule's block action will apply to subsequent requests.
|
|
31
31
|
|
|
32
32
|
Can be specified in seconds or by using a numeral followed by 's', 'm', 'h', or
|
|
33
|
-
'd' to represent time format (seconds, minutes, hours, or days)
|
|
33
|
+
'd' to represent time format (seconds, minutes, hours, or days). Empty time
|
|
34
|
+
intervals are not allowed.
|
|
34
35
|
"""
|
|
35
36
|
|
|
36
37
|
status_code: Optional[Literal[403, 405, 418, 429]]
|
|
@@ -33,7 +33,8 @@ class ActionBlock(TypedDict, total=False):
|
|
|
33
33
|
"""How long a rule's block action will apply to subsequent requests.
|
|
34
34
|
|
|
35
35
|
Can be specified in seconds or by using a numeral followed by 's', 'm', 'h', or
|
|
36
|
-
'd' to represent time format (seconds, minutes, hours, or days)
|
|
36
|
+
'd' to represent time format (seconds, minutes, hours, or days). Empty time
|
|
37
|
+
intervals are not allowed.
|
|
37
38
|
"""
|
|
38
39
|
|
|
39
40
|
status_code: Optional[Literal[403, 405, 418, 429]]
|
|
@@ -3,22 +3,21 @@
|
|
|
3
3
|
from __future__ import annotations
|
|
4
4
|
|
|
5
5
|
from typing import List, Optional
|
|
6
|
-
from typing_extensions import TypedDict
|
|
6
|
+
from typing_extensions import Literal, TypedDict
|
|
7
7
|
|
|
8
|
-
from
|
|
9
|
-
from ..waap_insight_sort_by import WaapInsightSortBy
|
|
8
|
+
from ...._types import SequenceNotStr
|
|
10
9
|
|
|
11
10
|
__all__ = ["InsightListParams"]
|
|
12
11
|
|
|
13
12
|
|
|
14
13
|
class InsightListParams(TypedDict, total=False):
|
|
15
|
-
id: Optional[
|
|
14
|
+
id: Optional[SequenceNotStr[str]]
|
|
16
15
|
"""The ID of the insight"""
|
|
17
16
|
|
|
18
17
|
description: Optional[str]
|
|
19
18
|
"""The description of the insight. Supports '\\**' as a wildcard."""
|
|
20
19
|
|
|
21
|
-
insight_type: Optional[
|
|
20
|
+
insight_type: Optional[SequenceNotStr[str]]
|
|
22
21
|
"""The type of the insight"""
|
|
23
22
|
|
|
24
23
|
limit: int
|
|
@@ -27,8 +26,21 @@ class InsightListParams(TypedDict, total=False):
|
|
|
27
26
|
offset: int
|
|
28
27
|
"""Number of items to skip"""
|
|
29
28
|
|
|
30
|
-
ordering:
|
|
29
|
+
ordering: Literal[
|
|
30
|
+
"id",
|
|
31
|
+
"-id",
|
|
32
|
+
"insight_type",
|
|
33
|
+
"-insight_type",
|
|
34
|
+
"first_seen",
|
|
35
|
+
"-first_seen",
|
|
36
|
+
"last_seen",
|
|
37
|
+
"-last_seen",
|
|
38
|
+
"last_status_change",
|
|
39
|
+
"-last_status_change",
|
|
40
|
+
"status",
|
|
41
|
+
"-status",
|
|
42
|
+
]
|
|
31
43
|
"""Sort the response by given field."""
|
|
32
44
|
|
|
33
|
-
status: Optional[List[
|
|
45
|
+
status: Optional[List[Literal["OPEN", "ACKED", "CLOSED"]]]
|
|
34
46
|
"""The status of the insight"""
|
|
@@ -2,9 +2,7 @@
|
|
|
2
2
|
|
|
3
3
|
from __future__ import annotations
|
|
4
4
|
|
|
5
|
-
from typing_extensions import Required, TypedDict
|
|
6
|
-
|
|
7
|
-
from ..waap_insight_status import WaapInsightStatus
|
|
5
|
+
from typing_extensions import Literal, Required, TypedDict
|
|
8
6
|
|
|
9
7
|
__all__ = ["InsightReplaceParams"]
|
|
10
8
|
|
|
@@ -13,5 +11,5 @@ class InsightReplaceParams(TypedDict, total=False):
|
|
|
13
11
|
domain_id: Required[int]
|
|
14
12
|
"""The domain ID"""
|
|
15
13
|
|
|
16
|
-
status: Required[
|
|
17
|
-
"""The
|
|
14
|
+
status: Required[Literal["OPEN", "ACKED", "CLOSED"]]
|
|
15
|
+
"""The status of the insight"""
|
|
@@ -2,16 +2,16 @@
|
|
|
2
2
|
|
|
3
3
|
from __future__ import annotations
|
|
4
4
|
|
|
5
|
-
from typing import
|
|
6
|
-
from typing_extensions import TypedDict
|
|
5
|
+
from typing import Optional
|
|
6
|
+
from typing_extensions import Literal, TypedDict
|
|
7
7
|
|
|
8
|
-
from
|
|
8
|
+
from ...._types import SequenceNotStr
|
|
9
9
|
|
|
10
10
|
__all__ = ["InsightSilenceListParams"]
|
|
11
11
|
|
|
12
12
|
|
|
13
13
|
class InsightSilenceListParams(TypedDict, total=False):
|
|
14
|
-
id: Optional[
|
|
14
|
+
id: Optional[SequenceNotStr[str]]
|
|
15
15
|
"""The ID of the insight silence"""
|
|
16
16
|
|
|
17
17
|
author: Optional[str]
|
|
@@ -20,7 +20,7 @@ class InsightSilenceListParams(TypedDict, total=False):
|
|
|
20
20
|
comment: Optional[str]
|
|
21
21
|
"""The comment of the insight silence"""
|
|
22
22
|
|
|
23
|
-
insight_type: Optional[
|
|
23
|
+
insight_type: Optional[SequenceNotStr[str]]
|
|
24
24
|
"""The type of the insight silence"""
|
|
25
25
|
|
|
26
26
|
limit: int
|
|
@@ -29,5 +29,16 @@ class InsightSilenceListParams(TypedDict, total=False):
|
|
|
29
29
|
offset: int
|
|
30
30
|
"""Number of items to skip"""
|
|
31
31
|
|
|
32
|
-
ordering:
|
|
32
|
+
ordering: Literal[
|
|
33
|
+
"id",
|
|
34
|
+
"-id",
|
|
35
|
+
"insight_type",
|
|
36
|
+
"-insight_type",
|
|
37
|
+
"comment",
|
|
38
|
+
"-comment",
|
|
39
|
+
"author",
|
|
40
|
+
"-author",
|
|
41
|
+
"expire_at",
|
|
42
|
+
"-expire_at",
|
|
43
|
+
]
|
|
33
44
|
"""Sort the response by given field."""
|
|
@@ -2,9 +2,10 @@
|
|
|
2
2
|
|
|
3
3
|
from __future__ import annotations
|
|
4
4
|
|
|
5
|
-
from typing import List
|
|
6
5
|
from typing_extensions import TypedDict
|
|
7
6
|
|
|
7
|
+
from ...._types import SequenceNotStr
|
|
8
|
+
|
|
8
9
|
__all__ = ["SettingUpdateParams", "API", "DDOS"]
|
|
9
10
|
|
|
10
11
|
|
|
@@ -17,7 +18,7 @@ class SettingUpdateParams(TypedDict, total=False):
|
|
|
17
18
|
|
|
18
19
|
|
|
19
20
|
class API(TypedDict, total=False):
|
|
20
|
-
api_urls:
|
|
21
|
+
api_urls: SequenceNotStr[str]
|
|
21
22
|
"""The API URLs for a domain.
|
|
22
23
|
|
|
23
24
|
If your domain has a common base URL for all API paths, it can be set here
|
|
@@ -8,10 +8,10 @@ from typing_extensions import Literal, Annotated, TypedDict
|
|
|
8
8
|
|
|
9
9
|
from ...._utils import PropertyInfo
|
|
10
10
|
|
|
11
|
-
__all__ = ["
|
|
11
|
+
__all__ = ["StatisticGetDDOSAttacksParams"]
|
|
12
12
|
|
|
13
13
|
|
|
14
|
-
class
|
|
14
|
+
class StatisticGetDDOSAttacksParams(TypedDict, total=False):
|
|
15
15
|
end_time: Annotated[Union[str, datetime, None], PropertyInfo(format="iso8601")]
|
|
16
16
|
"""Filter attacks up to a specified end date in ISO 8601 format"""
|
|
17
17
|
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
# File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
|
|
2
|
+
|
|
3
|
+
from __future__ import annotations
|
|
4
|
+
|
|
5
|
+
from typing import Optional
|
|
6
|
+
from typing_extensions import Literal, Required, TypedDict
|
|
7
|
+
|
|
8
|
+
__all__ = ["StatisticGetDDOSInfoParams"]
|
|
9
|
+
|
|
10
|
+
|
|
11
|
+
class StatisticGetDDOSInfoParams(TypedDict, total=False):
|
|
12
|
+
group_by: Required[Literal["URL", "User-Agent", "IP"]]
|
|
13
|
+
"""The identity of the requests to group by"""
|
|
14
|
+
|
|
15
|
+
start: Required[str]
|
|
16
|
+
"""Filter data items starting from a specified date in ISO 8601 format"""
|
|
17
|
+
|
|
18
|
+
end: Optional[str]
|
|
19
|
+
"""Filter data items up to a specified end date in ISO 8601 format.
|
|
20
|
+
|
|
21
|
+
If not provided, defaults to the current date and time.
|
|
22
|
+
"""
|
|
23
|
+
|
|
24
|
+
limit: int
|
|
25
|
+
"""Number of items to return"""
|
|
26
|
+
|
|
27
|
+
offset: int
|
|
28
|
+
"""Number of items to skip"""
|
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
# File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
|
|
2
|
+
|
|
3
|
+
from __future__ import annotations
|
|
4
|
+
|
|
5
|
+
from typing import List, Optional
|
|
6
|
+
from typing_extensions import Literal, Required, TypedDict
|
|
7
|
+
|
|
8
|
+
from ...._types import SequenceNotStr
|
|
9
|
+
|
|
10
|
+
__all__ = ["StatisticGetEventsAggregatedParams"]
|
|
11
|
+
|
|
12
|
+
|
|
13
|
+
class StatisticGetEventsAggregatedParams(TypedDict, total=False):
|
|
14
|
+
start: Required[str]
|
|
15
|
+
"""Filter data items starting from a specified date in ISO 8601 format"""
|
|
16
|
+
|
|
17
|
+
action: Optional[List[Literal["block", "captcha", "handshake", "monitor"]]]
|
|
18
|
+
"""A list of action names to filter on."""
|
|
19
|
+
|
|
20
|
+
end: Optional[str]
|
|
21
|
+
"""Filter data items up to a specified end date in ISO 8601 format.
|
|
22
|
+
|
|
23
|
+
If not provided, defaults to the current date and time.
|
|
24
|
+
"""
|
|
25
|
+
|
|
26
|
+
ip: Optional[SequenceNotStr[str]]
|
|
27
|
+
"""A list of IPs to filter event statistics."""
|
|
28
|
+
|
|
29
|
+
reference_id: Optional[SequenceNotStr[str]]
|
|
30
|
+
"""A list of reference IDs to filter event statistics."""
|
|
31
|
+
|
|
32
|
+
result: Optional[List[Literal["passed", "blocked", "monitored", "allowed"]]]
|
|
33
|
+
"""A list of results to filter event statistics."""
|
|
@@ -0,0 +1,74 @@
|
|
|
1
|
+
# File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
|
|
2
|
+
|
|
3
|
+
from __future__ import annotations
|
|
4
|
+
|
|
5
|
+
from typing import List, Optional
|
|
6
|
+
from typing_extensions import Literal, Required, TypedDict
|
|
7
|
+
|
|
8
|
+
from ...._types import SequenceNotStr
|
|
9
|
+
|
|
10
|
+
__all__ = ["StatisticGetRequestsSeriesParams"]
|
|
11
|
+
|
|
12
|
+
|
|
13
|
+
class StatisticGetRequestsSeriesParams(TypedDict, total=False):
|
|
14
|
+
start: Required[str]
|
|
15
|
+
"""Filter data items starting from a specified date in ISO 8601 format"""
|
|
16
|
+
|
|
17
|
+
actions: List[Literal["allow", "block", "captcha", "handshake"]]
|
|
18
|
+
"""Filter the response by actions."""
|
|
19
|
+
|
|
20
|
+
countries: SequenceNotStr[str]
|
|
21
|
+
"""Filter the response by country codes in ISO 3166-1 alpha-2 format."""
|
|
22
|
+
|
|
23
|
+
end: Optional[str]
|
|
24
|
+
"""Filter data items up to a specified end date in ISO 8601 format.
|
|
25
|
+
|
|
26
|
+
If not provided, defaults to the current date and time.
|
|
27
|
+
"""
|
|
28
|
+
|
|
29
|
+
ip: str
|
|
30
|
+
"""Filter the response by IP."""
|
|
31
|
+
|
|
32
|
+
limit: int
|
|
33
|
+
"""Number of items to return"""
|
|
34
|
+
|
|
35
|
+
offset: int
|
|
36
|
+
"""Number of items to skip"""
|
|
37
|
+
|
|
38
|
+
ordering: str
|
|
39
|
+
"""Sort the response by given field."""
|
|
40
|
+
|
|
41
|
+
reference_id: str
|
|
42
|
+
"""Filter the response by reference ID."""
|
|
43
|
+
|
|
44
|
+
security_rule_name: str
|
|
45
|
+
"""Filter the response by security rule name."""
|
|
46
|
+
|
|
47
|
+
status_code: int
|
|
48
|
+
"""Filter the response by response code."""
|
|
49
|
+
|
|
50
|
+
traffic_types: List[
|
|
51
|
+
Literal[
|
|
52
|
+
"policy_allowed",
|
|
53
|
+
"policy_blocked",
|
|
54
|
+
"custom_rule_allowed",
|
|
55
|
+
"custom_blocked",
|
|
56
|
+
"legit_requests",
|
|
57
|
+
"sanctioned",
|
|
58
|
+
"dynamic",
|
|
59
|
+
"api",
|
|
60
|
+
"static",
|
|
61
|
+
"ajax",
|
|
62
|
+
"redirects",
|
|
63
|
+
"monitor",
|
|
64
|
+
"err_40x",
|
|
65
|
+
"err_50x",
|
|
66
|
+
"passed_to_origin",
|
|
67
|
+
"timeout",
|
|
68
|
+
"other",
|
|
69
|
+
"ddos",
|
|
70
|
+
"legit",
|
|
71
|
+
"monitored",
|
|
72
|
+
]
|
|
73
|
+
]
|
|
74
|
+
"""Filter the response by traffic types."""
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
# File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
|
|
2
|
+
|
|
3
|
+
from __future__ import annotations
|
|
4
|
+
|
|
5
|
+
from typing import Optional
|
|
6
|
+
from typing_extensions import Literal, Required, TypedDict
|
|
7
|
+
|
|
8
|
+
__all__ = ["StatisticGetTrafficSeriesParams"]
|
|
9
|
+
|
|
10
|
+
|
|
11
|
+
class StatisticGetTrafficSeriesParams(TypedDict, total=False):
|
|
12
|
+
resolution: Required[Literal["daily", "hourly", "minutely"]]
|
|
13
|
+
"""Specifies the granularity of the result data."""
|
|
14
|
+
|
|
15
|
+
start: Required[str]
|
|
16
|
+
"""Filter data items starting from a specified date in ISO 8601 format"""
|
|
17
|
+
|
|
18
|
+
end: Optional[str]
|
|
19
|
+
"""Filter data items up to a specified end date in ISO 8601 format.
|
|
20
|
+
|
|
21
|
+
If not provided, defaults to the current date and time.
|
|
22
|
+
"""
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
# File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
|
|
2
|
+
|
|
3
|
+
from typing import List
|
|
4
|
+
from typing_extensions import TypeAlias
|
|
5
|
+
|
|
6
|
+
from .waap_traffic_metrics import WaapTrafficMetrics
|
|
7
|
+
|
|
8
|
+
__all__ = ["StatisticGetTrafficSeriesResponse"]
|
|
9
|
+
|
|
10
|
+
StatisticGetTrafficSeriesResponse: TypeAlias = List[WaapTrafficMetrics]
|
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
from typing import List, Optional
|
|
4
4
|
from typing_extensions import Literal
|
|
5
5
|
|
|
6
|
-
from
|
|
6
|
+
from ...._models import BaseModel
|
|
7
7
|
|
|
8
8
|
__all__ = ["WaapAdvancedRule", "Action", "ActionBlock", "ActionTag"]
|
|
9
9
|
|
|
@@ -13,7 +13,8 @@ class ActionBlock(BaseModel):
|
|
|
13
13
|
"""How long a rule's block action will apply to subsequent requests.
|
|
14
14
|
|
|
15
15
|
Can be specified in seconds or by using a numeral followed by 's', 'm', 'h', or
|
|
16
|
-
'd' to represent time format (seconds, minutes, hours, or days)
|
|
16
|
+
'd' to represent time format (seconds, minutes, hours, or days). Empty time
|
|
17
|
+
intervals are not allowed.
|
|
17
18
|
"""
|
|
18
19
|
|
|
19
20
|
status_code: Optional[Literal[403, 405, 418, 429]] = None
|
|
@@ -53,7 +54,7 @@ class WaapAdvancedRule(BaseModel):
|
|
|
53
54
|
"""The unique identifier for the rule"""
|
|
54
55
|
|
|
55
56
|
action: Action
|
|
56
|
-
"""The action that
|
|
57
|
+
"""The action that the rule takes when triggered"""
|
|
57
58
|
|
|
58
59
|
enabled: bool
|
|
59
60
|
"""Whether or not the rule is enabled"""
|
gcore/types/waap/domains/{api_discovery_get_settings_response.py → waap_api_discovery_settings.py}
RENAMED
|
@@ -6,10 +6,10 @@ from pydantic import Field as FieldInfo
|
|
|
6
6
|
|
|
7
7
|
from ...._models import BaseModel
|
|
8
8
|
|
|
9
|
-
__all__ = ["
|
|
9
|
+
__all__ = ["WaapAPIDiscoverySettings"]
|
|
10
10
|
|
|
11
11
|
|
|
12
|
-
class
|
|
12
|
+
class WaapAPIDiscoverySettings(BaseModel):
|
|
13
13
|
description_file_location: Optional[str] = FieldInfo(alias="descriptionFileLocation", default=None)
|
|
14
14
|
"""The URL of the API description file.
|
|
15
15
|
|
|
@@ -6,10 +6,10 @@ from typing_extensions import Literal
|
|
|
6
6
|
|
|
7
7
|
from ...._models import BaseModel
|
|
8
8
|
|
|
9
|
-
__all__ = ["
|
|
9
|
+
__all__ = ["WaapAPIPath"]
|
|
10
10
|
|
|
11
11
|
|
|
12
|
-
class
|
|
12
|
+
class WaapAPIPath(BaseModel):
|
|
13
13
|
id: str
|
|
14
14
|
"""The path ID"""
|
|
15
15
|
|
|
@@ -23,13 +23,13 @@ class APIPathGetResponse(BaseModel):
|
|
|
23
23
|
"""The date and time in ISO 8601 format the API path was first detected."""
|
|
24
24
|
|
|
25
25
|
http_scheme: Literal["HTTP", "HTTPS"]
|
|
26
|
-
"""The
|
|
26
|
+
"""The HTTP version of the API path"""
|
|
27
27
|
|
|
28
28
|
last_detected: datetime
|
|
29
29
|
"""The date and time in ISO 8601 format the API path was last detected."""
|
|
30
30
|
|
|
31
31
|
method: Literal["GET", "POST", "PUT", "PATCH", "DELETE", "TRACE", "HEAD", "OPTIONS"]
|
|
32
|
-
"""The
|
|
32
|
+
"""The API RESTful method"""
|
|
33
33
|
|
|
34
34
|
path: str
|
|
35
35
|
"""
|
|
@@ -41,10 +41,10 @@ class APIPathGetResponse(BaseModel):
|
|
|
41
41
|
"""The number of requests for this path in the last 24 hours"""
|
|
42
42
|
|
|
43
43
|
source: Literal["API_DESCRIPTION_FILE", "TRAFFIC_SCAN", "USER_DEFINED"]
|
|
44
|
-
"""The
|
|
44
|
+
"""The source of the discovered API"""
|
|
45
45
|
|
|
46
46
|
status: Literal["CONFIRMED_API", "POTENTIAL_API", "NOT_API", "DELISTED_API"]
|
|
47
|
-
"""The
|
|
47
|
+
"""The status of the discovered API path"""
|
|
48
48
|
|
|
49
49
|
tags: List[str]
|
|
50
50
|
"""An array of tags associated with the API path"""
|
gcore/types/waap/domains/{api_discovery/scan_result_get_response.py → waap_api_scan_result.py}
RENAMED
|
@@ -4,12 +4,12 @@ from typing import Optional
|
|
|
4
4
|
from datetime import datetime
|
|
5
5
|
from typing_extensions import Literal
|
|
6
6
|
|
|
7
|
-
from
|
|
7
|
+
from ...._models import BaseModel
|
|
8
8
|
|
|
9
|
-
__all__ = ["
|
|
9
|
+
__all__ = ["WaapAPIScanResult"]
|
|
10
10
|
|
|
11
11
|
|
|
12
|
-
class
|
|
12
|
+
class WaapAPIScanResult(BaseModel):
|
|
13
13
|
id: str
|
|
14
14
|
"""The scan ID"""
|
|
15
15
|
|
|
@@ -23,7 +23,7 @@ class ScanResultGetResponse(BaseModel):
|
|
|
23
23
|
"""The date and time the scan started"""
|
|
24
24
|
|
|
25
25
|
status: Literal["SUCCESS", "FAILURE", "IN_PROGRESS"]
|
|
26
|
-
"""The
|
|
26
|
+
"""The status of the scan"""
|
|
27
27
|
|
|
28
28
|
type: Literal["TRAFFIC_SCAN", "API_DESCRIPTION_FILE_SCAN"]
|
|
29
|
-
"""The
|
|
29
|
+
"""The type of scan"""
|
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
from typing import List, Optional
|
|
4
4
|
from typing_extensions import Literal
|
|
5
5
|
|
|
6
|
-
from
|
|
6
|
+
from ...._models import BaseModel
|
|
7
7
|
|
|
8
8
|
__all__ = [
|
|
9
9
|
"WaapCustomRule",
|
|
@@ -37,7 +37,8 @@ class ActionBlock(BaseModel):
|
|
|
37
37
|
"""How long a rule's block action will apply to subsequent requests.
|
|
38
38
|
|
|
39
39
|
Can be specified in seconds or by using a numeral followed by 's', 'm', 'h', or
|
|
40
|
-
'd' to represent time format (seconds, minutes, hours, or days)
|
|
40
|
+
'd' to represent time format (seconds, minutes, hours, or days). Empty time
|
|
41
|
+
intervals are not allowed.
|
|
41
42
|
"""
|
|
42
43
|
|
|
43
44
|
status_code: Optional[Literal[403, 405, 418, 429]] = None
|
|
@@ -123,11 +124,7 @@ class ConditionHeaderExists(BaseModel):
|
|
|
123
124
|
|
|
124
125
|
class ConditionHTTPMethod(BaseModel):
|
|
125
126
|
http_method: Literal["CONNECT", "DELETE", "GET", "HEAD", "OPTIONS", "PATCH", "POST", "PUT", "TRACE"]
|
|
126
|
-
"""HTTP methods
|
|
127
|
-
|
|
128
|
-
- RFC 7231: Hypertext Transfer Protocol (HTTP/1.1), obsoletes 2616
|
|
129
|
-
- RFC 5789: PATCH Method for HTTP
|
|
130
|
-
"""
|
|
127
|
+
"""HTTP methods of a request"""
|
|
131
128
|
|
|
132
129
|
negation: Optional[bool] = None
|
|
133
130
|
"""Whether or not to apply a boolean NOT operation to the rule's condition"""
|
|
@@ -358,7 +355,7 @@ class WaapCustomRule(BaseModel):
|
|
|
358
355
|
"""The unique identifier for the rule"""
|
|
359
356
|
|
|
360
357
|
action: Action
|
|
361
|
-
"""The action that
|
|
358
|
+
"""The action that the rule takes when triggered"""
|
|
362
359
|
|
|
363
360
|
conditions: List[Condition]
|
|
364
361
|
"""The conditions required for the WAAP engine to trigger the rule.
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
# File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
|
|
2
2
|
|
|
3
|
-
from
|
|
3
|
+
from ...._models import BaseModel
|
|
4
4
|
from .waap_count_statistics import WaapCountStatistics
|
|
5
5
|
from .waap_blocked_statistics import WaapBlockedStatistics
|
|
6
6
|
|
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
from typing import List, Optional
|
|
4
4
|
from typing_extensions import Literal
|
|
5
5
|
|
|
6
|
-
from
|
|
6
|
+
from ...._models import BaseModel
|
|
7
7
|
|
|
8
8
|
__all__ = ["WaapFirewallRule", "Action", "ActionBlock", "Condition", "ConditionIP", "ConditionIPRange"]
|
|
9
9
|
|
|
@@ -13,7 +13,8 @@ class ActionBlock(BaseModel):
|
|
|
13
13
|
"""How long a rule's block action will apply to subsequent requests.
|
|
14
14
|
|
|
15
15
|
Can be specified in seconds or by using a numeral followed by 's', 'm', 'h', or
|
|
16
|
-
'd' to represent time format (seconds, minutes, hours, or days)
|
|
16
|
+
'd' to represent time format (seconds, minutes, hours, or days). Empty time
|
|
17
|
+
intervals are not allowed.
|
|
17
18
|
"""
|
|
18
19
|
|
|
19
20
|
status_code: Optional[Literal[403, 405, 418, 429]] = None
|
|
@@ -63,7 +64,7 @@ class WaapFirewallRule(BaseModel):
|
|
|
63
64
|
"""The unique identifier of the rule"""
|
|
64
65
|
|
|
65
66
|
action: Action
|
|
66
|
-
"""The action that
|
|
67
|
+
"""The action that the rule takes when triggered"""
|
|
67
68
|
|
|
68
69
|
conditions: List[Condition]
|
|
69
70
|
"""The condition required for the WAAP engine to trigger the rule."""
|
|
@@ -2,9 +2,9 @@
|
|
|
2
2
|
|
|
3
3
|
from typing import Dict
|
|
4
4
|
from datetime import datetime
|
|
5
|
+
from typing_extensions import Literal
|
|
5
6
|
|
|
6
|
-
from
|
|
7
|
-
from .waap_insight_status import WaapInsightStatus
|
|
7
|
+
from ...._models import BaseModel
|
|
8
8
|
|
|
9
9
|
__all__ = ["WaapInsight"]
|
|
10
10
|
|
|
@@ -34,5 +34,5 @@ class WaapInsight(BaseModel):
|
|
|
34
34
|
recommendation: str
|
|
35
35
|
"""The recommended action to perform to resolve the insight"""
|
|
36
36
|
|
|
37
|
-
status:
|
|
38
|
-
"""The
|
|
37
|
+
status: Literal["OPEN", "ACKED", "CLOSED"]
|
|
38
|
+
"""The status of the insight"""
|