gcore 0.13.0__py3-none-any.whl → 0.14.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/__init__.py +3 -1
- gcore/_base_client.py +9 -9
- gcore/_client.py +25 -10
- gcore/_models.py +10 -4
- gcore/_qs.py +7 -7
- gcore/_types.py +18 -11
- gcore/_utils/_transform.py +2 -2
- gcore/_utils/_utils.py +4 -4
- gcore/_version.py +1 -1
- gcore/pagination.py +137 -0
- gcore/resources/__init__.py +14 -0
- gcore/resources/cdn/__init__.py +201 -0
- gcore/resources/cdn/audit_log.py +406 -0
- gcore/resources/cdn/cdn.py +957 -0
- gcore/resources/cdn/certificates.py +1062 -0
- gcore/resources/cdn/ip_ranges.py +224 -0
- gcore/resources/cdn/logs/__init__.py +33 -0
- gcore/resources/cdn/logs/logs.py +1424 -0
- gcore/resources/cdn/logs/settings.py +1081 -0
- gcore/resources/cdn/logs_uploader/__init__.py +61 -0
- gcore/resources/cdn/logs_uploader/configs.py +868 -0
- gcore/resources/cdn/logs_uploader/logs_uploader.py +166 -0
- gcore/resources/cdn/logs_uploader/policies.py +1060 -0
- gcore/resources/cdn/logs_uploader/targets.py +811 -0
- gcore/resources/cdn/metrics.py +419 -0
- gcore/resources/cdn/network_capacity.py +139 -0
- gcore/resources/cdn/origin_groups.py +1496 -0
- gcore/resources/cdn/resources/__init__.py +47 -0
- gcore/resources/cdn/resources/resources.py +2060 -0
- gcore/resources/cdn/resources/rules.py +1027 -0
- gcore/resources/cdn/resources/shield.py +259 -0
- gcore/resources/cdn/rule_templates.py +883 -0
- gcore/resources/cdn/shields.py +139 -0
- gcore/resources/cdn/statistics.py +1408 -0
- gcore/resources/cdn/trusted_ca_certificates.py +592 -0
- gcore/resources/cloud/audit_logs.py +33 -29
- gcore/resources/cloud/baremetal/flavors.py +21 -17
- gcore/resources/cloud/baremetal/images.py +19 -15
- gcore/resources/cloud/baremetal/servers.py +141 -119
- gcore/resources/cloud/billing_reservations.py +41 -33
- gcore/resources/cloud/cloud.py +24 -0
- gcore/resources/cloud/cost_reports.py +149 -119
- gcore/resources/cloud/file_shares/access_rules.py +25 -13
- gcore/resources/cloud/file_shares/file_shares.py +107 -71
- gcore/resources/cloud/floating_ips.py +101 -59
- gcore/resources/cloud/gpu_baremetal_clusters/flavors.py +13 -9
- gcore/resources/cloud/gpu_baremetal_clusters/gpu_baremetal_clusters.py +275 -65
- gcore/resources/cloud/gpu_baremetal_clusters/images.py +69 -53
- gcore/resources/cloud/gpu_baremetal_clusters/interfaces.py +9 -5
- gcore/resources/cloud/gpu_baremetal_clusters/servers.py +151 -127
- gcore/resources/cloud/inference/api_keys.py +51 -31
- gcore/resources/cloud/inference/applications/deployments.py +49 -31
- gcore/resources/cloud/inference/applications/templates.py +17 -9
- gcore/resources/cloud/inference/deployments/deployments.py +171 -139
- gcore/resources/cloud/inference/deployments/logs.py +17 -13
- gcore/resources/cloud/inference/flavors.py +21 -13
- gcore/resources/cloud/inference/inference.py +9 -5
- gcore/resources/cloud/inference/registry_credentials.py +45 -25
- gcore/resources/cloud/inference/secrets.py +45 -25
- gcore/resources/cloud/instances/flavors.py +17 -13
- gcore/resources/cloud/instances/images.py +153 -129
- gcore/resources/cloud/instances/instances.py +287 -213
- gcore/resources/cloud/instances/interfaces.py +165 -161
- gcore/resources/cloud/instances/metrics.py +9 -5
- gcore/resources/cloud/ip_ranges.py +25 -15
- gcore/resources/cloud/k8s/clusters/clusters.py +151 -87
- gcore/resources/cloud/k8s/clusters/nodes.py +19 -11
- gcore/resources/cloud/k8s/clusters/pools/nodes.py +19 -11
- gcore/resources/cloud/k8s/clusters/pools/pools.py +83 -59
- gcore/resources/cloud/k8s/flavors.py +13 -9
- gcore/resources/cloud/k8s/k8s.py +9 -5
- gcore/resources/cloud/load_balancers/flavors.py +11 -7
- gcore/resources/cloud/load_balancers/l7_policies/l7_policies.py +103 -83
- gcore/resources/cloud/load_balancers/l7_policies/rules.py +77 -57
- gcore/resources/cloud/load_balancers/listeners.py +125 -105
- gcore/resources/cloud/load_balancers/load_balancers.py +155 -123
- gcore/resources/cloud/load_balancers/metrics.py +9 -5
- gcore/resources/cloud/load_balancers/pools/health_monitors.py +25 -17
- gcore/resources/cloud/load_balancers/pools/members.py +31 -23
- gcore/resources/cloud/load_balancers/pools/pools.py +155 -129
- gcore/resources/cloud/load_balancers/statuses.py +17 -9
- gcore/resources/cloud/networks/networks.py +79 -55
- gcore/resources/cloud/networks/routers.py +75 -47
- gcore/resources/cloud/networks/subnets.py +105 -81
- gcore/resources/cloud/placement_groups.py +33 -17
- gcore/resources/cloud/projects.py +53 -41
- gcore/resources/cloud/quotas/quotas.py +25 -13
- gcore/resources/cloud/quotas/requests.py +41 -25
- gcore/resources/cloud/regions.py +25 -23
- gcore/resources/cloud/registries/artifacts.py +17 -9
- gcore/resources/cloud/registries/registries.py +55 -29
- gcore/resources/cloud/registries/repositories.py +17 -9
- gcore/resources/cloud/registries/tags.py +9 -5
- gcore/resources/cloud/registries/users.py +65 -35
- gcore/resources/cloud/reserved_fixed_ips/reserved_fixed_ips.py +123 -107
- gcore/resources/cloud/reserved_fixed_ips/vip.py +45 -25
- gcore/resources/cloud/secrets.py +43 -27
- gcore/resources/cloud/security_groups/rules.py +55 -43
- gcore/resources/cloud/security_groups/security_groups.py +79 -47
- gcore/resources/cloud/ssh_keys.py +51 -31
- gcore/resources/cloud/tasks.py +57 -45
- gcore/resources/cloud/usage_reports.py +27 -23
- gcore/resources/cloud/users/role_assignments.py +49 -33
- gcore/resources/cloud/volumes.py +237 -201
- gcore/resources/dns/dns.py +17 -13
- gcore/resources/dns/locations.py +29 -17
- gcore/resources/dns/metrics.py +13 -9
- gcore/resources/dns/pickers/pickers.py +5 -5
- gcore/resources/dns/pickers/presets.py +9 -5
- gcore/resources/dns/zones/dnssec.py +19 -11
- gcore/resources/dns/zones/rrsets.py +149 -91
- gcore/resources/dns/zones/zones.py +245 -187
- gcore/resources/fastedge/apps/apps.py +105 -89
- gcore/resources/fastedge/apps/logs.py +25 -21
- gcore/resources/fastedge/binaries.py +33 -17
- gcore/resources/fastedge/fastedge.py +5 -5
- gcore/resources/fastedge/kv_stores.py +43 -31
- gcore/resources/fastedge/secrets.py +69 -45
- gcore/resources/fastedge/statistics.py +25 -17
- gcore/resources/fastedge/templates.py +59 -39
- gcore/resources/iam/api_tokens.py +43 -27
- gcore/resources/iam/iam.py +5 -5
- gcore/resources/iam/users.py +97 -65
- gcore/resources/security/bgp_announces.py +27 -19
- gcore/resources/security/events.py +23 -19
- gcore/resources/security/profile_templates.py +9 -5
- gcore/resources/security/profiles.py +69 -45
- gcore/resources/storage/buckets/buckets.py +37 -25
- gcore/resources/storage/buckets/cors.py +19 -11
- gcore/resources/storage/buckets/lifecycle.py +19 -11
- gcore/resources/storage/buckets/policy.py +25 -13
- gcore/resources/storage/credentials.py +19 -15
- gcore/resources/storage/locations.py +13 -9
- gcore/resources/storage/statistics.py +39 -31
- gcore/resources/storage/storage.py +105 -69
- gcore/resources/streaming/ai_tasks.py +307 -197
- gcore/resources/streaming/broadcasts.py +63 -35
- gcore/resources/streaming/directories.py +65 -39
- gcore/resources/streaming/players.py +47 -31
- gcore/resources/streaming/playlists.py +189 -123
- gcore/resources/streaming/quality_sets.py +69 -39
- gcore/resources/streaming/restreams.py +47 -27
- gcore/resources/streaming/statistics.py +613 -407
- gcore/resources/streaming/streams/overlays.py +107 -67
- gcore/resources/streaming/streams/streams.py +403 -263
- gcore/resources/streaming/videos/subtitles.py +131 -75
- gcore/resources/streaming/videos/videos.py +429 -279
- gcore/resources/waap/advanced_rules.py +9 -5
- gcore/resources/waap/custom_page_sets.py +99 -75
- gcore/resources/waap/domains/advanced_rules.py +157 -99
- gcore/resources/waap/domains/api_discovery.py +71 -47
- gcore/resources/waap/domains/api_path_groups.py +9 -5
- gcore/resources/waap/domains/api_paths.py +79 -83
- gcore/resources/waap/domains/custom_rules.py +89 -59
- gcore/resources/waap/domains/domains.py +59 -41
- gcore/resources/waap/domains/firewall_rules.py +83 -55
- gcore/resources/waap/domains/insight_silences.py +59 -39
- gcore/resources/waap/domains/insights.py +39 -27
- gcore/resources/waap/domains/settings.py +21 -13
- gcore/resources/waap/domains/statistics.py +99 -75
- gcore/resources/waap/insights.py +23 -21
- gcore/resources/waap/ip_info/ip_info.py +65 -33
- gcore/resources/waap/ip_info/metrics.py +11 -7
- gcore/resources/waap/organizations.py +17 -13
- gcore/resources/waap/statistics.py +9 -5
- gcore/resources/waap/tags.py +17 -17
- gcore/resources/waap/waap.py +5 -5
- gcore/types/cdn/__init__.py +80 -0
- gcore/types/cdn/audit_log_list_params.py +73 -0
- gcore/types/cdn/ca_certificate.py +53 -0
- gcore/types/cdn/ca_certificate_list.py +10 -0
- gcore/types/cdn/cdn_account.py +86 -0
- gcore/types/cdn/cdn_account_limits.py +27 -0
- gcore/types/cdn/cdn_audit_log_entry.py +66 -0
- gcore/types/cdn/cdn_available_features.py +46 -0
- gcore/types/cdn/cdn_list_purge_statuses_params.py +67 -0
- gcore/types/cdn/cdn_log_entry.py +70 -0
- gcore/types/cdn/cdn_metrics.py +22 -0
- gcore/types/cdn/cdn_metrics_groups.py +13 -0
- gcore/types/cdn/cdn_metrics_values.py +19 -0
- gcore/types/cdn/cdn_resource.py +1977 -0
- gcore/types/cdn/cdn_resource_list.py +10 -0
- gcore/types/cdn/cdn_update_account_params.py +15 -0
- gcore/types/cdn/certificate_create_params.py +51 -0
- gcore/types/cdn/certificate_get_status_params.py +14 -0
- gcore/types/cdn/certificate_list_params.py +29 -0
- gcore/types/cdn/certificate_replace_params.py +39 -0
- gcore/types/cdn/log_download_params.py +279 -0
- gcore/types/cdn/log_list_params.py +273 -0
- gcore/types/cdn/logs/__init__.py +7 -0
- gcore/types/cdn/logs/log_settings.py +172 -0
- gcore/types/cdn/logs/setting_create_params.py +200 -0
- gcore/types/cdn/logs/setting_update_params.py +200 -0
- gcore/types/cdn/logs_aggregated_stats.py +23 -0
- gcore/types/cdn/logs_uploader/__init__.py +23 -0
- gcore/types/cdn/logs_uploader/config_create_params.py +32 -0
- gcore/types/cdn/logs_uploader/config_list_params.py +16 -0
- gcore/types/cdn/logs_uploader/config_replace_params.py +32 -0
- gcore/types/cdn/logs_uploader/config_update_params.py +32 -0
- gcore/types/cdn/logs_uploader/logs_uploader_config.py +51 -0
- gcore/types/cdn/logs_uploader/logs_uploader_config_list.py +10 -0
- gcore/types/cdn/logs_uploader/logs_uploader_policy.py +73 -0
- gcore/types/cdn/logs_uploader/logs_uploader_policy_list.py +10 -0
- gcore/types/cdn/logs_uploader/logs_uploader_target.py +236 -0
- gcore/types/cdn/logs_uploader/logs_uploader_target_list.py +10 -0
- gcore/types/cdn/logs_uploader/policy_create_params.py +61 -0
- gcore/types/cdn/logs_uploader/policy_list_fields_response.py +8 -0
- gcore/types/cdn/logs_uploader/policy_list_params.py +16 -0
- gcore/types/cdn/logs_uploader/policy_replace_params.py +61 -0
- gcore/types/cdn/logs_uploader/policy_update_params.py +61 -0
- gcore/types/cdn/logs_uploader/target_create_params.py +249 -0
- gcore/types/cdn/logs_uploader/target_list_params.py +16 -0
- gcore/types/cdn/logs_uploader/target_replace_params.py +249 -0
- gcore/types/cdn/logs_uploader/target_update_params.py +249 -0
- gcore/types/cdn/logs_uploader_validation.py +23 -0
- gcore/types/cdn/metric_list_params.py +168 -0
- gcore/types/cdn/network_capacity.py +22 -0
- gcore/types/cdn/origin_group_create_params.py +184 -0
- gcore/types/cdn/origin_group_list_params.py +24 -0
- gcore/types/cdn/origin_group_replace_params.py +190 -0
- gcore/types/cdn/origin_group_update_params.py +190 -0
- gcore/types/cdn/origin_groups.py +212 -0
- gcore/types/cdn/origin_groups_list.py +10 -0
- gcore/types/cdn/public_ip_list.py +15 -0
- gcore/types/cdn/public_network_list.py +15 -0
- gcore/types/cdn/purge_status.py +55 -0
- gcore/types/cdn/resource_aggregated_stats.py +80 -0
- gcore/types/cdn/resource_create_params.py +1825 -0
- gcore/types/cdn/resource_list_params.py +107 -0
- gcore/types/cdn/resource_prefetch_params.py +17 -0
- gcore/types/cdn/resource_purge_params.py +71 -0
- gcore/types/cdn/resource_replace_params.py +1803 -0
- gcore/types/cdn/resource_update_params.py +1794 -0
- gcore/types/cdn/resource_usage_stats.py +111 -0
- gcore/types/cdn/resources/__init__.py +11 -0
- gcore/types/cdn/resources/cdn_resource_rule.py +1695 -0
- gcore/types/cdn/resources/origin_shielding.py +15 -0
- gcore/types/cdn/resources/rule_create_params.py +1652 -0
- gcore/types/cdn/resources/rule_list_response.py +10 -0
- gcore/types/cdn/resources/rule_replace_params.py +1654 -0
- gcore/types/cdn/resources/rule_update_params.py +1654 -0
- gcore/types/cdn/resources/shield_replace_params.py +16 -0
- gcore/types/cdn/rule_template.py +1666 -0
- gcore/types/cdn/rule_template_create_params.py +1636 -0
- gcore/types/cdn/rule_template_list.py +10 -0
- gcore/types/cdn/rule_template_replace_params.py +1636 -0
- gcore/types/cdn/rule_template_update_params.py +1636 -0
- gcore/types/cdn/shield_aggregated_stats.py +23 -0
- gcore/types/cdn/shield_list_response.py +25 -0
- gcore/types/cdn/ssl_detail.py +62 -0
- gcore/types/cdn/ssl_detail_list.py +10 -0
- gcore/types/cdn/ssl_request_status.py +135 -0
- gcore/types/cdn/statistic_get_logs_usage_aggregated_params.py +42 -0
- gcore/types/cdn/statistic_get_logs_usage_series_params.py +35 -0
- gcore/types/cdn/statistic_get_resource_usage_aggregated_params.py +151 -0
- gcore/types/cdn/statistic_get_resource_usage_series_params.py +131 -0
- gcore/types/cdn/statistic_get_shield_usage_aggregated_params.py +42 -0
- gcore/types/cdn/statistic_get_shield_usage_series_params.py +25 -0
- gcore/types/cdn/trusted_ca_certificate_create_params.py +23 -0
- gcore/types/cdn/trusted_ca_certificate_list_params.py +29 -0
- gcore/types/cdn/trusted_ca_certificate_replace_params.py +15 -0
- gcore/types/cdn/usage_series_stats.py +31 -0
- gcore/types/cloud/__init__.py +1 -0
- gcore/types/cloud/file_share.py +4 -0
- gcore/types/cloud/file_share_create_params.py +20 -0
- gcore/types/cloud/file_share_update_params.py +40 -3
- gcore/types/cloud/floating_ip_update_params.py +3 -1
- gcore/types/cloud/gpu_baremetal_cluster_action_params.py +46 -0
- gcore/types/cloud/inference/inference_deployment.py +3 -1
- gcore/types/cloud/instance_create_params.py +3 -1
- gcore/types/cloud/k8s/cluster_create_params.py +46 -4
- gcore/types/cloud/k8s/cluster_update_params.py +60 -6
- gcore/types/cloud/k8s/clusters/pool_update_params.py +1 -1
- gcore/types/cloud/k8s/k8s_cluster.py +40 -3
- gcore/types/cloud/load_balancer_update_params.py +3 -1
- gcore/types/cloud/network_update_params.py +3 -1
- gcore/types/cloud/networks/subnet_update_params.py +3 -1
- gcore/types/cloud/registries/user_create_multiple_params.py +5 -3
- gcore/types/cloud/registries/user_create_params.py +5 -3
- gcore/types/cloud/registry_create_params.py +5 -3
- gcore/types/cloud/security_group_update_params.py +3 -1
- gcore/types/cloud/ssh_key_created.py +6 -3
- gcore/types/cloud/volume_update_params.py +3 -1
- gcore/types/dns/zone_get_statistics_params.py +12 -9
- gcore/types/dns/zone_get_statistics_response.py +3 -1
- gcore/types/dns/zone_import_params.py +21 -15
- gcore/types/dns/zones/dns_output_rrset.py +7 -3
- gcore/types/iam/account_overview.py +7 -2
- gcore/types/iam/user.py +7 -2
- gcore/types/iam/user_detailed.py +7 -2
- gcore/types/iam/user_invite_params.py +4 -1
- gcore/types/iam/user_update.py +7 -2
- gcore/types/iam/user_update_params.py +7 -2
- gcore/types/streaming/ai_contentmoderation_hardnudity.py +6 -4
- gcore/types/streaming/ai_contentmoderation_nsfw.py +6 -4
- gcore/types/streaming/ai_contentmoderation_softnudity.py +6 -4
- gcore/types/streaming/ai_contentmoderation_sport.py +6 -4
- gcore/types/streaming/ai_task.py +20 -11
- gcore/types/streaming/ai_task_create_params.py +20 -11
- gcore/types/streaming/ai_task_get_response.py +5 -4
- gcore/types/streaming/ai_task_list_params.py +11 -5
- gcore/types/streaming/clip.py +33 -22
- gcore/types/streaming/create_video_param.py +75 -43
- gcore/types/streaming/playlist.py +7 -5
- gcore/types/streaming/playlist_create_params.py +7 -5
- gcore/types/streaming/playlist_update_params.py +7 -5
- gcore/types/streaming/playlist_video.py +75 -43
- gcore/types/streaming/statistic_get_unique_viewers_cdn_params.py +7 -4
- gcore/types/streaming/stream.py +207 -136
- gcore/types/streaming/stream_create_clip_params.py +33 -22
- gcore/types/streaming/stream_create_params.py +41 -24
- gcore/types/streaming/stream_update_params.py +41 -24
- gcore/types/streaming/video.py +138 -76
- gcore/types/streaming/video_list_params.py +4 -2
- gcore/types/streaming/video_update_params.py +75 -43
- gcore/types/waap/domain_update_params.py +2 -2
- gcore/types/waap/domains/advanced_rule_create_params.py +26 -18
- gcore/types/waap/domains/advanced_rule_list_params.py +10 -7
- gcore/types/waap/domains/advanced_rule_update_params.py +22 -17
- gcore/types/waap/domains/api_path_create_params.py +0 -3
- gcore/types/waap/domains/api_path_update_params.py +1 -3
- gcore/types/waap/domains/custom_rule_create_params.py +36 -35
- gcore/types/waap/domains/custom_rule_update_params.py +31 -33
- gcore/types/waap/domains/firewall_rule_create_params.py +6 -6
- gcore/types/waap/domains/firewall_rule_update_params.py +5 -5
- gcore/types/waap/domains/waap_advanced_rule.py +17 -9
- gcore/types/waap/domains/waap_custom_rule.py +5 -2
- gcore/types/waap/domains/waap_firewall_rule.py +1 -1
- gcore/types/waap/domains/waap_insight.py +1 -1
- gcore/types/waap/insight_list_types_params.py +1 -1
- {gcore-0.13.0.dist-info → gcore-0.14.0.dist-info}/METADATA +1 -1
- {gcore-0.13.0.dist-info → gcore-0.14.0.dist-info}/RECORD +334 -214
- {gcore-0.13.0.dist-info → gcore-0.14.0.dist-info}/WHEEL +0 -0
- {gcore-0.13.0.dist-info → gcore-0.14.0.dist-info}/licenses/LICENSE +0 -0
|
@@ -7,7 +7,7 @@ from typing_extensions import Literal
|
|
|
7
7
|
|
|
8
8
|
import httpx
|
|
9
9
|
|
|
10
|
-
from ...._types import
|
|
10
|
+
from ...._types import Body, Omit, Query, Headers, NotGiven, omit, not_given
|
|
11
11
|
from ...._utils import maybe_transform, async_maybe_transform
|
|
12
12
|
from ...._compat import cached_property
|
|
13
13
|
from ...._resource import SyncAPIResource, AsyncAPIResource
|
|
@@ -58,15 +58,15 @@ class RrsetsResource(SyncAPIResource):
|
|
|
58
58
|
zone_name: str,
|
|
59
59
|
rrset_name: str,
|
|
60
60
|
resource_records: Iterable[rrset_create_params.ResourceRecord],
|
|
61
|
-
meta: Dict[str, object] |
|
|
62
|
-
pickers: Iterable[rrset_create_params.Picker] |
|
|
63
|
-
ttl: int |
|
|
61
|
+
meta: Dict[str, object] | Omit = omit,
|
|
62
|
+
pickers: Iterable[rrset_create_params.Picker] | Omit = omit,
|
|
63
|
+
ttl: int | Omit = omit,
|
|
64
64
|
# Use the following arguments if you need to pass additional parameters to the API that aren't available via kwargs.
|
|
65
65
|
# The extra values given here take precedence over values defined on the client or passed to this method.
|
|
66
66
|
extra_headers: Headers | None = None,
|
|
67
67
|
extra_query: Query | None = None,
|
|
68
68
|
extra_body: Body | None = None,
|
|
69
|
-
timeout: float | httpx.Timeout | None | NotGiven =
|
|
69
|
+
timeout: float | httpx.Timeout | None | NotGiven = not_given,
|
|
70
70
|
) -> DNSOutputRrset:
|
|
71
71
|
"""
|
|
72
72
|
Add the RRSet to the zone specified by zoneName, RRSets can be configured to be
|
|
@@ -86,9 +86,11 @@ class RrsetsResource(SyncAPIResource):
|
|
|
86
86
|
determined by EDNS Client Subnet (ECS) if defined, otherwise - by
|
|
87
87
|
client/recursor IP. Selector pickers are used in the specified order until the
|
|
88
88
|
first match, in case of match - all next selectors are bypassed. Filters or
|
|
89
|
-
mutators are applied to the match according to the order they are specified.
|
|
90
|
-
|
|
91
|
-
|
|
89
|
+
mutators are applied to the match according to the order they are specified.
|
|
90
|
+
|
|
91
|
+
For example, sort records by proximity to user, shuffle based on weights and
|
|
92
|
+
return not more than 3:
|
|
93
|
+
|
|
92
94
|
`"pickers": [ { "type": "geodistance" }, { "type": "`weighted_shuffle`" }, { "type": "`first_n`", "limit": 3 } ]`
|
|
93
95
|
|
|
94
96
|
#### geodns filter
|
|
@@ -103,11 +105,14 @@ class RrsetsResource(SyncAPIResource):
|
|
|
103
105
|
- `regions` - list of region codes, e.g. `["de-bw", "de-by"]`;
|
|
104
106
|
- `countries` - list of country codes, e.g. `["de", "lu", "lt"]`;
|
|
105
107
|
- `continents` - list of continent codes, e.g.
|
|
106
|
-
`["af", "an", "eu", "as", "na", "sa", "oc"]`.
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
|
|
108
|
+
`["af", "an", "eu", "as", "na", "sa", "oc"]`.
|
|
109
|
+
|
|
110
|
+
If there is a record (or multiple) with metadata matched IP, it's used as a
|
|
111
|
+
response. If not - asn, then country and then continent are checked for a match.
|
|
112
|
+
If there is no match, then the behaviour is defined by _strict_ parameter of the
|
|
113
|
+
filter.
|
|
114
|
+
|
|
115
|
+
Example: `"pickers": [ { "type": "geodns", "strict": true } ]`
|
|
111
116
|
|
|
112
117
|
##### Strict parameter
|
|
113
118
|
|
|
@@ -119,41 +124,50 @@ class RrsetsResource(SyncAPIResource):
|
|
|
119
124
|
|
|
120
125
|
Resource records which ASN metadata matches ASN of the requestor are picked by
|
|
121
126
|
this selector, and passed to the next non-selector picker, if there is no
|
|
122
|
-
match - next configured picker starts with all records.
|
|
123
|
-
|
|
127
|
+
match - next configured picker starts with all records.
|
|
128
|
+
|
|
129
|
+
Example: `"pickers": [ {"type": "asn"} ]`
|
|
124
130
|
|
|
125
131
|
#### country selector
|
|
126
132
|
|
|
127
133
|
Resource records which country metadata matches country of the requestor are
|
|
128
134
|
picked by this selector, and passed to the next non-selector picker, if there is
|
|
129
|
-
no match - next configured picker starts with all records.
|
|
130
|
-
|
|
135
|
+
no match - next configured picker starts with all records.
|
|
136
|
+
|
|
137
|
+
Example: `"pickers": [ { "type": "country" } ]`
|
|
131
138
|
|
|
132
139
|
#### continent selector
|
|
133
140
|
|
|
134
141
|
Resource records which continent metadata matches continent of the requestor are
|
|
135
142
|
picked by this selector, and passed to the next non-selector picker, if there is
|
|
136
|
-
no match - next configured picker starts with all records.
|
|
137
|
-
|
|
143
|
+
no match - next configured picker starts with all records.
|
|
144
|
+
|
|
145
|
+
Example: `"pickers": [ { "type": "continent" } ]`
|
|
138
146
|
|
|
139
147
|
#### region selector
|
|
140
148
|
|
|
141
149
|
Resource records which region metadata matches region of the requestor are
|
|
142
150
|
picked by this selector, and passed to the next non-selector picker, if there is
|
|
143
151
|
no match - next configured picker starts with all records. e.g. `fr-nor` for
|
|
144
|
-
France/Normandy.
|
|
152
|
+
France/Normandy.
|
|
153
|
+
|
|
154
|
+
Example: `"pickers": [ { "type": "region" } ]`
|
|
145
155
|
|
|
146
156
|
#### ip selector
|
|
147
157
|
|
|
148
158
|
Resource records which IP metadata matches IP of the requestor are picked by
|
|
149
159
|
this selector, and passed to the next non-selector picker, if there is no
|
|
150
160
|
match - next configured picker starts with all records. Maximum 100 subnets are
|
|
151
|
-
allowed to specify in meta of RR.
|
|
161
|
+
allowed to specify in meta of RR.
|
|
162
|
+
|
|
163
|
+
Example: `"pickers": [ { "type": "ip" } ]`
|
|
152
164
|
|
|
153
165
|
#### default selector
|
|
154
166
|
|
|
155
167
|
When enabled, records marked as default are selected:
|
|
156
|
-
`"meta": {"default": true}`.
|
|
168
|
+
`"meta": {"default": true}`.
|
|
169
|
+
|
|
170
|
+
Example:
|
|
157
171
|
`"pickers": [ { "type": "geodns", "strict": false }, { "type": "default" }, { "type": "`first_n`", "limit": 2 } ]`
|
|
158
172
|
|
|
159
173
|
#### geodistance mutator
|
|
@@ -162,19 +176,22 @@ class RrsetsResource(SyncAPIResource):
|
|
|
162
176
|
meters) from requestor to the coordinates specified in latlong metadata.
|
|
163
177
|
Distance is calculated using Haversine formula. The "nearest" to the user's IP
|
|
164
178
|
RR goes first. The records without latlong metadata come last. e.g. for Berlin
|
|
165
|
-
`[52.520008, 13.404954]`.;
|
|
166
|
-
|
|
179
|
+
`[52.520008, 13.404954]`.;
|
|
180
|
+
|
|
181
|
+
In this configuration the only "nearest" to the requestor record to be returned:
|
|
167
182
|
`"pickers": [ { "type": "geodistance" }, { "type": "`first_n`", "limit": 1 } ]`
|
|
168
183
|
|
|
169
184
|
#### `weighted_shuffle` mutator
|
|
170
185
|
|
|
171
186
|
The resource records are rearranged in random order based on the `weight`
|
|
172
|
-
metadata. Default weight (if not specified) is 50.
|
|
173
|
-
|
|
187
|
+
metadata. Default weight (if not specified) is 50.
|
|
188
|
+
|
|
189
|
+
Example: `"pickers": [ { "type": "`weighted_shuffle`" } ]`
|
|
174
190
|
|
|
175
191
|
#### `first_n` filter
|
|
176
192
|
|
|
177
193
|
Slices first N (N specified as a limit parameter value) resource records.
|
|
194
|
+
|
|
178
195
|
Example: `"pickers": [ { "type": "`first_n`", "limit": 1 } ]` returns only the
|
|
179
196
|
first resource record.
|
|
180
197
|
|
|
@@ -205,7 +222,9 @@ class RrsetsResource(SyncAPIResource):
|
|
|
205
222
|
if not rrset_type:
|
|
206
223
|
raise ValueError(f"Expected a non-empty value for `rrset_type` but received {rrset_type!r}")
|
|
207
224
|
return self._post(
|
|
208
|
-
f"/dns/v2/zones/{zone_name}/{rrset_name}/{rrset_type}"
|
|
225
|
+
f"/dns/v2/zones/{zone_name}/{rrset_name}/{rrset_type}"
|
|
226
|
+
if self._client._base_url_overridden
|
|
227
|
+
else f"https://api.gcore.com//dns/v2/zones/{zone_name}/{rrset_name}/{rrset_type}",
|
|
209
228
|
body=maybe_transform(
|
|
210
229
|
{
|
|
211
230
|
"resource_records": resource_records,
|
|
@@ -225,16 +244,16 @@ class RrsetsResource(SyncAPIResource):
|
|
|
225
244
|
self,
|
|
226
245
|
zone_name: str,
|
|
227
246
|
*,
|
|
228
|
-
limit: int |
|
|
229
|
-
offset: int |
|
|
230
|
-
order_by: str |
|
|
231
|
-
order_direction: Literal["asc", "desc"] |
|
|
247
|
+
limit: int | Omit = omit,
|
|
248
|
+
offset: int | Omit = omit,
|
|
249
|
+
order_by: str | Omit = omit,
|
|
250
|
+
order_direction: Literal["asc", "desc"] | Omit = omit,
|
|
232
251
|
# Use the following arguments if you need to pass additional parameters to the API that aren't available via kwargs.
|
|
233
252
|
# The extra values given here take precedence over values defined on the client or passed to this method.
|
|
234
253
|
extra_headers: Headers | None = None,
|
|
235
254
|
extra_query: Query | None = None,
|
|
236
255
|
extra_body: Body | None = None,
|
|
237
|
-
timeout: float | httpx.Timeout | None | NotGiven =
|
|
256
|
+
timeout: float | httpx.Timeout | None | NotGiven = not_given,
|
|
238
257
|
) -> RrsetListResponse:
|
|
239
258
|
"""
|
|
240
259
|
List of RRset.
|
|
@@ -259,7 +278,9 @@ class RrsetsResource(SyncAPIResource):
|
|
|
259
278
|
if not zone_name:
|
|
260
279
|
raise ValueError(f"Expected a non-empty value for `zone_name` but received {zone_name!r}")
|
|
261
280
|
return self._get(
|
|
262
|
-
f"/dns/v2/zones/{zone_name}/rrsets"
|
|
281
|
+
f"/dns/v2/zones/{zone_name}/rrsets"
|
|
282
|
+
if self._client._base_url_overridden
|
|
283
|
+
else f"https://api.gcore.com//dns/v2/zones/{zone_name}/rrsets",
|
|
263
284
|
options=make_request_options(
|
|
264
285
|
extra_headers=extra_headers,
|
|
265
286
|
extra_query=extra_query,
|
|
@@ -289,7 +310,7 @@ class RrsetsResource(SyncAPIResource):
|
|
|
289
310
|
extra_headers: Headers | None = None,
|
|
290
311
|
extra_query: Query | None = None,
|
|
291
312
|
extra_body: Body | None = None,
|
|
292
|
-
timeout: float | httpx.Timeout | None | NotGiven =
|
|
313
|
+
timeout: float | httpx.Timeout | None | NotGiven = not_given,
|
|
293
314
|
) -> object:
|
|
294
315
|
"""
|
|
295
316
|
Delete RRset.
|
|
@@ -310,7 +331,9 @@ class RrsetsResource(SyncAPIResource):
|
|
|
310
331
|
if not rrset_type:
|
|
311
332
|
raise ValueError(f"Expected a non-empty value for `rrset_type` but received {rrset_type!r}")
|
|
312
333
|
return self._delete(
|
|
313
|
-
f"/dns/v2/zones/{zone_name}/{rrset_name}/{rrset_type}"
|
|
334
|
+
f"/dns/v2/zones/{zone_name}/{rrset_name}/{rrset_type}"
|
|
335
|
+
if self._client._base_url_overridden
|
|
336
|
+
else f"https://api.gcore.com//dns/v2/zones/{zone_name}/{rrset_name}/{rrset_type}",
|
|
314
337
|
options=make_request_options(
|
|
315
338
|
extra_headers=extra_headers, extra_query=extra_query, extra_body=extra_body, timeout=timeout
|
|
316
339
|
),
|
|
@@ -328,7 +351,7 @@ class RrsetsResource(SyncAPIResource):
|
|
|
328
351
|
extra_headers: Headers | None = None,
|
|
329
352
|
extra_query: Query | None = None,
|
|
330
353
|
extra_body: Body | None = None,
|
|
331
|
-
timeout: float | httpx.Timeout | None | NotGiven =
|
|
354
|
+
timeout: float | httpx.Timeout | None | NotGiven = not_given,
|
|
332
355
|
) -> DNSOutputRrset:
|
|
333
356
|
"""
|
|
334
357
|
Particular RRset item info
|
|
@@ -349,7 +372,9 @@ class RrsetsResource(SyncAPIResource):
|
|
|
349
372
|
if not rrset_type:
|
|
350
373
|
raise ValueError(f"Expected a non-empty value for `rrset_type` but received {rrset_type!r}")
|
|
351
374
|
return self._get(
|
|
352
|
-
f"/dns/v2/zones/{zone_name}/{rrset_name}/{rrset_type}"
|
|
375
|
+
f"/dns/v2/zones/{zone_name}/{rrset_name}/{rrset_type}"
|
|
376
|
+
if self._client._base_url_overridden
|
|
377
|
+
else f"https://api.gcore.com//dns/v2/zones/{zone_name}/{rrset_name}/{rrset_type}",
|
|
353
378
|
options=make_request_options(
|
|
354
379
|
extra_headers=extra_headers, extra_query=extra_query, extra_body=extra_body, timeout=timeout
|
|
355
380
|
),
|
|
@@ -362,14 +387,14 @@ class RrsetsResource(SyncAPIResource):
|
|
|
362
387
|
*,
|
|
363
388
|
zone_name: str,
|
|
364
389
|
rrset_name: str,
|
|
365
|
-
limit: int |
|
|
366
|
-
offset: int |
|
|
390
|
+
limit: int | Omit = omit,
|
|
391
|
+
offset: int | Omit = omit,
|
|
367
392
|
# Use the following arguments if you need to pass additional parameters to the API that aren't available via kwargs.
|
|
368
393
|
# The extra values given here take precedence over values defined on the client or passed to this method.
|
|
369
394
|
extra_headers: Headers | None = None,
|
|
370
395
|
extra_query: Query | None = None,
|
|
371
396
|
extra_body: Body | None = None,
|
|
372
|
-
timeout: float | httpx.Timeout | None | NotGiven =
|
|
397
|
+
timeout: float | httpx.Timeout | None | NotGiven = not_given,
|
|
373
398
|
) -> RrsetGetFailoverLogsResponse:
|
|
374
399
|
"""
|
|
375
400
|
Get failover history for the RRset
|
|
@@ -394,7 +419,9 @@ class RrsetsResource(SyncAPIResource):
|
|
|
394
419
|
if not rrset_type:
|
|
395
420
|
raise ValueError(f"Expected a non-empty value for `rrset_type` but received {rrset_type!r}")
|
|
396
421
|
return self._get(
|
|
397
|
-
f"/dns/v2/zones/{zone_name}/{rrset_name}/{rrset_type}/failover/log"
|
|
422
|
+
f"/dns/v2/zones/{zone_name}/{rrset_name}/{rrset_type}/failover/log"
|
|
423
|
+
if self._client._base_url_overridden
|
|
424
|
+
else f"https://api.gcore.com//dns/v2/zones/{zone_name}/{rrset_name}/{rrset_type}/failover/log",
|
|
398
425
|
options=make_request_options(
|
|
399
426
|
extra_headers=extra_headers,
|
|
400
427
|
extra_query=extra_query,
|
|
@@ -418,15 +445,15 @@ class RrsetsResource(SyncAPIResource):
|
|
|
418
445
|
zone_name: str,
|
|
419
446
|
rrset_name: str,
|
|
420
447
|
resource_records: Iterable[rrset_replace_params.ResourceRecord],
|
|
421
|
-
meta: Dict[str, object] |
|
|
422
|
-
pickers: Iterable[rrset_replace_params.Picker] |
|
|
423
|
-
ttl: int |
|
|
448
|
+
meta: Dict[str, object] | Omit = omit,
|
|
449
|
+
pickers: Iterable[rrset_replace_params.Picker] | Omit = omit,
|
|
450
|
+
ttl: int | Omit = omit,
|
|
424
451
|
# Use the following arguments if you need to pass additional parameters to the API that aren't available via kwargs.
|
|
425
452
|
# The extra values given here take precedence over values defined on the client or passed to this method.
|
|
426
453
|
extra_headers: Headers | None = None,
|
|
427
454
|
extra_query: Query | None = None,
|
|
428
455
|
extra_body: Body | None = None,
|
|
429
|
-
timeout: float | httpx.Timeout | None | NotGiven =
|
|
456
|
+
timeout: float | httpx.Timeout | None | NotGiven = not_given,
|
|
430
457
|
) -> DNSOutputRrset:
|
|
431
458
|
"""
|
|
432
459
|
Create/update RRset.
|
|
@@ -453,7 +480,9 @@ class RrsetsResource(SyncAPIResource):
|
|
|
453
480
|
if not rrset_type:
|
|
454
481
|
raise ValueError(f"Expected a non-empty value for `rrset_type` but received {rrset_type!r}")
|
|
455
482
|
return self._put(
|
|
456
|
-
f"/dns/v2/zones/{zone_name}/{rrset_name}/{rrset_type}"
|
|
483
|
+
f"/dns/v2/zones/{zone_name}/{rrset_name}/{rrset_type}"
|
|
484
|
+
if self._client._base_url_overridden
|
|
485
|
+
else f"https://api.gcore.com//dns/v2/zones/{zone_name}/{rrset_name}/{rrset_type}",
|
|
457
486
|
body=maybe_transform(
|
|
458
487
|
{
|
|
459
488
|
"resource_records": resource_records,
|
|
@@ -497,15 +526,15 @@ class AsyncRrsetsResource(AsyncAPIResource):
|
|
|
497
526
|
zone_name: str,
|
|
498
527
|
rrset_name: str,
|
|
499
528
|
resource_records: Iterable[rrset_create_params.ResourceRecord],
|
|
500
|
-
meta: Dict[str, object] |
|
|
501
|
-
pickers: Iterable[rrset_create_params.Picker] |
|
|
502
|
-
ttl: int |
|
|
529
|
+
meta: Dict[str, object] | Omit = omit,
|
|
530
|
+
pickers: Iterable[rrset_create_params.Picker] | Omit = omit,
|
|
531
|
+
ttl: int | Omit = omit,
|
|
503
532
|
# Use the following arguments if you need to pass additional parameters to the API that aren't available via kwargs.
|
|
504
533
|
# The extra values given here take precedence over values defined on the client or passed to this method.
|
|
505
534
|
extra_headers: Headers | None = None,
|
|
506
535
|
extra_query: Query | None = None,
|
|
507
536
|
extra_body: Body | None = None,
|
|
508
|
-
timeout: float | httpx.Timeout | None | NotGiven =
|
|
537
|
+
timeout: float | httpx.Timeout | None | NotGiven = not_given,
|
|
509
538
|
) -> DNSOutputRrset:
|
|
510
539
|
"""
|
|
511
540
|
Add the RRSet to the zone specified by zoneName, RRSets can be configured to be
|
|
@@ -525,9 +554,11 @@ class AsyncRrsetsResource(AsyncAPIResource):
|
|
|
525
554
|
determined by EDNS Client Subnet (ECS) if defined, otherwise - by
|
|
526
555
|
client/recursor IP. Selector pickers are used in the specified order until the
|
|
527
556
|
first match, in case of match - all next selectors are bypassed. Filters or
|
|
528
|
-
mutators are applied to the match according to the order they are specified.
|
|
529
|
-
|
|
530
|
-
|
|
557
|
+
mutators are applied to the match according to the order they are specified.
|
|
558
|
+
|
|
559
|
+
For example, sort records by proximity to user, shuffle based on weights and
|
|
560
|
+
return not more than 3:
|
|
561
|
+
|
|
531
562
|
`"pickers": [ { "type": "geodistance" }, { "type": "`weighted_shuffle`" }, { "type": "`first_n`", "limit": 3 } ]`
|
|
532
563
|
|
|
533
564
|
#### geodns filter
|
|
@@ -542,11 +573,14 @@ class AsyncRrsetsResource(AsyncAPIResource):
|
|
|
542
573
|
- `regions` - list of region codes, e.g. `["de-bw", "de-by"]`;
|
|
543
574
|
- `countries` - list of country codes, e.g. `["de", "lu", "lt"]`;
|
|
544
575
|
- `continents` - list of continent codes, e.g.
|
|
545
|
-
`["af", "an", "eu", "as", "na", "sa", "oc"]`.
|
|
546
|
-
|
|
547
|
-
|
|
548
|
-
|
|
549
|
-
|
|
576
|
+
`["af", "an", "eu", "as", "na", "sa", "oc"]`.
|
|
577
|
+
|
|
578
|
+
If there is a record (or multiple) with metadata matched IP, it's used as a
|
|
579
|
+
response. If not - asn, then country and then continent are checked for a match.
|
|
580
|
+
If there is no match, then the behaviour is defined by _strict_ parameter of the
|
|
581
|
+
filter.
|
|
582
|
+
|
|
583
|
+
Example: `"pickers": [ { "type": "geodns", "strict": true } ]`
|
|
550
584
|
|
|
551
585
|
##### Strict parameter
|
|
552
586
|
|
|
@@ -558,41 +592,50 @@ class AsyncRrsetsResource(AsyncAPIResource):
|
|
|
558
592
|
|
|
559
593
|
Resource records which ASN metadata matches ASN of the requestor are picked by
|
|
560
594
|
this selector, and passed to the next non-selector picker, if there is no
|
|
561
|
-
match - next configured picker starts with all records.
|
|
562
|
-
|
|
595
|
+
match - next configured picker starts with all records.
|
|
596
|
+
|
|
597
|
+
Example: `"pickers": [ {"type": "asn"} ]`
|
|
563
598
|
|
|
564
599
|
#### country selector
|
|
565
600
|
|
|
566
601
|
Resource records which country metadata matches country of the requestor are
|
|
567
602
|
picked by this selector, and passed to the next non-selector picker, if there is
|
|
568
|
-
no match - next configured picker starts with all records.
|
|
569
|
-
|
|
603
|
+
no match - next configured picker starts with all records.
|
|
604
|
+
|
|
605
|
+
Example: `"pickers": [ { "type": "country" } ]`
|
|
570
606
|
|
|
571
607
|
#### continent selector
|
|
572
608
|
|
|
573
609
|
Resource records which continent metadata matches continent of the requestor are
|
|
574
610
|
picked by this selector, and passed to the next non-selector picker, if there is
|
|
575
|
-
no match - next configured picker starts with all records.
|
|
576
|
-
|
|
611
|
+
no match - next configured picker starts with all records.
|
|
612
|
+
|
|
613
|
+
Example: `"pickers": [ { "type": "continent" } ]`
|
|
577
614
|
|
|
578
615
|
#### region selector
|
|
579
616
|
|
|
580
617
|
Resource records which region metadata matches region of the requestor are
|
|
581
618
|
picked by this selector, and passed to the next non-selector picker, if there is
|
|
582
619
|
no match - next configured picker starts with all records. e.g. `fr-nor` for
|
|
583
|
-
France/Normandy.
|
|
620
|
+
France/Normandy.
|
|
621
|
+
|
|
622
|
+
Example: `"pickers": [ { "type": "region" } ]`
|
|
584
623
|
|
|
585
624
|
#### ip selector
|
|
586
625
|
|
|
587
626
|
Resource records which IP metadata matches IP of the requestor are picked by
|
|
588
627
|
this selector, and passed to the next non-selector picker, if there is no
|
|
589
628
|
match - next configured picker starts with all records. Maximum 100 subnets are
|
|
590
|
-
allowed to specify in meta of RR.
|
|
629
|
+
allowed to specify in meta of RR.
|
|
630
|
+
|
|
631
|
+
Example: `"pickers": [ { "type": "ip" } ]`
|
|
591
632
|
|
|
592
633
|
#### default selector
|
|
593
634
|
|
|
594
635
|
When enabled, records marked as default are selected:
|
|
595
|
-
`"meta": {"default": true}`.
|
|
636
|
+
`"meta": {"default": true}`.
|
|
637
|
+
|
|
638
|
+
Example:
|
|
596
639
|
`"pickers": [ { "type": "geodns", "strict": false }, { "type": "default" }, { "type": "`first_n`", "limit": 2 } ]`
|
|
597
640
|
|
|
598
641
|
#### geodistance mutator
|
|
@@ -601,19 +644,22 @@ class AsyncRrsetsResource(AsyncAPIResource):
|
|
|
601
644
|
meters) from requestor to the coordinates specified in latlong metadata.
|
|
602
645
|
Distance is calculated using Haversine formula. The "nearest" to the user's IP
|
|
603
646
|
RR goes first. The records without latlong metadata come last. e.g. for Berlin
|
|
604
|
-
`[52.520008, 13.404954]`.;
|
|
605
|
-
|
|
647
|
+
`[52.520008, 13.404954]`.;
|
|
648
|
+
|
|
649
|
+
In this configuration the only "nearest" to the requestor record to be returned:
|
|
606
650
|
`"pickers": [ { "type": "geodistance" }, { "type": "`first_n`", "limit": 1 } ]`
|
|
607
651
|
|
|
608
652
|
#### `weighted_shuffle` mutator
|
|
609
653
|
|
|
610
654
|
The resource records are rearranged in random order based on the `weight`
|
|
611
|
-
metadata. Default weight (if not specified) is 50.
|
|
612
|
-
|
|
655
|
+
metadata. Default weight (if not specified) is 50.
|
|
656
|
+
|
|
657
|
+
Example: `"pickers": [ { "type": "`weighted_shuffle`" } ]`
|
|
613
658
|
|
|
614
659
|
#### `first_n` filter
|
|
615
660
|
|
|
616
661
|
Slices first N (N specified as a limit parameter value) resource records.
|
|
662
|
+
|
|
617
663
|
Example: `"pickers": [ { "type": "`first_n`", "limit": 1 } ]` returns only the
|
|
618
664
|
first resource record.
|
|
619
665
|
|
|
@@ -644,7 +690,9 @@ class AsyncRrsetsResource(AsyncAPIResource):
|
|
|
644
690
|
if not rrset_type:
|
|
645
691
|
raise ValueError(f"Expected a non-empty value for `rrset_type` but received {rrset_type!r}")
|
|
646
692
|
return await self._post(
|
|
647
|
-
f"/dns/v2/zones/{zone_name}/{rrset_name}/{rrset_type}"
|
|
693
|
+
f"/dns/v2/zones/{zone_name}/{rrset_name}/{rrset_type}"
|
|
694
|
+
if self._client._base_url_overridden
|
|
695
|
+
else f"https://api.gcore.com//dns/v2/zones/{zone_name}/{rrset_name}/{rrset_type}",
|
|
648
696
|
body=await async_maybe_transform(
|
|
649
697
|
{
|
|
650
698
|
"resource_records": resource_records,
|
|
@@ -664,16 +712,16 @@ class AsyncRrsetsResource(AsyncAPIResource):
|
|
|
664
712
|
self,
|
|
665
713
|
zone_name: str,
|
|
666
714
|
*,
|
|
667
|
-
limit: int |
|
|
668
|
-
offset: int |
|
|
669
|
-
order_by: str |
|
|
670
|
-
order_direction: Literal["asc", "desc"] |
|
|
715
|
+
limit: int | Omit = omit,
|
|
716
|
+
offset: int | Omit = omit,
|
|
717
|
+
order_by: str | Omit = omit,
|
|
718
|
+
order_direction: Literal["asc", "desc"] | Omit = omit,
|
|
671
719
|
# Use the following arguments if you need to pass additional parameters to the API that aren't available via kwargs.
|
|
672
720
|
# The extra values given here take precedence over values defined on the client or passed to this method.
|
|
673
721
|
extra_headers: Headers | None = None,
|
|
674
722
|
extra_query: Query | None = None,
|
|
675
723
|
extra_body: Body | None = None,
|
|
676
|
-
timeout: float | httpx.Timeout | None | NotGiven =
|
|
724
|
+
timeout: float | httpx.Timeout | None | NotGiven = not_given,
|
|
677
725
|
) -> RrsetListResponse:
|
|
678
726
|
"""
|
|
679
727
|
List of RRset.
|
|
@@ -698,7 +746,9 @@ class AsyncRrsetsResource(AsyncAPIResource):
|
|
|
698
746
|
if not zone_name:
|
|
699
747
|
raise ValueError(f"Expected a non-empty value for `zone_name` but received {zone_name!r}")
|
|
700
748
|
return await self._get(
|
|
701
|
-
f"/dns/v2/zones/{zone_name}/rrsets"
|
|
749
|
+
f"/dns/v2/zones/{zone_name}/rrsets"
|
|
750
|
+
if self._client._base_url_overridden
|
|
751
|
+
else f"https://api.gcore.com//dns/v2/zones/{zone_name}/rrsets",
|
|
702
752
|
options=make_request_options(
|
|
703
753
|
extra_headers=extra_headers,
|
|
704
754
|
extra_query=extra_query,
|
|
@@ -728,7 +778,7 @@ class AsyncRrsetsResource(AsyncAPIResource):
|
|
|
728
778
|
extra_headers: Headers | None = None,
|
|
729
779
|
extra_query: Query | None = None,
|
|
730
780
|
extra_body: Body | None = None,
|
|
731
|
-
timeout: float | httpx.Timeout | None | NotGiven =
|
|
781
|
+
timeout: float | httpx.Timeout | None | NotGiven = not_given,
|
|
732
782
|
) -> object:
|
|
733
783
|
"""
|
|
734
784
|
Delete RRset.
|
|
@@ -749,7 +799,9 @@ class AsyncRrsetsResource(AsyncAPIResource):
|
|
|
749
799
|
if not rrset_type:
|
|
750
800
|
raise ValueError(f"Expected a non-empty value for `rrset_type` but received {rrset_type!r}")
|
|
751
801
|
return await self._delete(
|
|
752
|
-
f"/dns/v2/zones/{zone_name}/{rrset_name}/{rrset_type}"
|
|
802
|
+
f"/dns/v2/zones/{zone_name}/{rrset_name}/{rrset_type}"
|
|
803
|
+
if self._client._base_url_overridden
|
|
804
|
+
else f"https://api.gcore.com//dns/v2/zones/{zone_name}/{rrset_name}/{rrset_type}",
|
|
753
805
|
options=make_request_options(
|
|
754
806
|
extra_headers=extra_headers, extra_query=extra_query, extra_body=extra_body, timeout=timeout
|
|
755
807
|
),
|
|
@@ -767,7 +819,7 @@ class AsyncRrsetsResource(AsyncAPIResource):
|
|
|
767
819
|
extra_headers: Headers | None = None,
|
|
768
820
|
extra_query: Query | None = None,
|
|
769
821
|
extra_body: Body | None = None,
|
|
770
|
-
timeout: float | httpx.Timeout | None | NotGiven =
|
|
822
|
+
timeout: float | httpx.Timeout | None | NotGiven = not_given,
|
|
771
823
|
) -> DNSOutputRrset:
|
|
772
824
|
"""
|
|
773
825
|
Particular RRset item info
|
|
@@ -788,7 +840,9 @@ class AsyncRrsetsResource(AsyncAPIResource):
|
|
|
788
840
|
if not rrset_type:
|
|
789
841
|
raise ValueError(f"Expected a non-empty value for `rrset_type` but received {rrset_type!r}")
|
|
790
842
|
return await self._get(
|
|
791
|
-
f"/dns/v2/zones/{zone_name}/{rrset_name}/{rrset_type}"
|
|
843
|
+
f"/dns/v2/zones/{zone_name}/{rrset_name}/{rrset_type}"
|
|
844
|
+
if self._client._base_url_overridden
|
|
845
|
+
else f"https://api.gcore.com//dns/v2/zones/{zone_name}/{rrset_name}/{rrset_type}",
|
|
792
846
|
options=make_request_options(
|
|
793
847
|
extra_headers=extra_headers, extra_query=extra_query, extra_body=extra_body, timeout=timeout
|
|
794
848
|
),
|
|
@@ -801,14 +855,14 @@ class AsyncRrsetsResource(AsyncAPIResource):
|
|
|
801
855
|
*,
|
|
802
856
|
zone_name: str,
|
|
803
857
|
rrset_name: str,
|
|
804
|
-
limit: int |
|
|
805
|
-
offset: int |
|
|
858
|
+
limit: int | Omit = omit,
|
|
859
|
+
offset: int | Omit = omit,
|
|
806
860
|
# Use the following arguments if you need to pass additional parameters to the API that aren't available via kwargs.
|
|
807
861
|
# The extra values given here take precedence over values defined on the client or passed to this method.
|
|
808
862
|
extra_headers: Headers | None = None,
|
|
809
863
|
extra_query: Query | None = None,
|
|
810
864
|
extra_body: Body | None = None,
|
|
811
|
-
timeout: float | httpx.Timeout | None | NotGiven =
|
|
865
|
+
timeout: float | httpx.Timeout | None | NotGiven = not_given,
|
|
812
866
|
) -> RrsetGetFailoverLogsResponse:
|
|
813
867
|
"""
|
|
814
868
|
Get failover history for the RRset
|
|
@@ -833,7 +887,9 @@ class AsyncRrsetsResource(AsyncAPIResource):
|
|
|
833
887
|
if not rrset_type:
|
|
834
888
|
raise ValueError(f"Expected a non-empty value for `rrset_type` but received {rrset_type!r}")
|
|
835
889
|
return await self._get(
|
|
836
|
-
f"/dns/v2/zones/{zone_name}/{rrset_name}/{rrset_type}/failover/log"
|
|
890
|
+
f"/dns/v2/zones/{zone_name}/{rrset_name}/{rrset_type}/failover/log"
|
|
891
|
+
if self._client._base_url_overridden
|
|
892
|
+
else f"https://api.gcore.com//dns/v2/zones/{zone_name}/{rrset_name}/{rrset_type}/failover/log",
|
|
837
893
|
options=make_request_options(
|
|
838
894
|
extra_headers=extra_headers,
|
|
839
895
|
extra_query=extra_query,
|
|
@@ -857,15 +913,15 @@ class AsyncRrsetsResource(AsyncAPIResource):
|
|
|
857
913
|
zone_name: str,
|
|
858
914
|
rrset_name: str,
|
|
859
915
|
resource_records: Iterable[rrset_replace_params.ResourceRecord],
|
|
860
|
-
meta: Dict[str, object] |
|
|
861
|
-
pickers: Iterable[rrset_replace_params.Picker] |
|
|
862
|
-
ttl: int |
|
|
916
|
+
meta: Dict[str, object] | Omit = omit,
|
|
917
|
+
pickers: Iterable[rrset_replace_params.Picker] | Omit = omit,
|
|
918
|
+
ttl: int | Omit = omit,
|
|
863
919
|
# Use the following arguments if you need to pass additional parameters to the API that aren't available via kwargs.
|
|
864
920
|
# The extra values given here take precedence over values defined on the client or passed to this method.
|
|
865
921
|
extra_headers: Headers | None = None,
|
|
866
922
|
extra_query: Query | None = None,
|
|
867
923
|
extra_body: Body | None = None,
|
|
868
|
-
timeout: float | httpx.Timeout | None | NotGiven =
|
|
924
|
+
timeout: float | httpx.Timeout | None | NotGiven = not_given,
|
|
869
925
|
) -> DNSOutputRrset:
|
|
870
926
|
"""
|
|
871
927
|
Create/update RRset.
|
|
@@ -892,7 +948,9 @@ class AsyncRrsetsResource(AsyncAPIResource):
|
|
|
892
948
|
if not rrset_type:
|
|
893
949
|
raise ValueError(f"Expected a non-empty value for `rrset_type` but received {rrset_type!r}")
|
|
894
950
|
return await self._put(
|
|
895
|
-
f"/dns/v2/zones/{zone_name}/{rrset_name}/{rrset_type}"
|
|
951
|
+
f"/dns/v2/zones/{zone_name}/{rrset_name}/{rrset_type}"
|
|
952
|
+
if self._client._base_url_overridden
|
|
953
|
+
else f"https://api.gcore.com//dns/v2/zones/{zone_name}/{rrset_name}/{rrset_type}",
|
|
896
954
|
body=await async_maybe_transform(
|
|
897
955
|
{
|
|
898
956
|
"resource_records": resource_records,
|