mirror of
https://github.com/cloudflare/cloudflare-python.git
synced 2026-01-16 23:01:03 +00:00
793 lines
33 KiB
Python
793 lines
33 KiB
Python
# File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
|
|
|
|
from __future__ import annotations
|
|
|
|
from typing import Type, Union, cast
|
|
from datetime import datetime
|
|
from typing_extensions import Literal
|
|
|
|
import httpx
|
|
|
|
from ...._types import Body, Omit, Query, Headers, NotGiven, SequenceNotStr, omit, not_given
|
|
from ...._utils import maybe_transform, async_maybe_transform
|
|
from ...._compat import cached_property
|
|
from ...._resource import SyncAPIResource, AsyncAPIResource
|
|
from ...._response import (
|
|
to_raw_response_wrapper,
|
|
to_streamed_response_wrapper,
|
|
async_to_raw_response_wrapper,
|
|
async_to_streamed_response_wrapper,
|
|
)
|
|
from ...._wrappers import ResultWrapper
|
|
from ...._base_client import make_request_options
|
|
from ....types.radar.as112 import top_edns_params, top_dnssec_params, top_locations_params, top_ip_version_params
|
|
from ....types.radar.as112.top_edns_response import TopEdnsResponse
|
|
from ....types.radar.as112.top_dnssec_response import TopDNSSECResponse
|
|
from ....types.radar.as112.top_locations_response import TopLocationsResponse
|
|
from ....types.radar.as112.top_ip_version_response import TopIPVersionResponse
|
|
|
|
__all__ = ["TopResource", "AsyncTopResource"]
|
|
|
|
|
|
class TopResource(SyncAPIResource):
|
|
@cached_property
|
|
def with_raw_response(self) -> TopResourceWithRawResponse:
|
|
"""
|
|
This property can be used as a prefix for any HTTP method call to return
|
|
the raw response object instead of the parsed content.
|
|
|
|
For more information, see https://www.github.com/cloudflare/cloudflare-python#accessing-raw-response-data-eg-headers
|
|
"""
|
|
return TopResourceWithRawResponse(self)
|
|
|
|
@cached_property
|
|
def with_streaming_response(self) -> TopResourceWithStreamingResponse:
|
|
"""
|
|
An alternative to `.with_raw_response` that doesn't eagerly read the response body.
|
|
|
|
For more information, see https://www.github.com/cloudflare/cloudflare-python#with_streaming_response
|
|
"""
|
|
return TopResourceWithStreamingResponse(self)
|
|
|
|
def dnssec(
|
|
self,
|
|
dnssec: Literal["SUPPORTED", "NOT_SUPPORTED"],
|
|
*,
|
|
continent: SequenceNotStr[str] | Omit = omit,
|
|
date_end: SequenceNotStr[Union[str, datetime]] | Omit = omit,
|
|
date_range: SequenceNotStr[str] | Omit = omit,
|
|
date_start: SequenceNotStr[Union[str, datetime]] | Omit = omit,
|
|
format: Literal["JSON", "CSV"] | Omit = omit,
|
|
limit: int | Omit = omit,
|
|
location: SequenceNotStr[str] | Omit = omit,
|
|
name: SequenceNotStr[str] | Omit = omit,
|
|
# Use the following arguments if you need to pass additional parameters to the API that aren't available via kwargs.
|
|
# The extra values given here take precedence over values defined on the client or passed to this method.
|
|
extra_headers: Headers | None = None,
|
|
extra_query: Query | None = None,
|
|
extra_body: Body | None = None,
|
|
timeout: float | httpx.Timeout | None | NotGiven = not_given,
|
|
) -> TopDNSSECResponse:
|
|
"""
|
|
Retrieves the top locations of DNS queries to AS112 with DNSSEC (DNS Security
|
|
Extensions) support.
|
|
|
|
Args:
|
|
dnssec: DNSSEC (DNS Security Extensions) status.
|
|
|
|
continent: Filters results by continent. Specify a comma-separated list of alpha-2 codes.
|
|
Prefix with `-` to exclude continents from results. For example, `-EU,NA`
|
|
excludes results from EU, but includes results from NA.
|
|
|
|
date_end: End of the date range (inclusive).
|
|
|
|
date_range: Filters results by date range. For example, use `7d` and `7dcontrol` to compare
|
|
this week with the previous week. Use this parameter or set specific start and
|
|
end dates (`dateStart` and `dateEnd` parameters).
|
|
|
|
date_start: Start of the date range.
|
|
|
|
format: Format in which results will be returned.
|
|
|
|
limit: Limits the number of objects returned in the response.
|
|
|
|
location: Filters results by location. Specify a comma-separated list of alpha-2 codes.
|
|
Prefix with `-` to exclude locations from results. For example, `-US,PT`
|
|
excludes results from the US, but includes results from PT.
|
|
|
|
name: Array of names used to label the series in the response.
|
|
|
|
extra_headers: Send extra headers
|
|
|
|
extra_query: Add additional query parameters to the request
|
|
|
|
extra_body: Add additional JSON properties to the request
|
|
|
|
timeout: Override the client-level default timeout for this request, in seconds
|
|
"""
|
|
if not dnssec:
|
|
raise ValueError(f"Expected a non-empty value for `dnssec` but received {dnssec!r}")
|
|
return self._get(
|
|
f"/radar/as112/top/locations/dnssec/{dnssec}",
|
|
options=make_request_options(
|
|
extra_headers=extra_headers,
|
|
extra_query=extra_query,
|
|
extra_body=extra_body,
|
|
timeout=timeout,
|
|
query=maybe_transform(
|
|
{
|
|
"continent": continent,
|
|
"date_end": date_end,
|
|
"date_range": date_range,
|
|
"date_start": date_start,
|
|
"format": format,
|
|
"limit": limit,
|
|
"location": location,
|
|
"name": name,
|
|
},
|
|
top_dnssec_params.TopDNSSECParams,
|
|
),
|
|
post_parser=ResultWrapper[TopDNSSECResponse]._unwrapper,
|
|
),
|
|
cast_to=cast(Type[TopDNSSECResponse], ResultWrapper[TopDNSSECResponse]),
|
|
)
|
|
|
|
def edns(
|
|
self,
|
|
edns: Literal["SUPPORTED", "NOT_SUPPORTED"],
|
|
*,
|
|
continent: SequenceNotStr[str] | Omit = omit,
|
|
date_end: SequenceNotStr[Union[str, datetime]] | Omit = omit,
|
|
date_range: SequenceNotStr[str] | Omit = omit,
|
|
date_start: SequenceNotStr[Union[str, datetime]] | Omit = omit,
|
|
format: Literal["JSON", "CSV"] | Omit = omit,
|
|
limit: int | Omit = omit,
|
|
location: SequenceNotStr[str] | Omit = omit,
|
|
name: SequenceNotStr[str] | Omit = omit,
|
|
# Use the following arguments if you need to pass additional parameters to the API that aren't available via kwargs.
|
|
# The extra values given here take precedence over values defined on the client or passed to this method.
|
|
extra_headers: Headers | None = None,
|
|
extra_query: Query | None = None,
|
|
extra_body: Body | None = None,
|
|
timeout: float | httpx.Timeout | None | NotGiven = not_given,
|
|
) -> TopEdnsResponse:
|
|
"""
|
|
Retrieves the top locations of DNS queries to AS112 with EDNS (Extension
|
|
Mechanisms for DNS) support.
|
|
|
|
Args:
|
|
edns: EDNS (Extension Mechanisms for DNS) status.
|
|
|
|
continent: Filters results by continent. Specify a comma-separated list of alpha-2 codes.
|
|
Prefix with `-` to exclude continents from results. For example, `-EU,NA`
|
|
excludes results from EU, but includes results from NA.
|
|
|
|
date_end: End of the date range (inclusive).
|
|
|
|
date_range: Filters results by date range. For example, use `7d` and `7dcontrol` to compare
|
|
this week with the previous week. Use this parameter or set specific start and
|
|
end dates (`dateStart` and `dateEnd` parameters).
|
|
|
|
date_start: Start of the date range.
|
|
|
|
format: Format in which results will be returned.
|
|
|
|
limit: Limits the number of objects returned in the response.
|
|
|
|
location: Filters results by location. Specify a comma-separated list of alpha-2 codes.
|
|
Prefix with `-` to exclude locations from results. For example, `-US,PT`
|
|
excludes results from the US, but includes results from PT.
|
|
|
|
name: Array of names used to label the series in the response.
|
|
|
|
extra_headers: Send extra headers
|
|
|
|
extra_query: Add additional query parameters to the request
|
|
|
|
extra_body: Add additional JSON properties to the request
|
|
|
|
timeout: Override the client-level default timeout for this request, in seconds
|
|
"""
|
|
if not edns:
|
|
raise ValueError(f"Expected a non-empty value for `edns` but received {edns!r}")
|
|
return self._get(
|
|
f"/radar/as112/top/locations/edns/{edns}",
|
|
options=make_request_options(
|
|
extra_headers=extra_headers,
|
|
extra_query=extra_query,
|
|
extra_body=extra_body,
|
|
timeout=timeout,
|
|
query=maybe_transform(
|
|
{
|
|
"continent": continent,
|
|
"date_end": date_end,
|
|
"date_range": date_range,
|
|
"date_start": date_start,
|
|
"format": format,
|
|
"limit": limit,
|
|
"location": location,
|
|
"name": name,
|
|
},
|
|
top_edns_params.TopEdnsParams,
|
|
),
|
|
post_parser=ResultWrapper[TopEdnsResponse]._unwrapper,
|
|
),
|
|
cast_to=cast(Type[TopEdnsResponse], ResultWrapper[TopEdnsResponse]),
|
|
)
|
|
|
|
def ip_version(
|
|
self,
|
|
ip_version: Literal["IPv4", "IPv6"],
|
|
*,
|
|
continent: SequenceNotStr[str] | Omit = omit,
|
|
date_end: SequenceNotStr[Union[str, datetime]] | Omit = omit,
|
|
date_range: SequenceNotStr[str] | Omit = omit,
|
|
date_start: SequenceNotStr[Union[str, datetime]] | Omit = omit,
|
|
format: Literal["JSON", "CSV"] | Omit = omit,
|
|
limit: int | Omit = omit,
|
|
location: SequenceNotStr[str] | Omit = omit,
|
|
name: SequenceNotStr[str] | Omit = omit,
|
|
# Use the following arguments if you need to pass additional parameters to the API that aren't available via kwargs.
|
|
# The extra values given here take precedence over values defined on the client or passed to this method.
|
|
extra_headers: Headers | None = None,
|
|
extra_query: Query | None = None,
|
|
extra_body: Body | None = None,
|
|
timeout: float | httpx.Timeout | None | NotGiven = not_given,
|
|
) -> TopIPVersionResponse:
|
|
"""
|
|
Retrieves the top locations of DNS queries to AS112 for an IP version.
|
|
|
|
Args:
|
|
ip_version: IP version.
|
|
|
|
continent: Filters results by continent. Specify a comma-separated list of alpha-2 codes.
|
|
Prefix with `-` to exclude continents from results. For example, `-EU,NA`
|
|
excludes results from EU, but includes results from NA.
|
|
|
|
date_end: End of the date range (inclusive).
|
|
|
|
date_range: Filters results by date range. For example, use `7d` and `7dcontrol` to compare
|
|
this week with the previous week. Use this parameter or set specific start and
|
|
end dates (`dateStart` and `dateEnd` parameters).
|
|
|
|
date_start: Start of the date range.
|
|
|
|
format: Format in which results will be returned.
|
|
|
|
limit: Limits the number of objects returned in the response.
|
|
|
|
location: Filters results by location. Specify a comma-separated list of alpha-2 codes.
|
|
Prefix with `-` to exclude locations from results. For example, `-US,PT`
|
|
excludes results from the US, but includes results from PT.
|
|
|
|
name: Array of names used to label the series in the response.
|
|
|
|
extra_headers: Send extra headers
|
|
|
|
extra_query: Add additional query parameters to the request
|
|
|
|
extra_body: Add additional JSON properties to the request
|
|
|
|
timeout: Override the client-level default timeout for this request, in seconds
|
|
"""
|
|
if not ip_version:
|
|
raise ValueError(f"Expected a non-empty value for `ip_version` but received {ip_version!r}")
|
|
return self._get(
|
|
f"/radar/as112/top/locations/ip_version/{ip_version}",
|
|
options=make_request_options(
|
|
extra_headers=extra_headers,
|
|
extra_query=extra_query,
|
|
extra_body=extra_body,
|
|
timeout=timeout,
|
|
query=maybe_transform(
|
|
{
|
|
"continent": continent,
|
|
"date_end": date_end,
|
|
"date_range": date_range,
|
|
"date_start": date_start,
|
|
"format": format,
|
|
"limit": limit,
|
|
"location": location,
|
|
"name": name,
|
|
},
|
|
top_ip_version_params.TopIPVersionParams,
|
|
),
|
|
post_parser=ResultWrapper[TopIPVersionResponse]._unwrapper,
|
|
),
|
|
cast_to=cast(Type[TopIPVersionResponse], ResultWrapper[TopIPVersionResponse]),
|
|
)
|
|
|
|
def locations(
|
|
self,
|
|
*,
|
|
continent: SequenceNotStr[str] | Omit = omit,
|
|
date_end: SequenceNotStr[Union[str, datetime]] | Omit = omit,
|
|
date_range: SequenceNotStr[str] | Omit = omit,
|
|
date_start: SequenceNotStr[Union[str, datetime]] | Omit = omit,
|
|
format: Literal["JSON", "CSV"] | Omit = omit,
|
|
limit: int | Omit = omit,
|
|
location: SequenceNotStr[str] | Omit = omit,
|
|
name: SequenceNotStr[str] | Omit = omit,
|
|
# Use the following arguments if you need to pass additional parameters to the API that aren't available via kwargs.
|
|
# The extra values given here take precedence over values defined on the client or passed to this method.
|
|
extra_headers: Headers | None = None,
|
|
extra_query: Query | None = None,
|
|
extra_body: Body | None = None,
|
|
timeout: float | httpx.Timeout | None | NotGiven = not_given,
|
|
) -> TopLocationsResponse:
|
|
"""
|
|
Retrieves the top locations by AS112 DNS queries.
|
|
|
|
Args:
|
|
continent: Filters results by continent. Specify a comma-separated list of alpha-2 codes.
|
|
Prefix with `-` to exclude continents from results. For example, `-EU,NA`
|
|
excludes results from EU, but includes results from NA.
|
|
|
|
date_end: End of the date range (inclusive).
|
|
|
|
date_range: Filters results by date range. For example, use `7d` and `7dcontrol` to compare
|
|
this week with the previous week. Use this parameter or set specific start and
|
|
end dates (`dateStart` and `dateEnd` parameters).
|
|
|
|
date_start: Start of the date range.
|
|
|
|
format: Format in which results will be returned.
|
|
|
|
limit: Limits the number of objects returned in the response.
|
|
|
|
location: Filters results by location. Specify a comma-separated list of alpha-2 codes.
|
|
Prefix with `-` to exclude locations from results. For example, `-US,PT`
|
|
excludes results from the US, but includes results from PT.
|
|
|
|
name: Array of names used to label the series in the response.
|
|
|
|
extra_headers: Send extra headers
|
|
|
|
extra_query: Add additional query parameters to the request
|
|
|
|
extra_body: Add additional JSON properties to the request
|
|
|
|
timeout: Override the client-level default timeout for this request, in seconds
|
|
"""
|
|
return self._get(
|
|
"/radar/as112/top/locations",
|
|
options=make_request_options(
|
|
extra_headers=extra_headers,
|
|
extra_query=extra_query,
|
|
extra_body=extra_body,
|
|
timeout=timeout,
|
|
query=maybe_transform(
|
|
{
|
|
"continent": continent,
|
|
"date_end": date_end,
|
|
"date_range": date_range,
|
|
"date_start": date_start,
|
|
"format": format,
|
|
"limit": limit,
|
|
"location": location,
|
|
"name": name,
|
|
},
|
|
top_locations_params.TopLocationsParams,
|
|
),
|
|
post_parser=ResultWrapper[TopLocationsResponse]._unwrapper,
|
|
),
|
|
cast_to=cast(Type[TopLocationsResponse], ResultWrapper[TopLocationsResponse]),
|
|
)
|
|
|
|
|
|
class AsyncTopResource(AsyncAPIResource):
|
|
@cached_property
|
|
def with_raw_response(self) -> AsyncTopResourceWithRawResponse:
|
|
"""
|
|
This property can be used as a prefix for any HTTP method call to return
|
|
the raw response object instead of the parsed content.
|
|
|
|
For more information, see https://www.github.com/cloudflare/cloudflare-python#accessing-raw-response-data-eg-headers
|
|
"""
|
|
return AsyncTopResourceWithRawResponse(self)
|
|
|
|
@cached_property
|
|
def with_streaming_response(self) -> AsyncTopResourceWithStreamingResponse:
|
|
"""
|
|
An alternative to `.with_raw_response` that doesn't eagerly read the response body.
|
|
|
|
For more information, see https://www.github.com/cloudflare/cloudflare-python#with_streaming_response
|
|
"""
|
|
return AsyncTopResourceWithStreamingResponse(self)
|
|
|
|
async def dnssec(
|
|
self,
|
|
dnssec: Literal["SUPPORTED", "NOT_SUPPORTED"],
|
|
*,
|
|
continent: SequenceNotStr[str] | Omit = omit,
|
|
date_end: SequenceNotStr[Union[str, datetime]] | Omit = omit,
|
|
date_range: SequenceNotStr[str] | Omit = omit,
|
|
date_start: SequenceNotStr[Union[str, datetime]] | Omit = omit,
|
|
format: Literal["JSON", "CSV"] | Omit = omit,
|
|
limit: int | Omit = omit,
|
|
location: SequenceNotStr[str] | Omit = omit,
|
|
name: SequenceNotStr[str] | Omit = omit,
|
|
# Use the following arguments if you need to pass additional parameters to the API that aren't available via kwargs.
|
|
# The extra values given here take precedence over values defined on the client or passed to this method.
|
|
extra_headers: Headers | None = None,
|
|
extra_query: Query | None = None,
|
|
extra_body: Body | None = None,
|
|
timeout: float | httpx.Timeout | None | NotGiven = not_given,
|
|
) -> TopDNSSECResponse:
|
|
"""
|
|
Retrieves the top locations of DNS queries to AS112 with DNSSEC (DNS Security
|
|
Extensions) support.
|
|
|
|
Args:
|
|
dnssec: DNSSEC (DNS Security Extensions) status.
|
|
|
|
continent: Filters results by continent. Specify a comma-separated list of alpha-2 codes.
|
|
Prefix with `-` to exclude continents from results. For example, `-EU,NA`
|
|
excludes results from EU, but includes results from NA.
|
|
|
|
date_end: End of the date range (inclusive).
|
|
|
|
date_range: Filters results by date range. For example, use `7d` and `7dcontrol` to compare
|
|
this week with the previous week. Use this parameter or set specific start and
|
|
end dates (`dateStart` and `dateEnd` parameters).
|
|
|
|
date_start: Start of the date range.
|
|
|
|
format: Format in which results will be returned.
|
|
|
|
limit: Limits the number of objects returned in the response.
|
|
|
|
location: Filters results by location. Specify a comma-separated list of alpha-2 codes.
|
|
Prefix with `-` to exclude locations from results. For example, `-US,PT`
|
|
excludes results from the US, but includes results from PT.
|
|
|
|
name: Array of names used to label the series in the response.
|
|
|
|
extra_headers: Send extra headers
|
|
|
|
extra_query: Add additional query parameters to the request
|
|
|
|
extra_body: Add additional JSON properties to the request
|
|
|
|
timeout: Override the client-level default timeout for this request, in seconds
|
|
"""
|
|
if not dnssec:
|
|
raise ValueError(f"Expected a non-empty value for `dnssec` but received {dnssec!r}")
|
|
return await self._get(
|
|
f"/radar/as112/top/locations/dnssec/{dnssec}",
|
|
options=make_request_options(
|
|
extra_headers=extra_headers,
|
|
extra_query=extra_query,
|
|
extra_body=extra_body,
|
|
timeout=timeout,
|
|
query=await async_maybe_transform(
|
|
{
|
|
"continent": continent,
|
|
"date_end": date_end,
|
|
"date_range": date_range,
|
|
"date_start": date_start,
|
|
"format": format,
|
|
"limit": limit,
|
|
"location": location,
|
|
"name": name,
|
|
},
|
|
top_dnssec_params.TopDNSSECParams,
|
|
),
|
|
post_parser=ResultWrapper[TopDNSSECResponse]._unwrapper,
|
|
),
|
|
cast_to=cast(Type[TopDNSSECResponse], ResultWrapper[TopDNSSECResponse]),
|
|
)
|
|
|
|
async def edns(
|
|
self,
|
|
edns: Literal["SUPPORTED", "NOT_SUPPORTED"],
|
|
*,
|
|
continent: SequenceNotStr[str] | Omit = omit,
|
|
date_end: SequenceNotStr[Union[str, datetime]] | Omit = omit,
|
|
date_range: SequenceNotStr[str] | Omit = omit,
|
|
date_start: SequenceNotStr[Union[str, datetime]] | Omit = omit,
|
|
format: Literal["JSON", "CSV"] | Omit = omit,
|
|
limit: int | Omit = omit,
|
|
location: SequenceNotStr[str] | Omit = omit,
|
|
name: SequenceNotStr[str] | Omit = omit,
|
|
# Use the following arguments if you need to pass additional parameters to the API that aren't available via kwargs.
|
|
# The extra values given here take precedence over values defined on the client or passed to this method.
|
|
extra_headers: Headers | None = None,
|
|
extra_query: Query | None = None,
|
|
extra_body: Body | None = None,
|
|
timeout: float | httpx.Timeout | None | NotGiven = not_given,
|
|
) -> TopEdnsResponse:
|
|
"""
|
|
Retrieves the top locations of DNS queries to AS112 with EDNS (Extension
|
|
Mechanisms for DNS) support.
|
|
|
|
Args:
|
|
edns: EDNS (Extension Mechanisms for DNS) status.
|
|
|
|
continent: Filters results by continent. Specify a comma-separated list of alpha-2 codes.
|
|
Prefix with `-` to exclude continents from results. For example, `-EU,NA`
|
|
excludes results from EU, but includes results from NA.
|
|
|
|
date_end: End of the date range (inclusive).
|
|
|
|
date_range: Filters results by date range. For example, use `7d` and `7dcontrol` to compare
|
|
this week with the previous week. Use this parameter or set specific start and
|
|
end dates (`dateStart` and `dateEnd` parameters).
|
|
|
|
date_start: Start of the date range.
|
|
|
|
format: Format in which results will be returned.
|
|
|
|
limit: Limits the number of objects returned in the response.
|
|
|
|
location: Filters results by location. Specify a comma-separated list of alpha-2 codes.
|
|
Prefix with `-` to exclude locations from results. For example, `-US,PT`
|
|
excludes results from the US, but includes results from PT.
|
|
|
|
name: Array of names used to label the series in the response.
|
|
|
|
extra_headers: Send extra headers
|
|
|
|
extra_query: Add additional query parameters to the request
|
|
|
|
extra_body: Add additional JSON properties to the request
|
|
|
|
timeout: Override the client-level default timeout for this request, in seconds
|
|
"""
|
|
if not edns:
|
|
raise ValueError(f"Expected a non-empty value for `edns` but received {edns!r}")
|
|
return await self._get(
|
|
f"/radar/as112/top/locations/edns/{edns}",
|
|
options=make_request_options(
|
|
extra_headers=extra_headers,
|
|
extra_query=extra_query,
|
|
extra_body=extra_body,
|
|
timeout=timeout,
|
|
query=await async_maybe_transform(
|
|
{
|
|
"continent": continent,
|
|
"date_end": date_end,
|
|
"date_range": date_range,
|
|
"date_start": date_start,
|
|
"format": format,
|
|
"limit": limit,
|
|
"location": location,
|
|
"name": name,
|
|
},
|
|
top_edns_params.TopEdnsParams,
|
|
),
|
|
post_parser=ResultWrapper[TopEdnsResponse]._unwrapper,
|
|
),
|
|
cast_to=cast(Type[TopEdnsResponse], ResultWrapper[TopEdnsResponse]),
|
|
)
|
|
|
|
async def ip_version(
|
|
self,
|
|
ip_version: Literal["IPv4", "IPv6"],
|
|
*,
|
|
continent: SequenceNotStr[str] | Omit = omit,
|
|
date_end: SequenceNotStr[Union[str, datetime]] | Omit = omit,
|
|
date_range: SequenceNotStr[str] | Omit = omit,
|
|
date_start: SequenceNotStr[Union[str, datetime]] | Omit = omit,
|
|
format: Literal["JSON", "CSV"] | Omit = omit,
|
|
limit: int | Omit = omit,
|
|
location: SequenceNotStr[str] | Omit = omit,
|
|
name: SequenceNotStr[str] | Omit = omit,
|
|
# Use the following arguments if you need to pass additional parameters to the API that aren't available via kwargs.
|
|
# The extra values given here take precedence over values defined on the client or passed to this method.
|
|
extra_headers: Headers | None = None,
|
|
extra_query: Query | None = None,
|
|
extra_body: Body | None = None,
|
|
timeout: float | httpx.Timeout | None | NotGiven = not_given,
|
|
) -> TopIPVersionResponse:
|
|
"""
|
|
Retrieves the top locations of DNS queries to AS112 for an IP version.
|
|
|
|
Args:
|
|
ip_version: IP version.
|
|
|
|
continent: Filters results by continent. Specify a comma-separated list of alpha-2 codes.
|
|
Prefix with `-` to exclude continents from results. For example, `-EU,NA`
|
|
excludes results from EU, but includes results from NA.
|
|
|
|
date_end: End of the date range (inclusive).
|
|
|
|
date_range: Filters results by date range. For example, use `7d` and `7dcontrol` to compare
|
|
this week with the previous week. Use this parameter or set specific start and
|
|
end dates (`dateStart` and `dateEnd` parameters).
|
|
|
|
date_start: Start of the date range.
|
|
|
|
format: Format in which results will be returned.
|
|
|
|
limit: Limits the number of objects returned in the response.
|
|
|
|
location: Filters results by location. Specify a comma-separated list of alpha-2 codes.
|
|
Prefix with `-` to exclude locations from results. For example, `-US,PT`
|
|
excludes results from the US, but includes results from PT.
|
|
|
|
name: Array of names used to label the series in the response.
|
|
|
|
extra_headers: Send extra headers
|
|
|
|
extra_query: Add additional query parameters to the request
|
|
|
|
extra_body: Add additional JSON properties to the request
|
|
|
|
timeout: Override the client-level default timeout for this request, in seconds
|
|
"""
|
|
if not ip_version:
|
|
raise ValueError(f"Expected a non-empty value for `ip_version` but received {ip_version!r}")
|
|
return await self._get(
|
|
f"/radar/as112/top/locations/ip_version/{ip_version}",
|
|
options=make_request_options(
|
|
extra_headers=extra_headers,
|
|
extra_query=extra_query,
|
|
extra_body=extra_body,
|
|
timeout=timeout,
|
|
query=await async_maybe_transform(
|
|
{
|
|
"continent": continent,
|
|
"date_end": date_end,
|
|
"date_range": date_range,
|
|
"date_start": date_start,
|
|
"format": format,
|
|
"limit": limit,
|
|
"location": location,
|
|
"name": name,
|
|
},
|
|
top_ip_version_params.TopIPVersionParams,
|
|
),
|
|
post_parser=ResultWrapper[TopIPVersionResponse]._unwrapper,
|
|
),
|
|
cast_to=cast(Type[TopIPVersionResponse], ResultWrapper[TopIPVersionResponse]),
|
|
)
|
|
|
|
async def locations(
|
|
self,
|
|
*,
|
|
continent: SequenceNotStr[str] | Omit = omit,
|
|
date_end: SequenceNotStr[Union[str, datetime]] | Omit = omit,
|
|
date_range: SequenceNotStr[str] | Omit = omit,
|
|
date_start: SequenceNotStr[Union[str, datetime]] | Omit = omit,
|
|
format: Literal["JSON", "CSV"] | Omit = omit,
|
|
limit: int | Omit = omit,
|
|
location: SequenceNotStr[str] | Omit = omit,
|
|
name: SequenceNotStr[str] | Omit = omit,
|
|
# Use the following arguments if you need to pass additional parameters to the API that aren't available via kwargs.
|
|
# The extra values given here take precedence over values defined on the client or passed to this method.
|
|
extra_headers: Headers | None = None,
|
|
extra_query: Query | None = None,
|
|
extra_body: Body | None = None,
|
|
timeout: float | httpx.Timeout | None | NotGiven = not_given,
|
|
) -> TopLocationsResponse:
|
|
"""
|
|
Retrieves the top locations by AS112 DNS queries.
|
|
|
|
Args:
|
|
continent: Filters results by continent. Specify a comma-separated list of alpha-2 codes.
|
|
Prefix with `-` to exclude continents from results. For example, `-EU,NA`
|
|
excludes results from EU, but includes results from NA.
|
|
|
|
date_end: End of the date range (inclusive).
|
|
|
|
date_range: Filters results by date range. For example, use `7d` and `7dcontrol` to compare
|
|
this week with the previous week. Use this parameter or set specific start and
|
|
end dates (`dateStart` and `dateEnd` parameters).
|
|
|
|
date_start: Start of the date range.
|
|
|
|
format: Format in which results will be returned.
|
|
|
|
limit: Limits the number of objects returned in the response.
|
|
|
|
location: Filters results by location. Specify a comma-separated list of alpha-2 codes.
|
|
Prefix with `-` to exclude locations from results. For example, `-US,PT`
|
|
excludes results from the US, but includes results from PT.
|
|
|
|
name: Array of names used to label the series in the response.
|
|
|
|
extra_headers: Send extra headers
|
|
|
|
extra_query: Add additional query parameters to the request
|
|
|
|
extra_body: Add additional JSON properties to the request
|
|
|
|
timeout: Override the client-level default timeout for this request, in seconds
|
|
"""
|
|
return await self._get(
|
|
"/radar/as112/top/locations",
|
|
options=make_request_options(
|
|
extra_headers=extra_headers,
|
|
extra_query=extra_query,
|
|
extra_body=extra_body,
|
|
timeout=timeout,
|
|
query=await async_maybe_transform(
|
|
{
|
|
"continent": continent,
|
|
"date_end": date_end,
|
|
"date_range": date_range,
|
|
"date_start": date_start,
|
|
"format": format,
|
|
"limit": limit,
|
|
"location": location,
|
|
"name": name,
|
|
},
|
|
top_locations_params.TopLocationsParams,
|
|
),
|
|
post_parser=ResultWrapper[TopLocationsResponse]._unwrapper,
|
|
),
|
|
cast_to=cast(Type[TopLocationsResponse], ResultWrapper[TopLocationsResponse]),
|
|
)
|
|
|
|
|
|
class TopResourceWithRawResponse:
|
|
def __init__(self, top: TopResource) -> None:
|
|
self._top = top
|
|
|
|
self.dnssec = to_raw_response_wrapper(
|
|
top.dnssec,
|
|
)
|
|
self.edns = to_raw_response_wrapper(
|
|
top.edns,
|
|
)
|
|
self.ip_version = to_raw_response_wrapper(
|
|
top.ip_version,
|
|
)
|
|
self.locations = to_raw_response_wrapper(
|
|
top.locations,
|
|
)
|
|
|
|
|
|
class AsyncTopResourceWithRawResponse:
|
|
def __init__(self, top: AsyncTopResource) -> None:
|
|
self._top = top
|
|
|
|
self.dnssec = async_to_raw_response_wrapper(
|
|
top.dnssec,
|
|
)
|
|
self.edns = async_to_raw_response_wrapper(
|
|
top.edns,
|
|
)
|
|
self.ip_version = async_to_raw_response_wrapper(
|
|
top.ip_version,
|
|
)
|
|
self.locations = async_to_raw_response_wrapper(
|
|
top.locations,
|
|
)
|
|
|
|
|
|
class TopResourceWithStreamingResponse:
|
|
def __init__(self, top: TopResource) -> None:
|
|
self._top = top
|
|
|
|
self.dnssec = to_streamed_response_wrapper(
|
|
top.dnssec,
|
|
)
|
|
self.edns = to_streamed_response_wrapper(
|
|
top.edns,
|
|
)
|
|
self.ip_version = to_streamed_response_wrapper(
|
|
top.ip_version,
|
|
)
|
|
self.locations = to_streamed_response_wrapper(
|
|
top.locations,
|
|
)
|
|
|
|
|
|
class AsyncTopResourceWithStreamingResponse:
|
|
def __init__(self, top: AsyncTopResource) -> None:
|
|
self._top = top
|
|
|
|
self.dnssec = async_to_streamed_response_wrapper(
|
|
top.dnssec,
|
|
)
|
|
self.edns = async_to_streamed_response_wrapper(
|
|
top.edns,
|
|
)
|
|
self.ip_version = async_to_streamed_response_wrapper(
|
|
top.ip_version,
|
|
)
|
|
self.locations = async_to_streamed_response_wrapper(
|
|
top.locations,
|
|
)
|