Skip to content

Commit 8e6ffb2

Browse files
authored
Merge branch 'main' into v1.7454.0
2 parents ed68bf9 + 80f03ec commit 8e6ffb2

File tree

26 files changed

+1278
-720
lines changed

26 files changed

+1278
-720
lines changed

scaleway-async/scaleway_async/domain/v2beta1/__init__.py

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -53,6 +53,7 @@
5353
from .types import RecordIdentifier
5454
from .types import ContactExtensionEU
5555
from .types import ContactExtensionFR
56+
from .types import ContactExtensionIT
5657
from .types import ContactExtensionNL
5758
from .types import ContactQuestion
5859
from .types import TldOffer
@@ -167,14 +168,17 @@
167168
from .types import RestoreDNSZoneVersionRequest
168169
from .types import RestoreDNSZoneVersionResponse
169170
from .types import RetryInboundTransferResponse
171+
from .types import SearchAvailableDomainsConsoleResponse
170172
from .types import SearchAvailableDomainsResponse
173+
from .types import UnauthenticatedRegistrarApiSearchAvailableDomainsConsoleRequest
171174
from .types import UpdateDNSZoneNameserversRequest
172175
from .types import UpdateDNSZoneNameserversResponse
173176
from .types import UpdateDNSZoneRecordsRequest
174177
from .types import UpdateDNSZoneRecordsResponse
175178
from .types import UpdateDNSZoneRequest
176179
from .api import DomainV2Beta1API
177180
from .api import DomainV2Beta1RegistrarAPI
181+
from .api import DomainV2Beta1UnauthenticatedRegistrarAPI
178182

179183
__all__ = [
180184
"ContactEmailStatus",
@@ -230,6 +234,7 @@
230234
"RecordIdentifier",
231235
"ContactExtensionEU",
232236
"ContactExtensionFR",
237+
"ContactExtensionIT",
233238
"ContactExtensionNL",
234239
"ContactQuestion",
235240
"TldOffer",
@@ -344,12 +349,15 @@
344349
"RestoreDNSZoneVersionRequest",
345350
"RestoreDNSZoneVersionResponse",
346351
"RetryInboundTransferResponse",
352+
"SearchAvailableDomainsConsoleResponse",
347353
"SearchAvailableDomainsResponse",
354+
"UnauthenticatedRegistrarApiSearchAvailableDomainsConsoleRequest",
348355
"UpdateDNSZoneNameserversRequest",
349356
"UpdateDNSZoneNameserversResponse",
350357
"UpdateDNSZoneRecordsRequest",
351358
"UpdateDNSZoneRecordsResponse",
352359
"UpdateDNSZoneRequest",
353360
"DomainV2Beta1API",
354361
"DomainV2Beta1RegistrarAPI",
362+
"DomainV2Beta1UnauthenticatedRegistrarAPI",
355363
]

scaleway-async/scaleway_async/domain/v2beta1/api.py

