From fa197c86c501207bdfc4b48bee2ec1bceb869df4 Mon Sep 17 00:00:00 2001 From: scaleway-bot Date: Fri, 19 Jul 2024 14:13:00 +0000 Subject: [PATCH] feat: update generated APIs --- .../src/api/webhosting/v1alpha1/api.gen.ts | 23 +++++++++++++++++++ .../src/api/webhosting/v1alpha1/index.gen.ts | 2 ++ .../webhosting/v1alpha1/marshalling.gen.ts | 23 +++++++++++++++++++ .../src/api/webhosting/v1alpha1/types.gen.ts | 17 ++++++++++++++ 4 files changed, 65 insertions(+) diff --git a/packages/clients/src/api/webhosting/v1alpha1/api.gen.ts b/packages/clients/src/api/webhosting/v1alpha1/api.gen.ts index c69391d6b..bb79ae5ab 100644 --- a/packages/clients/src/api/webhosting/v1alpha1/api.gen.ts +++ b/packages/clients/src/api/webhosting/v1alpha1/api.gen.ts @@ -10,8 +10,10 @@ import { import type { Region, WaitForOptions } from '../../../bridge' import { HOSTING_TRANSIENT_STATUSES } from './content.gen' import { + marshalCheckUserOwnsDomainRequest, marshalCreateHostingRequest, marshalUpdateHostingRequest, + unmarshalCheckUserOwnsDomainResponse, unmarshalDnsRecords, unmarshalHosting, unmarshalListControlPanelsResponse, @@ -21,6 +23,8 @@ import { unmarshalSession, } from './marshalling.gen' import type { + CheckUserOwnsDomainRequest, + CheckUserOwnsDomainResponse, CreateHostingRequest, CreateSessionRequest, DeleteHostingRequest, @@ -223,6 +227,25 @@ export class API extends ParentAPI { unmarshalDnsRecords, ) + /** + * "Check whether you own this domain or not.". + * + * @param request - The request {@link CheckUserOwnsDomainRequest} + * @returns A Promise of CheckUserOwnsDomainResponse + */ + checkUserOwnsDomain = (request: Readonly) => + this.client.fetch( + { + body: JSON.stringify( + marshalCheckUserOwnsDomainRequest(request, this.client.settings), + ), + headers: jsonContentHeaders, + method: 'POST', + path: `/webhosting/v1/regions/${validatePathParam('region', request.region ?? this.client.settings.defaultRegion)}/domains/${validatePathParam('domain', request.domain)}/check-ownership`, + }, + unmarshalCheckUserOwnsDomainResponse, + ) + /** * List all offers. List the different Web Hosting offers, and their options, * available to order from Scaleway. diff --git a/packages/clients/src/api/webhosting/v1alpha1/index.gen.ts b/packages/clients/src/api/webhosting/v1alpha1/index.gen.ts index 8ff40252a..68a156297 100644 --- a/packages/clients/src/api/webhosting/v1alpha1/index.gen.ts +++ b/packages/clients/src/api/webhosting/v1alpha1/index.gen.ts @@ -3,6 +3,8 @@ export { API } from './api.gen' export * from './content.gen' export type { + CheckUserOwnsDomainRequest, + CheckUserOwnsDomainResponse, ControlPanel, CreateHostingRequest, CreateHostingRequestDomainConfiguration, diff --git a/packages/clients/src/api/webhosting/v1alpha1/marshalling.gen.ts b/packages/clients/src/api/webhosting/v1alpha1/marshalling.gen.ts index ecc4e5533..f49f3d3bc 100644 --- a/packages/clients/src/api/webhosting/v1alpha1/marshalling.gen.ts +++ b/packages/clients/src/api/webhosting/v1alpha1/marshalling.gen.ts @@ -8,6 +8,8 @@ import { } from '../../../bridge' import type { DefaultValues } from '../../../bridge' import type { + CheckUserOwnsDomainRequest, + CheckUserOwnsDomainResponse, ControlPanel, CreateHostingRequest, CreateHostingRequestDomainConfiguration, @@ -90,6 +92,20 @@ export const unmarshalHosting = (data: unknown): Hosting => { } as Hosting } +export const unmarshalCheckUserOwnsDomainResponse = ( + data: unknown, +): CheckUserOwnsDomainResponse => { + if (!isJSONObject(data)) { + throw new TypeError( + `Unmarshalling the type 'CheckUserOwnsDomainResponse' failed as data isn't a dictionary.`, + ) + } + + return { + ownsDomain: data.owns_domain, + } as CheckUserOwnsDomainResponse +} + const unmarshalDnsRecord = (data: unknown): DnsRecord => { if (!isJSONObject(data)) { throw new TypeError( @@ -263,6 +279,13 @@ export const unmarshalSession = (data: unknown): Session => { } as Session } +export const marshalCheckUserOwnsDomainRequest = ( + request: CheckUserOwnsDomainRequest, + defaults: DefaultValues, +): Record => ({ + project_id: request.projectId ?? defaults.defaultProjectId, +}) + const marshalCreateHostingRequestDomainConfiguration = ( request: CreateHostingRequestDomainConfiguration, defaults: DefaultValues, diff --git a/packages/clients/src/api/webhosting/v1alpha1/types.gen.ts b/packages/clients/src/api/webhosting/v1alpha1/types.gen.ts index 5b856e359..4b00da42b 100644 --- a/packages/clients/src/api/webhosting/v1alpha1/types.gen.ts +++ b/packages/clients/src/api/webhosting/v1alpha1/types.gen.ts @@ -192,6 +192,23 @@ export interface Offer { controlPanelName: string } +export type CheckUserOwnsDomainRequest = { + /** + * Region to target. If none is passed will use default region from the + * config. + */ + region?: Region + /** Domain for which ownership is to be verified. */ + domain: string + /** ID of the project currently in use. */ + projectId?: string +} + +export interface CheckUserOwnsDomainResponse { + /** Indicates whether the specified project owns the domain. */ + ownsDomain: boolean +} + export type CreateHostingRequest = { /** * Region to target. If none is passed will use default region from the