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
|
@@ -0,0 +1,186 @@
|
|
|
1
|
+
# File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
|
|
2
|
+
|
|
3
|
+
from typing import Dict, List
|
|
4
|
+
from datetime import datetime
|
|
5
|
+
from typing_extensions import Literal
|
|
6
|
+
|
|
7
|
+
from ...._models import BaseModel
|
|
8
|
+
|
|
9
|
+
__all__ = ["WaapRequestDetails", "CommonTag", "Network", "NetworkOrganization", "PatternMatchedTag", "UserAgent"]
|
|
10
|
+
|
|
11
|
+
|
|
12
|
+
class CommonTag(BaseModel):
|
|
13
|
+
description: str
|
|
14
|
+
"""Tag description information"""
|
|
15
|
+
|
|
16
|
+
display_name: str
|
|
17
|
+
"""The tag's display name"""
|
|
18
|
+
|
|
19
|
+
tag: str
|
|
20
|
+
"""Tag name"""
|
|
21
|
+
|
|
22
|
+
|
|
23
|
+
class NetworkOrganization(BaseModel):
|
|
24
|
+
name: str
|
|
25
|
+
"""Organization name"""
|
|
26
|
+
|
|
27
|
+
subnet: str
|
|
28
|
+
"""Network range"""
|
|
29
|
+
|
|
30
|
+
|
|
31
|
+
class Network(BaseModel):
|
|
32
|
+
client_ip: str
|
|
33
|
+
"""Client IP"""
|
|
34
|
+
|
|
35
|
+
country: str
|
|
36
|
+
"""Country code"""
|
|
37
|
+
|
|
38
|
+
organization: NetworkOrganization
|
|
39
|
+
"""Organization details"""
|
|
40
|
+
|
|
41
|
+
|
|
42
|
+
class PatternMatchedTag(BaseModel):
|
|
43
|
+
description: str
|
|
44
|
+
"""Tag description information"""
|
|
45
|
+
|
|
46
|
+
display_name: str
|
|
47
|
+
"""The tag's display name"""
|
|
48
|
+
|
|
49
|
+
execution_phase: str
|
|
50
|
+
"""
|
|
51
|
+
The phase in which the tag was triggered: access -> Request, `header_filter` ->
|
|
52
|
+
`response_header`, `body_filter` -> `response_body`
|
|
53
|
+
"""
|
|
54
|
+
|
|
55
|
+
field: str
|
|
56
|
+
"""The entity to which the variable that triggered the tag belong to.
|
|
57
|
+
|
|
58
|
+
For example: `request_headers`, uri, cookies etc.
|
|
59
|
+
"""
|
|
60
|
+
|
|
61
|
+
field_name: str
|
|
62
|
+
"""The name of the variable which holds the value that triggered the tag"""
|
|
63
|
+
|
|
64
|
+
pattern_name: str
|
|
65
|
+
"""The name of the detected regexp pattern"""
|
|
66
|
+
|
|
67
|
+
pattern_value: str
|
|
68
|
+
"""The pattern which triggered the tag"""
|
|
69
|
+
|
|
70
|
+
tag: str
|
|
71
|
+
"""Tag name"""
|
|
72
|
+
|
|
73
|
+
|
|
74
|
+
class UserAgent(BaseModel):
|
|
75
|
+
base_browser: str
|
|
76
|
+
"""User agent browser"""
|
|
77
|
+
|
|
78
|
+
base_browser_version: str
|
|
79
|
+
"""User agent browser version"""
|
|
80
|
+
|
|
81
|
+
client: str
|
|
82
|
+
"""Client from User agent header"""
|
|
83
|
+
|
|
84
|
+
client_type: str
|
|
85
|
+
"""User agent client type"""
|
|
86
|
+
|
|
87
|
+
client_version: str
|
|
88
|
+
"""User agent client version"""
|
|
89
|
+
|
|
90
|
+
cpu: str
|
|
91
|
+
"""User agent cpu"""
|
|
92
|
+
|
|
93
|
+
device: str
|
|
94
|
+
"""User agent device"""
|
|
95
|
+
|
|
96
|
+
device_type: str
|
|
97
|
+
"""User agent device type"""
|
|
98
|
+
|
|
99
|
+
full_string: str
|
|
100
|
+
"""User agent"""
|
|
101
|
+
|
|
102
|
+
os: str
|
|
103
|
+
"""User agent os"""
|
|
104
|
+
|
|
105
|
+
rendering_engine: str
|
|
106
|
+
"""User agent engine"""
|
|
107
|
+
|
|
108
|
+
|
|
109
|
+
class WaapRequestDetails(BaseModel):
|
|
110
|
+
id: str
|
|
111
|
+
"""Request ID"""
|
|
112
|
+
|
|
113
|
+
action: str
|
|
114
|
+
"""Request action"""
|
|
115
|
+
|
|
116
|
+
common_tags: List[CommonTag]
|
|
117
|
+
"""List of common tags"""
|
|
118
|
+
|
|
119
|
+
content_type: str
|
|
120
|
+
"""Content type of request"""
|
|
121
|
+
|
|
122
|
+
domain: str
|
|
123
|
+
"""Domain name"""
|
|
124
|
+
|
|
125
|
+
http_status_code: int
|
|
126
|
+
"""Status code for http request"""
|
|
127
|
+
|
|
128
|
+
http_version: str
|
|
129
|
+
"""HTTP version of request"""
|
|
130
|
+
|
|
131
|
+
incident_id: str
|
|
132
|
+
"""ID of challenge that was generated"""
|
|
133
|
+
|
|
134
|
+
method: str
|
|
135
|
+
"""Request method"""
|
|
136
|
+
|
|
137
|
+
network: Network
|
|
138
|
+
"""Network details"""
|
|
139
|
+
|
|
140
|
+
path: str
|
|
141
|
+
"""Request path"""
|
|
142
|
+
|
|
143
|
+
pattern_matched_tags: List[PatternMatchedTag]
|
|
144
|
+
"""List of shield tags"""
|
|
145
|
+
|
|
146
|
+
query_string: str
|
|
147
|
+
"""The query string of the request"""
|
|
148
|
+
|
|
149
|
+
reference_id: str
|
|
150
|
+
"""Reference ID to identify user sanction"""
|
|
151
|
+
|
|
152
|
+
request_headers: Dict[str, object]
|
|
153
|
+
"""HTTP request headers"""
|
|
154
|
+
|
|
155
|
+
request_time: datetime
|
|
156
|
+
"""The time of the request"""
|
|
157
|
+
|
|
158
|
+
request_type: str
|
|
159
|
+
"""The type of the request that generated an event"""
|
|
160
|
+
|
|
161
|
+
requested_domain: str
|
|
162
|
+
"""The real domain name"""
|
|
163
|
+
|
|
164
|
+
response_time: str
|
|
165
|
+
"""Time took to process all request"""
|
|
166
|
+
|
|
167
|
+
result: Literal["passed", "blocked", "suppressed", ""]
|
|
168
|
+
"""The result of a request"""
|
|
169
|
+
|
|
170
|
+
rule_id: str
|
|
171
|
+
"""ID of the triggered rule"""
|
|
172
|
+
|
|
173
|
+
rule_name: str
|
|
174
|
+
"""Name of the triggered rule"""
|
|
175
|
+
|
|
176
|
+
scheme: str
|
|
177
|
+
"""The HTTP scheme of the request that generated an event"""
|
|
178
|
+
|
|
179
|
+
session_request_count: str
|
|
180
|
+
"""The number requests in session"""
|
|
181
|
+
|
|
182
|
+
traffic_types: List[str]
|
|
183
|
+
"""List of traffic types"""
|
|
184
|
+
|
|
185
|
+
user_agent: UserAgent
|
|
186
|
+
"""User agent"""
|
|
@@ -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, TypedDict
|
|
7
|
+
|
|
8
|
+
__all__ = ["InsightListTypesParams"]
|
|
9
|
+
|
|
10
|
+
|
|
11
|
+
class InsightListTypesParams(TypedDict, total=False):
|
|
12
|
+
insight_frequency: Optional[int]
|
|
13
|
+
"""Filter by the frequency of the insight type"""
|
|
14
|
+
|
|
15
|
+
limit: int
|
|
16
|
+
"""Number of items to return"""
|
|
17
|
+
|
|
18
|
+
name: Optional[str]
|
|
19
|
+
"""Filter by the name of the insight type"""
|
|
20
|
+
|
|
21
|
+
offset: int
|
|
22
|
+
"""Number of items to skip"""
|
|
23
|
+
|
|
24
|
+
ordering: Literal["name", "-name", "slug", "-slug", "insight_frequency", "-insight_frequency"]
|
|
25
|
+
"""Sort the response by given field."""
|
|
26
|
+
|
|
27
|
+
slug: Optional[str]
|
|
28
|
+
"""Filter by the slug of the insight type"""
|
|
@@ -5,10 +5,10 @@ from __future__ import annotations
|
|
|
5
5
|
from typing import Optional
|
|
6
6
|
from typing_extensions import Required, TypedDict
|
|
7
7
|
|
|
8
|
-
__all__ = ["
|
|
8
|
+
__all__ = ["MetricListParams"]
|
|
9
9
|
|
|
10
10
|
|
|
11
|
-
class
|
|
11
|
+
class MetricListParams(TypedDict, total=False):
|
|
12
12
|
ip: Required[str]
|
|
13
13
|
"""The IP address to check"""
|
|
14
14
|
|
|
@@ -4,9 +4,9 @@ from __future__ import annotations
|
|
|
4
4
|
|
|
5
5
|
from typing_extensions import Required, TypedDict
|
|
6
6
|
|
|
7
|
-
__all__ = ["
|
|
7
|
+
__all__ = ["IPInfoGetIPInfoParams"]
|
|
8
8
|
|
|
9
9
|
|
|
10
|
-
class
|
|
10
|
+
class IPInfoGetIPInfoParams(TypedDict, total=False):
|
|
11
11
|
ip: Required[str]
|
|
12
12
|
"""The IP address to check"""
|
|
@@ -5,7 +5,7 @@ from typing_extensions import Literal
|
|
|
5
5
|
|
|
6
6
|
from ..._models import BaseModel
|
|
7
7
|
|
|
8
|
-
__all__ = ["
|
|
8
|
+
__all__ = ["IPInfoGetIPInfoResponse", "Whois"]
|
|
9
9
|
|
|
10
10
|
|
|
11
11
|
class Whois(BaseModel):
|
|
@@ -46,7 +46,7 @@ class Whois(BaseModel):
|
|
|
46
46
|
"""The state"""
|
|
47
47
|
|
|
48
48
|
|
|
49
|
-
class
|
|
49
|
+
class IPInfoGetIPInfoResponse(BaseModel):
|
|
50
50
|
risk_score: Literal["NO_RISK", "LOW", "MEDIUM", "HIGH", "EXTREME", "NOT_ENOUGH_DATA"]
|
|
51
51
|
"""The risk score of the IP address"""
|
|
52
52
|
|
|
@@ -3,8 +3,17 @@
|
|
|
3
3
|
from typing import List
|
|
4
4
|
from typing_extensions import TypeAlias
|
|
5
5
|
|
|
6
|
-
from
|
|
6
|
+
from ..._models import BaseModel
|
|
7
7
|
|
|
8
|
-
__all__ = ["IPInfoGetTopURLsResponse"]
|
|
8
|
+
__all__ = ["IPInfoGetTopURLsResponse", "IPInfoGetTopURLsResponseItem"]
|
|
9
9
|
|
|
10
|
-
|
|
10
|
+
|
|
11
|
+
class IPInfoGetTopURLsResponseItem(BaseModel):
|
|
12
|
+
count: int
|
|
13
|
+
"""The number of attacks to the URL"""
|
|
14
|
+
|
|
15
|
+
url: str
|
|
16
|
+
"""The URL that was attacked"""
|
|
17
|
+
|
|
18
|
+
|
|
19
|
+
IPInfoGetTopURLsResponse: TypeAlias = List[IPInfoGetTopURLsResponseItem]
|
gcore/types/waap/{ip_info_get_top_sessions_params.py → ip_info_get_top_user_sessions_params.py}
RENAMED
|
@@ -4,10 +4,10 @@ from __future__ import annotations
|
|
|
4
4
|
|
|
5
5
|
from typing_extensions import Required, TypedDict
|
|
6
6
|
|
|
7
|
-
__all__ = ["
|
|
7
|
+
__all__ = ["IPInfoGetTopUserSessionsParams"]
|
|
8
8
|
|
|
9
9
|
|
|
10
|
-
class
|
|
10
|
+
class IPInfoGetTopUserSessionsParams(TypedDict, total=False):
|
|
11
11
|
domain_id: Required[int]
|
|
12
12
|
"""The identifier for a domain.
|
|
13
13
|
|
gcore/types/waap/{ip_info_get_top_sessions_response.py → ip_info_get_top_user_sessions_response.py}
RENAMED
|
@@ -5,6 +5,6 @@ from typing_extensions import TypeAlias
|
|
|
5
5
|
|
|
6
6
|
from .waap_top_session import WaapTopSession
|
|
7
7
|
|
|
8
|
-
__all__ = ["
|
|
8
|
+
__all__ = ["IPInfoGetTopUserSessionsResponse"]
|
|
9
9
|
|
|
10
|
-
|
|
10
|
+
IPInfoGetTopUserSessionsResponse: TypeAlias = List[WaapTopSession]
|
|
@@ -3,14 +3,114 @@
|
|
|
3
3
|
from typing import List, Optional
|
|
4
4
|
|
|
5
5
|
from ..._models import BaseModel
|
|
6
|
-
from .waap_block_page_data import WaapBlockPageData
|
|
7
|
-
from .waap_captcha_page_data import WaapCaptchaPageData
|
|
8
|
-
from .waap_handshake_page_data import WaapHandshakePageData
|
|
9
|
-
from .waap_block_csrf_page_data import WaapBlockCsrfPageData
|
|
10
|
-
from .waap_cookie_disabled_page_data import WaapCookieDisabledPageData
|
|
11
|
-
from .waap_javascript_disabled_page_data import WaapJavascriptDisabledPageData
|
|
12
6
|
|
|
13
|
-
__all__ = ["WaapCustomPageSet"]
|
|
7
|
+
__all__ = ["WaapCustomPageSet", "Block", "BlockCsrf", "Captcha", "CookieDisabled", "Handshake", "JavascriptDisabled"]
|
|
8
|
+
|
|
9
|
+
|
|
10
|
+
class Block(BaseModel):
|
|
11
|
+
enabled: bool
|
|
12
|
+
"""Indicates whether the custom custom page is active or inactive"""
|
|
13
|
+
|
|
14
|
+
header: Optional[str] = None
|
|
15
|
+
"""The text to display in the header of the custom page"""
|
|
16
|
+
|
|
17
|
+
logo: Optional[str] = None
|
|
18
|
+
"""
|
|
19
|
+
Supported image types are JPEG, PNG and JPG, size is limited to width 450px,
|
|
20
|
+
height 130px. This should be a base 64 encoding of the full HTML img tag
|
|
21
|
+
compatible image, with the header included.
|
|
22
|
+
"""
|
|
23
|
+
|
|
24
|
+
text: Optional[str] = None
|
|
25
|
+
"""The text to display in the body of the custom page"""
|
|
26
|
+
|
|
27
|
+
title: Optional[str] = None
|
|
28
|
+
"""The text to display in the title of the custom page"""
|
|
29
|
+
|
|
30
|
+
|
|
31
|
+
class BlockCsrf(BaseModel):
|
|
32
|
+
enabled: bool
|
|
33
|
+
"""Indicates whether the custom custom page is active or inactive"""
|
|
34
|
+
|
|
35
|
+
header: Optional[str] = None
|
|
36
|
+
"""The text to display in the header of the custom page"""
|
|
37
|
+
|
|
38
|
+
logo: Optional[str] = None
|
|
39
|
+
"""
|
|
40
|
+
Supported image types are JPEG, PNG and JPG, size is limited to width 450px,
|
|
41
|
+
height 130px. This should be a base 64 encoding of the full HTML img tag
|
|
42
|
+
compatible image, with the header included.
|
|
43
|
+
"""
|
|
44
|
+
|
|
45
|
+
text: Optional[str] = None
|
|
46
|
+
"""The text to display in the body of the custom page"""
|
|
47
|
+
|
|
48
|
+
title: Optional[str] = None
|
|
49
|
+
"""The text to display in the title of the custom page"""
|
|
50
|
+
|
|
51
|
+
|
|
52
|
+
class Captcha(BaseModel):
|
|
53
|
+
enabled: bool
|
|
54
|
+
"""Indicates whether the custom custom page is active or inactive"""
|
|
55
|
+
|
|
56
|
+
error: Optional[str] = None
|
|
57
|
+
"""Error message"""
|
|
58
|
+
|
|
59
|
+
header: Optional[str] = None
|
|
60
|
+
"""The text to display in the header of the custom page"""
|
|
61
|
+
|
|
62
|
+
logo: Optional[str] = None
|
|
63
|
+
"""
|
|
64
|
+
Supported image types are JPEG, PNG and JPG, size is limited to width 450px,
|
|
65
|
+
height 130px. This should be a base 64 encoding of the full HTML img tag
|
|
66
|
+
compatible image, with the header included.
|
|
67
|
+
"""
|
|
68
|
+
|
|
69
|
+
text: Optional[str] = None
|
|
70
|
+
"""The text to display in the body of the custom page"""
|
|
71
|
+
|
|
72
|
+
title: Optional[str] = None
|
|
73
|
+
"""The text to display in the title of the custom page"""
|
|
74
|
+
|
|
75
|
+
|
|
76
|
+
class CookieDisabled(BaseModel):
|
|
77
|
+
enabled: bool
|
|
78
|
+
"""Indicates whether the custom custom page is active or inactive"""
|
|
79
|
+
|
|
80
|
+
header: Optional[str] = None
|
|
81
|
+
"""The text to display in the header of the custom page"""
|
|
82
|
+
|
|
83
|
+
text: Optional[str] = None
|
|
84
|
+
"""The text to display in the body of the custom page"""
|
|
85
|
+
|
|
86
|
+
|
|
87
|
+
class Handshake(BaseModel):
|
|
88
|
+
enabled: bool
|
|
89
|
+
"""Indicates whether the custom custom page is active or inactive"""
|
|
90
|
+
|
|
91
|
+
header: Optional[str] = None
|
|
92
|
+
"""The text to display in the header of the custom page"""
|
|
93
|
+
|
|
94
|
+
logo: Optional[str] = None
|
|
95
|
+
"""
|
|
96
|
+
Supported image types are JPEG, PNG and JPG, size is limited to width 450px,
|
|
97
|
+
height 130px. This should be a base 64 encoding of the full HTML img tag
|
|
98
|
+
compatible image, with the header included.
|
|
99
|
+
"""
|
|
100
|
+
|
|
101
|
+
title: Optional[str] = None
|
|
102
|
+
"""The text to display in the title of the custom page"""
|
|
103
|
+
|
|
104
|
+
|
|
105
|
+
class JavascriptDisabled(BaseModel):
|
|
106
|
+
enabled: bool
|
|
107
|
+
"""Indicates whether the custom custom page is active or inactive"""
|
|
108
|
+
|
|
109
|
+
header: Optional[str] = None
|
|
110
|
+
"""The text to display in the header of the custom page"""
|
|
111
|
+
|
|
112
|
+
text: Optional[str] = None
|
|
113
|
+
"""The text to display in the body of the custom page"""
|
|
14
114
|
|
|
15
115
|
|
|
16
116
|
class WaapCustomPageSet(BaseModel):
|
|
@@ -20,17 +120,17 @@ class WaapCustomPageSet(BaseModel):
|
|
|
20
120
|
name: str
|
|
21
121
|
"""Name of the custom page set"""
|
|
22
122
|
|
|
23
|
-
block: Optional[
|
|
123
|
+
block: Optional[Block] = None
|
|
24
124
|
|
|
25
|
-
block_csrf: Optional[
|
|
125
|
+
block_csrf: Optional[BlockCsrf] = None
|
|
26
126
|
|
|
27
|
-
captcha: Optional[
|
|
127
|
+
captcha: Optional[Captcha] = None
|
|
28
128
|
|
|
29
|
-
cookie_disabled: Optional[
|
|
129
|
+
cookie_disabled: Optional[CookieDisabled] = None
|
|
30
130
|
|
|
31
131
|
domains: Optional[List[int]] = None
|
|
32
132
|
"""List of domain IDs that are associated with this page set"""
|
|
33
133
|
|
|
34
|
-
handshake: Optional[
|
|
134
|
+
handshake: Optional[Handshake] = None
|
|
35
135
|
|
|
36
|
-
javascript_disabled: Optional[
|
|
136
|
+
javascript_disabled: Optional[JavascriptDisabled] = None
|
|
@@ -2,9 +2,9 @@
|
|
|
2
2
|
|
|
3
3
|
from typing import Dict, Optional
|
|
4
4
|
from datetime import datetime
|
|
5
|
+
from typing_extensions import Literal
|
|
5
6
|
|
|
6
7
|
from ..._models import BaseModel
|
|
7
|
-
from .waap_domain_status import WaapDomainStatus
|
|
8
8
|
|
|
9
9
|
__all__ = ["WaapDetailedDomain", "Quotas"]
|
|
10
10
|
|
|
@@ -30,7 +30,7 @@ class WaapDetailedDomain(BaseModel):
|
|
|
30
30
|
name: str
|
|
31
31
|
"""The domain name"""
|
|
32
32
|
|
|
33
|
-
status:
|
|
33
|
+
status: Literal["active", "bypass", "monitor", "locked"]
|
|
34
34
|
"""The different statuses a domain can have"""
|
|
35
35
|
|
|
36
36
|
quotas: Optional[Dict[str, Quotas]] = None
|
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
# File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
|
|
2
|
+
|
|
3
|
+
from typing import List
|
|
4
|
+
|
|
5
|
+
from ..._models import BaseModel
|
|
6
|
+
|
|
7
|
+
__all__ = ["WaapInsightType"]
|
|
8
|
+
|
|
9
|
+
|
|
10
|
+
class WaapInsightType(BaseModel):
|
|
11
|
+
description: str
|
|
12
|
+
"""The description of the insight type"""
|
|
13
|
+
|
|
14
|
+
insight_frequency: int
|
|
15
|
+
"""The frequency of the insight type"""
|
|
16
|
+
|
|
17
|
+
insight_grouping_dimensions: List[str]
|
|
18
|
+
"""The grouping dimensions of the insight type"""
|
|
19
|
+
|
|
20
|
+
insight_template: str
|
|
21
|
+
"""The insight template"""
|
|
22
|
+
|
|
23
|
+
labels: List[str]
|
|
24
|
+
"""The labels of the insight type"""
|
|
25
|
+
|
|
26
|
+
name: str
|
|
27
|
+
"""The name of the insight type"""
|
|
28
|
+
|
|
29
|
+
recommendation_template: str
|
|
30
|
+
"""The recommendation template"""
|
|
31
|
+
|
|
32
|
+
slug: str
|
|
33
|
+
"""The slug of the insight type"""
|
|
@@ -4,10 +4,10 @@ from typing import List
|
|
|
4
4
|
|
|
5
5
|
from ..._models import BaseModel
|
|
6
6
|
|
|
7
|
-
__all__ = ["WaapIPDDOSInfoModel", "
|
|
7
|
+
__all__ = ["WaapIPDDOSInfoModel", "TimeSeries"]
|
|
8
8
|
|
|
9
9
|
|
|
10
|
-
class
|
|
10
|
+
class TimeSeries(BaseModel):
|
|
11
11
|
count: int
|
|
12
12
|
"""The number of attacks"""
|
|
13
13
|
|
|
@@ -19,5 +19,5 @@ class WaapIPDDOSInfoModel(BaseModel):
|
|
|
19
19
|
botnet_client: bool
|
|
20
20
|
"""Indicates if the IP is tagged as a botnet client"""
|
|
21
21
|
|
|
22
|
-
time_series: List[
|
|
22
|
+
time_series: List[TimeSeries]
|
|
23
23
|
"""The time series data for the DDoS attacks from the IP address"""
|
|
@@ -1,11 +1,11 @@
|
|
|
1
1
|
# File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
|
|
2
2
|
|
|
3
3
|
from typing import List, Optional
|
|
4
|
+
from typing_extensions import Literal
|
|
4
5
|
|
|
5
6
|
from ..._models import BaseModel
|
|
6
|
-
from .waap_domain_policy import WaapDomainPolicy
|
|
7
7
|
|
|
8
|
-
__all__ = ["WaapRuleSet", "Tag"]
|
|
8
|
+
__all__ = ["WaapRuleSet", "Tag", "Rule"]
|
|
9
9
|
|
|
10
10
|
|
|
11
11
|
class Tag(BaseModel):
|
|
@@ -19,6 +19,29 @@ class Tag(BaseModel):
|
|
|
19
19
|
"""Name of the tag."""
|
|
20
20
|
|
|
21
21
|
|
|
22
|
+
class Rule(BaseModel):
|
|
23
|
+
id: str
|
|
24
|
+
"""Unique identifier for the security rule"""
|
|
25
|
+
|
|
26
|
+
action: Literal["Allow", "Block", "Captcha", "Gateway", "Handshake", "Monitor", "Composite"]
|
|
27
|
+
"""Specifies the action taken by the WAAP upon rule activation"""
|
|
28
|
+
|
|
29
|
+
description: str
|
|
30
|
+
"""Detailed description of the security rule"""
|
|
31
|
+
|
|
32
|
+
group: str
|
|
33
|
+
"""The rule set group name to which the rule belongs"""
|
|
34
|
+
|
|
35
|
+
mode: bool
|
|
36
|
+
"""Indicates if the security rule is active"""
|
|
37
|
+
|
|
38
|
+
name: str
|
|
39
|
+
"""Name of the security rule"""
|
|
40
|
+
|
|
41
|
+
rule_set_id: int
|
|
42
|
+
"""Identifier of the rule set to which the rule belongs"""
|
|
43
|
+
|
|
44
|
+
|
|
22
45
|
class WaapRuleSet(BaseModel):
|
|
23
46
|
id: int
|
|
24
47
|
"""Identifier of the rule set."""
|
|
@@ -38,4 +61,4 @@ class WaapRuleSet(BaseModel):
|
|
|
38
61
|
resource_slug: Optional[str] = None
|
|
39
62
|
"""The resource slug associated with the rule set."""
|
|
40
63
|
|
|
41
|
-
rules: Optional[List[
|
|
64
|
+
rules: Optional[List[Rule]] = None
|
|
@@ -2,9 +2,9 @@
|
|
|
2
2
|
|
|
3
3
|
from typing import Optional
|
|
4
4
|
from datetime import datetime
|
|
5
|
+
from typing_extensions import Literal
|
|
5
6
|
|
|
6
7
|
from ..._models import BaseModel
|
|
7
|
-
from .waap_domain_status import WaapDomainStatus
|
|
8
8
|
|
|
9
9
|
__all__ = ["WaapSummaryDomain"]
|
|
10
10
|
|
|
@@ -22,5 +22,5 @@ class WaapSummaryDomain(BaseModel):
|
|
|
22
22
|
name: str
|
|
23
23
|
"""The domain name"""
|
|
24
24
|
|
|
25
|
-
status:
|
|
25
|
+
status: Literal["active", "bypass", "monitor", "locked"]
|
|
26
26
|
"""The different statuses a domain can have"""
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.3
|
|
2
2
|
Name: gcore
|
|
3
|
-
Version: 0.
|
|
3
|
+
Version: 0.11.0
|
|
4
4
|
Summary: The official Python library for the gcore API
|
|
5
5
|
Project-URL: Homepage, https://github.com/G-Core/gcore-python
|
|
6
6
|
Project-URL: Repository, https://github.com/G-Core/gcore-python
|
|
@@ -36,7 +36,8 @@ Description-Content-Type: text/markdown
|
|
|
36
36
|
# Gcore Python API library
|
|
37
37
|
|
|
38
38
|
<!-- prettier-ignore -->
|
|
39
|
-
[)](https://
|
|
39
|
+
[)[](https://app.fossa.com/projects/git%2Bgithub.com%2FG-Core%2Fgcore-python?ref=badge_shield)
|
|
40
|
+
](https://pypi.org/project/gcore/)
|
|
40
41
|
|
|
41
42
|
The Gcore Python library provides convenient access to the Gcore REST API from any Python 3.8+
|
|
42
43
|
application. The library includes type definitions for all request params and response fields,
|
|
@@ -518,3 +519,7 @@ Python 3.8 or higher.
|
|
|
518
519
|
## Contributing
|
|
519
520
|
|
|
520
521
|
See [the contributing documentation](https://github.com/G-Core/gcore-python/tree/main/./CONTRIBUTING.md).
|
|
522
|
+
|
|
523
|
+
|
|
524
|
+
## License
|
|
525
|
+
[](https://app.fossa.com/projects/git%2Bgithub.com%2FG-Core%2Fgcore-python?ref=badge_large)
|