Lines changed: 70 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,9 @@
77
from scaleway_core.api import API
88
from scaleway_core.bridge import (
99
ScwFile,
10+
ServiceInfo,
1011
unmarshal_ScwFile,
12+
unmarshal_ServiceInfo,
1113
)
1214
from scaleway_core.utils import (
1315
WaitForOptions,
@@ -35,6 +37,7 @@
3537
Contact,
3638
ContactExtensionEU,
3739
ContactExtensionFR,
40+
ContactExtensionIT,
3841
ContactExtensionNL,
3942
ContactRoles,
4043
CreateDNSZoneRequest,
@@ -96,6 +99,7 @@
9699
RestoreDNSZoneVersionResponse,
97100
RetryInboundTransferResponse,
98101
SSLCertificate,
102+
SearchAvailableDomainsConsoleResponse,
99103
SearchAvailableDomainsResponse,
100104
Task,
101105
Tld,
@@ -145,6 +149,7 @@
145149
unmarshal_RegisterExternalDomainResponse,
146150
unmarshal_RestoreDNSZoneVersionResponse,
147151
unmarshal_RetryInboundTransferResponse,
152+
unmarshal_SearchAvailableDomainsConsoleResponse,
148153
unmarshal_SearchAvailableDomainsResponse,
149154
unmarshal_UpdateDNSZoneNameserversResponse,
150155
unmarshal_UpdateDNSZoneRecordsResponse,
@@ -2087,6 +2092,7 @@ async def update_contact(
20872092
whois_opt_in: Optional[bool] = None,
20882093
state: Optional[str] = None,
20892094
extension_nl: Optional[ContactExtensionNL] = None,
2095+
extension_it: Optional[ContactExtensionIT] = None,
20902096
) -> Contact:
20912097
"""
20922098
Update contact.
@@ -2111,6 +2117,7 @@ async def update_contact(
21112117
:param whois_opt_in:
21122118
:param state:
21132119
:param extension_nl:
2120+
:param extension_it:
21142121
:return: :class:`Contact <Contact>`
21152122
21162123
Usage:
@@ -2148,6 +2155,7 @@ async def update_contact(
21482155
whois_opt_in=whois_opt_in,
21492156
state=state,
21502157
extension_nl=extension_nl,
2158+
extension_it=extension_it,
21512159
),
21522160
self.client,
21532161
),
@@ -2977,3 +2985,65 @@ async def delete_domain_host(
29772985

29782986
self._throw_on_error(res)
29792987
return unmarshal_Host(res.json())
2988+
2989+
2990+
class DomainV2Beta1UnauthenticatedRegistrarAPI(API):
2991+
"""
2992+
Unauthenticated Domain search API.
2993+
"""
2994+
2995+
async def get_service_info(
2996+
self,
2997+
) -> ServiceInfo:
2998+
"""
2999+
3000+
:return: :class:`ServiceInfo <ServiceInfo>`
3001+
3002+
Usage:
3003+
::
3004+
3005+
result = await api.get_service_info()
3006+
"""
3007+
3008+
res = self._request(
3009+
"GET",
3010+
"/domain/v2beta1/search",
3011+
)
3012+
3013+
self._throw_on_error(res)
3014+
return unmarshal_ServiceInfo(res.json())
3015+
3016+
async def search_available_domains_console(
3017+
self,
3018+
*,
3019+
domain: str,
3020+
strict_search: bool,
3021+
tlds: Optional[list[str]] = None,
3022+
) -> SearchAvailableDomainsConsoleResponse:
3023+
"""
3024+
:param domain:
3025+
:param strict_search:
3026+
:param tlds:
3027+
:return: :class:`SearchAvailableDomainsConsoleResponse <SearchAvailableDomainsConsoleResponse>`
3028+
3029+
Usage:
3030+
::
3031+
3032+
result = await api.search_available_domains_console(
3033+
domain="example",
3034+
strict_search=False,
3035+
)
3036+
"""
3037+
3038+
res = self._request(
3039+
"GET",
3040+
"/domain/v2beta1/search-domains-console",
3041+
params={
3042+
"domain": domain,
3043+
"strict_search": strict_search,
3044+
"tlds": tlds,
3045+
},
3046+
)
3047+
3048+
self._throw_on_error(res)
3049+
return unmarshal_SearchAvailableDomainsConsoleResponse(res.json())

scaleway-async/scaleway_async/domain/v2beta1/marshalling.py

Lines changed: 96 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -26,6 +26,7 @@
2626
ContactExtensionFRTrademarkInfo,
2727
ContactExtensionEU,
2828
ContactExtensionFR,
29+
ContactExtensionIT,
2930
ContactExtensionNL,
3031
ContactQuestion,
3132
Contact,
@@ -93,6 +94,7 @@
9394
RestoreDNSZoneVersionResponse,
9495
RetryInboundTransferResponse,
9596
AvailableDomain,
97+
SearchAvailableDomainsConsoleResponse,
9698
SearchAvailableDomainsResponse,
9799
UpdateDNSZoneNameserversResponse,
98100
UpdateDNSZoneRecordsResponse,
@@ -300,6 +302,29 @@ def unmarshal_ContactExtensionFR(data: Any) -> ContactExtensionFR:
300302
return ContactExtensionFR(**args)
301303

302304

305+
def unmarshal_ContactExtensionIT(data: Any) -> ContactExtensionIT:
306+
if not isinstance(data, dict):
307+
raise TypeError(
308+
"Unmarshalling the type 'ContactExtensionIT' failed as data isn't a dictionary."
309+
)
310+
311+
args: dict[str, Any] = {}
312+
313+
field = data.get("european_citizenship", None)
314+
if field is not None:
315+
args["european_citizenship"] = field
316+
else:
317+
args["european_citizenship"] = None
318+
319+
field = data.get("tax_code", None)
320+
if field is not None:
321+
args["tax_code"] = field
322+
else:
323+
args["tax_code"] = None
324+
325+
return ContactExtensionIT(**args)
326+
327+
303328
def unmarshal_ContactExtensionNL(data: Any) -> ContactExtensionNL:
304329
if not isinstance(data, dict):
305330
raise TypeError(
@@ -512,6 +537,12 @@ def unmarshal_Contact(data: Any) -> Contact:
512537
else:
513538
args["extension_nl"] = None
514539

540+
field = data.get("extension_it", None)
541+
if field is not None:
542+
args["extension_it"] = unmarshal_ContactExtensionIT(field)
543+
else:
544+
args["extension_it"] = None
545+
515546
return Contact(**args)
516547

517548

@@ -2581,6 +2612,33 @@ def unmarshal_AvailableDomain(data: Any) -> AvailableDomain:
25812612
return AvailableDomain(**args)
25822613

25832614

2615+
def unmarshal_SearchAvailableDomainsConsoleResponse(
2616+
data: Any,
2617+
) -> SearchAvailableDomainsConsoleResponse:
2618+
if not isinstance(data, dict):
2619+
raise TypeError(
2620+
"Unmarshalling the type 'SearchAvailableDomainsConsoleResponse' failed as data isn't a dictionary."
2621+
)
2622+
2623+
args: dict[str, Any] = {}
2624+
2625+
field = data.get("available_domains", None)
2626+
if field is not None:
2627+
args["available_domains"] = (
2628+
[unmarshal_AvailableDomain(v) for v in field] if field is not None else None
2629+
)
2630+
else:
2631+
args["available_domains"] = None
2632+
2633+
field = data.get("exact_match_domain", None)
2634+
if field is not None:
2635+
args["exact_match_domain"] = unmarshal_AvailableDomain(field)
2636+
else:
2637+
args["exact_match_domain"] = None
2638+
2639+
return SearchAvailableDomainsConsoleResponse(**args)
2640+
2641+
25842642
def unmarshal_SearchAvailableDomainsResponse(
25852643
data: Any,
25862644
) -> SearchAvailableDomainsResponse:
@@ -2946,6 +3004,21 @@ def marshal_ContactExtensionFR(
29463004
return output
29473005

29483006

3007+
def marshal_ContactExtensionIT(
3008+
request: ContactExtensionIT,
3009+
defaults: ProfileDefaults,
3010+
) -> dict[str, Any]:
3011+
output: dict[str, Any] = {}
3012+
3013+
if request.european_citizenship is not None:
3014+
output["european_citizenship"] = request.european_citizenship
3015+
3016+
if request.tax_code is not None:
3017+
output["tax_code"] = request.tax_code
3018+
3019+
return output
3020+
3021+
29493022
def marshal_ContactExtensionNL(
29503023
request: ContactExtensionNL,
29513024
defaults: ProfileDefaults,
@@ -2996,12 +3069,6 @@ def marshal_NewContact(
29963069
if request.email is not None:
29973070
output["email"] = request.email
29983071

2999-
if request.company_name is not None:
3000-
output["company_name"] = request.company_name
3001-
3002-
if request.email_alt is not None:
3003-
output["email_alt"] = request.email_alt
3004-
30053072
if request.phone_number is not None:
30063073
output["phone_number"] = request.phone_number
30073074

@@ -3014,20 +3081,20 @@ def marshal_NewContact(
30143081
if request.city is not None:
30153082
output["city"] = request.city
30163083

3017-
if request.country is not None:
3018-
output["country"] = request.country
3084+
if request.company_name is not None:
3085+
output["company_name"] = request.company_name
3086+
3087+
if request.email_alt is not None:
3088+
output["email_alt"] = request.email_alt
30193089

30203090
if request.fax_number is not None:
30213091
output["fax_number"] = request.fax_number
30223092

30233093
if request.address_line_2 is not None:
30243094
output["address_line_2"] = request.address_line_2
30253095

3026-
if request.vat_identification_code is not None:
3027-
output["vat_identification_code"] = request.vat_identification_code
3028-
3029-
if request.company_identification_code is not None:
3030-
output["company_identification_code"] = request.company_identification_code
3096+
if request.country is not None:
3097+
output["country"] = request.country
30313098

30323099
if request.lang is not None:
30333100
output["lang"] = request.lang
@@ -3038,6 +3105,12 @@ def marshal_NewContact(
30383105
if request.whois_opt_in is not None:
30393106
output["whois_opt_in"] = request.whois_opt_in
30403107

3108+
if request.vat_identification_code is not None:
3109+
output["vat_identification_code"] = request.vat_identification_code
3110+
3111+
if request.company_identification_code is not None:
3112+
output["company_identification_code"] = request.company_identification_code
3113+
30413114
if request.questions is not None:
30423115
output["questions"] = [
30433116
marshal_ContactQuestion(item, defaults) for item in request.questions
@@ -3061,6 +3134,11 @@ def marshal_NewContact(
30613134
request.extension_nl, defaults
30623135
)
30633136

3137+
if request.extension_it is not None:
3138+
output["extension_it"] = marshal_ContactExtensionIT(
3139+
request.extension_it, defaults
3140+
)
3141+
30643142
return output
30653143

30663144

@@ -3536,6 +3614,11 @@ def marshal_RegistrarApiUpdateContactRequest(
35363614
request.extension_nl, defaults
35373615
)
35383616

3617+
if request.extension_it is not None:
3618+
output["extension_it"] = marshal_ContactExtensionIT(
3619+
request.extension_it, defaults
3620+
)
3621+
35393622
return output
35403623

35413624

0 commit comments

Comments
 (0)