From c754b8cf16ad961281653dbdb4fabfe1a9ad5b97 Mon Sep 17 00:00:00 2001 From: scaleway-bot Date: Wed, 10 Dec 2025 12:10:41 +0000 Subject: [PATCH] feat: update generated APIs --- .../scaleway_async/domain/v2beta1/__init__.py | 6 ++ .../scaleway_async/domain/v2beta1/api.py | 66 +++++++++++++++++++ .../domain/v2beta1/marshalling.py | 28 ++++++++ .../scaleway_async/domain/v2beta1/types.py | 13 ++++ scaleway/scaleway/domain/v2beta1/__init__.py | 6 ++ scaleway/scaleway/domain/v2beta1/api.py | 66 +++++++++++++++++++ .../scaleway/domain/v2beta1/marshalling.py | 28 ++++++++ scaleway/scaleway/domain/v2beta1/types.py | 13 ++++ 8 files changed, 226 insertions(+) diff --git a/scaleway-async/scaleway_async/domain/v2beta1/__init__.py b/scaleway-async/scaleway_async/domain/v2beta1/__init__.py index f8bbd9dbe..9e0c8f0d9 100644 --- a/scaleway-async/scaleway_async/domain/v2beta1/__init__.py +++ b/scaleway-async/scaleway_async/domain/v2beta1/__init__.py @@ -167,7 +167,9 @@ from .types import RestoreDNSZoneVersionRequest from .types import RestoreDNSZoneVersionResponse from .types import RetryInboundTransferResponse +from .types import SearchAvailableDomainsConsoleResponse from .types import SearchAvailableDomainsResponse +from .types import UnauthenticatedRegistrarApiSearchAvailableDomainsConsoleRequest from .types import UpdateDNSZoneNameserversRequest from .types import UpdateDNSZoneNameserversResponse from .types import UpdateDNSZoneRecordsRequest @@ -175,6 +177,7 @@ from .types import UpdateDNSZoneRequest from .api import DomainV2Beta1API from .api import DomainV2Beta1RegistrarAPI +from .api import DomainV2Beta1UnauthenticatedRegistrarAPI __all__ = [ "ContactEmailStatus", @@ -344,7 +347,9 @@ "RestoreDNSZoneVersionRequest", "RestoreDNSZoneVersionResponse", "RetryInboundTransferResponse", + "SearchAvailableDomainsConsoleResponse", "SearchAvailableDomainsResponse", + "UnauthenticatedRegistrarApiSearchAvailableDomainsConsoleRequest", "UpdateDNSZoneNameserversRequest", "UpdateDNSZoneNameserversResponse", "UpdateDNSZoneRecordsRequest", @@ -352,4 +357,5 @@ "UpdateDNSZoneRequest", "DomainV2Beta1API", "DomainV2Beta1RegistrarAPI", + "DomainV2Beta1UnauthenticatedRegistrarAPI", ] diff --git a/scaleway-async/scaleway_async/domain/v2beta1/api.py b/scaleway-async/scaleway_async/domain/v2beta1/api.py index 5aa7499ac..a9a6a379d 100644 --- a/scaleway-async/scaleway_async/domain/v2beta1/api.py +++ b/scaleway-async/scaleway_async/domain/v2beta1/api.py @@ -7,7 +7,9 @@ from scaleway_core.api import API from scaleway_core.bridge import ( ScwFile, + ServiceInfo, unmarshal_ScwFile, + unmarshal_ServiceInfo, ) from scaleway_core.utils import ( WaitForOptions, @@ -96,6 +98,7 @@ RestoreDNSZoneVersionResponse, RetryInboundTransferResponse, SSLCertificate, + SearchAvailableDomainsConsoleResponse, SearchAvailableDomainsResponse, Task, Tld, @@ -145,6 +148,7 @@ unmarshal_RegisterExternalDomainResponse, unmarshal_RestoreDNSZoneVersionResponse, unmarshal_RetryInboundTransferResponse, + unmarshal_SearchAvailableDomainsConsoleResponse, unmarshal_SearchAvailableDomainsResponse, unmarshal_UpdateDNSZoneNameserversResponse, unmarshal_UpdateDNSZoneRecordsResponse, @@ -2977,3 +2981,65 @@ async def delete_domain_host( self._throw_on_error(res) return unmarshal_Host(res.json()) + + +class DomainV2Beta1UnauthenticatedRegistrarAPI(API): + """ + Unauthenticated Domain search API. + """ + + async def get_service_info( + self, + ) -> ServiceInfo: + """ + + :return: :class:`ServiceInfo ` + + Usage: + :: + + result = await api.get_service_info() + """ + + res = self._request( + "GET", + "/domain/v2beta1/search", + ) + + self._throw_on_error(res) + return unmarshal_ServiceInfo(res.json()) + + async def search_available_domains_console( + self, + *, + domain: str, + strict_search: bool, + tlds: Optional[list[str]] = None, + ) -> SearchAvailableDomainsConsoleResponse: + """ + :param domain: + :param strict_search: + :param tlds: + :return: :class:`SearchAvailableDomainsConsoleResponse ` + + Usage: + :: + + result = await api.search_available_domains_console( + domain="example", + strict_search=False, + ) + """ + + res = self._request( + "GET", + "/domain/v2beta1/search-domains-console", + params={ + "domain": domain, + "strict_search": strict_search, + "tlds": tlds, + }, + ) + + self._throw_on_error(res) + return unmarshal_SearchAvailableDomainsConsoleResponse(res.json()) diff --git a/scaleway-async/scaleway_async/domain/v2beta1/marshalling.py b/scaleway-async/scaleway_async/domain/v2beta1/marshalling.py index 37441a25d..abb8a58d6 100644 --- a/scaleway-async/scaleway_async/domain/v2beta1/marshalling.py +++ b/scaleway-async/scaleway_async/domain/v2beta1/marshalling.py @@ -93,6 +93,7 @@ RestoreDNSZoneVersionResponse, RetryInboundTransferResponse, AvailableDomain, + SearchAvailableDomainsConsoleResponse, SearchAvailableDomainsResponse, UpdateDNSZoneNameserversResponse, UpdateDNSZoneRecordsResponse, @@ -2581,6 +2582,33 @@ def unmarshal_AvailableDomain(data: Any) -> AvailableDomain: return AvailableDomain(**args) +def unmarshal_SearchAvailableDomainsConsoleResponse( + data: Any, +) -> SearchAvailableDomainsConsoleResponse: + if not isinstance(data, dict): + raise TypeError( + "Unmarshalling the type 'SearchAvailableDomainsConsoleResponse' failed as data isn't a dictionary." + ) + + args: dict[str, Any] = {} + + field = data.get("available_domains", None) + if field is not None: + args["available_domains"] = ( + [unmarshal_AvailableDomain(v) for v in field] if field is not None else None + ) + else: + args["available_domains"] = None + + field = data.get("exact_match_domain", None) + if field is not None: + args["exact_match_domain"] = unmarshal_AvailableDomain(field) + else: + args["exact_match_domain"] = None + + return SearchAvailableDomainsConsoleResponse(**args) + + def unmarshal_SearchAvailableDomainsResponse( data: Any, ) -> SearchAvailableDomainsResponse: diff --git a/scaleway-async/scaleway_async/domain/v2beta1/types.py b/scaleway-async/scaleway_async/domain/v2beta1/types.py index 75dd1fc09..06b6e1e7d 100644 --- a/scaleway-async/scaleway_async/domain/v2beta1/types.py +++ b/scaleway-async/scaleway_async/domain/v2beta1/types.py @@ -1808,6 +1808,12 @@ class RetryInboundTransferResponse: pass +@dataclass +class SearchAvailableDomainsConsoleResponse: + available_domains: list[AvailableDomain] + exact_match_domain: Optional[AvailableDomain] = None + + @dataclass class SearchAvailableDomainsResponse: available_domains: list[AvailableDomain] @@ -1816,6 +1822,13 @@ class SearchAvailableDomainsResponse: """ +@dataclass +class UnauthenticatedRegistrarApiSearchAvailableDomainsConsoleRequest: + domain: str + strict_search: bool + tlds: Optional[list[str]] = field(default_factory=list) + + @dataclass class UpdateDNSZoneNameserversRequest: dns_zone: str diff --git a/scaleway/scaleway/domain/v2beta1/__init__.py b/scaleway/scaleway/domain/v2beta1/__init__.py index f8bbd9dbe..9e0c8f0d9 100644 --- a/scaleway/scaleway/domain/v2beta1/__init__.py +++ b/scaleway/scaleway/domain/v2beta1/__init__.py @@ -167,7 +167,9 @@ from .types import RestoreDNSZoneVersionRequest from .types import RestoreDNSZoneVersionResponse from .types import RetryInboundTransferResponse +from .types import SearchAvailableDomainsConsoleResponse from .types import SearchAvailableDomainsResponse +from .types import UnauthenticatedRegistrarApiSearchAvailableDomainsConsoleRequest from .types import UpdateDNSZoneNameserversRequest from .types import UpdateDNSZoneNameserversResponse from .types import UpdateDNSZoneRecordsRequest @@ -175,6 +177,7 @@ from .types import UpdateDNSZoneRequest from .api import DomainV2Beta1API from .api import DomainV2Beta1RegistrarAPI +from .api import DomainV2Beta1UnauthenticatedRegistrarAPI __all__ = [ "ContactEmailStatus", @@ -344,7 +347,9 @@ "RestoreDNSZoneVersionRequest", "RestoreDNSZoneVersionResponse", "RetryInboundTransferResponse", + "SearchAvailableDomainsConsoleResponse", "SearchAvailableDomainsResponse", + "UnauthenticatedRegistrarApiSearchAvailableDomainsConsoleRequest", "UpdateDNSZoneNameserversRequest", "UpdateDNSZoneNameserversResponse", "UpdateDNSZoneRecordsRequest", @@ -352,4 +357,5 @@ "UpdateDNSZoneRequest", "DomainV2Beta1API", "DomainV2Beta1RegistrarAPI", + "DomainV2Beta1UnauthenticatedRegistrarAPI", ] diff --git a/scaleway/scaleway/domain/v2beta1/api.py b/scaleway/scaleway/domain/v2beta1/api.py index 5ecf1d8c7..2e6b983bb 100644 --- a/scaleway/scaleway/domain/v2beta1/api.py +++ b/scaleway/scaleway/domain/v2beta1/api.py @@ -7,7 +7,9 @@ from scaleway_core.api import API from scaleway_core.bridge import ( ScwFile, + ServiceInfo, unmarshal_ScwFile, + unmarshal_ServiceInfo, ) from scaleway_core.utils import ( WaitForOptions, @@ -96,6 +98,7 @@ RestoreDNSZoneVersionResponse, RetryInboundTransferResponse, SSLCertificate, + SearchAvailableDomainsConsoleResponse, SearchAvailableDomainsResponse, Task, Tld, @@ -145,6 +148,7 @@ unmarshal_RegisterExternalDomainResponse, unmarshal_RestoreDNSZoneVersionResponse, unmarshal_RetryInboundTransferResponse, + unmarshal_SearchAvailableDomainsConsoleResponse, unmarshal_SearchAvailableDomainsResponse, unmarshal_UpdateDNSZoneNameserversResponse, unmarshal_UpdateDNSZoneRecordsResponse, @@ -2975,3 +2979,65 @@ def delete_domain_host( self._throw_on_error(res) return unmarshal_Host(res.json()) + + +class DomainV2Beta1UnauthenticatedRegistrarAPI(API): + """ + Unauthenticated Domain search API. + """ + + def get_service_info( + self, + ) -> ServiceInfo: + """ + + :return: :class:`ServiceInfo ` + + Usage: + :: + + result = api.get_service_info() + """ + + res = self._request( + "GET", + "/domain/v2beta1/search", + ) + + self._throw_on_error(res) + return unmarshal_ServiceInfo(res.json()) + + def search_available_domains_console( + self, + *, + domain: str, + strict_search: bool, + tlds: Optional[list[str]] = None, + ) -> SearchAvailableDomainsConsoleResponse: + """ + :param domain: + :param strict_search: + :param tlds: + :return: :class:`SearchAvailableDomainsConsoleResponse ` + + Usage: + :: + + result = api.search_available_domains_console( + domain="example", + strict_search=False, + ) + """ + + res = self._request( + "GET", + "/domain/v2beta1/search-domains-console", + params={ + "domain": domain, + "strict_search": strict_search, + "tlds": tlds, + }, + ) + + self._throw_on_error(res) + return unmarshal_SearchAvailableDomainsConsoleResponse(res.json()) diff --git a/scaleway/scaleway/domain/v2beta1/marshalling.py b/scaleway/scaleway/domain/v2beta1/marshalling.py index 37441a25d..abb8a58d6 100644 --- a/scaleway/scaleway/domain/v2beta1/marshalling.py +++ b/scaleway/scaleway/domain/v2beta1/marshalling.py @@ -93,6 +93,7 @@ RestoreDNSZoneVersionResponse, RetryInboundTransferResponse, AvailableDomain, + SearchAvailableDomainsConsoleResponse, SearchAvailableDomainsResponse, UpdateDNSZoneNameserversResponse, UpdateDNSZoneRecordsResponse, @@ -2581,6 +2582,33 @@ def unmarshal_AvailableDomain(data: Any) -> AvailableDomain: return AvailableDomain(**args) +def unmarshal_SearchAvailableDomainsConsoleResponse( + data: Any, +) -> SearchAvailableDomainsConsoleResponse: + if not isinstance(data, dict): + raise TypeError( + "Unmarshalling the type 'SearchAvailableDomainsConsoleResponse' failed as data isn't a dictionary." + ) + + args: dict[str, Any] = {} + + field = data.get("available_domains", None) + if field is not None: + args["available_domains"] = ( + [unmarshal_AvailableDomain(v) for v in field] if field is not None else None + ) + else: + args["available_domains"] = None + + field = data.get("exact_match_domain", None) + if field is not None: + args["exact_match_domain"] = unmarshal_AvailableDomain(field) + else: + args["exact_match_domain"] = None + + return SearchAvailableDomainsConsoleResponse(**args) + + def unmarshal_SearchAvailableDomainsResponse( data: Any, ) -> SearchAvailableDomainsResponse: diff --git a/scaleway/scaleway/domain/v2beta1/types.py b/scaleway/scaleway/domain/v2beta1/types.py index 75dd1fc09..06b6e1e7d 100644 --- a/scaleway/scaleway/domain/v2beta1/types.py +++ b/scaleway/scaleway/domain/v2beta1/types.py @@ -1808,6 +1808,12 @@ class RetryInboundTransferResponse: pass +@dataclass +class SearchAvailableDomainsConsoleResponse: + available_domains: list[AvailableDomain] + exact_match_domain: Optional[AvailableDomain] = None + + @dataclass class SearchAvailableDomainsResponse: available_domains: list[AvailableDomain] @@ -1816,6 +1822,13 @@ class SearchAvailableDomainsResponse: """ +@dataclass +class UnauthenticatedRegistrarApiSearchAvailableDomainsConsoleRequest: + domain: str + strict_search: bool + tlds: Optional[list[str]] = field(default_factory=list) + + @dataclass class UpdateDNSZoneNameserversRequest: dns_zone: str