diff --git a/packages/clients/src/api/baremetal/v1/api.gen.ts b/packages/clients/src/api/baremetal/v1/api.gen.ts index 690cd015a..063922a81 100644 --- a/packages/clients/src/api/baremetal/v1/api.gen.ts +++ b/packages/clients/src/api/baremetal/v1/api.gen.ts @@ -100,8 +100,8 @@ const jsonContentHeaders = { /** * Elastic Metal API. - * - * This API allows you to manage your Elastic Metal servers. + +This API allows you to manage your Elastic Metal servers. */ export class API extends ParentAPI { /** Lists the available zones of the API. */ @@ -138,8 +138,7 @@ export class API extends ParentAPI { ) /** - * List Elastic Metal servers for an Organization. List Elastic Metal servers - * for a specific Organization. + * List Elastic Metal servers for an Organization. List Elastic Metal servers for a specific Organization. * * @param request - The request {@link ListServersRequest} * @returns A Promise of ListServersResponse @@ -148,8 +147,7 @@ export class API extends ParentAPI { enrichForPagination('servers', this.pageOfListServers, request) /** - * Get a specific Elastic Metal server. Get full details of an existing - * Elastic Metal server associated with the ID. + * Get a specific Elastic Metal server. Get full details of an existing Elastic Metal server associated with the ID. * * @param request - The request {@link GetServerRequest} * @returns A Promise of Server @@ -186,8 +184,7 @@ export class API extends ParentAPI { ) /** - * Create an Elastic Metal server. Create a new Elastic Metal server. Once the - * server is created, proceed with the [installation of an OS](#post-3e949e). + * Create an Elastic Metal server. Create a new Elastic Metal server. Once the server is created, proceed with the [installation of an OS](#post-3e949e). * * @param request - The request {@link CreateServerRequest} * @returns A Promise of Server @@ -206,9 +203,7 @@ export class API extends ParentAPI { ) /** - * Update an Elastic Metal server. Update the server associated with the ID. - * You can update parameters such as the server's name, tags and description. - * Any parameters left null in the request body are not updated. + * Update an Elastic Metal server. Update the server associated with the ID. You can update parameters such as the server's name, tags and description. Any parameters left null in the request body are not updated. * * @param request - The request {@link UpdateServerRequest} * @returns A Promise of Server @@ -227,8 +222,7 @@ export class API extends ParentAPI { ) /** - * Install an Elastic Metal server. Install an Operating System (OS) on the - * Elastic Metal server with a specific ID. + * Install an Elastic Metal server. Install an Operating System (OS) on the Elastic Metal server with a specific ID. * * @param request - The request {@link InstallServerRequest} * @returns A Promise of Server @@ -247,8 +241,7 @@ export class API extends ParentAPI { ) /** - * Return server metrics. Get the ping status of the server associated with - * the ID. + * Return server metrics. Get the ping status of the server associated with the ID. * * @param request - The request {@link GetServerMetricsRequest} * @returns A Promise of GetServerMetricsResponse @@ -278,9 +271,7 @@ export class API extends ParentAPI { ) /** - * Reboot an Elastic Metal server. Reboot the Elastic Metal server associated - * with the ID, use the `boot_type` `rescue` to reboot the server in rescue - * mode. + * Reboot an Elastic Metal server. Reboot the Elastic Metal server associated with the ID, use the `boot_type` `rescue` to reboot the server in rescue mode. * * @param request - The request {@link RebootServerRequest} * @returns A Promise of Server @@ -318,9 +309,7 @@ export class API extends ParentAPI { ) /** - * Stop an Elastic Metal server. Stop the server associated with the ID. The - * server remains allocated to your account and all data remains on the local - * storage of the server. + * Stop an Elastic Metal server. Stop the server associated with the ID. The server remains allocated to your account and all data remains on the local storage of the server. * * @param request - The request {@link StopServerRequest} * @returns A Promise of Server @@ -356,8 +345,7 @@ export class API extends ParentAPI { ) /** - * List server events. List event (i.e. start/stop/reboot) associated to the - * server ID. + * List server events. List event (i.e. start/stop/reboot) associated to the server ID. * * @param request - The request {@link ListServerEventsRequest} * @returns A Promise of ListServerEventsResponse @@ -366,8 +354,7 @@ export class API extends ParentAPI { enrichForPagination('events', this.pageOfListServerEvents, request) /** - * Get default partitioning schema. Get the default partitioning schema for - * the given offer ID and OS ID. + * Get default partitioning schema. Get the default partitioning schema for the given offer ID and OS ID. * * @param request - The request {@link GetDefaultPartitioningSchemaRequest} * @returns A Promise of Schema @@ -388,9 +375,7 @@ export class API extends ParentAPI { ) /** - * Validate client partitioning schema. Validate the incoming partitioning - * schema from a user before installing the server. Return default ErrorCode - * if invalid. + * Validate client partitioning schema. Validate the incoming partitioning schema from a user before installing the server. Return default ErrorCode if invalid. * * @param request - The request {@link ValidatePartitioningSchemaRequest} */ @@ -407,18 +392,10 @@ export class API extends ParentAPI { }) /** - * Start BMC access. Start BMC (Baseboard Management Controller) access - * associated with the ID. The BMC (Baseboard Management Controller) access is - * available one hour after the installation of the server. You need first to - * create an option Remote Access. You will find the ID and the price with a - * call to listOffers - * (https://developers.scaleway.com/en/products/baremetal/api/#get-78db92). - * Then add the option - * https://developers.scaleway.com/en/products/baremetal/api/#post-b14abd. - * After adding the BMC option, you need to Get Remote Access to get the - * login/password - * https://developers.scaleway.com/en/products/baremetal/api/#get-cefc0f. Do - * not forget to delete the Option after use. + * Start BMC access. Start BMC (Baseboard Management Controller) access associated with the ID. +The BMC (Baseboard Management Controller) access is available one hour after the installation of the server. +You need first to create an option Remote Access. You will find the ID and the price with a call to listOffers (https://developers.scaleway.com/en/products/baremetal/api/#get-78db92). Then add the option https://developers.scaleway.com/en/products/baremetal/api/#post-b14abd. +After adding the BMC option, you need to Get Remote Access to get the login/password https://developers.scaleway.com/en/products/baremetal/api/#get-cefc0f. Do not forget to delete the Option after use. * * @param request - The request {@link StartBMCAccessRequest} * @returns A Promise of BMCAccess @@ -437,9 +414,7 @@ export class API extends ParentAPI { ) /** - * Get BMC access. Get the BMC (Baseboard Management Controller) access - * associated with the ID, including the URL and login information needed to - * connect. + * Get BMC access. Get the BMC (Baseboard Management Controller) access associated with the ID, including the URL and login information needed to connect. * * @param request - The request {@link GetBMCAccessRequest} * @returns A Promise of BMCAccess @@ -454,8 +429,7 @@ export class API extends ParentAPI { ) /** - * Stop BMC access. Stop BMC (Baseboard Management Controller) access - * associated with the ID. + * Stop BMC access. Stop BMC (Baseboard Management Controller) access associated with the ID. * * @param request - The request {@link StopBMCAccessRequest} */ @@ -466,8 +440,7 @@ export class API extends ParentAPI { }) /** - * Update IP. Configure the IP address associated with the server ID and IP - * ID. You can use this method to set a reverse DNS for an IP address. + * Update IP. Configure the IP address associated with the server ID and IP ID. You can use this method to set a reverse DNS for an IP address. * * @param request - The request {@link UpdateIPRequest} * @returns A Promise of IP @@ -486,8 +459,7 @@ export class API extends ParentAPI { ) /** - * Add server option. Add an option, such as Private Networks, to a specific - * server. + * Add server option. Add an option, such as Private Networks, to a specific server. * * @param request - The request {@link AddOptionServerRequest} * @returns A Promise of Server @@ -690,8 +662,7 @@ export class API extends ParentAPI { ) /** - * List available OSes. List all OSes that are available for installation on - * Elastic Metal servers. + * List available OSes. List all OSes that are available for installation on Elastic Metal servers. * * @param request - The request {@link ListOSRequest} * @returns A Promise of ListOSResponse @@ -715,7 +686,9 @@ export class API extends ParentAPI { ) } -/** Elastic Metal - Private Network API. */ +/** + * Elastic Metal - Private Network API. + */ export class PrivateNetworkAPI extends ParentAPI { /** Lists the available zones of the API. */ public static readonly LOCALITIES: ScwZone[] = ['fr-par-2'] @@ -723,8 +696,7 @@ export class PrivateNetworkAPI extends ParentAPI { /** * Add a server to a Private Network. * - * @param request - The request - * {@link PrivateNetworkApiAddServerPrivateNetworkRequest} + * @param request - The request {@link PrivateNetworkApiAddServerPrivateNetworkRequest} * @returns A Promise of ServerPrivateNetwork */ addServerPrivateNetwork = ( @@ -748,8 +720,7 @@ export class PrivateNetworkAPI extends ParentAPI { /** * Set multiple Private Networks on a server. * - * @param request - The request - * {@link PrivateNetworkApiSetServerPrivateNetworksRequest} + * @param request - The request {@link PrivateNetworkApiSetServerPrivateNetworksRequest} * @returns A Promise of SetServerPrivateNetworksResponse */ setServerPrivateNetworks = ( @@ -796,8 +767,7 @@ export class PrivateNetworkAPI extends ParentAPI { /** * List the Private Networks of a server. * - * @param request - The request - * {@link PrivateNetworkApiListServerPrivateNetworksRequest} + * @param request - The request {@link PrivateNetworkApiListServerPrivateNetworksRequest} * @returns A Promise of ListServerPrivateNetworksResponse */ listServerPrivateNetworks = ( @@ -812,8 +782,7 @@ export class PrivateNetworkAPI extends ParentAPI { /** * Delete a Private Network. * - * @param request - The request - * {@link PrivateNetworkApiDeleteServerPrivateNetworkRequest} + * @param request - The request {@link PrivateNetworkApiDeleteServerPrivateNetworkRequest} */ deleteServerPrivateNetwork = ( request: Readonly, diff --git a/packages/clients/src/api/baremetal/v1/types.gen.ts b/packages/clients/src/api/baremetal/v1/types.gen.ts index 7f75d2217..ffd84be44 100644 --- a/packages/clients/src/api/baremetal/v1/types.gen.ts +++ b/packages/clients/src/api/baremetal/v1/types.gen.ts @@ -174,104 +174,143 @@ export interface OSOSField { } export interface CPU { - /** Name of the CPU. */ + /** + * Name of the CPU. + */ name: string - /** Number of CPU cores. */ + /** + * Number of CPU cores. + */ coreCount: number - /** Number CPU threads. */ + /** + * Number CPU threads. + */ threadCount: number - /** Frequency of the CPU in MHz. */ + /** + * Frequency of the CPU in MHz. + */ frequency: number - /** Benchmark of the CPU. */ + /** + * Benchmark of the CPU. + */ benchmark: string } export interface Disk { - /** Capacity of the disk in bytes. */ + /** + * Capacity of the disk in bytes. + */ capacity: number - /** Type of the disk. */ + /** + * Type of the disk. + */ type: string } export interface GPU { - /** Name of the GPU. */ + /** + * Name of the GPU. + */ name: string - /** Capacity of the vram in bytes. */ + /** + * Capacity of the vram in bytes. + */ vram: number } export interface Memory { - /** Capacity of the memory in bytes. */ + /** + * Capacity of the memory in bytes. + */ capacity: number - /** Type of the memory. */ + /** + * Type of the memory. + */ type: string - /** Frequency of the memory in MHz. */ + /** + * Frequency of the memory in MHz. + */ frequency: number - /** True if the memory is an error-correcting code memory. */ + /** + * True if the memory is an error-correcting code memory. + */ isEcc: boolean } export interface OfferOptionOffer { - /** ID of the option. */ + /** + * ID of the option. + */ id: string - /** Name of the option. */ + /** + * Name of the option. + */ name: string /** - * If true the option is enabled and included by default in the offer If false - * the option is available for the offer but not included by default. + * If true the option is enabled and included by default in the offer +If false the option is available for the offer but not included by default. */ enabled: boolean - /** Period of subscription for the offer. */ + /** + * Period of subscription for the offer. + */ subscriptionPeriod: OfferSubscriptionPeriod - /** Price of the option. */ + /** + * Price of the option. + */ price?: Money - /** Boolean to know if option could be managed. */ + /** + * Boolean to know if option could be managed. + */ manageable: boolean - /** @deprecated Deprecated, use LicenseOptionVars.os_id instead. */ + /** + * @deprecated Deprecated, use LicenseOptionVars.os_id instead. + */ osId?: string /** * License option, contains the ID of the OS linked to the option. * - * One-of ('option'): at most one of 'license', 'publicBandwidth', - * 'privateNetwork', 'remoteAccess', 'certification' could be set. + * One-of ('option'): at most one of 'license', 'publicBandwidth', 'privateNetwork', 'remoteAccess', 'certification' could be set. */ license?: LicenseOption /** * Public_bandwidth option, contains the bandwidth_in_bps. * - * One-of ('option'): at most one of 'license', 'publicBandwidth', - * 'privateNetwork', 'remoteAccess', 'certification' could be set. + * One-of ('option'): at most one of 'license', 'publicBandwidth', 'privateNetwork', 'remoteAccess', 'certification' could be set. */ publicBandwidth?: PublicBandwidthOption /** * Private_network option, contains the bandwidth_in_bps. * - * One-of ('option'): at most one of 'license', 'publicBandwidth', - * 'privateNetwork', 'remoteAccess', 'certification' could be set. + * One-of ('option'): at most one of 'license', 'publicBandwidth', 'privateNetwork', 'remoteAccess', 'certification' could be set. */ privateNetwork?: PrivateNetworkOption /** * Remote_access option. * - * One-of ('option'): at most one of 'license', 'publicBandwidth', - * 'privateNetwork', 'remoteAccess', 'certification' could be set. + * One-of ('option'): at most one of 'license', 'publicBandwidth', 'privateNetwork', 'remoteAccess', 'certification' could be set. */ remoteAccess?: RemoteAccessOption /** * Certification option. * - * One-of ('option'): at most one of 'license', 'publicBandwidth', - * 'privateNetwork', 'remoteAccess', 'certification' could be set. + * One-of ('option'): at most one of 'license', 'publicBandwidth', 'privateNetwork', 'remoteAccess', 'certification' could be set. */ certification?: CertificationOption } export interface PersistentMemory { - /** Capacity of the memory in bytes. */ + /** + * Capacity of the memory in bytes. + */ capacity: number - /** Type of the memory. */ + /** + * Type of the memory. + */ type: string - /** Frequency of the memory in MHz. */ + /** + * Frequency of the memory in MHz. + */ frequency: number } @@ -281,571 +320,888 @@ export interface RaidController { } export interface IP { - /** ID of the IP. */ + /** + * ID of the IP. + */ id: string - /** Address of the IP. */ + /** + * Address of the IP. + */ address: string - /** Reverse IP value. */ + /** + * Reverse IP value. + */ reverse: string - /** Version of IP (v4 or v6). */ + /** + * Version of IP (v4 or v6). + */ version: IPVersion - /** Status of the reverse. */ + /** + * Status of the reverse. + */ reverseStatus: IPReverseStatus - /** A message related to the reverse status, e.g. in case of an error. */ + /** + * A message related to the reverse status, e.g. in case of an error. + */ reverseStatusMessage: string } export interface ServerInstall { - /** ID of the OS. */ + /** + * ID of the OS. + */ osId: string - /** Host defined during the server installation. */ + /** + * Host defined during the server installation. + */ hostname: string - /** SSH public key IDs defined during server installation. */ + /** + * SSH public key IDs defined during server installation. + */ sshKeyIds: string[] - /** Status of the server installation. */ + /** + * Status of the server installation. + */ status: ServerInstallStatus /** - * User defined in the server installation, or the default user if none were - * specified. + * User defined in the server installation, or the default user if none were specified. */ user: string /** - * Service user defined in the server installation, or the default user if - * none were specified. + * Service user defined in the server installation, or the default user if none were specified. */ serviceUser: string - /** Address of the installed service. */ + /** + * Address of the installed service. + */ serviceUrl: string - /** Partitioning schema. */ + /** + * Partitioning schema. + */ partitioningSchema?: Schema } export interface ServerOption { - /** ID of the option. */ + /** + * ID of the option. + */ id: string - /** Name of the option. */ + /** + * Name of the option. + */ name: string - /** Status of the option on this server. */ + /** + * Status of the option on this server. + */ status: ServerOptionOptionStatus - /** Defines whether the option can be managed (added or removed). */ + /** + * Defines whether the option can be managed (added or removed). + */ manageable: boolean - /** Auto expiration date for compatible options. */ + /** + * Auto expiration date for compatible options. + */ expiresAt?: Date /** * License option, contains the ID of the OS linked to the option. * - * One-of ('option'): at most one of 'license', 'publicBandwidth', - * 'privateNetwork', 'remoteAccess', 'certification' could be set. + * One-of ('option'): at most one of 'license', 'publicBandwidth', 'privateNetwork', 'remoteAccess', 'certification' could be set. */ license?: LicenseOption /** * Public_bandwidth option, contains the bandwidth_in_bps. * - * One-of ('option'): at most one of 'license', 'publicBandwidth', - * 'privateNetwork', 'remoteAccess', 'certification' could be set. + * One-of ('option'): at most one of 'license', 'publicBandwidth', 'privateNetwork', 'remoteAccess', 'certification' could be set. */ publicBandwidth?: PublicBandwidthOption /** * Private_network option, contains the bandwidth_in_bps. * - * One-of ('option'): at most one of 'license', 'publicBandwidth', - * 'privateNetwork', 'remoteAccess', 'certification' could be set. + * One-of ('option'): at most one of 'license', 'publicBandwidth', 'privateNetwork', 'remoteAccess', 'certification' could be set. */ privateNetwork?: PrivateNetworkOption /** * Remote_access option. * - * One-of ('option'): at most one of 'license', 'publicBandwidth', - * 'privateNetwork', 'remoteAccess', 'certification' could be set. + * One-of ('option'): at most one of 'license', 'publicBandwidth', 'privateNetwork', 'remoteAccess', 'certification' could be set. */ remoteAccess?: RemoteAccessOption /** * Certification option. * - * One-of ('option'): at most one of 'license', 'publicBandwidth', - * 'privateNetwork', 'remoteAccess', 'certification' could be set. + * One-of ('option'): at most one of 'license', 'publicBandwidth', 'privateNetwork', 'remoteAccess', 'certification' could be set. */ certification?: CertificationOption } export interface ServerRescueServer { - /** Rescue user name. */ + /** + * Rescue user name. + */ user: string - /** Rescue password. */ + /** + * Rescue password. + */ password: string } export interface CreateServerRequestInstall { - /** ID of the OS to installation on the server. */ + /** + * ID of the OS to installation on the server. + */ osId: string - /** Hostname of the server. */ + /** + * Hostname of the server. + */ hostname: string - /** SSH key IDs authorized on the server. */ + /** + * SSH key IDs authorized on the server. + */ sshKeyIds: string[] - /** User for the installation. */ + /** + * User for the installation. + */ user?: string - /** Password for the installation. */ + /** + * Password for the installation. + */ password?: string - /** Regular user that runs the service to be installed on the server. */ + /** + * Regular user that runs the service to be installed on the server. + */ serviceUser?: string - /** Password used for the service to install. */ + /** + * Password used for the service to install. + */ servicePassword?: string - /** Partitioning schema. */ + /** + * Partitioning schema. + */ partitioningSchema?: Schema } export interface OS { - /** ID of the OS. */ + /** + * ID of the OS. + */ id: string - /** Name of the OS. */ + /** + * Name of the OS. + */ name: string - /** Version of the OS. */ + /** + * Version of the OS. + */ version: string - /** URL of this OS's logo. */ + /** + * URL of this OS's logo. + */ logoUrl: string - /** Object defining the SSH requirements to install the OS. */ + /** + * Object defining the SSH requirements to install the OS. + */ ssh?: OSOSField - /** Object defining the username requirements to install the OS. */ + /** + * Object defining the username requirements to install the OS. + */ user?: OSOSField - /** Object defining the password requirements to install the OS. */ + /** + * Object defining the password requirements to install the OS. + */ password?: OSOSField - /** Object defining the username requirements to install the service. */ + /** + * Object defining the username requirements to install the service. + */ serviceUser?: OSOSField - /** Object defining the password requirements to install the service. */ + /** + * Object defining the password requirements to install the service. + */ servicePassword?: OSOSField - /** Defines if the operating system is enabled or not. */ + /** + * Defines if the operating system is enabled or not. + */ enabled: boolean - /** License required (check server options for pricing details). */ + /** + * License required (check server options for pricing details). + */ licenseRequired: boolean - /** Defines if a specific Organization is allowed to install this OS type. */ + /** + * Defines if a specific Organization is allowed to install this OS type. + */ allowed: boolean - /** Defines if custom partitioning is supported by this OS. */ + /** + * Defines if custom partitioning is supported by this OS. + */ customPartitioningSupported: boolean } export interface Offer { - /** ID of the offer. */ + /** + * ID of the offer. + */ id: string - /** Name of the offer. */ + /** + * Name of the offer. + */ name: string - /** Stock level. */ + /** + * Stock level. + */ stock: OfferStock - /** Public bandwidth available (in bits/s) with the offer. */ + /** + * Public bandwidth available (in bits/s) with the offer. + */ bandwidth: number /** - * Maximum public bandwidth available (in bits/s) depending on available - * options. + * Maximum public bandwidth available (in bits/s) depending on available options. */ maxBandwidth: number - /** Commercial range of the offer. */ + /** + * Commercial range of the offer. + */ commercialRange: string /** - * Price of the offer for the next 60 minutes (a server order at 11h32 will be - * payed until 12h32). + * Price of the offer for the next 60 minutes (a server order at 11h32 will be paid until 12h32). */ pricePerHour?: Money - /** Monthly price of the offer, if subscribing on a monthly basis. */ + /** + * Monthly price of the offer, if subscribing on a monthly basis. + */ pricePerMonth?: Money - /** Disks specifications of the offer. */ + /** + * Disks specifications of the offer. + */ disks: Disk[] - /** Defines whether the offer is currently available. */ + /** + * Defines whether the offer is currently available. + */ enable: boolean - /** CPU specifications of the offer. */ + /** + * CPU specifications of the offer. + */ cpus: CPU[] - /** Memory specifications of the offer. */ + /** + * Memory specifications of the offer. + */ memories: Memory[] - /** Name of the quota associated to the offer. */ + /** + * Name of the quota associated to the offer. + */ quotaName: string - /** Persistent memory specifications of the offer. */ + /** + * Persistent memory specifications of the offer. + */ persistentMemories: PersistentMemory[] - /** Raid controller specifications of the offer. */ + /** + * Raid controller specifications of the offer. + */ raidControllers: RaidController[] - /** Array of OS images IDs incompatible with the server. */ + /** + * Array of OS images IDs incompatible with the server. + */ incompatibleOsIds: string[] - /** Period of subscription for the offer. */ + /** + * Period of subscription for the offer. + */ subscriptionPeriod: OfferSubscriptionPeriod - /** Operation path of the service. */ + /** + * Operation path of the service. + */ operationPath: string /** - * One time fee invoiced by Scaleway for the setup and activation of the - * server. + * One time fee invoiced by Scaleway for the setup and activation of the server. */ fee?: Money - /** Available options for customization of the server. */ + /** + * Available options for customization of the server. + */ options: OfferOptionOffer[] - /** Private bandwidth available in bits/s with the offer. */ + /** + * Private bandwidth available in bits/s with the offer. + */ privateBandwidth: number - /** Defines whether the offer's bandwidth is shared or not. */ + /** + * Defines whether the offer's bandwidth is shared or not. + */ sharedBandwidth: boolean - /** Array of tags attached to the offer. */ + /** + * Array of tags attached to the offer. + */ tags: string[] - /** GPU specifications of the offer. */ + /** + * GPU specifications of the offer. + */ gpus: GPU[] - /** Exist only for hourly offers, to migrate to the monthly offer. */ + /** + * Exist only for hourly offers, to migrate to the monthly offer. + */ monthlyOfferId?: string } export interface Option { - /** ID of the option. */ + /** + * ID of the option. + */ id: string - /** Name of the option. */ + /** + * Name of the option. + */ name: string - /** Defines whether the option is manageable (could be added or removed). */ + /** + * Defines whether the option is manageable (could be added or removed). + */ manageable: boolean /** * License option, contains the ID of the OS linked to the option. * - * One-of ('option'): at most one of 'license', 'publicBandwidth', - * 'privateNetwork', 'remoteAccess', 'certification' could be set. + * One-of ('option'): at most one of 'license', 'publicBandwidth', 'privateNetwork', 'remoteAccess', 'certification' could be set. */ license?: LicenseOption /** * Public_bandwidth option, contains the bandwidth_in_bps. * - * One-of ('option'): at most one of 'license', 'publicBandwidth', - * 'privateNetwork', 'remoteAccess', 'certification' could be set. + * One-of ('option'): at most one of 'license', 'publicBandwidth', 'privateNetwork', 'remoteAccess', 'certification' could be set. */ publicBandwidth?: PublicBandwidthOption /** * Private_network option, contains the bandwidth_in_bps. * - * One-of ('option'): at most one of 'license', 'publicBandwidth', - * 'privateNetwork', 'remoteAccess', 'certification' could be set. + * One-of ('option'): at most one of 'license', 'publicBandwidth', 'privateNetwork', 'remoteAccess', 'certification' could be set. */ privateNetwork?: PrivateNetworkOption /** * Remote_access option. * - * One-of ('option'): at most one of 'license', 'publicBandwidth', - * 'privateNetwork', 'remoteAccess', 'certification' could be set. + * One-of ('option'): at most one of 'license', 'publicBandwidth', 'privateNetwork', 'remoteAccess', 'certification' could be set. */ remoteAccess?: RemoteAccessOption /** * Certification option. * - * One-of ('option'): at most one of 'license', 'publicBandwidth', - * 'privateNetwork', 'remoteAccess', 'certification' could be set. + * One-of ('option'): at most one of 'license', 'publicBandwidth', 'privateNetwork', 'remoteAccess', 'certification' could be set. */ certification?: CertificationOption } export interface ServerEvent { - /** ID of the server to which the action will be applied. */ + /** + * ID of the server to which the action will be applied. + */ id: string - /** The action that will be applied to the server. */ + /** + * The action that will be applied to the server. + */ action: string - /** Date of last modification of the action. */ + /** + * Date of last modification of the action. + */ updatedAt?: Date - /** Date of creation of the action. */ + /** + * Date of creation of the action. + */ createdAt?: Date } export interface ServerPrivateNetwork { - /** The Private Network ID. */ + /** + * The Private Network ID. + */ id: string - /** The Private Network Project ID. */ + /** + * The Private Network Project ID. + */ projectId: string - /** The server ID. */ + /** + * The server ID. + */ serverId: string - /** The Private Network ID. */ + /** + * The Private Network ID. + */ privateNetworkId: string - /** The VLAN ID associated to the Private Network. */ + /** + * The VLAN ID associated to the Private Network. + */ vlan?: number - /** The configuration status of the Private Network. */ + /** + * The configuration status of the Private Network. + */ status: ServerPrivateNetworkStatus - /** The Private Network creation date. */ + /** + * The Private Network creation date. + */ createdAt?: Date - /** The date the Private Network was last modified. */ + /** + * The date the Private Network was last modified. + */ updatedAt?: Date } export interface Server { - /** ID of the server. */ + /** + * ID of the server. + */ id: string - /** Organization ID the server is attached to. */ + /** + * Organization ID the server is attached to. + */ organizationId: string - /** Project ID the server is attached to. */ + /** + * Project ID the server is attached to. + */ projectId: string - /** Name of the server. */ + /** + * Name of the server. + */ name: string - /** Description of the server. */ + /** + * Description of the server. + */ description: string - /** Last modification date of the server. */ + /** + * Last modification date of the server. + */ updatedAt?: Date - /** Creation date of the server. */ + /** + * Creation date of the server. + */ createdAt?: Date - /** Status of the server. */ + /** + * Status of the server. + */ status: ServerStatus - /** Offer ID of the server. */ + /** + * Offer ID of the server. + */ offerId: string - /** Offer name of the server. */ + /** + * Offer name of the server. + */ offerName: string - /** Array of custom tags attached to the server. */ + /** + * Array of custom tags attached to the server. + */ tags: string[] - /** Array of IPs attached to the server. */ + /** + * Array of IPs attached to the server. + */ ips: IP[] - /** Domain of the server. */ + /** + * Domain of the server. + */ domain: string - /** Boot type of the server. */ + /** + * Boot type of the server. + */ bootType: ServerBootType - /** Zone in which is the server located. */ + /** + * Zone in which is the server located. + */ zone: ScwZone - /** Configuration of the installation. */ + /** + * Configuration of the installation. + */ install?: ServerInstall - /** Status of server ping. */ + /** + * Status of server ping. + */ pingStatus: ServerPingStatus - /** Options enabled on the server. */ + /** + * Options enabled on the server. + */ options: ServerOption[] - /** Configuration of rescue boot. */ + /** + * Configuration of rescue boot. + */ rescueServer?: ServerRescueServer } export interface Setting { - /** ID of the setting. */ + /** + * ID of the setting. + */ id: string - /** Type of the setting. */ + /** + * Type of the setting. + */ type: SettingType - /** ID of the Project ID. */ + /** + * ID of the Project ID. + */ projectId: string - /** Defines whether the setting is enabled. */ + /** + * Defines whether the setting is enabled. + */ enabled: boolean } export type AddOptionServerRequest = { - /** Zone to target. If none is passed will use default zone from the config. */ + /** + * Zone to target. If none is passed will use default zone from the config. + */ zone?: ScwZone - /** ID of the server. */ + /** + * ID of the server. + */ serverId: string - /** ID of the option to add. */ + /** + * ID of the option to add. + */ optionId: string - /** Auto expire the option after this date. */ + /** + * Auto expire the option after this date. + */ expiresAt?: Date } export interface BMCAccess { - /** URL to access to the server console. */ + /** + * URL to access to the server console. + */ url: string /** - * The login to use for the BMC (Baseboard Management Controller) access - * authentification. + * The login to use for the BMC (Baseboard Management Controller) access authentification. */ login: string /** - * The password to use for the BMC (Baseboard Management Controller) access - * authentification. + * The password to use for the BMC (Baseboard Management Controller) access authentification. */ password: string /** - * The date after which the BMC (Baseboard Management Controller) access will - * be closed. + * The date after which the BMC (Baseboard Management Controller) access will be closed. */ expiresAt?: Date } export type CreateServerRequest = { - /** Zone to target. If none is passed will use default zone from the config. */ - zone?: ScwZone - /** Offer ID of the new server. */ - offerId: string + /** + * Zone to target. If none is passed will use default zone from the config. + */ + zone?: ScwZone + /** + * Offer ID of the new server. + */ + offerId: string /** * @deprecated Organization ID with which the server will be created. * - * One-of ('projectIdentifier'): at most one of 'projectId', 'organizationId' - * could be set. + * One-of ('projectIdentifier'): at most one of 'projectId', 'organizationId' could be set. */ organizationId?: string /** * Project ID with which the server will be created. * - * One-of ('projectIdentifier'): at most one of 'projectId', 'organizationId' - * could be set. + * One-of ('projectIdentifier'): at most one of 'projectId', 'organizationId' could be set. */ projectId?: string - /** Name of the server (≠hostname). */ + /** + * Name of the server (≠hostname). + */ name: string - /** Description associated with the server, max 255 characters. */ + /** + * Description associated with the server, max 255 characters. + */ description: string - /** Tags to associate to the server. */ + /** + * Tags to associate to the server. + */ tags?: string[] /** - * Object describing the configuration details of the OS installation on the - * server. + * Object describing the configuration details of the OS installation on the server. */ install?: CreateServerRequestInstall - /** IDs of options to enable on server. */ + /** + * IDs of options to enable on server. + */ optionIds?: string[] } export type DeleteOptionServerRequest = { - /** Zone to target. If none is passed will use default zone from the config. */ + /** + * Zone to target. If none is passed will use default zone from the config. + */ zone?: ScwZone - /** ID of the server. */ + /** + * ID of the server. + */ serverId: string - /** ID of the option to delete. */ + /** + * ID of the option to delete. + */ optionId: string } export type DeleteServerRequest = { - /** Zone to target. If none is passed will use default zone from the config. */ + /** + * Zone to target. If none is passed will use default zone from the config. + */ zone?: ScwZone - /** ID of the server to delete. */ + /** + * ID of the server to delete. + */ serverId: string } export type GetBMCAccessRequest = { - /** Zone to target. If none is passed will use default zone from the config. */ + /** + * Zone to target. If none is passed will use default zone from the config. + */ zone?: ScwZone - /** ID of the server. */ + /** + * ID of the server. + */ serverId: string } export type GetDefaultPartitioningSchemaRequest = { - /** Zone to target. If none is passed will use default zone from the config. */ + /** + * Zone to target. If none is passed will use default zone from the config. + */ zone?: ScwZone - /** ID of the offer. */ + /** + * ID of the offer. + */ offerId: string - /** ID of the OS. */ + /** + * ID of the OS. + */ osId: string } export type GetOSRequest = { - /** Zone to target. If none is passed will use default zone from the config. */ + /** + * Zone to target. If none is passed will use default zone from the config. + */ zone?: ScwZone - /** ID of the OS. */ + /** + * ID of the OS. + */ osId: string } export type GetOfferRequest = { - /** Zone to target. If none is passed will use default zone from the config. */ + /** + * Zone to target. If none is passed will use default zone from the config. + */ zone?: ScwZone - /** ID of the researched Offer. */ + /** + * ID of the researched Offer. + */ offerId: string } export type GetOptionRequest = { - /** Zone to target. If none is passed will use default zone from the config. */ + /** + * Zone to target. If none is passed will use default zone from the config. + */ zone?: ScwZone - /** ID of the option. */ + /** + * ID of the option. + */ optionId: string } export type GetServerMetricsRequest = { - /** Zone to target. If none is passed will use default zone from the config. */ + /** + * Zone to target. If none is passed will use default zone from the config. + */ zone?: ScwZone - /** Server ID to get the metrics. */ + /** + * Server ID to get the metrics. + */ serverId: string } export interface GetServerMetricsResponse { - /** Timeseries object representing pings on the server. */ + /** + * Timeseries object representing pings on the server. + */ pings?: TimeSeries } export type GetServerRequest = { - /** Zone to target. If none is passed will use default zone from the config. */ + /** + * Zone to target. If none is passed will use default zone from the config. + */ zone?: ScwZone - /** ID of the server. */ + /** + * ID of the server. + */ serverId: string } export type InstallServerRequest = { - /** Zone to target. If none is passed will use default zone from the config. */ + /** + * Zone to target. If none is passed will use default zone from the config. + */ zone?: ScwZone - /** Server ID to install. */ + /** + * Server ID to install. + */ serverId: string - /** ID of the OS to installation on the server. */ + /** + * ID of the OS to installation on the server. + */ osId: string - /** Hostname of the server. */ + /** + * Hostname of the server. + */ hostname: string - /** SSH key IDs authorized on the server. */ + /** + * SSH key IDs authorized on the server. + */ sshKeyIds: string[] - /** User used for the installation. */ + /** + * User used for the installation. + */ user?: string - /** Password used for the installation. */ + /** + * Password used for the installation. + */ password?: string - /** User used for the service to install. */ + /** + * User used for the service to install. + */ serviceUser?: string - /** Password used for the service to install. */ + /** + * Password used for the service to install. + */ servicePassword?: string - /** Partitioning schema. */ + /** + * Partitioning schema. + */ partitioningSchema?: Schema } export type ListOSRequest = { - /** Zone to target. If none is passed will use default zone from the config. */ + /** + * Zone to target. If none is passed will use default zone from the config. + */ zone?: ScwZone - /** Page number. */ + /** + * Page number. + */ page?: number - /** Number of OS per page. */ + /** + * Number of OS per page. + */ pageSize?: number - /** Offer IDs to filter OSes for. */ + /** + * Offer IDs to filter OSes for. + */ offerId?: string } export interface ListOSResponse { - /** Total count of matching OS. */ + /** + * Total count of matching OS. + */ totalCount: number - /** OS that match filters. */ + /** + * OS that match filters. + */ os: OS[] } export type ListOffersRequest = { - /** Zone to target. If none is passed will use default zone from the config. */ + /** + * Zone to target. If none is passed will use default zone from the config. + */ zone?: ScwZone - /** Page number. */ + /** + * Page number. + */ page?: number - /** Number of offers per page. */ + /** + * Number of offers per page. + */ pageSize?: number - /** Subscription period type to filter offers by. */ + /** + * Subscription period type to filter offers by. + */ subscriptionPeriod?: OfferSubscriptionPeriod - /** Offer name to filter offers by. */ + /** + * Offer name to filter offers by. + */ name?: string } export interface ListOffersResponse { - /** Total count of matching offers. */ + /** + * Total count of matching offers. + */ totalCount: number - /** Offers that match filters. */ + /** + * Offers that match filters. + */ offers: Offer[] } export type ListOptionsRequest = { - /** Zone to target. If none is passed will use default zone from the config. */ + /** + * Zone to target. If none is passed will use default zone from the config. + */ zone?: ScwZone - /** Page number. */ + /** + * Page number. + */ page?: number - /** Number of options per page. */ + /** + * Number of options per page. + */ pageSize?: number - /** Offer ID to filter options for. */ + /** + * Offer ID to filter options for. + */ offerId?: string - /** Name to filter options for. */ + /** + * Name to filter options for. + */ name?: string } export interface ListOptionsResponse { - /** Total count of matching options. */ + /** + * Total count of matching options. + */ totalCount: number - /** Options that match filters. */ + /** + * Options that match filters. + */ options: Option[] } export type ListServerEventsRequest = { - /** Zone to target. If none is passed will use default zone from the config. */ + /** + * Zone to target. If none is passed will use default zone from the config. + */ zone?: ScwZone - /** ID of the server events searched. */ + /** + * ID of the server events searched. + */ serverId: string - /** Page number. */ + /** + * Page number. + */ page?: number - /** Number of server events per page. */ + /** + * Number of server events per page. + */ pageSize?: number - /** Order of the server events. */ + /** + * Order of the server events. + */ orderBy?: ListServerEventsRequestOrderBy } export interface ListServerEventsResponse { - /** Total count of matching events. */ + /** + * Total count of matching events. + */ totalCount: number - /** Server events that match filters. */ + /** + * Server events that match filters. + */ events: ServerEvent[] } @@ -855,114 +1211,196 @@ export interface ListServerPrivateNetworksResponse { } export type ListServersRequest = { - /** Zone to target. If none is passed will use default zone from the config. */ + /** + * Zone to target. If none is passed will use default zone from the config. + */ zone?: ScwZone - /** Page number. */ + /** + * Page number. + */ page?: number - /** Number of servers per page. */ + /** + * Number of servers per page. + */ pageSize?: number - /** Order of the servers. */ + /** + * Order of the servers. + */ orderBy?: ListServersRequestOrderBy - /** Tags to filter for. */ + /** + * Tags to filter for. + */ tags?: string[] - /** Status to filter for. */ + /** + * Status to filter for. + */ status?: string[] - /** Names to filter for. */ + /** + * Names to filter for. + */ name?: string - /** Organization ID to filter for. */ + /** + * Organization ID to filter for. + */ organizationId?: string - /** Project ID to filter for. */ + /** + * Project ID to filter for. + */ projectId?: string - /** Option ID to filter for. */ + /** + * Option ID to filter for. + */ optionId?: string } export interface ListServersResponse { - /** Total count of matching servers. */ + /** + * Total count of matching servers. + */ totalCount: number - /** Array of Elastic Metal server objects matching the filters in the request. */ + /** + * Array of Elastic Metal server objects matching the filters in the request. + */ servers: Server[] } export type ListSettingsRequest = { - /** Zone to target. If none is passed will use default zone from the config. */ + /** + * Zone to target. If none is passed will use default zone from the config. + */ zone?: ScwZone - /** Page number. */ + /** + * Page number. + */ page?: number - /** Set the maximum list size. */ + /** + * Set the maximum list size. + */ pageSize?: number - /** Sort order for items in the response. */ + /** + * Sort order for items in the response. + */ orderBy?: ListSettingsRequestOrderBy - /** ID of the Project. */ + /** + * ID of the Project. + */ projectId?: string } export interface ListSettingsResponse { - /** Total count of matching settings. */ + /** + * Total count of matching settings. + */ totalCount: number - /** Settings that match filters. */ + /** + * Settings that match filters. + */ settings: Setting[] } export type MigrateServerToMonthlyOfferRequest = { - /** Zone to target. If none is passed will use default zone from the config. */ + /** + * Zone to target. If none is passed will use default zone from the config. + */ zone?: ScwZone - /** ID of the server. */ + /** + * ID of the server. + */ serverId: string } export type PrivateNetworkApiAddServerPrivateNetworkRequest = { - /** Zone to target. If none is passed will use default zone from the config. */ + /** + * Zone to target. If none is passed will use default zone from the config. + */ zone?: ScwZone - /** The ID of the server. */ + /** + * The ID of the server. + */ serverId: string - /** The ID of the Private Network. */ + /** + * The ID of the Private Network. + */ privateNetworkId: string } export type PrivateNetworkApiDeleteServerPrivateNetworkRequest = { - /** Zone to target. If none is passed will use default zone from the config. */ + /** + * Zone to target. If none is passed will use default zone from the config. + */ zone?: ScwZone - /** The ID of the server. */ + /** + * The ID of the server. + */ serverId: string - /** The ID of the Private Network. */ + /** + * The ID of the Private Network. + */ privateNetworkId: string } export type PrivateNetworkApiListServerPrivateNetworksRequest = { - /** Zone to target. If none is passed will use default zone from the config. */ + /** + * Zone to target. If none is passed will use default zone from the config. + */ zone?: ScwZone - /** The sort order for the returned Private Networks. */ + /** + * The sort order for the returned Private Networks. + */ orderBy?: ListServerPrivateNetworksRequestOrderBy - /** The page number for the returned Private Networks. */ + /** + * The page number for the returned Private Networks. + */ page?: number - /** The maximum number of Private Networks per page. */ + /** + * The maximum number of Private Networks per page. + */ pageSize?: number - /** Filter Private Networks by server ID. */ + /** + * Filter Private Networks by server ID. + */ serverId?: string - /** Filter Private Networks by Private Network ID. */ + /** + * Filter Private Networks by Private Network ID. + */ privateNetworkId?: string - /** Filter Private Networks by Organization ID. */ + /** + * Filter Private Networks by Organization ID. + */ organizationId?: string - /** Filter Private Networks by Project ID. */ + /** + * Filter Private Networks by Project ID. + */ projectId?: string } export type PrivateNetworkApiSetServerPrivateNetworksRequest = { - /** Zone to target. If none is passed will use default zone from the config. */ + /** + * Zone to target. If none is passed will use default zone from the config. + */ zone?: ScwZone - /** The ID of the server. */ + /** + * The ID of the server. + */ serverId: string - /** The IDs of the Private Networks. */ + /** + * The IDs of the Private Networks. + */ privateNetworkIds: string[] } export type RebootServerRequest = { - /** Zone to target. If none is passed will use default zone from the config. */ + /** + * Zone to target. If none is passed will use default zone from the config. + */ zone?: ScwZone - /** ID of the server to reboot. */ + /** + * ID of the server to reboot. + */ serverId: string - /** The type of boot. */ + /** + * The type of boot. + */ bootType?: ServerBootType } @@ -971,80 +1409,129 @@ export interface SetServerPrivateNetworksResponse { } export type StartBMCAccessRequest = { - /** Zone to target. If none is passed will use default zone from the config. */ + /** + * Zone to target. If none is passed will use default zone from the config. + */ zone?: ScwZone - /** ID of the server. */ + /** + * ID of the server. + */ serverId: string - /** The IP authorized to connect to the server. */ + /** + * The IP authorized to connect to the server. + */ ip: string } export type StartServerRequest = { - /** Zone to target. If none is passed will use default zone from the config. */ + /** + * Zone to target. If none is passed will use default zone from the config. + */ zone?: ScwZone - /** ID of the server to start. */ + /** + * ID of the server to start. + */ serverId: string - /** The type of boot. */ + /** + * The type of boot. + */ bootType?: ServerBootType } export type StopBMCAccessRequest = { - /** Zone to target. If none is passed will use default zone from the config. */ + /** + * Zone to target. If none is passed will use default zone from the config. + */ zone?: ScwZone - /** ID of the server. */ + /** + * ID of the server. + */ serverId: string } export type StopServerRequest = { - /** Zone to target. If none is passed will use default zone from the config. */ + /** + * Zone to target. If none is passed will use default zone from the config. + */ zone?: ScwZone - /** ID of the server to stop. */ + /** + * ID of the server to stop. + */ serverId: string } export type UpdateIPRequest = { - /** Zone to target. If none is passed will use default zone from the config. */ + /** + * Zone to target. If none is passed will use default zone from the config. + */ zone?: ScwZone - /** ID of the server. */ + /** + * ID of the server. + */ serverId: string - /** ID of the IP to update. */ + /** + * ID of the IP to update. + */ ipId: string - /** New reverse IP to update, not updated if null. */ + /** + * New reverse IP to update, not updated if null. + */ reverse?: string } export type UpdateServerRequest = { - /** Zone to target. If none is passed will use default zone from the config. */ + /** + * Zone to target. If none is passed will use default zone from the config. + */ zone?: ScwZone - /** ID of the server to update. */ + /** + * ID of the server to update. + */ serverId: string - /** Name of the server (≠hostname), not updated if null. */ + /** + * Name of the server (≠hostname), not updated if null. + */ name?: string /** - * Description associated with the server, max 255 characters, not updated if - * null. + * Description associated with the server, max 255 characters, not updated if null. */ description?: string - /** Tags associated with the server, not updated if null. */ + /** + * Tags associated with the server, not updated if null. + */ tags?: string[] } export type UpdateSettingRequest = { - /** Zone to target. If none is passed will use default zone from the config. */ + /** + * Zone to target. If none is passed will use default zone from the config. + */ zone?: ScwZone - /** ID of the setting. */ + /** + * ID of the setting. + */ settingId: string - /** Defines whether the setting is enabled. */ + /** + * Defines whether the setting is enabled. + */ enabled?: boolean } export type ValidatePartitioningSchemaRequest = { - /** Zone to target. If none is passed will use default zone from the config. */ + /** + * Zone to target. If none is passed will use default zone from the config. + */ zone?: ScwZone - /** Partitioning schema. */ + /** + * Partitioning schema. + */ partitioningSchema?: Schema - /** Offer ID of the server. */ + /** + * Offer ID of the server. + */ offerId: string - /** OS ID. */ + /** + * OS ID. + */ osId: string } diff --git a/packages/clients/src/api/baremetal/v3/api.gen.ts b/packages/clients/src/api/baremetal/v3/api.gen.ts index d4f83b37f..a55d42196 100644 --- a/packages/clients/src/api/baremetal/v3/api.gen.ts +++ b/packages/clients/src/api/baremetal/v3/api.gen.ts @@ -28,7 +28,9 @@ const jsonContentHeaders = { 'Content-Type': 'application/json; charset=utf-8', } -/** Elastic Metal - Private Networks API. */ +/** + * Elastic Metal - Private Networks API. + */ export class PrivateNetworkAPI extends ParentAPI { /** Lists the available zones of the API. */ public static readonly LOCALITIES: ScwZone[] = [ @@ -41,11 +43,9 @@ export class PrivateNetworkAPI extends ParentAPI { ] /** - * Add a server to a Private Network. Add an Elastic Metal server to a Private - * Network. + * Add a server to a Private Network. Add an Elastic Metal server to a Private Network. * - * @param request - The request - * {@link PrivateNetworkApiAddServerPrivateNetworkRequest} + * @param request - The request {@link PrivateNetworkApiAddServerPrivateNetworkRequest} * @returns A Promise of ServerPrivateNetwork */ addServerPrivateNetwork = ( @@ -67,11 +67,9 @@ export class PrivateNetworkAPI extends ParentAPI { ) /** - * Set multiple Private Networks on a server. Configure multiple Private - * Networks on an Elastic Metal server. + * Set multiple Private Networks on a server. Configure multiple Private Networks on an Elastic Metal server. * - * @param request - The request - * {@link PrivateNetworkApiSetServerPrivateNetworksRequest} + * @param request - The request {@link PrivateNetworkApiSetServerPrivateNetworksRequest} * @returns A Promise of SetServerPrivateNetworksResponse */ setServerPrivateNetworks = ( @@ -117,11 +115,9 @@ export class PrivateNetworkAPI extends ParentAPI { ) /** - * List the Private Networks of a server. List the Private Networks of an - * Elastic Metal server. + * List the Private Networks of a server. List the Private Networks of an Elastic Metal server. * - * @param request - The request - * {@link PrivateNetworkApiListServerPrivateNetworksRequest} + * @param request - The request {@link PrivateNetworkApiListServerPrivateNetworksRequest} * @returns A Promise of ListServerPrivateNetworksResponse */ listServerPrivateNetworks = ( @@ -136,8 +132,7 @@ export class PrivateNetworkAPI extends ParentAPI { /** * Delete a Private Network. * - * @param request - The request - * {@link PrivateNetworkApiDeleteServerPrivateNetworkRequest} + * @param request - The request {@link PrivateNetworkApiDeleteServerPrivateNetworkRequest} */ deleteServerPrivateNetwork = ( request: Readonly, diff --git a/packages/clients/src/api/baremetal/v3/types.gen.ts b/packages/clients/src/api/baremetal/v3/types.gen.ts index f50f80eb1..bfdd5f980 100644 --- a/packages/clients/src/api/baremetal/v3/types.gen.ts +++ b/packages/clients/src/api/baremetal/v3/types.gen.ts @@ -17,23 +17,41 @@ export type ServerPrivateNetworkStatus = | 'locked' export interface ServerPrivateNetwork { - /** UUID of the Server-to-Private Network mapping. */ + /** + * UUID of the Server-to-Private Network mapping. + */ id: string - /** Private Network Project UUID. */ + /** + * Private Network Project UUID. + */ projectId: string - /** Server UUID. */ + /** + * Server UUID. + */ serverId: string - /** Private Network UUID. */ + /** + * Private Network UUID. + */ privateNetworkId: string - /** VLAN UUID associated with the Private Network. */ + /** + * VLAN UUID associated with the Private Network. + */ vlan?: number - /** Configuration status of the Private Network. */ + /** + * Configuration status of the Private Network. + */ status: ServerPrivateNetworkStatus - /** Private Network creation date. */ + /** + * Private Network creation date. + */ createdAt?: Date - /** Date the Private Network was last modified. */ + /** + * Date the Private Network was last modified. + */ updatedAt?: Date - /** IPAM IP IDs of the server, if it has any. */ + /** + * IPAM IP IDs of the server, if it has any. + */ ipamIpIds: string[] } @@ -43,57 +61,89 @@ export interface ListServerPrivateNetworksResponse { } export type PrivateNetworkApiAddServerPrivateNetworkRequest = { - /** Zone to target. If none is passed will use default zone from the config. */ + /** + * Zone to target. If none is passed will use default zone from the config. + */ zone?: ScwZone - /** UUID of the server. */ + /** + * UUID of the server. + */ serverId: string - /** UUID of the Private Network. */ + /** + * UUID of the Private Network. + */ privateNetworkId: string - /** IPAM IDs of an IPs to attach to the server. */ + /** + * IPAM IDs of an IPs to attach to the server. + */ ipamIpIds?: string[] } export type PrivateNetworkApiDeleteServerPrivateNetworkRequest = { - /** Zone to target. If none is passed will use default zone from the config. */ + /** + * Zone to target. If none is passed will use default zone from the config. + */ zone?: ScwZone - /** UUID of the server. */ + /** + * UUID of the server. + */ serverId: string - /** UUID of the Private Network. */ + /** + * UUID of the Private Network. + */ privateNetworkId: string } export type PrivateNetworkApiListServerPrivateNetworksRequest = { - /** Zone to target. If none is passed will use default zone from the config. */ + /** + * Zone to target. If none is passed will use default zone from the config. + */ zone?: ScwZone - /** Sort order for the returned Private Networks. */ + /** + * Sort order for the returned Private Networks. + */ orderBy?: ListServerPrivateNetworksRequestOrderBy - /** Page number for the returned Private Networks. */ + /** + * Page number for the returned Private Networks. + */ page?: number - /** Maximum number of Private Networks per page. */ + /** + * Maximum number of Private Networks per page. + */ pageSize?: number - /** Filter Private Networks by server UUID. */ + /** + * Filter Private Networks by server UUID. + */ serverId?: string - /** Filter Private Networks by Private Network UUID. */ + /** + * Filter Private Networks by Private Network UUID. + */ privateNetworkId?: string - /** Filter Private Networks by organization UUID. */ + /** + * Filter Private Networks by organization UUID. + */ organizationId?: string - /** Filter Private Networks by project UUID. */ + /** + * Filter Private Networks by project UUID. + */ projectId?: string - /** Filter Private Networks by IPAM IP UUIDs. */ + /** + * Filter Private Networks by IPAM IP UUIDs. + */ ipamIpIds?: string[] } export type PrivateNetworkApiSetServerPrivateNetworksRequest = { - /** Zone to target. If none is passed will use default zone from the config. */ + /** + * Zone to target. If none is passed will use default zone from the config. + */ zone?: ScwZone - /** UUID of the server. */ + /** + * UUID of the server. + */ serverId: string /** - * Object where the keys are the UUIDs of Private Networks and the values are - * arrays of IPAM IDs representing the IPs to assign to this Elastic Metal - * server on the Private Network. If the array supplied for a Private Network - * is empty, the next available IP from the Private Network's CIDR block will - * automatically be used for attachment. + * Object where the keys are the UUIDs of Private Networks and the values are arrays of IPAM IDs representing the IPs to assign to this Elastic Metal server on the Private Network. If the array supplied for a Private Network is empty, the next available IP from the Private Network's CIDR block will automatically be used for attachment. */ perPrivateNetworkIpamIpIds: Record } diff --git a/packages/clients/src/api/dedibox/v1/api.gen.ts b/packages/clients/src/api/dedibox/v1/api.gen.ts index e8ec4a463..8579d7a17 100644 --- a/packages/clients/src/api/dedibox/v1/api.gen.ts +++ b/packages/clients/src/api/dedibox/v1/api.gen.ts @@ -249,7 +249,9 @@ const jsonContentHeaders = { 'Content-Type': 'application/json; charset=utf-8', } -/** Dedibox Phoenix API. */ +/** + * Dedibox Phoenix API. + */ export class API extends ParentAPI { /** Lists the available zones of the API. */ public static readonly LOCALITIES: ScwZone[] = [ @@ -290,8 +292,7 @@ export class API extends ParentAPI { enrichForPagination('servers', this.pageOfListServers, request) /** - * Get a specific baremetal server. Get the server associated with the given - * ID. + * Get a specific baremetal server. Get the server associated with the given ID. * * @param request - The request {@link GetServerRequest} * @returns A Promise of Server @@ -368,8 +369,7 @@ export class API extends ParentAPI { ) /** - * List subscribable server options. List subscribable options associated to - * the given server ID. + * List subscribable server options. List subscribable options associated to the given server ID. * * @param request - The request {@link ListSubscribableServerOptionsRequest} * @returns A Promise of ListSubscribableServerOptionsResponse @@ -403,9 +403,7 @@ export class API extends ParentAPI { ) /** - * Create a baremetal server. Create a new baremetal server. The order return - * you a service ID to follow the provisionning status you could call - * GetService. + * Create a baremetal server. Create a new baremetal server. The order return you a service ID to follow the provisionning status you could call GetService. * * @param request - The request {@link CreateServerRequest} * @returns A Promise of Service @@ -424,8 +422,7 @@ export class API extends ParentAPI { ) /** - * Subscribe storage server option. Subscribe storage option for the given - * server ID. + * Subscribe storage server option. Subscribe storage option for the given server ID. * * @param request - The request {@link SubscribeStorageOptionsRequest} * @returns A Promise of SubscribeStorageOptionsResponse @@ -478,8 +475,7 @@ export class API extends ParentAPI { ) /** - * Reboot a baremetal server. Reboot the server associated with the given ID, - * use boot param to reboot in rescue. + * Reboot a baremetal server. Reboot the server associated with the given ID, use boot param to reboot in rescue. * * @param request - The request {@link RebootServerRequest} */ @@ -655,8 +651,7 @@ export class API extends ParentAPI { enrichForPagination('services', this.pageOfListServices, request) /** - * Install a baremetal server. Install an OS on the server associated with the - * given ID. + * Install a baremetal server. Install an OS on the server associated with the given ID. * * @param request - The request {@link InstallServerRequest} * @returns A Promise of ServerInstall @@ -675,8 +670,7 @@ export class API extends ParentAPI { ) /** - * Get a specific server installation status. Get the server installation - * status associated with the given server ID. + * Get a specific server installation status. Get the server installation status associated with the given server ID. * * @param request - The request {@link GetServerInstallRequest} * @returns A Promise of ServerInstall @@ -713,8 +707,7 @@ export class API extends ParentAPI { ) /** - * Cancels the current (running) server installation. Cancels the current - * server installation associated with the given server ID. + * Cancels the current (running) server installation. Cancels the current server installation associated with the given server ID. * * @param request - The request {@link CancelServerInstallRequest} */ @@ -725,8 +718,7 @@ export class API extends ParentAPI { }) /** - * Get server default partitioning. Get the server default partitioning schema - * associated with the given server ID and OS ID. + * Get server default partitioning. Get the server default partitioning schema associated with the given server ID and OS ID. * * @param request - The request {@link GetServerDefaultPartitioningRequest} * @returns A Promise of ServerDefaultPartitioning @@ -743,10 +735,8 @@ export class API extends ParentAPI { ) /** - * Start BMC (Baseboard Management Controller) access for a given baremetal - * server. Start BMC (Baseboard Management Controller) access associated with - * the given ID. The BMC (Baseboard Management Controller) access is available - * one hour after the installation of the server. + * Start BMC (Baseboard Management Controller) access for a given baremetal server. Start BMC (Baseboard Management Controller) access associated with the given ID. +The BMC (Baseboard Management Controller) access is available one hour after the installation of the server. * * @param request - The request {@link StartBMCAccessRequest} */ @@ -761,9 +751,7 @@ export class API extends ParentAPI { }) /** - * Get BMC (Baseboard Management Controller) access for a given baremetal - * server. Get the BMC (Baseboard Management Controller) access associated - * with the given ID. + * Get BMC (Baseboard Management Controller) access for a given baremetal server. Get the BMC (Baseboard Management Controller) access associated with the given ID. * * @param request - The request {@link GetBMCAccessRequest} * @returns A Promise of BMCAccess @@ -800,9 +788,7 @@ export class API extends ParentAPI { ) /** - * Stop BMC (Baseboard Management Controller) access for a given baremetal - * server. Stop BMC (Baseboard Management Controller) access associated with - * the given ID. + * Stop BMC (Baseboard Management Controller) access for a given baremetal server. Stop BMC (Baseboard Management Controller) access associated with the given ID. * * @param request - The request {@link StopBMCAccessRequest} */ @@ -954,8 +940,7 @@ export class API extends ParentAPI { ) /** - * Attach failovers on baremetal server. Attach failovers on the server - * associated with the given ID. + * Attach failovers on baremetal server. Attach failovers on the server associated with the given ID. * * @param request - The request {@link AttachFailoverIPsRequest} */ @@ -970,8 +955,7 @@ export class API extends ParentAPI { }) /** - * Detach failovers on baremetal server. Detach failovers on the server - * associated with the given ID. + * Detach failovers on baremetal server. Detach failovers on the server associated with the given ID. * * @param request - The request {@link DetachFailoverIPsRequest} */ @@ -1074,8 +1058,7 @@ export class API extends ParentAPI { enrichForPagination('failoverIps', this.pageOfListFailoverIPs, request) /** - * Get a specific baremetal server. Get the server associated with the given - * ID. + * Get a specific baremetal server. Get the server associated with the given ID. * * @param request - The request {@link GetFailoverIPRequest} * @returns A Promise of FailoverIP @@ -1136,8 +1119,7 @@ export class API extends ParentAPI { }) /** - * Start in rescue baremetal server. Start in rescue the server associated - * with the given ID. + * Start in rescue baremetal server. Start in rescue the server associated with the given ID. * * @param request - The request {@link StartRescueRequest} * @returns A Promise of Rescue @@ -1171,8 +1153,7 @@ export class API extends ParentAPI { ) /** - * Stop rescue on baremetal server. Stop rescue on the server associated with - * the given ID. + * Stop rescue on baremetal server. Stop rescue on the server associated with the given ID. * * @param request - The request {@link StopRescueRequest} */ @@ -1183,7 +1164,9 @@ export class API extends ParentAPI { }) } -/** Dedibox Phoenix Billing API. */ +/** + * Dedibox Phoenix Billing API. + */ export class BillingAPI extends ParentAPI { protected pageOfListInvoices = ( request: Readonly = {}, @@ -1279,12 +1262,15 @@ export class BillingAPI extends ParentAPI { ) } -/** Dedibox Phoenix IPv6 Block API. */ +/** + * Dedibox Phoenix IPv6 Block API. + */ export class IPv6BlockAPI extends ParentAPI { /** - * Get IPv6 block quota. Get IPv6 block quota with the given project ID. /48 - * one per organization. /56 link to your number of server. /64 link to your - * number of failover IP. + * Get IPv6 block quota. Get IPv6 block quota with the given project ID. +/48 one per organization. +/56 link to your number of server. +/64 link to your number of failover IP. * * @param request - The request {@link IPv6BlockApiGetIPv6BlockQuotasRequest} * @returns A Promise of GetIPv6BlockQuotasResponse @@ -1302,8 +1288,7 @@ export class IPv6BlockAPI extends ParentAPI { ) /** - * Create IPv6 block for baremetal server. Create IPv6 block associated with - * the given project ID. + * Create IPv6 block for baremetal server. Create IPv6 block associated with the given project ID. * * @param request - The request {@link IPv6BlockApiCreateIPv6BlockRequest} * @returns A Promise of IPv6Block @@ -1343,8 +1328,8 @@ export class IPv6BlockAPI extends ParentAPI { ) /** - * Update IPv6 block. Update DNS associated to IPv6 block. If DNS is used, - * minimum of 2 is necessary and maximum of 5 (no duplicate). + * Update IPv6 block. Update DNS associated to IPv6 block. +If DNS is used, minimum of 2 is necessary and maximum of 5 (no duplicate). * * @param request - The request {@link IPv6BlockApiUpdateIPv6BlockRequest} * @returns A Promise of IPv6Block @@ -1377,12 +1362,11 @@ export class IPv6BlockAPI extends ParentAPI { }) /** - * Create IPv6 block subnet. Create IPv6 block subnet for the given IP ID. /48 - * could create subnet in /56 (quota link to your number of server). /56 could - * create subnet in /64 (quota link to your number of failover IP). + * Create IPv6 block subnet. Create IPv6 block subnet for the given IP ID. +/48 could create subnet in /56 (quota link to your number of server). +/56 could create subnet in /64 (quota link to your number of failover IP). * - * @param request - The request - * {@link IPv6BlockApiCreateIPv6BlockSubnetRequest} + * @param request - The request {@link IPv6BlockApiCreateIPv6BlockSubnetRequest} * @returns A Promise of IPv6Block */ createIPv6BlockSubnet = ( @@ -1404,11 +1388,9 @@ export class IPv6BlockAPI extends ParentAPI { ) /** - * List available IPv6 block subnets. List all available IPv6 block subnets - * for given IP ID. + * List available IPv6 block subnets. List all available IPv6 block subnets for given IP ID. * - * @param request - The request - * {@link IPv6BlockApiListIPv6BlockSubnetsAvailableRequest} + * @param request - The request {@link IPv6BlockApiListIPv6BlockSubnetsAvailableRequest} * @returns A Promise of ListIPv6BlockSubnetsAvailableResponse */ listIPv6BlockSubnetsAvailable = ( @@ -1423,7 +1405,9 @@ export class IPv6BlockAPI extends ParentAPI { ) } -/** Dedibox Phoenix RPN API. */ +/** + * Dedibox Phoenix RPN API. + */ export class RpnAPI extends ParentAPI { protected pageOfListRpnServerCapabilities = ( request: Readonly = {}, @@ -1469,7 +1453,9 @@ export class RpnAPI extends ParentAPI { ) } -/** Dedibox Phoenix RPN SAN API. */ +/** + * Dedibox Phoenix RPN SAN API. + */ export class RpnSanAPI extends ParentAPI { protected pageOfListRpnSans = ( request: Readonly = {}, @@ -1585,7 +1571,9 @@ export class RpnSanAPI extends ParentAPI { ) } -/** Dedibox Phoenix RPN v1 API. */ +/** + * Dedibox Phoenix RPN v1 API. + */ export class RpnV1API extends ParentAPI { protected pageOfListRpnGroups = ( request: Readonly = {}, @@ -1824,7 +1812,9 @@ export class RpnV1API extends ParentAPI { }) } -/** Dedibox Phoenix RPN v2 API. */ +/** + * Dedibox Phoenix RPN v2 API. + */ export class RpnV2API extends ParentAPI { protected pageOfListRpnV2Groups = ( request: Readonly = {}, diff --git a/packages/clients/src/api/dedibox/v1/types.gen.ts b/packages/clients/src/api/dedibox/v1/types.gen.ts index 2cfc8acea..bf7019978 100644 --- a/packages/clients/src/api/dedibox/v1/types.gen.ts +++ b/packages/clients/src/api/dedibox/v1/types.gen.ts @@ -316,11 +316,17 @@ export interface OfferRPNInfo { } export interface OfferSANInfo { - /** SAN size (in bytes). */ + /** + * SAN size (in bytes). + */ size: number - /** High availabilty offer. */ + /** + * High availability offer. + */ ha: boolean - /** Type of SAN device (hdd / ssd). */ + /** + * Type of SAN device (hdd / ssd). + */ deviceType: OfferSANInfoType } @@ -330,208 +336,246 @@ export interface OfferStorageInfo { } export interface IP { - /** ID of the IP. */ + /** + * ID of the IP. + */ ipId: number - /** Address of the IP. */ + /** + * Address of the IP. + */ address: string - /** Reverse IP value. */ + /** + * Reverse IP value. + */ reverse: string - /** Version of IP (v4 or v6). */ + /** + * Version of IP (v4 or v6). + */ version: IPVersion - /** Classless InterDomain Routing notation of the IP. */ + /** + * Classless InterDomain Routing notation of the IP. + */ cidr: number - /** Network mask of IP. */ + /** + * Network mask of IP. + */ netmask: string - /** Semantic of IP. */ + /** + * Semantic of IP. + */ semantic: IPSemantic - /** Gateway of IP. */ + /** + * Gateway of IP. + */ gateway: string - /** Status of the IP. */ + /** + * Status of the IP. + */ status: IPStatus } export interface Offer { - /** ID of the offer. */ + /** + * ID of the offer. + */ id: number - /** Name of the offer. */ + /** + * Name of the offer. + */ name: string - /** Catalog of the offer. */ + /** + * Catalog of the offer. + */ catalog: OfferCatalog - /** Payment frequency of the offer. */ + /** + * Payment frequency of the offer. + */ paymentFrequency: OfferPaymentFrequency - /** Price of the offer. */ + /** + * Price of the offer. + */ pricing?: Money /** * Server info if it is a server offer. * - * One-of ('offerInfo'): at most one of 'serverInfo', 'serviceLevelInfo', - * 'rpnInfo', 'sanInfo', 'antidosInfo', 'backupInfo', 'usbStorageInfo', - * 'storageInfo', 'licenseInfo', 'failoverIpInfo', 'failoverBlockInfo', - * 'bandwidthInfo' could be set. + * One-of ('offerInfo'): at most one of 'serverInfo', 'serviceLevelInfo', 'rpnInfo', 'sanInfo', 'antidosInfo', 'backupInfo', 'usbStorageInfo', 'storageInfo', 'licenseInfo', 'failoverIpInfo', 'failoverBlockInfo', 'bandwidthInfo' could be set. */ serverInfo?: OfferServerInfo /** * Service level info if it is a service level offer. * - * One-of ('offerInfo'): at most one of 'serverInfo', 'serviceLevelInfo', - * 'rpnInfo', 'sanInfo', 'antidosInfo', 'backupInfo', 'usbStorageInfo', - * 'storageInfo', 'licenseInfo', 'failoverIpInfo', 'failoverBlockInfo', - * 'bandwidthInfo' could be set. + * One-of ('offerInfo'): at most one of 'serverInfo', 'serviceLevelInfo', 'rpnInfo', 'sanInfo', 'antidosInfo', 'backupInfo', 'usbStorageInfo', 'storageInfo', 'licenseInfo', 'failoverIpInfo', 'failoverBlockInfo', 'bandwidthInfo' could be set. */ serviceLevelInfo?: OfferServiceLevelInfo /** * RPN info if it is a RPN offer. * - * One-of ('offerInfo'): at most one of 'serverInfo', 'serviceLevelInfo', - * 'rpnInfo', 'sanInfo', 'antidosInfo', 'backupInfo', 'usbStorageInfo', - * 'storageInfo', 'licenseInfo', 'failoverIpInfo', 'failoverBlockInfo', - * 'bandwidthInfo' could be set. + * One-of ('offerInfo'): at most one of 'serverInfo', 'serviceLevelInfo', 'rpnInfo', 'sanInfo', 'antidosInfo', 'backupInfo', 'usbStorageInfo', 'storageInfo', 'licenseInfo', 'failoverIpInfo', 'failoverBlockInfo', 'bandwidthInfo' could be set. */ rpnInfo?: OfferRPNInfo /** * SAN info if it is a SAN offer. * - * One-of ('offerInfo'): at most one of 'serverInfo', 'serviceLevelInfo', - * 'rpnInfo', 'sanInfo', 'antidosInfo', 'backupInfo', 'usbStorageInfo', - * 'storageInfo', 'licenseInfo', 'failoverIpInfo', 'failoverBlockInfo', - * 'bandwidthInfo' could be set. + * One-of ('offerInfo'): at most one of 'serverInfo', 'serviceLevelInfo', 'rpnInfo', 'sanInfo', 'antidosInfo', 'backupInfo', 'usbStorageInfo', 'storageInfo', 'licenseInfo', 'failoverIpInfo', 'failoverBlockInfo', 'bandwidthInfo' could be set. */ sanInfo?: OfferSANInfo /** * AntiDOS info if it is a antiDOS offer. * - * One-of ('offerInfo'): at most one of 'serverInfo', 'serviceLevelInfo', - * 'rpnInfo', 'sanInfo', 'antidosInfo', 'backupInfo', 'usbStorageInfo', - * 'storageInfo', 'licenseInfo', 'failoverIpInfo', 'failoverBlockInfo', - * 'bandwidthInfo' could be set. + * One-of ('offerInfo'): at most one of 'serverInfo', 'serviceLevelInfo', 'rpnInfo', 'sanInfo', 'antidosInfo', 'backupInfo', 'usbStorageInfo', 'storageInfo', 'licenseInfo', 'failoverIpInfo', 'failoverBlockInfo', 'bandwidthInfo' could be set. */ antidosInfo?: OfferAntiDosInfo /** * Backup info if it is a backup offer. * - * One-of ('offerInfo'): at most one of 'serverInfo', 'serviceLevelInfo', - * 'rpnInfo', 'sanInfo', 'antidosInfo', 'backupInfo', 'usbStorageInfo', - * 'storageInfo', 'licenseInfo', 'failoverIpInfo', 'failoverBlockInfo', - * 'bandwidthInfo' could be set. + * One-of ('offerInfo'): at most one of 'serverInfo', 'serviceLevelInfo', 'rpnInfo', 'sanInfo', 'antidosInfo', 'backupInfo', 'usbStorageInfo', 'storageInfo', 'licenseInfo', 'failoverIpInfo', 'failoverBlockInfo', 'bandwidthInfo' could be set. */ backupInfo?: OfferBackupInfo /** * USB storage info if it is a USB storage offer. * - * One-of ('offerInfo'): at most one of 'serverInfo', 'serviceLevelInfo', - * 'rpnInfo', 'sanInfo', 'antidosInfo', 'backupInfo', 'usbStorageInfo', - * 'storageInfo', 'licenseInfo', 'failoverIpInfo', 'failoverBlockInfo', - * 'bandwidthInfo' could be set. + * One-of ('offerInfo'): at most one of 'serverInfo', 'serviceLevelInfo', 'rpnInfo', 'sanInfo', 'antidosInfo', 'backupInfo', 'usbStorageInfo', 'storageInfo', 'licenseInfo', 'failoverIpInfo', 'failoverBlockInfo', 'bandwidthInfo' could be set. */ usbStorageInfo?: OfferStorageInfo /** * Storage info if it is a storage offer. * - * One-of ('offerInfo'): at most one of 'serverInfo', 'serviceLevelInfo', - * 'rpnInfo', 'sanInfo', 'antidosInfo', 'backupInfo', 'usbStorageInfo', - * 'storageInfo', 'licenseInfo', 'failoverIpInfo', 'failoverBlockInfo', - * 'bandwidthInfo' could be set. + * One-of ('offerInfo'): at most one of 'serverInfo', 'serviceLevelInfo', 'rpnInfo', 'sanInfo', 'antidosInfo', 'backupInfo', 'usbStorageInfo', 'storageInfo', 'licenseInfo', 'failoverIpInfo', 'failoverBlockInfo', 'bandwidthInfo' could be set. */ storageInfo?: OfferStorageInfo /** * License info if it is a license offer. * - * One-of ('offerInfo'): at most one of 'serverInfo', 'serviceLevelInfo', - * 'rpnInfo', 'sanInfo', 'antidosInfo', 'backupInfo', 'usbStorageInfo', - * 'storageInfo', 'licenseInfo', 'failoverIpInfo', 'failoverBlockInfo', - * 'bandwidthInfo' could be set. + * One-of ('offerInfo'): at most one of 'serverInfo', 'serviceLevelInfo', 'rpnInfo', 'sanInfo', 'antidosInfo', 'backupInfo', 'usbStorageInfo', 'storageInfo', 'licenseInfo', 'failoverIpInfo', 'failoverBlockInfo', 'bandwidthInfo' could be set. */ licenseInfo?: OfferLicenseInfo /** * Failover IP info if it is a failover IP offer. * - * One-of ('offerInfo'): at most one of 'serverInfo', 'serviceLevelInfo', - * 'rpnInfo', 'sanInfo', 'antidosInfo', 'backupInfo', 'usbStorageInfo', - * 'storageInfo', 'licenseInfo', 'failoverIpInfo', 'failoverBlockInfo', - * 'bandwidthInfo' could be set. + * One-of ('offerInfo'): at most one of 'serverInfo', 'serviceLevelInfo', 'rpnInfo', 'sanInfo', 'antidosInfo', 'backupInfo', 'usbStorageInfo', 'storageInfo', 'licenseInfo', 'failoverIpInfo', 'failoverBlockInfo', 'bandwidthInfo' could be set. */ failoverIpInfo?: OfferFailoverIpInfo /** * Failover block info if it is a failover block offer. * - * One-of ('offerInfo'): at most one of 'serverInfo', 'serviceLevelInfo', - * 'rpnInfo', 'sanInfo', 'antidosInfo', 'backupInfo', 'usbStorageInfo', - * 'storageInfo', 'licenseInfo', 'failoverIpInfo', 'failoverBlockInfo', - * 'bandwidthInfo' could be set. + * One-of ('offerInfo'): at most one of 'serverInfo', 'serviceLevelInfo', 'rpnInfo', 'sanInfo', 'antidosInfo', 'backupInfo', 'usbStorageInfo', 'storageInfo', 'licenseInfo', 'failoverIpInfo', 'failoverBlockInfo', 'bandwidthInfo' could be set. */ failoverBlockInfo?: OfferFailoverBlockInfo /** * Bandwidth info if it is a bandwidth offer. * - * One-of ('offerInfo'): at most one of 'serverInfo', 'serviceLevelInfo', - * 'rpnInfo', 'sanInfo', 'antidosInfo', 'backupInfo', 'usbStorageInfo', - * 'storageInfo', 'licenseInfo', 'failoverIpInfo', 'failoverBlockInfo', - * 'bandwidthInfo' could be set. + * One-of ('offerInfo'): at most one of 'serverInfo', 'serviceLevelInfo', 'rpnInfo', 'sanInfo', 'antidosInfo', 'backupInfo', 'usbStorageInfo', 'storageInfo', 'licenseInfo', 'failoverIpInfo', 'failoverBlockInfo', 'bandwidthInfo' could be set. */ bandwidthInfo?: OfferBandwidthInfo } export interface NetworkInterface { - /** Card ID of the network interface. */ + /** + * Card ID of the network interface. + */ cardId: number - /** Device ID of the network interface. */ + /** + * Device ID of the network interface. + */ deviceId: number - /** MAC address of the network interface. */ + /** + * MAC address of the network interface. + */ mac: string - /** Network interface type. */ + /** + * Network interface type. + */ type: NetworkInterfaceInterfaceType - /** IPs of the network interface. */ + /** + * IPs of the network interface. + */ ips: IP[] } export interface OS { - /** ID of the OS. */ + /** + * ID of the OS. + */ id: number - /** Name of the OS. */ + /** + * Name of the OS. + */ name: string - /** Type of the OS. */ + /** + * Type of the OS. + */ type: OSType - /** Version of the OS. */ + /** + * Version of the OS. + */ version: string - /** Architecture of the OS. */ + /** + * Architecture of the OS. + */ arch: OSArch - /** True if the OS allow custom partitioning. */ + /** + * True if the OS allow custom partitioning. + */ allowCustomPartitioning: boolean - /** True if the OS allow SSH Keys. */ + /** + * True if the OS allow SSH Keys. + */ allowSshKeys: boolean - /** True if the OS requires user. */ + /** + * True if the OS requires user. + */ requiresUser: boolean - /** True if the OS requires admin password. */ + /** + * True if the OS requires admin password. + */ requiresAdminPassword: boolean - /** True if the OS requires panel password. */ + /** + * True if the OS requires panel password. + */ requiresPanelPassword: boolean - /** True if the OS allow file systems. */ + /** + * True if the OS allow file systems. + */ allowedFilesystems: PartitionFileSystem[] - /** True if the OS requires license. */ + /** + * True if the OS requires license. + */ requiresLicense: boolean - /** License offers available with the OS. */ + /** + * License offers available with the OS. + */ licenseOffers: Offer[] - /** Maximum number of partitions which can be created. */ + /** + * Maximum number of partitions which can be created. + */ maxPartitions?: number - /** Display name of the OS. */ + /** + * Display name of the OS. + */ displayName: string - /** Regex used to validate the installation passwords. */ + /** + * Regex used to validate the installation passwords. + */ passwordRegex: string - /** Regex used to validate the panel installation password. */ + /** + * Regex used to validate the panel installation password. + */ panelPasswordRegex?: string /** - * If both requires_valid_hostname & hostname_regex are set, it means that at - * least one of the criterias must be valid. + * If both requires_valid_hostname & hostname_regex are set, it means that at least one of the criteria must be valid. */ requiresValidHostname?: boolean /** - * If both requires_valid_hostname & hostname_regex are set, it means that at - * least one of the criterias must be valid. + * If both requires_valid_hostname & hostname_regex are set, it means that at least one of the criteria must be valid. */ hostnameRegex?: string - /** Hostname max length. */ + /** + * Hostname max length. + */ hostnameMaxLength: number - /** OS release date. */ + /** + * OS release date. + */ releasedAt?: Date } @@ -550,70 +594,121 @@ export interface ServerOption { } export interface ServiceLevel { - /** Offer ID of service level. */ + /** + * Offer ID of service level. + */ offerId: number - /** Level type of service level. */ + /** + * Level type of service level. + */ level: ServiceLevelLevel } export interface RpnSan { - /** RPN SAN ID. */ + /** + * RPN SAN ID. + */ id: number - /** Datacenter location. */ + /** + * Datacenter location. + */ datacenterName: string - /** Organization ID. */ + /** + * Organization ID. + */ organizationId: string - /** Project ID. */ + /** + * Project ID. + */ projectId: string - /** RPN SAN server hostname. */ + /** + * RPN SAN server hostname. + */ serverHostname: string - /** IQN suffix. */ + /** + * IQN suffix. + */ iqnSuffix: string - /** Date of creation of the RPN SAN. */ + /** + * Date of creation of the RPN SAN. + */ createdAt?: Date - /** Offer ID. */ + /** + * Offer ID. + */ offerId: number - /** Offer description. */ + /** + * Offer description. + */ offerName: string - /** Status. */ + /** + * Status. + */ status: RpnSanStatus - /** RPN SAN storage size. */ + /** + * RPN SAN storage size. + */ storageSize: number iqn: string offer?: Offer - /** True if the SAN is compatible with the RPNv1 technology. */ + /** + * True if the SAN is compatible with the RPNv1 technology. + */ rpnv1Compatible: boolean /** - * True if the offer supports the RPNv1 implicitly, false if it must to be - * added to a group to support RPNv1. + * True if the offer supports the RPNv1 implicitly, false if it must to be added to a group to support RPNv1. */ rpnv1Implicit: boolean - /** RPN SAN delivery date. */ + /** + * RPN SAN delivery date. + */ deliveredAt?: Date - /** RPN SAN termination date. */ + /** + * RPN SAN termination date. + */ terminatedAt?: Date - /** RPN SAN expiration date. */ + /** + * RPN SAN expiration date. + */ expiresAt?: Date } export interface RpnGroup { - /** Rpn group member ID. */ + /** + * Rpn group member ID. + */ id: number - /** Rpn group name. */ + /** + * Rpn group name. + */ name: string - /** Rpn group type (local or shared). */ + /** + * Rpn group type (local or shared). + */ type: RpnGroupType - /** Whether the group is active or not. */ + /** + * Whether the group is active or not. + */ active: boolean - /** Rpn group creation date. */ + /** + * Rpn group creation date. + */ createdAt?: Date - /** RPN group owner. */ + /** + * RPN group owner. + */ owner: string - /** Total number of members. */ + /** + * Total number of members. + */ membersCount: number - /** Rpn group organization ID. */ + /** + * Rpn group organization ID. + */ organizationId: string - /** Rpn group project ID. */ + /** + * Rpn group project ID. + */ projectId: string } @@ -623,70 +718,132 @@ export interface RpnV2GroupSubnet { } export interface Server { - /** ID of the server. */ + /** + * ID of the server. + */ id: number - /** Organization ID the server is attached to. */ + /** + * Organization ID the server is attached to. + */ organizationId: string - /** Project ID the server is attached to. */ + /** + * Project ID the server is attached to. + */ projectId: string - /** Hostname of the server. */ + /** + * Hostname of the server. + */ hostname: string - /** Date of last reboot of the server. */ + /** + * Date of last reboot of the server. + */ rebootedAt?: Date - /** Date of creation of the server. */ + /** + * Date of creation of the server. + */ createdAt?: Date - /** Date of last modification of the server. */ + /** + * Date of last modification of the server. + */ updatedAt?: Date - /** Date of release of the server. */ + /** + * Date of release of the server. + */ expiredAt?: Date - /** Offer of the server. */ + /** + * Offer of the server. + */ offer?: Offer - /** Status of the server. */ + /** + * Status of the server. + */ status: ServerStatus - /** Location of the server. */ + /** + * Location of the server. + */ location?: ServerLocation - /** Abuse contact of the server. */ + /** + * Abuse contact of the server. + */ abuseContact: string - /** OS installed on the server. */ + /** + * OS installed on the server. + */ os?: OS - /** Network interfaces of the server. */ + /** + * Network interfaces of the server. + */ interfaces: NetworkInterface[] - /** The zone in which is the server. */ + /** + * The zone in which is the server. + */ zone: ScwZone - /** Options subscribe on the server. */ + /** + * Options subscribe on the server. + */ options: ServerOption[] - /** Service level of the server. */ + /** + * Service level of the server. + */ level?: ServiceLevel - /** Boolean if the server has a BMC. */ + /** + * Boolean if the server has a BMC. + */ hasBmc: boolean - /** Rescue OS of the server. */ + /** + * Rescue OS of the server. + */ rescueOs?: OS - /** Array of customs tags attached to the server. */ + /** + * Array of customs tags attached to the server. + */ tags: string[] - /** Whether the server is outsourced or not. */ + /** + * Whether the server is outsourced or not. + */ isOutsourced: boolean - /** Whether or not you can enable/disable the IPv6. */ + /** + * Whether or not you can enable/disable the IPv6. + */ ipv6Slaac: boolean - /** Whether the server is compatible with QinQ. */ + /** + * Whether the server is compatible with QinQ. + */ qinq: boolean - /** Whether or not the server is already part of an rpnv2 group. */ + /** + * Whether or not the server is already part of an rpnv2 group. + */ isRpnv2Member: boolean } export interface FailoverBlock { - /** ID of the failover block. */ + /** + * ID of the failover block. + */ id: number - /** IP of the failover block. */ + /** + * IP of the failover block. + */ address: string - /** Name servers. */ + /** + * Name servers. + */ nameservers: string[] - /** IP version of the failover block. */ + /** + * IP version of the failover block. + */ ipVersion: FailoverBlockVersion - /** Classless InterDomain Routing notation of the failover block. */ + /** + * Classless InterDomain Routing notation of the failover block. + */ cidr: number - /** Netmask of the failover block. */ + /** + * Netmask of the failover block. + */ netmask: string - /** Gateway IP of the failover block. */ + /** + * Gateway IP of the failover block. + */ gatewayIp: string } @@ -702,51 +859,91 @@ export interface RpnSanIpServer { } export interface RpnSanServer { - /** The RPN SAN server ID. */ + /** + * The RPN SAN server ID. + */ id: number - /** The RPN SAN server datacenter name. */ + /** + * The RPN SAN server datacenter name. + */ datacenterName: string - /** The RPN SAN server hostname. */ + /** + * The RPN SAN server hostname. + */ hostname: string - /** RPN SANs linked to the RPN SAN server. */ + /** + * RPN SANs linked to the RPN SAN server. + */ sans: RpnSan[] - /** The RPN SAN server zone. */ + /** + * The RPN SAN server zone. + */ zone: ScwZone } export interface RpnV2Group { - /** RPN V2 group ID. */ + /** + * RPN V2 group ID. + */ id: number - /** RPN V2 group name. */ + /** + * RPN V2 group name. + */ name: string - /** Whether or not the RPN V1 compatibility was enabled. */ + /** + * Whether or not the RPN V1 compatibility was enabled. + */ compatibleRpnv1: boolean - /** Organization ID of the RPN V2 group. */ + /** + * Organization ID of the RPN V2 group. + */ organizationId: string - /** Project ID of the RPN V2 group. */ + /** + * Project ID of the RPN V2 group. + */ projectId: string - /** RPN V2 group type (qing / standard). */ + /** + * RPN V2 group type (qing / standard). + */ type: RpnV2GroupType - /** RPN V2 group status. */ + /** + * RPN V2 group status. + */ status: RpnV2GroupStatus - /** RPN V2 group owner. */ + /** + * RPN V2 group owner. + */ owner: string - /** Total number of members. */ + /** + * Total number of members. + */ membersCount: number - /** RPN V2 subnet. */ + /** + * RPN V2 subnet. + */ subnet?: RpnV2GroupSubnet - /** RPN V2 gateway. */ + /** + * RPN V2 gateway. + */ gateway: string - /** The RPNv1 group (if the compatibility was enabled). */ + /** + * The RPNv1 group (if the compatibility was enabled). + */ rpnv1Group?: RpnGroup } export interface RpnV2Member { - /** RPN V2 member ID. */ + /** + * RPN V2 member ID. + */ id: number - /** RPN V2 member status. */ + /** + * RPN V2 member status. + */ status: RpnV2MemberStatus - /** RPN V2 member VLAN. */ + /** + * RPN V2 member VLAN. + */ vlan: string /** * Server behind the member (may be empty). @@ -760,7 +957,9 @@ export interface RpnV2Member { * One-of ('resource'): at most one of 'server', 'rpnv1Group' could be set. */ rpnv1Group?: RpnGroup - /** RPN speed. */ + /** + * RPN speed. + */ speed?: number } @@ -773,23 +972,41 @@ export interface ServerDisk { } export interface Service { - /** ID of the service. */ + /** + * ID of the service. + */ id: number - /** Resource ID of the service. */ + /** + * Resource ID of the service. + */ resourceId?: number - /** Provisioning status of the service. */ + /** + * Provisioning status of the service. + */ provisioningStatus: ServiceProvisioningStatus - /** Offer of the service. */ + /** + * Offer of the service. + */ offer?: Offer - /** Creation date of the service. */ + /** + * Creation date of the service. + */ createdAt?: Date - /** Delivery date of the service. */ + /** + * Delivery date of the service. + */ deliveredAt?: Date - /** Terminatation date of the service. */ + /** + * Terminatation date of the service. + */ terminatedAt?: Date - /** Expiration date of the service. */ + /** + * Expiration date of the service. + */ expiresAt?: Date - /** Service type, either order or service. */ + /** + * Service type, either order or service. + */ type: ServiceType } @@ -799,44 +1016,80 @@ export interface GetIPv6BlockQuotasResponseQuota { } export interface InstallPartition { - /** File system of the installation partition. */ + /** + * File system of the installation partition. + */ fileSystem: PartitionFileSystem - /** Mount point of the installation partition. */ + /** + * Mount point of the installation partition. + */ mountPoint?: string - /** RAID level of the installation partition. */ + /** + * RAID level of the installation partition. + */ raidLevel: RaidArrayRaidLevel - /** Capacity of the installation partition. */ + /** + * Capacity of the installation partition. + */ capacity: number - /** Connectors of the installation partition. */ + /** + * Connectors of the installation partition. + */ connectors: string[] } export interface FailoverIP { - /** ID of the failover IP. */ + /** + * ID of the failover IP. + */ id: number - /** IP of the failover IP. */ + /** + * IP of the failover IP. + */ address: string - /** Reverse IP value. */ + /** + * Reverse IP value. + */ reverse: string - /** IP version of the failover IP. */ + /** + * IP version of the failover IP. + */ ipVersion: FailoverIPVersion - /** Classless InterDomain Routing notation of the failover IP. */ + /** + * Classless InterDomain Routing notation of the failover IP. + */ cidr: number - /** Netmask of the failover IP. */ + /** + * Netmask of the failover IP. + */ netmask: string - /** Gateway IP of the failover IP. */ + /** + * Gateway IP of the failover IP. + */ gatewayIp: string - /** MAC address of the IP failover. */ + /** + * MAC address of the IP failover. + */ mac?: string - /** Server ID linked to the IP failover. */ + /** + * Server ID linked to the IP failover. + */ serverId?: number - /** Status of the IP failover. */ + /** + * Status of the IP failover. + */ status: FailoverIPStatus - /** Block of the IP failover. */ + /** + * Block of the IP failover. + */ block?: FailoverBlock - /** The interface type. */ + /** + * The interface type. + */ type: FailoverIPInterfaceType - /** The server zone (if assigned). */ + /** + * The server zone (if assigned). + */ serverZone?: string } @@ -869,9 +1122,13 @@ export interface RpnSanIp { * One-of ('rpnSanIp'): at most one of 'server', 'rpnv2Group' could be set. */ rpnv2Group?: RpnSanIpRpnV2Group - /** An IP object. */ + /** + * An IP object. + */ ip?: IP - /** IP type (server | rpnv2_subnet). */ + /** + * IP type (server | rpnv2_subnet). + */ type: RpnSanIpType } @@ -886,290 +1143,500 @@ export interface RefundSummary { } export interface RpnGroupMember { - /** Rpn group member ID. */ + /** + * Rpn group member ID. + */ id: number - /** RPN group member status. */ + /** + * RPN group member status. + */ status: RpnGroupMemberStatus - /** Authorized RPN SAN server. */ + /** + * Authorized RPN SAN server. + */ sanServer?: RpnSanServer - /** Authorized rpn v1 capable server. */ + /** + * Authorized rpn v1 capable server. + */ server?: Server - /** RPN group ID. */ + /** + * RPN group ID. + */ groupId: number - /** RPN group name. */ + /** + * RPN group name. + */ groupName: string - /** RPN group owner. */ + /** + * RPN group owner. + */ groupOwner: string - /** RPN speed. */ + /** + * RPN speed. + */ speed?: number - /** RPN member owner. */ + /** + * RPN member owner. + */ owner: string } export interface RpnSanSummary { - /** RPN SAN ID. */ + /** + * RPN SAN ID. + */ id: number - /** Datacenter location. */ + /** + * Datacenter location. + */ datacenterName: string - /** Organization ID. */ + /** + * Organization ID. + */ organizationId: string - /** Project ID. */ + /** + * Project ID. + */ projectId: string - /** RPN SAN server hostname. */ + /** + * RPN SAN server hostname. + */ serverHostname: string - /** IQN suffix. */ + /** + * IQN suffix. + */ iqnSuffix: string - /** Date of creation of the RPN SAN. */ + /** + * Date of creation of the RPN SAN. + */ createdAt?: Date - /** Offer ID. */ + /** + * Offer ID. + */ offerId: number - /** Offer description. */ + /** + * Offer description. + */ offerName: string - /** Status. */ + /** + * Status. + */ status: RpnSanStatus - /** RPN SAN storage size. */ + /** + * RPN SAN storage size. + */ storageSize: number - /** True if the SAN is compatible with the RPNv1 technology. */ + /** + * True if the SAN is compatible with the RPNv1 technology. + */ rpnv1Compatible: boolean /** - * True if the offer supports the RPNv1 implicitly, false if it must to be - * added to a group to support RPNv1. + * True if the offer supports the RPNv1 implicitly, false if it must to be added to a group to support RPNv1. */ rpnv1Implicit: boolean - /** RPN SAN delivery date. */ + /** + * RPN SAN delivery date. + */ deliveredAt?: Date - /** RPN SAN termination date. */ + /** + * RPN SAN termination date. + */ terminatedAt?: Date - /** RPN SAN expiration date. */ + /** + * RPN SAN expiration date. + */ expiresAt?: Date } export interface RpnServerCapability { - /** Server ID. */ + /** + * Server ID. + */ id: number - /** Server hostname. */ + /** + * Server hostname. + */ hostname: string - /** Server datacenter name. */ + /** + * Server datacenter name. + */ datacenterName: string - /** Server zone. */ + /** + * Server zone. + */ zone: ScwZone - /** Private IP address (if rpn compatiblle). */ + /** + * Private IP address (if rpn compatiblle). + */ ipAddress?: string - /** Supported rpn version. */ + /** + * Supported rpn version. + */ rpnVersion?: number - /** True if server is compatible with QinQ protocol (rpn v2). */ + /** + * True if server is compatible with QinQ protocol (rpn v2). + */ compatibleQinq: boolean - /** True if server can join a QinQ group. */ + /** + * True if server can join a QinQ group. + */ canJoinQinqGroup: boolean - /** Times server is linked in a rpnv1 group. */ + /** + * Times server is linked in a rpnv1 group. + */ rpnv1GroupCount: number - /** Times server is linked in a rpnv2 group. */ + /** + * Times server is linked in a rpnv2 group. + */ rpnv2GroupCount: number - /** True if server can join an rpnv2 group. */ + /** + * True if server can join an rpnv2 group. + */ canJoinRpnv2Group: boolean } export interface Log { - /** RPN V2 log ID. */ + /** + * RPN V2 log ID. + */ id: number - /** RPN V2 group. */ + /** + * RPN V2 group. + */ group?: RpnV2Group - /** RPN V2 member (if appliable). */ + /** + * RPN V2 member (if appliable). + */ member?: RpnV2Member - /** Which action was performed. */ + /** + * Which action was performed. + */ action: LogAction - /** Action status. */ + /** + * Action status. + */ status: LogStatus - /** Creation date. */ + /** + * Creation date. + */ createdAt?: Date - /** Completion date. */ + /** + * Completion date. + */ finishedAt?: Date } export interface ServerEvent { - /** ID of the event. */ + /** + * ID of the event. + */ eventId: number - /** Description of the event. */ + /** + * Description of the event. + */ description: string - /** Date of the event. */ + /** + * Date of the event. + */ date?: Date } export interface ServerSummary { - /** ID of the server. */ + /** + * ID of the server. + */ id: number - /** Datacenter of the server. */ + /** + * Datacenter of the server. + */ datacenterName: string - /** Organization ID the server is attached to. */ + /** + * Organization ID the server is attached to. + */ organizationId: string - /** Project ID the server is attached to. */ + /** + * Project ID the server is attached to. + */ projectId: string - /** Hostname of the server. */ + /** + * Hostname of the server. + */ hostname: string - /** Date of creation of the server. */ + /** + * Date of creation of the server. + */ createdAt?: Date - /** Date of last modification of the server. */ + /** + * Date of last modification of the server. + */ updatedAt?: Date - /** Date of release of the server. */ + /** + * Date of release of the server. + */ expiredAt?: Date - /** Offer ID of the server. */ + /** + * Offer ID of the server. + */ offerId: number - /** Offer name of the server. */ + /** + * Offer name of the server. + */ offerName: string - /** Status of the server. */ + /** + * Status of the server. + */ status: ServerStatus - /** OS ID installed on server. */ + /** + * OS ID installed on server. + */ osId?: number - /** Network interfaces of the server. */ + /** + * Network interfaces of the server. + */ interfaces: NetworkInterface[] - /** The zone in which is the server. */ + /** + * The zone in which is the server. + */ zone: ScwZone - /** Service level of the server. */ + /** + * Service level of the server. + */ level?: ServiceLevel - /** Whether the server is outsourced or not. */ + /** + * Whether the server is outsourced or not. + */ isOutsourced: boolean - /** Whether the server is compatible with QinQ. */ + /** + * Whether the server is compatible with QinQ. + */ qinq: boolean - /** Supported RPN version. */ + /** + * Supported RPN version. + */ rpnVersion?: number } export interface CPU { - /** Name of CPU. */ + /** + * Name of CPU. + */ name: string - /** Number of cores of the CPU. */ + /** + * Number of cores of the CPU. + */ coreCount: number - /** Number of threads of the CPU. */ + /** + * Number of threads of the CPU. + */ threadCount: number - /** Frequency of the CPU. */ + /** + * Frequency of the CPU. + */ frequency: number } export interface Disk { - /** Capacity of the disk. */ + /** + * Capacity of the disk. + */ capacity: number - /** Type of the disk. */ + /** + * Type of the disk. + */ type: ServerDiskType } export interface Memory { - /** Capacity of the memory. */ + /** + * Capacity of the memory. + */ capacity: number - /** Type of the memory. */ + /** + * Type of the memory. + */ type: MemoryType - /** Frequency of the memory. */ + /** + * Frequency of the memory. + */ frequency: number - /** True if the memory is an error-correcting code memory. */ + /** + * True if the memory is an error-correcting code memory. + */ isEcc: boolean } export interface PersistentMemory { - /** Capacity of the persistent memory. */ + /** + * Capacity of the persistent memory. + */ capacity: number - /** Frequency of the persistent memory. */ + /** + * Frequency of the persistent memory. + */ frequency: number - /** Model of the persistent memory. */ + /** + * Model of the persistent memory. + */ model: string } export interface RaidController { - /** Model of the RAID controller. */ + /** + * Model of the RAID controller. + */ model: string - /** RAID level of the RAID controller. */ + /** + * RAID level of the RAID controller. + */ raidLevel: string[] } export interface RaidArray { - /** The RAID level. */ + /** + * The RAID level. + */ raidLevel: RaidArrayRaidLevel - /** Disks on the RAID controller. */ + /** + * Disks on the RAID controller. + */ disks: ServerDisk[] } export interface Partition { - /** Type of the partition. */ + /** + * Type of the partition. + */ type: PartitionType - /** File system of the partition. */ + /** + * File system of the partition. + */ fileSystem: PartitionFileSystem - /** Mount point of the partition. */ + /** + * Mount point of the partition. + */ mountPoint?: string - /** Raid level of the partition. */ + /** + * Raid level of the partition. + */ raidLevel: RaidArrayRaidLevel - /** Capacity of the partition. */ + /** + * Capacity of the partition. + */ capacity: number - /** Connectors of the partition. */ + /** + * Connectors of the partition. + */ connectors: string[] } export interface UpdatableRaidArray { - /** The RAID level. */ + /** + * The RAID level. + */ raidLevel: RaidArrayRaidLevel - /** The list of Disk ID of the updatable RAID. */ + /** + * The list of Disk ID of the updatable RAID. + */ diskIds: number[] } export type AttachFailoverIPToMacAddressRequest = { - /** Zone to target. If none is passed will use default zone from the config. */ + /** + * Zone to target. If none is passed will use default zone from the config. + */ zone?: ScwZone - /** ID of the failover IP. */ + /** + * ID of the failover IP. + */ ipId: number - /** A mac type. */ + /** + * A mac type. + */ type?: AttachFailoverIPToMacAddressRequestMacType - /** A valid mac address (existing or not). */ + /** + * A valid mac address (existing or not). + */ mac?: string } export type AttachFailoverIPsRequest = { - /** Zone to target. If none is passed will use default zone from the config. */ + /** + * Zone to target. If none is passed will use default zone from the config. + */ zone?: ScwZone - /** ID of the server. */ + /** + * ID of the server. + */ serverId: number - /** List of ID of failovers IP to attach. */ + /** + * List of ID of failovers IP to attach. + */ fipsIds: number[] } export interface BMCAccess { - /** URL to access to the server console. */ + /** + * URL to access to the server console. + */ url: string /** - * The login to use for the BMC (Baseboard Management Controller) access - * authentification. + * The login to use for the BMC (Baseboard Management Controller) access authentification. */ login: string /** - * The password to use for the BMC (Baseboard Management Controller) access - * authentification. + * The password to use for the BMC (Baseboard Management Controller) access authentification. */ password: string /** - * The date after which the BMC (Baseboard Management Controller) access will - * be closed. + * The date after which the BMC (Baseboard Management Controller) access will be closed. */ expiresAt?: Date - /** Status of the connection. */ + /** + * Status of the connection. + */ status: BMCAccessStatus } export interface Backup { - /** ID of the backup. */ + /** + * ID of the backup. + */ id: number - /** Login of the backup. */ + /** + * Login of the backup. + */ login: string - /** Server of the backup. */ + /** + * Server of the backup. + */ server: string - /** Status of the backup. */ + /** + * Status of the backup. + */ status: BackupStatus - /** ACL enable boolean of the backup. */ + /** + * ACL enable boolean of the backup. + */ aclEnabled: boolean - /** Autologin boolean of the backup. */ + /** + * Autologin boolean of the backup. + */ autologin: boolean - /** Total quota space of the backup. */ + /** + * Total quota space of the backup. + */ quotaSpace: number - /** Quota space used of the backup. */ + /** + * Quota space used of the backup. + */ quotaSpaceUsed: number - /** Total quota files of the backup. */ + /** + * Total quota files of the backup. + */ quotaFiles: number - /** Quota files used of the backup. */ + /** + * Quota files used of the backup. + */ quotaFilesUsed: number } @@ -1219,20 +1686,32 @@ export interface CanOrderResponse { } export type CancelServerInstallRequest = { - /** Zone to target. If none is passed will use default zone from the config. */ + /** + * Zone to target. If none is passed will use default zone from the config. + */ zone?: ScwZone - /** Server ID of the server to cancel install. */ + /** + * Server ID of the server to cancel install. + */ serverId: number } export type CreateFailoverIPsRequest = { - /** Zone to target. If none is passed will use default zone from the config. */ + /** + * Zone to target. If none is passed will use default zone from the config. + */ zone?: ScwZone - /** Failover IP offer ID. */ + /** + * Failover IP offer ID. + */ offerId: number - /** Project ID. */ + /** + * Project ID. + */ projectId?: string - /** Quantity. */ + /** + * Quantity. + */ quantity: number } @@ -1242,258 +1721,420 @@ export interface CreateFailoverIPsResponse { } export type CreateServerRequest = { - /** Zone to target. If none is passed will use default zone from the config. */ + /** + * Zone to target. If none is passed will use default zone from the config. + */ zone?: ScwZone - /** Offer ID of the new server. */ + /** + * Offer ID of the new server. + */ offerId: number - /** Server option IDs of the new server. */ + /** + * Server option IDs of the new server. + */ serverOptionIds: number[] - /** Project ID of the new server. */ + /** + * Project ID of the new server. + */ projectId?: string - /** Datacenter name of the new server. */ + /** + * Datacenter name of the new server. + */ datacenterName?: string } export type DeleteFailoverIPRequest = { - /** Zone to target. If none is passed will use default zone from the config. */ + /** + * Zone to target. If none is passed will use default zone from the config. + */ zone?: ScwZone - /** ID of the failover IP to delete. */ + /** + * ID of the failover IP to delete. + */ ipId: number } export type DeleteServerRequest = { - /** Zone to target. If none is passed will use default zone from the config. */ + /** + * Zone to target. If none is passed will use default zone from the config. + */ zone?: ScwZone - /** Server ID to delete. */ + /** + * Server ID to delete. + */ serverId: number } export type DeleteServiceRequest = { - /** Zone to target. If none is passed will use default zone from the config. */ + /** + * Zone to target. If none is passed will use default zone from the config. + */ zone?: ScwZone - /** ID of the service. */ + /** + * ID of the service. + */ serviceId: number } export type DetachFailoverIPFromMacAddressRequest = { - /** Zone to target. If none is passed will use default zone from the config. */ + /** + * Zone to target. If none is passed will use default zone from the config. + */ zone?: ScwZone - /** ID of the failover IP. */ + /** + * ID of the failover IP. + */ ipId: number } export type DetachFailoverIPsRequest = { - /** Zone to target. If none is passed will use default zone from the config. */ + /** + * Zone to target. If none is passed will use default zone from the config. + */ zone?: ScwZone - /** List of IDs of failovers IP to detach. */ + /** + * List of IDs of failovers IP to detach. + */ fipsIds: number[] } export type GetBMCAccessRequest = { - /** Zone to target. If none is passed will use default zone from the config. */ + /** + * Zone to target. If none is passed will use default zone from the config. + */ zone?: ScwZone - /** ID of the server to get BMC access. */ + /** + * ID of the server to get BMC access. + */ serverId: number } export type GetFailoverIPRequest = { - /** Zone to target. If none is passed will use default zone from the config. */ + /** + * Zone to target. If none is passed will use default zone from the config. + */ zone?: ScwZone - /** ID of the failover IP. */ + /** + * ID of the failover IP. + */ ipId: number } export interface GetIPv6BlockQuotasResponse { - /** Quota for each CIDR of IPv6 block. */ + /** + * Quota for each CIDR of IPv6 block. + */ quotas: GetIPv6BlockQuotasResponseQuota[] - /** Total count of quotas. */ + /** + * Total count of quotas. + */ totalCount: number } export type GetOSRequest = { - /** Zone to target. If none is passed will use default zone from the config. */ + /** + * Zone to target. If none is passed will use default zone from the config. + */ zone?: ScwZone - /** ID of the OS. */ + /** + * ID of the OS. + */ osId: number - /** ID of the server. */ + /** + * ID of the server. + */ serverId: number - /** Project ID. */ + /** + * Project ID. + */ projectId?: string } export type GetOfferRequest = { - /** Zone to target. If none is passed will use default zone from the config. */ + /** + * Zone to target. If none is passed will use default zone from the config. + */ zone?: ScwZone - /** ID of offer. */ + /** + * ID of offer. + */ offerId: number - /** Project ID. */ + /** + * Project ID. + */ projectId?: string } export type GetOrderedServiceRequest = { - /** Zone to target. If none is passed will use default zone from the config. */ + /** + * Zone to target. If none is passed will use default zone from the config. + */ zone?: ScwZone orderedServiceId: number } export type GetRaidRequest = { - /** Zone to target. If none is passed will use default zone from the config. */ + /** + * Zone to target. If none is passed will use default zone from the config. + */ zone?: ScwZone - /** ID of the server. */ + /** + * ID of the server. + */ serverId: number } export type GetRemainingQuotaRequest = { - /** Zone to target. If none is passed will use default zone from the config. */ + /** + * Zone to target. If none is passed will use default zone from the config. + */ zone?: ScwZone - /** Project ID. */ + /** + * Project ID. + */ projectId?: string } export interface GetRemainingQuotaResponse { - /** Current failover IP quota. */ + /** + * Current failover IP quota. + */ failoverIpQuota: number - /** Remaining failover IP quota. */ + /** + * Remaining failover IP quota. + */ failoverIpRemainingQuota: number - /** Current failover block quota. */ + /** + * Current failover block quota. + */ failoverBlockQuota: number - /** Remaining failover block quota. */ + /** + * Remaining failover block quota. + */ failoverBlockRemainingQuota: number } export type GetRescueRequest = { - /** Zone to target. If none is passed will use default zone from the config. */ + /** + * Zone to target. If none is passed will use default zone from the config. + */ zone?: ScwZone - /** ID of the server to get rescue. */ + /** + * ID of the server to get rescue. + */ serverId: number } export interface GetRpnStatusResponse { - /** If status = 'operational', you can perform rpn actions in write. */ + /** + * If status = 'operational', you can perform rpn actions in write. + */ status: GetRpnStatusResponseStatus - /** Number of operations left to perform before being operational. */ + /** + * Number of operations left to perform before being operational. + */ operationsLeft?: number } export type GetServerBackupRequest = { - /** Zone to target. If none is passed will use default zone from the config. */ + /** + * Zone to target. If none is passed will use default zone from the config. + */ zone?: ScwZone - /** Server ID of the backup. */ + /** + * Server ID of the backup. + */ serverId: number } export type GetServerDefaultPartitioningRequest = { - /** Zone to target. If none is passed will use default zone from the config. */ + /** + * Zone to target. If none is passed will use default zone from the config. + */ zone?: ScwZone - /** ID of the server. */ + /** + * ID of the server. + */ serverId: number - /** OS ID of the default partitioning. */ + /** + * OS ID of the default partitioning. + */ osId: number } export type GetServerInstallRequest = { - /** Zone to target. If none is passed will use default zone from the config. */ + /** + * Zone to target. If none is passed will use default zone from the config. + */ zone?: ScwZone - /** Server ID of the server to install. */ + /** + * Server ID of the server to install. + */ serverId: number } export type GetServerRequest = { - /** Zone to target. If none is passed will use default zone from the config. */ + /** + * Zone to target. If none is passed will use default zone from the config. + */ zone?: ScwZone - /** ID of the server. */ + /** + * ID of the server. + */ serverId: number } export type GetServiceRequest = { - /** Zone to target. If none is passed will use default zone from the config. */ + /** + * Zone to target. If none is passed will use default zone from the config. + */ zone?: ScwZone - /** ID of the service. */ + /** + * ID of the service. + */ serviceId: number } export interface IPv6Block { - /** ID of the IPv6. */ + /** + * ID of the IPv6. + */ id: number - /** Address of the IPv6. */ + /** + * Address of the IPv6. + */ address: string - /** DUID of the IPv6. */ + /** + * DUID of the IPv6. + */ duid: string - /** DNS linked to the IPv6. */ + /** + * DNS linked to the IPv6. + */ nameservers: string[] - /** Classless InterDomain Routing notation of the IPv6. */ + /** + * Classless InterDomain Routing notation of the IPv6. + */ cidr: number - /** All IPv6 subnets. */ + /** + * All IPv6 subnets. + */ subnets: IPv6Block[] - /** The nameservers delegation status. */ + /** + * The nameservers delegation status. + */ delegationStatus: IPv6BlockDelegationStatus } export type IPv6BlockApiCreateIPv6BlockRequest = { - /** ID of the project. */ + /** + * ID of the project. + */ projectId?: string } export type IPv6BlockApiCreateIPv6BlockSubnetRequest = { - /** ID of the IPv6 block. */ + /** + * ID of the IPv6 block. + */ blockId: number - /** Address of the IPv6. */ + /** + * Address of the IPv6. + */ address: string - /** Classless InterDomain Routing notation of the IPv6. */ + /** + * Classless InterDomain Routing notation of the IPv6. + */ cidr: number } export type IPv6BlockApiDeleteIPv6BlockRequest = { - /** ID of the IPv6 block to delete. */ + /** + * ID of the IPv6 block to delete. + */ blockId: number } export type IPv6BlockApiGetIPv6BlockQuotasRequest = { - /** ID of the project. */ + /** + * ID of the project. + */ projectId?: string } export type IPv6BlockApiGetIPv6BlockRequest = { - /** ID of the project. */ + /** + * ID of the project. + */ projectId?: string } export type IPv6BlockApiListIPv6BlockSubnetsAvailableRequest = { - /** ID of the IPv6 block. */ + /** + * ID of the IPv6 block. + */ blockId: number } export type IPv6BlockApiUpdateIPv6BlockRequest = { - /** ID of the IPv6 block. */ + /** + * ID of the IPv6 block. + */ blockId: number - /** DNS to link to the IPv6. */ + /** + * DNS to link to the IPv6. + */ nameservers?: string[] } export type InstallServerRequest = { - /** Zone to target. If none is passed will use default zone from the config. */ + /** + * Zone to target. If none is passed will use default zone from the config. + */ zone?: ScwZone - /** Server ID to install. */ + /** + * Server ID to install. + */ serverId: number - /** OS ID to install on the server. */ + /** + * OS ID to install on the server. + */ osId: number - /** Hostname of the server. */ + /** + * Hostname of the server. + */ hostname: string - /** User to install on the server. */ + /** + * User to install on the server. + */ userLogin?: string - /** User password to install on the server. */ + /** + * User password to install on the server. + */ userPassword?: string - /** Panel password to install on the server. */ + /** + * Panel password to install on the server. + */ panelPassword?: string - /** Root password to install on the server. */ + /** + * Root password to install on the server. + */ rootPassword?: string - /** Partitions to install on the server. */ + /** + * Partitions to install on the server. + */ partitions?: InstallPartition[] - /** SSH key IDs authorized on the server. */ + /** + * SSH key IDs authorized on the server. + */ sshKeyIds?: string[] - /** Offer ID of license to install on server. */ + /** + * Offer ID of license to install on server. + */ licenseOfferId?: number - /** IP to link at the license to install on server. */ + /** + * IP to link at the license to install on server. + */ ipId?: number } @@ -1510,36 +2151,56 @@ export interface Invoice { } export type ListFailoverIPsRequest = { - /** Zone to target. If none is passed will use default zone from the config. */ + /** + * Zone to target. If none is passed will use default zone from the config. + */ zone?: ScwZone - /** Page number. */ + /** + * Page number. + */ page?: number - /** Number of failovers IP per page. */ + /** + * Number of failovers IP per page. + */ pageSize?: number - /** Order of the failovers IP. */ + /** + * Order of the failovers IP. + */ orderBy?: ListFailoverIPsRequestOrderBy - /** Filter failovers IP by project ID. */ + /** + * Filter failovers IP by project ID. + */ projectId?: string - /** Filter failovers IP which matching with this field. */ + /** + * Filter failovers IP which matching with this field. + */ search?: string /** - * True: return all failovers IP not attached on server false: return all - * failovers IP attached on server. + * True: return all failovers IP not attached on server +false: return all failovers IP attached on server. */ onlyAvailable?: boolean } export interface ListFailoverIPsResponse { - /** Total count of matching failovers IP. */ + /** + * Total count of matching failovers IP. + */ totalCount: number - /** List of failover IPs that match filters. */ + /** + * List of failover IPs that match filters. + */ failoverIps: FailoverIP[] } export interface ListIPv6BlockSubnetsAvailableResponse { - /** All available address and CIDR available in subnet. */ + /** + * All available address and CIDR available in subnet. + */ subnetAvailables: ListIPv6BlockSubnetsAvailableResponseSubnet[] - /** Total count of available subnets. */ + /** + * Total count of available subnets. + */ totalCount: number } @@ -1549,67 +2210,117 @@ export interface ListInvoicesResponse { } export interface ListIpsResponse { - /** Total count of authorized IPs. */ + /** + * Total count of authorized IPs. + */ totalCount: number - /** List of authorized IPs. */ + /** + * List of authorized IPs. + */ ips: RpnSanIp[] } export type ListOSRequest = { - /** Zone to target. If none is passed will use default zone from the config. */ + /** + * Zone to target. If none is passed will use default zone from the config. + */ zone?: ScwZone - /** Page number. */ + /** + * Page number. + */ page?: number - /** Number of OS per page. */ + /** + * Number of OS per page. + */ pageSize?: number - /** Order of the OS. */ + /** + * Order of the OS. + */ orderBy?: ListOSRequestOrderBy - /** Type of the OS. */ + /** + * Type of the OS. + */ type?: OSType - /** Filter OS by compatible server ID. */ + /** + * Filter OS by compatible server ID. + */ serverId: number - /** Project ID. */ + /** + * Project ID. + */ projectId?: string } export interface ListOSResponse { - /** Total count of matching OS. */ + /** + * Total count of matching OS. + */ totalCount: number - /** OS that match filters. */ + /** + * OS that match filters. + */ os: OS[] } export type ListOffersRequest = { - /** Zone to target. If none is passed will use default zone from the config. */ + /** + * Zone to target. If none is passed will use default zone from the config. + */ zone?: ScwZone - /** Page number. */ + /** + * Page number. + */ page?: number - /** Number of offer per page. */ + /** + * Number of offer per page. + */ pageSize?: number - /** Order of the offers. */ + /** + * Order of the offers. + */ orderBy?: ListOffersRequestOrderBy - /** Filter on commercial range. */ + /** + * Filter on commercial range. + */ commercialRange?: string - /** Filter on catalog. */ + /** + * Filter on catalog. + */ catalog?: OfferCatalog - /** Project ID. */ + /** + * Project ID. + */ projectId?: string - /** Get the current failover IP offer. */ + /** + * Get the current failover IP offer. + */ isFailoverIp?: boolean - /** Get the current failover IP block offer. */ + /** + * Get the current failover IP block offer. + */ isFailoverBlock?: boolean - /** Filter offers depending on their datacenter. */ + /** + * Filter offers depending on their datacenter. + */ soldIn?: string[] - /** Set this filter to true to only return available offers. */ + /** + * Set this filter to true to only return available offers. + */ availableOnly?: boolean - /** Get the RPN SAN offers. */ + /** + * Get the RPN SAN offers. + */ isRpnSan?: boolean } export interface ListOffersResponse { - /** Total count of matching offers. */ + /** + * Total count of matching offers. + */ totalCount: number - /** Offers that match filters. */ + /** + * Offers that match filters. + */ offers: Offer[] } @@ -1619,179 +2330,293 @@ export interface ListRefundsResponse { } export interface ListRpnCapableSanServersResponse { - /** Total count of rpn capable san servers. */ + /** + * Total count of rpn capable san servers. + */ totalCount: number - /** List of san servers. */ + /** + * List of san servers. + */ sanServers: RpnSanServer[] } export interface ListRpnCapableServersResponse { - /** Total count of rpn capable servers. */ + /** + * Total count of rpn capable servers. + */ totalCount: number - /** List of servers. */ + /** + * List of servers. + */ servers: Server[] } export interface ListRpnGroupMembersResponse { - /** Total count of rpn v1 group members. */ + /** + * Total count of rpn v1 group members. + */ totalCount: number - /** List of rpn v1 group members. */ + /** + * List of rpn v1 group members. + */ members: RpnGroupMember[] } export interface ListRpnGroupsResponse { - /** Total count of rpn groups. */ + /** + * Total count of rpn groups. + */ totalCount: number - /** List of rpn v1 groups. */ + /** + * List of rpn v1 groups. + */ rpnGroups: RpnGroup[] } export interface ListRpnInvitesResponse { - /** Total count of invites. */ + /** + * Total count of invites. + */ totalCount: number - /** List of invites. */ + /** + * List of invites. + */ members: RpnGroupMember[] } export interface ListRpnSansResponse { - /** Total count of matching RPN SANs. */ + /** + * Total count of matching RPN SANs. + */ totalCount: number - /** List of RPN SANs that match filters. */ + /** + * List of RPN SANs that match filters. + */ rpnSans: RpnSanSummary[] } export interface ListRpnServerCapabilitiesResponse { - /** Total count of servers. */ + /** + * Total count of servers. + */ totalCount: number - /** List of servers and their RPN capabilities. */ + /** + * List of servers and their RPN capabilities. + */ servers: RpnServerCapability[] } export interface ListRpnV2CapableResourcesResponse { - /** Total count of matching rpn v2 capable resources. */ + /** + * Total count of matching rpn v2 capable resources. + */ totalCount: number - /** List of rpn v2 capable resources that match filters. */ + /** + * List of rpn v2 capable resources that match filters. + */ servers: Server[] } export interface ListRpnV2GroupLogsResponse { - /** Total count of matching rpn v2 logs. */ + /** + * Total count of matching rpn v2 logs. + */ totalCount: number - /** List of rpn v2 logs that match filters. */ + /** + * List of rpn v2 logs that match filters. + */ logs: Log[] } export interface ListRpnV2GroupsResponse { - /** Total count of matching rpn v2 groups. */ + /** + * Total count of matching rpn v2 groups. + */ totalCount: number - /** List of rpn v2 groups that match filters. */ + /** + * List of rpn v2 groups that match filters. + */ rpnGroups: RpnV2Group[] } export interface ListRpnV2MembersResponse { - /** Total count of matching rpn v2 group members. */ + /** + * Total count of matching rpn v2 group members. + */ totalCount: number - /** List of rpn v2 group members that match filters. */ + /** + * List of rpn v2 group members that match filters. + */ members: RpnV2Member[] } export type ListServerDisksRequest = { - /** Zone to target. If none is passed will use default zone from the config. */ + /** + * Zone to target. If none is passed will use default zone from the config. + */ zone?: ScwZone - /** Server ID of the server disks. */ + /** + * Server ID of the server disks. + */ serverId: number - /** Page number. */ + /** + * Page number. + */ page?: number - /** Number of server disk per page. */ + /** + * Number of server disk per page. + */ pageSize?: number - /** Order of the server disks. */ + /** + * Order of the server disks. + */ orderBy?: ListServerDisksRequestOrderBy } export interface ListServerDisksResponse { - /** Total count of matching server disks. */ + /** + * Total count of matching server disks. + */ totalCount: number - /** Server disks that match filters. */ + /** + * Server disks that match filters. + */ disks: ServerDisk[] } export type ListServerEventsRequest = { - /** Zone to target. If none is passed will use default zone from the config. */ + /** + * Zone to target. If none is passed will use default zone from the config. + */ zone?: ScwZone - /** Server ID of the server events. */ + /** + * Server ID of the server events. + */ serverId: number - /** Page number. */ + /** + * Page number. + */ page?: number - /** Number of server event per page. */ + /** + * Number of server event per page. + */ pageSize?: number - /** Order of the server events. */ + /** + * Order of the server events. + */ orderBy?: ListServerEventsRequestOrderBy } export interface ListServerEventsResponse { - /** Total count of matching server events. */ + /** + * Total count of matching server events. + */ totalCount: number - /** Server events that match filters. */ + /** + * Server events that match filters. + */ events: ServerEvent[] } export type ListServersRequest = { - /** Zone to target. If none is passed will use default zone from the config. */ + /** + * Zone to target. If none is passed will use default zone from the config. + */ zone?: ScwZone - /** Page number. */ + /** + * Page number. + */ page?: number - /** Number of server per page. */ + /** + * Number of server per page. + */ pageSize?: number - /** Order of the servers. */ + /** + * Order of the servers. + */ orderBy?: ListServersRequestOrderBy - /** Filter servers by project ID. */ + /** + * Filter servers by project ID. + */ projectId?: string - /** Filter servers by hostname. */ + /** + * Filter servers by hostname. + */ search?: string } export interface ListServersResponse { - /** Total count of matching servers. */ + /** + * Total count of matching servers. + */ totalCount: number - /** Servers that match filters. */ + /** + * Servers that match filters. + */ servers: ServerSummary[] } export type ListServicesRequest = { - /** Zone to target. If none is passed will use default zone from the config. */ + /** + * Zone to target. If none is passed will use default zone from the config. + */ zone?: ScwZone - /** Page number. */ + /** + * Page number. + */ page?: number - /** Number of service per page. */ + /** + * Number of service per page. + */ pageSize?: number - /** Order of the services. */ + /** + * Order of the services. + */ orderBy?: ListServicesRequestOrderBy - /** Project ID. */ + /** + * Project ID. + */ projectId?: string } export interface ListServicesResponse { - /** Total count of matching services. */ + /** + * Total count of matching services. + */ totalCount: number - /** Services that match filters. */ + /** + * Services that match filters. + */ services: Service[] } export type ListSubscribableServerOptionsRequest = { - /** Zone to target. If none is passed will use default zone from the config. */ + /** + * Zone to target. If none is passed will use default zone from the config. + */ zone?: ScwZone - /** Server ID of the subscribable server options. */ + /** + * Server ID of the subscribable server options. + */ serverId: number - /** Page number. */ + /** + * Page number. + */ page?: number - /** Number of subscribable server option per page. */ + /** + * Number of subscribable server option per page. + */ pageSize?: number } export interface ListSubscribableServerOptionsResponse { - /** Total count of matching subscribable server options. */ + /** + * Total count of matching subscribable server options. + */ totalCount: number - /** Server options that match filters. */ + /** + * Server options that match filters. + */ serverOptions: Offer[] } @@ -1834,14 +2659,20 @@ export interface OfferServiceLevelInfo { } export interface Raid { - /** Details about the RAID controller. */ + /** + * Details about the RAID controller. + */ raidArrays: RaidArray[] } export type RebootServerRequest = { - /** Zone to target. If none is passed will use default zone from the config. */ + /** + * Zone to target. If none is passed will use default zone from the config. + */ zone?: ScwZone - /** Server ID to reboot. */ + /** + * Server ID to reboot. + */ serverId: number } @@ -1857,332 +2688,543 @@ export interface Refund { } export interface Rescue { - /** OS ID of the rescue. */ + /** + * OS ID of the rescue. + */ osId: number - /** Login of the rescue. */ + /** + * Login of the rescue. + */ login: string - /** Password of the rescue. */ + /** + * Password of the rescue. + */ password: string - /** Protocol of the resuce. */ + /** + * Protocol of the resuce. + */ protocol: RescueProtocol } export type RpnApiGetRpnStatusRequest = { - /** A project ID. */ + /** + * A project ID. + */ projectId?: string - /** An RPN v1 group ID. */ + /** + * An RPN v1 group ID. + */ rpnv1GroupId?: number - /** An RPN v2 group ID. */ + /** + * An RPN v2 group ID. + */ rpnv2GroupId?: number } export type RpnApiListRpnServerCapabilitiesRequest = { - /** Page number. */ + /** + * Page number. + */ page?: number - /** Number of servers per page. */ + /** + * Number of servers per page. + */ pageSize?: number - /** Order of the servers. */ + /** + * Order of the servers. + */ orderBy?: ListRpnServerCapabilitiesRequestOrderBy - /** Filter servers by project ID. */ + /** + * Filter servers by project ID. + */ projectId?: string } export type RpnSanApiAddIpRequest = { - /** RPN SAN ID. */ + /** + * RPN SAN ID. + */ rpnSanId: number - /** An array of IP ID. */ + /** + * An array of IP ID. + */ ipIds: number[] } export type RpnSanApiCreateRpnSanRequest = { - /** Offer ID. */ + /** + * Offer ID. + */ offerId: number - /** Your project ID. */ + /** + * Your project ID. + */ projectId?: string } export type RpnSanApiDeleteRpnSanRequest = { - /** RPN SAN ID. */ + /** + * RPN SAN ID. + */ rpnSanId: number } export type RpnSanApiGetRpnSanRequest = { - /** RPN SAN ID. */ + /** + * RPN SAN ID. + */ rpnSanId: number } export type RpnSanApiListAvailableIpsRequest = { - /** RPN SAN ID. */ + /** + * RPN SAN ID. + */ rpnSanId: number - /** Filter by IP type (server | rpnv2_subnet). */ + /** + * Filter by IP type (server | rpnv2_subnet). + */ type?: RpnSanIpType } export type RpnSanApiListIpsRequest = { - /** RPN SAN ID. */ + /** + * RPN SAN ID. + */ rpnSanId: number - /** Filter by IP type (server | rpnv2_subnet). */ + /** + * Filter by IP type (server | rpnv2_subnet). + */ type?: RpnSanIpType } export type RpnSanApiListRpnSansRequest = { - /** Page number. */ + /** + * Page number. + */ page?: number - /** Number of RPN SANs per page. */ + /** + * Number of RPN SANs per page. + */ pageSize?: number - /** Order of the RPN SANs. */ + /** + * Order of the RPN SANs. + */ orderBy?: ListRpnSansRequestOrderBy - /** Filter RPN SANs by project ID. */ + /** + * Filter RPN SANs by project ID. + */ projectId?: string } export type RpnSanApiRemoveIpRequest = { - /** RPN SAN ID. */ + /** + * RPN SAN ID. + */ rpnSanId: number - /** An array of IP ID. */ + /** + * An array of IP ID. + */ ipIds: number[] } export type RpnV1ApiAcceptRpnInviteRequest = { - /** The member ID. */ + /** + * The member ID. + */ memberId: number } export type RpnV1ApiAddRpnGroupMembersRequest = { - /** The rpn v1 group ID. */ + /** + * The rpn v1 group ID. + */ groupId: number - /** A collection of rpn v1 capable server IDs. */ + /** + * A collection of rpn v1 capable server IDs. + */ serverIds?: number[] - /** A collection of rpn v1 capable RPN SAN server IDs. */ + /** + * A collection of rpn v1 capable RPN SAN server IDs. + */ sanServerIds?: number[] } export type RpnV1ApiCreateRpnGroupRequest = { - /** Rpn v1 group name. */ + /** + * Rpn v1 group name. + */ name: string - /** A collection of rpn v1 capable servers. */ + /** + * A collection of rpn v1 capable servers. + */ serverIds?: number[] - /** A collection of rpn v1 capable rpn sans servers. */ + /** + * A collection of rpn v1 capable rpn sans servers. + */ sanServerIds?: number[] - /** A project ID. */ + /** + * A project ID. + */ projectId?: string } export type RpnV1ApiDeleteRpnGroupMembersRequest = { - /** The rpn v1 group ID. */ + /** + * The rpn v1 group ID. + */ groupId: number - /** A collection of rpn v1 group members IDs. */ + /** + * A collection of rpn v1 group members IDs. + */ memberIds: number[] } export type RpnV1ApiDeleteRpnGroupRequest = { - /** Rpn v1 group ID. */ + /** + * Rpn v1 group ID. + */ groupId: number } export type RpnV1ApiGetRpnGroupRequest = { - /** Rpn v1 group ID. */ + /** + * Rpn v1 group ID. + */ groupId: number } export type RpnV1ApiLeaveRpnGroupRequest = { - /** The RPN V1 group ID. */ + /** + * The RPN V1 group ID. + */ groupId: number - /** A project ID. */ + /** + * A project ID. + */ projectId?: string - /** A collection of rpn v1 group members IDs. */ + /** + * A collection of rpn v1 group members IDs. + */ memberIds: number[] } export type RpnV1ApiListRpnCapableSanServersRequest = { - /** Page number. */ + /** + * Page number. + */ page?: number - /** Number of rpn capable resources per page. */ + /** + * Number of rpn capable resources per page. + */ pageSize?: number - /** Order of the rpn capable resources. */ + /** + * Order of the rpn capable resources. + */ orderBy?: ListRpnCapableSanServersRequestOrderBy - /** Filter rpn capable resources by project ID. */ + /** + * Filter rpn capable resources by project ID. + */ projectId?: string } export type RpnV1ApiListRpnCapableServersRequest = { - /** Page number. */ + /** + * Page number. + */ page?: number - /** Number of rpn capable resources per page. */ + /** + * Number of rpn capable resources per page. + */ pageSize?: number - /** Order of the rpn capable resources. */ + /** + * Order of the rpn capable resources. + */ orderBy?: ListRpnCapableServersRequestOrderBy - /** Filter rpn capable resources by project ID. */ + /** + * Filter rpn capable resources by project ID. + */ projectId?: string } export type RpnV1ApiListRpnGroupMembersRequest = { - /** Filter rpn v1 group members by group ID. */ + /** + * Filter rpn v1 group members by group ID. + */ groupId: number - /** Page number. */ + /** + * Page number. + */ page?: number - /** Number of rpn v1 group members per page. */ + /** + * Number of rpn v1 group members per page. + */ pageSize?: number - /** Order of the rpn v1 group members. */ + /** + * Order of the rpn v1 group members. + */ orderBy?: ListRpnGroupMembersRequestOrderBy - /** A project ID. */ + /** + * A project ID. + */ projectId?: string } export type RpnV1ApiListRpnGroupsRequest = { - /** Page number. */ + /** + * Page number. + */ page?: number - /** Number of rpn v1 groups per page. */ + /** + * Number of rpn v1 groups per page. + */ pageSize?: number - /** Order of the rpn v1 groups. */ + /** + * Order of the rpn v1 groups. + */ orderBy?: ListRpnGroupsRequestOrderBy - /** Filter rpn v1 groups by project ID. */ + /** + * Filter rpn v1 groups by project ID. + */ projectId?: string } export type RpnV1ApiListRpnInvitesRequest = { - /** Page number. */ + /** + * Page number. + */ page?: number - /** Number of rpn capable resources per page. */ + /** + * Number of rpn capable resources per page. + */ pageSize?: number - /** Order of the rpn capable resources. */ + /** + * Order of the rpn capable resources. + */ orderBy?: ListRpnInvitesRequestOrderBy - /** Filter rpn capable resources by project ID. */ + /** + * Filter rpn capable resources by project ID. + */ projectId?: string } export type RpnV1ApiRefuseRpnInviteRequest = { - /** The member ID. */ + /** + * The member ID. + */ memberId: number } export type RpnV1ApiRpnGroupInviteRequest = { - /** The RPN V1 group ID. */ + /** + * The RPN V1 group ID. + */ groupId: number - /** A collection of external server IDs. */ + /** + * A collection of external server IDs. + */ serverIds: number[] - /** A project ID. */ + /** + * A project ID. + */ projectId?: string } export type RpnV1ApiUpdateRpnGroupNameRequest = { - /** Rpn v1 group ID. */ + /** + * Rpn v1 group ID. + */ groupId: number - /** New rpn v1 group name. */ + /** + * New rpn v1 group name. + */ name?: string } export type RpnV2ApiAddRpnV2MembersRequest = { - /** RPN V2 group ID. */ + /** + * RPN V2 group ID. + */ groupId: number - /** A collection of server IDs. */ + /** + * A collection of server IDs. + */ servers: number[] } export type RpnV2ApiCreateRpnV2GroupRequest = { - /** Project ID of the RPN V2 group. */ + /** + * Project ID of the RPN V2 group. + */ projectId?: string - /** RPN V2 group type (qing / standard). */ + /** + * RPN V2 group type (qing / standard). + */ type?: RpnV2GroupType - /** RPN V2 group name. */ + /** + * RPN V2 group name. + */ name: string - /** A collection of server IDs. */ + /** + * A collection of server IDs. + */ servers: number[] } export type RpnV2ApiDeleteRpnV2GroupRequest = { - /** RPN V2 group ID. */ + /** + * RPN V2 group ID. + */ groupId: number } export type RpnV2ApiDeleteRpnV2MembersRequest = { - /** RPN V2 group ID. */ + /** + * RPN V2 group ID. + */ groupId: number - /** A collection of member IDs. */ + /** + * A collection of member IDs. + */ memberIds: number[] } export type RpnV2ApiDisableRpnV2GroupCompatibilityRequest = { - /** RPN V2 group ID. */ + /** + * RPN V2 group ID. + */ groupId: number } export type RpnV2ApiEnableRpnV2GroupCompatibilityRequest = { - /** RPN V2 group ID. */ + /** + * RPN V2 group ID. + */ groupId: number - /** RPN V1 group ID. */ + /** + * RPN V1 group ID. + */ rpnv1GroupId: number } export type RpnV2ApiGetRpnV2GroupRequest = { - /** RPN V2 group ID. */ + /** + * RPN V2 group ID. + */ groupId: number } export type RpnV2ApiListRpnV2CapableResourcesRequest = { - /** Page number. */ + /** + * Page number. + */ page?: number - /** Number of rpn v2 capable resources per page. */ + /** + * Number of rpn v2 capable resources per page. + */ pageSize?: number - /** Order of the rpn v2 capable resources. */ + /** + * Order of the rpn v2 capable resources. + */ orderBy?: ListRpnV2CapableResourcesRequestOrderBy - /** Filter rpn v2 capable resources by project ID. */ + /** + * Filter rpn v2 capable resources by project ID. + */ projectId?: string } export type RpnV2ApiListRpnV2GroupLogsRequest = { - /** RPN V2 group ID. */ + /** + * RPN V2 group ID. + */ groupId: number - /** Page number. */ + /** + * Page number. + */ page?: number - /** Number of rpn v2 group logs per page. */ + /** + * Number of rpn v2 group logs per page. + */ pageSize?: number - /** Order of the rpn v2 group logs. */ + /** + * Order of the rpn v2 group logs. + */ orderBy?: ListRpnV2GroupLogsRequestOrderBy } export type RpnV2ApiListRpnV2GroupsRequest = { - /** Page number. */ + /** + * Page number. + */ page?: number - /** Number of rpn v2 groups per page. */ + /** + * Number of rpn v2 groups per page. + */ pageSize?: number - /** Order of the rpn v2 groups. */ + /** + * Order of the rpn v2 groups. + */ orderBy?: ListRpnV2GroupsRequestOrderBy - /** Filter rpn v2 groups by project ID. */ + /** + * Filter rpn v2 groups by project ID. + */ projectId?: string } export type RpnV2ApiListRpnV2MembersRequest = { - /** RPN V2 group ID. */ + /** + * RPN V2 group ID. + */ groupId: number - /** Page number. */ + /** + * Page number. + */ page?: number - /** Number of rpn v2 group members per page. */ + /** + * Number of rpn v2 group members per page. + */ pageSize?: number - /** Order of the rpn v2 group members. */ + /** + * Order of the rpn v2 group members. + */ orderBy?: ListRpnV2MembersRequestOrderBy - /** Filter members by type. */ + /** + * Filter members by type. + */ type?: ListRpnV2MembersRequestType } export type RpnV2ApiUpdateRpnV2GroupNameRequest = { - /** RPN V2 group ID. */ + /** + * RPN V2 group ID. + */ groupId: number - /** RPN V2 group name. */ + /** + * RPN V2 group name. + */ name?: string } export type RpnV2ApiUpdateRpnV2VlanForMembersRequest = { - /** RPN V2 group ID. */ + /** + * RPN V2 group ID. + */ groupId: number - /** RPN V2 member IDs. */ + /** + * RPN V2 member IDs. + */ memberIds: number[] - /** Min: 0. Max: 3967. */ + /** + * Min: 0. +Max: 3967. + */ vlan?: number } export interface ServerDefaultPartitioning { - /** Default partitions. */ + /** + * Default partitions. + */ partitions: Partition[] } @@ -2197,121 +3239,199 @@ export interface ServerInstall { } export type StartBMCAccessRequest = { - /** Zone to target. If none is passed will use default zone from the config. */ + /** + * Zone to target. If none is passed will use default zone from the config. + */ zone?: ScwZone - /** ID of the server to start the BMC access. */ + /** + * ID of the server to start the BMC access. + */ serverId: number - /** The IP authorized to connect to the given server. */ + /** + * The IP authorized to connect to the given server. + */ ip: string } export type StartRescueRequest = { - /** Zone to target. If none is passed will use default zone from the config. */ + /** + * Zone to target. If none is passed will use default zone from the config. + */ zone?: ScwZone - /** ID of the server to start rescue. */ + /** + * ID of the server to start rescue. + */ serverId: number - /** OS ID to use to start rescue. */ + /** + * OS ID to use to start rescue. + */ osId: number } export type StartServerRequest = { - /** Zone to target. If none is passed will use default zone from the config. */ + /** + * Zone to target. If none is passed will use default zone from the config. + */ zone?: ScwZone - /** Server ID to start. */ + /** + * Server ID to start. + */ serverId: number } export type StopBMCAccessRequest = { - /** Zone to target. If none is passed will use default zone from the config. */ + /** + * Zone to target. If none is passed will use default zone from the config. + */ zone?: ScwZone - /** ID of the server to stop BMC access. */ + /** + * ID of the server to stop BMC access. + */ serverId: number } export type StopRescueRequest = { - /** Zone to target. If none is passed will use default zone from the config. */ + /** + * Zone to target. If none is passed will use default zone from the config. + */ zone?: ScwZone - /** ID of the server to stop rescue. */ + /** + * ID of the server to stop rescue. + */ serverId: number } export type StopServerRequest = { - /** Zone to target. If none is passed will use default zone from the config. */ + /** + * Zone to target. If none is passed will use default zone from the config. + */ zone?: ScwZone - /** Server ID to stop. */ + /** + * Server ID to stop. + */ serverId: number } export type SubscribeServerOptionRequest = { - /** Zone to target. If none is passed will use default zone from the config. */ + /** + * Zone to target. If none is passed will use default zone from the config. + */ zone?: ScwZone - /** Server ID to subscribe server option. */ + /** + * Server ID to subscribe server option. + */ serverId: number - /** Option ID to subscribe. */ + /** + * Option ID to subscribe. + */ optionId: number } export type SubscribeStorageOptionsRequest = { - /** Zone to target. If none is passed will use default zone from the config. */ + /** + * Zone to target. If none is passed will use default zone from the config. + */ zone?: ScwZone - /** Server ID of the storage options to subscribe. */ + /** + * Server ID of the storage options to subscribe. + */ serverId: number - /** Option IDs of the storage options to subscribe. */ + /** + * Option IDs of the storage options to subscribe. + */ optionsIds: number[] } export interface SubscribeStorageOptionsResponse { - /** Services subscribe storage options. */ + /** + * Services subscribe storage options. + */ services: Service[] } export type UpdateRaidRequest = { - /** Zone to target. If none is passed will use default zone from the config. */ + /** + * Zone to target. If none is passed will use default zone from the config. + */ zone?: ScwZone - /** ID of the server. */ + /** + * ID of the server. + */ serverId: number - /** RAIDs to update. */ + /** + * RAIDs to update. + */ raidArrays: UpdatableRaidArray[] } export type UpdateReverseRequest = { - /** Zone to target. If none is passed will use default zone from the config. */ + /** + * Zone to target. If none is passed will use default zone from the config. + */ zone?: ScwZone - /** ID of the IP. */ + /** + * ID of the IP. + */ ipId: number - /** Reverse to apply on the IP. */ + /** + * Reverse to apply on the IP. + */ reverse: string } export type UpdateServerBackupRequest = { - /** Zone to target. If none is passed will use default zone from the config. */ + /** + * Zone to target. If none is passed will use default zone from the config. + */ zone?: ScwZone - /** Server ID to update backup. */ + /** + * Server ID to update backup. + */ serverId: number - /** Password of the server backup. */ + /** + * Password of the server backup. + */ password?: string - /** Autologin of the server backup. */ + /** + * Autologin of the server backup. + */ autologin?: boolean - /** Boolean to enable or disable ACL. */ + /** + * Boolean to enable or disable ACL. + */ aclEnabled?: boolean } export type UpdateServerRequest = { - /** Zone to target. If none is passed will use default zone from the config. */ + /** + * Zone to target. If none is passed will use default zone from the config. + */ zone?: ScwZone - /** Server ID to update. */ + /** + * Server ID to update. + */ serverId: number - /** Hostname of the server to update. */ + /** + * Hostname of the server to update. + */ hostname?: string - /** Flag to enable or not the IPv6 of server. */ + /** + * Flag to enable or not the IPv6 of server. + */ enableIpv6?: boolean } export type UpdateServerTagsRequest = { - /** Zone to target. If none is passed will use default zone from the config. */ + /** + * Zone to target. If none is passed will use default zone from the config. + */ zone?: ScwZone - /** Server ID to update the tags. */ + /** + * Server ID to update the tags. + */ serverId: number - /** Tags of server to update. */ + /** + * Tags of server to update. + */ tags?: string[] } diff --git a/packages/clients/src/api/function/v1beta1/types.gen.ts b/packages/clients/src/api/function/v1beta1/types.gen.ts index 3c29b5f1e..caed29232 100644 --- a/packages/clients/src/api/function/v1beta1/types.gen.ts +++ b/packages/clients/src/api/function/v1beta1/types.gen.ts @@ -486,7 +486,7 @@ export interface Token { */ functionId?: string /** - * UUID of the namespace the token is assoicated with. + * UUID of the namespace the token is associated with. * * One-of ('scope'): at most one of 'functionId', 'namespaceId' could be set. */ @@ -619,7 +619,7 @@ export type CreateFunctionRequest = { */ environmentVariables?: Record /** - * Minumum number of instances to scale the function to. + * Minimum number of instances to scale the function to. */ minScale?: number /** @@ -981,7 +981,7 @@ export type ListDomainsRequest = { */ orderBy?: ListDomainsRequestOrderBy /** - * UUID of the function the domain is assoicated with. + * UUID of the function the domain is associated with. */ functionId: string } @@ -1041,7 +1041,7 @@ export type ListFunctionsRequest = { */ name?: string /** - * UUID of the Organziation the function belongs to. + * UUID of the Organization the function belongs to. */ organizationId?: string /** @@ -1118,7 +1118,7 @@ export type ListTokensRequest = { */ orderBy?: ListTokensRequestOrderBy /** - * UUID of the function the token is assoicated with. + * UUID of the function the token is associated with. */ functionId?: string /** @@ -1221,7 +1221,7 @@ export type UpdateFunctionRequest = { */ environmentVariables?: Record /** - * Minumum number of instances to scale the function to. + * Minimum number of instances to scale the function to. */ minScale?: number /** diff --git a/packages/clients/src/api/iam/v1alpha1/api.gen.ts b/packages/clients/src/api/iam/v1alpha1/api.gen.ts index 17a2795c6..44638d913 100644 --- a/packages/clients/src/api/iam/v1alpha1/api.gen.ts +++ b/packages/clients/src/api/iam/v1alpha1/api.gen.ts @@ -651,7 +651,7 @@ export class API extends ParentAPI { ) /** - * Get a group. Retrive information about a given group, specified by the `group_id` parameter. The group's full details, including `user_ids` and `application_ids` are returned in the response. + * Get a group. Retrieve information about a given group, specified by the `group_id` parameter. The group's full details, including `user_ids` and `application_ids` are returned in the response. * * @param request - The request {@link GetGroupRequest} * @returns A Promise of Group @@ -1039,7 +1039,7 @@ export class API extends ParentAPI { ) /** - * Get an API key. Retrive information about an API key, specified by the `access_key` parameter. The API key's details, including either the `user_id` or `application_id` of its bearer are returned in the response. Note that the string value for the `secret_key` is nullable, and therefore is not displayed in the response. The `secret_key` value is only displayed upon API key creation. + * Get an API key. Retrieve information about an API key, specified by the `access_key` parameter. The API key's details, including either the `user_id` or `application_id` of its bearer are returned in the response. Note that the string value for the `secret_key` is nullable, and therefore is not displayed in the response. The `secret_key` value is only displayed upon API key creation. * * @param request - The request {@link GetAPIKeyRequest} * @returns A Promise of APIKey diff --git a/packages/clients/src/api/index.gen.ts b/packages/clients/src/api/index.gen.ts index 9ad0f77af..5e47484ee 100644 --- a/packages/clients/src/api/index.gen.ts +++ b/packages/clients/src/api/index.gen.ts @@ -32,6 +32,7 @@ import * as LlmInference from './llm_inference/index.gen' import * as Marketplace from './marketplace/index.gen' import * as Mnq from './mnq/index.gen' import * as Mongodb from './mongodb/index.gen' +import * as ProductCatalog from './product_catalog/index.gen' import * as Qaas from './qaas/index.gen' import * as Rdb from './rdb/index.gen' import * as Redis from './redis/index.gen' @@ -75,6 +76,7 @@ export { Marketplace, Mnq, Mongodb, + ProductCatalog, Qaas, Rdb, Redis, diff --git a/packages/clients/src/api/inference/v1/api.gen.ts b/packages/clients/src/api/inference/v1/api.gen.ts index 8ef9c9647..b6957c9ae 100644 --- a/packages/clients/src/api/inference/v1/api.gen.ts +++ b/packages/clients/src/api/inference/v1/api.gen.ts @@ -54,8 +54,8 @@ const jsonContentHeaders = { /** * Managed Inference API. - * - * This API allows you to handle your Managed Inference services. + +This API allows you to handle your Managed Inference services. */ export class API extends ParentAPI { /** Lists the available regions of the API. */ @@ -131,8 +131,7 @@ export class API extends ParentAPI { ) /** - * Create a deployment. Create a new inference deployment related to a - * specific model. + * Create a deployment. Create a new inference deployment related to a specific model. * * @param request - The request {@link CreateDeploymentRequest} * @returns A Promise of Deployment @@ -185,8 +184,8 @@ export class API extends ParentAPI { ) /** - * Get the CA certificate. Get the CA certificate used for the deployment of - * private endpoints. The CA certificate will be returned as a PEM file. + * Get the CA certificate. Get the CA certificate used for the deployment of private endpoints. +The CA certificate will be returned as a PEM file. * * @param request - The request {@link GetDeploymentCertificateRequest} * @returns A Promise of Blob @@ -364,9 +363,7 @@ export class API extends ParentAPI { ) /** - * List available node types. List all available node types. By default, the - * node types returned in the list are ordered by creation date in ascending - * order, though this can be modified via the `order_by` field. + * List available node types. List all available node types. By default, the node types returned in the list are ordered by creation date in ascending order, though this can be modified via the `order_by` field. * * @param request - The request {@link ListNodeTypesRequest} * @returns A Promise of ListNodeTypesResponse diff --git a/packages/clients/src/api/inference/v1/types.gen.ts b/packages/clients/src/api/inference/v1/types.gen.ts index c18e83ca7..9e2b24587 100644 --- a/packages/clients/src/api/inference/v1/types.gen.ts +++ b/packages/clients/src/api/inference/v1/types.gen.ts @@ -38,13 +38,16 @@ export type NodeTypeStock = | 'available' export interface ModelSupportedQuantization { - /** Number of bits for this supported quantization. */ + /** + * Number of bits for this supported quantization. + */ quantizationBits: number - /** Tells whether this quantization is allowed for this node type. */ + /** + * Tells whether this quantization is allowed for this node type. + */ allowed: boolean /** - * Maximum inference context size available for this node type and - * quantization. + * Maximum inference context size available for this node type and quantization. */ maxContextSize: number } @@ -56,50 +59,56 @@ export interface EndpointPrivateNetworkDetails { export interface EndpointPublicNetworkDetails {} export interface ModelSupportedNode { - /** Supported node type. */ + /** + * Supported node type. + */ nodeTypeName: string - /** Supported quantizations. */ + /** + * Supported quantizations. + */ quantizations: ModelSupportedQuantization[] } export interface DeploymentQuantization { /** - * The number of bits each model parameter should be quantized to. The - * quantization method is chosen based on this value. + * The number of bits each model parameter should be quantized to. The quantization method is chosen based on this value. */ bits: number } export interface Endpoint { - /** Unique identifier. */ + /** + * Unique identifier. + */ id: string /** - * For private endpoints, the URL will be accessible only from the Private - * Network. In addition, private endpoints will expose a CA certificate that - * can be used to verify the server's identity. This CA certificate can be - * retrieved using the `GetDeploymentCertificate` API call. + * For private endpoints, the URL will be accessible only from the Private Network. +In addition, private endpoints will expose a CA certificate that can be used to verify the server's identity. +This CA certificate can be retrieved using the `GetDeploymentCertificate` API call. */ url: string /** * Defines whether the endpoint is public. * - * One-of ('details'): at most one of 'publicNetwork', 'privateNetwork' could - * be set. + * One-of ('details'): at most one of 'publicNetwork', 'privateNetwork' could be set. */ publicNetwork?: EndpointPublicNetworkDetails /** * Details of the Private Network. * - * One-of ('details'): at most one of 'publicNetwork', 'privateNetwork' could - * be set. + * One-of ('details'): at most one of 'publicNetwork', 'privateNetwork' could be set. */ privateNetwork?: EndpointPrivateNetworkDetails - /** Defines whether the authentication is disabled. */ + /** + * Defines whether the authentication is disabled. + */ disableAuth: boolean } export interface ModelSupportInfo { - /** List of supported node types. */ + /** + * List of supported node types. + */ nodes: ModelSupportedNode[] } @@ -107,216 +116,330 @@ export interface EndpointSpec { /** * Set the endpoint as public. * - * One-of ('details'): at most one of 'publicNetwork', 'privateNetwork' could - * be set. + * One-of ('details'): at most one of 'publicNetwork', 'privateNetwork' could be set. */ publicNetwork?: EndpointPublicNetworkDetails /** * Private endpoints are only accessible from the Private Network. * - * One-of ('details'): at most one of 'publicNetwork', 'privateNetwork' could - * be set. + * One-of ('details'): at most one of 'publicNetwork', 'privateNetwork' could be set. */ privateNetwork?: EndpointPrivateNetworkDetails /** - * By default, deployments are protected by IAM authentication. When setting - * this field to true, the authentication will be disabled. + * By default, deployments are protected by IAM authentication. +When setting this field to true, the authentication will be disabled. */ disableAuth: boolean } export interface ModelSource { url: string - /** One-of ('credentials'): at most one of 'secret' could be set. */ + /** + * + * One-of ('credentials'): at most one of 'secret' could be set. + */ secret?: string } export interface Deployment { - /** Unique identifier. */ + /** + * Unique identifier. + */ id: string - /** Name of the deployment. */ + /** + * Name of the deployment. + */ name: string - /** Project ID. */ + /** + * Project ID. + */ projectId: string - /** Status of the deployment. */ + /** + * Status of the deployment. + */ status: DeploymentStatus - /** List of tags applied to the deployment. */ + /** + * List of tags applied to the deployment. + */ tags: string[] - /** Node type of the deployment. */ + /** + * Node type of the deployment. + */ nodeTypeName: string - /** List of endpoints. */ + /** + * List of endpoints. + */ endpoints: Endpoint[] - /** Current size of the pool. */ + /** + * Current size of the pool. + */ size: number - /** Defines the minimum size of the pool. */ + /** + * Defines the minimum size of the pool. + */ minSize: number - /** Defines the maximum size of the pool. */ + /** + * Defines the maximum size of the pool. + */ maxSize: number - /** Displays information if your deployment is in error state. */ + /** + * Displays information if your deployment is in error state. + */ errorMessage?: string - /** ID of the model used for the deployment. */ + /** + * ID of the model used for the deployment. + */ modelId: string - /** Quantization parameters for this deployment. */ + /** + * Quantization parameters for this deployment. + */ quantization?: DeploymentQuantization - /** Name of the deployed model. */ + /** + * Name of the deployed model. + */ modelName: string - /** Creation date of the deployment. */ + /** + * Creation date of the deployment. + */ createdAt?: Date - /** Last modification date of the deployment. */ + /** + * Last modification date of the deployment. + */ updatedAt?: Date - /** Region of the deployment. */ + /** + * Region of the deployment. + */ region: ScwRegion } export interface Model { - /** Unique identifier. */ + /** + * Unique identifier. + */ id: string - /** Unique Name identifier. */ + /** + * Unique Name identifier. + */ name: string - /** Project ID. */ + /** + * Project ID. + */ projectId: string - /** List of tags applied to the model. */ + /** + * List of tags applied to the model. + */ tags: string[] - /** Status of the model. */ + /** + * Status of the model. + */ status: ModelStatus - /** Purpose of the model. */ + /** + * Purpose of the model. + */ description: string - /** Displays information if your model is in error state. */ + /** + * Displays information if your model is in error state. + */ errorMessage?: string - /** Defines whether the model has an end user license agreement. */ + /** + * Defines whether the model has an end user license agreement. + */ hasEula: boolean - /** Creation date of the model. */ + /** + * Creation date of the model. + */ createdAt?: Date - /** Last modification date of the model. */ + /** + * Last modification date of the model. + */ updatedAt?: Date - /** Region of the model. */ + /** + * Region of the model. + */ region: ScwRegion - /** Supported nodes types with quantization options and context lengths. */ + /** + * Supported nodes types with quantization options and context lengths. + */ nodesSupport: ModelSupportInfo[] - /** Size, in bits, of the model parameters. */ + /** + * Size, in bits, of the model parameters. + */ parameterSizeBits: number - /** Total size, in bytes, of the model files. */ + /** + * Total size, in bytes, of the model files. + */ sizeBytes: number } export interface NodeType { - /** Name of the node type. */ + /** + * Name of the node type. + */ name: string - /** Current stock status for the node type. */ + /** + * Current stock status for the node type. + */ stockStatus: NodeTypeStock - /** Current specs of the offer. */ + /** + * Current specs of the offer. + */ description: string - /** Number of virtual CPUs. */ + /** + * Number of virtual CPUs. + */ vcpus: number - /** Quantity of RAM. */ + /** + * Quantity of RAM. + */ memory: number - /** Quantity of GPU RAM. */ + /** + * Quantity of GPU RAM. + */ vram: number - /** The node type is currently disabled. */ + /** + * The node type is currently disabled. + */ disabled: boolean - /** The node type is currently in beta. */ + /** + * The node type is currently in beta. + */ beta: boolean - /** Creation date of the node type. */ + /** + * Creation date of the node type. + */ createdAt?: Date - /** Last modification date of the node type. */ + /** + * Last modification date of the node type. + */ updatedAt?: Date - /** Number of GPUs. */ + /** + * Number of GPUs. + */ gpus: number - /** Region of the node type. */ + /** + * Region of the node type. + */ region: ScwRegion } export type CreateDeploymentRequest = { /** - * Region to target. If none is passed will use default region from the - * config. + * Region to target. If none is passed will use default region from the config. */ region?: ScwRegion - /** Name of the deployment. */ + /** + * Name of the deployment. + */ name?: string - /** ID of the Project to create the deployment in. */ + /** + * ID of the Project to create the deployment in. + */ projectId?: string - /** ID of the model to use. */ + /** + * ID of the model to use. + */ modelId: string /** - * If the model has an EULA, you must accept it before proceeding. The terms - * of the EULA can be retrieved using the `GetModelEula` API call. + * If the model has an EULA, you must accept it before proceeding. +The terms of the EULA can be retrieved using the `GetModelEula` API call. */ acceptEula?: boolean - /** Name of the node type to use. */ + /** + * Name of the node type to use. + */ nodeTypeName: string - /** List of tags to apply to the deployment. */ + /** + * List of tags to apply to the deployment. + */ tags?: string[] - /** Defines the minimum size of the pool. */ + /** + * Defines the minimum size of the pool. + */ minSize?: number - /** Defines the maximum size of the pool. */ + /** + * Defines the maximum size of the pool. + */ maxSize?: number - /** List of endpoints to create. */ + /** + * List of endpoints to create. + */ endpoints: EndpointSpec[] - /** Quantization settings to apply to this deployment. */ + /** + * Quantization settings to apply to this deployment. + */ quantization?: DeploymentQuantization } export type CreateEndpointRequest = { /** - * Region to target. If none is passed will use default region from the - * config. + * Region to target. If none is passed will use default region from the config. */ region?: ScwRegion - /** ID of the deployment to create the endpoint for. */ + /** + * ID of the deployment to create the endpoint for. + */ deploymentId: string - /** Specification of the endpoint. */ + /** + * Specification of the endpoint. + */ endpoint: EndpointSpec } export type CreateModelRequest = { /** - * Region to target. If none is passed will use default region from the - * config. + * Region to target. If none is passed will use default region from the config. */ region?: ScwRegion - /** Name of the model. */ + /** + * Name of the model. + */ name?: string - /** ID of the Project to import the model in. */ + /** + * ID of the Project to import the model in. + */ projectId?: string - /** Where to import the model from. */ + /** + * Where to import the model from. + */ source: ModelSource } export type DeleteDeploymentRequest = { /** - * Region to target. If none is passed will use default region from the - * config. + * Region to target. If none is passed will use default region from the config. */ region?: ScwRegion - /** ID of the deployment to delete. */ + /** + * ID of the deployment to delete. + */ deploymentId: string } export type DeleteEndpointRequest = { /** - * Region to target. If none is passed will use default region from the - * config. + * Region to target. If none is passed will use default region from the config. */ region?: ScwRegion - /** ID of the endpoint to delete. */ + /** + * ID of the endpoint to delete. + */ endpointId: string } export type DeleteModelRequest = { /** - * Region to target. If none is passed will use default region from the - * config. + * Region to target. If none is passed will use default region from the config. */ region?: ScwRegion - /** ID of the model to delete. */ + /** + * ID of the model to delete. + */ modelId: string } export type GetDeploymentCertificateRequest = { /** - * Region to target. If none is passed will use default region from the - * config. + * Region to target. If none is passed will use default region from the config. */ region?: ScwRegion deploymentId: string @@ -324,134 +447,191 @@ export type GetDeploymentCertificateRequest = { export type GetDeploymentRequest = { /** - * Region to target. If none is passed will use default region from the - * config. + * Region to target. If none is passed will use default region from the config. */ region?: ScwRegion - /** ID of the deployment to get. */ + /** + * ID of the deployment to get. + */ deploymentId: string } export type GetModelRequest = { /** - * Region to target. If none is passed will use default region from the - * config. + * Region to target. If none is passed will use default region from the config. */ region?: ScwRegion - /** ID of the model to get. */ + /** + * ID of the model to get. + */ modelId: string } export type ListDeploymentsRequest = { /** - * Region to target. If none is passed will use default region from the - * config. + * Region to target. If none is passed will use default region from the config. */ region?: ScwRegion - /** Page number to return. */ + /** + * Page number to return. + */ page?: number - /** Maximum number of deployments to return per page. */ + /** + * Maximum number of deployments to return per page. + */ pageSize?: number - /** Order in which to return results. */ + /** + * Order in which to return results. + */ orderBy?: ListDeploymentsRequestOrderBy - /** Filter by Project ID. */ + /** + * Filter by Project ID. + */ projectId?: string - /** Filter by Organization ID. */ + /** + * Filter by Organization ID. + */ organizationId?: string - /** Filter by deployment name. */ + /** + * Filter by deployment name. + */ name?: string - /** Filter by tags. */ + /** + * Filter by tags. + */ tags?: string[] } export interface ListDeploymentsResponse { - /** List of deployments on the current page. */ + /** + * List of deployments on the current page. + */ deployments: Deployment[] - /** Total number of deployments. */ + /** + * Total number of deployments. + */ totalCount: number } export type ListModelsRequest = { /** - * Region to target. If none is passed will use default region from the - * config. + * Region to target. If none is passed will use default region from the config. */ region?: ScwRegion - /** Order in which to return results. */ + /** + * Order in which to return results. + */ orderBy?: ListModelsRequestOrderBy - /** Page number to return. */ + /** + * Page number to return. + */ page?: number - /** Maximum number of models to return per page. */ + /** + * Maximum number of models to return per page. + */ pageSize?: number - /** Filter by Project ID. */ + /** + * Filter by Project ID. + */ projectId?: string - /** Filter by model name. */ + /** + * Filter by model name. + */ name?: string - /** Filter by tags. */ + /** + * Filter by tags. + */ tags?: string[] } export interface ListModelsResponse { - /** List of models on the current page. */ + /** + * List of models on the current page. + */ models: Model[] - /** Total number of models. */ + /** + * Total number of models. + */ totalCount: number } export type ListNodeTypesRequest = { /** - * Region to target. If none is passed will use default region from the - * config. + * Region to target. If none is passed will use default region from the config. */ region?: ScwRegion - /** Page number to return. */ + /** + * Page number to return. + */ page?: number - /** Maximum number of node types to return per page. */ + /** + * Maximum number of node types to return per page. + */ pageSize?: number - /** Include disabled node types in the response. */ + /** + * Include disabled node types in the response. + */ includeDisabledTypes: boolean } export interface ListNodeTypesResponse { - /** List of node types. */ + /** + * List of node types. + */ nodeTypes: NodeType[] - /** Total number of node types. */ + /** + * Total number of node types. + */ totalCount: number } export type UpdateDeploymentRequest = { /** - * Region to target. If none is passed will use default region from the - * config. + * Region to target. If none is passed will use default region from the config. */ region?: ScwRegion - /** ID of the deployment to update. */ + /** + * ID of the deployment to update. + */ deploymentId: string - /** Name of the deployment. */ + /** + * Name of the deployment. + */ name?: string - /** List of tags to apply to the deployment. */ + /** + * List of tags to apply to the deployment. + */ tags?: string[] - /** Defines the new minimum size of the pool. */ + /** + * Defines the new minimum size of the pool. + */ minSize?: number - /** Defines the new maximum size of the pool. */ + /** + * Defines the new maximum size of the pool. + */ maxSize?: number - /** Id of the model to set to the deployment. */ + /** + * Id of the model to set to the deployment. + */ modelId?: string - /** Quantization to use to the deployment. */ + /** + * Quantization to use to the deployment. + */ quantization?: DeploymentQuantization } export type UpdateEndpointRequest = { /** - * Region to target. If none is passed will use default region from the - * config. + * Region to target. If none is passed will use default region from the config. */ region?: ScwRegion - /** ID of the endpoint to update. */ + /** + * ID of the endpoint to update. + */ endpointId: string /** - * By default, deployments are protected by IAM authentication. When setting - * this field to true, the authentication will be disabled. + * By default, deployments are protected by IAM authentication. +When setting this field to true, the authentication will be disabled. */ disableAuth?: boolean } diff --git a/packages/clients/src/api/inference/v1beta1/api.gen.ts b/packages/clients/src/api/inference/v1beta1/api.gen.ts index 970328588..810321f83 100644 --- a/packages/clients/src/api/inference/v1beta1/api.gen.ts +++ b/packages/clients/src/api/inference/v1beta1/api.gen.ts @@ -63,8 +63,8 @@ const jsonContentHeaders = { /** * Managed Inference API. - * - * This API allows you to manage your Inference services. + +This API allows you to manage your Inference services. */ export class API extends ParentAPI { /** Lists the available regions of the API. */ @@ -140,8 +140,7 @@ export class API extends ParentAPI { ) /** - * Create a deployment. Create a new inference deployment related to a - * specific model. + * Create a deployment. Create a new inference deployment related to a specific model. * * @param request - The request {@link CreateDeploymentRequest} * @returns A Promise of Deployment @@ -194,8 +193,8 @@ export class API extends ParentAPI { ) /** - * Get the CA certificate. Get the CA certificate used for the deployment of - * private endpoints. The CA certificate will be returned as a PEM file. + * Get the CA certificate. Get the CA certificate used for the deployment of private endpoints. +The CA certificate will be returned as a PEM file. * * @param request - The request {@link GetDeploymentCertificateRequest} * @returns A Promise of Blob @@ -325,7 +324,7 @@ export class API extends ParentAPI { ) /** - * Delete an exising ACL. + * Delete an existing ACL. * * @param request - The request {@link DeleteDeploymentACLRuleRequest} */ @@ -408,9 +407,7 @@ export class API extends ParentAPI { ) /** - * List available node types. List all available node types. By default, the - * node types returned in the list are ordered by creation date in ascending - * order, though this can be modified via the `order_by` field. + * List available node types. List all available node types. By default, the node types returned in the list are ordered by creation date in ascending order, though this can be modified via the `order_by` field. * * @param request - The request {@link ListNodeTypesRequest} * @returns A Promise of ListNodeTypesResponse diff --git a/packages/clients/src/api/inference/v1beta1/types.gen.ts b/packages/clients/src/api/inference/v1beta1/types.gen.ts index c233648e1..4740a6151 100644 --- a/packages/clients/src/api/inference/v1beta1/types.gen.ts +++ b/packages/clients/src/api/inference/v1beta1/types.gen.ts @@ -31,44 +31,49 @@ export type NodeTypeStock = | 'available' export interface EndpointPrivateNetworkDetails { - /** ID of the Private Network. */ + /** + * ID of the Private Network. + */ privateNetworkId: string } export interface EndpointPublicAccessDetails {} export interface EndpointSpecPrivateNetwork { - /** ID of the Private Network. */ + /** + * ID of the Private Network. + */ privateNetworkId: string } export interface EndpointSpecPublic {} export interface Endpoint { - /** Unique identifier. */ + /** + * Unique identifier. + */ id: string /** - * For private endpoints, the URL will be accessible only from the Private - * Network. In addition, private endpoints will expose a CA certificate that - * can be used to verify the server's identity. This CA certificate can be - * retrieved using the `GetDeploymentCertificate` API call. + * For private endpoints, the URL will be accessible only from the Private Network. +In addition, private endpoints will expose a CA certificate that can be used to verify the server's identity. +This CA certificate can be retrieved using the `GetDeploymentCertificate` API call. */ url: string /** * Defines whether the endpoint is public. * - * One-of ('details'): at most one of 'publicAccess', 'privateNetwork' could - * be set. + * One-of ('details'): at most one of 'publicAccess', 'privateNetwork' could be set. */ publicAccess?: EndpointPublicAccessDetails /** * Details of the Private Network. * - * One-of ('details'): at most one of 'publicAccess', 'privateNetwork' could - * be set. + * One-of ('details'): at most one of 'publicAccess', 'privateNetwork' could be set. */ privateNetwork?: EndpointPrivateNetworkDetails - /** Defines whether the authentication is disabled. */ + /** + * Defines whether the authentication is disabled. + */ disableAuth: boolean } @@ -81,20 +86,27 @@ export interface ModelS3Model { export interface ACLRuleRequest { /** - * It can be specified as a single IP address or a range of IP addresses in - * CIDR notation. + * It can be specified as a single IP address or a range of IP addresses in CIDR notation. */ ip: string - /** Description of the ACL rule. */ + /** + * Description of the ACL rule. + */ description: string } export interface ACLRule { - /** Unique identifier. */ + /** + * Unique identifier. + */ id: string - /** Allowed IP address or CIDR range. */ + /** + * Allowed IP address or CIDR range. + */ ip: string - /** Description of the ACL rule. */ + /** + * Description of the ACL rule. + */ description: string } @@ -112,67 +124,119 @@ export interface EndpointSpec { */ privateNetwork?: EndpointSpecPrivateNetwork /** - * By default, deployments are protected by IAM authentication. When setting - * this field to true, the authentication will be disabled. + * By default, deployments are protected by IAM authentication. +When setting this field to true, the authentication will be disabled. */ disableAuth: boolean } export interface Deployment { - /** Unique identifier. */ + /** + * Unique identifier. + */ id: string - /** Name of the deployment. */ + /** + * Name of the deployment. + */ name: string - /** Project ID. */ + /** + * Project ID. + */ projectId: string - /** Status of the deployment. */ + /** + * Status of the deployment. + */ status: DeploymentStatus - /** List of tags applied to the deployment. */ + /** + * List of tags applied to the deployment. + */ tags: string[] - /** Node type of the deployment. */ + /** + * Node type of the deployment. + */ nodeType: string - /** List of endpoints. */ + /** + * List of endpoints. + */ endpoints: Endpoint[] - /** Current size of the pool. */ + /** + * Current size of the pool. + */ size: number - /** Defines the minimum size of the pool. */ + /** + * Defines the minimum size of the pool. + */ minSize: number - /** Defines the maximum size of the pool. */ + /** + * Defines the maximum size of the pool. + */ maxSize: number - /** Displays information if your deployment is in error state. */ + /** + * Displays information if your deployment is in error state. + */ errorMessage?: string - /** The inference model used for the deployment. */ + /** + * The inference model used for the deployment. + */ modelName: string - /** ID of the model used for the deployment. */ + /** + * ID of the model used for the deployment. + */ modelId: string - /** Creation date of the deployment. */ + /** + * Creation date of the deployment. + */ createdAt?: Date - /** Last modification date of the deployment. */ + /** + * Last modification date of the deployment. + */ updatedAt?: Date - /** Region of the deployment. */ + /** + * Region of the deployment. + */ region: ScwRegion } export interface Model { - /** Unique identifier. */ + /** + * Unique identifier. + */ id: string - /** Unique Name identifier. */ + /** + * Unique Name identifier. + */ name: string - /** Project ID. */ + /** + * Project ID. + */ projectId: string - /** Name of the model provider. */ + /** + * Name of the model provider. + */ provider: string - /** List of tags applied to the model. */ + /** + * List of tags applied to the model. + */ tags: string[] - /** Purpose of the model. */ + /** + * Purpose of the model. + */ description: string - /** Defines whether the model has an end user license agreement. */ + /** + * Defines whether the model has an end user license agreement. + */ hasEula: boolean - /** Creation date of the model. */ + /** + * Creation date of the model. + */ createdAt?: Date - /** Last modification date of the model. */ + /** + * Last modification date of the model. + */ updatedAt?: Date - /** Region of the model. */ + /** + * Region of the model. + */ region: ScwRegion /** * Object Storage URL pointing to the model source weight. @@ -180,138 +244,195 @@ export interface Model { * One-of ('source'): at most one of 's3Model' could be set. */ s3Model?: ModelS3Model - /** Defines whether the model is public or not. */ + /** + * Defines whether the model is public or not. + */ isPublic: boolean - /** Names of the node types compatible with the model. */ + /** + * Names of the node types compatible with the model. + */ compatibleNodeTypes: string[] - /** Quantization level of the model. */ + /** + * Quantization level of the model. + */ quantizationLevel: string } export interface NodeType { - /** Name of the node type. */ + /** + * Name of the node type. + */ name: string - /** Current stock status for the node type. */ + /** + * Current stock status for the node type. + */ stockStatus: NodeTypeStock - /** Current specs of the offer. */ + /** + * Current specs of the offer. + */ description: string - /** Number of virtual CPUs. */ + /** + * Number of virtual CPUs. + */ vcpus: number - /** Quantity of RAM. */ + /** + * Quantity of RAM. + */ memory: number - /** Quantity of GPU RAM. */ + /** + * Quantity of GPU RAM. + */ vram: number - /** The node type is currently disabled. */ + /** + * The node type is currently disabled. + */ disabled: boolean - /** The node type is currently in beta. */ + /** + * The node type is currently in beta. + */ beta: boolean - /** Creation date of the node type. */ + /** + * Creation date of the node type. + */ createdAt?: Date - /** Last modification date of the node type. */ + /** + * Last modification date of the node type. + */ updatedAt?: Date - /** Number of GPUs. */ + /** + * Number of GPUs. + */ gpus: number - /** Region of the node type. */ + /** + * Region of the node type. + */ region: ScwRegion } export type AddDeploymentACLRulesRequest = { /** - * Region to target. If none is passed will use default region from the - * config. + * Region to target. If none is passed will use default region from the config. */ region?: ScwRegion - /** ID of the deployment to add ACL rules to. */ + /** + * ID of the deployment to add ACL rules to. + */ deploymentId: string - /** List of ACL rules to add. */ + /** + * List of ACL rules to add. + */ acls?: ACLRuleRequest[] } export interface AddDeploymentACLRulesResponse { - /** List of ACL rules added. */ + /** + * List of ACL rules added. + */ rules: ACLRule[] } export type CreateDeploymentRequest = { /** - * Region to target. If none is passed will use default region from the - * config. + * Region to target. If none is passed will use default region from the config. */ region?: ScwRegion - /** Name of the deployment. */ + /** + * Name of the deployment. + */ name?: string - /** ID of the Project to create the deployment in. */ + /** + * ID of the Project to create the deployment in. + */ projectId?: string - /** Name of the model to use. */ + /** + * Name of the model to use. + */ modelName: string /** - * If the model has an EULA, you must accept it before proceeding. The terms - * of the EULA can be retrieved using the `GetModelEula` API call. + * If the model has an EULA, you must accept it before proceeding. +The terms of the EULA can be retrieved using the `GetModelEula` API call. */ acceptEula?: boolean - /** Name of the node type to use. */ + /** + * Name of the node type to use. + */ nodeType: string - /** List of tags to apply to the deployment. */ + /** + * List of tags to apply to the deployment. + */ tags?: string[] - /** Defines the minimum size of the pool. */ + /** + * Defines the minimum size of the pool. + */ minSize?: number - /** Defines the maximum size of the pool. */ + /** + * Defines the maximum size of the pool. + */ maxSize?: number - /** List of endpoints to create. */ + /** + * List of endpoints to create. + */ endpoints: EndpointSpec[] } export type CreateEndpointRequest = { /** - * Region to target. If none is passed will use default region from the - * config. + * Region to target. If none is passed will use default region from the config. */ region?: ScwRegion - /** ID of the deployment to create the endpoint for. */ + /** + * ID of the deployment to create the endpoint for. + */ deploymentId: string - /** Specification of the endpoint. */ + /** + * Specification of the endpoint. + */ endpoint: EndpointSpec } export type DeleteDeploymentACLRuleRequest = { /** - * Region to target. If none is passed will use default region from the - * config. + * Region to target. If none is passed will use default region from the config. */ region?: ScwRegion - /** ID of the ACL rule to delete. */ + /** + * ID of the ACL rule to delete. + */ aclId: string } export type DeleteDeploymentRequest = { /** - * Region to target. If none is passed will use default region from the - * config. + * Region to target. If none is passed will use default region from the config. */ region?: ScwRegion - /** ID of the deployment to delete. */ + /** + * ID of the deployment to delete. + */ deploymentId: string } export type DeleteEndpointRequest = { /** - * Region to target. If none is passed will use default region from the - * config. + * Region to target. If none is passed will use default region from the config. */ region?: ScwRegion - /** ID of the endpoint to delete. */ + /** + * ID of the endpoint to delete. + */ endpointId: string } export interface Eula { - /** Content of the end user license agreement. */ + /** + * Content of the end user license agreement. + */ content: string } export type GetDeploymentCertificateRequest = { /** - * Region to target. If none is passed will use default region from the - * config. + * Region to target. If none is passed will use default region from the config. */ region?: ScwRegion deploymentId: string @@ -319,18 +440,18 @@ export type GetDeploymentCertificateRequest = { export type GetDeploymentRequest = { /** - * Region to target. If none is passed will use default region from the - * config. + * Region to target. If none is passed will use default region from the config. */ region?: ScwRegion - /** ID of the deployment to get. */ + /** + * ID of the deployment to get. + */ deploymentId: string } export type GetModelEulaRequest = { /** - * Region to target. If none is passed will use default region from the - * config. + * Region to target. If none is passed will use default region from the config. */ region?: ScwRegion modelId: string @@ -338,158 +459,224 @@ export type GetModelEulaRequest = { export type GetModelRequest = { /** - * Region to target. If none is passed will use default region from the - * config. + * Region to target. If none is passed will use default region from the config. */ region?: ScwRegion - /** ID of the model to get. */ + /** + * ID of the model to get. + */ modelId: string } export type ListDeploymentACLRulesRequest = { /** - * Region to target. If none is passed will use default region from the - * config. + * Region to target. If none is passed will use default region from the config. */ region?: ScwRegion - /** ID of the deployment to list ACL rules for. */ + /** + * ID of the deployment to list ACL rules for. + */ deploymentId: string - /** Page number to return. */ + /** + * Page number to return. + */ page?: number - /** Maximum number of ACL rules to return per page. */ + /** + * Maximum number of ACL rules to return per page. + */ pageSize?: number } export interface ListDeploymentACLRulesResponse { - /** List of ACL rules on the current page. */ + /** + * List of ACL rules on the current page. + */ rules: ACLRule[] - /** Total number of ACL rules. */ + /** + * Total number of ACL rules. + */ totalCount: number } export type ListDeploymentsRequest = { /** - * Region to target. If none is passed will use default region from the - * config. + * Region to target. If none is passed will use default region from the config. */ region?: ScwRegion - /** Page number to return. */ + /** + * Page number to return. + */ page?: number - /** Maximum number of deployments to return per page. */ + /** + * Maximum number of deployments to return per page. + */ pageSize?: number - /** Order in which to return results. */ + /** + * Order in which to return results. + */ orderBy?: ListDeploymentsRequestOrderBy - /** Filter by Project ID. */ + /** + * Filter by Project ID. + */ projectId?: string - /** Filter by Organization ID. */ + /** + * Filter by Organization ID. + */ organizationId?: string - /** Filter by deployment name. */ + /** + * Filter by deployment name. + */ name?: string - /** Filter by tags. */ + /** + * Filter by tags. + */ tags?: string[] } export interface ListDeploymentsResponse { - /** List of deployments on the current page. */ + /** + * List of deployments on the current page. + */ deployments: Deployment[] - /** Total number of deployments. */ + /** + * Total number of deployments. + */ totalCount: number } export type ListModelsRequest = { /** - * Region to target. If none is passed will use default region from the - * config. + * Region to target. If none is passed will use default region from the config. */ region?: ScwRegion - /** Order in which to return results. */ + /** + * Order in which to return results. + */ orderBy?: ListModelsRequestOrderBy - /** Page number to return. */ + /** + * Page number to return. + */ page?: number - /** Maximum number of models to return per page. */ + /** + * Maximum number of models to return per page. + */ pageSize?: number - /** Filter by Project ID. */ + /** + * Filter by Project ID. + */ projectId?: string - /** Filter by model name. */ + /** + * Filter by model name. + */ name?: string - /** Filter by tags. */ + /** + * Filter by tags. + */ tags?: string[] } export interface ListModelsResponse { - /** List of models on the current page. */ + /** + * List of models on the current page. + */ models: Model[] - /** Total number of models. */ + /** + * Total number of models. + */ totalCount: number } export type ListNodeTypesRequest = { /** - * Region to target. If none is passed will use default region from the - * config. + * Region to target. If none is passed will use default region from the config. */ region?: ScwRegion - /** Page number to return. */ + /** + * Page number to return. + */ page?: number - /** Maximum number of node types to return per page. */ + /** + * Maximum number of node types to return per page. + */ pageSize?: number - /** Include disabled node types in the response. */ + /** + * Include disabled node types in the response. + */ includeDisabledTypes: boolean } export interface ListNodeTypesResponse { - /** List of node types. */ + /** + * List of node types. + */ nodeTypes: NodeType[] - /** Total number of node types. */ + /** + * Total number of node types. + */ totalCount: number } export type SetDeploymentACLRulesRequest = { /** - * Region to target. If none is passed will use default region from the - * config. + * Region to target. If none is passed will use default region from the config. */ region?: ScwRegion - /** ID of the deployment to set ACL rules for. */ + /** + * ID of the deployment to set ACL rules for. + */ deploymentId: string - /** All existing ACL rules will be replaced by the new ones. */ + /** + * All existing ACL rules will be replaced by the new ones. + */ acls?: ACLRuleRequest[] } export interface SetDeploymentACLRulesResponse { - /** List of ACL rules that were set. */ + /** + * List of ACL rules that were set. + */ rules: ACLRule[] } export type UpdateDeploymentRequest = { /** - * Region to target. If none is passed will use default region from the - * config. + * Region to target. If none is passed will use default region from the config. */ region?: ScwRegion - /** ID of the deployment to update. */ + /** + * ID of the deployment to update. + */ deploymentId: string - /** Name of the deployment. */ + /** + * Name of the deployment. + */ name?: string - /** List of tags to apply to the deployment. */ + /** + * List of tags to apply to the deployment. + */ tags?: string[] - /** Defines the new minimum size of the pool. */ + /** + * Defines the new minimum size of the pool. + */ minSize?: number - /** Defines the new maximum size of the pool. */ + /** + * Defines the new maximum size of the pool. + */ maxSize?: number } export type UpdateEndpointRequest = { /** - * Region to target. If none is passed will use default region from the - * config. + * Region to target. If none is passed will use default region from the config. */ region?: ScwRegion - /** ID of the endpoint to update. */ + /** + * ID of the endpoint to update. + */ endpointId: string /** - * By default, deployments are protected by IAM authentication. When setting - * this field to true, the authentication will be disabled. + * By default, deployments are protected by IAM authentication. +When setting this field to true, the authentication will be disabled. */ disableAuth?: boolean } diff --git a/packages/clients/src/api/instance/v1/api.gen.ts b/packages/clients/src/api/instance/v1/api.gen.ts index 5f2a374c7..73ac62f0e 100644 --- a/packages/clients/src/api/instance/v1/api.gen.ts +++ b/packages/clients/src/api/instance/v1/api.gen.ts @@ -241,8 +241,8 @@ const jsonContentHeaders = { /** * Instance API. - * - * This API allows you to manage your Instances. + +This API allows you to manage your CPU and GPU Instances. */ export class API extends ParentAPI { /** Lists the available zones of the API. */ @@ -280,8 +280,7 @@ export class API extends ParentAPI { ) /** - * List Instance types. List available Instance types and their technical - * details. + * List Instance types. List available Instance types and their technical details. * * @param request - The request {@link ListServersTypesRequest} * @returns A Promise of ListServersTypesResponse @@ -361,8 +360,7 @@ export class API extends ParentAPI { ) /** - * List all Instances. List all Instances in a specified Availability Zone, - * e.g. `fr-par-1`. + * List all Instances. List all Instances in a specified Availability Zone, e.g. `fr-par-1`. * * @param request - The request {@link ListServersRequest} * @returns A Promise of ListServersResponse @@ -436,8 +434,7 @@ export class API extends ParentAPI { ) /** - * List Instance actions. List all actions (e.g. power on, power off, reboot) - * that can currently be performed on an Instance. + * List Instance actions. List all actions (e.g. power on, power off, reboot) that can currently be performed on an Instance. * * @param request - The request {@link ListServerActionsRequest} * @returns A Promise of ListServerActionsResponse @@ -452,26 +449,22 @@ export class API extends ParentAPI { ) /** - * Perform action. Perform an action on an Instance. Available actions are: - * `poweron`: Start a stopped Instance. `poweroff`: Fully stop the Instance - * and release the hypervisor slot. `stop_in_place`: Stop the Instance, but - * keep the slot on the hypervisor. `reboot`: Stop the instance and restart - * it. `backup`: Create an image with all the volumes of an Instance. - * `terminate`: Delete the Instance along with its attached volumes, except - * for SBS volumes. `enable_routed_ip`: Migrate the Instance to the new - * network stack. - * - * The `terminate` action will result in the deletion of `l_ssd`, `b_ssd` and - * `scratch` volumes types, `sbs_volume` volumes type will only be detached. - * If you want to preserve your volumes, you should detach them before the - * Instance deletion or `terminate` action. - * - * The `backup` action can be done with: No `volumes` key in the body: an - * image is created with snapshots of all the server volumes, except for the - * `scratch` volumes types. `volumes` key in the body with a dictionary as - * value, in this dictionary volumes UUID as keys and empty dictionaries as - * values : an image is created with the snapshots of the volumes in `volumes` - * key. `scratch` volumes types can't be shapshotted. + * Perform action. Perform an action on an Instance. +Available actions are: +* `poweron`: Start a stopped Instance. +* `poweroff`: Fully stop the Instance and release the hypervisor slot. +* `stop_in_place`: Stop the Instance, but keep the slot on the hypervisor. +* `reboot`: Stop the instance and restart it. +* `backup`: Create an image with all the volumes of an Instance. +* `terminate`: Delete the Instance along with its attached volumes, except for SBS volumes. +* `enable_routed_ip`: Migrate the Instance to the new network stack. + +The `terminate` action will result in the deletion of `l_ssd`, `b_ssd` and `scratch` volumes types, `sbs_volume` volumes type will only be detached. +If you want to preserve your volumes, you should detach them before the Instance deletion or `terminate` action. + +The `backup` action can be done with: +* No `volumes` key in the body: an image is created with snapshots of all the server volumes, except for the `scratch` volumes types. +* `volumes` key in the body with a dictionary as value, in this dictionary volumes UUID as keys and empty dictionaries as values : an image is created with the snapshots of the volumes in `volumes` key. `scratch` volumes types can't be shapshotted. * * @param request - The request {@link ServerActionRequest} * @returns A Promise of ServerActionResponse @@ -516,12 +509,12 @@ export class API extends ParentAPI { }) /** - * Get Instance compatible types. Get compatible commercial types that can be - * used to update the Instance. The compatibility of an Instance offer is - * based on: the CPU architecture the OS type the required l_ssd storage size - * the required scratch storage size If the specified Instance offer is - * flagged as end of service, the best compatible offer is the first - * returned. + * Get Instance compatible types. Get compatible commercial types that can be used to update the Instance. The compatibility of an Instance offer is based on: +* the CPU architecture +* the OS type +* the required l_ssd storage size +* the required scratch storage size +If the specified Instance offer is flagged as end of service, the best compatible offer is the first returned. * * @param request - The request {@link GetServerCompatibleTypesRequest} * @returns A Promise of ServerCompatibleTypes @@ -607,8 +600,7 @@ export class API extends ParentAPI { ) /** - * Create an Instance image. Create an Instance image from the specified - * snapshot ID. + * Create an Instance image. Create an Instance image from the specified snapshot ID. * * @param request - The request {@link CreateImageRequest} * @returns A Promise of CreateImageResponse @@ -690,8 +682,7 @@ export class API extends ParentAPI { ) /** - * List snapshots. List all snapshots of an Organization in a specified - * Availability Zone. + * List snapshots. List all snapshots of an Organization in a specified Availability Zone. * * @param request - The request {@link ListSnapshotsRequest} * @returns A Promise of ListSnapshotsResponse @@ -700,9 +691,7 @@ export class API extends ParentAPI { enrichForPagination('snapshots', this.pageOfListSnapshots, request) /** - * Create a snapshot from a specified volume or from a QCOW2 file. Create a - * snapshot from a specified volume or from a QCOW2 file in a specified - * Availability Zone. + * Create a snapshot from a specified volume or from a QCOW2 file. Create a snapshot from a specified volume or from a QCOW2 file in a specified Availability Zone. * * @param request - The request {@link CreateSnapshotRequest} * @returns A Promise of CreateSnapshotResponse @@ -779,8 +768,7 @@ export class API extends ParentAPI { }) /** - * Export a snapshot. Export a snapshot to a specified Object Storage bucket - * in the same region. + * Export a snapshot. Export a snapshot to a specified Object Storage bucket in the same region. * * @param request - The request {@link ExportSnapshotRequest} * @returns A Promise of ExportSnapshotResponse @@ -822,8 +810,7 @@ export class API extends ParentAPI { ) /** - * List volumes. List volumes in the specified Availability Zone. You can - * filter the output by volume type. + * List volumes. List volumes in the specified Availability Zone. You can filter the output by volume type. * * @param request - The request {@link ListVolumesRequest} * @returns A Promise of ListVolumesResponse @@ -832,8 +819,7 @@ export class API extends ParentAPI { enrichForPagination('volumes', this.pageOfListVolumes, request) /** - * Create a volume. Create a volume of a specified type in an Availability - * Zone. + * Create a volume. Create a volume of a specified type in an Availability Zone. * * @param request - The request {@link CreateVolumeRequest} * @returns A Promise of CreateVolumeResponse @@ -867,9 +853,7 @@ export class API extends ParentAPI { ) /** - * Update a volume. Replace the name and/or size properties of a volume - * specified by its ID, with the specified value(s). Any volume name can be - * changed, however only `b_ssd` volumes can currently be increased in size. + * Update a volume. Replace the name and/or size properties of a volume specified by its ID, with the specified value(s). Any volume name can be changed, however only `b_ssd` volumes can currently be increased in size. * * @param request - The request {@link UpdateVolumeRequest} * @returns A Promise of UpdateVolumeResponse @@ -937,8 +921,7 @@ export class API extends ParentAPI { ) /** - * Create a security group. Create a security group with a specified name and - * description. + * Create a security group. Create a security group with a specified name and description. * * @param request - The request {@link CreateSecurityGroupRequest} * @returns A Promise of CreateSecurityGroupResponse @@ -957,8 +940,7 @@ export class API extends ParentAPI { ) /** - * Get a security group. Get the details of a security group with the - * specified ID. + * Get a security group. Get the details of a security group with the specified ID. * * @param request - The request {@link GetSecurityGroupRequest} * @returns A Promise of GetSecurityGroupResponse @@ -1016,8 +998,7 @@ export class API extends ParentAPI { ) /** - * Get default rules. Lists the default rules applied to all the security - * groups. + * Get default rules. Lists the default rules applied to all the security groups. * * @param request - The request {@link ListDefaultSecurityGroupRulesRequest} * @returns A Promise of ListSecurityGroupRulesResponse @@ -1079,10 +1060,7 @@ export class API extends ParentAPI { ) /** - * Update all the rules of a security group. Replaces the existing rules of - * the security group with the rules provided. This endpoint supports the - * update of existing rules, creation of new rules and deletion of existing - * rules when they are not passed in the request. + * Update all the rules of a security group. Replaces the existing rules of the security group with the rules provided. This endpoint supports the update of existing rules, creation of new rules and deletion of existing rules when they are not passed in the request. * * @param request - The request {@link SetSecurityGroupRulesRequest} * @returns A Promise of SetSecurityGroupRulesResponse @@ -1144,8 +1122,7 @@ export class API extends ParentAPI { ) /** - * Update security group rule. Update the properties of a rule from a - * specified security group. + * Update security group rule. Update the properties of a rule from a specified security group. * * @param request - The request {@link UpdateSecurityGroupRuleRequest} * @returns A Promise of UpdateSecurityGroupRuleResponse @@ -1190,8 +1167,7 @@ export class API extends ParentAPI { ) /** - * List placement groups. List all placement groups in a specified - * Availability Zone. + * List placement groups. List all placement groups in a specified Availability Zone. * * @param request - The request {@link ListPlacementGroupsRequest} * @returns A Promise of ListPlacementGroupsResponse @@ -1204,8 +1180,7 @@ export class API extends ParentAPI { ) /** - * Create a placement group. Create a new placement group in a specified - * Availability Zone. + * Create a placement group. Create a new placement group in a specified Availability Zone. * * @param request - The request {@link CreatePlacementGroupRequest} * @returns A Promise of CreatePlacementGroupResponse @@ -1260,8 +1235,7 @@ export class API extends ParentAPI { ) /** - * Update a placement group. Update one or more parameter of the specified - * placement group. + * Update a placement group. Update one or more parameter of the specified placement group. * * @param request - The request {@link UpdatePlacementGroupRequest} * @returns A Promise of UpdatePlacementGroupResponse @@ -1291,8 +1265,7 @@ export class API extends ParentAPI { }) /** - * Get placement group servers. Get all Instances belonging to the specified - * placement group. + * Get placement group servers. Get all Instances belonging to the specified placement group. * * @param request - The request {@link GetPlacementGroupServersRequest} * @returns A Promise of GetPlacementGroupServersResponse @@ -1309,8 +1282,7 @@ export class API extends ParentAPI { ) /** - * Set placement group servers. Set all Instances belonging to the specified - * placement group. + * Set placement group servers. Set all Instances belonging to the specified placement group. * * @param request - The request {@link SetPlacementGroupServersRequest} * @returns A Promise of SetPlacementGroupServersResponse @@ -1331,8 +1303,7 @@ export class API extends ParentAPI { ) /** - * Update placement group servers. Update all Instances belonging to the - * specified placement group. + * Update placement group servers. Update all Instances belonging to the specified placement group. * * @param request - The request {@link UpdatePlacementGroupServersRequest} * @returns A Promise of UpdatePlacementGroupServersResponse @@ -1388,8 +1359,7 @@ export class API extends ParentAPI { enrichForPagination('ips', this.pageOfListIps, request) /** - * Reserve a flexible IP. Reserve a flexible IP and attach it to the specified - * Instance. + * Reserve a flexible IP. Reserve a flexible IP and attach it to the specified Instance. * * @param request - The request {@link CreateIpRequest} * @returns A Promise of CreateIpResponse @@ -1423,8 +1393,7 @@ export class API extends ParentAPI { ) /** - * Update a flexible IP. Update a flexible IP in the specified zone with the - * specified ID. + * Update a flexible IP. Update a flexible IP in the specified zone with the specified ID. * * @param request - The request {@link UpdateIpRequest} * @returns A Promise of UpdateIpResponse @@ -1518,8 +1487,7 @@ export class API extends ParentAPI { ) /** - * Update a private NIC. Update one or more parameter(s) of a specified - * private NIC. + * Update a private NIC. Update one or more parameter(s) of a specified private NIC. * * @param request - The request {@link UpdatePrivateNICRequest} * @returns A Promise of PrivateNIC @@ -1562,23 +1530,11 @@ export class API extends ParentAPI { ) /** - * Get a volume or snapshot's migration plan. Given a volume or snapshot, - * returns the migration plan but does not perform the actual migration. To - * perform the migration, you have to call the [Migrate a volume and/or - * snapshots to - * SBS](#path-volumes-migrate-a-volume-andor-snapshots-to-sbs-scaleway-block-storage) - * endpoint afterward. The endpoint returns the resources that should be - * migrated together: - * - * - The volume and any snapshots created from the volume, if the call was made - * to plan a volume migration. - * - The base volume of the snapshot (if the volume is not deleted) and its - * related snapshots, if the call was made to plan a snapshot migration. The - * endpoint also returns the validation_key, which must be provided to the - * [Migrate a volume and/or snapshots to - * SBS](#path-volumes-migrate-a-volume-andor-snapshots-to-sbs-scaleway-block-storage) - * endpoint to confirm that all resources listed in the plan should be - * migrated. + * Get a volume or snapshot's migration plan. Given a volume or snapshot, returns the migration plan but does not perform the actual migration. To perform the migration, you have to call the [Migrate a volume and/or snapshots to SBS](#path-volumes-migrate-a-volume-andor-snapshots-to-sbs-scaleway-block-storage) endpoint afterward. +The endpoint returns the resources that should be migrated together: +- the volume and any snapshots created from the volume, if the call was made to plan a volume migration. +- the base volume of the snapshot (if the volume is not deleted) and its related snapshots, if the call was made to plan a snapshot migration. +The endpoint also returns the validation_key, which must be provided to the [Migrate a volume and/or snapshots to SBS](#path-volumes-migrate-a-volume-andor-snapshots-to-sbs-scaleway-block-storage) endpoint to confirm that all resources listed in the plan should be migrated. * * @param request - The request {@link PlanBlockMigrationRequest} * @returns A Promise of MigrationPlan @@ -1597,12 +1553,7 @@ export class API extends ParentAPI { ) /** - * Migrate a volume and/or snapshots to SBS (Scaleway Block Storage). To be - * used, the call to this endpoint must be preceded by a call to the [Get a - * volume or snapshot's migration - * plan](#path-volumes-get-a-volume-or-snapshots-migration-plan) endpoint. To - * migrate all resources mentioned in the migration plan, the validation_key - * returned in the plan must be provided. + * Migrate a volume and/or snapshots to SBS (Scaleway Block Storage). To be used, the call to this endpoint must be preceded by a call to the [Get a volume or snapshot's migration plan](#path-volumes-get-a-volume-or-snapshots-migration-plan) endpoint. To migrate all resources mentioned in the migration plan, the validation_key returned in the plan must be provided. * * @param request - The request {@link ApplyBlockMigrationRequest} */ diff --git a/packages/clients/src/api/instance/v1/types.gen.ts b/packages/clients/src/api/instance/v1/types.gen.ts index cc59a2312..5f2608f80 100644 --- a/packages/clients/src/api/instance/v1/types.gen.ts +++ b/packages/clients/src/api/instance/v1/types.gen.ts @@ -148,36 +148,64 @@ export interface Bootscript { public: boolean title: string project: string - /** Zone to target. If none is passed will use default zone from the config. */ + /** + * Zone to target. If none is passed will use default zone from the config. + */ zone: ScwZone } export interface Volume { - /** Volume unique ID. */ + /** + * Volume unique ID. + */ id: string - /** Volume name. */ + /** + * Volume name. + */ name: string - /** @deprecated Show the volume NBD export URI. */ + /** + * @deprecated Show the volume NBD export URI. + */ exportUri?: string - /** Volume disk size. */ + /** + * Volume disk size. + */ size: number - /** Volume type. */ + /** + * Volume type. + */ volumeType: VolumeVolumeType - /** Volume creation date. */ + /** + * Volume creation date. + */ creationDate?: Date - /** Volume modification date. */ + /** + * Volume modification date. + */ modificationDate?: Date - /** Volume Organization ID. */ + /** + * Volume Organization ID. + */ organization: string - /** Volume Project ID. */ + /** + * Volume Project ID. + */ project: string - /** Volume tags. */ + /** + * Volume tags. + */ tags: string[] - /** Instance attached to the volume. */ + /** + * Instance attached to the volume. + */ server?: ServerSummary - /** Volume state. */ + /** + * Volume state. + */ state: VolumeState - /** Zone in which the volume is located. */ + /** + * Zone in which the volume is located. + */ zone: ScwZone } @@ -189,16 +217,24 @@ export interface VolumeSummary { } export interface ServerTypeNetworkInterface { - /** Maximum internal bandwidth in bits per seconds. */ + /** + * Maximum internal bandwidth in bits per seconds. + */ internalBandwidth?: number - /** Maximum internet bandwidth in bits per seconds. */ + /** + * Maximum internet bandwidth in bits per seconds. + */ internetBandwidth?: number } export interface ServerTypeVolumeConstraintSizes { - /** Minimum volume size in bytes. */ + /** + * Minimum volume size in bytes. + */ minSize: number - /** Maximum volume size in bytes. */ + /** + * Maximum volume size in bytes. + */ maxSize: number } @@ -208,7 +244,9 @@ export interface Image { arch: Arch creationDate?: Date modificationDate?: Date - /** @deprecated */ + /** + * @deprecated + */ defaultBootscript?: Bootscript extraVolumes: Record fromServer: string @@ -218,52 +256,76 @@ export interface Image { state: ImageState project: string tags: string[] - /** Zone to target. If none is passed will use default zone from the config. */ + /** + * Zone to target. If none is passed will use default zone from the config. + */ zone: ScwZone } export interface PlacementGroup { - /** Placement group unique ID. */ + /** + * Placement group unique ID. + */ id: string - /** Placement group name. */ + /** + * Placement group name. + */ name: string - /** Placement group Organization ID. */ + /** + * Placement group Organization ID. + */ organization: string - /** Placement group Project ID. */ + /** + * Placement group Project ID. + */ project: string - /** Placement group tags. */ + /** + * Placement group tags. + */ tags: string[] /** - * Select the failure mode when the placement cannot be respected, either - * optional or enforced. + * Select the failure mode when the placement cannot be respected, either optional or enforced. */ policyMode: PlacementGroupPolicyMode /** - * Select the behavior of the placement group, either low_latency (group) or - * max_availability (spread). + * Select the behavior of the placement group, either low_latency (group) or max_availability (spread). */ policyType: PlacementGroupPolicyType /** - * In the server endpoints the value is always false as it is deprecated. In - * the placement group endpoints the value is correct. + * In the server endpoints the value is always false as it is deprecated. +In the placement group endpoints the value is correct. */ policyRespected: boolean - /** Zone in which the placement group is located. */ + /** + * Zone in which the placement group is located. + */ zone: ScwZone } export interface PrivateNIC { - /** Private NIC unique ID. */ + /** + * Private NIC unique ID. + */ id: string - /** Instance to which the private NIC is attached. */ + /** + * Instance to which the private NIC is attached. + */ serverId: string - /** Private Network the private NIC is attached to. */ + /** + * Private Network the private NIC is attached to. + */ privateNetworkId: string - /** Private NIC MAC address. */ + /** + * Private NIC MAC address. + */ macAddress: string - /** Private NIC state. */ + /** + * Private NIC state. + */ state: PrivateNICState - /** Private NIC tags. */ + /** + * Private NIC tags. + */ tags: string[] } @@ -273,34 +335,60 @@ export interface SecurityGroupSummary { } export interface ServerIp { - /** Unique ID of the IP address. */ + /** + * Unique ID of the IP address. + */ id: string - /** Instance's public IP-Address. */ + /** + * Instance's public IP-Address. + */ address: string - /** Gateway's IP address. */ + /** + * Gateway's IP address. + */ gateway: string - /** CIDR netmask. */ + /** + * CIDR netmask. + */ netmask: string - /** IP address family (inet or inet6). */ + /** + * IP address family (inet or inet6). + */ family: ServerIpIpFamily - /** True if the IP address is dynamic. */ + /** + * True if the IP address is dynamic. + */ dynamic: boolean - /** Information about this address provisioning mode. */ + /** + * Information about this address provisioning mode. + */ provisioningMode: ServerIpProvisioningMode - /** Tags associated with the IP. */ + /** + * Tags associated with the IP. + */ tags: string[] - /** The ip_id of an IPAM ip if the ip is created from IPAM, null if not. */ + /** + * The ip_id of an IPAM ip if the ip is created from IPAM, null if not. + */ ipamId: string - /** IP address state. */ + /** + * IP address state. + */ state: ServerIpState } export interface ServerIpv6 { - /** Instance IPv6 IP-Address. */ + /** + * Instance IPv6 IP-Address. + */ address: string - /** IPv6 IP-addresses gateway. */ + /** + * IPv6 IP-addresses gateway. + */ gateway: string - /** IPv6 IP-addresses CIDR netmask. */ + /** + * IPv6 IP-addresses CIDR netmask. + */ netmask: string } @@ -320,7 +408,9 @@ export interface ServerMaintenance { export interface VolumeServer { id: string name?: string - /** @deprecated */ + /** + * @deprecated + */ exportUri?: string organization?: string server?: ServerSummary @@ -331,46 +421,72 @@ export interface VolumeServer { state?: VolumeServerState project?: string boot: boolean - /** Zone to target. If none is passed will use default zone from the config. */ + /** + * Zone to target. If none is passed will use default zone from the config. + */ zone: ScwZone } export interface SnapshotBaseVolume { - /** Volume ID on which the snapshot is based. */ + /** + * Volume ID on which the snapshot is based. + */ id: string - /** Volume name on which the snapshot is based on. */ + /** + * Volume name on which the snapshot is based on. + */ name: string } export interface ServerTypeCapabilities { - /** Defines whether the Instance supports block storage. */ + /** + * Defines whether the Instance supports block storage. + */ blockStorage?: boolean - /** List of supported boot types. */ + /** + * List of supported boot types. + */ bootTypes: BootType[] } export interface ServerTypeGPUInfo { - /** GPU manufacturer. */ + /** + * GPU manufacturer. + */ gpuManufacturer: string - /** GPU model name. */ + /** + * GPU model name. + */ gpuName: string - /** RAM of a single GPU, in bytes. */ + /** + * RAM of a single GPU, in bytes. + */ gpuMemory: number } export interface ServerTypeNetwork { - /** List of available network interfaces. */ + /** + * List of available network interfaces. + */ interfaces: ServerTypeNetworkInterface[] - /** Total maximum internal bandwidth in bits per seconds. */ + /** + * Total maximum internal bandwidth in bits per seconds. + */ sumInternalBandwidth?: number - /** Total maximum internet bandwidth in bits per seconds. */ + /** + * Total maximum internet bandwidth in bits per seconds. + */ sumInternetBandwidth?: number - /** True if IPv6 is enabled. */ + /** + * True if IPv6 is enabled. + */ ipv6Support: boolean } export interface ServerTypeVolumeConstraintsByType { - /** Local SSD volumes. */ + /** + * Local SSD volumes. + */ lSsd?: ServerTypeVolumeConstraintSizes } @@ -384,118 +500,167 @@ export interface VolumeTypeConstraints { } export interface Server { - /** Instance unique ID. */ + /** + * Instance unique ID. + */ id: string - /** Instance name. */ + /** + * Instance name. + */ name: string - /** Instance Organization ID. */ + /** + * Instance Organization ID. + */ organization: string - /** Instance Project ID. */ + /** + * Instance Project ID. + */ project: string - /** List of allowed actions on the Instance. */ + /** + * List of allowed actions on the Instance. + */ allowedActions: ServerAction[] - /** Tags associated with the Instance. */ + /** + * Tags associated with the Instance. + */ tags: string[] - /** Instance commercial type (eg. GP1-M). */ + /** + * Instance commercial type (eg. GP1-M). + */ commercialType: string - /** Instance creation date. */ + /** + * Instance creation date. + */ creationDate?: Date - /** True if a dynamic IPv4 is required. */ + /** + * True if a dynamic IPv4 is required. + */ dynamicIpRequired: boolean /** - * @deprecated True to configure the instance so it uses the routed IP mode. - * Use of `routed_ip_enabled` as `False` is deprecated. + * @deprecated True to configure the instance so it uses the routed IP mode. Use of `routed_ip_enabled` as `False` is deprecated. */ routedIpEnabled?: boolean /** - * @deprecated True if IPv6 is enabled (deprecated and always `False` when - * `routed_ip_enabled` is `True`). + * @deprecated True if IPv6 is enabled (deprecated and always `False` when `routed_ip_enabled` is `True`). */ enableIpv6?: boolean - /** Instance host name. */ + /** + * Instance host name. + */ hostname: string - /** Information about the Instance image. */ + /** + * Information about the Instance image. + */ image?: Image - /** Defines whether the Instance protection option is activated. */ + /** + * Defines whether the Instance protection option is activated. + */ protected: boolean /** - * Private IP address of the Instance (deprecated and always `null` when - * `routed_ip_enabled` is `True`). + * Private IP address of the Instance (deprecated and always `null` when `routed_ip_enabled` is `True`). */ privateIp?: string /** - * @deprecated Information about the public IP (deprecated in favor of - * `public_ips`). + * @deprecated Information about the public IP (deprecated in favor of `public_ips`). */ publicIp?: ServerIp - /** Information about all the public IPs attached to the server. */ + /** + * Information about all the public IPs attached to the server. + */ publicIps: ServerIp[] - /** The server's MAC address. */ + /** + * The server's MAC address. + */ macAddress: string - /** Instance modification date. */ + /** + * Instance modification date. + */ modificationDate?: Date - /** Instance state. */ + /** + * Instance state. + */ state: ServerState - /** Instance location. */ + /** + * Instance location. + */ location?: ServerLocation /** - * @deprecated Instance IPv6 address (deprecated when `routed_ip_enabled` is - * `True`). + * @deprecated Instance IPv6 address (deprecated when `routed_ip_enabled` is `True`). */ ipv6?: ServerIpv6 - /** Instance boot type. */ + /** + * Instance boot type. + */ bootType: BootType - /** Instance volumes. */ + /** + * Instance volumes. + */ volumes: Record - /** Instance security group. */ + /** + * Instance security group. + */ securityGroup?: SecurityGroupSummary - /** Instance planned maintenance. */ + /** + * Instance planned maintenance. + */ maintenances: ServerMaintenance[] - /** Detailed information about the Instance state. */ + /** + * Detailed information about the Instance state. + */ stateDetail: string - /** Instance architecture. */ + /** + * Instance architecture. + */ arch: Arch - /** Instance placement group. */ + /** + * Instance placement group. + */ placementGroup?: PlacementGroup - /** Instance private NICs. */ + /** + * Instance private NICs. + */ privateNics: PrivateNIC[] - /** Zone in which the Instance is located. */ + /** + * Zone in which the Instance is located. + */ zone: ScwZone /** - * The public_key value of this key is used to encrypt the admin password. - * When set to an empty string, reset this value and - * admin_password_encrypted_value to an empty string so a new password may be - * generated. + * The public_key value of this key is used to encrypt the admin password. When set to an empty string, reset this value and admin_password_encrypted_value to an empty string so a new password may be generated. */ adminPasswordEncryptionSshKeyId?: string /** - * This value is reset when admin_password_encryption_ssh_key_id is set to an - * empty string. + * This value is reset when admin_password_encryption_ssh_key_id is set to an empty string. */ adminPasswordEncryptedValue?: string } export interface VolumeTemplate { - /** UUID of the volume. */ + /** + * UUID of the volume. + */ id: string - /** Name of the volume. */ + /** + * Name of the volume. + */ name: string - /** Disk size of the volume, must be a multiple of 512. */ + /** + * Disk size of the volume, must be a multiple of 512. + */ size: number - /** Type of the volume. */ + /** + * Type of the volume. + */ volumeType: VolumeVolumeType /** * @deprecated Organization ID of the volume. * - * One-of ('projectIdentifier'): at most one of 'project', 'organization' - * could be set. + * One-of ('projectIdentifier'): at most one of 'project', 'organization' could be set. */ organization?: string /** * Project ID of the volume. * - * One-of ('projectIdentifier'): at most one of 'project', 'organization' - * could be set. + * One-of ('projectIdentifier'): at most one of 'project', 'organization' could be set. */ project?: string } @@ -512,50 +677,80 @@ export interface Ip { state: IpState prefix: string ipamId: string - /** Zone to target. If none is passed will use default zone from the config. */ + /** + * Zone to target. If none is passed will use default zone from the config. + */ zone: ScwZone } export interface SecurityGroup { - /** Security group unique ID. */ + /** + * Security group unique ID. + */ id: string - /** Security group name. */ + /** + * Security group name. + */ name: string - /** Security group description. */ + /** + * Security group description. + */ description: string /** - * True if SMTP is blocked on IPv4 and IPv6. This feature is read only, please - * open a support ticket if you need to make it configurable. + * True if SMTP is blocked on IPv4 and IPv6. This feature is read only, please open a support ticket if you need to make it configurable. */ enableDefaultSecurity: boolean - /** Default inbound policy. */ + /** + * Default inbound policy. + */ inboundDefaultPolicy: SecurityGroupPolicy - /** Default outbound policy. */ + /** + * Default outbound policy. + */ outboundDefaultPolicy: SecurityGroupPolicy - /** Security group Organization ID. */ + /** + * Security group Organization ID. + */ organization: string - /** Security group Project ID. */ + /** + * Security group Project ID. + */ project: string - /** Security group tags. */ + /** + * Security group tags. + */ tags: string[] /** - * @deprecated True if it is your default security group for this Organization - * ID. + * @deprecated True if it is your default security group for this Organization ID. */ organizationDefault?: boolean - /** True if it is your default security group for this Project ID. */ + /** + * True if it is your default security group for this Project ID. + */ projectDefault: boolean - /** Security group creation date. */ + /** + * Security group creation date. + */ creationDate?: Date - /** Security group modification date. */ + /** + * Security group modification date. + */ modificationDate?: Date - /** List of Instances attached to this security group. */ + /** + * List of Instances attached to this security group. + */ servers: ServerSummary[] - /** Defines whether the security group is stateful. */ + /** + * Defines whether the security group is stateful. + */ stateful: boolean - /** Security group state. */ + /** + * Security group state. + */ state: SecurityGroupState - /** Zone in which the security group is located. */ + /** + * Zone in which the security group is located. + */ zone: ScwZone } @@ -569,74 +764,132 @@ export interface SecurityGroupRule { destPortTo?: number position: number editable: boolean - /** Zone to target. If none is passed will use default zone from the config. */ + /** + * Zone to target. If none is passed will use default zone from the config. + */ zone: ScwZone } export interface VolumeServerTemplate { - /** UUID of the volume. */ + /** + * UUID of the volume. + */ id?: string - /** Force the Instance to boot on this volume. */ + /** + * Force the Instance to boot on this volume. + */ boot?: boolean - /** Name of the volume. */ + /** + * Name of the volume. + */ name?: string - /** Disk size of the volume, must be a multiple of 512. */ + /** + * Disk size of the volume, must be a multiple of 512. + */ size?: number - /** Type of the volume. */ + /** + * Type of the volume. + */ volumeType: VolumeVolumeType - /** ID of the snapshot on which this volume will be based. */ + /** + * ID of the snapshot on which this volume will be based. + */ baseSnapshot?: string - /** Organization ID of the volume. */ + /** + * Organization ID of the volume. + */ organization?: string - /** Project ID of the volume. */ + /** + * Project ID of the volume. + */ project?: string } export interface Snapshot { - /** Snapshot ID. */ + /** + * Snapshot ID. + */ id: string - /** Snapshot name. */ + /** + * Snapshot name. + */ name: string - /** Snapshot Organization ID. */ + /** + * Snapshot Organization ID. + */ organization: string - /** Snapshot Project ID. */ + /** + * Snapshot Project ID. + */ project: string - /** Snapshot tags. */ + /** + * Snapshot tags. + */ tags: string[] - /** Snapshot volume type. */ + /** + * Snapshot volume type. + */ volumeType: VolumeVolumeType - /** Snapshot size. */ + /** + * Snapshot size. + */ size: number - /** Snapshot state. */ + /** + * Snapshot state. + */ state: SnapshotState - /** Volume on which the snapshot is based on. */ + /** + * Volume on which the snapshot is based on. + */ baseVolume?: SnapshotBaseVolume - /** Snapshot creation date. */ + /** + * Snapshot creation date. + */ creationDate?: Date - /** Snapshot modification date. */ + /** + * Snapshot modification date. + */ modificationDate?: Date - /** Snapshot zone. */ + /** + * Snapshot zone. + */ zone: ScwZone - /** Reason for the failed snapshot import. */ + /** + * Reason for the failed snapshot import. + */ errorReason?: string } export interface Task { - /** Unique ID of the task. */ + /** + * Unique ID of the task. + */ id: string - /** Description of the task. */ + /** + * Description of the task. + */ description: string - /** Progress of the task in percent. */ + /** + * Progress of the task in percent. + */ progress: number - /** Task start date. */ + /** + * Task start date. + */ startedAt?: Date - /** Task end date. */ + /** + * Task end date. + */ terminatedAt?: Date - /** Task status. */ + /** + * Task status. + */ status: TaskStatus hrefFrom: string hrefResult: string - /** Zone in which the task is excecuted. */ + /** + * Zone in which the task is executed. + */ zone: ScwZone } @@ -651,21 +904,31 @@ export interface Dashboard { securityGroupsCount: number ipsUnused: number volumesLSsdCount: number - /** @deprecated */ + /** + * @deprecated + */ volumesBSsdCount?: number volumesLSsdTotalSize: number - /** @deprecated */ + /** + * @deprecated + */ volumesBSsdTotalSize?: number privateNicsCount: number placementGroupsCount: number } export interface PlacementGroupServer { - /** Instance UUID. */ + /** + * Instance UUID. + */ id: string - /** Instance name. */ + /** + * Instance name. + */ name: string - /** Defines whether the placement group policy is respected (either 1 or 0). */ + /** + * Defines whether the placement group policy is respected (either 1 or 0). + */ policyRespected: boolean } @@ -674,38 +937,65 @@ export interface GetServerTypesAvailabilityResponseAvailability { } export interface ServerType { - /** @deprecated Estimated monthly price, for a 30 days month, in Euro. */ + /** + * @deprecated Estimated monthly price, for a 30 days month, in Euro. + */ monthlyPrice?: number - /** Hourly price in Euro. */ + /** + * Hourly price in Euro. + */ hourlyPrice: number - /** Alternative Instance name, if any. */ + /** + * Alternative Instance name, if any. + */ altNames: string[] - /** Additional volume constraints. */ + /** + * Additional volume constraints. + */ perVolumeConstraint?: ServerTypeVolumeConstraintsByType - /** Initial volume constraints. */ + /** + * Initial volume constraints. + */ volumesConstraint?: ServerTypeVolumeConstraintSizes - /** Number of CPU. */ + /** + * Number of CPU. + */ ncpus: number - /** Number of GPU. */ + /** + * Number of GPU. + */ gpu?: number - /** Available RAM in bytes. */ + /** + * Available RAM in bytes. + */ ram: number - /** GPU information. */ + /** + * GPU information. + */ gpuInfo?: ServerTypeGPUInfo - /** CPU architecture. */ + /** + * CPU architecture. + */ arch: Arch - /** Network available for the Instance. */ + /** + * Network available for the Instance. + */ network?: ServerTypeNetwork - /** Capabilities. */ + /** + * Capabilities. + */ capabilities?: ServerTypeCapabilities - /** Maximum available scratch storage. */ + /** + * Maximum available scratch storage. + */ scratchStorageMaxSize?: number /** - * The maximum bandwidth allocated to block storage access (in bytes per - * second). + * The maximum bandwidth allocated to block storage access (in bytes per second). */ blockBandwidth?: number - /** True if this Instance type has reached end of service. */ + /** + * True if this Instance type has reached end of service. + */ endOfService: boolean } @@ -717,53 +1007,59 @@ export interface VolumeType { export interface ServerActionRequestVolumeBackupTemplate { /** - * Overrides the `volume_type` of the snapshot for this volume. If omitted, - * the volume type of the original volume will be used. + * Overrides the `volume_type` of the snapshot for this volume. +If omitted, the volume type of the original volume will be used. */ volumeType: SnapshotVolumeType } export interface SetSecurityGroupRulesRequestRule { /** - * UUID of the security rule to update. If no value is provided, a new rule - * will be created. + * UUID of the security rule to update. If no value is provided, a new rule will be created. */ id?: string - /** Action to apply when the rule matches a packet. */ + /** + * Action to apply when the rule matches a packet. + */ action: SecurityGroupRuleAction - /** Protocol family this rule applies to. */ + /** + * Protocol family this rule applies to. + */ protocol: SecurityGroupRuleProtocol - /** Direction the rule applies to. */ + /** + * Direction the rule applies to. + */ direction: SecurityGroupRuleDirection - /** Range of IP addresses these rules apply to. */ + /** + * Range of IP addresses these rules apply to. + */ ipRange: string /** - * Beginning of the range of ports this rule applies to (inclusive). This - * value will be set to null if protocol is ICMP or ANY. + * Beginning of the range of ports this rule applies to (inclusive). This value will be set to null if protocol is ICMP or ANY. */ destPortFrom?: number /** - * End of the range of ports this rule applies to (inclusive). This value will - * be set to null if protocol is ICMP or ANY, or if it is equal to - * dest_port_from. + * End of the range of ports this rule applies to (inclusive). This value will be set to null if protocol is ICMP or ANY, or if it is equal to dest_port_from. */ destPortTo?: number /** - * Position of this rule in the security group rules list. If several rules - * are passed with the same position, the resulting order is undefined. + * Position of this rule in the security group rules list. If several rules are passed with the same position, the resulting order is undefined. */ position: number /** - * Indicates if this rule is editable. Rules with the value false will be - * ignored. + * Indicates if this rule is editable. Rules with the value false will be ignored. */ editable?: boolean - /** Zone of the rule. This field is ignored. */ + /** + * Zone of the rule. This field is ignored. + */ zone?: ScwZone } export interface VolumeImageUpdateTemplate { - /** UUID of the snapshot. */ + /** + * UUID of the snapshot. + */ id: string } @@ -773,37 +1069,32 @@ export interface SecurityGroupTemplate { } export type ApplyBlockMigrationRequest = { - /** Zone to target. If none is passed will use default zone from the config. */ + /** + * Zone to target. If none is passed will use default zone from the config. + */ zone?: ScwZone /** - * The volume to migrate, along with potentially other resources, according to - * the migration plan generated with a call to the [Get a volume or snapshot's - * migration plan](#path-volumes-get-a-volume-or-snapshots-migration-plan) - * endpoint. + * The volume to migrate, along with potentially other resources, according to the migration plan generated with a call to the [Get a volume or snapshot's migration plan](#path-volumes-get-a-volume-or-snapshots-migration-plan) endpoint. * * One-of ('resource'): at most one of 'volumeId', 'snapshotId' could be set. */ volumeId?: string /** - * The snapshot to migrate, along with potentially other resources, according - * to the migration plan generated with a call to the [Get a volume or - * snapshot's migration - * plan](#path-volumes-get-a-volume-or-snapshots-migration-plan) endpoint. + * The snapshot to migrate, along with potentially other resources, according to the migration plan generated with a call to the [Get a volume or snapshot's migration plan](#path-volumes-get-a-volume-or-snapshots-migration-plan) endpoint. * * One-of ('resource'): at most one of 'volumeId', 'snapshotId' could be set. */ snapshotId?: string /** - * A value to be retrieved from a call to the [Get a volume or snapshot's - * migration plan](#path-volumes-get-a-volume-or-snapshots-migration-plan) - * endpoint, to confirm that the volume and/or snapshots specified in said - * plan should be migrated. + * A value to be retrieved from a call to the [Get a volume or snapshot's migration plan](#path-volumes-get-a-volume-or-snapshots-migration-plan) endpoint, to confirm that the volume and/or snapshots specified in said plan should be migrated. */ validationKey: string } export type AttachServerVolumeRequest = { - /** Zone to target. If none is passed will use default zone from the config. */ + /** + * Zone to target. If none is passed will use default zone from the config. + */ zone?: ScwZone serverId: string volumeId: string @@ -816,39 +1107,53 @@ export interface AttachServerVolumeResponse { } export type CheckBlockMigrationOrganizationQuotasRequest = { - /** Zone to target. If none is passed will use default zone from the config. */ + /** + * Zone to target. If none is passed will use default zone from the config. + */ zone?: ScwZone organization?: string } export type CreateImageRequest = { - /** Zone to target. If none is passed will use default zone from the config. */ + /** + * Zone to target. If none is passed will use default zone from the config. + */ zone?: ScwZone - /** Name of the image. */ + /** + * Name of the image. + */ name?: string - /** UUID of the snapshot. */ + /** + * UUID of the snapshot. + */ rootVolume: string - /** Architecture of the image. */ + /** + * Architecture of the image. + */ arch: Arch - /** Additional volumes of the image. */ + /** + * Additional volumes of the image. + */ extraVolumes?: Record /** * @deprecated Organization ID of the image. * - * One-of ('projectIdentifier'): at most one of 'project', 'organization' - * could be set. + * One-of ('projectIdentifier'): at most one of 'project', 'organization' could be set. */ organization?: string /** * Project ID of the image. * - * One-of ('projectIdentifier'): at most one of 'project', 'organization' - * could be set. + * One-of ('projectIdentifier'): at most one of 'project', 'organization' could be set. */ project?: string - /** Tags of the image. */ + /** + * Tags of the image. + */ tags?: string[] - /** True to create a public image. */ + /** + * True to create a public image. + */ public?: boolean } @@ -857,27 +1162,33 @@ export interface CreateImageResponse { } export type CreateIpRequest = { - /** Zone to target. If none is passed will use default zone from the config. */ + /** + * Zone to target. If none is passed will use default zone from the config. + */ zone?: ScwZone /** * @deprecated Organization ID in which the IP is reserved. * - * One-of ('projectIdentifier'): at most one of 'project', 'organization' - * could be set. + * One-of ('projectIdentifier'): at most one of 'project', 'organization' could be set. */ organization?: string /** * Project ID in which the IP is reserved. * - * One-of ('projectIdentifier'): at most one of 'project', 'organization' - * could be set. + * One-of ('projectIdentifier'): at most one of 'project', 'organization' could be set. */ project?: string - /** Tags of the IP. */ + /** + * Tags of the IP. + */ tags?: string[] - /** UUID of the Instance you want to attach the IP to. */ + /** + * UUID of the Instance you want to attach the IP to. + */ server?: string - /** IP type to reserve (either 'routed_ipv4' or 'routed_ipv6'). */ + /** + * IP type to reserve (either 'routed_ipv4' or 'routed_ipv6'). + */ type?: IpType } @@ -886,29 +1197,37 @@ export interface CreateIpResponse { } export type CreatePlacementGroupRequest = { - /** Zone to target. If none is passed will use default zone from the config. */ + /** + * Zone to target. If none is passed will use default zone from the config. + */ zone?: ScwZone - /** Name of the placement group. */ + /** + * Name of the placement group. + */ name?: string /** * @deprecated Organization ID of the placement group. * - * One-of ('projectIdentifier'): at most one of 'project', 'organization' - * could be set. + * One-of ('projectIdentifier'): at most one of 'project', 'organization' could be set. */ organization?: string /** * Project ID of the placement group. * - * One-of ('projectIdentifier'): at most one of 'project', 'organization' - * could be set. + * One-of ('projectIdentifier'): at most one of 'project', 'organization' could be set. */ project?: string - /** Tags of the placement group. */ + /** + * Tags of the placement group. + */ tags?: string[] - /** Operating mode of the placement group. */ + /** + * Operating mode of the placement group. + */ policyMode?: PlacementGroupPolicyMode - /** Policy type of the placement group. */ + /** + * Policy type of the placement group. + */ policyType?: PlacementGroupPolicyType } @@ -917,19 +1236,28 @@ export interface CreatePlacementGroupResponse { } export type CreatePrivateNICRequest = { - /** Zone to target. If none is passed will use default zone from the config. */ + /** + * Zone to target. If none is passed will use default zone from the config. + */ zone?: ScwZone - /** UUID of the Instance the private NIC will be attached to. */ + /** + * UUID of the Instance the private NIC will be attached to. + */ serverId: string - /** UUID of the private network where the private NIC will be attached. */ + /** + * UUID of the private network where the private NIC will be attached. + */ privateNetworkId: string - /** Private NIC tags. */ + /** + * Private NIC tags. + */ tags?: string[] - /** @deprecated Ip_ids defined from IPAM. */ + /** + * @deprecated Ip_ids defined from IPAM. + */ ipIds?: string[] /** - * UUID of IPAM ips, to be attached to the instance in the requested private - * network. + * UUID of IPAM ips, to be attached to the instance in the requested private network. */ ipamIpIds?: string[] } @@ -939,53 +1267,60 @@ export interface CreatePrivateNICResponse { } export type CreateSecurityGroupRequest = { - /** Zone to target. If none is passed will use default zone from the config. */ + /** + * Zone to target. If none is passed will use default zone from the config. + */ zone?: ScwZone - /** Name of the security group. */ + /** + * Name of the security group. + */ name?: string - /** Description of the security group. */ + /** + * Description of the security group. + */ description: string /** * @deprecated Organization ID the security group belongs to. * - * One-of ('projectIdentifier'): at most one of 'project', 'organization' - * could be set. + * One-of ('projectIdentifier'): at most one of 'project', 'organization' could be set. */ organization?: string /** * Project ID the security group belong to. * - * One-of ('projectIdentifier'): at most one of 'project', 'organization' - * could be set. + * One-of ('projectIdentifier'): at most one of 'project', 'organization' could be set. */ project?: string - /** Tags of the security group. */ + /** + * Tags of the security group. + */ tags?: string[] /** - * @deprecated Defines whether this security group becomes the default - * security group for new Instances. + * @deprecated Defines whether this security group becomes the default security group for new Instances. * - * One-of ('defaultIdentifier'): at most one of 'organizationDefault', - * 'projectDefault' could be set. + * One-of ('defaultIdentifier'): at most one of 'organizationDefault', 'projectDefault' could be set. */ organizationDefault?: boolean /** - * Whether this security group becomes the default security group for new - * Instances. + * Whether this security group becomes the default security group for new Instances. * - * One-of ('defaultIdentifier'): at most one of 'organizationDefault', - * 'projectDefault' could be set. + * One-of ('defaultIdentifier'): at most one of 'organizationDefault', 'projectDefault' could be set. */ projectDefault?: boolean - /** Whether the security group is stateful or not. */ + /** + * Whether the security group is stateful or not. + */ stateful: boolean - /** Default policy for inbound rules. */ + /** + * Default policy for inbound rules. + */ inboundDefaultPolicy?: SecurityGroupPolicy - /** Default policy for outbound rules. */ + /** + * Default policy for outbound rules. + */ outboundDefaultPolicy?: SecurityGroupPolicy /** - * True to block SMTP on IPv4 and IPv6. This feature is read only, please open - * a support ticket if you need to make it configurable. + * True to block SMTP on IPv4 and IPv6. This feature is read only, please open a support ticket if you need to make it configurable. */ enableDefaultSecurity?: boolean } @@ -995,21 +1330,33 @@ export interface CreateSecurityGroupResponse { } export type CreateSecurityGroupRuleRequest = { - /** Zone to target. If none is passed will use default zone from the config. */ + /** + * Zone to target. If none is passed will use default zone from the config. + */ zone?: ScwZone - /** UUID of the security group. */ + /** + * UUID of the security group. + */ securityGroupId: string protocol: SecurityGroupRuleProtocol direction: SecurityGroupRuleDirection action: SecurityGroupRuleAction ipRange: string - /** Beginning of the range of ports to apply this rule to (inclusive). */ + /** + * Beginning of the range of ports to apply this rule to (inclusive). + */ destPortFrom?: number - /** End of the range of ports to apply this rule to (inclusive). */ + /** + * End of the range of ports to apply this rule to (inclusive). + */ destPortTo?: number - /** Position of this rule in the security group rules list. */ + /** + * Position of this rule in the security group rules list. + */ position: number - /** Indicates if this rule is editable (will be ignored). */ + /** + * Indicates if this rule is editable (will be ignored). + */ editable: boolean } @@ -1018,55 +1365,77 @@ export interface CreateSecurityGroupRuleResponse { } export type CreateServerRequest = { - /** Zone to target. If none is passed will use default zone from the config. */ + /** + * Zone to target. If none is passed will use default zone from the config. + */ zone?: ScwZone - /** Instance name. */ + /** + * Instance name. + */ name?: string - /** Define if a dynamic IPv4 is required for the Instance. */ + /** + * Define if a dynamic IPv4 is required for the Instance. + */ dynamicIpRequired?: boolean /** - * @deprecated If true, configure the Instance so it uses the new routed IP - * mode. + * @deprecated If true, configure the Instance so it uses the new routed IP mode. */ routedIpEnabled?: boolean - /** Define the Instance commercial type (i.e. GP1-S). */ + /** + * Define the Instance commercial type (i.e. GP1-S). + */ commercialType: string - /** Instance image ID or label. */ + /** + * Instance image ID or label. + */ image?: string - /** Volumes attached to the server. */ + /** + * Volumes attached to the server. + */ volumes?: Record /** - * @deprecated True if IPv6 is enabled on the server (deprecated and always - * `False` when `routed_ip_enabled` is `True`). + * @deprecated True if IPv6 is enabled on the server (deprecated and always `False` when `routed_ip_enabled` is `True`). */ enableIpv6?: boolean - /** @deprecated ID of the reserved IP to attach to the Instance. */ + /** + * @deprecated ID of the reserved IP to attach to the Instance. + */ publicIp?: string - /** A list of reserved IP IDs to attach to the Instance. */ + /** + * A list of reserved IP IDs to attach to the Instance. + */ publicIps?: string[] - /** Boot type to use. */ + /** + * Boot type to use. + */ bootType?: BootType /** * @deprecated Instance Organization ID. * - * One-of ('projectIdentifier'): at most one of 'project', 'organization' - * could be set. + * One-of ('projectIdentifier'): at most one of 'project', 'organization' could be set. */ organization?: string /** * Instance Project ID. * - * One-of ('projectIdentifier'): at most one of 'project', 'organization' - * could be set. + * One-of ('projectIdentifier'): at most one of 'project', 'organization' could be set. */ project?: string - /** Instance tags. */ + /** + * Instance tags. + */ tags?: string[] - /** Security group ID. */ + /** + * Security group ID. + */ securityGroup?: string - /** Placement group ID if Instance must be part of a placement group. */ + /** + * Placement group ID if Instance must be part of a placement group. + */ placementGroup?: string - /** The public_key value of this key is used to encrypt the admin password. */ + /** + * The public_key value of this key is used to encrypt the admin password. + */ adminPasswordEncryptionSshKeyId?: string } @@ -1075,38 +1444,50 @@ export interface CreateServerResponse { } export type CreateSnapshotRequest = { - /** Zone to target. If none is passed will use default zone from the config. */ + /** + * Zone to target. If none is passed will use default zone from the config. + */ zone?: ScwZone - /** Name of the snapshot. */ + /** + * Name of the snapshot. + */ name?: string - /** UUID of the volume. */ + /** + * UUID of the volume. + */ volumeId?: string - /** Tags of the snapshot. */ + /** + * Tags of the snapshot. + */ tags?: string[] /** * @deprecated Organization ID of the snapshot. * - * One-of ('projectIdentifier'): at most one of 'project', 'organization' - * could be set. + * One-of ('projectIdentifier'): at most one of 'project', 'organization' could be set. */ organization?: string /** * Project ID of the snapshot. * - * One-of ('projectIdentifier'): at most one of 'project', 'organization' - * could be set. + * One-of ('projectIdentifier'): at most one of 'project', 'organization' could be set. */ project?: string /** - * Overrides the volume_type of the snapshot. If omitted, the volume type of - * the original volume will be used. + * Overrides the volume_type of the snapshot. +If omitted, the volume type of the original volume will be used. */ volumeType?: SnapshotVolumeType - /** Bucket name for snapshot imports. */ + /** + * Bucket name for snapshot imports. + */ bucket?: string - /** Object key for snapshot imports. */ + /** + * Object key for snapshot imports. + */ key?: string - /** Imported snapshot size, must be a multiple of 512. */ + /** + * Imported snapshot size, must be a multiple of 512. + */ size?: number } @@ -1116,27 +1497,33 @@ export interface CreateSnapshotResponse { } export type CreateVolumeRequest = { - /** Zone to target. If none is passed will use default zone from the config. */ + /** + * Zone to target. If none is passed will use default zone from the config. + */ zone?: ScwZone - /** Volume name. */ + /** + * Volume name. + */ name?: string /** * @deprecated Volume Organization ID. * - * One-of ('projectIdentifier'): at most one of 'project', 'organization' - * could be set. + * One-of ('projectIdentifier'): at most one of 'project', 'organization' could be set. */ organization?: string /** * Volume Project ID. * - * One-of ('projectIdentifier'): at most one of 'project', 'organization' - * could be set. + * One-of ('projectIdentifier'): at most one of 'project', 'organization' could be set. */ project?: string - /** Volume tags. */ + /** + * Volume tags. + */ tags?: string[] - /** Volume type. */ + /** + * Volume type. + */ volumeType?: VolumeVolumeType /** * Volume disk size, must be a multiple of 512. @@ -1157,80 +1544,122 @@ export interface CreateVolumeResponse { } export type DeleteImageRequest = { - /** Zone to target. If none is passed will use default zone from the config. */ + /** + * Zone to target. If none is passed will use default zone from the config. + */ zone?: ScwZone - /** UUID of the image you want to delete. */ + /** + * UUID of the image you want to delete. + */ imageId: string } export type DeleteIpRequest = { - /** Zone to target. If none is passed will use default zone from the config. */ + /** + * Zone to target. If none is passed will use default zone from the config. + */ zone?: ScwZone - /** ID or address of the IP to delete. */ + /** + * ID or address of the IP to delete. + */ ip: string } export type DeletePlacementGroupRequest = { - /** Zone to target. If none is passed will use default zone from the config. */ + /** + * Zone to target. If none is passed will use default zone from the config. + */ zone?: ScwZone - /** UUID of the placement group you want to delete. */ + /** + * UUID of the placement group you want to delete. + */ placementGroupId: string } export type DeletePrivateNICRequest = { - /** Zone to target. If none is passed will use default zone from the config. */ + /** + * Zone to target. If none is passed will use default zone from the config. + */ zone?: ScwZone - /** Instance to which the private NIC is attached. */ + /** + * Instance to which the private NIC is attached. + */ serverId: string - /** Private NIC unique ID. */ + /** + * Private NIC unique ID. + */ privateNicId: string } export type DeleteSecurityGroupRequest = { - /** Zone to target. If none is passed will use default zone from the config. */ + /** + * Zone to target. If none is passed will use default zone from the config. + */ zone?: ScwZone - /** UUID of the security group you want to delete. */ + /** + * UUID of the security group you want to delete. + */ securityGroupId: string } export type DeleteSecurityGroupRuleRequest = { - /** Zone to target. If none is passed will use default zone from the config. */ + /** + * Zone to target. If none is passed will use default zone from the config. + */ zone?: ScwZone securityGroupId: string securityGroupRuleId: string } export type DeleteServerRequest = { - /** Zone to target. If none is passed will use default zone from the config. */ + /** + * Zone to target. If none is passed will use default zone from the config. + */ zone?: ScwZone serverId: string } export type DeleteServerUserDataRequest = { - /** Zone to target. If none is passed will use default zone from the config. */ + /** + * Zone to target. If none is passed will use default zone from the config. + */ zone?: ScwZone - /** UUID of the Instance. */ + /** + * UUID of the Instance. + */ serverId: string - /** Key of the user data to delete. */ + /** + * Key of the user data to delete. + */ key: string } export type DeleteSnapshotRequest = { - /** Zone to target. If none is passed will use default zone from the config. */ + /** + * Zone to target. If none is passed will use default zone from the config. + */ zone?: ScwZone - /** UUID of the snapshot you want to delete. */ + /** + * UUID of the snapshot you want to delete. + */ snapshotId: string } export type DeleteVolumeRequest = { - /** Zone to target. If none is passed will use default zone from the config. */ + /** + * Zone to target. If none is passed will use default zone from the config. + */ zone?: ScwZone - /** UUID of the volume you want to delete. */ + /** + * UUID of the volume you want to delete. + */ volumeId: string } export type DetachServerVolumeRequest = { - /** Zone to target. If none is passed will use default zone from the config. */ + /** + * Zone to target. If none is passed will use default zone from the config. + */ zone?: ScwZone serverId: string volumeId: string @@ -1241,13 +1670,21 @@ export interface DetachServerVolumeResponse { } export type ExportSnapshotRequest = { - /** Zone to target. If none is passed will use default zone from the config. */ + /** + * Zone to target. If none is passed will use default zone from the config. + */ zone?: ScwZone - /** Snapshot ID. */ + /** + * Snapshot ID. + */ snapshotId: string - /** Object Storage bucket name. */ + /** + * Object Storage bucket name. + */ bucket: string - /** Object key. */ + /** + * Object key. + */ key: string } @@ -1256,7 +1693,9 @@ export interface ExportSnapshotResponse { } export type GetDashboardRequest = { - /** Zone to target. If none is passed will use default zone from the config. */ + /** + * Zone to target. If none is passed will use default zone from the config. + */ zone?: ScwZone organization?: string project?: string @@ -1267,9 +1706,13 @@ export interface GetDashboardResponse { } export type GetImageRequest = { - /** Zone to target. If none is passed will use default zone from the config. */ + /** + * Zone to target. If none is passed will use default zone from the config. + */ zone?: ScwZone - /** UUID of the image you want to get. */ + /** + * UUID of the image you want to get. + */ imageId: string } @@ -1278,9 +1721,13 @@ export interface GetImageResponse { } export type GetIpRequest = { - /** Zone to target. If none is passed will use default zone from the config. */ + /** + * Zone to target. If none is passed will use default zone from the config. + */ zone?: ScwZone - /** IP ID or address to get. */ + /** + * IP ID or address to get. + */ ip: string } @@ -1289,9 +1736,13 @@ export interface GetIpResponse { } export type GetPlacementGroupRequest = { - /** Zone to target. If none is passed will use default zone from the config. */ + /** + * Zone to target. If none is passed will use default zone from the config. + */ zone?: ScwZone - /** UUID of the placement group you want to get. */ + /** + * UUID of the placement group you want to get. + */ placementGroupId: string } @@ -1300,23 +1751,35 @@ export interface GetPlacementGroupResponse { } export type GetPlacementGroupServersRequest = { - /** Zone to target. If none is passed will use default zone from the config. */ + /** + * Zone to target. If none is passed will use default zone from the config. + */ zone?: ScwZone - /** UUID of the placement group you want to get. */ + /** + * UUID of the placement group you want to get. + */ placementGroupId: string } export interface GetPlacementGroupServersResponse { - /** Instances attached to the placement group. */ + /** + * Instances attached to the placement group. + */ servers: PlacementGroupServer[] } export type GetPrivateNICRequest = { - /** Zone to target. If none is passed will use default zone from the config. */ + /** + * Zone to target. If none is passed will use default zone from the config. + */ zone?: ScwZone - /** Instance to which the private NIC is attached. */ + /** + * Instance to which the private NIC is attached. + */ serverId: string - /** Private NIC unique ID. */ + /** + * Private NIC unique ID. + */ privateNicId: string } @@ -1325,9 +1788,13 @@ export interface GetPrivateNICResponse { } export type GetSecurityGroupRequest = { - /** Zone to target. If none is passed will use default zone from the config. */ + /** + * Zone to target. If none is passed will use default zone from the config. + */ zone?: ScwZone - /** UUID of the security group you want to get. */ + /** + * UUID of the security group you want to get. + */ securityGroupId: string } @@ -1336,7 +1803,9 @@ export interface GetSecurityGroupResponse { } export type GetSecurityGroupRuleRequest = { - /** Zone to target. If none is passed will use default zone from the config. */ + /** + * Zone to target. If none is passed will use default zone from the config. + */ zone?: ScwZone securityGroupId: string securityGroupRuleId: string @@ -1347,16 +1816,24 @@ export interface GetSecurityGroupRuleResponse { } export type GetServerCompatibleTypesRequest = { - /** Zone to target. If none is passed will use default zone from the config. */ + /** + * Zone to target. If none is passed will use default zone from the config. + */ zone?: ScwZone - /** UUID of the Instance you want to get. */ + /** + * UUID of the Instance you want to get. + */ serverId: string } export type GetServerRequest = { - /** Zone to target. If none is passed will use default zone from the config. */ + /** + * Zone to target. If none is passed will use default zone from the config. + */ zone?: ScwZone - /** UUID of the Instance you want to get. */ + /** + * UUID of the Instance you want to get. + */ serverId: string } @@ -1365,27 +1842,36 @@ export interface GetServerResponse { } export type GetServerTypesAvailabilityRequest = { - /** Zone to target. If none is passed will use default zone from the config. */ + /** + * Zone to target. If none is passed will use default zone from the config. + */ zone?: ScwZone /** - * A positive integer lower or equal to 100 to select the number of items to - * return. + * A positive integer lower or equal to 100 to select the number of items to return. */ perPage?: number - /** A positive integer to choose the page to return. */ + /** + * A positive integer to choose the page to return. + */ page?: number } export interface GetServerTypesAvailabilityResponse { - /** Map of server types. */ + /** + * Map of server types. + */ servers: Record totalCount: number } export type GetSnapshotRequest = { - /** Zone to target. If none is passed will use default zone from the config. */ + /** + * Zone to target. If none is passed will use default zone from the config. + */ zone?: ScwZone - /** UUID of the snapshot you want to get. */ + /** + * UUID of the snapshot you want to get. + */ snapshotId: string } @@ -1394,9 +1880,13 @@ export interface GetSnapshotResponse { } export type GetVolumeRequest = { - /** Zone to target. If none is passed will use default zone from the config. */ + /** + * Zone to target. If none is passed will use default zone from the config. + */ zone?: ScwZone - /** UUID of the volume you want to get. */ + /** + * UUID of the volume you want to get. + */ volumeId: string } @@ -1405,12 +1895,16 @@ export interface GetVolumeResponse { } export type ListDefaultSecurityGroupRulesRequest = { - /** Zone to target. If none is passed will use default zone from the config. */ + /** + * Zone to target. If none is passed will use default zone from the config. + */ zone?: ScwZone } export type ListImagesRequest = { - /** Zone to target. If none is passed will use default zone from the config. */ + /** + * Zone to target. If none is passed will use default zone from the config. + */ zone?: ScwZone organization?: string perPage?: number @@ -1423,93 +1917,124 @@ export type ListImagesRequest = { } export interface ListImagesResponse { - /** Total number of images. */ + /** + * Total number of images. + */ totalCount: number - /** List of images. */ + /** + * List of images. + */ images: Image[] } export type ListIpsRequest = { - /** Zone to target. If none is passed will use default zone from the config. */ + /** + * Zone to target. If none is passed will use default zone from the config. + */ zone?: ScwZone - /** Project ID in which the IPs are reserved. */ + /** + * Project ID in which the IPs are reserved. + */ project?: string - /** Organization ID in which the IPs are reserved. */ + /** + * Organization ID in which the IPs are reserved. + */ organization?: string /** - * Filter IPs with these exact tags (to filter with several tags, use commas - * to separate them). + * Filter IPs with these exact tags (to filter with several tags, use commas to separate them). */ tags?: string[] - /** Filter on the IP address (Works as a LIKE operation on the IP address). */ + /** + * Filter on the IP address (Works as a LIKE operation on the IP address). + */ name?: string /** - * A positive integer lower or equal to 100 to select the number of items to - * return. + * A positive integer lower or equal to 100 to select the number of items to return. */ perPage?: number - /** A positive integer to choose the page to return. */ + /** + * A positive integer to choose the page to return. + */ page?: number /** - * Filter on the IP Mobility IP type (whose value should be either - * 'routed_ipv4' or 'routed_ipv6'). + * Filter on the IP Mobility IP type (whose value should be either 'routed_ipv4' or 'routed_ipv6'). */ type?: string } export interface ListIpsResponse { - /** Total number of ips. */ + /** + * Total number of ips. + */ totalCount: number - /** List of ips. */ + /** + * List of ips. + */ ips: Ip[] } export type ListPlacementGroupsRequest = { - /** Zone to target. If none is passed will use default zone from the config. */ + /** + * Zone to target. If none is passed will use default zone from the config. + */ zone?: ScwZone /** - * A positive integer lower or equal to 100 to select the number of items to - * return. + * A positive integer lower or equal to 100 to select the number of items to return. */ perPage?: number - /** A positive integer to choose the page to return. */ + /** + * A positive integer to choose the page to return. + */ page?: number - /** List only placement groups of this Organization ID. */ + /** + * List only placement groups of this Organization ID. + */ organization?: string - /** List only placement groups of this Project ID. */ + /** + * List only placement groups of this Project ID. + */ project?: string /** - * List placement groups with these exact tags (to filter with several tags, - * use commas to separate them). + * List placement groups with these exact tags (to filter with several tags, use commas to separate them). */ tags?: string[] /** - * Filter placement groups by name (for eg. "cluster1" will return - * "cluster100" and "cluster1" but not "foo"). + * Filter placement groups by name (for eg. "cluster1" will return "cluster100" and "cluster1" but not "foo"). */ name?: string } export interface ListPlacementGroupsResponse { - /** Total number of placement groups. */ + /** + * Total number of placement groups. + */ totalCount: number - /** List of placement groups. */ + /** + * List of placement groups. + */ placementGroups: PlacementGroup[] } export type ListPrivateNICsRequest = { - /** Zone to target. If none is passed will use default zone from the config. */ + /** + * Zone to target. If none is passed will use default zone from the config. + */ zone?: ScwZone - /** Instance to which the private NIC is attached. */ + /** + * Instance to which the private NIC is attached. + */ serverId: string - /** Private NIC tags. */ + /** + * Private NIC tags. + */ tags?: string[] /** - * A positive integer lower or equal to 100 to select the number of items to - * return. + * A positive integer lower or equal to 100 to select the number of items to return. */ perPage?: number - /** A positive integer to choose the page to return. */ + /** + * A positive integer to choose the page to return. + */ page?: number } @@ -1519,60 +2044,85 @@ export interface ListPrivateNICsResponse { } export type ListSecurityGroupRulesRequest = { - /** Zone to target. If none is passed will use default zone from the config. */ + /** + * Zone to target. If none is passed will use default zone from the config. + */ zone?: ScwZone - /** UUID of the security group. */ + /** + * UUID of the security group. + */ securityGroupId: string /** - * A positive integer lower or equal to 100 to select the number of items to - * return. + * A positive integer lower or equal to 100 to select the number of items to return. */ perPage?: number - /** A positive integer to choose the page to return. */ + /** + * A positive integer to choose the page to return. + */ page?: number } export interface ListSecurityGroupRulesResponse { - /** Total number of security groups. */ + /** + * Total number of security groups. + */ totalCount: number - /** List of security rules. */ + /** + * List of security rules. + */ rules: SecurityGroupRule[] } export type ListSecurityGroupsRequest = { - /** Zone to target. If none is passed will use default zone from the config. */ + /** + * Zone to target. If none is passed will use default zone from the config. + */ zone?: ScwZone - /** Name of the security group. */ + /** + * Name of the security group. + */ name?: string - /** Security group Organization ID. */ + /** + * Security group Organization ID. + */ organization?: string - /** Security group Project ID. */ + /** + * Security group Project ID. + */ project?: string /** - * List security groups with these exact tags (to filter with several tags, - * use commas to separate them). + * List security groups with these exact tags (to filter with several tags, use commas to separate them). */ tags?: string[] - /** Filter security groups with this value for project_default. */ + /** + * Filter security groups with this value for project_default. + */ projectDefault?: boolean /** - * A positive integer lower or equal to 100 to select the number of items to - * return. + * A positive integer lower or equal to 100 to select the number of items to return. */ perPage?: number - /** A positive integer to choose the page to return. */ + /** + * A positive integer to choose the page to return. + */ page?: number } export interface ListSecurityGroupsResponse { - /** Total number of security groups. */ + /** + * Total number of security groups. + */ totalCount: number - /** List of security groups. */ + /** + * List of security groups. + */ securityGroups: SecurityGroup[] } export type ListServerActionsRequest = { - /** Zone to target. If none is passed will use default zone from the config. */ + /** + * Zone to target. If none is passed will use default zone from the config. + */ zone?: ScwZone serverId: string } @@ -1582,9 +2132,13 @@ export interface ListServerActionsResponse { } export type ListServerUserDataRequest = { - /** Zone to target. If none is passed will use default zone from the config. */ + /** + * Zone to target. If none is passed will use default zone from the config. + */ zone?: ScwZone - /** UUID of the Instance. */ + /** + * UUID of the Instance. + */ serverId: string } @@ -1593,175 +2147,238 @@ export interface ListServerUserDataResponse { } export type ListServersRequest = { - /** Zone to target. If none is passed will use default zone from the config. */ + /** + * Zone to target. If none is passed will use default zone from the config. + */ zone?: ScwZone /** - * A positive integer lower or equal to 100 to select the number of items to - * return. + * A positive integer lower or equal to 100 to select the number of items to return. */ perPage?: number - /** A positive integer to choose the page to return. */ + /** + * A positive integer to choose the page to return. + */ page?: number - /** List only Instances of this Organization ID. */ + /** + * List only Instances of this Organization ID. + */ organization?: string - /** List only Instances of this Project ID. */ + /** + * List only Instances of this Project ID. + */ project?: string /** - * Filter Instances by name (eg. "server1" will return "server100" and - * "server1" but not "foo"). + * Filter Instances by name (eg. "server1" will return "server100" and "server1" but not "foo"). */ name?: string - /** @deprecated List Instances by private_ip. */ + /** + * @deprecated List Instances by private_ip. + */ privateIp?: string - /** List Instances that are not attached to a public IP. */ + /** + * List Instances that are not attached to a public IP. + */ withoutIp?: boolean - /** List Instances by IP (both private_ip and public_ip are supported). */ + /** + * List Instances by IP (both private_ip and public_ip are supported). + */ withIp?: string - /** List Instances of this commercial type. */ + /** + * List Instances of this commercial type. + */ commercialType?: string - /** List Instances in this state. */ + /** + * List Instances in this state. + */ state?: ServerState /** - * List Instances with these exact tags (to filter with several tags, use - * commas to separate them). + * List Instances with these exact tags (to filter with several tags, use commas to separate them). */ tags?: string[] - /** List Instances in this Private Network. */ + /** + * List Instances in this Private Network. + */ privateNetwork?: string - /** Define the order of the returned servers. */ + /** + * Define the order of the returned servers. + */ order?: ListServersRequestOrder /** - * List Instances from the given Private Networks (use commas to separate - * them). + * List Instances from the given Private Networks (use commas to separate them). */ privateNetworks?: string[] - /** List Instances associated with the given private NIC MAC address. */ + /** + * List Instances associated with the given private NIC MAC address. + */ privateNicMacAddress?: string - /** List Instances from these server ids (use commas to separate them). */ + /** + * List Instances from these server ids (use commas to separate them). + */ servers?: string[] } export interface ListServersResponse { - /** Total number of Instances. */ + /** + * Total number of Instances. + */ totalCount: number - /** List of Instances. */ + /** + * List of Instances. + */ servers: Server[] } export type ListServersTypesRequest = { - /** Zone to target. If none is passed will use default zone from the config. */ + /** + * Zone to target. If none is passed will use default zone from the config. + */ zone?: ScwZone perPage?: number page?: number } export interface ListServersTypesResponse { - /** Total number of Instance types. */ + /** + * Total number of Instance types. + */ totalCount: number - /** List of Instance types. */ + /** + * List of Instance types. + */ servers: Record } export type ListSnapshotsRequest = { - /** Zone to target. If none is passed will use default zone from the config. */ + /** + * Zone to target. If none is passed will use default zone from the config. + */ zone?: ScwZone - /** List snapshots only for this Organization ID. */ + /** + * List snapshots only for this Organization ID. + */ organization?: string - /** List snapshots only for this Project ID. */ + /** + * List snapshots only for this Project ID. + */ project?: string /** - * Number of snapshots returned per page (positive integer lower or equal to - * 100). + * Number of snapshots returned per page (positive integer lower or equal to 100). */ perPage?: number - /** Page to be returned. */ + /** + * Page to be returned. + */ page?: number - /** List snapshots of the requested name. */ + /** + * List snapshots of the requested name. + */ name?: string - /** List snapshots that have the requested tag. */ + /** + * List snapshots that have the requested tag. + */ tags?: string - /** List snapshots originating only from this volume. */ + /** + * List snapshots originating only from this volume. + */ baseVolumeId?: string } export interface ListSnapshotsResponse { - /** Total number of snapshots. */ + /** + * Total number of snapshots. + */ totalCount: number - /** List of snapshots. */ + /** + * List of snapshots. + */ snapshots: Snapshot[] } export type ListVolumesRequest = { - /** Zone to target. If none is passed will use default zone from the config. */ + /** + * Zone to target. If none is passed will use default zone from the config. + */ zone?: ScwZone - /** Filter by volume type. */ + /** + * Filter by volume type. + */ volumeType?: VolumeVolumeType /** - * A positive integer lower or equal to 100 to select the number of items to - * return. + * A positive integer lower or equal to 100 to select the number of items to return. */ perPage?: number - /** A positive integer to choose the page to return. */ + /** + * A positive integer to choose the page to return. + */ page?: number - /** Filter volume by Organization ID. */ + /** + * Filter volume by Organization ID. + */ organization?: string - /** Filter volume by Project ID. */ + /** + * Filter volume by Project ID. + */ project?: string /** - * Filter volumes with these exact tags (to filter with several tags, use - * commas to separate them). + * Filter volumes with these exact tags (to filter with several tags, use commas to separate them). */ tags?: string[] /** - * Filter volume by name (for eg. "vol" will return "myvolume" but not - * "data"). + * Filter volume by name (for eg. "vol" will return "myvolume" but not "data"). */ name?: string } export interface ListVolumesResponse { - /** Total number of volumes. */ + /** + * Total number of volumes. + */ totalCount: number - /** List of volumes. */ + /** + * List of volumes. + */ volumes: Volume[] } export type ListVolumesTypesRequest = { - /** Zone to target. If none is passed will use default zone from the config. */ + /** + * Zone to target. If none is passed will use default zone from the config. + */ zone?: ScwZone perPage?: number page?: number } export interface ListVolumesTypesResponse { - /** Total number of volume types. */ + /** + * Total number of volume types. + */ totalCount: number - /** Map of volume types. */ + /** + * Map of volume types. + */ volumes: Record } export interface MigrationPlan { /** - * A volume which will be migrated to SBS together with the snapshots, if - * present. + * A volume which will be migrated to SBS together with the snapshots, if present. */ volume?: Volume /** - * A list of snapshots which will be migrated to SBS together and with the - * volume, if present. + * A list of snapshots which will be migrated to SBS together and with the volume, if present. */ snapshots: Snapshot[] /** - * A value to be passed to the call to the [Migrate a volume and/or snapshots - * to - * SBS](#path-volumes-migrate-a-volume-andor-snapshots-to-sbs-scaleway-block-storage) - * endpoint, to confirm that the execution of the plan is being requested. + * A value to be passed to the call to the [Migrate a volume and/or snapshots to SBS](#path-volumes-migrate-a-volume-andor-snapshots-to-sbs-scaleway-block-storage) endpoint, to confirm that the execution of the plan is being requested. */ validationKey: string } export type PlanBlockMigrationRequest = { - /** Zone to target. If none is passed will use default zone from the config. */ + /** + * Zone to target. If none is passed will use default zone from the config. + */ zone?: ScwZone /** * The volume for which the migration plan will be generated. @@ -1778,25 +2395,31 @@ export type PlanBlockMigrationRequest = { } export type ServerActionRequest = { - /** Zone to target. If none is passed will use default zone from the config. */ + /** + * Zone to target. If none is passed will use default zone from the config. + */ zone?: ScwZone - /** UUID of the Instance. */ + /** + * UUID of the Instance. + */ serverId: string - /** Action to perform on the Instance. */ + /** + * Action to perform on the Instance. + */ action?: ServerAction /** - * Name of the backup you want to create. This field should only be specified - * when performing a backup action. + * Name of the backup you want to create. +This field should only be specified when performing a backup action. */ name?: string /** - * For each volume UUID, the snapshot parameters of the volume. This field - * should only be specified when performing a backup action. + * For each volume UUID, the snapshot parameters of the volume. +This field should only be specified when performing a backup action. */ volumes?: Record /** - * Disable IPv6 on the Instance while performing migration to routed IPs. This - * field should only be specified when performing a enable_routed_ip action. + * Disable IPv6 on the Instance while performing migration to routed IPs. +This field should only be specified when performing a enable_routed_ip action. */ disableIpv6?: boolean } @@ -1806,19 +2429,25 @@ export interface ServerActionResponse { } export interface ServerCompatibleTypes { - /** Instance compatible types. */ + /** + * Instance compatible types. + */ compatibleTypes: string[] } export type SetImageRequest = { - /** Zone to target. If none is passed will use default zone from the config. */ + /** + * Zone to target. If none is passed will use default zone from the config. + */ zone?: ScwZone id: string name: string arch?: Arch creationDate?: Date modificationDate?: Date - /** @deprecated */ + /** + * @deprecated + */ defaultBootscript?: Bootscript extraVolumes?: Record fromServer: string @@ -1831,7 +2460,9 @@ export type SetImageRequest = { } export type SetPlacementGroupRequest = { - /** Zone to target. If none is passed will use default zone from the config. */ + /** + * Zone to target. If none is passed will use default zone from the config. + */ zone?: ScwZone placementGroupId: string name: string @@ -1847,25 +2478,39 @@ export interface SetPlacementGroupResponse { } export type SetPlacementGroupServersRequest = { - /** Zone to target. If none is passed will use default zone from the config. */ + /** + * Zone to target. If none is passed will use default zone from the config. + */ zone?: ScwZone - /** UUID of the placement group you want to set. */ + /** + * UUID of the placement group you want to set. + */ placementGroupId: string - /** An array of the Instances' UUIDs you want to configure. */ + /** + * An array of the Instances' UUIDs you want to configure. + */ servers: string[] } export interface SetPlacementGroupServersResponse { - /** Instances attached to the placement group. */ + /** + * Instances attached to the placement group. + */ servers: PlacementGroupServer[] } export type SetSecurityGroupRulesRequest = { - /** Zone to target. If none is passed will use default zone from the config. */ + /** + * Zone to target. If none is passed will use default zone from the config. + */ zone?: ScwZone - /** UUID of the security group to update the rules on. */ + /** + * UUID of the security group to update the rules on. + */ securityGroupId: string - /** List of rules to update in the security group. */ + /** + * List of rules to update in the security group. + */ rules?: SetSecurityGroupRulesRequestRule[] } @@ -1874,22 +2519,33 @@ export interface SetSecurityGroupRulesResponse { } export type UpdateImageRequest = { - /** Zone to target. If none is passed will use default zone from the config. */ + /** + * Zone to target. If none is passed will use default zone from the config. + */ zone?: ScwZone - /** UUID of the image. */ + /** + * UUID of the image. + */ imageId: string - /** Name of the image. */ + /** + * Name of the image. + */ name?: string - /** Architecture of the image. */ + /** + * Architecture of the image. + */ arch?: Arch /** - * Additional snapshots of the image, with extra_volumeKey being the position - * of the snapshot in the image. + * Additional snapshots of the image, with extra_volumeKey being the position of the snapshot in the image. */ extraVolumes?: Record - /** Tags of the image. */ + /** + * Tags of the image. + */ tags?: string[] - /** True to set the image as public. */ + /** + * True to set the image as public. + */ public?: boolean } @@ -1898,15 +2554,25 @@ export interface UpdateImageResponse { } export type UpdateIpRequest = { - /** Zone to target. If none is passed will use default zone from the config. */ + /** + * Zone to target. If none is passed will use default zone from the config. + */ zone?: ScwZone - /** IP ID or IP address. */ + /** + * IP ID or IP address. + */ ip: string - /** Reverse domain name. */ + /** + * Reverse domain name. + */ reverse?: string | null - /** Should have no effect. */ + /** + * Should have no effect. + */ type?: IpType - /** An array of keywords you want to tag this IP with. */ + /** + * An array of keywords you want to tag this IP with. + */ tags?: string[] server?: string | null } @@ -1916,17 +2582,29 @@ export interface UpdateIpResponse { } export type UpdatePlacementGroupRequest = { - /** Zone to target. If none is passed will use default zone from the config. */ + /** + * Zone to target. If none is passed will use default zone from the config. + */ zone?: ScwZone - /** UUID of the placement group. */ + /** + * UUID of the placement group. + */ placementGroupId: string - /** Name of the placement group. */ + /** + * Name of the placement group. + */ name?: string - /** Tags of the placement group. */ + /** + * Tags of the placement group. + */ tags?: string[] - /** Operating mode of the placement group. */ + /** + * Operating mode of the placement group. + */ policyMode?: PlacementGroupPolicyMode - /** Policy type of the placement group. */ + /** + * Policy type of the placement group. + */ policyType?: PlacementGroupPolicyType } @@ -1935,55 +2613,90 @@ export interface UpdatePlacementGroupResponse { } export type UpdatePlacementGroupServersRequest = { - /** Zone to target. If none is passed will use default zone from the config. */ + /** + * Zone to target. If none is passed will use default zone from the config. + */ zone?: ScwZone - /** UUID of the placement group you want to update. */ + /** + * UUID of the placement group you want to update. + */ placementGroupId: string - /** An array of the Instances' UUIDs you want to configure. */ + /** + * An array of the Instances' UUIDs you want to configure. + */ servers: string[] } export interface UpdatePlacementGroupServersResponse { - /** Instances attached to the placement group. */ + /** + * Instances attached to the placement group. + */ servers: PlacementGroupServer[] } export type UpdatePrivateNICRequest = { - /** Zone to target. If none is passed will use default zone from the config. */ + /** + * Zone to target. If none is passed will use default zone from the config. + */ zone?: ScwZone - /** UUID of the Instance the private NIC will be attached to. */ + /** + * UUID of the Instance the private NIC will be attached to. + */ serverId: string - /** Private NIC unique ID. */ + /** + * Private NIC unique ID. + */ privateNicId: string - /** Tags used to select private NIC/s. */ + /** + * Tags used to select private NIC/s. + */ tags?: string[] } export type UpdateSecurityGroupRequest = { - /** Zone to target. If none is passed will use default zone from the config. */ + /** + * Zone to target. If none is passed will use default zone from the config. + */ zone?: ScwZone - /** UUID of the security group. */ + /** + * UUID of the security group. + */ securityGroupId: string - /** Name of the security group. */ + /** + * Name of the security group. + */ name?: string - /** Description of the security group. */ + /** + * Description of the security group. + */ description?: string /** - * True to block SMTP on IPv4 and IPv6. This feature is read only, please open - * a support ticket if you need to make it configurable. + * True to block SMTP on IPv4 and IPv6. This feature is read only, please open a support ticket if you need to make it configurable. */ enableDefaultSecurity?: boolean - /** Default inbound policy. */ + /** + * Default inbound policy. + */ inboundDefaultPolicy?: SecurityGroupPolicy - /** Tags of the security group. */ + /** + * Tags of the security group. + */ tags?: string[] - /** @deprecated Please use project_default instead. */ + /** + * @deprecated Please use project_default instead. + */ organizationDefault?: boolean - /** True use this security group for future Instances created in this project. */ + /** + * True use this security group for future Instances created in this project. + */ projectDefault?: boolean - /** Default outbound policy. */ + /** + * Default outbound policy. + */ outboundDefaultPolicy?: SecurityGroupPolicy - /** True to set the security group as stateful. */ + /** + * True to set the security group as stateful. + */ stateful?: boolean } @@ -1992,31 +2705,45 @@ export interface UpdateSecurityGroupResponse { } export type UpdateSecurityGroupRuleRequest = { - /** Zone to target. If none is passed will use default zone from the config. */ + /** + * Zone to target. If none is passed will use default zone from the config. + */ zone?: ScwZone - /** UUID of the security group. */ + /** + * UUID of the security group. + */ securityGroupId: string - /** UUID of the rule. */ + /** + * UUID of the rule. + */ securityGroupRuleId: string - /** Protocol family this rule applies to. */ + /** + * Protocol family this rule applies to. + */ protocol?: SecurityGroupRuleProtocol - /** Direction the rule applies to. */ + /** + * Direction the rule applies to. + */ direction?: SecurityGroupRuleDirection - /** Action to apply when the rule matches a packet. */ + /** + * Action to apply when the rule matches a packet. + */ action?: SecurityGroupRuleAction - /** Range of IP addresses these rules apply to. */ + /** + * Range of IP addresses these rules apply to. + */ ipRange?: string /** - * Beginning of the range of ports this rule applies to (inclusive). If 0 is - * provided, unset the parameter. + * Beginning of the range of ports this rule applies to (inclusive). If 0 is provided, unset the parameter. */ destPortFrom?: number /** - * End of the range of ports this rule applies to (inclusive). If 0 is - * provided, unset the parameter. + * End of the range of ports this rule applies to (inclusive). If 0 is provided, unset the parameter. */ destPortTo?: number - /** Position of this rule in the security group rules list. */ + /** + * Position of this rule in the security group rules list. + */ position?: number } @@ -2025,49 +2752,57 @@ export interface UpdateSecurityGroupRuleResponse { } export type UpdateServerRequest = { - /** Zone to target. If none is passed will use default zone from the config. */ + /** + * Zone to target. If none is passed will use default zone from the config. + */ zone?: ScwZone - /** UUID of the Instance. */ + /** + * UUID of the Instance. + */ serverId: string - /** Name of the Instance. */ + /** + * Name of the Instance. + */ name?: string bootType?: BootType - /** Tags of the Instance. */ + /** + * Tags of the Instance. + */ tags?: string[] volumes?: Record dynamicIpRequired?: boolean /** - * @deprecated True to configure the instance so it uses the new routed IP - * mode (once this is set to True you cannot set it back to False). + * @deprecated True to configure the instance so it uses the new routed IP mode (once this is set to True you cannot set it back to False). */ routedIpEnabled?: boolean - /** A list of reserved IP IDs to attach to the Instance. */ + /** + * A list of reserved IP IDs to attach to the Instance. + */ publicIps?: string[] - /** @deprecated */ + /** + * @deprecated + */ enableIpv6?: boolean protected?: boolean securityGroup?: SecurityGroupTemplate - /** Placement group ID if Instance must be part of a placement group. */ + /** + * Placement group ID if Instance must be part of a placement group. + */ placementGroup?: string | null - /** Instance private NICs. */ + /** + * Instance private NICs. + */ privateNics?: string[] /** * Warning: This field has some restrictions: - * - * - Cannot be changed if the Instance is not in `stopped` state. - * - Cannot be changed if the Instance is in a placement group. - * - Cannot be changed from/to a Windows offer to/from a Linux offer. - * - Local storage requirements of the target commercial_types must be fulfilled - * (i.e. if an Instance has 80GB of local storage, it can be changed into a - * GP1-XS, which has a maximum of 150GB, but it cannot be changed into a - * DEV1-S, which has only 20GB). +- Cannot be changed if the Instance is not in `stopped` state. +- Cannot be changed if the Instance is in a placement group. +- Cannot be changed from/to a Windows offer to/from a Linux offer. +- Local storage requirements of the target commercial_types must be fulfilled (i.e. if an Instance has 80GB of local storage, it can be changed into a GP1-XS, which has a maximum of 150GB, but it cannot be changed into a DEV1-S, which has only 20GB). */ commercialType?: string /** - * The public_key value of this key is used to encrypt the admin password. - * When set to an empty string, reset this value and - * admin_password_encrypted_value to an empty string so a new password may be - * generated. + * The public_key value of this key is used to encrypt the admin password. When set to an empty string, reset this value and admin_password_encrypted_value to an empty string so a new password may be generated. */ adminPasswordEncryptionSshKeyId?: string } @@ -2077,13 +2812,21 @@ export interface UpdateServerResponse { } export type UpdateSnapshotRequest = { - /** Zone to target. If none is passed will use default zone from the config. */ + /** + * Zone to target. If none is passed will use default zone from the config. + */ zone?: ScwZone - /** UUID of the snapshot. */ + /** + * UUID of the snapshot. + */ snapshotId: string - /** Name of the snapshot. */ + /** + * Name of the snapshot. + */ name?: string - /** Tags of the snapshot. */ + /** + * Tags of the snapshot. + */ tags?: string[] } @@ -2092,15 +2835,25 @@ export interface UpdateSnapshotResponse { } export type UpdateVolumeRequest = { - /** Zone to target. If none is passed will use default zone from the config. */ + /** + * Zone to target. If none is passed will use default zone from the config. + */ zone?: ScwZone - /** UUID of the volume. */ + /** + * UUID of the volume. + */ volumeId: string - /** Volume name. */ + /** + * Volume name. + */ name?: string - /** Tags of the volume. */ + /** + * Tags of the volume. + */ tags?: string[] - /** Volume disk size, must be a multiple of 512. */ + /** + * Volume disk size, must be a multiple of 512. + */ size?: number } diff --git a/packages/clients/src/api/instance/v1/types.private.gen.ts b/packages/clients/src/api/instance/v1/types.private.gen.ts index 63bd7b030..4551ab627 100644 --- a/packages/clients/src/api/instance/v1/types.private.gen.ts +++ b/packages/clients/src/api/instance/v1/types.private.gen.ts @@ -34,40 +34,69 @@ export interface SetImageResponse { } export type SetSecurityGroupRequest = { - /** Zone to target. If none is passed will use default zone from the config. */ + /** + * Zone to target. If none is passed will use default zone from the config. + */ zone?: ScwZone - /** UUID of the security group. */ + /** + * UUID of the security group. + */ id: string - /** Name of the security group. */ + /** + * Name of the security group. + */ name: string - /** Tags of the security group. */ + /** + * Tags of the security group. + */ tags?: string[] - /** Creation date of the security group (will be ignored). */ + /** + * Creation date of the security group (will be ignored). + */ creationDate?: Date - /** Modification date of the security group (will be ignored). */ + /** + * Modification date of the security group (will be ignored). + */ modificationDate?: Date - /** Description of the security group. */ + /** + * Description of the security group. + */ description: string /** - * True to block SMTP on IPv4 and IPv6. This feature is read only, please open - * a support ticket if you need to make it configurable. + * True to block SMTP on IPv4 and IPv6. This feature is read only, please open a support ticket if you need to make it configurable. */ enableDefaultSecurity: boolean - /** Default inbound policy. */ + /** + * Default inbound policy. + */ inboundDefaultPolicy?: SecurityGroupPolicy - /** Default outbound policy. */ + /** + * Default outbound policy. + */ outboundDefaultPolicy?: SecurityGroupPolicy - /** Security groups Organization ID. */ + /** + * Security groups Organization ID. + */ organization?: string - /** Security group Project ID. */ + /** + * Security group Project ID. + */ project?: string - /** @deprecated Please use project_default instead. */ + /** + * @deprecated Please use project_default instead. + */ organizationDefault?: boolean - /** True use this security group for future Instances created in this project. */ + /** + * True use this security group for future Instances created in this project. + */ projectDefault: boolean - /** Instances attached to this security group. */ + /** + * Instances attached to this security group. + */ servers?: ServerSummary[] - /** True to set the security group as stateful. */ + /** + * True to set the security group as stateful. + */ stateful: boolean } @@ -76,7 +105,9 @@ export interface SetSecurityGroupResponse { } export type SetSecurityGroupRuleRequest = { - /** Zone to target. If none is passed will use default zone from the config. */ + /** + * Zone to target. If none is passed will use default zone from the config. + */ zone?: ScwZone securityGroupId: string securityGroupRuleId: string @@ -96,89 +127,128 @@ export interface SetSecurityGroupRuleResponse { } export type SetServerRequest = { - /** Zone to target. If none is passed will use default zone from the config. */ + /** + * Zone to target. If none is passed will use default zone from the config. + */ zone?: ScwZone - /** Instance unique ID. */ + /** + * Instance unique ID. + */ id: string - /** Instance name. */ + /** + * Instance name. + */ name: string - /** Instance Organization ID. */ + /** + * Instance Organization ID. + */ organization?: string - /** Instance Project ID. */ + /** + * Instance Project ID. + */ project?: string - /** Provide a list of allowed actions on the server. */ + /** + * Provide a list of allowed actions on the server. + */ allowedActions?: ServerAction[] - /** Tags associated with the Instance. */ + /** + * Tags associated with the Instance. + */ tags?: string[] - /** Instance commercial type (eg. GP1-M). */ + /** + * Instance commercial type (eg. GP1-M). + */ commercialType: string - /** Instance creation date. */ + /** + * Instance creation date. + */ creationDate?: Date - /** True if a dynamic IPv4 is required. */ + /** + * True if a dynamic IPv4 is required. + */ dynamicIpRequired: boolean /** - * @deprecated True to configure the instance so it uses the new routed IP - * mode (once this is set to True you cannot set it back to False). + * @deprecated True to configure the instance so it uses the new routed IP mode (once this is set to True you cannot set it back to False). */ routedIpEnabled?: boolean /** - * @deprecated True if IPv6 is enabled (deprecated and always `False` when - * `routed_ip_enabled` is `True`). + * @deprecated True if IPv6 is enabled (deprecated and always `False` when `routed_ip_enabled` is `True`). */ enableIpv6?: boolean - /** Instance host name. */ + /** + * Instance host name. + */ hostname: string - /** Provide information on the Instance image. */ + /** + * Provide information on the Instance image. + */ image?: Image - /** Instance protection option is activated. */ + /** + * Instance protection option is activated. + */ protected: boolean /** - * @deprecated Instance private IP address (deprecated and always `null` when - * `routed_ip_enabled` is `True`). + * @deprecated Instance private IP address (deprecated and always `null` when `routed_ip_enabled` is `True`). */ privateIp?: string /** - * @deprecated Information about the public IP (deprecated in favor of - * `public_ips`). + * @deprecated Information about the public IP (deprecated in favor of `public_ips`). */ publicIp?: ServerIp - /** Information about all the public IPs attached to the server. */ + /** + * Information about all the public IPs attached to the server. + */ publicIps?: ServerIp[] - /** Instance modification date. */ + /** + * Instance modification date. + */ modificationDate?: Date - /** Instance state. */ + /** + * Instance state. + */ state?: ServerState - /** Instance location. */ + /** + * Instance location. + */ location?: ServerLocation /** - * @deprecated Instance IPv6 address (deprecated when `routed_ip_enabled` is - * `True`). + * @deprecated Instance IPv6 address (deprecated when `routed_ip_enabled` is `True`). */ ipv6?: ServerIpv6 - /** Instance boot type. */ + /** + * Instance boot type. + */ bootType?: BootType - /** Instance volumes. */ + /** + * Instance volumes. + */ volumes?: Record - /** Instance security group. */ + /** + * Instance security group. + */ securityGroup?: SecurityGroupSummary - /** Instance planned maintenances. */ + /** + * Instance planned maintenances. + */ maintenances?: ServerMaintenance[] - /** Instance state_detail. */ + /** + * Instance state_detail. + */ stateDetail: string /** - * Instance architecture (refers to the CPU architecture used for the - * Instance, e.g. x86_64, arm64). + * Instance architecture (refers to the CPU architecture used for the Instance, e.g. x86_64, arm64). */ arch?: Arch - /** Instance placement group. */ + /** + * Instance placement group. + */ placementGroup?: PlacementGroup - /** Instance private NICs. */ + /** + * Instance private NICs. + */ privateNics?: PrivateNIC[] /** - * The public_key value of this key is used to encrypt the admin password. - * When set to an empty string, reset this value and - * admin_password_encrypted_value to an empty string so a new password may be - * generated. + * The public_key value of this key is used to encrypt the admin password. When set to an empty string, reset this value and admin_password_encrypted_value to an empty string so a new password may be generated. */ adminPasswordEncryptionSshKeyId?: string } @@ -188,7 +258,9 @@ export interface SetServerResponse { } export type SetSnapshotRequest = { - /** Zone to target. If none is passed will use default zone from the config. */ + /** + * Zone to target. If none is passed will use default zone from the config. + */ zone?: ScwZone snapshotId: string id: string diff --git a/packages/clients/src/api/interlink/v1beta1/api.gen.ts b/packages/clients/src/api/interlink/v1beta1/api.gen.ts index 3d8348729..a8deadb3e 100644 --- a/packages/clients/src/api/interlink/v1beta1/api.gen.ts +++ b/packages/clients/src/api/interlink/v1beta1/api.gen.ts @@ -71,9 +71,8 @@ const jsonContentHeaders = { /** * InterLink API. - * - * This API allows you to manage your Scaleway InterLink, to connect your - * on-premises infrastructure with your Scaleway VPC. + +This API allows you to manage your Scaleway InterLink, to connect your on-premises infrastructure with your Scaleway VPC. */ export class API extends ParentAPI { /** Lists the available regions of the API. */ @@ -110,10 +109,7 @@ export class API extends ParentAPI { ) /** - * List dedicated connections. For self-hosted users, list their dedicated - * physical connections in a given region. By default, the connections - * returned in the list are ordered by name in ascending order, though this - * can be modified via the `order_by` field. + * List dedicated connections. For self-hosted users, list their dedicated physical connections in a given region. By default, the connections returned in the list are ordered by name in ascending order, though this can be modified via the `order_by` field. * * @param request - The request {@link ListDedicatedConnectionsRequest} * @returns A Promise of ListDedicatedConnectionsResponse @@ -128,9 +124,7 @@ export class API extends ParentAPI { ) /** - * Get a dedicated connection. For self-hosted users, get a dedicated physical - * connection corresponding to the given ID. The response object includes - * information such as the connection's name, status and total bandwidth. + * Get a dedicated connection. For self-hosted users, get a dedicated physical connection corresponding to the given ID. The response object includes information such as the connection's name, status and total bandwidth. * * @param request - The request {@link GetDedicatedConnectionRequest} * @returns A Promise of DedicatedConnection @@ -189,9 +183,7 @@ export class API extends ParentAPI { ) /** - * List available partners. List all available partners. By default, the - * partners returned in the list are ordered by name in ascending order, - * though this can be modified via the `order_by` field. + * List available partners. List all available partners. By default, the partners returned in the list are ordered by name in ascending order, though this can be modified via the `order_by` field. * * @param request - The request {@link ListPartnersRequest} * @returns A Promise of ListPartnersResponse @@ -200,9 +192,7 @@ export class API extends ParentAPI { enrichForPagination('partners', this.pageOfListPartners, request) /** - * Get a partner. Get a partner for the given partner IP. The response object - * includes information such as the partner's name, email address and portal - * URL. + * Get a partner. Get a partner for the given partner IP. The response object includes information such as the partner's name, email address and portal URL. * * @param request - The request {@link GetPartnerRequest} * @returns A Promise of Partner @@ -239,8 +229,7 @@ export class API extends ParentAPI { ) /** - * List PoPs. List all available PoPs (locations) for a given region. By - * default, the results are returned in ascending alphabetical order by name. + * List PoPs. List all available PoPs (locations) for a given region. By default, the results are returned in ascending alphabetical order by name. * * @param request - The request {@link ListPopsRequest} * @returns A Promise of ListPopsResponse @@ -249,8 +238,7 @@ export class API extends ParentAPI { enrichForPagination('pops', this.pageOfListPops, request) /** - * Get a PoP. Get a PoP for the given PoP ID. The response object includes the - * PoP's name and information about its physical location. + * Get a PoP. Get a PoP for the given PoP ID. The response object includes the PoP's name and information about its physical location. * * @param request - The request {@link GetPopRequest} * @returns A Promise of Pop @@ -297,8 +285,7 @@ export class API extends ParentAPI { ) /** - * List links. List all your links (InterLink connections). A number of - * filters are available, including Project ID, name, tags and status. + * List links. List all your links (InterLink connections). A number of filters are available, including Project ID, name, tags and status. * * @param request - The request {@link ListLinksRequest} * @returns A Promise of ListLinksResponse @@ -307,9 +294,7 @@ export class API extends ParentAPI { enrichForPagination('links', this.pageOfListLinks, request) /** - * Get a link. Get a link (InterLink session / logical InterLink resource) for - * the given link ID. The response object includes information about the - * link's various configuration details. + * Get a link. Get a link (InterLink session / logical InterLink resource) for the given link ID. The response object includes information about the link's various configuration details. * * @param request - The request {@link GetLinkRequest} * @returns A Promise of Link @@ -346,11 +331,7 @@ export class API extends ParentAPI { ) /** - * Create a link. Create a link (InterLink session / logical InterLink - * resource) in a given PoP, specifying its various configuration details. - * Links can either be hosted (faciliated by partners' shared physical - * connections) or self-hosted (for users who have purchased a dedicated - * physical connection). + * Create a link. Create a link (InterLink session / logical InterLink resource) in a given PoP, specifying its various configuration details. Links can either be hosted (facilitated by partners' shared physical connections) or self-hosted (for users who have purchased a dedicated physical connection). * * @param request - The request {@link CreateLinkRequest} * @returns A Promise of Link @@ -369,8 +350,7 @@ export class API extends ParentAPI { ) /** - * Update a link. Update an existing link, specified by its link ID. Only its - * name and tags can be updated. + * Update a link. Update an existing link, specified by its link ID. Only its name and tags can be updated. * * @param request - The request {@link UpdateLinkRequest} * @returns A Promise of Link @@ -389,11 +369,7 @@ export class API extends ParentAPI { ) /** - * Delete a link. Delete an existing link, specified by its link ID. Note that - * as well as deleting the link here on the Scaleway side, it is also - * necessary to request deletion from the partner on their side. Only when - * this action has been carried out on both sides will the resource be - * completely deleted. + * Delete a link. Delete an existing link, specified by its link ID. Note that as well as deleting the link here on the Scaleway side, it is also necessary to request deletion from the partner on their side. Only when this action has been carried out on both sides will the resource be completely deleted. * * @param request - The request {@link DeleteLinkRequest} * @returns A Promise of Link @@ -408,9 +384,7 @@ export class API extends ParentAPI { ) /** - * Attach a VPC. Attach a VPC to an existing link. This facilitates - * communication between the resources in your Scaleway VPC, and your - * on-premises infrastructure. + * Attach a VPC. Attach a VPC to an existing link. This facilitates communication between the resources in your Scaleway VPC, and your on-premises infrastructure. * * @param request - The request {@link AttachVpcRequest} * @returns A Promise of Link @@ -446,10 +420,7 @@ export class API extends ParentAPI { ) /** - * Attach a routing policy. Attach a routing policy to an existing link. As - * all routes across the link are blocked by default, you must attach a - * routing policy to set IP prefix filters for allowed routes, facilitating - * traffic flow. + * Attach a routing policy. Attach a routing policy to an existing link. As all routes across the link are blocked by default, you must attach a routing policy to set IP prefix filters for allowed routes, facilitating traffic flow. * * @param request - The request {@link AttachRoutingPolicyRequest} * @returns A Promise of Link @@ -468,9 +439,7 @@ export class API extends ParentAPI { ) /** - * Detach a routing policy. Detach a routing policy from an existing link. - * Without a routing policy, all routes across the link are blocked by - * default. + * Detach a routing policy. Detach a routing policy from an existing link. Without a routing policy, all routes across the link are blocked by default. * * @param request - The request {@link DetachRoutingPolicyRequest} * @returns A Promise of Link @@ -487,12 +456,7 @@ export class API extends ParentAPI { ) /** - * Enable route propagation. Enable all allowed prefixes (defined in a routing - * policy) to be announced in the BGP session. This allows traffic to flow - * between the attached VPC and the on-premises infrastructure along the - * announced routes. Note that by default, even when route propagation is - * enabled, all routes are blocked. It is essential to attach a routing policy - * to define the ranges of routes to announce. + * Enable route propagation. Enable all allowed prefixes (defined in a routing policy) to be announced in the BGP session. This allows traffic to flow between the attached VPC and the on-premises infrastructure along the announced routes. Note that by default, even when route propagation is enabled, all routes are blocked. It is essential to attach a routing policy to define the ranges of routes to announce. * * @param request - The request {@link EnableRoutePropagationRequest} * @returns A Promise of Link @@ -509,9 +473,7 @@ export class API extends ParentAPI { ) /** - * Disable route propagation. Prevent any prefixes from being announced in the - * BGP session. Traffic will not be able to flow over the InterLink until - * route propagation is re-enabled. + * Disable route propagation. Prevent any prefixes from being announced in the BGP session. Traffic will not be able to flow over the InterLink until route propagation is re-enabled. * * @param request - The request {@link DisableRoutePropagationRequest} * @returns A Promise of Link @@ -553,9 +515,7 @@ export class API extends ParentAPI { ) /** - * List routing policies. List all routing policies in a given region. A - * routing policy can be attached to one or multiple links (InterLink - * connections). + * List routing policies. List all routing policies in a given region. A routing policy can be attached to one or multiple links (InterLink connections). * * @param request - The request {@link ListRoutingPoliciesRequest} * @returns A Promise of ListRoutingPoliciesResponse @@ -568,9 +528,7 @@ export class API extends ParentAPI { ) /** - * Get routing policy. Get a routing policy for the given routing policy ID. - * The response object gives information including the policy's name, tags and - * prefix filters. + * Get routing policy. Get a routing policy for the given routing policy ID. The response object gives information including the policy's name, tags and prefix filters. * * @param request - The request {@link GetRoutingPolicyRequest} * @returns A Promise of RoutingPolicy @@ -585,9 +543,7 @@ export class API extends ParentAPI { ) /** - * Create a routing policy. Create a routing policy. Routing policies allow - * you to set IP prefix filters to define the incoming route announcements to - * accept from the peer, and the outgoing routes to announce to the peer. + * Create a routing policy. Create a routing policy. Routing policies allow you to set IP prefix filters to define the incoming route announcements to accept from the peer, and the outgoing routes to announce to the peer. * * @param request - The request {@link CreateRoutingPolicyRequest} * @returns A Promise of RoutingPolicy @@ -606,9 +562,7 @@ export class API extends ParentAPI { ) /** - * Update a routing policy. Update an existing routing policy, specified by - * its routing policy ID. Its name, tags and incoming/outgoing prefix filters - * can be updated. + * Update a routing policy. Update an existing routing policy, specified by its routing policy ID. Its name, tags and incoming/outgoing prefix filters can be updated. * * @param request - The request {@link UpdateRoutingPolicyRequest} * @returns A Promise of RoutingPolicy @@ -627,8 +581,7 @@ export class API extends ParentAPI { ) /** - * Delete a routing policy. Delete an existing routing policy, specified by - * its routing policy ID. + * Delete a routing policy. Delete an existing routing policy, specified by its routing policy ID. * * @param request - The request {@link DeleteRoutingPolicyRequest} */ diff --git a/packages/clients/src/api/interlink/v1beta1/marshalling.gen.ts b/packages/clients/src/api/interlink/v1beta1/marshalling.gen.ts index 64f7f6768..fe88fbf1f 100644 --- a/packages/clients/src/api/interlink/v1beta1/marshalling.gen.ts +++ b/packages/clients/src/api/interlink/v1beta1/marshalling.gen.ts @@ -288,6 +288,7 @@ export const marshalCreateLinkRequest = ( ): Record => ({ bandwidth_mbps: request.bandwidthMbps, name: request.name, + peer_asn: request.peerAsn, pop_id: request.popId, project_id: request.projectId ?? defaults.defaultProjectId, tags: request.tags, @@ -313,6 +314,7 @@ export const marshalUpdateLinkRequest = ( defaults: DefaultValues, ): Record => ({ name: request.name, + peer_asn: request.peerAsn, tags: request.tags, }) diff --git a/packages/clients/src/api/interlink/v1beta1/types.gen.ts b/packages/clients/src/api/interlink/v1beta1/types.gen.ts index a9a2e152f..5add737df 100644 --- a/packages/clients/src/api/interlink/v1beta1/types.gen.ts +++ b/packages/clients/src/api/interlink/v1beta1/types.gen.ts @@ -60,98 +60,157 @@ export type ListRoutingPoliciesRequestOrderBy = | 'name_desc' export interface BgpConfig { - /** AS Number of the BGP peer. */ + /** + * AS Number of the BGP peer. + */ asn: number - /** IPv4 address of the BGP peer. */ + /** + * IPv4 address of the BGP peer. + */ ipv4: string - /** IPv6 address of the BGP peer. */ + /** + * IPv6 address of the BGP peer. + */ ipv6: string } export interface PartnerHost { - /** ID of the partner facilitating the link. */ + /** + * ID of the partner facilitating the link. + */ partnerId: string - /** Used to identify a link from a user or partner's point of view. */ + /** + * Used to identify a link from a user or partner's point of view. + */ pairingKey: string /** - * Reason given by partner to explain why they did not approve the request for - * a hosted link. + * Reason given by partner to explain why they did not approve the request for a hosted link. */ disapprovedReason?: string } export interface SelfHost { - /** Dedicated physical connection supporting the link. */ + /** + * Dedicated physical connection supporting the link. + */ connectionId: string } export interface DedicatedConnection { - /** Unique identifier of the dedicated connection. */ + /** + * Unique identifier of the dedicated connection. + */ id: string - /** Project ID. */ + /** + * Project ID. + */ projectId: string - /** Organization ID. */ + /** + * Organization ID. + */ organizationId: string - /** Status of the dedicated connection. */ + /** + * Status of the dedicated connection. + */ status: DedicatedConnectionStatus - /** Name of the dedicated connection. */ + /** + * Name of the dedicated connection. + */ name: string - /** List of tags associated with the dedicated connection. */ + /** + * List of tags associated with the dedicated connection. + */ tags: string[] - /** ID of the PoP where the dedicated connection is located. */ + /** + * ID of the PoP where the dedicated connection is located. + */ popId: string - /** Bandwidth size of the dedicated connection. */ + /** + * Bandwidth size of the dedicated connection. + */ bandwidthMbps: number - /** Size of the links supported on this dedicated connection. */ + /** + * Size of the links supported on this dedicated connection. + */ availableLinkBandwidths: number[] - /** Creation date of the dedicated connection. */ + /** + * Creation date of the dedicated connection. + */ createdAt?: Date - /** Last modification date of the dedicated connection. */ + /** + * Last modification date of the dedicated connection. + */ updatedAt?: Date /** - * Demarcation details required by the data center to set up the supporting - * Cross Connect. This generally includes the physical space in the facility, - * the cabinet or rack the connection should land in, the patch panel to go - * in, the port designation, and the media type. + * Demarcation details required by the data center to set up the supporting Cross Connect. This generally includes the physical space in the facility, the cabinet or rack the connection should land in, the patch panel to go in, the port designation, and the media type. */ demarcationInfo?: string - /** Region of the dedicated connection. */ + /** + * Region of the dedicated connection. + */ region: ScwRegion } export interface Link { - /** Unique identifier of the link. */ + /** + * Unique identifier of the link. + */ id: string - /** Project ID. */ + /** + * Project ID. + */ projectId: string - /** Organization ID. */ + /** + * Organization ID. + */ organizationId: string - /** Name of the link. */ + /** + * Name of the link. + */ name: string - /** List of tags associated with the link. */ + /** + * List of tags associated with the link. + */ tags: string[] - /** ID of the PoP where the link's corresponding connection is located. */ + /** + * ID of the PoP where the link's corresponding connection is located. + */ popId: string - /** Rate limited bandwidth of the link. */ + /** + * Rate limited bandwidth of the link. + */ bandwidthMbps: number - /** Status of the link. */ + /** + * Status of the link. + */ status: LinkStatus - /** Status of the link's BGP IPv4 session. */ + /** + * Status of the link's BGP IPv4 session. + */ bgpV4Status: BgpStatus - /** Status of the link's BGP IPv6 session. */ + /** + * Status of the link's BGP IPv6 session. + */ bgpV6Status: BgpStatus - /** ID of the Scaleway VPC attached to the link. */ + /** + * ID of the Scaleway VPC attached to the link. + */ vpcId?: string - /** ID of the routing policy attached to the link. */ + /** + * ID of the routing policy attached to the link. + */ routingPolicyId?: string /** - * Defines whether route propagation is enabled or not. To enable or disable - * route propagation, use the dedicated endpoint. + * Defines whether route propagation is enabled or not. To enable or disable route propagation, use the dedicated endpoint. */ enableRoutePropagation: boolean - /** Creation date of the link. */ + /** + * Creation date of the link. + */ createdAt?: Date - /** Last modification date of the link. */ + /** + * Last modification date of the link. + */ updatedAt?: Date /** * Partner host information. @@ -165,441 +224,618 @@ export interface Link { * One-of ('hostInfo'): at most one of 'partner', 'self' could be set. */ self?: SelfHost - /** VLAN of the link. */ + /** + * VLAN of the link. + */ vlan: number - /** BGP configuration on Scaleway's side. */ + /** + * BGP configuration on Scaleway's side. + */ scwBgpConfig?: BgpConfig - /** BGP configuration on peer's side (on-premises or other hosting provider). */ + /** + * BGP configuration on peer's side (on-premises or other hosting provider). + */ peerBgpConfig?: BgpConfig - /** Region of the link. */ + /** + * Region of the link. + */ region: ScwRegion } export interface Partner { - /** Unique identifier of the partner. */ + /** + * Unique identifier of the partner. + */ id: string - /** Name of the partner. */ + /** + * Name of the partner. + */ name: string - /** Contact email address of partner. */ + /** + * Contact email address of partner. + */ contactEmail: string - /** Image URL of the partner's logo. */ + /** + * Image URL of the partner's logo. + */ logoUrl: string - /** URL of the partner's portal. */ + /** + * URL of the partner's portal. + */ portalUrl: string - /** Creation date of the partner. */ + /** + * Creation date of the partner. + */ createdAt?: Date - /** Last modification date of the partner. */ + /** + * Last modification date of the partner. + */ updatedAt?: Date } export interface Pop { - /** Unique identifier of the PoP. */ + /** + * Unique identifier of the PoP. + */ id: string - /** Name of the PoP. It is the common reference of Hosting DC (ex: TH2). */ + /** + * Name of the PoP. It is the common reference of Hosting DC (ex: TH2). + */ name: string /** - * Name of the PoP's hosting provider, e.g. Telehouse for TH2 or OpCore for - * DC3. + * Name of the PoP's hosting provider, e.g. Telehouse for TH2 or OpCore for DC3. */ hostingProviderName: string - /** Physical address of the PoP. */ + /** + * Physical address of the PoP. + */ address: string - /** City where PoP is located. */ + /** + * City where PoP is located. + */ city: string - /** Image URL of the PoP's logo. */ + /** + * Image URL of the PoP's logo. + */ logoUrl: string /** - * Available bandwidth in Mbits/s for future hosted links from available - * connections in this PoP. + * Available bandwidth in Mbits/s for future hosted links from available connections in this PoP. */ availableLinkBandwidthsMbps: number[] - /** Region of the PoP. */ + /** + * Region of the PoP. + */ region: ScwRegion } export interface RoutingPolicy { - /** Unique identifier of the routing policy. */ + /** + * Unique identifier of the routing policy. + */ id: string - /** Project ID. */ + /** + * Project ID. + */ projectId: string - /** Organization ID. */ + /** + * Organization ID. + */ organizationId: string - /** Name of the routing policy. */ + /** + * Name of the routing policy. + */ name: string - /** List of tags associated with the routing policy. */ + /** + * List of tags associated with the routing policy. + */ tags: string[] /** - * IP prefixes to accept from the peer (ranges of route announcements to - * accept). + * IP prefixes to accept from the peer (ranges of route announcements to accept). */ prefixFilterIn: string[] - /** IP prefix filters to advertise to the peer (ranges of routes to advertise). */ + /** + * IP prefix filters to advertise to the peer (ranges of routes to advertise). + */ prefixFilterOut: string[] - /** Creation date of the routing policy. */ + /** + * Creation date of the routing policy. + */ createdAt?: Date - /** Last modification date of the routing policy. */ + /** + * Last modification date of the routing policy. + */ updatedAt?: Date - /** Region of the routing policy. */ + /** + * Region of the routing policy. + */ region: ScwRegion } export type AttachRoutingPolicyRequest = { /** - * Region to target. If none is passed will use default region from the - * config. + * Region to target. If none is passed will use default region from the config. */ region?: ScwRegion - /** ID of the link to attach a routing policy to. */ + /** + * ID of the link to attach a routing policy to. + */ linkId: string - /** ID of the routing policy to be attached. */ + /** + * ID of the routing policy to be attached. + */ routingPolicyId: string } export type AttachVpcRequest = { /** - * Region to target. If none is passed will use default region from the - * config. + * Region to target. If none is passed will use default region from the config. */ region?: ScwRegion - /** ID of the link to attach VPC to. */ + /** + * ID of the link to attach VPC to. + */ linkId: string - /** ID of the VPC to attach. */ + /** + * ID of the VPC to attach. + */ vpcId: string } export type CreateLinkRequest = { /** - * Region to target. If none is passed will use default region from the - * config. + * Region to target. If none is passed will use default region from the config. */ region?: ScwRegion - /** ID of the Project to create the link in. */ + /** + * ID of the Project to create the link in. + */ projectId?: string - /** Name of the link. */ + /** + * Name of the link. + */ name: string - /** List of tags to apply to the link. */ + /** + * List of tags to apply to the link. + */ tags?: string[] - /** PoP (location) where the link will be created. */ + /** + * PoP (location) where the link will be created. + */ popId: string /** - * Desired bandwidth for the link. Must be compatible with available link - * bandwidths and remaining bandwidth capacity of the connection. + * Desired bandwidth for the link. Must be compatible with available link bandwidths and remaining bandwidth capacity of the connection. */ bandwidthMbps: number /** - * If set, creates a self-hosted link using this dedicated physical - * connection. As the customer, specify the ID of the physical connection you - * already have for this link. + * If set, creates a self-hosted link using this dedicated physical connection. As the customer, specify the ID of the physical connection you already have for this link. * * One-of ('host'): at most one of 'connectionId', 'partnerId' could be set. */ connectionId?: string /** - * If set, creates a hosted link on a partner's connection. Specify the ID of - * the chosen partner, who already has a shared connection with available - * bandwidth. + * If set, creates a hosted link on a partner's connection. Specify the ID of the chosen partner, who already has a shared connection with available bandwidth. * * One-of ('host'): at most one of 'connectionId', 'partnerId' could be set. */ partnerId?: string + /** + * For self-hosted links we need the peer AS Number to establish BGP session. If not given, a default one will be assigned. + */ + peerAsn?: number } export type CreateRoutingPolicyRequest = { /** - * Region to target. If none is passed will use default region from the - * config. + * Region to target. If none is passed will use default region from the config. */ region?: ScwRegion - /** ID of the Project to create the routing policy in. */ + /** + * ID of the Project to create the routing policy in. + */ projectId?: string - /** Name of the routing policy. */ + /** + * Name of the routing policy. + */ name: string - /** List of tags to apply to the routing policy. */ + /** + * List of tags to apply to the routing policy. + */ tags?: string[] /** - * IP prefixes to accept from the peer (ranges of route announcements to - * accept). + * IP prefixes to accept from the peer (ranges of route announcements to accept). */ prefixFilterIn?: string[] - /** IP prefix filters to advertise to the peer (ranges of routes to advertise). */ + /** + * IP prefix filters to advertise to the peer (ranges of routes to advertise). + */ prefixFilterOut?: string[] } export type DeleteLinkRequest = { /** - * Region to target. If none is passed will use default region from the - * config. + * Region to target. If none is passed will use default region from the config. */ region?: ScwRegion - /** ID of the link to delete. */ + /** + * ID of the link to delete. + */ linkId: string } export type DeleteRoutingPolicyRequest = { /** - * Region to target. If none is passed will use default region from the - * config. + * Region to target. If none is passed will use default region from the config. */ region?: ScwRegion - /** ID of the routing policy to delete. */ + /** + * ID of the routing policy to delete. + */ routingPolicyId: string } export type DetachRoutingPolicyRequest = { /** - * Region to target. If none is passed will use default region from the - * config. + * Region to target. If none is passed will use default region from the config. */ region?: ScwRegion - /** ID of the link to detach a routing policy from. */ + /** + * ID of the link to detach a routing policy from. + */ linkId: string } export type DetachVpcRequest = { /** - * Region to target. If none is passed will use default region from the - * config. + * Region to target. If none is passed will use default region from the config. */ region?: ScwRegion - /** ID of the link to detach the VPC from. */ + /** + * ID of the link to detach the VPC from. + */ linkId: string } export type DisableRoutePropagationRequest = { /** - * Region to target. If none is passed will use default region from the - * config. + * Region to target. If none is passed will use default region from the config. */ region?: ScwRegion - /** ID of the link on which to disable route propagation. */ + /** + * ID of the link on which to disable route propagation. + */ linkId: string } export type EnableRoutePropagationRequest = { /** - * Region to target. If none is passed will use default region from the - * config. + * Region to target. If none is passed will use default region from the config. */ region?: ScwRegion - /** ID of the link on which to enable route propagation. */ + /** + * ID of the link on which to enable route propagation. + */ linkId: string } export type GetDedicatedConnectionRequest = { /** - * Region to target. If none is passed will use default region from the - * config. + * Region to target. If none is passed will use default region from the config. */ region?: ScwRegion - /** ID of connection to get. */ + /** + * ID of connection to get. + */ connectionId: string } export type GetLinkRequest = { /** - * Region to target. If none is passed will use default region from the - * config. + * Region to target. If none is passed will use default region from the config. */ region?: ScwRegion - /** ID of the link to get. */ + /** + * ID of the link to get. + */ linkId: string } export type GetPartnerRequest = { /** - * Region to target. If none is passed will use default region from the - * config. + * Region to target. If none is passed will use default region from the config. */ region?: ScwRegion - /** ID of partner to get. */ + /** + * ID of partner to get. + */ partnerId: string } export type GetPopRequest = { /** - * Region to target. If none is passed will use default region from the - * config. + * Region to target. If none is passed will use default region from the config. */ region?: ScwRegion - /** ID of PoP to get. */ + /** + * ID of PoP to get. + */ popId: string } export type GetRoutingPolicyRequest = { /** - * Region to target. If none is passed will use default region from the - * config. + * Region to target. If none is passed will use default region from the config. */ region?: ScwRegion - /** ID of the routing policy to get. */ + /** + * ID of the routing policy to get. + */ routingPolicyId: string } export type ListDedicatedConnectionsRequest = { /** - * Region to target. If none is passed will use default region from the - * config. + * Region to target. If none is passed will use default region from the config. */ region?: ScwRegion - /** Order in which to return results. */ + /** + * Order in which to return results. + */ orderBy?: ListDedicatedConnectionsRequestOrderBy - /** Page number to return. */ + /** + * Page number to return. + */ page?: number - /** Maximum number of connections to return per page. */ + /** + * Maximum number of connections to return per page. + */ pageSize?: number - /** Project ID to filter for. */ + /** + * Project ID to filter for. + */ projectId?: string - /** Organization ID to filter for. */ + /** + * Organization ID to filter for. + */ organizationId?: string - /** Link name to filter for. */ + /** + * Link name to filter for. + */ name?: string - /** Tags to filter for. */ + /** + * Tags to filter for. + */ tags?: string[] - /** Connection status to filter for. */ + /** + * Connection status to filter for. + */ status?: DedicatedConnectionStatus - /** Filter for dedicated connections with this bandwidth size. */ + /** + * Filter for dedicated connections with this bandwidth size. + */ bandwidthMbps?: number - /** Filter for dedicated connections present in this PoP. */ + /** + * Filter for dedicated connections present in this PoP. + */ popId?: string } export interface ListDedicatedConnectionsResponse { - /** List of connections on current page. */ + /** + * List of connections on current page. + */ connections: DedicatedConnection[] - /** Total number of connections returned. */ + /** + * Total number of connections returned. + */ totalCount: number } export type ListLinksRequest = { /** - * Region to target. If none is passed will use default region from the - * config. + * Region to target. If none is passed will use default region from the config. */ region?: ScwRegion - /** Order in which to return results. */ + /** + * Order in which to return results. + */ orderBy?: ListLinksRequestOrderBy - /** Page number to return. */ + /** + * Page number to return. + */ page?: number - /** Maximum number of links to return per page. */ + /** + * Maximum number of links to return per page. + */ pageSize?: number - /** Project ID to filter for. */ + /** + * Project ID to filter for. + */ projectId?: string - /** Organization ID to filter for. */ + /** + * Organization ID to filter for. + */ organizationId?: string - /** Link name to filter for. */ + /** + * Link name to filter for. + */ name?: string - /** Tags to filter for. */ + /** + * Tags to filter for. + */ tags?: string[] - /** Link status to filter for. */ + /** + * Link status to filter for. + */ status?: LinkStatus - /** BGP IPv4 status to filter for. */ + /** + * BGP IPv4 status to filter for. + */ bgpV4Status?: BgpStatus - /** BGP IPv6 status to filter for. */ + /** + * BGP IPv6 status to filter for. + */ bgpV6Status?: BgpStatus - /** Filter for links attached to this PoP (via connections). */ + /** + * Filter for links attached to this PoP (via connections). + */ popId?: string - /** Filter for link bandwidth (in Mbps). */ + /** + * Filter for link bandwidth (in Mbps). + */ bandwidthMbps?: number - /** Filter for links hosted by this partner. */ + /** + * Filter for links hosted by this partner. + */ partnerId?: string - /** Filter for links attached to this VPC. */ + /** + * Filter for links attached to this VPC. + */ vpcId?: string - /** Filter for links using this routing policy. */ + /** + * Filter for links using this routing policy. + */ routingPolicyId?: string - /** Filter for the link with this pairing_key. */ + /** + * Filter for the link with this pairing_key. + */ pairingKey?: string - /** Filter for hosted or self-hosted links. */ + /** + * Filter for hosted or self-hosted links. + */ kind?: LinkKind - /** Filter for links self-hosted on this connection. */ + /** + * Filter for links self-hosted on this connection. + */ connectionId?: string } export interface ListLinksResponse { - /** List of links on the current page. */ + /** + * List of links on the current page. + */ links: Link[] - /** Total number of links. */ + /** + * Total number of links. + */ totalCount: number } export type ListPartnersRequest = { /** - * Region to target. If none is passed will use default region from the - * config. + * Region to target. If none is passed will use default region from the config. */ region?: ScwRegion - /** Order in which to return results. */ + /** + * Order in which to return results. + */ orderBy?: ListPartnersRequestOrderBy - /** Page number to return. */ + /** + * Page number to return. + */ page?: number - /** Maximum number of partners to return per page. */ + /** + * Maximum number of partners to return per page. + */ pageSize?: number - /** Filter for partners present (offering a connection) in one of these PoPs. */ + /** + * Filter for partners present (offering a connection) in one of these PoPs. + */ popIds?: string[] } export interface ListPartnersResponse { - /** List of partners on current page. */ + /** + * List of partners on current page. + */ partners: Partner[] - /** Total number of partners returned. */ + /** + * Total number of partners returned. + */ totalCount: number } export type ListPopsRequest = { /** - * Region to target. If none is passed will use default region from the - * config. + * Region to target. If none is passed will use default region from the config. */ region?: ScwRegion - /** Order in which to return results. */ + /** + * Order in which to return results. + */ orderBy?: ListPopsRequestOrderBy - /** Page number to return. */ + /** + * Page number to return. + */ page?: number - /** Maximum number of PoPs to return per page. */ + /** + * Maximum number of PoPs to return per page. + */ pageSize?: number - /** PoP name to filter for. */ + /** + * PoP name to filter for. + */ name?: string - /** Hosting provider name to filter for. */ + /** + * Hosting provider name to filter for. + */ hostingProviderName?: string - /** Filter for PoPs hosting an available shared connection from this partner. */ + /** + * Filter for PoPs hosting an available shared connection from this partner. + */ partnerId?: string /** - * Filter for PoPs with a shared connection allowing this bandwidth size. Note - * that we cannot guarantee that PoPs returned will have available capacity. + * Filter for PoPs with a shared connection allowing this bandwidth size. Note that we cannot guarantee that PoPs returned will have available capacity. */ linkBandwidthMbps?: number /** - * Filter for PoPs with a dedicated connection available for self-hosted - * links. + * Filter for PoPs with a dedicated connection available for self-hosted links. */ dedicatedAvailable?: boolean } export interface ListPopsResponse { - /** List of PoPs on the current page. */ + /** + * List of PoPs on the current page. + */ pops: Pop[] - /** Total number of PoPs. */ + /** + * Total number of PoPs. + */ totalCount: number } export type ListRoutingPoliciesRequest = { /** - * Region to target. If none is passed will use default region from the - * config. + * Region to target. If none is passed will use default region from the config. */ region?: ScwRegion - /** Order in which to return results. */ + /** + * Order in which to return results. + */ orderBy?: ListRoutingPoliciesRequestOrderBy - /** Page number to return. */ + /** + * Page number to return. + */ page?: number - /** Maximum number of routing policies to return per page. */ + /** + * Maximum number of routing policies to return per page. + */ pageSize?: number - /** Project ID to filter for. */ + /** + * Project ID to filter for. + */ projectId?: string - /** Organization ID to filter for. */ + /** + * Organization ID to filter for. + */ organizationId?: string - /** Routing policy name to filter for. */ + /** + * Routing policy name to filter for. + */ name?: string - /** Tags to filter for. */ + /** + * Tags to filter for. + */ tags?: string[] } @@ -610,38 +846,50 @@ export interface ListRoutingPoliciesResponse { export type UpdateLinkRequest = { /** - * Region to target. If none is passed will use default region from the - * config. + * Region to target. If none is passed will use default region from the config. */ region?: ScwRegion - /** ID of the link to update. */ + /** + * ID of the link to update. + */ linkId: string - /** Name of the link. */ + /** + * Name of the link. + */ name?: string - /** List of tags to apply to the link. */ + /** + * List of tags to apply to the link. + */ tags?: string[] + /** + * For self-hosted links, AS Number to establish BGP session. + */ + peerAsn?: number } export type UpdateRoutingPolicyRequest = { /** - * Region to target. If none is passed will use default region from the - * config. + * Region to target. If none is passed will use default region from the config. */ region?: ScwRegion - /** ID of the routing policy to update. */ + /** + * ID of the routing policy to update. + */ routingPolicyId: string - /** Name of the routing policy. */ + /** + * Name of the routing policy. + */ name?: string - /** List of tags to apply to the routing policy. */ + /** + * List of tags to apply to the routing policy. + */ tags?: string[] /** - * IP prefixes to accept from the peer (ranges of route announcements to - * accept). + * IP prefixes to accept from the peer (ranges of route announcements to accept). */ prefixFilterIn?: string[] /** - * IP prefix filters for routes to advertise to the peer (ranges of routes to - * advertise). + * IP prefix filters for routes to advertise to the peer (ranges of routes to advertise). */ prefixFilterOut?: string[] } diff --git a/packages/clients/src/api/interlink/v1beta1/validation-rules.gen.ts b/packages/clients/src/api/interlink/v1beta1/validation-rules.gen.ts index e1bfad75f..8d7730dfe 100644 --- a/packages/clients/src/api/interlink/v1beta1/validation-rules.gen.ts +++ b/packages/clients/src/api/interlink/v1beta1/validation-rules.gen.ts @@ -17,6 +17,10 @@ export const CreateLinkRequest = { maxLength: 255, minLength: 1, }, + peerAsn: { + greaterThanOrEqual: 1, + lessThanOrEqual: 65534, + }, } export const CreateRoutingPolicyRequest = { @@ -114,6 +118,10 @@ export const UpdateLinkRequest = { maxLength: 255, minLength: 1, }, + peerAsn: { + greaterThanOrEqual: 1, + lessThanOrEqual: 65534, + }, } export const UpdateRoutingPolicyRequest = { diff --git a/packages/clients/src/api/iot/v1/api.gen.ts b/packages/clients/src/api/iot/v1/api.gen.ts index 4668cfbc2..456a61c3a 100644 --- a/packages/clients/src/api/iot/v1/api.gen.ts +++ b/packages/clients/src/api/iot/v1/api.gen.ts @@ -103,8 +103,8 @@ const jsonContentHeaders = { /** * IoT Hub API. - * - * This API allows you to manage your IoT hubs and devices. + +This API allows you to manage your IoT hubs and devices. */ export class API extends ParentAPI { /** Lists the available regions of the API. */ @@ -131,9 +131,7 @@ export class API extends ParentAPI { ) /** - * List hubs. List all Hubs in the specified zone. By default, returned Hubs - * are ordered by creation date in ascending order, though this can be - * modified via the `order_by` field. + * List hubs. List all Hubs in the specified zone. By default, returned Hubs are ordered by creation date in ascending order, though this can be modified via the `order_by` field. * * @param request - The request {@link ListHubsRequest} * @returns A Promise of ListHubsResponse @@ -142,8 +140,7 @@ export class API extends ParentAPI { enrichForPagination('hubs', this.pageOfListHubs, request) /** - * Create a hub. Create a new Hub in the targeted region, specifying its - * configuration including name and product plan. + * Create a hub. Create a new Hub in the targeted region, specifying its configuration including name and product plan. * * @param request - The request {@link CreateHubRequest} * @returns A Promise of Hub @@ -162,9 +159,7 @@ export class API extends ParentAPI { ) /** - * Get a hub. Retrieve information about an existing IoT Hub, specified by its - * Hub ID. Its full details, including name, status and endpoint, are returned - * in the response object. + * Get a hub. Retrieve information about an existing IoT Hub, specified by its Hub ID. Its full details, including name, status and endpoint, are returned in the response object. * * @param request - The request {@link GetHubRequest} * @returns A Promise of Hub @@ -199,8 +194,7 @@ export class API extends ParentAPI { ) /** - * Update a hub. Update the parameters of an existing IoT Hub, specified by - * its Hub ID. + * Update a hub. Update the parameters of an existing IoT Hub, specified by its Hub ID. * * @param request - The request {@link UpdateHubRequest} * @returns A Promise of Hub @@ -253,8 +247,7 @@ export class API extends ParentAPI { ) /** - * Delete a hub. Delete an existing IoT Hub, specified by its Hub ID. Deleting - * a Hub is permanent, and cannot be undone. + * Delete a hub. Delete an existing IoT Hub, specified by its Hub ID. Deleting a Hub is permanent, and cannot be undone. * * @param request - The request {@link DeleteHubRequest} */ @@ -266,8 +259,7 @@ export class API extends ParentAPI { }) /** - * Get a hub's metrics. Get the metrics of an existing IoT Hub, specified by - * its Hub ID. + * Get a hub's metrics. Get the metrics of an existing IoT Hub, specified by its Hub ID. * * @deprecated * @param request - The request {@link GetHubMetricsRequest} @@ -284,8 +276,7 @@ export class API extends ParentAPI { ) /** - * Set the certificate authority of a hub. Set a particular PEM-encoded - * certificate, specified by the Hub ID. + * Set the certificate authority of a hub. Set a particular PEM-encoded certificate, specified by the Hub ID. * * @param request - The request {@link SetHubCARequest} * @returns A Promise of Hub @@ -304,8 +295,7 @@ export class API extends ParentAPI { ) /** - * Get the certificate authority of a hub. Get information for a particular - * PEM-encoded certificate, specified by the Hub ID. + * Get the certificate authority of a hub. Get information for a particular PEM-encoded certificate, specified by the Hub ID. * * @param request - The request {@link GetHubCARequest} * @returns A Promise of GetHubCAResponse @@ -341,9 +331,7 @@ export class API extends ParentAPI { ) /** - * List devices. List all devices in the specified region. By default, - * returned devices are ordered by creation date in ascending order, though - * this can be modified via the `order_by` field. + * List devices. List all devices in the specified region. By default, returned devices are ordered by creation date in ascending order, though this can be modified via the `order_by` field. * * @param request - The request {@link ListDevicesRequest} * @returns A Promise of ListDevicesResponse @@ -371,9 +359,7 @@ export class API extends ParentAPI { ) /** - * Get a device. Retrieve information about an existing device, specified by - * its device ID. Its full details, including name, status and ID, are - * returned in the response object. + * Get a device. Retrieve information about an existing device, specified by its device ID. Its full details, including name, status and ID, are returned in the response object. * * @param request - The request {@link GetDeviceRequest} * @returns A Promise of Device @@ -388,8 +374,7 @@ export class API extends ParentAPI { ) /** - * Update a device. Update the parameters of an existing device, specified by - * its device ID. + * Update a device. Update the parameters of an existing device, specified by its device ID. * * @param request - The request {@link UpdateDeviceRequest} * @returns A Promise of Device @@ -442,8 +427,7 @@ export class API extends ParentAPI { ) /** - * Renew a device certificate. Renew the certificate of an existing device, - * specified by its device ID. + * Renew a device certificate. Renew the certificate of an existing device, specified by its device ID. * * @param request - The request {@link RenewDeviceCertificateRequest} * @returns A Promise of RenewDeviceCertificateResponse @@ -460,8 +444,7 @@ export class API extends ParentAPI { ) /** - * Set a custom certificate on a device. Switch the existing certificate of a - * given device with an EM-encoded custom certificate. + * Set a custom certificate on a device. Switch the existing certificate of a given device with an EM-encoded custom certificate. * * @param request - The request {@link SetDeviceCertificateRequest} * @returns A Promise of SetDeviceCertificateResponse @@ -480,9 +463,7 @@ export class API extends ParentAPI { ) /** - * Get a device's certificate. Get information for a particular PEM-encoded - * certificate, specified by the device ID. The response returns full details - * of the device, including its type of certificate. + * Get a device's certificate. Get information for a particular PEM-encoded certificate, specified by the device ID. The response returns full details of the device, including its type of certificate. * * @param request - The request {@link GetDeviceCertificateRequest} * @returns A Promise of GetDeviceCertificateResponse @@ -497,8 +478,7 @@ export class API extends ParentAPI { ) /** - * Remove a device. Remove a specific device from the specific Hub it is - * attached to. + * Remove a device. Remove a specific device from the specific Hub it is attached to. * * @param request - The request {@link DeleteDeviceRequest} */ @@ -509,8 +489,7 @@ export class API extends ParentAPI { }) /** - * Get a device's metrics. Get the metrics of an existing device, specified by - * its device ID. + * Get a device's metrics. Get the metrics of an existing device, specified by its device ID. * * @deprecated * @param request - The request {@link GetDeviceMetricsRequest} @@ -546,9 +525,7 @@ export class API extends ParentAPI { ) /** - * List routes. List all routes in the specified region. By default, returned - * routes are ordered by creation date in ascending order, though this can be - * modified via the `order_by` field. + * List routes. List all routes in the specified region. By default, returned routes are ordered by creation date in ascending order, though this can be modified via the `order_by` field. * * @param request - The request {@link ListRoutesRequest} * @returns A Promise of ListRoutesResponse @@ -558,16 +535,15 @@ export class API extends ParentAPI { /** * Create a route. Multiple kinds of routes can be created, such as: - * - * - Database Route Create a route that will record subscribed MQTT messages - * into your database. You need to manage the database by yourself. - * - REST Route. Create a route that will call a REST API on received subscribed - * MQTT messages. - * - Amazon S3 Routes. Create a route that will put subscribed MQTT messages - * into an Object Storage bucket. You need to create the bucket yourself and - * grant write access. Granting can be done with s3cmd (`s3cmd setacl - * s3:// - * --acl-grant=write:555c69c3-87d0-4bf8-80f1-99a2f757d031:555c69c3-87d0-4bf8-80f1-99a2f757d031`). +- Database Route + Create a route that will record subscribed MQTT messages into your database. + You need to manage the database by yourself. +- REST Route. + Create a route that will call a REST API on received subscribed MQTT messages. +- Amazon S3 Routes. + Create a route that will put subscribed MQTT messages into an Object Storage bucket. + You need to create the bucket yourself and grant write access. + Granting can be done with s3cmd (`s3cmd setacl s3:// --acl-grant=write:555c69c3-87d0-4bf8-80f1-99a2f757d031:555c69c3-87d0-4bf8-80f1-99a2f757d031`). * * @param request - The request {@link CreateRouteRequest} * @returns A Promise of Route @@ -586,8 +562,7 @@ export class API extends ParentAPI { ) /** - * Update a route. Update the parameters of an existing route, specified by - * its route ID. + * Update a route. Update the parameters of an existing route, specified by its route ID. * * @param request - The request {@link UpdateRouteRequest} * @returns A Promise of Route @@ -606,9 +581,7 @@ export class API extends ParentAPI { ) /** - * Get a route. Get information for a particular route, specified by the route - * ID. The response returns full details of the route, including its type, the - * topic it subscribes to and its configuration. + * Get a route. Get information for a particular route, specified by the route ID. The response returns full details of the route, including its type, the topic it subscribes to and its configuration. * * @param request - The request {@link GetRouteRequest} * @returns A Promise of Route @@ -623,8 +596,7 @@ export class API extends ParentAPI { ) /** - * Delete a route. Delete an existing route, specified by its route ID. - * Deleting a route is permanent, and cannot be undone. + * Delete a route. Delete an existing route, specified by its route ID. Deleting a route is permanent, and cannot be undone. * * @param request - The request {@link DeleteRouteRequest} */ @@ -666,9 +638,7 @@ export class API extends ParentAPI { enrichForPagination('networks', this.pageOfListNetworks, request) /** - * Create a new network. Create a new network for an existing hub. Beside the - * default network, you can add networks for different data providers. - * Possible network types are Sigfox and REST. + * Create a new network. Create a new network for an existing hub. Beside the default network, you can add networks for different data providers. Possible network types are Sigfox and REST. * * @param request - The request {@link CreateNetworkRequest} * @returns A Promise of CreateNetworkResponse @@ -687,9 +657,7 @@ export class API extends ParentAPI { ) /** - * Retrieve a specific network. Retrieve an existing network, specified by its - * network ID. The response returns full details of the network, including its - * type, the topic prefix and its endpoint. + * Retrieve a specific network. Retrieve an existing network, specified by its network ID. The response returns full details of the network, including its type, the topic prefix and its endpoint. * * @param request - The request {@link GetNetworkRequest} * @returns A Promise of Network @@ -704,8 +672,7 @@ export class API extends ParentAPI { ) /** - * Delete a Network. Delete an existing network, specified by its network ID. - * Deleting a network is permanent, and cannot be undone. + * Delete a Network. Delete an existing network, specified by its network ID. Deleting a network is permanent, and cannot be undone. * * @param request - The request {@link DeleteNetworkRequest} */ diff --git a/packages/clients/src/api/iot/v1/types.gen.ts b/packages/clients/src/api/iot/v1/types.gen.ts index 7d3048006..141d1af23 100644 --- a/packages/clients/src/api/iot/v1/types.gen.ts +++ b/packages/clients/src/api/iot/v1/types.gen.ts @@ -82,22 +82,24 @@ export type RouteS3ConfigS3Strategy = 'unknown' | 'per_topic' | 'per_message' export interface DeviceMessageFiltersRule { /** - * If set to `accept`, all topics in the topics list will be allowed, with all - * other topics being denied. If set to `reject`, all topics in the topics - * list will be denied, with all other topics being allowed. + * If set to `accept`, all topics in the topics list will be allowed, with all other topics being denied. +If set to `reject`, all topics in the topics list will be denied, with all other topics being allowed. */ policy: DeviceMessageFiltersRulePolicy /** - * List of topics to accept or reject. It must be valid MQTT topics and up to - * 65535 characters. + * List of topics to accept or reject. It must be valid MQTT topics and up to 65535 characters. */ topics?: string[] } export interface DeviceMessageFilters { - /** Filtering rule to restrict topics the device can publish to. */ + /** + * Filtering rule to restrict topics the device can publish to. + */ publish?: DeviceMessageFiltersRule - /** Filtering rule to restrict topics the device can subscribe to. */ + /** + * Filtering rule to restrict topics the device can subscribe to. + */ subscribe?: DeviceMessageFiltersRule } @@ -111,57 +113,88 @@ export interface Certificate { } export interface Device { - /** Device ID, also used as MQTT Client ID or username. */ + /** + * Device ID, also used as MQTT Client ID or username. + */ id: string - /** Device name. */ + /** + * Device name. + */ name: string - /** Device description. */ + /** + * Device description. + */ description: string - /** Device status. */ + /** + * Device status. + */ status: DeviceStatus - /** Hub ID. */ + /** + * Hub ID. + */ hubId: string - /** Last connection/activity date of a device. */ + /** + * Last connection/activity date of a device. + */ lastActivityAt?: Date - /** Defines whether the device is connected to the Hub. */ + /** + * Defines whether the device is connected to the Hub. + */ isConnected: boolean /** - * Defines whether to allow the device to connect to the Hub without TLS - * mutual authentication. + * Defines whether to allow the device to connect to the Hub without TLS mutual authentication. */ allowInsecure: boolean /** - * Defines whether to allow multiple physical devices to connect to the Hub - * with this device's credentials. + * Defines whether to allow multiple physical devices to connect to the Hub with this device's credentials. */ allowMultipleConnections: boolean - /** Filter-sets to restrict the topics the device can publish/subscribe to. */ + /** + * Filter-sets to restrict the topics the device can publish/subscribe to. + */ messageFilters?: DeviceMessageFilters /** - * Assigning a custom certificate allows a device to authenticate using that - * specific certificate without checking the Hub's CA certificate. + * Assigning a custom certificate allows a device to authenticate using that specific certificate without checking the Hub's CA certificate. */ hasCustomCertificate: boolean - /** Date at which the device was added. */ + /** + * Date at which the device was added. + */ createdAt?: Date - /** Date at which the device was last modified. */ + /** + * Date at which the device was last modified. + */ updatedAt?: Date } export interface Network { - /** Network ID. */ + /** + * Network ID. + */ id: string - /** Network name. */ + /** + * Network name. + */ name: string - /** Type of network to connect with. */ + /** + * Type of network to connect with. + */ type: NetworkNetworkType - /** Endpoint to use for interacting with the network. */ + /** + * Endpoint to use for interacting with the network. + */ endpoint: string - /** Hub ID to connect the Network to. */ + /** + * Hub ID to connect the Network to. + */ hubId: string - /** Date at which the network was created. */ + /** + * Date at which the network was created. + */ createdAt?: Date - /** This prefix will be prepended to all topics for this Network. */ + /** + * This prefix will be prepended to all topics for this Network. + */ topicPrefix: string } @@ -189,130 +222,181 @@ export interface CreateRouteRequestS3Config { } export interface Hub { - /** Hub ID. */ + /** + * Hub ID. + */ id: string - /** Hub name. */ + /** + * Hub name. + */ name: string - /** Current status of the Hub. */ + /** + * Current status of the Hub. + */ status: HubStatus - /** Hub feature set. */ + /** + * Hub feature set. + */ productPlan: HubProductPlan - /** Defines whether the hub has been enabled. */ + /** + * Defines whether the hub has been enabled. + */ enabled: boolean - /** Number of registered devices. */ + /** + * Number of registered devices. + */ deviceCount: number - /** Number of currently connected devices. */ + /** + * Number of currently connected devices. + */ connectedDeviceCount: number /** - * Devices should be connected to this host. Port may be 1883 (MQTT), 8883 - * (MQTT over TLS), 80 (MQTT over Websocket) or 443 (MQTT over Websocket over - * TLS). + * Devices should be connected to this host. Port may be 1883 (MQTT), 8883 (MQTT over TLS), 80 (MQTT over Websocket) or 443 (MQTT over Websocket over TLS). */ endpoint: string - /** Defines whether to disable Hub events. */ + /** + * Defines whether to disable Hub events. + */ disableEvents: boolean - /** Hub events topic prefix. */ + /** + * Hub events topic prefix. + */ eventsTopicPrefix: string - /** Region of the Hub. */ + /** + * Region of the Hub. + */ region: ScwRegion - /** Hub creation date. */ + /** + * Hub creation date. + */ createdAt?: Date - /** Hub last modification date. */ + /** + * Hub last modification date. + */ updatedAt?: Date - /** Project owning the resource. */ + /** + * Project owning the resource. + */ projectId: string - /** Organization owning the resource. */ + /** + * Organization owning the resource. + */ organizationId: string /** - * When an unknown device connects to your hub using a valid certificate - * chain, it will be automatically provisioned inside your Hub. The Hub uses - * the common name of the device certifcate to find out if a device with the - * same name already exists. This setting can only be enabled on a hub with a - * custom certificate authority. + * When an unknown device connects to your hub using a valid certificate chain, it will be automatically provisioned inside your Hub. The Hub uses the common name of the device certifcate to find out if a device with the same name already exists. This setting can only be enabled on a hub with a custom certificate authority. */ enableDeviceAutoProvisioning: boolean /** - * Flag is automatically set to `false` after Hub creation, as Hub - * certificates are managed by Scaleway. Once a custom certificate authority - * is set, the flag will be set to `true`. + * Flag is automatically set to `false` after Hub creation, as Hub certificates are managed by Scaleway. Once a custom certificate authority is set, the flag will be set to `true`. */ hasCustomCa: boolean /** * BETA - not implemented yet. * - * One-of ('twinsDbConfig'): at most one of 'twinsGraphiteConfig' could be - * set. + * One-of ('twinsDbConfig'): at most one of 'twinsGraphiteConfig' could be set. */ twinsGraphiteConfig?: HubTwinsGraphiteConfig } export interface RouteSummary { - /** Route ID. */ + /** + * Route ID. + */ id: string - /** Route name. */ + /** + * Route name. + */ name: string - /** Hub ID of the route. */ + /** + * Hub ID of the route. + */ hubId: string /** - * Topic the route subscribes to. It must be a valid MQTT topic and up to - * 65535 characters. + * Topic the route subscribes to. It must be a valid MQTT topic and up to 65535 characters. */ topic: string - /** Route type. */ + /** + * Route type. + */ type: RouteRouteType - /** Date at which the route was created. */ + /** + * Date at which the route was created. + */ createdAt?: Date - /** Date at which the route was last updated. */ + /** + * Date at which the route was last updated. + */ updatedAt?: Date } export interface ListTwinDocumentsResponseDocumentSummary { - /** Name of the document. */ + /** + * Name of the document. + */ documentName: string } export interface RouteDatabaseConfig { /** - * Database engine the route will connect to. If not specified, the default - * database will be 'PostgreSQL'. + * Database engine the route will connect to. If not specified, the default database will be 'PostgreSQL'. */ engine: RouteDatabaseConfigEngine - /** Database host. */ + /** + * Database host. + */ host: string - /** Database port. */ + /** + * Database port. + */ port: number - /** Database name. */ + /** + * Database name. + */ dbname: string - /** Database username. Make sure this account can execute the provided query. */ + /** + * Database username. Make sure this account can execute the provided query. + */ username: string - /** Database password. */ + /** + * Database password. + */ password: string /** - * SQL query to be executed ($TOPIC and $PAYLOAD variables are available, see - * documentation). + * SQL query to be executed ($TOPIC and $PAYLOAD variables are available, see documentation). */ query: string } export interface RouteRestConfig { - /** HTTP verb used to call REST URI. */ + /** + * HTTP verb used to call REST URI. + */ verb: RouteRestConfigHttpVerb - /** URI of the REST endpoint. */ + /** + * URI of the REST endpoint. + */ uri: string - /** HTTP call extra headers. */ + /** + * HTTP call extra headers. + */ headers: Record } export interface RouteS3Config { - /** Region of the Amazon S3 route's destination bucket (e.g., 'fr-par'). */ + /** + * Region of the Amazon S3 route's destination bucket (e.g., 'fr-par'). + */ bucketRegion: string - /** Destination bucket name of the Amazon S3 route. */ + /** + * Destination bucket name of the Amazon S3 route. + */ bucketName: string - /** Optional string to prefix object names with. */ + /** + * Optional string to prefix object names with. + */ objectPrefix: string /** - * How the Amazon S3 route's objects will be created: one per topic or one per - * message. + * How the Amazon S3 route's objects will be created: one per topic or one per message. */ strategy: RouteS3ConfigS3Strategy } @@ -342,284 +426,326 @@ export interface UpdateRouteRequestS3Config { export type CreateDeviceRequest = { /** - * Region to target. If none is passed will use default region from the - * config. + * Region to target. If none is passed will use default region from the config. */ region?: ScwRegion - /** Device name. */ + /** + * Device name. + */ name?: string - /** Hub ID of the device. */ + /** + * Hub ID of the device. + */ hubId: string /** - * Defines whether to allow plain and server-authenticated SSL connections in - * addition to mutually-authenticated ones. + * Defines whether to allow plain and server-authenticated SSL connections in addition to mutually-authenticated ones. */ allowInsecure: boolean /** - * Defines whether to allow multiple physical devices to connect with this - * device's credentials. + * Defines whether to allow multiple physical devices to connect with this device's credentials. */ allowMultipleConnections: boolean /** - * Filter-sets to authorize or deny the device to publish/subscribe to - * specific topics. + * Filter-sets to authorize or deny the device to publish/subscribe to specific topics. */ messageFilters?: DeviceMessageFilters - /** Device description. */ + /** + * Device description. + */ description?: string } export interface CreateDeviceResponse { - /** Information related to the created device. */ + /** + * Information related to the created device. + */ device?: Device - /** Device certificate. */ + /** + * Device certificate. + */ certificate?: Certificate } export type CreateHubRequest = { /** - * Region to target. If none is passed will use default region from the - * config. + * Region to target. If none is passed will use default region from the config. */ region?: ScwRegion - /** Hub name (up to 255 characters). */ + /** + * Hub name (up to 255 characters). + */ name?: string /** - * Project/Organization ID to filter for, only Hubs from this - * Project/Organization will be returned. + * Project/Organization ID to filter for, only Hubs from this Project/Organization will be returned. */ projectId?: string - /** Hub product plan. */ + /** + * Hub product plan. + */ productPlan: HubProductPlan - /** Disable Hub events. */ + /** + * Disable Hub events. + */ disableEvents?: boolean - /** Topic prefix (default '$SCW/events') of Hub events. */ + /** + * Topic prefix (default '$SCW/events') of Hub events. + */ eventsTopicPrefix?: string /** * BETA - not implemented yet. * - * One-of ('twinsDbConfig'): at most one of 'twinsGraphiteConfig' could be - * set. + * One-of ('twinsDbConfig'): at most one of 'twinsGraphiteConfig' could be set. */ twinsGraphiteConfig?: HubTwinsGraphiteConfig } export type CreateNetworkRequest = { /** - * Region to target. If none is passed will use default region from the - * config. + * Region to target. If none is passed will use default region from the config. */ region?: ScwRegion - /** Network name. */ + /** + * Network name. + */ name?: string - /** Type of network to connect with. */ + /** + * Type of network to connect with. + */ type: NetworkNetworkType - /** Hub ID to connect the Network to. */ + /** + * Hub ID to connect the Network to. + */ hubId: string - /** Topic prefix for the Network. */ + /** + * Topic prefix for the Network. + */ topicPrefix: string } export interface CreateNetworkResponse { - /** Information related to the created network. */ + /** + * Information related to the created network. + */ network?: Network - /** Endpoint Key to keep secret. This cannot be retrieved later. */ + /** + * Endpoint Key to keep secret. This cannot be retrieved later. + */ secret: string } export type CreateRouteRequest = { /** - * Region to target. If none is passed will use default region from the - * config. + * Region to target. If none is passed will use default region from the config. */ region?: ScwRegion - /** Route name. */ + /** + * Route name. + */ name?: string - /** Hub ID of the route. */ + /** + * Hub ID of the route. + */ hubId: string /** - * Topic the route subscribes to. It must be a valid MQTT topic and up to - * 65535 characters. + * Topic the route subscribes to. It must be a valid MQTT topic and up to 65535 characters. */ topic: string /** * If creating Amazon S3 Routes, Amazon S3-specific configuration fields. * - * One-of ('config'): at most one of 's3Config', 'dbConfig', 'restConfig' - * could be set. + * One-of ('config'): at most one of 's3Config', 'dbConfig', 'restConfig' could be set. */ s3Config?: CreateRouteRequestS3Config /** * If creating Database Route, DB-specific configuration fields. * - * One-of ('config'): at most one of 's3Config', 'dbConfig', 'restConfig' - * could be set. + * One-of ('config'): at most one of 's3Config', 'dbConfig', 'restConfig' could be set. */ dbConfig?: CreateRouteRequestDatabaseConfig /** * If creating Rest Route, Rest-specific configuration fields. * - * One-of ('config'): at most one of 's3Config', 'dbConfig', 'restConfig' - * could be set. + * One-of ('config'): at most one of 's3Config', 'dbConfig', 'restConfig' could be set. */ restConfig?: CreateRouteRequestRestConfig } export type DeleteDeviceRequest = { /** - * Region to target. If none is passed will use default region from the - * config. + * Region to target. If none is passed will use default region from the config. */ region?: ScwRegion - /** Device ID. */ + /** + * Device ID. + */ deviceId: string } export type DeleteHubRequest = { /** - * Region to target. If none is passed will use default region from the - * config. + * Region to target. If none is passed will use default region from the config. */ region?: ScwRegion - /** Hub ID. */ + /** + * Hub ID. + */ hubId: string /** - * Defines whether to force the deletion of devices added to this Hub or - * reject the operation. + * Defines whether to force the deletion of devices added to this Hub or reject the operation. */ deleteDevices?: boolean } export type DeleteNetworkRequest = { /** - * Region to target. If none is passed will use default region from the - * config. + * Region to target. If none is passed will use default region from the config. */ region?: ScwRegion - /** Network ID. */ + /** + * Network ID. + */ networkId: string } export type DeleteRouteRequest = { /** - * Region to target. If none is passed will use default region from the - * config. + * Region to target. If none is passed will use default region from the config. */ region?: ScwRegion - /** Route ID. */ + /** + * Route ID. + */ routeId: string } export type DeleteTwinDocumentRequest = { /** - * Region to target. If none is passed will use default region from the - * config. + * Region to target. If none is passed will use default region from the config. */ region?: ScwRegion - /** Twin ID. */ + /** + * Twin ID. + */ twinId: string - /** Name of the document. */ + /** + * Name of the document. + */ documentName: string } export type DeleteTwinDocumentsRequest = { /** - * Region to target. If none is passed will use default region from the - * config. + * Region to target. If none is passed will use default region from the config. */ region?: ScwRegion - /** Twin ID. */ + /** + * Twin ID. + */ twinId: string } export type DisableDeviceRequest = { /** - * Region to target. If none is passed will use default region from the - * config. + * Region to target. If none is passed will use default region from the config. */ region?: ScwRegion - /** Device ID. */ + /** + * Device ID. + */ deviceId: string } export type DisableHubRequest = { /** - * Region to target. If none is passed will use default region from the - * config. + * Region to target. If none is passed will use default region from the config. */ region?: ScwRegion - /** Hub ID. */ + /** + * Hub ID. + */ hubId: string } export type EnableDeviceRequest = { /** - * Region to target. If none is passed will use default region from the - * config. + * Region to target. If none is passed will use default region from the config. */ region?: ScwRegion - /** Device ID. */ + /** + * Device ID. + */ deviceId: string } export type EnableHubRequest = { /** - * Region to target. If none is passed will use default region from the - * config. + * Region to target. If none is passed will use default region from the config. */ region?: ScwRegion - /** Hub ID. */ + /** + * Hub ID. + */ hubId: string } export type GetDeviceCertificateRequest = { /** - * Region to target. If none is passed will use default region from the - * config. + * Region to target. If none is passed will use default region from the config. */ region?: ScwRegion - /** Device ID. */ + /** + * Device ID. + */ deviceId: string } export interface GetDeviceCertificateResponse { - /** Information related to the created device. */ + /** + * Information related to the created device. + */ device?: Device - /** Device certificate. */ + /** + * Device certificate. + */ certificatePem: string } export type GetDeviceMetricsRequest = { /** - * Region to target. If none is passed will use default region from the - * config. + * Region to target. If none is passed will use default region from the config. */ region?: ScwRegion - /** Device ID. */ + /** + * Device ID. + */ deviceId: string - /** Start date used to compute the best scale for the returned metrics. */ + /** + * Start date used to compute the best scale for the returned metrics. + */ startDate?: Date } export interface GetDeviceMetricsResponse { - /** Metrics for a device over the requested period. */ + /** + * Metrics for a device over the requested period. + */ metrics: TimeSeries[] } export type GetDeviceRequest = { /** - * Region to target. If none is passed will use default region from the - * config. + * Region to target. If none is passed will use default region from the config. */ region?: ScwRegion - /** Device ID. */ + /** + * Device ID. + */ deviceId: string } export type GetHubCARequest = { /** - * Region to target. If none is passed will use default region from the - * config. + * Region to target. If none is passed will use default region from the config. */ region?: ScwRegion hubId: string @@ -631,298 +757,394 @@ export interface GetHubCAResponse { export type GetHubMetricsRequest = { /** - * Region to target. If none is passed will use default region from the - * config. + * Region to target. If none is passed will use default region from the config. */ region?: ScwRegion - /** Hub ID. */ + /** + * Hub ID. + */ hubId: string - /** Start date used to compute the best scale for returned metrics. */ + /** + * Start date used to compute the best scale for returned metrics. + */ startDate?: Date } export interface GetHubMetricsResponse { - /** Metrics for a Hub over the requested period. */ + /** + * Metrics for a Hub over the requested period. + */ metrics: TimeSeries[] } export type GetHubRequest = { /** - * Region to target. If none is passed will use default region from the - * config. + * Region to target. If none is passed will use default region from the config. */ region?: ScwRegion - /** Hub ID. */ + /** + * Hub ID. + */ hubId: string } export type GetNetworkRequest = { /** - * Region to target. If none is passed will use default region from the - * config. + * Region to target. If none is passed will use default region from the config. */ region?: ScwRegion - /** Network ID. */ + /** + * Network ID. + */ networkId: string } export type GetRouteRequest = { /** - * Region to target. If none is passed will use default region from the - * config. + * Region to target. If none is passed will use default region from the config. */ region?: ScwRegion - /** Route ID. */ + /** + * Route ID. + */ routeId: string } export type GetTwinDocumentRequest = { /** - * Region to target. If none is passed will use default region from the - * config. + * Region to target. If none is passed will use default region from the config. */ region?: ScwRegion - /** Twin ID. */ + /** + * Twin ID. + */ twinId: string - /** Name of the document. */ + /** + * Name of the document. + */ documentName: string } export type ListDevicesRequest = { /** - * Region to target. If none is passed will use default region from the - * config. + * Region to target. If none is passed will use default region from the config. */ region?: ScwRegion - /** Page number to return, from the paginated results. */ + /** + * Page number to return, from the paginated results. + */ page?: number - /** Number of devices to return within a page. Maximum value is 100. */ + /** + * Number of devices to return within a page. Maximum value is 100. + */ pageSize?: number - /** Ordering of requested devices. */ + /** + * Ordering of requested devices. + */ orderBy?: ListDevicesRequestOrderBy - /** Name to filter for, only devices with this name will be returned. */ + /** + * Name to filter for, only devices with this name will be returned. + */ name?: string - /** Hub ID to filter for, only devices attached to this Hub will be returned. */ + /** + * Hub ID to filter for, only devices attached to this Hub will be returned. + */ hubId?: string - /** Defines wheter to filter the allow_insecure flag. */ + /** + * Defines whether to filter the allow_insecure flag. + */ allowInsecure?: boolean - /** Device status (enabled, disabled, etc.). */ + /** + * Device status (enabled, disabled, etc.). + */ status?: DeviceStatus } export interface ListDevicesResponse { - /** Total number of devices. */ + /** + * Total number of devices. + */ totalCount: number - /** Page of devices. */ + /** + * Page of devices. + */ devices: Device[] } export type ListHubsRequest = { /** - * Region to target. If none is passed will use default region from the - * config. + * Region to target. If none is passed will use default region from the config. */ region?: ScwRegion - /** Page number to return, from the paginated results. */ + /** + * Page number to return, from the paginated results. + */ page?: number - /** Number of Hubs to return within a page. Maximum value is 100. */ + /** + * Number of Hubs to return within a page. Maximum value is 100. + */ pageSize?: number - /** Sort order of Hubs in the response. */ + /** + * Sort order of Hubs in the response. + */ orderBy?: ListHubsRequestOrderBy - /** Only list Hubs of this Project ID. */ + /** + * Only list Hubs of this Project ID. + */ projectId?: string - /** Only list Hubs of this Organization ID. */ + /** + * Only list Hubs of this Organization ID. + */ organizationId?: string - /** Hub name. */ + /** + * Hub name. + */ name?: string } export interface ListHubsResponse { - /** Total number of Hubs. */ + /** + * Total number of Hubs. + */ totalCount: number - /** A page of hubs. */ + /** + * A page of hubs. + */ hubs: Hub[] } export type ListNetworksRequest = { /** - * Region to target. If none is passed will use default region from the - * config. + * Region to target. If none is passed will use default region from the config. */ region?: ScwRegion - /** Page number to return, from the paginated results. */ + /** + * Page number to return, from the paginated results. + */ page?: number - /** Number of networks to return. The maximum value is 100. */ + /** + * Number of networks to return. The maximum value is 100. + */ pageSize?: number - /** Ordering of requested routes. */ + /** + * Ordering of requested routes. + */ orderBy?: ListNetworksRequestOrderBy - /** Network name to filter for. */ + /** + * Network name to filter for. + */ name?: string - /** Hub ID to filter for. */ + /** + * Hub ID to filter for. + */ hubId?: string - /** Topic prefix to filter for. */ + /** + * Topic prefix to filter for. + */ topicPrefix?: string } export interface ListNetworksResponse { - /** Total number of Networks. */ + /** + * Total number of Networks. + */ totalCount: number - /** Page of networks. */ + /** + * Page of networks. + */ networks: Network[] } export type ListRoutesRequest = { /** - * Region to target. If none is passed will use default region from the - * config. + * Region to target. If none is passed will use default region from the config. */ region?: ScwRegion - /** Page number to return, from the paginated results. */ + /** + * Page number to return, from the paginated results. + */ page?: number - /** Number of routes to return within a page. Maximum value is 100. */ + /** + * Number of routes to return within a page. Maximum value is 100. + */ pageSize?: number - /** Ordering of requested routes. */ + /** + * Ordering of requested routes. + */ orderBy?: ListRoutesRequestOrderBy - /** Hub ID to filter for. */ + /** + * Hub ID to filter for. + */ hubId?: string - /** Route name to filter for. */ + /** + * Route name to filter for. + */ name?: string } export interface ListRoutesResponse { - /** Total number of routes. */ + /** + * Total number of routes. + */ totalCount: number - /** Page of routes. */ + /** + * Page of routes. + */ routes: RouteSummary[] } export type ListTwinDocumentsRequest = { /** - * Region to target. If none is passed will use default region from the - * config. + * Region to target. If none is passed will use default region from the config. */ region?: ScwRegion - /** Twin ID. */ + /** + * Twin ID. + */ twinId: string } export interface ListTwinDocumentsResponse { - /** List of the twin document. */ + /** + * List of the twin document. + */ documents: ListTwinDocumentsResponseDocumentSummary[] } export type PatchTwinDocumentRequest = { /** - * Region to target. If none is passed will use default region from the - * config. + * Region to target. If none is passed will use default region from the config. */ region?: ScwRegion - /** Twin ID. */ + /** + * Twin ID. + */ twinId: string - /** Name of the document. */ + /** + * Name of the document. + */ documentName: string /** - * If set, ensures that the current version of the document matches before - * persisting the update. + * If set, ensures that the current version of the document matches before persisting the update. */ version?: number /** - * A json data that will be applied on the document's current data. Patching - * rules: The patch goes recursively through the patch objects. If the patch - * object property is null, it is removed from the final object. If the patch - * object property is a value (number, strings, bool, arrays), it is replaced. - * If the patch object property is an object, the previous rules will be - * applied recursively on it. + * A json data that will be applied on the document's current data. +Patching rules: +* The patch goes recursively through the patch objects. +* If the patch object property is null, it is removed from the final object. +* If the patch object property is a value (number, strings, bool, arrays), it is replaced. +* If the patch object property is an object, the previous rules will be applied recursively on it. */ data?: Record } export type PutTwinDocumentRequest = { /** - * Region to target. If none is passed will use default region from the - * config. + * Region to target. If none is passed will use default region from the config. */ region?: ScwRegion - /** Twin ID. */ + /** + * Twin ID. + */ twinId: string - /** Name of the document. */ + /** + * Name of the document. + */ documentName: string /** - * If set, ensures that the current version of the document matches before - * persisting the update. + * If set, ensures that the current version of the document matches before persisting the update. */ version?: number - /** New data that will replace the contents of the document. */ + /** + * New data that will replace the contents of the document. + */ data?: Record } export type RenewDeviceCertificateRequest = { /** - * Region to target. If none is passed will use default region from the - * config. + * Region to target. If none is passed will use default region from the config. */ region?: ScwRegion - /** Device ID. */ + /** + * Device ID. + */ deviceId: string } export interface RenewDeviceCertificateResponse { - /** Information related to the created device. */ + /** + * Information related to the created device. + */ device?: Device - /** Device certificate. */ + /** + * Device certificate. + */ certificate?: Certificate } export interface Route { - /** Route ID. */ + /** + * Route ID. + */ id: string - /** Route name. */ + /** + * Route name. + */ name: string - /** Hub ID of the route. */ + /** + * Hub ID of the route. + */ hubId: string /** - * Topic the route subscribes to. It must be a valid MQTT topic and up to - * 65535 characters. + * Topic the route subscribes to. It must be a valid MQTT topic and up to 65535 characters. */ topic: string - /** Route type. */ + /** + * Route type. + */ type: RouteRouteType - /** Date at which the route was created. */ + /** + * Date at which the route was created. + */ createdAt?: Date /** * When using Amazon S3 Routes, Amazon S3-specific configuration fields. * - * One-of ('config'): at most one of 's3Config', 'dbConfig', 'restConfig' - * could be set. + * One-of ('config'): at most one of 's3Config', 'dbConfig', 'restConfig' could be set. */ s3Config?: RouteS3Config /** * When using Database Route, DB-specific configuration fields. * - * One-of ('config'): at most one of 's3Config', 'dbConfig', 'restConfig' - * could be set. + * One-of ('config'): at most one of 's3Config', 'dbConfig', 'restConfig' could be set. */ dbConfig?: RouteDatabaseConfig /** * When using Rest Route, Rest-specific configuration fields. * - * One-of ('config'): at most one of 's3Config', 'dbConfig', 'restConfig' - * could be set. + * One-of ('config'): at most one of 's3Config', 'dbConfig', 'restConfig' could be set. */ restConfig?: RouteRestConfig - /** Date at which the route was last updated. */ + /** + * Date at which the route was last updated. + */ updatedAt?: Date } export type SetDeviceCertificateRequest = { /** - * Region to target. If none is passed will use default region from the - * config. + * Region to target. If none is passed will use default region from the config. */ region?: ScwRegion - /** Device ID. */ + /** + * Device ID. + */ deviceId: string - /** PEM-encoded custom certificate. */ + /** + * PEM-encoded custom certificate. + */ certificatePem: string } @@ -933,120 +1155,143 @@ export interface SetDeviceCertificateResponse { export type SetHubCARequest = { /** - * Region to target. If none is passed will use default region from the - * config. + * Region to target. If none is passed will use default region from the config. */ region?: ScwRegion - /** Hub ID. */ + /** + * Hub ID. + */ hubId: string - /** CA's PEM-encoded certificate. */ + /** + * CA's PEM-encoded certificate. + */ caCertPem: string /** - * Challenge is a PEM-encoded certificate that acts as proof of possession of - * the CA. It must be signed by the CA, and have a Common Name equal to the - * Hub ID. + * Challenge is a PEM-encoded certificate that acts as proof of possession of the CA. It must be signed by the CA, and have a Common Name equal to the Hub ID. */ challengeCertPem: string } export interface TwinDocument { - /** Parent twin ID of the document. */ + /** + * Parent twin ID of the document. + */ twinId: string - /** Name of the document. */ + /** + * Name of the document. + */ documentName: string - /** New version of the document. */ + /** + * New version of the document. + */ version: number - /** New data related to the document. */ + /** + * New data related to the document. + */ data?: Record } export type UpdateDeviceRequest = { /** - * Region to target. If none is passed will use default region from the - * config. + * Region to target. If none is passed will use default region from the config. */ region?: ScwRegion - /** Device ID. */ + /** + * Device ID. + */ deviceId: string - /** Description for the device. */ + /** + * Description for the device. + */ description?: string /** - * Defines whether to allow plain and server-authenticated SSL connections in - * addition to mutually-authenticated ones. + * Defines whether to allow plain and server-authenticated SSL connections in addition to mutually-authenticated ones. */ allowInsecure?: boolean /** - * Defines whether to allow multiple physical devices to connect with this - * device's credentials. + * Defines whether to allow multiple physical devices to connect with this device's credentials. */ allowMultipleConnections?: boolean - /** Filter-sets to restrict the topics the device can publish/subscribe to. */ + /** + * Filter-sets to restrict the topics the device can publish/subscribe to. + */ messageFilters?: DeviceMessageFilters - /** Change Hub for this device, additional fees may apply, see IoT Hub pricing. */ + /** + * Change Hub for this device, additional fees may apply, see IoT Hub pricing. + */ hubId?: string } export type UpdateHubRequest = { /** - * Region to target. If none is passed will use default region from the - * config. + * Region to target. If none is passed will use default region from the config. */ region?: ScwRegion - /** ID of the Hub you want to update. */ + /** + * ID of the Hub you want to update. + */ hubId: string - /** Hub name (up to 255 characters). */ + /** + * Hub name (up to 255 characters). + */ name?: string - /** Hub product plan. */ + /** + * Hub product plan. + */ productPlan?: HubProductPlan - /** Disable Hub events. */ + /** + * Disable Hub events. + */ disableEvents?: boolean - /** Topic prefix of Hub events. */ + /** + * Topic prefix of Hub events. + */ eventsTopicPrefix?: string - /** Enable device auto provisioning. */ + /** + * Enable device auto provisioning. + */ enableDeviceAutoProvisioning?: boolean /** * BETA - not implemented yet. * - * One-of ('twinsDbConfig'): at most one of 'twinsGraphiteConfig' could be - * set. + * One-of ('twinsDbConfig'): at most one of 'twinsGraphiteConfig' could be set. */ twinsGraphiteConfig?: HubTwinsGraphiteConfig } export type UpdateRouteRequest = { /** - * Region to target. If none is passed will use default region from the - * config. + * Region to target. If none is passed will use default region from the config. */ region?: ScwRegion - /** Route id. */ + /** + * Route id. + */ routeId: string - /** Route name. */ + /** + * Route name. + */ name?: string /** - * Topic the route subscribes to. It must be a valid MQTT topic and up to - * 65535 characters. + * Topic the route subscribes to. It must be a valid MQTT topic and up to 65535 characters. */ topic?: string /** * When updating Amazon S3 Route, Amazon S3-specific configuration fields. * - * One-of ('config'): at most one of 's3Config', 'dbConfig', 'restConfig' - * could be set. + * One-of ('config'): at most one of 's3Config', 'dbConfig', 'restConfig' could be set. */ s3Config?: UpdateRouteRequestS3Config /** * When updating Database Route, DB-specific configuration fields. * - * One-of ('config'): at most one of 's3Config', 'dbConfig', 'restConfig' - * could be set. + * One-of ('config'): at most one of 's3Config', 'dbConfig', 'restConfig' could be set. */ dbConfig?: UpdateRouteRequestDatabaseConfig /** * When updating Rest Route, Rest-specific configuration fields. * - * One-of ('config'): at most one of 's3Config', 'dbConfig', 'restConfig' - * could be set. + * One-of ('config'): at most one of 's3Config', 'dbConfig', 'restConfig' could be set. */ restConfig?: UpdateRouteRequestRestConfig } diff --git a/packages/clients/src/api/mongodb/v1alpha1/api.gen.ts b/packages/clients/src/api/mongodb/v1alpha1/api.gen.ts index 013992437..9ab0d099e 100644 --- a/packages/clients/src/api/mongodb/v1alpha1/api.gen.ts +++ b/packages/clients/src/api/mongodb/v1alpha1/api.gen.ts @@ -73,8 +73,8 @@ const jsonContentHeaders = { /** * Managed MongoDB®. - * - * This API allows you to manage your Managed Databases for MongoDB®. + +This API allows you to manage your Managed Databases for MongoDB®. */ export class API extends ParentAPI { /** Lists the available regions of the API. */ @@ -160,13 +160,7 @@ export class API extends ParentAPI { ) /** - * List MongoDB® Database Instances. List all MongoDB® Database Instances in - * the specified region. By default, the MongoDB® Database Instances returned - * in the list are ordered by creation date in ascending order, though this - * can be modified via the order_by field. You can define additional - * parameters for your query, such as `tags` and `name`. For the `name` - * parameter, the value you include will be checked against the whole name - * string to see if it includes the string you put in the parameter. + * List MongoDB® Database Instances. List all MongoDB® Database Instances in the specified region. By default, the MongoDB® Database Instances returned in the list are ordered by creation date in ascending order, though this can be modified via the order_by field. You can define additional parameters for your query, such as `tags` and `name`. For the `name` parameter, the value you include will be checked against the whole name string to see if it includes the string you put in the parameter. * * @param request - The request {@link ListInstancesRequest} * @returns A Promise of ListInstancesResponse @@ -175,10 +169,7 @@ export class API extends ParentAPI { enrichForPagination('instances', this.pageOfListInstances, request) /** - * Get a MongoDB® Database Instance. Retrieve information about a given - * MongoDB® Database Instance, specified by the `region` and `instance_id` - * parameters. Its full details, including name, status, IP address and port, - * are returned in the response object. + * Get a MongoDB® Database Instance. Retrieve information about a given MongoDB® Database Instance, specified by the `region` and `instance_id` parameters. Its full details, including name, status, IP address and port, are returned in the response object. * * @param request - The request {@link GetInstanceRequest} * @returns A Promise of Instance @@ -215,8 +206,7 @@ export class API extends ParentAPI { ) /** - * Create a MongoDB® Database Instance. Create a new MongoDB® Database - * Instance. + * Create a MongoDB® Database Instance. Create a new MongoDB® Database Instance. * * @param request - The request {@link CreateInstanceRequest} * @returns A Promise of Instance @@ -235,8 +225,7 @@ export class API extends ParentAPI { ) /** - * Update a MongoDB® Database Instance. Update the parameters of a MongoDB® - * Database Instance. + * Update a MongoDB® Database Instance. Update the parameters of a MongoDB® Database Instance. * * @param request - The request {@link UpdateInstanceRequest} * @returns A Promise of Instance @@ -255,10 +244,7 @@ export class API extends ParentAPI { ) /** - * Delete a MongoDB® Database Instance. Delete a given MongoDB® Database - * Instance, specified by the `region` and `instance_id` parameters. Deleting - * a MongoDB® Database Instance is permanent, and cannot be undone. Note that - * upon deletion all your data will be lost. + * Delete a MongoDB® Database Instance. Delete a given MongoDB® Database Instance, specified by the `region` and `instance_id` parameters. Deleting a MongoDB® Database Instance is permanent, and cannot be undone. Note that upon deletion all your data will be lost. * * @param request - The request {@link DeleteInstanceRequest} * @returns A Promise of Instance @@ -273,8 +259,7 @@ export class API extends ParentAPI { ) /** - * Upgrade a Database Instance. Upgrade your current Database Instance - * specifications like volume size. + * Upgrade a Database Instance. Upgrade your current Database Instance specifications like volume size. * * @param request - The request {@link UpgradeInstanceRequest} * @returns A Promise of Instance @@ -293,8 +278,7 @@ export class API extends ParentAPI { ) /** - * Get the certificate of a Database Instance. Retrieve the certificate of a - * given Database Instance, specified by the `instance_id` parameter. + * Get the certificate of a Database Instance. Retrieve the certificate of a given Database Instance, specified by the `instance_id` parameter. * * @param request - The request {@link GetInstanceCertificateRequest} * @returns A Promise of Blob @@ -308,9 +292,7 @@ export class API extends ParentAPI { }) /** - * Create a Database Instance snapshot. Create a new snapshot of a Database - * Instance. You must define the `name` and `instance_id` parameters in the - * request. + * Create a Database Instance snapshot. Create a new snapshot of a Database Instance. You must define the `name` and `instance_id` parameters in the request. * * @param request - The request {@link CreateSnapshotRequest} * @returns A Promise of Snapshot @@ -329,9 +311,7 @@ export class API extends ParentAPI { ) /** - * Get a Database Instance snapshot. Retrieve information about a given - * snapshot of a Database Instance. You must specify, in the endpoint, the - * `snapshot_id` parameter of the snapshot you want to retrieve. + * Get a Database Instance snapshot. Retrieve information about a given snapshot of a Database Instance. You must specify, in the endpoint, the `snapshot_id` parameter of the snapshot you want to retrieve. * * @param request - The request {@link GetSnapshotRequest} * @returns A Promise of Snapshot @@ -368,9 +348,7 @@ export class API extends ParentAPI { ) /** - * Update a Database Instance snapshot. Update the parameters of a snapshot of - * a Database Instance. You can update the `name` and `expires_at` - * parameters. + * Update a Database Instance snapshot. Update the parameters of a snapshot of a Database Instance. You can update the `name` and `expires_at` parameters. * * @param request - The request {@link UpdateSnapshotRequest} * @returns A Promise of Snapshot @@ -389,11 +367,7 @@ export class API extends ParentAPI { ) /** - * Restore a Database Instance snapshot. Restore a given snapshot of a - * Database Instance. You must specify, in the endpoint, the `snapshot_id` - * parameter of the snapshot you want to restore, the `instance_name` of the - * new Database Instance, `node_type` of the new Database Instance and - * `node_number` of the new Database Instance. + * Restore a Database Instance snapshot. Restore a given snapshot of a Database Instance. You must specify, in the endpoint, the `snapshot_id` parameter of the snapshot you want to restore, the `instance_name` of the new Database Instance, `node_type` of the new Database Instance and `node_number` of the new Database Instance. * * @param request - The request {@link RestoreSnapshotRequest} * @returns A Promise of Instance @@ -435,11 +409,7 @@ export class API extends ParentAPI { ) /** - * List snapshots. List snapshots. You can include the `instance_id` or - * `project_id` in your query to get the list of snapshots for specific - * Database Instances and/or Projects. By default, the details returned in the - * list are ordered by creation date in ascending order, though this can be - * modified via the `order_by` field. + * List snapshots. List snapshots. You can include the `instance_id` or `project_id` in your query to get the list of snapshots for specific Database Instances and/or Projects. By default, the details returned in the list are ordered by creation date in ascending order, though this can be modified via the `order_by` field. * * @param request - The request {@link ListSnapshotsRequest} * @returns A Promise of ListSnapshotsResponse @@ -448,9 +418,7 @@ export class API extends ParentAPI { enrichForPagination('snapshots', this.pageOfListSnapshots, request) /** - * Delete a Database Instance snapshot. Delete a given snapshot of a Database - * Instance. You must specify, in the endpoint, the `snapshot_id` parameter of - * the snapshot you want to delete. + * Delete a Database Instance snapshot. Delete a given snapshot of a Database Instance. You must specify, in the endpoint, the `snapshot_id` parameter of the snapshot you want to delete. * * @param request - The request {@link DeleteSnapshotRequest} * @returns A Promise of Snapshot @@ -483,8 +451,7 @@ export class API extends ParentAPI { ) /** - * List users of a Database Instance. List all users of a given Database - * Instance. + * List users of a Database Instance. List all users of a given Database Instance. * * @param request - The request {@link ListUsersRequest} * @returns A Promise of ListUsersResponse @@ -493,9 +460,7 @@ export class API extends ParentAPI { enrichForPagination('users', this.pageOfListUsers, request) /** - * Create an user on a Database Instance. Create an user on a Database - * Instance. You must define the `name`, `password` of the user and - * `instance_id` parameters in the request. + * Create an user on a Database Instance. Create an user on a Database Instance. You must define the `name`, `password` of the user and `instance_id` parameters in the request. * * @param request - The request {@link CreateUserRequest} * @returns A Promise of User @@ -514,9 +479,7 @@ export class API extends ParentAPI { ) /** - * Update a user on a Database Instance. Update the parameters of a user on a - * Database Instance. You can update the `password` parameter, but you cannot - * change the name of the user. + * Update a user on a Database Instance. Update the parameters of a user on a Database Instance. You can update the `password` parameter, but you cannot change the name of the user. * * @param request - The request {@link UpdateUserRequest} * @returns A Promise of User @@ -535,8 +498,7 @@ export class API extends ParentAPI { ) /** - * Delete a user on a Database Instance. Delete an existing user on a Database - * Instance. + * Delete a user on a Database Instance. Delete an existing user on a Database Instance. * * @param request - The request {@link DeleteUserRequest} */ @@ -562,10 +524,7 @@ export class API extends ParentAPI { ) /** - * Delete a Database Instance endpoint. Delete the endpoint of a Database - * Instance. You must specify the `endpoint_id` parameter of the endpoint you - * want to delete. Note that you might need to update any environment - * configurations that point to the deleted endpoint. + * Delete a Database Instance endpoint. Delete the endpoint of a Database Instance. You must specify the `endpoint_id` parameter of the endpoint you want to delete. Note that you might need to update any environment configurations that point to the deleted endpoint. * * @param request - The request {@link DeleteEndpointRequest} */ @@ -576,9 +535,7 @@ export class API extends ParentAPI { }) /** - * Create a new Instance endpoint. Create a new endpoint for a MongoDB® - * Database Instance. You can add `public_network` or `private_network` - * specifications to the body of the request. + * Create a new Instance endpoint. Create a new endpoint for a MongoDB® Database Instance. You can add `public_network` or `private_network` specifications to the body of the request. * * @param request - The request {@link CreateEndpointRequest} * @returns A Promise of Endpoint diff --git a/packages/clients/src/api/mongodb/v1alpha1/types.gen.ts b/packages/clients/src/api/mongodb/v1alpha1/types.gen.ts index f9f698cc9..cbe2ded3d 100644 --- a/packages/clients/src/api/mongodb/v1alpha1/types.gen.ts +++ b/packages/clients/src/api/mongodb/v1alpha1/types.gen.ts @@ -57,29 +57,43 @@ export type UserRoleRole = export type VolumeType = 'unknown_type' | 'sbs_5k' | 'sbs_15k' -/** Private Network details. */ +/** + * Private Network details. + */ export interface EndpointPrivateNetworkDetails { - /** UUID of the Private Network. */ + /** + * UUID of the Private Network. + */ privateNetworkId: string } export interface EndpointPublicDetails {} export interface EndpointSpecPrivateNetworkDetails { - /** UUID of the Private Network. */ + /** + * UUID of the Private Network. + */ privateNetworkId: string } export interface EndpointSpecPublicDetails {} export interface Endpoint { - /** UUID of the endpoint. */ + /** + * UUID of the endpoint. + */ id: string - /** List of IPv4 addresses of the endpoint. */ + /** + * List of IPv4 addresses of the endpoint. + */ ips: string[] - /** List of DNS records of the endpoint. */ + /** + * List of DNS records of the endpoint. + */ dnsRecords: string[] - /** TCP port of the endpoint. */ + /** + * TCP port of the endpoint. + */ port: number /** * Private Network endpoint details. @@ -96,29 +110,47 @@ export interface Endpoint { } export interface InstanceSetting { - /** Name of the settings. */ + /** + * Name of the settings. + */ name: string - /** Value of the settings. */ + /** + * Value of the settings. + */ value: string } export interface Volume { - /** Type of volume where data is stored. */ + /** + * Type of volume where data is stored. + */ type: VolumeType - /** Volume size. */ + /** + * Volume size. + */ size: number } export interface NodeTypeVolumeType { - /** Volume Type. */ + /** + * Volume Type. + */ type: VolumeType - /** The description of the volume. */ + /** + * The description of the volume. + */ description: string - /** Mimimum size required for the volume. */ + /** + * Minimum size required for the volume. + */ minSize: number - /** Maximum size required for the volume. */ + /** + * Maximum size required for the volume. + */ maxSize: number - /** Minimum increment level for a Block Storage volume size. */ + /** + * Minimum increment level for a Block Storage volume size. + */ chunkSize: number } @@ -128,396 +160,587 @@ export interface SnapshotVolumeType { export interface UserRole { role: UserRoleRole - /** One-of ('scope'): at most one of 'database', 'anyDatabase' could be set. */ + /** + * + * One-of ('scope'): at most one of 'database', 'anyDatabase' could be set. + */ database?: string - /** One-of ('scope'): at most one of 'database', 'anyDatabase' could be set. */ + /** + * + * One-of ('scope'): at most one of 'database', 'anyDatabase' could be set. + */ anyDatabase?: boolean } export interface Setting { - /** Setting name from the database engine. */ + /** + * Setting name from the database engine. + */ name: string - /** Value set when not specified. */ + /** + * Value set when not specified. + */ defaultValue: string - /** Setting can be applied without restarting. */ + /** + * Setting can be applied without restarting. + */ hotConfigurable: boolean - /** Setting description. */ + /** + * Setting description. + */ description: string - /** Setting type. */ + /** + * Setting type. + */ propertyType: SettingPropertyType - /** Setting base unit. */ + /** + * Setting base unit. + */ unit?: string - /** Validation regex for string type settings. */ + /** + * Validation regex for string type settings. + */ stringConstraint?: string - /** Minimum value for int types. */ + /** + * Minimum value for int types. + */ intMin?: number - /** Maximum value for int types. */ + /** + * Maximum value for int types. + */ intMax?: number - /** Minimum value for float types. */ + /** + * Minimum value for float types. + */ floatMin?: number - /** Maximum value for float types. */ + /** + * Maximum value for float types. + */ floatMax?: number } export interface EndpointSpec { - /** One-of ('details'): at most one of 'public', 'privateNetwork' could be set. */ + /** + * + * One-of ('details'): at most one of 'public', 'privateNetwork' could be set. + */ public?: EndpointSpecPublicDetails - /** One-of ('details'): at most one of 'public', 'privateNetwork' could be set. */ + /** + * + * One-of ('details'): at most one of 'public', 'privateNetwork' could be set. + */ privateNetwork?: EndpointSpecPrivateNetworkDetails } export interface CreateInstanceRequestVolumeDetails { - /** Volume size. */ + /** + * Volume size. + */ volumeSize: number - /** Type of volume where data is stored. */ + /** + * Type of volume where data is stored. + */ volumeType: VolumeType } export interface Instance { - /** UUID of the Database Instance. */ + /** + * UUID of the Database Instance. + */ id: string - /** Name of the Database Instance. */ + /** + * Name of the Database Instance. + */ name: string - /** Project ID the Database Instance belongs to. */ + /** + * Project ID the Database Instance belongs to. + */ projectId: string - /** Status of the Database Instance. */ + /** + * Status of the Database Instance. + */ status: InstanceStatus - /** MongoDB® engine version of the Database Instance. */ + /** + * MongoDB® engine version of the Database Instance. + */ version: string - /** List of tags applied to the Database Instance. */ + /** + * List of tags applied to the Database Instance. + */ tags: string[] - /** Advanced settings of the Database Instance. */ + /** + * Advanced settings of the Database Instance. + */ settings: InstanceSetting[] - /** Number of node in the Database Instance. */ + /** + * Number of node in the Database Instance. + */ nodeNumber: number - /** Node type of the Database Instance. */ + /** + * Node type of the Database Instance. + */ nodeType: string - /** Volumes of the Database Instance. */ + /** + * Volumes of the Database Instance. + */ volume?: Volume - /** List of Database Instance endpoints. */ + /** + * List of Database Instance endpoints. + */ endpoints: Endpoint[] - /** Creation date (must follow the ISO 8601 format). */ + /** + * Creation date (must follow the ISO 8601 format). + */ createdAt?: Date - /** Region the Database Instance is in. */ + /** + * Region the Database Instance is in. + */ region: ScwRegion } export interface NodeType { - /** Node type name identifier. */ + /** + * Node type name identifier. + */ name: string - /** Current stock status for the node type. */ + /** + * Current stock status for the node type. + */ stockStatus: NodeTypeStock - /** Current specs of the offer. */ + /** + * Current specs of the offer. + */ description: string - /** Number of virtual CPUs. */ + /** + * Number of virtual CPUs. + */ vcpus: number - /** Quantity of RAM. */ + /** + * Quantity of RAM. + */ memory: number - /** Available storage options for the node type. */ + /** + * Available storage options for the node type. + */ availableVolumeTypes: NodeTypeVolumeType[] - /** The node type is currently disabled. */ + /** + * The node type is currently disabled. + */ disabled: boolean - /** The node type is currently in beta. */ + /** + * The node type is currently in beta. + */ beta: boolean - /** Instance range associated with the node type offer. */ + /** + * Instance range associated with the node type offer. + */ instanceRange: string } export interface Snapshot { - /** UUID of the snapshot. */ + /** + * UUID of the snapshot. + */ id: string - /** UUID of the Database Instance. */ + /** + * UUID of the Database Instance. + */ instanceId: string - /** Name of the snapshot. */ + /** + * Name of the snapshot. + */ name: string - /** Status of the snapshot. */ + /** + * Status of the snapshot. + */ status: SnapshotStatus - /** Size of the snapshot. */ + /** + * Size of the snapshot. + */ size: number - /** Expiration date (must follow the ISO 8601 format). */ + /** + * Expiration date (must follow the ISO 8601 format). + */ expiresAt?: Date - /** Creation date (must follow the ISO 8601 format). */ + /** + * Creation date (must follow the ISO 8601 format). + */ createdAt?: Date - /** Updated date (must follow the ISO 8601 format). */ + /** + * Updated date (must follow the ISO 8601 format). + */ updatedAt?: Date - /** Name of the Database Instance of the snapshot. */ + /** + * Name of the Database Instance of the snapshot. + */ instanceName: string - /** Source node type. */ + /** + * Source node type. + */ nodeType: string - /** Type of volume where data is stored - sbs_5k or sbs_15k. */ + /** + * Type of volume where data is stored - sbs_5k or sbs_15k. + */ volumeType?: SnapshotVolumeType - /** Region of the snapshot. */ + /** + * Region of the snapshot. + */ region: ScwRegion } export interface User { /** - * Name of the user (Length must be between 1 and 63 characters. First - * character must be an alphabet character (a-zA-Z). Only a-zA-Z0-9_$- - * characters are accepted). + * Name of the user (Length must be between 1 and 63 characters. First character must be an alphabet character (a-zA-Z). Only a-zA-Z0-9_$- characters are accepted). */ name: string /** - * List of roles assigned to the user, along with the corresponding database - * where each role is granted. + * List of roles assigned to the user, along with the corresponding database where each role is granted. */ roles: UserRole[] } export interface Version { - /** MongoDB® engine version. */ + /** + * MongoDB® engine version. + */ version: string - /** Date of End of Life. */ + /** + * Date of End of Life. + */ endOfLifeAt?: Date - /** Instance settings available to be updated. */ + /** + * Instance settings available to be updated. + */ availableSettings: Setting[] } export interface RestoreSnapshotRequestVolumeDetails { - /** Type of volume where data is stored. */ + /** + * Type of volume where data is stored. + */ volumeType: VolumeType } export type CreateEndpointRequest = { /** - * Region to target. If none is passed will use default region from the - * config. + * Region to target. If none is passed will use default region from the config. */ region?: ScwRegion - /** UUID of the Database Instance. */ + /** + * UUID of the Database Instance. + */ instanceId: string - /** EndpointSpec used to expose your Database Instance. */ + /** + * EndpointSpec used to expose your Database Instance. + */ endpoint: EndpointSpec } export type CreateInstanceRequest = { /** - * Region to target. If none is passed will use default region from the - * config. + * Region to target. If none is passed will use default region from the config. */ region?: ScwRegion - /** The Project ID on which the Database Instance will be created. */ + /** + * The Project ID on which the Database Instance will be created. + */ projectId?: string - /** Name of the Database Instance. */ + /** + * Name of the Database Instance. + */ name?: string - /** Version of the MongoDB® engine. */ + /** + * Version of the MongoDB® engine. + */ version: string - /** Tags to apply to the Database Instance. */ + /** + * Tags to apply to the Database Instance. + */ tags?: string[] - /** Number of node to use for the Database Instance. */ + /** + * Number of node to use for the Database Instance. + */ nodeNumber: number - /** Type of node to use for the Database Instance. */ + /** + * Type of node to use for the Database Instance. + */ nodeType: string - /** Username created when the Database Instance is created. */ + /** + * Username created when the Database Instance is created. + */ userName: string - /** Password of the initial user. */ + /** + * Password of the initial user. + */ password: string - /** Instance volume information. */ + /** + * Instance volume information. + */ volume?: CreateInstanceRequestVolumeDetails - /** One or multiple EndpointSpec used to expose your Database Instance. */ + /** + * One or multiple EndpointSpec used to expose your Database Instance. + */ endpoints?: EndpointSpec[] } export type CreateSnapshotRequest = { /** - * Region to target. If none is passed will use default region from the - * config. + * Region to target. If none is passed will use default region from the config. */ region?: ScwRegion - /** UUID of the Database Instance to snapshot. */ + /** + * UUID of the Database Instance to snapshot. + */ instanceId: string - /** Name of the snapshot. */ + /** + * Name of the snapshot. + */ name: string - /** Expiration date of the snapshot (must follow the ISO 8601 format). */ + /** + * Expiration date of the snapshot (must follow the ISO 8601 format). + */ expiresAt?: Date } export type CreateUserRequest = { /** - * Region to target. If none is passed will use default region from the - * config. + * Region to target. If none is passed will use default region from the config. */ region?: ScwRegion - /** UUID of the Database Instance the user belongs to. */ + /** + * UUID of the Database Instance the user belongs to. + */ instanceId: string - /** Name of the database user. */ + /** + * Name of the database user. + */ name: string - /** Password of the database user. */ + /** + * Password of the database user. + */ password: string } export type DeleteEndpointRequest = { /** - * Region to target. If none is passed will use default region from the - * config. + * Region to target. If none is passed will use default region from the config. */ region?: ScwRegion - /** UUID of the Endpoint to delete. */ + /** + * UUID of the Endpoint to delete. + */ endpointId: string } export type DeleteInstanceRequest = { /** - * Region to target. If none is passed will use default region from the - * config. + * Region to target. If none is passed will use default region from the config. */ region?: ScwRegion - /** UUID of the Database Instance to delete. */ + /** + * UUID of the Database Instance to delete. + */ instanceId: string } export type DeleteSnapshotRequest = { /** - * Region to target. If none is passed will use default region from the - * config. + * Region to target. If none is passed will use default region from the config. */ region?: ScwRegion - /** UUID of the snapshot. */ + /** + * UUID of the snapshot. + */ snapshotId: string } export type DeleteUserRequest = { /** - * Region to target. If none is passed will use default region from the - * config. + * Region to target. If none is passed will use default region from the config. */ region?: ScwRegion - /** UUID of the Database Instance the user belongs to. */ + /** + * UUID of the Database Instance the user belongs to. + */ instanceId: string - /** Name of the database user. */ + /** + * Name of the database user. + */ name: string } export type GetInstanceCertificateRequest = { /** - * Region to target. If none is passed will use default region from the - * config. + * Region to target. If none is passed will use default region from the config. */ region?: ScwRegion - /** UUID of the Database Instance. */ + /** + * UUID of the Database Instance. + */ instanceId: string } export type GetInstanceRequest = { /** - * Region to target. If none is passed will use default region from the - * config. + * Region to target. If none is passed will use default region from the config. */ region?: ScwRegion - /** UUID of the Database Instance. */ + /** + * UUID of the Database Instance. + */ instanceId: string } export type GetSnapshotRequest = { /** - * Region to target. If none is passed will use default region from the - * config. + * Region to target. If none is passed will use default region from the config. */ region?: ScwRegion - /** UUID of the snapshot. */ + /** + * UUID of the snapshot. + */ snapshotId: string } export type ListInstancesRequest = { /** - * Region to target. If none is passed will use default region from the - * config. + * Region to target. If none is passed will use default region from the config. */ region?: ScwRegion - /** List Database Instances that have a given tag. */ + /** + * List Database Instances that have a given tag. + */ tags?: string[] - /** Lists Database Instances that match a name pattern. */ + /** + * Lists Database Instances that match a name pattern. + */ name?: string - /** Criteria to use when ordering Database Instance listings. */ + /** + * Criteria to use when ordering Database Instance listings. + */ orderBy?: ListInstancesRequestOrderBy - /** Organization ID of the Database Instance. */ + /** + * Organization ID of the Database Instance. + */ organizationId?: string - /** Project ID. */ + /** + * Project ID. + */ projectId?: string page?: number pageSize?: number } export interface ListInstancesResponse { - /** List of all Database Instances available in an Organization or Project. */ + /** + * List of all Database Instances available in an Organization or Project. + */ instances: Instance[] - /** Total count of Database Instances available in an Organization or Project. */ + /** + * Total count of Database Instances available in an Organization or Project. + */ totalCount: number } export type ListNodeTypesRequest = { /** - * Region to target. If none is passed will use default region from the - * config. + * Region to target. If none is passed will use default region from the config. */ region?: ScwRegion - /** Defines whether or not to include disabled types. */ + /** + * Defines whether or not to include disabled types. + */ includeDisabledTypes?: boolean page?: number pageSize?: number } export interface ListNodeTypesResponse { - /** Types of the node. */ + /** + * Types of the node. + */ nodeTypes: NodeType[] - /** Total count of node-types available. */ + /** + * Total count of node-types available. + */ totalCount: number } export type ListSnapshotsRequest = { /** - * Region to target. If none is passed will use default region from the - * config. + * Region to target. If none is passed will use default region from the config. */ region?: ScwRegion - /** Instance ID the snapshots belongs to. */ + /** + * Instance ID the snapshots belongs to. + */ instanceId?: string - /** Lists database snapshots that match a name pattern. */ + /** + * Lists database snapshots that match a name pattern. + */ name?: string - /** Criteria to use when ordering snapshot listings. */ + /** + * Criteria to use when ordering snapshot listings. + */ orderBy?: ListSnapshotsRequestOrderBy - /** Organization ID the snapshots belongs to. */ + /** + * Organization ID the snapshots belongs to. + */ organizationId?: string - /** Project ID to list the snapshots of. */ + /** + * Project ID to list the snapshots of. + */ projectId?: string page?: number pageSize?: number } export interface ListSnapshotsResponse { - /** List of all database snapshots available in an Organization or Project. */ + /** + * List of all database snapshots available in an Organization or Project. + */ snapshots: Snapshot[] - /** Total count of database snapshots available in a Organization or Project. */ + /** + * Total count of database snapshots available in a Organization or Project. + */ totalCount: number } export type ListUsersRequest = { /** - * Region to target. If none is passed will use default region from the - * config. + * Region to target. If none is passed will use default region from the config. */ region?: ScwRegion - /** UUID of the Database Instance. */ + /** + * UUID of the Database Instance. + */ instanceId: string - /** Name of the user. */ + /** + * Name of the user. + */ name?: string - /** Criteria to use when requesting user listing. */ + /** + * Criteria to use when requesting user listing. + */ orderBy?: ListUsersRequestOrderBy page?: number pageSize?: number } export interface ListUsersResponse { - /** List of users in a Database Instance. */ + /** + * List of users in a Database Instance. + */ users: User[] - /** Total count of users present on a Database Instance. */ + /** + * Total count of users present on a Database Instance. + */ totalCount: number } export type ListVersionsRequest = { /** - * Region to target. If none is passed will use default region from the - * config. + * Region to target. If none is passed will use default region from the config. */ region?: ScwRegion version?: string @@ -526,96 +749,127 @@ export type ListVersionsRequest = { } export interface ListVersionsResponse { - /** Available MongoDB® engine version. */ + /** + * Available MongoDB® engine version. + */ versions: Version[] - /** Total count of MongoDB® engine version available. */ + /** + * Total count of MongoDB® engine version available. + */ totalCount: number } export type RestoreSnapshotRequest = { /** - * Region to target. If none is passed will use default region from the - * config. + * Region to target. If none is passed will use default region from the config. */ region?: ScwRegion - /** UUID of the snapshot. */ + /** + * UUID of the snapshot. + */ snapshotId: string - /** Name of the new Database Instance. */ + /** + * Name of the new Database Instance. + */ instanceName: string - /** Node type to use for the new Database Instance. */ + /** + * Node type to use for the new Database Instance. + */ nodeType: string - /** Number of nodes to use for the new Database Instance. */ + /** + * Number of nodes to use for the new Database Instance. + */ nodeNumber: number - /** Instance volume information. */ + /** + * Instance volume information. + */ volume: RestoreSnapshotRequestVolumeDetails } export type SetUserRoleRequest = { /** - * Region to target. If none is passed will use default region from the - * config. + * Region to target. If none is passed will use default region from the config. */ region?: ScwRegion - /** UUID of the Database Instance the user belongs to. */ + /** + * UUID of the Database Instance the user belongs to. + */ instanceId: string - /** Name of the database user. */ + /** + * Name of the database user. + */ userName: string /** - * List of roles assigned to the user, along with the corresponding database - * where each role is granted. + * List of roles assigned to the user, along with the corresponding database where each role is granted. */ roles?: UserRole[] } export type UpdateInstanceRequest = { /** - * Region to target. If none is passed will use default region from the - * config. + * Region to target. If none is passed will use default region from the config. */ region?: ScwRegion - /** UUID of the Database Instance to update. */ + /** + * UUID of the Database Instance to update. + */ instanceId: string - /** Name of the Database Instance. */ + /** + * Name of the Database Instance. + */ name?: string - /** Tags of a Database Instance. */ + /** + * Tags of a Database Instance. + */ tags?: string[] } export type UpdateSnapshotRequest = { /** - * Region to target. If none is passed will use default region from the - * config. + * Region to target. If none is passed will use default region from the config. */ region?: ScwRegion - /** UUID of the Snapshot. */ + /** + * UUID of the Snapshot. + */ snapshotId: string - /** Name of the snapshot. */ + /** + * Name of the snapshot. + */ name?: string - /** Expiration date of the snapshot (must follow the ISO 8601 format). */ + /** + * Expiration date of the snapshot (must follow the ISO 8601 format). + */ expiresAt?: Date } export type UpdateUserRequest = { /** - * Region to target. If none is passed will use default region from the - * config. + * Region to target. If none is passed will use default region from the config. */ region?: ScwRegion - /** UUID of the Database Instance the user belongs to. */ + /** + * UUID of the Database Instance the user belongs to. + */ instanceId: string - /** Name of the database user. */ + /** + * Name of the database user. + */ name: string - /** Password of the database user. */ + /** + * Password of the database user. + */ password?: string } export type UpgradeInstanceRequest = { /** - * Region to target. If none is passed will use default region from the - * config. + * Region to target. If none is passed will use default region from the config. */ region?: ScwRegion - /** UUID of the Database Instance you want to upgrade. */ + /** + * UUID of the Database Instance you want to upgrade. + */ instanceId: string /** * Increase your Block Storage volume size. diff --git a/packages/clients/src/api/product_catalog/index.gen.ts b/packages/clients/src/api/product_catalog/index.gen.ts new file mode 100644 index 000000000..36dc2b2b7 --- /dev/null +++ b/packages/clients/src/api/product_catalog/index.gen.ts @@ -0,0 +1,6 @@ +/** + * This file is automatically generated from /scripts/generate.js + * PLEASE DO NOT EDIT HERE + */ + +export * as v2alpha1 from './v2alpha1/index.gen' diff --git a/packages/clients/src/api/product_catalog/v2alpha1/index.gen.ts b/packages/clients/src/api/product_catalog/v2alpha1/index.gen.ts new file mode 100644 index 000000000..b94d747c0 --- /dev/null +++ b/packages/clients/src/api/product_catalog/v2alpha1/index.gen.ts @@ -0,0 +1,27 @@ +// This file was automatically generated. DO NOT EDIT. +// If you have any remark or suggestion do not hesitate to open an issue. +export { PublicCatalogAPI } from './api.gen' +export type { + ListPublicCatalogProductsResponse, + PublicCatalogApiListPublicCatalogProductsRequest, + PublicCatalogProduct, + PublicCatalogProductLocality, + PublicCatalogProductPrice, + PublicCatalogProductPriceUnitOfMeasure, + PublicCatalogProductPriceUnitOfMeasureCountableUnit, + PublicCatalogProductProperties, + PublicCatalogProductPropertiesAppleSilicon, + PublicCatalogProductPropertiesDedibox, + PublicCatalogProductPropertiesElasticMetal, + PublicCatalogProductPropertiesHardware, + PublicCatalogProductPropertiesHardwareCPU, + PublicCatalogProductPropertiesHardwareCPUArch, + PublicCatalogProductPropertiesHardwareCPUPhysical, + PublicCatalogProductPropertiesHardwareCPUVirtual, + PublicCatalogProductPropertiesHardwareGPU, + PublicCatalogProductPropertiesHardwareNetwork, + PublicCatalogProductPropertiesHardwareRAM, + PublicCatalogProductPropertiesHardwareStorage, + PublicCatalogProductPropertiesInstance, +} from './types.gen' +export * as ValidationRules from './validation-rules.gen' diff --git a/packages/clients/src/api/qaas/v1alpha1/api.gen.ts b/packages/clients/src/api/qaas/v1alpha1/api.gen.ts index 593226e19..6369d52e3 100644 --- a/packages/clients/src/api/qaas/v1alpha1/api.gen.ts +++ b/packages/clients/src/api/qaas/v1alpha1/api.gen.ts @@ -85,13 +85,12 @@ const jsonContentHeaders = { /** * Quantum as a Service API. - * - * This API allows you to manage Scaleway Quantum as a Service. + +This API allows you to manage Scaleway Quantum as a Service. */ export class API extends ParentAPI { /** - * Get job information. Retrieve information about the provided **job ID**, - * such as status, payload, and result. + * Get job information. Retrieve information about the provided **job ID**, such as status, payload, and result. * * @param request - The request {@link GetJobRequest} * @returns A Promise of Job @@ -154,8 +153,7 @@ export class API extends ParentAPI { ) /** - * List all jobs within a project or session. Retrieve information about all - * jobs within a given project or session. + * List all jobs within a project or session. Retrieve information about all jobs within a given project or session. * * @param request - The request {@link ListJobsRequest} * @returns A Promise of ListJobsResponse @@ -181,8 +179,7 @@ export class API extends ParentAPI { ) /** - * List all results of a job. Retrieve all intermediate and final results of a - * job. + * List all results of a job. Retrieve all intermediate and final results of a job. * * @param request - The request {@link ListJobResultsRequest} * @returns A Promise of ListJobResultsResponse @@ -210,8 +207,7 @@ export class API extends ParentAPI { ) /** - * Update job information. Update job information about the provided **job - * ID**. + * Update job information. Update job information about the provided **job ID**. * * @param request - The request {@link UpdateJobRequest} * @returns A Promise of Job @@ -273,8 +269,7 @@ export class API extends ParentAPI { ) /** - * Get platform information. Retrieve information about the provided - * **platform ID**, such as provider name, technology, and type. + * Get platform information. Retrieve information about the provided **platform ID**, such as provider name, technology, and type. * * @param request - The request {@link GetPlatformRequest} * @returns A Promise of Platform @@ -322,8 +317,7 @@ export class API extends ParentAPI { enrichForPagination('platforms', this.pageOfListPlatforms, request) /** - * Get session infrormation. Retrieve information about the provided **session - * ID**, such as name, status, and number of executed jobs. + * Get session infrormation. Retrieve information about the provided **session ID**, such as name, status, and number of executed jobs. * * @param request - The request {@link GetSessionRequest} * @returns A Promise of Session @@ -413,8 +407,7 @@ export class API extends ParentAPI { ) /** - * Update session information. Update session information of the provided - * **session ID**. + * Update session information. Update session information of the provided **session ID**. * * @param request - The request {@link UpdateSessionRequest} * @returns A Promise of Session @@ -433,8 +426,7 @@ export class API extends ParentAPI { ) /** - * Terminate an existing session. Terminate a session by its unique ID and - * cancel all its attached jobs. + * Terminate an existing session. Terminate a session by its unique ID and cancel all its attached jobs. * * @param request - The request {@link TerminateSessionRequest} * @returns A Promise of Session @@ -451,8 +443,7 @@ export class API extends ParentAPI { ) /** - * Delete an existing session. Delete a session by its unique ID and delete - * all its attached jobs. + * Delete an existing session. Delete a session by its unique ID and delete all its attached jobs. * * @param request - The request {@link DeleteSessionRequest} */ @@ -485,8 +476,7 @@ export class API extends ParentAPI { enrichForPagination('acls', this.pageOfListSessionACLs, request) /** - * Create a process. Create a new process for the specified application on a - * specified platform. + * Create a process. Create a new process for the specified application on a specified platform. * * @param request - The request {@link CreateProcessRequest} * @returns A Promise of Process @@ -505,8 +495,7 @@ export class API extends ParentAPI { ) /** - * Get process infrormation. Retrieve information about the provided **process - * ID**, such as name, status and progress. + * Get process infrormation. Retrieve information about the provided **process ID**, such as name, status and progress. * * @param request - The request {@link GetProcessRequest} * @returns A Promise of Process @@ -577,8 +566,7 @@ export class API extends ParentAPI { enrichForPagination('processes', this.pageOfListProcesses, request) /** - * Update process information. Update process information of the provided - * **process ID**. + * Update process information. Update process information of the provided **process ID**. * * @param request - The request {@link UpdateProcessRequest} * @returns A Promise of Process @@ -597,8 +585,7 @@ export class API extends ParentAPI { ) /** - * Cancel a running process. Cancel a process by its unique ID. Intermediate - * results are still available. + * Cancel a running process. Cancel a process by its unique ID. Intermediate results are still available. * * @param request - The request {@link CancelProcessRequest} * @returns A Promise of Process @@ -615,8 +602,7 @@ export class API extends ParentAPI { ) /** - * Delete an existing process. Delete a process by its unique ID and delete - * all its data. + * Delete an existing process. Delete a process by its unique ID and delete all its data. * * @param request - The request {@link DeleteProcessRequest} */ @@ -646,8 +632,7 @@ export class API extends ParentAPI { ) /** - * List all results of a process. Retrieve all intermediate and final result - * of a process. + * List all results of a process. Retrieve all intermediate and final result of a process. * * @param request - The request {@link ListProcessResultsRequest} * @returns A Promise of ListProcessResultsResponse @@ -660,8 +645,7 @@ export class API extends ParentAPI { ) /** - * Get application information. Retrieve information about the provided - * **applcation ID**, such as name, type and compatible platforms. + * Get application information. Retrieve information about the provided **applcation ID**, such as name, type and compatible platforms. * * @param request - The request {@link GetApplicationRequest} * @returns A Promise of Application @@ -697,8 +681,7 @@ export class API extends ParentAPI { ) /** - * List all available applications. Retrieve information about all - * applications. + * List all available applications. Retrieve information about all applications. * * @param request - The request {@link ListApplicationsRequest} * @returns A Promise of ListApplicationsResponse diff --git a/packages/clients/src/api/qaas/v1alpha1/types.gen.ts b/packages/clients/src/api/qaas/v1alpha1/types.gen.ts index fac065a54..c59bb63eb 100644 --- a/packages/clients/src/api/qaas/v1alpha1/types.gen.ts +++ b/packages/clients/src/api/qaas/v1alpha1/types.gen.ts @@ -113,17 +113,29 @@ export type SessionStatus = | 'stopping' export interface PlatformHardware { - /** Product name of the hardware. */ + /** + * Product name of the hardware. + */ name: string - /** Number of vCPUs available. */ + /** + * Number of vCPUs available. + */ vcpus: number - /** Number of GPUs available (0 if no GPU). */ + /** + * Number of GPUs available (0 if no GPU). + */ gpus: number - /** Network topology of GPUs (PCIe, NVLink...). */ + /** + * Network topology of GPUs (PCIe, NVLink...). + */ gpusNetwork: string - /** Amount of RAM available in byte. */ + /** + * Amount of RAM available in byte. + */ ram: number - /** Amount of VRAM available in byte (0 if no GPU). */ + /** + * Amount of VRAM available in byte (0 if no GPU). + */ vram: number } @@ -131,311 +143,529 @@ export interface JobCircuit { /** * Circuit generated by Perceval that should be executed. * - * One-of ('circuitSerialization'): at most one of 'percevalCircuit', - * 'qiskitCircuit' could be set. + * One-of ('circuitSerialization'): at most one of 'percevalCircuit', 'qiskitCircuit' could be set. */ percevalCircuit?: string /** * Circuit generated by Qiskit that should be executed. * - * One-of ('circuitSerialization'): at most one of 'percevalCircuit', - * 'qiskitCircuit' could be set. + * One-of ('circuitSerialization'): at most one of 'percevalCircuit', 'qiskitCircuit' could be set. */ qiskitCircuit?: string } export interface Application { - /** Unique ID of the application. */ + /** + * Unique ID of the application. + */ id: string - /** Name of the application. */ + /** + * Name of the application. + */ name: string - /** Type of the application. */ + /** + * Type of the application. + */ type: ApplicationType - /** List of compatible platform (by IDs) able to run this application. */ + /** + * List of compatible platform (by IDs) able to run this application. + */ compatiblePlatformIds: string[] - /** JSON format describing the expected input. */ + /** + * JSON format describing the expected input. + */ inputTemplate: string } export interface JobResult { - /** ID of the parent job. */ + /** + * ID of the parent job. + */ jobId: string - /** Result in JSON format. */ + /** + * Result in JSON format. + */ result?: string - /** URL to download a large result (optional). */ + /** + * URL to download a large result (optional). + */ url?: string - /** Creation time of the result. */ + /** + * Creation time of the result. + */ createdAt?: Date } export interface Job { - /** Unique ID of the job. */ + /** + * Unique ID of the job. + */ id: string - /** Job name. */ + /** + * Job name. + */ name: string - /** Tags of the job. */ + /** + * Tags of the job. + */ tags?: string[] - /** Session ID in which the job is executed. */ + /** + * Session ID in which the job is executed. + */ sessionId: string - /** Time at which the job was created. */ + /** + * Time at which the job was created. + */ createdAt?: Date - /** Time at which the job was started. */ + /** + * Time at which the job was started. + */ startedAt?: Date - /** Time at which the job was updated. */ + /** + * Time at which the job was updated. + */ updatedAt?: Date - /** Job status. */ + /** + * Job status. + */ status: JobStatus - /** Last progress message, if the job has started. */ + /** + * Last progress message, if the job has started. + */ progressMessage?: string - /** Duration of the job, if the job is finished. */ + /** + * Duration of the job, if the job is finished. + */ jobDuration?: string - /** Result of the job, if the job is finished. */ + /** + * Result of the job, if the job is finished. + */ resultDistribution?: string } export interface Platform { - /** Unique ID of the platform. */ + /** + * Unique ID of the platform. + */ id: string - /** Verison of the platform. */ + /** + * Version of the platform. + */ version: string - /** Name of the platform. */ + /** + * Name of the platform. + */ name: string - /** Provider name of the platform. */ + /** + * Provider name of the platform. + */ providerName: string - /** Name of the running backend over the platform (ascella, qsim, aer...). */ + /** + * Name of the running backend over the platform (ascella, qsim, aer...). + */ backendName: string - /** Type of the platform. */ + /** + * Type of the platform. + */ type: PlatformType - /** Technology used by the platform. */ + /** + * Technology used by the platform. + */ technology: PlatformTechnology - /** Estimated maximum number of qubits supported by the platform. */ + /** + * Estimated maximum number of qubits supported by the platform. + */ maxQubitCount: number - /** Availability of the platform. */ + /** + * Availability of the platform. + */ availability: PlatformAvailability - /** Metadata provided by the platform. */ + /** + * Metadata provided by the platform. + */ metadata: string - /** Price to be payed per hour (excluding free tiers). */ + /** + * Price to be paid per hour (excluding free tiers). + */ pricePerHour?: Money - /** Specifications of the underlying hardware. */ + /** + * Specifications of the underlying hardware. + */ hardware?: PlatformHardware } export interface ProcessResult { - /** ID of the parent process. */ + /** + * ID of the parent process. + */ processId: string - /** Result in JSON format. */ + /** + * Result in JSON format. + */ result: string - /** Creation time of the result. */ + /** + * Creation time of the result. + */ createdAt?: Date } export interface Process { - /** Unique ID of the process. */ + /** + * Unique ID of the process. + */ id: string - /** Name of the process. */ + /** + * Name of the process. + */ name: string - /** Application ID for which the process has been created. */ + /** + * Application ID for which the process has been created. + */ applicationId?: string - /** Platform ID for which the process has been created. */ + /** + * Platform ID for which the process has been created. + */ platformId?: string - /** List of sessions generated by the process. */ + /** + * List of sessions generated by the process. + */ attachedSessionIds: string[] - /** Tme at which the process was created. */ + /** + * Tme at which the process was created. + */ createdAt?: Date - /** Time at which the process started. */ + /** + * Time at which the process started. + */ startedAt?: Date - /** Time at which the process was updated. */ + /** + * Time at which the process was updated. + */ updatedAt?: Date - /** Time at which the process was finished. */ + /** + * Time at which the process was finished. + */ finishedAt?: Date - /** Status of the process. */ + /** + * Status of the process. + */ status: ProcessStatus - /** Project ID in which the process has been created. */ + /** + * Project ID in which the process has been created. + */ projectId: string - /** Tags of the process. */ + /** + * Tags of the process. + */ tags: string[] - /** Progress of the process, from 0 to 1. */ + /** + * Progress of the process, from 0 to 1. + */ progress?: number - /** Any progress of the process. */ + /** + * Any progress of the process. + */ progressMessage?: string - /** Input payload of the process as JSON string. */ + /** + * Input payload of the process as JSON string. + */ input?: string } export interface Session { - /** Unique ID of the session. */ + /** + * Unique ID of the session. + */ id: string - /** Name of the session. */ + /** + * Name of the session. + */ name: string - /** Platform ID for which the session has been created. */ + /** + * Platform ID for which the session has been created. + */ platformId: string - /** The time at which the session was created. */ + /** + * The time at which the session was created. + */ createdAt?: Date - /** The time at which the session started. */ + /** + * The time at which the session started. + */ startedAt?: Date - /** The time at which the session was updated. */ + /** + * The time at which the session was updated. + */ updatedAt?: Date - /** The time at which the session was terminated. */ + /** + * The time at which the session was terminated. + */ terminatedAt?: Date - /** Maximum idle time before the session ends. */ + /** + * Maximum idle time before the session ends. + */ maxIdleDuration?: string - /** Maximum duration before the session ends. */ + /** + * Maximum duration before the session ends. + */ maxDuration?: string - /** Number of waiting jobs linked to the session. */ + /** + * Number of waiting jobs linked to the session. + */ waitingJobCount: number - /** Number of finished jobs linked to the session. */ + /** + * Number of finished jobs linked to the session. + */ finishedJobCount: number - /** Status of the session. */ + /** + * Status of the session. + */ status: SessionStatus - /** Project ID in which the session has been created. */ + /** + * Project ID in which the session has been created. + */ projectId: string - /** Tags of the session. */ + /** + * Tags of the session. + */ tags?: string[] - /** Deduplication ID of the session. */ + /** + * Deduplication ID of the session. + */ deduplicationId: string - /** Resource type that creates the session. */ + /** + * Resource type that creates the session. + */ originType: SessionOriginType - /** Unique ID of the session's origin resource (if exists). */ + /** + * Unique ID of the session's origin resource (if exists). + */ originId?: string - /** Any progress of the session. */ + /** + * Any progress of the session. + */ progressMessage?: string } export type CancelJobRequest = { - /** Unique ID of the job. */ + /** + * Unique ID of the job. + */ jobId: string } export type CancelProcessRequest = { - /** Unique ID of the process. */ + /** + * Unique ID of the process. + */ processId: string } export type CreateJobRequest = { - /** Name of the job. */ + /** + * Name of the job. + */ name: string - /** Tags of the job. */ + /** + * Tags of the job. + */ tags?: string[] - /** Session in which the job is executed. */ + /** + * Session in which the job is executed. + */ sessionId: string - /** Quantum circuit that should be executed. */ + /** + * Quantum circuit that should be executed. + */ circuit: JobCircuit - /** Maximum duration of the job. */ + /** + * Maximum duration of the job. + */ maxDuration?: string } export type CreateProcessRequest = { - /** ID of the project in which the process was created. */ + /** + * ID of the project in which the process was created. + */ projectId?: string - /** ID of the platform for which the process was created. */ + /** + * ID of the platform for which the process was created. + */ platformId?: string - /** ID of the application for which the process was created. */ + /** + * ID of the application for which the process was created. + */ applicationId?: string - /** Name of the process. */ + /** + * Name of the process. + */ name: string - /** Process parameters in JSON format. */ + /** + * Process parameters in JSON format. + */ input?: string - /** Tags of the process. */ + /** + * Tags of the process. + */ tags?: string[] } export type CreateSessionRequest = { - /** ID of the Project in which the session was created. */ + /** + * ID of the Project in which the session was created. + */ projectId?: string - /** ID of the Platform for which the session was created. */ + /** + * ID of the Platform for which the session was created. + */ platformId: string - /** Name of the session. */ + /** + * Name of the session. + */ name?: string - /** Maximum idle duration before the session ends. */ + /** + * Maximum idle duration before the session ends. + */ maxIdleDuration?: string - /** Maximum duration before the session ends. */ + /** + * Maximum duration before the session ends. + */ maxDuration?: string - /** Tags of the session. */ + /** + * Tags of the session. + */ tags?: string[] - /** Deduplication ID of the session. */ + /** + * Deduplication ID of the session. + */ deduplicationId?: string } export type DeleteJobRequest = { - /** Unique ID of the job. */ + /** + * Unique ID of the job. + */ jobId: string } export type DeleteProcessRequest = { - /** Unique ID of the process. */ + /** + * Unique ID of the process. + */ processId: string } export type DeleteSessionRequest = { - /** Unique ID of the session. */ + /** + * Unique ID of the session. + */ sessionId: string } export type GetApplicationRequest = { - /** Unique ID of the application. */ + /** + * Unique ID of the application. + */ applicationId: string } export type GetJobCircuitRequest = { - /** Unique ID of the job. */ + /** + * Unique ID of the job. + */ jobId: string } export type GetJobRequest = { - /** Unique ID of the job you want to get. */ + /** + * Unique ID of the job you want to get. + */ jobId: string } export type GetPlatformRequest = { - /** Unique ID of the platform. */ + /** + * Unique ID of the platform. + */ platformId: string } export type GetProcessRequest = { - /** Unique ID of the process. */ + /** + * Unique ID of the process. + */ processId: string } export type GetSessionRequest = { - /** Unique ID of the session. */ + /** + * Unique ID of the session. + */ sessionId: string } export type ListApplicationsRequest = { - /** List applications with this name. */ + /** + * List applications with this name. + */ name?: string - /** List applications with this type. */ + /** + * List applications with this type. + */ applicationType?: ApplicationType - /** Page number. */ + /** + * Page number. + */ page?: number - /** Maximum number of applications a to return per page. */ + /** + * Maximum number of applications a to return per page. + */ pageSize?: number - /** Sort order of the returned applications. */ + /** + * Sort order of the returned applications. + */ orderBy?: ListApplicationsRequestOrderBy } export interface ListApplicationsResponse { - /** Total number of applications. */ + /** + * Total number of applications. + */ totalCount: number - /** List of applications. */ + /** + * List of applications. + */ applications: Application[] } export type ListJobResultsRequest = { - /** ID of the job. */ + /** + * ID of the job. + */ jobId: string - /** Page number. */ + /** + * Page number. + */ page?: number - /** Maximum number of results to return per page. */ + /** + * Maximum number of results to return per page. + */ pageSize?: number - /** Sort order of the returned results. */ + /** + * Sort order of the returned results. + */ orderBy?: ListJobResultsRequestOrderBy } export interface ListJobResultsResponse { - /** Total number of results. */ + /** + * Total number of results. + */ totalCount: number - /** List of results. */ + /** + * List of results. + */ jobResults: JobResult[] } @@ -443,97 +673,155 @@ export type ListJobsRequest = { /** * List jobs with this session ID. * - * One-of ('resourceId'): at most one of 'sessionId', 'projectId' could be - * set. + * One-of ('resourceId'): at most one of 'sessionId', 'projectId' could be set. */ sessionId?: string /** * List jobs with this project ID. * - * One-of ('resourceId'): at most one of 'sessionId', 'projectId' could be - * set. + * One-of ('resourceId'): at most one of 'sessionId', 'projectId' could be set. */ projectId?: string - /** List jobs with these tags. */ + /** + * List jobs with these tags. + */ tags?: string[] - /** Page number. */ + /** + * Page number. + */ page?: number - /** Maximum number of jobs to return per page. */ + /** + * Maximum number of jobs to return per page. + */ pageSize?: number - /** Sort order of the returned jobs. */ + /** + * Sort order of the returned jobs. + */ orderBy?: ListJobsRequestOrderBy } export interface ListJobsResponse { - /** Total number of jobs. */ + /** + * Total number of jobs. + */ totalCount: number - /** List of jobs. */ + /** + * List of jobs. + */ jobs: Job[] } export type ListPlatformsRequest = { - /** List platforms with this provider name. */ + /** + * List platforms with this provider name. + */ providerName?: string - /** List platforms with this backend name. */ + /** + * List platforms with this backend name. + */ backendName?: string - /** List platforms with this name. */ + /** + * List platforms with this name. + */ name?: string - /** List platforms with this type. */ + /** + * List platforms with this type. + */ platformType?: PlatformType - /** List platforms with this technology. */ + /** + * List platforms with this technology. + */ platformTechnology?: PlatformTechnology - /** Page number. */ + /** + * Page number. + */ page?: number - /** Maximum number of platforms to return per page. */ + /** + * Maximum number of platforms to return per page. + */ pageSize?: number - /** Sort order of the returned platforms. */ + /** + * Sort order of the returned platforms. + */ orderBy?: ListPlatformsRequestOrderBy } export interface ListPlatformsResponse { - /** Total number of platforms. */ + /** + * Total number of platforms. + */ totalCount: number - /** List of platforms. */ + /** + * List of platforms. + */ platforms: Platform[] } export type ListProcessResultsRequest = { - /** ID of the process. */ + /** + * ID of the process. + */ processId: string - /** Page number. */ + /** + * Page number. + */ page?: number - /** Maximum number of results to return per page. */ + /** + * Maximum number of results to return per page. + */ pageSize?: number - /** Sort order of the returned results. */ + /** + * Sort order of the returned results. + */ orderBy?: ListProcessResultsRequestOrderBy } export interface ListProcessResultsResponse { - /** Total number of results. */ + /** + * Total number of results. + */ totalCount: number - /** List of results. */ + /** + * List of results. + */ processResults: ProcessResult[] } export type ListProcessesRequest = { - /** List processes that have been created for this application. */ + /** + * List processes that have been created for this application. + */ applicationId?: string - /** List processes with these tags. */ + /** + * List processes with these tags. + */ tags?: string[] - /** Page number. */ + /** + * Page number. + */ page?: number - /** Maximum number of processes to return per page. */ + /** + * Maximum number of processes to return per page. + */ pageSize?: number - /** Sort order of the returned processes. */ + /** + * Sort order of the returned processes. + */ orderBy?: ListProcessesRequestOrderBy - /** List processes belonging to this project ID. */ + /** + * List processes belonging to this project ID. + */ projectId?: string } export interface ListProcessesResponse { - /** Total number of processes. */ + /** + * Total number of processes. + */ totalCount: number - /** List of processes. */ + /** + * List of processes. + */ processes: Process[] } @@ -550,59 +838,99 @@ export interface ListSessionACLsResponse { } export type ListSessionsRequest = { - /** List sessions that have been created for this platform. */ + /** + * List sessions that have been created for this platform. + */ platformId?: string - /** List sessions with these tags. */ + /** + * List sessions with these tags. + */ tags?: string[] - /** Page number. */ + /** + * Page number. + */ page?: number - /** Maximum number of sessions to return per page. */ + /** + * Maximum number of sessions to return per page. + */ pageSize?: number - /** Sort order of the returned sessions. */ + /** + * Sort order of the returned sessions. + */ orderBy?: ListSessionsRequestOrderBy - /** List sessions belonging to this project ID. */ + /** + * List sessions belonging to this project ID. + */ projectId?: string } export interface ListSessionsResponse { - /** Total number of sessions. */ + /** + * Total number of sessions. + */ totalCount: number - /** List of sessions. */ + /** + * List of sessions. + */ sessions: Session[] } export type TerminateSessionRequest = { - /** Unique ID of the session. */ + /** + * Unique ID of the session. + */ sessionId: string } export type UpdateJobRequest = { - /** Unique ID of the job. */ + /** + * Unique ID of the job. + */ jobId: string - /** Name of the job. */ + /** + * Name of the job. + */ name?: string - /** Tags of the job. */ + /** + * Tags of the job. + */ tags?: string[] } export type UpdateProcessRequest = { - /** Unique ID of the process. */ + /** + * Unique ID of the process. + */ processId: string - /** Name of the process. */ + /** + * Name of the process. + */ name?: string - /** Tags of the process. */ + /** + * Tags of the process. + */ tags?: string[] } export type UpdateSessionRequest = { - /** Unique ID of the session. */ + /** + * Unique ID of the session. + */ sessionId: string - /** Name of the session. */ + /** + * Name of the session. + */ name?: string - /** Maximum idle duration before the session ends. */ + /** + * Maximum idle duration before the session ends. + */ maxIdleDuration?: string - /** Maximum time before the session ends. */ + /** + * Maximum time before the session ends. + */ maxDuration?: string - /** Tags of the session. */ + /** + * Tags of the session. + */ tags?: string[] } diff --git a/packages/clients/src/api/rdb/v1/api.gen.ts b/packages/clients/src/api/rdb/v1/api.gen.ts index e0bc2882e..650725375 100644 --- a/packages/clients/src/api/rdb/v1/api.gen.ts +++ b/packages/clients/src/api/rdb/v1/api.gen.ts @@ -168,9 +168,8 @@ const jsonContentHeaders = { /** * Managed Database for PostgreSQL and MySQL API. - * - * This API allows you to manage your Managed Databases for PostgreSQL and - * MySQL. + +This API allows you to manage your Managed Databases for PostgreSQL and MySQL. */ export class API extends ParentAPI { /** Lists the available regions of the API. */ @@ -201,8 +200,7 @@ export class API extends ParentAPI { ) /** - * List available database engines. List the PostgreSQL and MySQL database - * engines available at Scaleway. + * List available database engines. List the PostgreSQL and MySQL database engines available at Scaleway. * * @param request - The request {@link ListDatabaseEnginesRequest} * @returns A Promise of ListDatabaseEnginesResponse @@ -228,9 +226,7 @@ export class API extends ParentAPI { ) /** - * List available node types. List all available node types. By default, the - * node types returned in the list are ordered by creation date in ascending - * order, though this can be modified via the `order_by` field. + * List available node types. List all available node types. By default, the node types returned in the list are ordered by creation date in ascending order, though this can be modified via the `order_by` field. * * @param request - The request {@link ListNodeTypesRequest} * @returns A Promise of ListNodeTypesResponse @@ -262,10 +258,7 @@ export class API extends ParentAPI { ) /** - * List database backups. List all backups in a specified region, for a given - * Scaleway Organization or Scaleway Project. By default, the backups listed - * are ordered by creation date in ascending order. This can be modified via - * the `order_by` field. + * List database backups. List all backups in a specified region, for a given Scaleway Organization or Scaleway Project. By default, the backups listed are ordered by creation date in ascending order. This can be modified via the `order_by` field. * * @param request - The request {@link ListDatabaseBackupsRequest} * @returns A Promise of ListDatabaseBackupsResponse @@ -278,8 +271,7 @@ export class API extends ParentAPI { ) /** - * Create a database backup. Create a new backup. You must set the - * `instance_id`, `database_name`, `name` and `expires_at` parameters. + * Create a database backup. Create a new backup. You must set the `instance_id`, `database_name`, `name` and `expires_at` parameters. * * @param request - The request {@link CreateDatabaseBackupRequest} * @returns A Promise of DatabaseBackup @@ -298,9 +290,7 @@ export class API extends ParentAPI { ) /** - * Get a database backup. Retrieve information about a given backup, specified - * by its database backup ID and region. Full details about the backup, like - * size, URL and expiration date, are returned in the response. + * Get a database backup. Retrieve information about a given backup, specified by its database backup ID and region. Full details about the backup, like size, URL and expiration date, are returned in the response. * * @param request - The request {@link GetDatabaseBackupRequest} * @returns A Promise of DatabaseBackup @@ -337,8 +327,7 @@ export class API extends ParentAPI { ) /** - * Update a database backup. Update the parameters of a backup, including name - * and expiration date. + * Update a database backup. Update the parameters of a backup, including name and expiration date. * * @param request - The request {@link UpdateDatabaseBackupRequest} * @returns A Promise of DatabaseBackup @@ -357,8 +346,7 @@ export class API extends ParentAPI { ) /** - * Delete a database backup. Delete a backup, specified by its database backup - * ID and region. Deleting a backup is permanent, and cannot be undone. + * Delete a database backup. Delete a backup, specified by its database backup ID and region. Deleting a backup is permanent, and cannot be undone. * * @param request - The request {@link DeleteDatabaseBackupRequest} * @returns A Promise of DatabaseBackup @@ -373,10 +361,7 @@ export class API extends ParentAPI { ) /** - * Restore a database backup. Launch the process of restoring database backup. - * You must specify the `instance_id` of the Database Instance of destination, - * where the backup will be restored. Note that large database backups can - * take up to several hours to restore. + * Restore a database backup. Launch the process of restoring database backup. You must specify the `instance_id` of the Database Instance of destination, where the backup will be restored. Note that large database backups can take up to several hours to restore. * * @param request - The request {@link RestoreDatabaseBackupRequest} * @returns A Promise of DatabaseBackup @@ -395,9 +380,7 @@ export class API extends ParentAPI { ) /** - * Export a database backup. Export a backup, specified by the - * `database_backup_id` and the `region` parameters. The download URL is - * returned in the response. + * Export a database backup. Export a backup, specified by the `database_backup_id` and the `region` parameters. The download URL is returned in the response. * * @param request - The request {@link ExportDatabaseBackupRequest} * @returns A Promise of DatabaseBackup @@ -414,10 +397,7 @@ export class API extends ParentAPI { ) /** - * Upgrade a Database Instance. Upgrade your current Database Instance - * specifications like node type, high availability, volume, or the database - * engine version. Note that upon upgrade the `enable_ha` parameter can only - * be set to `true`. + * Upgrade a Database Instance. Upgrade your current Database Instance specifications like node type, high availability, volume, or the database engine version. Note that upon upgrade the `enable_ha` parameter can only be set to `true`. * * @param request - The request {@link UpgradeInstanceRequest} * @returns A Promise of Instance @@ -459,14 +439,7 @@ export class API extends ParentAPI { ) /** - * List Database Instances. List all Database Instances in the specified - * region, for a given Scaleway Organization or Scaleway Project. By default, - * the Database Instances returned in the list are ordered by creation date in - * ascending order, though this can be modified via the order_by field. You - * can define additional parameters for your query, such as `tags` and `name`. - * For the `name` parameter, the value you include will be checked against the - * whole name string to see if it includes the string you put in the - * parameter. + * List Database Instances. List all Database Instances in the specified region, for a given Scaleway Organization or Scaleway Project. By default, the Database Instances returned in the list are ordered by creation date in ascending order, though this can be modified via the order_by field. You can define additional parameters for your query, such as `tags` and `name`. For the `name` parameter, the value you include will be checked against the whole name string to see if it includes the string you put in the parameter. * * @param request - The request {@link ListInstancesRequest} * @returns A Promise of ListInstancesResponse @@ -475,10 +448,7 @@ export class API extends ParentAPI { enrichForPagination('instances', this.pageOfListInstances, request) /** - * Get a Database Instance. Retrieve information about a given Database - * Instance, specified by the `region` and `instance_id` parameters. Its full - * details, including name, status, IP address and port, are returned in the - * response object. + * Get a Database Instance. Retrieve information about a given Database Instance, specified by the `region` and `instance_id` parameters. Its full details, including name, status, IP address and port, are returned in the response object. * * @param request - The request {@link GetInstanceRequest} * @returns A Promise of Instance @@ -515,9 +485,7 @@ export class API extends ParentAPI { ) /** - * Create a Database Instance. Create a new Database Instance. You must set - * the `engine`, `user_name`, `password` and `node_type` parameters. - * Optionally, you can specify the volume type and size. + * Create a Database Instance. Create a new Database Instance. You must set the `engine`, `user_name`, `password` and `node_type` parameters. Optionally, you can specify the volume type and size. * * @param request - The request {@link CreateInstanceRequest} * @returns A Promise of Instance @@ -536,8 +504,7 @@ export class API extends ParentAPI { ) /** - * Update a Database Instance. Update the parameters of a Database Instance, - * including name, tags and backup schedule details. + * Update a Database Instance. Update the parameters of a Database Instance, including name, tags and backup schedule details. * * @param request - The request {@link UpdateInstanceRequest} * @returns A Promise of Instance @@ -556,10 +523,7 @@ export class API extends ParentAPI { ) /** - * Delete a Database Instance. Delete a given Database Instance, specified by - * the `region` and `instance_id` parameters. Deleting a Database Instance is - * permanent, and cannot be undone. Note that upon deletion all your data will - * be lost. + * Delete a Database Instance. Delete a given Database Instance, specified by the `region` and `instance_id` parameters. Deleting a Database Instance is permanent, and cannot be undone. Note that upon deletion all your data will be lost. * * @param request - The request {@link DeleteInstanceRequest} * @returns A Promise of Instance @@ -574,11 +538,7 @@ export class API extends ParentAPI { ) /** - * Clone a Database Instance. Clone a given Database Instance, specified by - * the `region` and `instance_id` parameters. The clone feature allows you to - * create a new Database Instance from an existing one. The clone includes all - * existing databases, users and permissions. You can create a clone on a - * Database Instance bigger than your current one. + * Clone a Database Instance. Clone a given Database Instance, specified by the `region` and `instance_id` parameters. The clone feature allows you to create a new Database Instance from an existing one. The clone includes all existing databases, users and permissions. You can create a clone on a Database Instance bigger than your current one. * * @param request - The request {@link CloneInstanceRequest} * @returns A Promise of Instance @@ -597,9 +557,7 @@ export class API extends ParentAPI { ) /** - * Restart Database Instance. Restart a given Database Instance, specified by - * the `region` and `instance_id` parameters. The status of the Database - * Instance returned in the response. + * Restart Database Instance. Restart a given Database Instance, specified by the `region` and `instance_id` parameters. The status of the Database Instance returned in the response. * * @param request - The request {@link RestartInstanceRequest} * @returns A Promise of Instance @@ -616,9 +574,7 @@ export class API extends ParentAPI { ) /** - * Get the TLS certificate of a Database Instance. Retrieve information about - * the TLS certificate of a given Database Instance. Details like name and - * content are returned in the response. + * Get the TLS certificate of a Database Instance. Retrieve information about the TLS certificate of a given Database Instance. Details like name and content are returned in the response. * * @param request - The request {@link GetInstanceCertificateRequest} * @returns A Promise of Blob @@ -632,11 +588,7 @@ export class API extends ParentAPI { }) /** - * Renew the TLS certificate of a Database Instance. Renew a TLS for a - * Database Instance. Renewing a certificate means that you will not be able - * to connect to your Database Instance using the previous certificate. You - * will also need to download and update the new certificate for all database - * clients. + * Renew the TLS certificate of a Database Instance. Renew a TLS for a Database Instance. Renewing a certificate means that you will not be able to connect to your Database Instance using the previous certificate. You will also need to download and update the new certificate for all database clients. * * @param request - The request {@link RenewInstanceCertificateRequest} */ @@ -651,9 +603,7 @@ export class API extends ParentAPI { }) /** - * Get Database Instance metrics. Retrieve the time series metrics of a given - * Database Instance. You can define the period from which to retrieve metrics - * by specifying the `start_date` and `end_date`. + * Get Database Instance metrics. Retrieve the time series metrics of a given Database Instance. You can define the period from which to retrieve metrics by specifying the `start_date` and `end_date`. * * @param request - The request {@link GetInstanceMetricsRequest} * @returns A Promise of InstanceMetrics @@ -673,9 +623,7 @@ export class API extends ParentAPI { ) /** - * Create a Read Replica. Create a new Read Replica of a Database Instance. - * You must specify the `region` and the `instance_id`. You can only create a - * maximum of 3 Read Replicas per Database Instance. + * Create a Read Replica. Create a new Read Replica of a Database Instance. You must specify the `region` and the `instance_id`. You can only create a maximum of 3 Read Replicas per Database Instance. * * @param request - The request {@link CreateReadReplicaRequest} * @returns A Promise of ReadReplica @@ -694,9 +642,7 @@ export class API extends ParentAPI { ) /** - * Get a Read Replica. Retrieve information about a Database Instance Read - * Replica. Full details about the Read Replica, like `endpoints`, `status` - * and `region` are returned in the response. + * Get a Read Replica. Retrieve information about a Database Instance Read Replica. Full details about the Read Replica, like `endpoints`, `status` and `region` are returned in the response. * * @param request - The request {@link GetReadReplicaRequest} * @returns A Promise of ReadReplica @@ -733,9 +679,7 @@ export class API extends ParentAPI { ) /** - * Delete a Read Replica. Delete a Read Replica of a Database Instance. You - * must specify the `region` and `read_replica_id` parameters of the Read - * Replica you want to delete. + * Delete a Read Replica. Delete a Read Replica of a Database Instance. You must specify the `region` and `read_replica_id` parameters of the Read Replica you want to delete. * * @param request - The request {@link DeleteReadReplicaRequest} * @returns A Promise of ReadReplica @@ -750,11 +694,8 @@ export class API extends ParentAPI { ) /** - * Resync a Read Replica. When you resync a Read Replica, first it is reset, - * then its data is resynchronized from the primary node. Your Read Replica - * remains unavailable during the resync process. The duration of this process - * is proportional to the size of your Database Instance. The configured - * endpoints do not change. + * Resync a Read Replica. When you resync a Read Replica, first it is reset, then its data is resynchronized from the primary node. Your Read Replica remains unavailable during the resync process. The duration of this process is proportional to the size of your Database Instance. +The configured endpoints do not change. * * @param request - The request {@link ResetReadReplicaRequest} * @returns A Promise of ReadReplica @@ -771,8 +712,7 @@ export class API extends ParentAPI { ) /** - * Promote a Read Replica. Promote a Read Replica to Database Instance - * automatically. + * Promote a Read Replica. Promote a Read Replica to Database Instance automatically. * * @param request - The request {@link PromoteReadReplicaRequest} * @returns A Promise of Instance @@ -789,9 +729,7 @@ export class API extends ParentAPI { ) /** - * Create an endpoint for a Read Replica. Create a new endpoint for a Read - * Replica. Read Replicas can have at most one direct access and one Private - * Network endpoint. + * Create an endpoint for a Read Replica. Create a new endpoint for a Read Replica. Read Replicas can have at most one direct access and one Private Network endpoint. * * @param request - The request {@link CreateReadReplicaEndpointRequest} * @returns A Promise of ReadReplica @@ -815,12 +753,7 @@ export class API extends ParentAPI { ) /** - * Prepare logs of a Database Instance. Prepare your Database Instance logs. - * You can define the `start_date` and `end_date` parameters for your query. - * The download URL is returned in the response. Logs are recorded from 00h00 - * to 23h59 and then aggregated in a `.log` file once a day. Therefore, even - * if you specify a timeframe from which you want to get the logs, you will - * receive logs from the full 24 hours. + * Prepare logs of a Database Instance. Prepare your Database Instance logs. You can define the `start_date` and `end_date` parameters for your query. The download URL is returned in the response. Logs are recorded from 00h00 to 23h59 and then aggregated in a `.log` file once a day. Therefore, even if you specify a timeframe from which you want to get the logs, you will receive logs from the full 24 hours. * * @param request - The request {@link PrepareInstanceLogsRequest} * @returns A Promise of PrepareInstanceLogsResponse @@ -839,10 +772,7 @@ export class API extends ParentAPI { ) /** - * List available logs of a Database Instance. List the available logs of a - * Database Instance. By default, the logs returned in the list are ordered by - * creation date in ascending order, though this can be modified via the - * order_by field. + * List available logs of a Database Instance. List the available logs of a Database Instance. By default, the logs returned in the list are ordered by creation date in ascending order, though this can be modified via the order_by field. * * @param request - The request {@link ListInstanceLogsRequest} * @returns A Promise of ListInstanceLogsResponse @@ -858,10 +788,7 @@ export class API extends ParentAPI { ) /** - * Get given logs of a Database Instance. Retrieve information about the logs - * of a Database Instance. Specify the `instance_log_id` and `region` in your - * request to get information such as `download_url`, `status`, `expires_at` - * and `created_at` about your logs in the response. + * Get given logs of a Database Instance. Retrieve information about the logs of a Database Instance. Specify the `instance_log_id` and `region` in your request to get information such as `download_url`, `status`, `expires_at` and `created_at` about your logs in the response. * * @param request - The request {@link GetInstanceLogRequest} * @returns A Promise of InstanceLog @@ -898,9 +825,7 @@ export class API extends ParentAPI { ) /** - * Purge remote Database Instance logs. Purge a given remote log from a - * Database Instance. You can specify the `log_name` of the log you wish to - * clean from your Database Instance. + * Purge remote Database Instance logs. Purge a given remote log from a Database Instance. You can specify the `log_name` of the log you wish to clean from your Database Instance. * * @param request - The request {@link PurgeInstanceLogsRequest} */ @@ -915,9 +840,7 @@ export class API extends ParentAPI { }) /** - * List remote Database Instance logs details. List remote log details. By - * default, the details returned in the list are ordered by creation date in - * ascending order, though this can be modified via the order_by field. + * List remote Database Instance logs details. List remote log details. By default, the details returned in the list are ordered by creation date in ascending order, though this can be modified via the order_by field. * * @param request - The request {@link ListInstanceLogsDetailsRequest} * @returns A Promise of ListInstanceLogsDetailsResponse @@ -934,9 +857,7 @@ export class API extends ParentAPI { ) /** - * Add Database Instance advanced settings. Add an advanced setting to a - * Database Instance. You must set the `name` and the `value` of each - * setting. + * Add Database Instance advanced settings. Add an advanced setting to a Database Instance. You must set the `name` and the `value` of each setting. * * @param request - The request {@link AddInstanceSettingsRequest} * @returns A Promise of AddInstanceSettingsResponse @@ -955,9 +876,7 @@ export class API extends ParentAPI { ) /** - * Delete Database Instance advanced settings. Delete an advanced setting in a - * Database Instance. You must specify the names of the settings you want to - * delete in the request. + * Delete Database Instance advanced settings. Delete an advanced setting in a Database Instance. You must specify the names of the settings you want to delete in the request. * * @param request - The request {@link DeleteInstanceSettingsRequest} * @returns A Promise of DeleteInstanceSettingsResponse @@ -976,9 +895,7 @@ export class API extends ParentAPI { ) /** - * Set Database Instance advanced settings. Update an advanced setting for a - * Database Instance. Settings added upon database engine initalization can - * only be defined once, and cannot, therefore, be updated. + * Set Database Instance advanced settings. Update an advanced setting for a Database Instance. Settings added upon database engine initialization can only be defined once, and cannot, therefore, be updated. * * @param request - The request {@link SetInstanceSettingsRequest} * @returns A Promise of SetInstanceSettingsResponse @@ -1015,10 +932,7 @@ export class API extends ParentAPI { ) /** - * List ACL rules of a Database Instance. List the ACL rules for a given - * Database Instance. The response is an array of ACL objects, each one - * representing an ACL that denies, allows or redirects traffic based on - * certain conditions. + * List ACL rules of a Database Instance. List the ACL rules for a given Database Instance. The response is an array of ACL objects, each one representing an ACL that denies, allows or redirects traffic based on certain conditions. * * @param request - The request {@link ListInstanceACLRulesRequest} * @returns A Promise of ListInstanceACLRulesResponse @@ -1027,8 +941,7 @@ export class API extends ParentAPI { enrichForPagination('rules', this.pageOfListInstanceACLRules, request) /** - * Add an ACL rule to a Database Instance. Add an additional ACL rule to a - * Database Instance. + * Add an ACL rule to a Database Instance. Add an additional ACL rule to a Database Instance. * * @param request - The request {@link AddInstanceACLRulesRequest} * @returns A Promise of AddInstanceACLRulesResponse @@ -1047,8 +960,7 @@ export class API extends ParentAPI { ) /** - * Set ACL rules for a Database Instance. Replace all the ACL rules of a - * Database Instance. + * Set ACL rules for a Database Instance. Replace all the ACL rules of a Database Instance. * * @param request - The request {@link SetInstanceACLRulesRequest} * @returns A Promise of SetInstanceACLRulesResponse @@ -1067,8 +979,7 @@ export class API extends ParentAPI { ) /** - * Delete ACL rules of a Database Instance. Delete one or more ACL rules of a - * Database Instance. + * Delete ACL rules of a Database Instance. Delete one or more ACL rules of a Database Instance. * * @param request - The request {@link DeleteInstanceACLRulesRequest} * @returns A Promise of DeleteInstanceACLRulesResponse @@ -1105,10 +1016,7 @@ export class API extends ParentAPI { ) /** - * List users of a Database Instance. List all users of a given Database - * Instance. By default, the users returned in the list are ordered by - * creation date in ascending order, though this can be modified via the - * order_by field. + * List users of a Database Instance. List all users of a given Database Instance. By default, the users returned in the list are ordered by creation date in ascending order, though this can be modified via the order_by field. * * @param request - The request {@link ListUsersRequest} * @returns A Promise of ListUsersResponse @@ -1117,9 +1025,7 @@ export class API extends ParentAPI { enrichForPagination('users', this.pageOfListUsers, request) /** - * Create a user for a Database Instance. Create a new user for a Database - * Instance. You must define the `name`, `password` and `is_admin` - * parameters. + * Create a user for a Database Instance. Create a new user for a Database Instance. You must define the `name`, `password` and `is_admin` parameters. * * @param request - The request {@link CreateUserRequest} * @returns A Promise of User @@ -1138,9 +1044,7 @@ export class API extends ParentAPI { ) /** - * Update a user on a Database Instance. Update the parameters of a user on a - * Database Instance. You can update the `password` and `is_admin` parameters, - * but you cannot change the name of the user. + * Update a user on a Database Instance. Update the parameters of a user on a Database Instance. You can update the `password` and `is_admin` parameters, but you cannot change the name of the user. * * @param request - The request {@link UpdateUserRequest} * @returns A Promise of User @@ -1159,9 +1063,7 @@ export class API extends ParentAPI { ) /** - * Delete a user on a Database Instance. Delete a given user on a Database - * Instance. You must specify, in the endpoint, the `region`, `instance_id` - * and `name` parameters of the user you want to delete. + * Delete a user on a Database Instance. Delete a given user on a Database Instance. You must specify, in the endpoint, the `region`, `instance_id` and `name` parameters of the user you want to delete. * * @param request - The request {@link DeleteUserRequest} */ @@ -1192,11 +1094,7 @@ export class API extends ParentAPI { ) /** - * List databases in a Database Instance. List all databases of a given - * Database Instance. By default, the databases returned in the list are - * ordered by creation date in ascending order, though this can be modified - * via the order_by field. You can define additional parameters for your - * query, such as `name`, `managed` and `owner`. + * List databases in a Database Instance. List all databases of a given Database Instance. By default, the databases returned in the list are ordered by creation date in ascending order, though this can be modified via the order_by field. You can define additional parameters for your query, such as `name`, `managed` and `owner`. * * @param request - The request {@link ListDatabasesRequest} * @returns A Promise of ListDatabasesResponse @@ -1205,8 +1103,7 @@ export class API extends ParentAPI { enrichForPagination('databases', this.pageOfListDatabases, request) /** - * Create a database in a Database Instance. Create a new database. You must - * define the `name` parameter in the request. + * Create a database in a Database Instance. Create a new database. You must define the `name` parameter in the request. * * @param request - The request {@link CreateDatabaseRequest} * @returns A Promise of Database @@ -1225,9 +1122,7 @@ export class API extends ParentAPI { ) /** - * Delete a database in a Database Instance. Delete a given database on a - * Database Instance. You must specify, in the endpoint, the `region`, - * `instance_id` and `name` parameters of the database you want to delete. + * Delete a database in a Database Instance. Delete a given database on a Database Instance. You must specify, in the endpoint, the `region`, `instance_id` and `name` parameters of the database you want to delete. * * @param request - The request {@link DeleteDatabaseRequest} */ @@ -1257,11 +1152,7 @@ export class API extends ParentAPI { ) /** - * List user privileges for a database. List privileges of a user on a - * database. By default, the details returned in the list are ordered by - * creation date in ascending order, though this can be modified via the - * order_by field. You can define additional parameters for your query, such - * as `database_name` and `user_name`. + * List user privileges for a database. List privileges of a user on a database. By default, the details returned in the list are ordered by creation date in ascending order, though this can be modified via the order_by field. You can define additional parameters for your query, such as `database_name` and `user_name`. * * @param request - The request {@link ListPrivilegesRequest} * @returns A Promise of ListPrivilegesResponse @@ -1270,9 +1161,7 @@ export class API extends ParentAPI { enrichForPagination('privileges', this.pageOfListPrivileges, request) /** - * Set user privileges for a database. Set the privileges of a user on a - * database. You must define `database_name`, `user_name` and `permission` in - * the request body. + * Set user privileges for a database. Set the privileges of a user on a database. You must define `database_name`, `user_name` and `permission` in the request body. * * @param request - The request {@link SetPrivilegeRequest} * @returns A Promise of Privilege @@ -1314,11 +1203,7 @@ export class API extends ParentAPI { ) /** - * List snapshots. List snapshots. You can include the `instance_id` or - * `project_id` in your query to get the list of snapshots for specific - * Database Instances and/or Projects. By default, the details returned in the - * list are ordered by creation date in ascending order, though this can be - * modified via the `order_by` field. + * List snapshots. List snapshots. You can include the `instance_id` or `project_id` in your query to get the list of snapshots for specific Database Instances and/or Projects. By default, the details returned in the list are ordered by creation date in ascending order, though this can be modified via the `order_by` field. * * @param request - The request {@link ListSnapshotsRequest} * @returns A Promise of ListSnapshotsResponse @@ -1327,9 +1212,7 @@ export class API extends ParentAPI { enrichForPagination('snapshots', this.pageOfListSnapshots, request) /** - * Get a Database Instance snapshot. Retrieve information about a given - * snapshot, specified by its `snapshot_id` and `region`. Full details about - * the snapshot, like size and expiration date, are returned in the response. + * Get a Database Instance snapshot. Retrieve information about a given snapshot, specified by its `snapshot_id` and `region`. Full details about the snapshot, like size and expiration date, are returned in the response. * * @param request - The request {@link GetSnapshotRequest} * @returns A Promise of Snapshot @@ -1366,8 +1249,7 @@ export class API extends ParentAPI { ) /** - * Create a Database Instance snapshot. Create a new snapshot of a Database - * Instance. You must define the `name` parameter in the request. + * Create a Database Instance snapshot. Create a new snapshot of a Database Instance. You must define the `name` parameter in the request. * * @param request - The request {@link CreateSnapshotRequest} * @returns A Promise of Snapshot @@ -1386,9 +1268,7 @@ export class API extends ParentAPI { ) /** - * Update a Database Instance snapshot. Update the parameters of a snapshot of - * a Database Instance. You can update the `name` and `expires_at` - * parameters. + * Update a Database Instance snapshot. Update the parameters of a snapshot of a Database Instance. You can update the `name` and `expires_at` parameters. * * @param request - The request {@link UpdateSnapshotRequest} * @returns A Promise of Snapshot @@ -1407,9 +1287,7 @@ export class API extends ParentAPI { ) /** - * Delete a Database Instance snapshot. Delete a given snapshot of a Database - * Instance. You must specify, in the endpoint, the `region` and `snapshot_id` - * parameters of the snapshot you want to delete. + * Delete a Database Instance snapshot. Delete a given snapshot of a Database Instance. You must specify, in the endpoint, the `region` and `snapshot_id` parameters of the snapshot you want to delete. * * @param request - The request {@link DeleteSnapshotRequest} * @returns A Promise of Snapshot @@ -1424,14 +1302,7 @@ export class API extends ParentAPI { ) /** - * Create a new Database Instance from a snapshot. Restore a snapshot. When - * you restore a snapshot, a new Instance is created and billed to your - * account. Note that is possible to select a larger node type for your new - * Database Instance. However, the Block volume size will be the same as the - * size of the restored snapshot. All Instance settings will be restored if - * you chose a node type with the same or more memory size than the initial - * Instance. Settings will be reset to the default if your node type has less - * memory. + * Create a new Database Instance from a snapshot. Restore a snapshot. When you restore a snapshot, a new Instance is created and billed to your account. Note that is possible to select a larger node type for your new Database Instance. However, the Block volume size will be the same as the size of the restored snapshot. All Instance settings will be restored if you chose a node type with the same or more memory size than the initial Instance. Settings will be reset to the default if your node type has less memory. * * @param request - The request {@link CreateInstanceFromSnapshotRequest} * @returns A Promise of Instance @@ -1455,9 +1326,7 @@ export class API extends ParentAPI { ) /** - * Create a new Database Instance endpoint. Create a new endpoint for a - * Database Instance. You can add `load_balancer` and `private_network` - * specifications to the body of the request. + * Create a new Database Instance endpoint. Create a new endpoint for a Database Instance. You can add `load_balancer` and `private_network` specifications to the body of the request. * * @param request - The request {@link CreateEndpointRequest} * @returns A Promise of Endpoint @@ -1476,10 +1345,7 @@ export class API extends ParentAPI { ) /** - * Delete a Database Instance endpoint. Delete the endpoint of a Database - * Instance. You must specify the `region` and `endpoint_id` parameters of the - * endpoint you want to delete. Note that might need to update any environment - * configurations that point to the deleted endpoint. + * Delete a Database Instance endpoint. Delete the endpoint of a Database Instance. You must specify the `region` and `endpoint_id` parameters of the endpoint you want to delete. Note that might need to update any environment configurations that point to the deleted endpoint. * * @param request - The request {@link DeleteEndpointRequest} */ @@ -1490,10 +1356,7 @@ export class API extends ParentAPI { }) /** - * Get a Database Instance endpoint. Retrieve information about a Database - * Instance endpoint. Full details about the endpoint, like `ip`, `port`, - * `private_network` and `load_balancer` specifications are returned in the - * response. + * Get a Database Instance endpoint. Retrieve information about a Database Instance endpoint. Full details about the endpoint, like `ip`, `port`, `private_network` and `load_balancer` specifications are returned in the response. * * @param request - The request {@link GetEndpointRequest} * @returns A Promise of Endpoint @@ -1527,11 +1390,7 @@ export class API extends ParentAPI { ) /** - * Apply Database Instance maintenance. Apply maintenance tasks to your - * Database Instance. This will trigger pending maintenance tasks to start in - * your Database Instance and can generate service interruption. Maintenance - * tasks can be applied between `starts_at` and `stops_at` times, and are run - * directly by Scaleway at `forced_at` timestamp. + * Apply Database Instance maintenance. Apply maintenance tasks to your Database Instance. This will trigger pending maintenance tasks to start in your Database Instance and can generate service interruption. Maintenance tasks can be applied between `starts_at` and `stops_at` times, and are run directly by Scaleway at `forced_at` timestamp. * * @param request - The request {@link ApplyInstanceMaintenanceRequest} * @returns A Promise of Maintenance diff --git a/packages/clients/src/api/rdb/v1/types.gen.ts b/packages/clients/src/api/rdb/v1/types.gen.ts index 394ea5f7d..36950f61c 100644 --- a/packages/clients/src/api/rdb/v1/types.gen.ts +++ b/packages/clients/src/api/rdb/v1/types.gen.ts @@ -139,13 +139,21 @@ export interface EndpointDirectAccessDetails {} export interface EndpointLoadBalancerDetails {} export interface EndpointPrivateNetworkDetails { - /** UUID of the private network. */ + /** + * UUID of the private network. + */ privateNetworkId: string - /** CIDR notation of the endpoint IPv4 address. */ + /** + * CIDR notation of the endpoint IPv4 address. + */ serviceIp: string - /** Private network zone. */ + /** + * Private network zone. + */ zone: ScwZone - /** How endpoint ips are provisioned. */ + /** + * How endpoint ips are provisioned. + */ provisioningMode: EndpointPrivateNetworkDetailsProvisioningMode } @@ -154,32 +162,56 @@ export interface EndpointSpecPrivateNetworkIpamConfig {} export interface ReadReplicaEndpointSpecPrivateNetworkIpamConfig {} export interface EngineSetting { - /** Setting name from the database engine. */ + /** + * Setting name from the database engine. + */ name: string - /** Value set when not specified. */ + /** + * Value set when not specified. + */ defaultValue: string - /** Setting can be applied without restarting. */ + /** + * Setting can be applied without restarting. + */ hotConfigurable: boolean - /** Setting description. */ + /** + * Setting description. + */ description: string - /** Setting type. */ + /** + * Setting type. + */ propertyType: EngineSettingPropertyType - /** Setting base unit. */ + /** + * Setting base unit. + */ unit?: string - /** Validation regex for string type settings. */ + /** + * Validation regex for string type settings. + */ stringConstraint?: string - /** Minimum value for int types. */ + /** + * Minimum value for int types. + */ intMin?: number - /** Maximum value for int types. */ + /** + * Maximum value for int types. + */ intMax?: number - /** Minimum value for float types. */ + /** + * Minimum value for float types. + */ floatMin?: number - /** Maximum value for float types. */ + /** + * Maximum value for float types. + */ floatMax?: number } export interface Endpoint { - /** UUID of the endpoint. */ + /** + * UUID of the endpoint. + */ id: string /** * IPv4 address of the endpoint. @@ -187,33 +219,30 @@ export interface Endpoint { * One-of ('address'): at most one of 'ip', 'hostname' could be set. */ ip?: string - /** TCP port of the endpoint. */ + /** + * TCP port of the endpoint. + */ port: number - /** Name of the endpoint. */ + /** + * Name of the endpoint. + */ name?: string /** - * Private Network details. One maximum per Database Instance or Read Replica - * (a Database Instance and its Read Replica can have different Private - * Networks). Cannot be updated (has to be deleted and recreated). + * Private Network details. One maximum per Database Instance or Read Replica (a Database Instance and its Read Replica can have different Private Networks). Cannot be updated (has to be deleted and recreated). * - * One-of ('details'): at most one of 'privateNetwork', 'loadBalancer', - * 'directAccess' could be set. + * One-of ('details'): at most one of 'privateNetwork', 'loadBalancer', 'directAccess' could be set. */ privateNetwork?: EndpointPrivateNetworkDetails /** - * Load balancer details. Public endpoint for Database Instance which is - * systematically present. One per Database Instance. + * Load balancer details. Public endpoint for Database Instance which is systematically present. One per Database Instance. * - * One-of ('details'): at most one of 'privateNetwork', 'loadBalancer', - * 'directAccess' could be set. + * One-of ('details'): at most one of 'privateNetwork', 'loadBalancer', 'directAccess' could be set. */ loadBalancer?: EndpointLoadBalancerDetails /** - * Direct access details. Public endpoint reserved for Read Replicas. One per - * Read Replica. + * Direct access details. Public endpoint reserved for Read Replicas. One per Read Replica. * - * One-of ('details'): at most one of 'privateNetwork', 'loadBalancer', - * 'directAccess' could be set. + * One-of ('details'): at most one of 'privateNetwork', 'loadBalancer', 'directAccess' could be set. */ directAccess?: EndpointDirectAccessDetails /** @@ -227,20 +256,18 @@ export interface Endpoint { export interface EndpointSpecLoadBalancer {} export interface EndpointSpecPrivateNetwork { - /** UUID of the Private Network to be connected to the Database Instance. */ + /** + * UUID of the Private Network to be connected to the Database Instance. + */ privateNetworkId: string /** - * Endpoint IPv4 address with a CIDR notation. Refer to the official Scaleway - * documentation to learn more about IP and subnet limitations. + * Endpoint IPv4 address with a CIDR notation. Refer to the official Scaleway documentation to learn more about IP and subnet limitations. * * One-of ('config'): at most one of 'serviceIp', 'ipamConfig' could be set. */ serviceIp?: string /** - * Automated configuration of your Private Network endpoint with Scaleway IPAM - * service. One at the most per Database Instance or Read Replica (a Database - * Instance and its Read Replica can have different Private Networks). Cannot - * be updated (has to be deleted and recreated). + * Automated configuration of your Private Network endpoint with Scaleway IPAM service. One at the most per Database Instance or Read Replica (a Database Instance and its Read Replica can have different Private Networks). Cannot be updated (has to be deleted and recreated). * * One-of ('config'): at most one of 'serviceIp', 'ipamConfig' could be set. */ @@ -250,20 +277,18 @@ export interface EndpointSpecPrivateNetwork { export interface ReadReplicaEndpointSpecDirectAccess {} export interface ReadReplicaEndpointSpecPrivateNetwork { - /** UUID of the Private Network to be connected to the Read Replica. */ + /** + * UUID of the Private Network to be connected to the Read Replica. + */ privateNetworkId: string /** - * Endpoint IPv4 address with a CIDR notation. Refer to the official Scaleway - * documentation to learn more about IP and subnet limitations. + * Endpoint IPv4 address with a CIDR notation. Refer to the official Scaleway documentation to learn more about IP and subnet limitations. * * One-of ('config'): at most one of 'serviceIp', 'ipamConfig' could be set. */ serviceIp?: string /** - * Automated configuration of your Private Network endpoint with Scaleway IPAM - * service. One at the most per Database Instance or Read Replica (a Database - * Instance and its Read Replica can have different private networks). Cannot - * be updated (has to be deleted and recreated). + * Automated configuration of your Private Network endpoint with Scaleway IPAM service. One at the most per Database Instance or Read Replica (a Database Instance and its Read Replica can have different private networks). Cannot be updated (has to be deleted and recreated). * * One-of ('config'): at most one of 'serviceIp', 'ipamConfig' could be set. */ @@ -271,30 +296,52 @@ export interface ReadReplicaEndpointSpecPrivateNetwork { } export interface EngineVersion { - /** Database engine version. */ + /** + * Database engine version. + */ version: string - /** Database engine name. */ + /** + * Database engine name. + */ name: string - /** End of life date. */ + /** + * End of life date. + */ endOfLife?: Date - /** Engine settings available to be set. */ + /** + * Engine settings available to be set. + */ availableSettings: EngineSetting[] - /** Disabled versions cannot be created. */ + /** + * Disabled versions cannot be created. + */ disabled: boolean - /** Beta status of engine version. */ + /** + * Beta status of engine version. + */ beta: boolean - /** Engine settings available to be set at database initialization. */ + /** + * Engine settings available to be set at database initialization. + */ availableInitSettings: EngineSetting[] } export interface BackupSchedule { - /** Frequency of the backup schedule (in hours). */ + /** + * Frequency of the backup schedule (in hours). + */ frequency: number - /** Default retention period of backups (in days). */ + /** + * Default retention period of backups (in days). + */ retention: number - /** Defines whether the backup schedule feature is disabled. */ + /** + * Defines whether the backup schedule feature is disabled. + */ disabled: boolean - /** Next run of the backup schedule (accurate to 10 minutes). */ + /** + * Next run of the backup schedule (accurate to 10 minutes). + */ nextRunAt?: Date } @@ -308,42 +355,67 @@ export interface InstanceSetting { } export interface LogsPolicy { - /** Max age (in days) of remote logs to keep on the Database Instance. */ + /** + * Max age (in days) of remote logs to keep on the Database Instance. + */ maxAgeRetention?: number - /** Max disk size of remote logs to keep on the Database Instance. */ + /** + * Max disk size of remote logs to keep on the Database Instance. + */ totalDiskRetention?: number } export interface Maintenance { - /** Start date of the maintenance window. */ + /** + * Start date of the maintenance window. + */ startsAt?: Date - /** End date of the maintenance window. */ + /** + * End date of the maintenance window. + */ stopsAt?: Date - /** Closed maintenance date. */ + /** + * Closed maintenance date. + */ closedAt?: Date - /** Maintenance information message. */ + /** + * Maintenance information message. + */ reason: string - /** Status of the maintenance. */ + /** + * Status of the maintenance. + */ status: MaintenanceStatus - /** Time when Scaleway-side maintenance will be applied. */ + /** + * Time when Scaleway-side maintenance will be applied. + */ forcedAt?: Date } export interface ReadReplica { - /** UUID of the Read Replica. */ + /** + * UUID of the Read Replica. + */ id: string - /** Display Read Replica connection information. */ + /** + * Display Read Replica connection information. + */ endpoints: Endpoint[] - /** Read replica status. */ + /** + * Read replica status. + */ status: ReadReplicaStatus - /** Region the Read Replica is in. */ + /** + * Region the Read Replica is in. + */ region: ScwRegion /** - * Whether the replica is in the same availability zone as the main instance - * nodes or not. + * Whether the replica is in the same availability zone as the main instance nodes or not. */ sameZone: boolean - /** UUID of the Database Instance. */ + /** + * UUID of the Database Instance. + */ instanceId: string } @@ -361,24 +433,40 @@ export interface Volume { } export interface NodeTypeVolumeConstraintSizes { - /** [deprecated] Mimimum size required for the Volume. */ + /** + * [deprecated] Minimum size required for the Volume. + */ minSize: number - /** [deprecated] Maximum size required for the Volume. */ + /** + * [deprecated] Maximum size required for the Volume. + */ maxSize: number } export interface NodeTypeVolumeType { - /** Volume Type. */ + /** + * Volume Type. + */ type: VolumeType - /** The description of the Volume. */ + /** + * The description of the Volume. + */ description: string - /** Mimimum size required for the Volume. */ + /** + * Minimum size required for the Volume. + */ minSize: number - /** Maximum size required for the Volume. */ + /** + * Maximum size required for the Volume. + */ maxSize: number - /** Minimum increment level for a Block Storage volume size. */ + /** + * Minimum increment level for a Block Storage volume size. + */ chunkSize: number - /** The storage class of the volume. */ + /** + * The storage class of the volume. + */ class: StorageClass } @@ -394,7 +482,9 @@ export interface ACLRuleRequest { export interface ACLRule { ip: string - /** @deprecated */ + /** + * @deprecated + */ port?: number protocol: ACLRuleProtocol direction: ACLRuleDirection @@ -404,94 +494,128 @@ export interface ACLRule { export interface EndpointSpec { /** - * Load balancer endpoint specifications. Public endpoint for Database - * Instance which is systematically present. One per RDB instance. + * Load balancer endpoint specifications. Public endpoint for Database Instance which is systematically present. One per RDB instance. * - * One-of ('spec'): at most one of 'loadBalancer', 'privateNetwork' could be - * set. + * One-of ('spec'): at most one of 'loadBalancer', 'privateNetwork' could be set. */ loadBalancer?: EndpointSpecLoadBalancer /** - * Private Network endpoint specifications. One maximum per Database Instance - * or Read Replica (a Database Instance and its Read Replica can have - * different Private Networks). Cannot be updated (has to be deleted and - * recreated). + * Private Network endpoint specifications. One maximum per Database Instance or Read Replica (a Database Instance and its Read Replica can have different Private Networks). Cannot be updated (has to be deleted and recreated). * - * One-of ('spec'): at most one of 'loadBalancer', 'privateNetwork' could be - * set. + * One-of ('spec'): at most one of 'loadBalancer', 'privateNetwork' could be set. */ privateNetwork?: EndpointSpecPrivateNetwork } export interface ReadReplicaEndpointSpec { /** - * Direct access endpoint specifications. Public endpoint reserved for Read - * Replicas. One per Read Replica. + * Direct access endpoint specifications. Public endpoint reserved for Read Replicas. One per Read Replica. * - * One-of ('spec'): at most one of 'directAccess', 'privateNetwork' could be - * set. + * One-of ('spec'): at most one of 'directAccess', 'privateNetwork' could be set. */ directAccess?: ReadReplicaEndpointSpecDirectAccess /** - * Private Network endpoint specifications. One at the most per Read Replica. - * Cannot be updated (has to be deleted and recreated). + * Private Network endpoint specifications. One at the most per Read Replica. Cannot be updated (has to be deleted and recreated). * - * One-of ('spec'): at most one of 'directAccess', 'privateNetwork' could be - * set. + * One-of ('spec'): at most one of 'directAccess', 'privateNetwork' could be set. */ privateNetwork?: ReadReplicaEndpointSpecPrivateNetwork } export interface DatabaseBackup { - /** UUID of the database backup. */ + /** + * UUID of the database backup. + */ id: string - /** UUID of the Database Instance. */ + /** + * UUID of the Database Instance. + */ instanceId: string - /** Name of backed up database. */ + /** + * Name of backed up database. + */ databaseName: string - /** Name of the backup. */ + /** + * Name of the backup. + */ name: string - /** Status of the backup. */ + /** + * Status of the backup. + */ status: DatabaseBackupStatus - /** Size of the database backup. */ + /** + * Size of the database backup. + */ size?: number - /** Expiration date (must follow the ISO 8601 format). */ + /** + * Expiration date (must follow the ISO 8601 format). + */ expiresAt?: Date - /** Creation date (must follow the ISO 8601 format). */ + /** + * Creation date (must follow the ISO 8601 format). + */ createdAt?: Date - /** Updated date (must follow the ISO 8601 format). */ + /** + * Updated date (must follow the ISO 8601 format). + */ updatedAt?: Date - /** Name of the Database Instance of the backup. */ + /** + * Name of the Database Instance of the backup. + */ instanceName: string - /** URL you can download the backup from. */ + /** + * URL you can download the backup from. + */ downloadUrl?: string - /** Expiration date of the download link. */ + /** + * Expiration date of the download link. + */ downloadUrlExpiresAt?: Date - /** Region of the database backup. */ + /** + * Region of the database backup. + */ region: ScwRegion - /** Store logical backups in the same region as the source Database Instance. */ + /** + * Store logical backups in the same region as the source Database Instance. + */ sameRegion: boolean } export interface DatabaseEngine { - /** Engine name. */ + /** + * Engine name. + */ name: string - /** Engine logo URL. */ + /** + * Engine logo URL. + */ logoUrl: string - /** Available versions. */ + /** + * Available versions. + */ versions: EngineVersion[] - /** Region of this Database Instance. */ + /** + * Region of this Database Instance. + */ region: ScwRegion } export interface Database { - /** Name of the database. */ + /** + * Name of the database. + */ name: string - /** Name of the database owner. */ + /** + * Name of the database owner. + */ owner: string - /** Defines whether the database is managed or not. */ + /** + * Defines whether the database is managed or not. + */ managed: boolean - /** Size of the database. */ + /** + * Size of the database. + */ size: number } @@ -501,1152 +625,1509 @@ export interface ListInstanceLogsDetailsResponseInstanceLogDetail { } export interface InstanceLog { - /** Presigned Object Storage URL to download your log file. */ + /** + * Presigned Object Storage URL to download your log file. + */ downloadUrl?: string - /** UUID of the Database Instance log. */ + /** + * UUID of the Database Instance log. + */ id: string - /** Status of the logs in a Database Instance. */ + /** + * Status of the logs in a Database Instance. + */ status: InstanceLogStatus - /** Name of the underlying node. */ + /** + * Name of the underlying node. + */ nodeName: string - /** Expiration date (must follow the ISO 8601 format). */ + /** + * Expiration date (must follow the ISO 8601 format). + */ expiresAt?: Date - /** Creation date (must follow the ISO 8601 format). */ + /** + * Creation date (must follow the ISO 8601 format). + */ createdAt?: Date - /** Region the Database Instance is in. */ + /** + * Region the Database Instance is in. + */ region: ScwRegion } export interface Instance { - /** Creation date (must follow the ISO 8601 format). */ + /** + * Creation date (must follow the ISO 8601 format). + */ createdAt?: Date - /** Volumes of the Database Instance. */ + /** + * Volumes of the Database Instance. + */ volume?: Volume - /** Region the Database Instance is in. */ + /** + * Region the Database Instance is in. + */ region: ScwRegion - /** UUID of the Database Instance. */ + /** + * UUID of the Database Instance. + */ id: string - /** Name of the Database Instance. */ + /** + * Name of the Database Instance. + */ name: string - /** Organization ID the Database Instance belongs to. */ + /** + * Organization ID the Database Instance belongs to. + */ organizationId: string - /** Project ID the Database Instance belongs to. */ + /** + * Project ID the Database Instance belongs to. + */ projectId: string - /** Status of the Database Instance. */ + /** + * Status of the Database Instance. + */ status: InstanceStatus - /** Database engine of the database (PostgreSQL, MySQL, ...). */ + /** + * Database engine of the database (PostgreSQL, MySQL, ...). + */ engine: string - /** Available database engine versions for upgrade. */ + /** + * Available database engine versions for upgrade. + */ upgradableVersion: UpgradableVersion[] - /** @deprecated Endpoint of the Database Instance. */ + /** + * @deprecated Endpoint of the Database Instance. + */ endpoint?: Endpoint - /** List of tags applied to the Database Instance. */ + /** + * List of tags applied to the Database Instance. + */ tags: string[] - /** Advanced settings of the Database Instance. */ + /** + * Advanced settings of the Database Instance. + */ settings: InstanceSetting[] - /** Backup schedule of the Database Instance. */ + /** + * Backup schedule of the Database Instance. + */ backupSchedule?: BackupSchedule - /** Defines whether or not High-Availability is enabled. */ + /** + * Defines whether or not High-Availability is enabled. + */ isHaCluster: boolean - /** Read Replicas of the Database Instance. */ + /** + * Read Replicas of the Database Instance. + */ readReplicas: ReadReplica[] - /** Node type of the Database Instance. */ + /** + * Node type of the Database Instance. + */ nodeType: string - /** List of engine settings to be set at database initialization. */ + /** + * List of engine settings to be set at database initialization. + */ initSettings: InstanceSetting[] - /** List of Database Instance endpoints. */ + /** + * List of Database Instance endpoints. + */ endpoints: Endpoint[] - /** Logs policy of the Database Instance. */ + /** + * Logs policy of the Database Instance. + */ logsPolicy?: LogsPolicy - /** Store logical backups in the same region as the Database Instance. */ + /** + * Store logical backups in the same region as the Database Instance. + */ backupSameRegion: boolean - /** List of Database Instance maintenance events. */ + /** + * List of Database Instance maintenance events. + */ maintenances: Maintenance[] - /** Encryption at rest settings for your Database Instance. */ + /** + * Encryption at rest settings for your Database Instance. + */ encryption?: EncryptionAtRest } export interface NodeType { - /** Node Type name identifier. */ + /** + * Node Type name identifier. + */ name: string - /** Current stock status for the Node Type. */ + /** + * Current stock status for the Node Type. + */ stockStatus: NodeTypeStock - /** Current specs of the offer. */ + /** + * Current specs of the offer. + */ description: string - /** Number of virtual CPUs. */ + /** + * Number of virtual CPUs. + */ vcpus: number - /** Quantity of RAM. */ + /** + * Quantity of RAM. + */ memory: number - /** @deprecated {undefined} Deprecated Node Type volume constraints. */ + /** + * @deprecated [deprecated] Node Type volume constraints. + */ volumeConstraint?: NodeTypeVolumeConstraintSizes - /** @deprecated The Node Type is compliant with Block Storage. */ + /** + * @deprecated The Node Type is compliant with Block Storage. + */ isBssdCompatible?: boolean - /** The Node Type is currently disabled. */ + /** + * The Node Type is currently disabled. + */ disabled: boolean - /** The Node Type is currently in beta. */ + /** + * The Node Type is currently in beta. + */ beta: boolean - /** Available storage options for the Node Type. */ + /** + * Available storage options for the Node Type. + */ availableVolumeTypes: NodeTypeVolumeType[] - /** The Node Type can be used only with high availability option. */ + /** + * The Node Type can be used only with high availability option. + */ isHaRequired: boolean - /** Generation associated with the NodeType offer. */ + /** + * Generation associated with the NodeType offer. + */ generation: NodeTypeGeneration - /** Instance range associated with the NodeType offer. */ + /** + * Instance range associated with the NodeType offer. + */ instanceRange: string - /** Region the Node Type is in. */ + /** + * Region the Node Type is in. + */ region: ScwRegion } export interface Privilege { - /** Permission (Read, Read/Write, All, Custom). */ + /** + * Permission (Read, Read/Write, All, Custom). + */ permission: Permission - /** Name of the database. */ + /** + * Name of the database. + */ databaseName: string - /** Name of the user. */ + /** + * Name of the user. + */ userName: string } export interface Snapshot { - /** UUID of the snapshot. */ + /** + * UUID of the snapshot. + */ id: string - /** UUID of the Database Instance. */ + /** + * UUID of the Database Instance. + */ instanceId: string - /** Name of the snapshot. */ + /** + * Name of the snapshot. + */ name: string - /** Status of the snapshot. */ + /** + * Status of the snapshot. + */ status: SnapshotStatus - /** Size of the snapshot. */ + /** + * Size of the snapshot. + */ size?: number - /** Expiration date (must follow the ISO 8601 format). */ + /** + * Expiration date (must follow the ISO 8601 format). + */ expiresAt?: Date - /** Creation date (must follow the ISO 8601 format). */ + /** + * Creation date (must follow the ISO 8601 format). + */ createdAt?: Date - /** Updated date (must follow the ISO 8601 format). */ + /** + * Updated date (must follow the ISO 8601 format). + */ updatedAt?: Date - /** Name of the Database Instance of the snapshot. */ + /** + * Name of the Database Instance of the snapshot. + */ instanceName: string - /** Source node type. */ + /** + * Source node type. + */ nodeType: string - /** Type of volume where data is stored (lssd, bssd or sbs). */ + /** + * Type of volume where data is stored (lssd, bssd or sbs). + */ volumeType?: SnapshotVolumeType - /** Region of this snapshot. */ + /** + * Region of this snapshot. + */ region: ScwRegion } export interface User { /** - * Name of the user (Length must be between 1 and 63 characters for PostgreSQL - * and between 1 and 32 characters for MySQL. First character must be an - * alphabet character (a-zA-Z). Your username cannot start with '_rdb' or in - * PostgreSQL, 'pg_'. Only a-zA-Z0-9_$- characters are accepted). + * Name of the user (Length must be between 1 and 63 characters for PostgreSQL and between 1 and 32 characters for MySQL. First character must be an alphabet character (a-zA-Z). Your username cannot start with '_rdb' or in PostgreSQL, 'pg_'. Only a-zA-Z0-9_$- characters are accepted). */ name: string /** - * Defines whether or not a user got administrative privileges on the Database - * Instance. + * Defines whether or not a user got administrative privileges on the Database Instance. */ isAdmin: boolean } export interface UpgradeInstanceRequestMajorUpgradeWorkflow { /** - * This will create a new Database Instance with same specifications as the - * current one and perform a Database Engine upgrade. + * This will create a new Database Instance with same specifications as the current one and perform a Database Engine upgrade. */ upgradableVersionId: string /** - * At the end of the migration procedure this option let you migrate all your - * database endpoint to the upgraded instance. + * At the end of the migration procedure this option let you migrate all your database endpoint to the upgraded instance. */ withEndpoints: boolean } export type AddInstanceACLRulesRequest = { /** - * Region to target. If none is passed will use default region from the - * config. + * Region to target. If none is passed will use default region from the config. */ region?: ScwRegion - /** UUID of the Database Instance you want to add ACL rules to. */ + /** + * UUID of the Database Instance you want to add ACL rules to. + */ instanceId: string - /** ACL rules to add to the Database Instance. */ + /** + * ACL rules to add to the Database Instance. + */ rules: ACLRuleRequest[] } export interface AddInstanceACLRulesResponse { - /** ACL Rules enabled for the Database Instance. */ + /** + * ACL Rules enabled for the Database Instance. + */ rules: ACLRule[] } export type AddInstanceSettingsRequest = { /** - * Region to target. If none is passed will use default region from the - * config. + * Region to target. If none is passed will use default region from the config. */ region?: ScwRegion - /** UUID of the Database Instance you want to add settings to. */ + /** + * UUID of the Database Instance you want to add settings to. + */ instanceId: string - /** Settings to add to the Database Instance. */ + /** + * Settings to add to the Database Instance. + */ settings: InstanceSetting[] } export interface AddInstanceSettingsResponse { - /** Settings available on the Database Instance. */ + /** + * Settings available on the Database Instance. + */ settings: InstanceSetting[] } export type ApplyInstanceMaintenanceRequest = { /** - * Region to target. If none is passed will use default region from the - * config. + * Region to target. If none is passed will use default region from the config. */ region?: ScwRegion - /** UUID of the Database Instance you want to apply maintenance. */ + /** + * UUID of the Database Instance you want to apply maintenance. + */ instanceId: string } export type CloneInstanceRequest = { /** - * Region to target. If none is passed will use default region from the - * config. + * Region to target. If none is passed will use default region from the config. */ region?: ScwRegion - /** UUID of the Database Instance you want to clone. */ + /** + * UUID of the Database Instance you want to clone. + */ instanceId: string - /** Name of the Database Instance clone. */ + /** + * Name of the Database Instance clone. + */ name: string - /** Node type of the clone. */ + /** + * Node type of the clone. + */ nodeType?: string } export type CreateDatabaseBackupRequest = { /** - * Region to target. If none is passed will use default region from the - * config. + * Region to target. If none is passed will use default region from the config. */ region?: ScwRegion - /** UUID of the Database Instance. */ + /** + * UUID of the Database Instance. + */ instanceId: string - /** Name of the database you want to back up. */ + /** + * Name of the database you want to back up. + */ databaseName: string - /** Name of the backup. */ + /** + * Name of the backup. + */ name?: string - /** Expiration date (must follow the ISO 8601 format). */ + /** + * Expiration date (must follow the ISO 8601 format). + */ expiresAt?: Date } export type CreateDatabaseRequest = { /** - * Region to target. If none is passed will use default region from the - * config. + * Region to target. If none is passed will use default region from the config. */ region?: ScwRegion - /** UUID of the Database Instance where to create the database. */ + /** + * UUID of the Database Instance where to create the database. + */ instanceId: string - /** Name of the database. */ + /** + * Name of the database. + */ name: string } export type CreateEndpointRequest = { /** - * Region to target. If none is passed will use default region from the - * config. + * Region to target. If none is passed will use default region from the config. */ region?: ScwRegion - /** UUID of the Database Instance you to which you want to add an endpoint. */ + /** + * UUID of the Database Instance you to which you want to add an endpoint. + */ instanceId: string - /** Specification of the endpoint you want to create. */ + /** + * Specification of the endpoint you want to create. + */ endpointSpec?: EndpointSpec } export type CreateInstanceFromSnapshotRequest = { /** - * Region to target. If none is passed will use default region from the - * config. + * Region to target. If none is passed will use default region from the config. */ region?: ScwRegion - /** Block snapshot of the Database Instance. */ + /** + * Block snapshot of the Database Instance. + */ snapshotId: string - /** Name of the Database Instance created with the snapshot. */ + /** + * Name of the Database Instance created with the snapshot. + */ instanceName: string /** - * Defines whether or not High-Availability is enabled on the new Database - * Instance. + * Defines whether or not High-Availability is enabled on the new Database Instance. */ isHaCluster?: boolean - /** The node type used to restore the snapshot. */ + /** + * The node type used to restore the snapshot. + */ nodeType?: string } export type CreateInstanceRequest = { /** - * Region to target. If none is passed will use default region from the - * config. + * Region to target. If none is passed will use default region from the config. */ region?: ScwRegion /** * @deprecated Please use project_id instead. * - * One-of ('projectIdentifier'): at most one of 'projectId', 'organizationId' - * could be set. + * One-of ('projectIdentifier'): at most one of 'projectId', 'organizationId' could be set. */ organizationId?: string /** * The Project ID on which the Database Instance will be created. * - * One-of ('projectIdentifier'): at most one of 'projectId', 'organizationId' - * could be set. + * One-of ('projectIdentifier'): at most one of 'projectId', 'organizationId' could be set. */ projectId?: string - /** Name of the Database Instance. */ + /** + * Name of the Database Instance. + */ name?: string - /** Database engine of the Database Instance (PostgreSQL, MySQL, ...). */ + /** + * Database engine of the Database Instance (PostgreSQL, MySQL, ...). + */ engine: string - /** Username created when the Database Instance is created. */ + /** + * Username created when the Database Instance is created. + */ userName: string /** - * Password of the user. Password must be between 8 and 128 characters, - * contain at least one digit, one uppercase, one lowercase and one special - * character. + * Password of the user. Password must be between 8 and 128 characters, contain at least one digit, one uppercase, one lowercase and one special character. */ password: string - /** Type of node to use for the Database Instance. */ + /** + * Type of node to use for the Database Instance. + */ nodeType: string - /** Defines whether or not High-Availability is enabled. */ + /** + * Defines whether or not High-Availability is enabled. + */ isHaCluster: boolean - /** Defines whether or not backups are disabled. */ + /** + * Defines whether or not backups are disabled. + */ disableBackup: boolean - /** Tags to apply to the Database Instance. */ + /** + * Tags to apply to the Database Instance. + */ tags?: string[] - /** List of engine settings to be set upon Database Instance initialization. */ + /** + * List of engine settings to be set upon Database Instance initialization. + */ initSettings?: InstanceSetting[] - /** Type of volume where data is stored (lssd, bssd, ...). */ + /** + * Type of volume where data is stored (lssd, bssd, ...). + */ volumeType?: VolumeType - /** Volume size when volume_type is not lssd. */ + /** + * Volume size when volume_type is not lssd. + */ volumeSize: number /** - * One or multiple EndpointSpec used to expose your Database Instance. A - * load_balancer public endpoint is systematically created. + * One or multiple EndpointSpec used to expose your Database Instance. A load_balancer public endpoint is systematically created. */ initEndpoints?: EndpointSpec[] /** - * Defines whether to or not to store logical backups in the same region as - * the Database Instance. + * Defines whether to or not to store logical backups in the same region as the Database Instance. */ backupSameRegion: boolean - /** Encryption at rest settings for your Database Instance. */ + /** + * Encryption at rest settings for your Database Instance. + */ encryption?: EncryptionAtRest } export type CreateReadReplicaEndpointRequest = { /** - * Region to target. If none is passed will use default region from the - * config. + * Region to target. If none is passed will use default region from the config. */ region?: ScwRegion - /** UUID of the Read Replica. */ + /** + * UUID of the Read Replica. + */ readReplicaId: string - /** Specification of the endpoint you want to create. */ + /** + * Specification of the endpoint you want to create. + */ endpointSpec: ReadReplicaEndpointSpec[] } export type CreateReadReplicaRequest = { /** - * Region to target. If none is passed will use default region from the - * config. + * Region to target. If none is passed will use default region from the config. */ region?: ScwRegion - /** UUID of the Database Instance you want to create a Read Replica from. */ + /** + * UUID of the Database Instance you want to create a Read Replica from. + */ instanceId: string - /** Specification of the endpoint you want to create. */ + /** + * Specification of the endpoint you want to create. + */ endpointSpec?: ReadReplicaEndpointSpec[] /** - * Defines whether to create the replica in the same availability zone as the - * main instance nodes or not. + * Defines whether to create the replica in the same availability zone as the main instance nodes or not. */ sameZone?: boolean } export type CreateSnapshotRequest = { /** - * Region to target. If none is passed will use default region from the - * config. + * Region to target. If none is passed will use default region from the config. */ region?: ScwRegion - /** UUID of the Database Instance. */ + /** + * UUID of the Database Instance. + */ instanceId: string - /** Name of the snapshot. */ + /** + * Name of the snapshot. + */ name?: string - /** Expiration date (must follow the ISO 8601 format). */ + /** + * Expiration date (must follow the ISO 8601 format). + */ expiresAt?: Date } export type CreateUserRequest = { /** - * Region to target. If none is passed will use default region from the - * config. + * Region to target. If none is passed will use default region from the config. */ region?: ScwRegion - /** UUID of the Database Instance in which you want to create a user. */ + /** + * UUID of the Database Instance in which you want to create a user. + */ instanceId: string - /** Name of the user you want to create. */ + /** + * Name of the user you want to create. + */ name: string /** - * Password of the user you want to create. Password must be between 8 and 128 - * characters, contain at least one digit, one uppercase, one lowercase and - * one special character. + * Password of the user you want to create. Password must be between 8 and 128 characters, contain at least one digit, one uppercase, one lowercase and one special character. */ password: string - /** Defines whether the user will have administrative privileges. */ + /** + * Defines whether the user will have administrative privileges. + */ isAdmin: boolean } export type DeleteDatabaseBackupRequest = { /** - * Region to target. If none is passed will use default region from the - * config. + * Region to target. If none is passed will use default region from the config. */ region?: ScwRegion - /** UUID of the database backup to delete. */ + /** + * UUID of the database backup to delete. + */ databaseBackupId: string } export type DeleteDatabaseRequest = { /** - * Region to target. If none is passed will use default region from the - * config. + * Region to target. If none is passed will use default region from the config. */ region?: ScwRegion - /** UUID of the Database Instance where to delete the database. */ + /** + * UUID of the Database Instance where to delete the database. + */ instanceId: string - /** Name of the database to delete. */ + /** + * Name of the database to delete. + */ name: string } export type DeleteEndpointRequest = { /** - * Region to target. If none is passed will use default region from the - * config. + * Region to target. If none is passed will use default region from the config. */ region?: ScwRegion - /** This endpoint can also be used to delete a Read Replica endpoint. */ + /** + * This endpoint can also be used to delete a Read Replica endpoint. + */ endpointId: string } export type DeleteInstanceACLRulesRequest = { /** - * Region to target. If none is passed will use default region from the - * config. + * Region to target. If none is passed will use default region from the config. */ region?: ScwRegion - /** UUID of the Database Instance you want to delete an ACL rule from. */ + /** + * UUID of the Database Instance you want to delete an ACL rule from. + */ instanceId: string - /** IP addresses defined in the ACL rules of the Database Instance. */ + /** + * IP addresses defined in the ACL rules of the Database Instance. + */ aclRuleIps: string[] } export interface DeleteInstanceACLRulesResponse { - /** IP addresses defined in the ACL rules of the Database Instance. */ + /** + * IP addresses defined in the ACL rules of the Database Instance. + */ rules: ACLRule[] } export type DeleteInstanceRequest = { /** - * Region to target. If none is passed will use default region from the - * config. + * Region to target. If none is passed will use default region from the config. */ region?: ScwRegion - /** UUID of the Database Instance to delete. */ + /** + * UUID of the Database Instance to delete. + */ instanceId: string } export type DeleteInstanceSettingsRequest = { /** - * Region to target. If none is passed will use default region from the - * config. + * Region to target. If none is passed will use default region from the config. */ region?: ScwRegion - /** UUID of the Database Instance to delete settings from. */ + /** + * UUID of the Database Instance to delete settings from. + */ instanceId: string - /** Settings names to delete. */ + /** + * Settings names to delete. + */ settingNames: string[] } export interface DeleteInstanceSettingsResponse { - /** Settings names to delete from the Database Instance. */ + /** + * Settings names to delete from the Database Instance. + */ settings: InstanceSetting[] } export type DeleteReadReplicaRequest = { /** - * Region to target. If none is passed will use default region from the - * config. + * Region to target. If none is passed will use default region from the config. */ region?: ScwRegion - /** UUID of the Read Replica. */ + /** + * UUID of the Read Replica. + */ readReplicaId: string } export type DeleteSnapshotRequest = { /** - * Region to target. If none is passed will use default region from the - * config. + * Region to target. If none is passed will use default region from the config. */ region?: ScwRegion - /** UUID of the snapshot to delete. */ + /** + * UUID of the snapshot to delete. + */ snapshotId: string } export type DeleteUserRequest = { /** - * Region to target. If none is passed will use default region from the - * config. + * Region to target. If none is passed will use default region from the config. */ region?: ScwRegion - /** UUID of the Database Instance to delete the user from. */ + /** + * UUID of the Database Instance to delete the user from. + */ instanceId: string - /** Name of the user. */ + /** + * Name of the user. + */ name: string } export type ExportDatabaseBackupRequest = { /** - * Region to target. If none is passed will use default region from the - * config. + * Region to target. If none is passed will use default region from the config. */ region?: ScwRegion - /** UUID of the database backup you want to export. */ + /** + * UUID of the database backup you want to export. + */ databaseBackupId: string } export type GetDatabaseBackupRequest = { /** - * Region to target. If none is passed will use default region from the - * config. + * Region to target. If none is passed will use default region from the config. */ region?: ScwRegion - /** UUID of the database backup. */ + /** + * UUID of the database backup. + */ databaseBackupId: string } export type GetEndpointRequest = { /** - * Region to target. If none is passed will use default region from the - * config. + * Region to target. If none is passed will use default region from the config. */ region?: ScwRegion - /** UUID of the endpoint you want to get. */ + /** + * UUID of the endpoint you want to get. + */ endpointId: string } export type GetInstanceCertificateRequest = { /** - * Region to target. If none is passed will use default region from the - * config. + * Region to target. If none is passed will use default region from the config. */ region?: ScwRegion - /** UUID of the Database Instance. */ + /** + * UUID of the Database Instance. + */ instanceId: string } export type GetInstanceLogRequest = { /** - * Region to target. If none is passed will use default region from the - * config. + * Region to target. If none is passed will use default region from the config. */ region?: ScwRegion - /** UUID of the instance_log you want. */ + /** + * UUID of the instance_log you want. + */ instanceLogId: string } export type GetInstanceMetricsRequest = { /** - * Region to target. If none is passed will use default region from the - * config. + * Region to target. If none is passed will use default region from the config. */ region?: ScwRegion - /** UUID of the Database Instance. */ + /** + * UUID of the Database Instance. + */ instanceId: string - /** Start date to gather metrics from. */ + /** + * Start date to gather metrics from. + */ startDate?: Date - /** End date to gather metrics from. */ + /** + * End date to gather metrics from. + */ endDate?: Date - /** Name of the metric to gather. */ + /** + * Name of the metric to gather. + */ metricName?: string } export type GetInstanceRequest = { /** - * Region to target. If none is passed will use default region from the - * config. + * Region to target. If none is passed will use default region from the config. */ region?: ScwRegion - /** UUID of the Database Instance. */ + /** + * UUID of the Database Instance. + */ instanceId: string } export type GetReadReplicaRequest = { /** - * Region to target. If none is passed will use default region from the - * config. + * Region to target. If none is passed will use default region from the config. */ region?: ScwRegion - /** UUID of the Read Replica. */ + /** + * UUID of the Read Replica. + */ readReplicaId: string } export type GetSnapshotRequest = { /** - * Region to target. If none is passed will use default region from the - * config. + * Region to target. If none is passed will use default region from the config. */ region?: ScwRegion - /** UUID of the snapshot. */ + /** + * UUID of the snapshot. + */ snapshotId: string } export interface InstanceMetrics { - /** Time series of metrics of a Database Instance. */ + /** + * Time series of metrics of a Database Instance. + */ timeseries: TimeSeries[] } export type ListDatabaseBackupsRequest = { /** - * Region to target. If none is passed will use default region from the - * config. + * Region to target. If none is passed will use default region from the config. */ region?: ScwRegion - /** Name of the database backups. */ + /** + * Name of the database backups. + */ name?: string - /** Criteria to use when ordering database backups listing. */ + /** + * Criteria to use when ordering database backups listing. + */ orderBy?: ListDatabaseBackupsRequestOrderBy - /** UUID of the Database Instance. */ + /** + * UUID of the Database Instance. + */ instanceId?: string - /** Organization ID of the Organization the database backups belong to. */ + /** + * Organization ID of the Organization the database backups belong to. + */ organizationId?: string - /** Project ID of the Project the database backups belong to. */ + /** + * Project ID of the Project the database backups belong to. + */ projectId?: string page?: number pageSize?: number } export interface ListDatabaseBackupsResponse { - /** List of database backups. */ + /** + * List of database backups. + */ databaseBackups: DatabaseBackup[] - /** Total count of database backups available. */ + /** + * Total count of database backups available. + */ totalCount: number } export type ListDatabaseEnginesRequest = { /** - * Region to target. If none is passed will use default region from the - * config. + * Region to target. If none is passed will use default region from the config. */ region?: ScwRegion - /** Name of the database engine. */ + /** + * Name of the database engine. + */ name?: string - /** Version of the database engine. */ + /** + * Version of the database engine. + */ version?: string page?: number pageSize?: number } export interface ListDatabaseEnginesResponse { - /** List of the available database engines. */ + /** + * List of the available database engines. + */ engines: DatabaseEngine[] - /** Total count of database engines available. */ + /** + * Total count of database engines available. + */ totalCount: number } export type ListDatabasesRequest = { /** - * Region to target. If none is passed will use default region from the - * config. + * Region to target. If none is passed will use default region from the config. */ region?: ScwRegion - /** UUID of the Database Instance to list the databases of. */ + /** + * UUID of the Database Instance to list the databases of. + */ instanceId: string - /** Name of the database. */ + /** + * Name of the database. + */ name?: string - /** Defines whether or not the database is managed. */ + /** + * Defines whether or not the database is managed. + */ managed?: boolean - /** User that owns this database. */ + /** + * User that owns this database. + */ owner?: string - /** Criteria to use when ordering database listing. */ + /** + * Criteria to use when ordering database listing. + */ orderBy?: ListDatabasesRequestOrderBy page?: number pageSize?: number } export interface ListDatabasesResponse { - /** List of the databases. */ + /** + * List of the databases. + */ databases: Database[] - /** Total count of databases present on a Database Instance. */ + /** + * Total count of databases present on a Database Instance. + */ totalCount: number } export type ListInstanceACLRulesRequest = { /** - * Region to target. If none is passed will use default region from the - * config. + * Region to target. If none is passed will use default region from the config. */ region?: ScwRegion - /** UUID of the Database Instance. */ + /** + * UUID of the Database Instance. + */ instanceId: string page?: number pageSize?: number } export interface ListInstanceACLRulesResponse { - /** List of ACL rules present on a Database Instance. */ + /** + * List of ACL rules present on a Database Instance. + */ rules: ACLRule[] - /** Total count of ACL rules present on a Database Instance. */ + /** + * Total count of ACL rules present on a Database Instance. + */ totalCount: number } export type ListInstanceLogsDetailsRequest = { /** - * Region to target. If none is passed will use default region from the - * config. + * Region to target. If none is passed will use default region from the config. */ region?: ScwRegion - /** UUID of the Database Instance you want logs of. */ + /** + * UUID of the Database Instance you want logs of. + */ instanceId: string } export interface ListInstanceLogsDetailsResponse { - /** Remote Database Instance logs details. */ + /** + * Remote Database Instance logs details. + */ details: ListInstanceLogsDetailsResponseInstanceLogDetail[] } export type ListInstanceLogsRequest = { /** - * Region to target. If none is passed will use default region from the - * config. + * Region to target. If none is passed will use default region from the config. */ region?: ScwRegion - /** UUID of the Database Instance you want logs of. */ + /** + * UUID of the Database Instance you want logs of. + */ instanceId: string - /** Criteria to use when ordering Database Instance logs listing. */ + /** + * Criteria to use when ordering Database Instance logs listing. + */ orderBy?: ListInstanceLogsRequestOrderBy } export interface ListInstanceLogsResponse { - /** Available logs in a Database Instance. */ + /** + * Available logs in a Database Instance. + */ instanceLogs: InstanceLog[] } export type ListInstancesRequest = { /** - * Region to target. If none is passed will use default region from the - * config. + * Region to target. If none is passed will use default region from the config. */ region?: ScwRegion - /** List Database Instances that have a given tag. */ + /** + * List Database Instances that have a given tag. + */ tags?: string[] - /** Lists Database Instances that match a name pattern. */ + /** + * Lists Database Instances that match a name pattern. + */ name?: string - /** Criteria to use when ordering Database Instance listings. */ + /** + * Criteria to use when ordering Database Instance listings. + */ orderBy?: ListInstancesRequestOrderBy - /** Please use project_id instead. */ + /** + * Please use project_id instead. + */ organizationId?: string - /** Project ID to list the Database Instance of. */ + /** + * Project ID to list the Database Instance of. + */ projectId?: string page?: number pageSize?: number } export interface ListInstancesResponse { - /** List of all Database Instances available in an Organization or Project. */ + /** + * List of all Database Instances available in an Organization or Project. + */ instances: Instance[] - /** Total count of Database Instances available in a Organization or Project. */ + /** + * Total count of Database Instances available in a Organization or Project. + */ totalCount: number } export type ListNodeTypesRequest = { /** - * Region to target. If none is passed will use default region from the - * config. + * Region to target. If none is passed will use default region from the config. */ region?: ScwRegion - /** Defines whether or not to include disabled types. */ + /** + * Defines whether or not to include disabled types. + */ includeDisabledTypes: boolean page?: number pageSize?: number } export interface ListNodeTypesResponse { - /** Types of the node. */ + /** + * Types of the node. + */ nodeTypes: NodeType[] - /** Total count of node-types available. */ + /** + * Total count of node-types available. + */ totalCount: number } export type ListPrivilegesRequest = { /** - * Region to target. If none is passed will use default region from the - * config. + * Region to target. If none is passed will use default region from the config. */ region?: ScwRegion - /** UUID of the Database Instance. */ + /** + * UUID of the Database Instance. + */ instanceId: string - /** Criteria to use when ordering privileges listing. */ + /** + * Criteria to use when ordering privileges listing. + */ orderBy?: ListPrivilegesRequestOrderBy page?: number pageSize?: number - /** Name of the database. */ + /** + * Name of the database. + */ databaseName?: string - /** Name of the user. */ + /** + * Name of the user. + */ userName?: string } export interface ListPrivilegesResponse { - /** Privileges of a user in a database in a Database Instance. */ + /** + * Privileges of a user in a database in a Database Instance. + */ privileges: Privilege[] - /** Total count of privileges present on a database. */ + /** + * Total count of privileges present on a database. + */ totalCount: number } export type ListSnapshotsRequest = { /** - * Region to target. If none is passed will use default region from the - * config. + * Region to target. If none is passed will use default region from the config. */ region?: ScwRegion - /** Name of the snapshot. */ + /** + * Name of the snapshot. + */ name?: string - /** Criteria to use when ordering snapshot listing. */ + /** + * Criteria to use when ordering snapshot listing. + */ orderBy?: ListSnapshotsRequestOrderBy - /** UUID of the Database Instance. */ + /** + * UUID of the Database Instance. + */ instanceId?: string - /** Organization ID the snapshots belongs to. */ + /** + * Organization ID the snapshots belongs to. + */ organizationId?: string - /** Project ID the snapshots belongs to. */ + /** + * Project ID the snapshots belongs to. + */ projectId?: string page?: number pageSize?: number } export interface ListSnapshotsResponse { - /** List of snapshots. */ + /** + * List of snapshots. + */ snapshots: Snapshot[] - /** Total count of snapshots available. */ + /** + * Total count of snapshots available. + */ totalCount: number } export type ListUsersRequest = { /** - * Region to target. If none is passed will use default region from the - * config. + * Region to target. If none is passed will use default region from the config. */ region?: ScwRegion - /** UUID of the Database Instance. */ + /** + * UUID of the Database Instance. + */ instanceId: string - /** Name of the user. */ + /** + * Name of the user. + */ name?: string - /** Criteria to use when requesting user listing. */ + /** + * Criteria to use when requesting user listing. + */ orderBy?: ListUsersRequestOrderBy page?: number pageSize?: number } export interface ListUsersResponse { - /** List of users in a Database Instance. */ + /** + * List of users in a Database Instance. + */ users: User[] - /** Total count of users present on a Database Instance. */ + /** + * Total count of users present on a Database Instance. + */ totalCount: number } export type MigrateEndpointRequest = { /** - * Region to target. If none is passed will use default region from the - * config. + * Region to target. If none is passed will use default region from the config. */ region?: ScwRegion - /** UUID of the endpoint you want to migrate. */ + /** + * UUID of the endpoint you want to migrate. + */ endpointId: string - /** UUID of the instance you want to attach the endpoint to. */ + /** + * UUID of the instance you want to attach the endpoint to. + */ instanceId: string } export type PrepareInstanceLogsRequest = { /** - * Region to target. If none is passed will use default region from the - * config. + * Region to target. If none is passed will use default region from the config. */ region?: ScwRegion - /** UUID of the Database Instance you want logs of. */ + /** + * UUID of the Database Instance you want logs of. + */ instanceId: string - /** Start datetime of your log. (RFC 3339 format). */ + /** + * Start datetime of your log. (RFC 3339 format). + */ startDate?: Date - /** End datetime of your log. (RFC 3339 format). */ + /** + * End datetime of your log. (RFC 3339 format). + */ endDate?: Date } export interface PrepareInstanceLogsResponse { - /** Instance logs for a Database Instance between a start and an end date. */ + /** + * Instance logs for a Database Instance between a start and an end date. + */ instanceLogs: InstanceLog[] } export type PromoteReadReplicaRequest = { /** - * Region to target. If none is passed will use default region from the - * config. + * Region to target. If none is passed will use default region from the config. */ region?: ScwRegion - /** UUID of the Read Replica. */ + /** + * UUID of the Read Replica. + */ readReplicaId: string } export type PurgeInstanceLogsRequest = { /** - * Region to target. If none is passed will use default region from the - * config. + * Region to target. If none is passed will use default region from the config. */ region?: ScwRegion - /** UUID of the Database Instance you want logs of. */ + /** + * UUID of the Database Instance you want logs of. + */ instanceId: string - /** Given log name to purge. */ + /** + * Given log name to purge. + */ logName?: string } export type RenewInstanceCertificateRequest = { /** - * Region to target. If none is passed will use default region from the - * config. + * Region to target. If none is passed will use default region from the config. */ region?: ScwRegion - /** UUID of the Database Instance you want logs of. */ + /** + * UUID of the Database Instance you want logs of. + */ instanceId: string } export type ResetReadReplicaRequest = { /** - * Region to target. If none is passed will use default region from the - * config. + * Region to target. If none is passed will use default region from the config. */ region?: ScwRegion - /** UUID of the Read Replica. */ + /** + * UUID of the Read Replica. + */ readReplicaId: string } export type RestartInstanceRequest = { /** - * Region to target. If none is passed will use default region from the - * config. + * Region to target. If none is passed will use default region from the config. */ region?: ScwRegion - /** UUID of the Database Instance you want to restart. */ + /** + * UUID of the Database Instance you want to restart. + */ instanceId: string } export type RestoreDatabaseBackupRequest = { /** - * Region to target. If none is passed will use default region from the - * config. + * Region to target. If none is passed will use default region from the config. */ region?: ScwRegion - /** Backup of a logical database. */ + /** + * Backup of a logical database. + */ databaseBackupId: string /** - * Defines the destination database to restore into a specified database (the - * default destination is set to the origin database of the backup). + * Defines the destination database to restore into a specified database (the default destination is set to the origin database of the backup). */ databaseName?: string - /** Defines the Database Instance where the backup has to be restored. */ + /** + * Defines the Database Instance where the backup has to be restored. + */ instanceId: string } export type SetInstanceACLRulesRequest = { /** - * Region to target. If none is passed will use default region from the - * config. + * Region to target. If none is passed will use default region from the config. */ region?: ScwRegion - /** UUID of the Database Instance where the ACL rules must be set. */ + /** + * UUID of the Database Instance where the ACL rules must be set. + */ instanceId: string - /** ACL rules to define for the Database Instance. */ + /** + * ACL rules to define for the Database Instance. + */ rules: ACLRuleRequest[] } export interface SetInstanceACLRulesResponse { - /** ACLs rules configured for a Database Instance. */ + /** + * ACLs rules configured for a Database Instance. + */ rules: ACLRule[] } export type SetInstanceSettingsRequest = { /** - * Region to target. If none is passed will use default region from the - * config. + * Region to target. If none is passed will use default region from the config. */ region?: ScwRegion - /** UUID of the Database Instance where the settings must be set. */ + /** + * UUID of the Database Instance where the settings must be set. + */ instanceId: string - /** Settings to define for the Database Instance. */ + /** + * Settings to define for the Database Instance. + */ settings: InstanceSetting[] } export interface SetInstanceSettingsResponse { - /** Settings configured for a Database Instance. */ + /** + * Settings configured for a Database Instance. + */ settings: InstanceSetting[] } export type SetPrivilegeRequest = { /** - * Region to target. If none is passed will use default region from the - * config. + * Region to target. If none is passed will use default region from the config. */ region?: ScwRegion - /** UUID of the Database Instance. */ + /** + * UUID of the Database Instance. + */ instanceId: string - /** Name of the database. */ + /** + * Name of the database. + */ databaseName: string - /** Name of the user. */ + /** + * Name of the user. + */ userName: string - /** Permission to set (Read, Read/Write, All, Custom). */ + /** + * Permission to set (Read, Read/Write, All, Custom). + */ permission?: Permission } export type UpdateDatabaseBackupRequest = { /** - * Region to target. If none is passed will use default region from the - * config. + * Region to target. If none is passed will use default region from the config. */ region?: ScwRegion - /** UUID of the database backup to update. */ + /** + * UUID of the database backup to update. + */ databaseBackupId: string - /** Name of the Database Backup. */ + /** + * Name of the Database Backup. + */ name?: string - /** Expiration date (must follow the ISO 8601 format). */ + /** + * Expiration date (must follow the ISO 8601 format). + */ expiresAt?: Date } export type UpdateInstanceRequest = { /** - * Region to target. If none is passed will use default region from the - * config. + * Region to target. If none is passed will use default region from the config. */ region?: ScwRegion - /** UUID of the Database Instance to update. */ + /** + * UUID of the Database Instance to update. + */ instanceId: string - /** In hours. */ + /** + * In hours. + */ backupScheduleFrequency?: number - /** In days. */ + /** + * In days. + */ backupScheduleRetention?: number - /** Defines whether or not the backup schedule is disabled. */ + /** + * Defines whether or not the backup schedule is disabled. + */ isBackupScheduleDisabled?: boolean - /** Name of the Database Instance. */ + /** + * Name of the Database Instance. + */ name?: string - /** Tags of a Database Instance. */ + /** + * Tags of a Database Instance. + */ tags?: string[] - /** Logs policy of the Database Instance. */ + /** + * Logs policy of the Database Instance. + */ logsPolicy?: LogsPolicy - /** Store logical backups in the same region as the Database Instance. */ + /** + * Store logical backups in the same region as the Database Instance. + */ backupSameRegion?: boolean - /** Defines the start time of the autobackup. */ + /** + * Defines the start time of the autobackup. + */ backupScheduleStartHour?: number } export type UpdateSnapshotRequest = { /** - * Region to target. If none is passed will use default region from the - * config. + * Region to target. If none is passed will use default region from the config. */ region?: ScwRegion - /** UUID of the snapshot to update. */ + /** + * UUID of the snapshot to update. + */ snapshotId: string - /** Name of the snapshot. */ + /** + * Name of the snapshot. + */ name?: string - /** Expiration date (must follow the ISO 8601 format). */ + /** + * Expiration date (must follow the ISO 8601 format). + */ expiresAt?: Date } export type UpdateUserRequest = { /** - * Region to target. If none is passed will use default region from the - * config. + * Region to target. If none is passed will use default region from the config. */ region?: ScwRegion - /** UUID of the Database Instance the user belongs to. */ + /** + * UUID of the Database Instance the user belongs to. + */ instanceId: string - /** Name of the database user. */ + /** + * Name of the database user. + */ name: string /** - * Password of the database user. Password must be between 8 and 128 - * characters, contain at least one digit, one uppercase, one lowercase and - * one special character. + * Password of the database user. Password must be between 8 and 128 characters, contain at least one digit, one uppercase, one lowercase and one special character. */ password?: string - /** Defines whether or not this user got administrative privileges. */ + /** + * Defines whether or not this user got administrative privileges. + */ isAdmin?: boolean } export type UpgradeInstanceRequest = { /** - * Region to target. If none is passed will use default region from the - * config. + * Region to target. If none is passed will use default region from the config. */ region?: ScwRegion - /** UUID of the Database Instance you want to upgrade. */ + /** + * UUID of the Database Instance you want to upgrade. + */ instanceId: string /** * Node type of the Database Instance you want to upgrade to. * - * One-of ('upgradeTarget'): at most one of 'nodeType', 'enableHa', - * 'volumeSize', 'volumeType', 'upgradableVersionId', 'majorUpgradeWorkflow', - * 'enableEncryption' could be set. + * One-of ('upgradeTarget'): at most one of 'nodeType', 'enableHa', 'volumeSize', 'volumeType', 'upgradableVersionId', 'majorUpgradeWorkflow', 'enableEncryption' could be set. */ nodeType?: string /** - * Defines whether or not high availability should be enabled on the Database - * Instance. + * Defines whether or not high availability should be enabled on the Database Instance. * - * One-of ('upgradeTarget'): at most one of 'nodeType', 'enableHa', - * 'volumeSize', 'volumeType', 'upgradableVersionId', 'majorUpgradeWorkflow', - * 'enableEncryption' could be set. + * One-of ('upgradeTarget'): at most one of 'nodeType', 'enableHa', 'volumeSize', 'volumeType', 'upgradableVersionId', 'majorUpgradeWorkflow', 'enableEncryption' could be set. */ enableHa?: boolean /** * Increase your block storage volume size. * - * One-of ('upgradeTarget'): at most one of 'nodeType', 'enableHa', - * 'volumeSize', 'volumeType', 'upgradableVersionId', 'majorUpgradeWorkflow', - * 'enableEncryption' could be set. + * One-of ('upgradeTarget'): at most one of 'nodeType', 'enableHa', 'volumeSize', 'volumeType', 'upgradableVersionId', 'majorUpgradeWorkflow', 'enableEncryption' could be set. */ volumeSize?: number /** * Change your Database Instance storage type. * - * One-of ('upgradeTarget'): at most one of 'nodeType', 'enableHa', - * 'volumeSize', 'volumeType', 'upgradableVersionId', 'majorUpgradeWorkflow', - * 'enableEncryption' could be set. + * One-of ('upgradeTarget'): at most one of 'nodeType', 'enableHa', 'volumeSize', 'volumeType', 'upgradableVersionId', 'majorUpgradeWorkflow', 'enableEncryption' could be set. */ volumeType?: VolumeType /** - * This will create a new Database Instance with same specifications as the - * current one and perform a Database Engine upgrade. + * This will create a new Database Instance with same specifications as the current one and perform a Database Engine upgrade. * - * One-of ('upgradeTarget'): at most one of 'nodeType', 'enableHa', - * 'volumeSize', 'volumeType', 'upgradableVersionId', 'majorUpgradeWorkflow', - * 'enableEncryption' could be set. + * One-of ('upgradeTarget'): at most one of 'nodeType', 'enableHa', 'volumeSize', 'volumeType', 'upgradableVersionId', 'majorUpgradeWorkflow', 'enableEncryption' could be set. */ upgradableVersionId?: string /** - * Upgrade your database engine to a new major version including instance - * endpoints. + * Upgrade your database engine to a new major version including instance endpoints. * - * One-of ('upgradeTarget'): at most one of 'nodeType', 'enableHa', - * 'volumeSize', 'volumeType', 'upgradableVersionId', 'majorUpgradeWorkflow', - * 'enableEncryption' could be set. + * One-of ('upgradeTarget'): at most one of 'nodeType', 'enableHa', 'volumeSize', 'volumeType', 'upgradableVersionId', 'majorUpgradeWorkflow', 'enableEncryption' could be set. */ majorUpgradeWorkflow?: UpgradeInstanceRequestMajorUpgradeWorkflow /** - * Defines whether or not encryption should be enabled on the Database - * Instance. + * Defines whether or not encryption should be enabled on the Database Instance. * - * One-of ('upgradeTarget'): at most one of 'nodeType', 'enableHa', - * 'volumeSize', 'volumeType', 'upgradableVersionId', 'majorUpgradeWorkflow', - * 'enableEncryption' could be set. + * One-of ('upgradeTarget'): at most one of 'nodeType', 'enableHa', 'volumeSize', 'volumeType', 'upgradableVersionId', 'majorUpgradeWorkflow', 'enableEncryption' could be set. */ enableEncryption?: boolean } diff --git a/packages/clients/src/api/redis/v1/api.gen.ts b/packages/clients/src/api/redis/v1/api.gen.ts index 769778a4b..1db67290a 100644 --- a/packages/clients/src/api/redis/v1/api.gen.ts +++ b/packages/clients/src/api/redis/v1/api.gen.ts @@ -77,8 +77,8 @@ const jsonContentHeaders = { /** * Managed Database for Redis™ API. - * - * This API allows you to manage your Managed Databases for Redis™. + +This API allows you to manage your Managed Databases for Redis™. */ export class API extends ParentAPI { /** Lists the available zones of the API. */ @@ -92,10 +92,7 @@ export class API extends ParentAPI { ] /** - * Create a Redis™ Database Instance. Create a new Redis™ Database Instance - * (Redis™ cluster). You must set the `zone`, `project_id`, `version`, - * `node_type`, `user_name` and `password` parameters. Optionally you can - * define `acl_rules`, `endpoints`, `tls_enabled` and `cluster_settings`. + * Create a Redis™ Database Instance. Create a new Redis™ Database Instance (Redis™ cluster). You must set the `zone`, `project_id`, `version`, `node_type`, `user_name` and `password` parameters. Optionally you can define `acl_rules`, `endpoints`, `tls_enabled` and `cluster_settings`. * * @param request - The request {@link CreateClusterRequest} * @returns A Promise of Cluster @@ -114,9 +111,7 @@ export class API extends ParentAPI { ) /** - * Update a Redis™ Database Instance. Update the parameters of a Redis™ - * Database Instance (Redis™ cluster), including `name`, `tags`, `user_name` - * and `password`. + * Update a Redis™ Database Instance. Update the parameters of a Redis™ Database Instance (Redis™ cluster), including `name`, `tags`, `user_name` and `password`. * * @param request - The request {@link UpdateClusterRequest} * @returns A Promise of Cluster @@ -135,11 +130,7 @@ export class API extends ParentAPI { ) /** - * Get a Redis™ Database Instance. Retrieve information about a Redis™ - * Database Instance (Redis™ cluster). Specify the `cluster_id` and `region` - * in your request to get information such as `id`, `status`, `version`, - * `tls_enabled`, `cluster_settings`, `upgradable_versions` and `endpoints` - * about your cluster in the response. + * Get a Redis™ Database Instance. Retrieve information about a Redis™ Database Instance (Redis™ cluster). Specify the `cluster_id` and `region` in your request to get information such as `id`, `status`, `version`, `tls_enabled`, `cluster_settings`, `upgradable_versions` and `endpoints` about your cluster in the response. * * @param request - The request {@link GetClusterRequest} * @returns A Promise of Cluster @@ -200,12 +191,7 @@ export class API extends ParentAPI { ) /** - * List Redis™ Database Instances. List all Redis™ Database Instances (Redis™ - * cluster) in the specified zone. By default, the Database Instances returned - * in the list are ordered by creation date in ascending order, though this - * can be modified via the order_by field. You can define additional - * parameters for your query, such as `tags`, `name`, `organization_id` and - * `version`. + * List Redis™ Database Instances. List all Redis™ Database Instances (Redis™ cluster) in the specified zone. By default, the Database Instances returned in the list are ordered by creation date in ascending order, though this can be modified via the order_by field. You can define additional parameters for your query, such as `tags`, `name`, `organization_id` and `version`. * * @param request - The request {@link ListClustersRequest} * @returns A Promise of ListClustersResponse @@ -214,13 +200,7 @@ export class API extends ParentAPI { enrichForPagination('clusters', this.pageOfListClusters, request) /** - * Scale up a Redis™ Database Instance. Upgrade your Redis™ Database Instance, - * either by upgrading to a bigger node type (vertical scaling) or by adding - * more nodes to your Database Instance to increase your number of endpoints - * and distribute cache (horizontal scaling, available for clusters only). - * Note that scaling horizontally your Redis™ Database Instance will not renew - * its TLS certificate. In order to refresh the TLS certificate, you must use - * the Renew TLS certificate endpoint. + * Scale up a Redis™ Database Instance. Upgrade your Redis™ Database Instance, either by upgrading to a bigger node type (vertical scaling) or by adding more nodes to your Database Instance to increase your number of endpoints and distribute cache (horizontal scaling, available for clusters only). Note that scaling horizontally your Redis™ Database Instance will not renew its TLS certificate. In order to refresh the TLS certificate, you must use the Renew TLS certificate endpoint. * * @param request - The request {@link MigrateClusterRequest} * @returns A Promise of Cluster @@ -239,10 +219,7 @@ export class API extends ParentAPI { ) /** - * Delete a Redis™ Database Instance. Delete a Redis™ Database Instance - * (Redis™ cluster), specified by the `region` and `cluster_id` parameters. - * Deleting a Database Instance is permanent, and cannot be undone. Note that - * upon deletion all your data will be lost. + * Delete a Redis™ Database Instance. Delete a Redis™ Database Instance (Redis™ cluster), specified by the `region` and `cluster_id` parameters. Deleting a Database Instance is permanent, and cannot be undone. Note that upon deletion all your data will be lost. * * @param request - The request {@link DeleteClusterRequest} * @returns A Promise of Cluster @@ -257,9 +234,7 @@ export class API extends ParentAPI { ) /** - * Get metrics of a Redis™ Database Instance. Retrieve the metrics of a Redis™ - * Database Instance (Redis™ cluster). You can define the period from which to - * retrieve metrics by specifying the `start_date` and `end_date`. + * Get metrics of a Redis™ Database Instance. Retrieve the metrics of a Redis™ Database Instance (Redis™ cluster). You can define the period from which to retrieve metrics by specifying the `start_date` and `end_date`. * * @param request - The request {@link GetClusterMetricsRequest} * @returns A Promise of ClusterMetricsResponse @@ -296,9 +271,7 @@ export class API extends ParentAPI { ) /** - * List available node types. List all available node types. By default, the - * node types returned in the list are ordered by creation date in ascending - * order, though this can be modified via the `order_by` field. + * List available node types. List all available node types. By default, the node types returned in the list are ordered by creation date in ascending order, though this can be modified via the `order_by` field. * * @param request - The request {@link ListNodeTypesRequest} * @returns A Promise of ListNodeTypesResponse @@ -329,9 +302,7 @@ export class API extends ParentAPI { ) /** - * List available Redis™ versions. List the Redis™ database engine versions - * available. You can define additional parameters for your query, such as - * `include_disabled`, `include_beta`, `include_deprecated` and `version`. + * List available Redis™ versions. List the Redis™ database engine versions available. You can define additional parameters for your query, such as `include_disabled`, `include_beta`, `include_deprecated` and `version`. * * @param request - The request {@link ListClusterVersionsRequest} * @returns A Promise of ListClusterVersionsResponse @@ -340,9 +311,7 @@ export class API extends ParentAPI { enrichForPagination('versions', this.pageOfListClusterVersions, request) /** - * Get the TLS certificate of a cluster. Retrieve information about the TLS - * certificate of a Redis™ Database Instance (Redis™ cluster). Details like - * name and content are returned in the response. + * Get the TLS certificate of a cluster. Retrieve information about the TLS certificate of a Redis™ Database Instance (Redis™ cluster). Details like name and content are returned in the response. * * @param request - The request {@link GetClusterCertificateRequest} * @returns A Promise of Blob @@ -356,11 +325,7 @@ export class API extends ParentAPI { }) /** - * Renew the TLS certificate of a cluster. Renew a TLS certificate for a - * Redis™ Database Instance (Redis™ cluster). Renewing a certificate means - * that you will not be able to connect to your Database Instance using the - * previous certificate. You will also need to download and update the new - * certificate for all database clients. + * Renew the TLS certificate of a cluster. Renew a TLS certificate for a Redis™ Database Instance (Redis™ cluster). Renewing a certificate means that you will not be able to connect to your Database Instance using the previous certificate. You will also need to download and update the new certificate for all database clients. * * @param request - The request {@link RenewClusterCertificateRequest} * @returns A Promise of Cluster @@ -379,9 +344,7 @@ export class API extends ParentAPI { ) /** - * Add advanced settings. Add an advanced setting to a Redis™ Database - * Instance (Redis™ cluster). You must set the `name` and the `value` of each - * setting. + * Add advanced settings. Add an advanced setting to a Redis™ Database Instance (Redis™ cluster). You must set the `name` and the `value` of each setting. * * @param request - The request {@link AddClusterSettingsRequest} * @returns A Promise of ClusterSettingsResponse @@ -400,9 +363,7 @@ export class API extends ParentAPI { ) /** - * Delete advanced setting. Delete an advanced setting in a Redis™ Database - * Instance (Redis™ cluster). You must specify the names of the settings you - * want to delete in the request body. + * Delete advanced setting. Delete an advanced setting in a Redis™ Database Instance (Redis™ cluster). You must specify the names of the settings you want to delete in the request body. * * @param request - The request {@link DeleteClusterSettingRequest} * @returns A Promise of Cluster @@ -417,9 +378,7 @@ export class API extends ParentAPI { ) /** - * Set advanced settings. Update an advanced setting for a Redis™ Database - * Instance (Redis™ cluster). Settings added upon database engine - * initalization can only be defined once, and cannot, therefore, be updated. + * Set advanced settings. Update an advanced setting for a Redis™ Database Instance (Redis™ cluster). Settings added upon database engine initialization can only be defined once, and cannot, therefore, be updated. * * @param request - The request {@link SetClusterSettingsRequest} * @returns A Promise of ClusterSettingsResponse @@ -438,8 +397,7 @@ export class API extends ParentAPI { ) /** - * Set ACL rules for a cluster. Replace all the ACL rules of a Redis™ Database - * Instance (Redis™ cluster). + * Set ACL rules for a cluster. Replace all the ACL rules of a Redis™ Database Instance (Redis™ cluster). * * @param request - The request {@link SetAclRulesRequest} * @returns A Promise of SetAclRulesResponse @@ -458,8 +416,7 @@ export class API extends ParentAPI { ) /** - * Add ACL rules for a cluster. Add an additional ACL rule to a Redis™ - * Database Instance (Redis™ cluster). + * Add ACL rules for a cluster. Add an additional ACL rule to a Redis™ Database Instance (Redis™ cluster). * * @param request - The request {@link AddAclRulesRequest} * @returns A Promise of AddAclRulesResponse @@ -478,9 +435,7 @@ export class API extends ParentAPI { ) /** - * Delete an ACL rule for a cluster. Delete an ACL rule of a Redis™ Database - * Instance (Redis™ cluster). You must specify the `acl_id` of the rule you - * want to delete in your request. + * Delete an ACL rule for a cluster. Delete an ACL rule of a Redis™ Database Instance (Redis™ cluster). You must specify the `acl_id` of the rule you want to delete in your request. * * @param request - The request {@link DeleteAclRuleRequest} * @returns A Promise of Cluster @@ -495,9 +450,7 @@ export class API extends ParentAPI { ) /** - * Get an ACL rule. Retrieve information about an ACL rule of a Redis™ - * Database Instance (Redis™ cluster). You must specify the `acl_id` of the - * rule in your request. + * Get an ACL rule. Retrieve information about an ACL rule of a Redis™ Database Instance (Redis™ cluster). You must specify the `acl_id` of the rule in your request. * * @param request - The request {@link GetAclRuleRequest} * @returns A Promise of ACLRule @@ -512,9 +465,7 @@ export class API extends ParentAPI { ) /** - * Set endpoints for a cluster. Update an endpoint for a Redis™ Database - * Instance (Redis™ cluster). You must specify the `cluster_id` and the - * `endpoints` parameters in your request. + * Set endpoints for a cluster. Update an endpoint for a Redis™ Database Instance (Redis™ cluster). You must specify the `cluster_id` and the `endpoints` parameters in your request. * * @param request - The request {@link SetEndpointsRequest} * @returns A Promise of SetEndpointsResponse @@ -533,9 +484,7 @@ export class API extends ParentAPI { ) /** - * Add endpoints for a cluster. Add a new endpoint for a Redis™ Database - * Instance (Redis™ cluster). You can add `private_network` or - * `public_network` specifications to the body of the request. + * Add endpoints for a cluster. Add a new endpoint for a Redis™ Database Instance (Redis™ cluster). You can add `private_network` or `public_network` specifications to the body of the request. * * @param request - The request {@link AddEndpointsRequest} * @returns A Promise of AddEndpointsResponse @@ -554,10 +503,7 @@ export class API extends ParentAPI { ) /** - * Delete an endpoint for a cluster. Delete the endpoint of a Redis™ Database - * Instance (Redis™ cluster). You must specify the `region` and `endpoint_id` - * parameters of the endpoint you want to delete. Note that might need to - * update any environment configurations that point to the deleted endpoint. + * Delete an endpoint for a cluster. Delete the endpoint of a Redis™ Database Instance (Redis™ cluster). You must specify the `region` and `endpoint_id` parameters of the endpoint you want to delete. Note that might need to update any environment configurations that point to the deleted endpoint. * * @param request - The request {@link DeleteEndpointRequest} * @returns A Promise of Cluster @@ -572,10 +518,7 @@ export class API extends ParentAPI { ) /** - * Get an endpoint. Retrieve information about a Redis™ Database Instance - * (Redis™ cluster) endpoint. Full details about the endpoint, like `ips`, - * `port`, `private_network` and `public_network` specifications are returned - * in the response. + * Get an endpoint. Retrieve information about a Redis™ Database Instance (Redis™ cluster) endpoint. Full details about the endpoint, like `ips`, `port`, `private_network` and `public_network` specifications are returned in the response. * * @param request - The request {@link GetEndpointRequest} * @returns A Promise of Endpoint @@ -590,10 +533,7 @@ export class API extends ParentAPI { ) /** - * Update an endpoint. Update information about a Redis™ Database Instance - * (Redis™ cluster) endpoint. Full details about the endpoint, like `ips`, - * `port`, `private_network` and `public_network` specifications are returned - * in the response. + * Update an endpoint. Update information about a Redis™ Database Instance (Redis™ cluster) endpoint. Full details about the endpoint, like `ips`, `port`, `private_network` and `public_network` specifications are returned in the response. * * @param request - The request {@link UpdateEndpointRequest} * @returns A Promise of Endpoint diff --git a/packages/clients/src/api/redis/v1/types.gen.ts b/packages/clients/src/api/redis/v1/types.gen.ts index b0472d868..acc3fd64e 100644 --- a/packages/clients/src/api/redis/v1/types.gen.ts +++ b/packages/clients/src/api/redis/v1/types.gen.ts @@ -37,29 +37,37 @@ export type PrivateNetworkProvisioningMode = 'static' | 'ipam' export interface EndpointSpecPrivateNetworkSpecIpamConfig {} export interface PrivateNetwork { - /** UUID of the Private Network. */ + /** + * UUID of the Private Network. + */ id: string - /** List of IPv4 CIDR notation addresses of the endpoint. */ + /** + * List of IPv4 CIDR notation addresses of the endpoint. + */ serviceIps: string[] - /** Zone of the Private Network. */ + /** + * Zone of the Private Network. + */ zone: ScwZone - /** How your endpoint ips are provisioned. */ + /** + * How your endpoint ips are provisioned. + */ provisioningMode: PrivateNetworkProvisioningMode } export interface PublicNetwork {} export interface EndpointSpecPrivateNetworkSpec { - /** UUID of the Private Network to connect to the Database Instance. */ + /** + * UUID of the Private Network to connect to the Database Instance. + */ id: string /** - * Endpoint IPv4 address with a CIDR notation. You must provide at least one - * IPv4 per node. + * Endpoint IPv4 address with a CIDR notation. You must provide at least one IPv4 per node. */ serviceIps: string[] /** - * Automated configuration of your Private Network endpoint with Scaleway IPAM - * service. + * Automated configuration of your Private Network endpoint with Scaleway IPAM service. */ ipamConfig?: EndpointSpecPrivateNetworkSpecIpamConfig } @@ -67,67 +75,101 @@ export interface EndpointSpecPrivateNetworkSpec { export interface EndpointSpecPublicNetworkSpec {} export interface AvailableClusterSetting { - /** Name of the setting. */ + /** + * Name of the setting. + */ name: string - /** Default value of the setting. */ + /** + * Default value of the setting. + */ defaultValue?: string - /** Type of setting. */ + /** + * Type of setting. + */ type: AvailableClusterSettingPropertyType - /** Description of the setting. */ + /** + * Description of the setting. + */ description: string - /** Optional maximum value of the setting. */ + /** + * Optional maximum value of the setting. + */ maxValue?: number - /** Optional minimum value of the setting. */ + /** + * Optional minimum value of the setting. + */ minValue?: number - /** Optional validation rule of the setting. */ + /** + * Optional validation rule of the setting. + */ regex?: string - /** Defines whether or not the setting is deprecated. */ + /** + * Defines whether or not the setting is deprecated. + */ deprecated: boolean } export interface ACLRule { - /** ID of the rule. */ + /** + * ID of the rule. + */ id: string - /** IPv4 network address of the rule. */ + /** + * IPv4 network address of the rule. + */ ipCidr?: string - /** Description of the rule. */ + /** + * Description of the rule. + */ description?: string } export interface ClusterSetting { - /** Value of the setting. */ + /** + * Value of the setting. + */ value: string - /** Name of the setting. */ + /** + * Name of the setting. + */ name: string } export interface Endpoint { - /** TCP port of the endpoint. */ + /** + * TCP port of the endpoint. + */ port: number /** * Private Network details. * - * One-of ('details'): at most one of 'privateNetwork', 'publicNetwork' could - * be set. + * One-of ('details'): at most one of 'privateNetwork', 'publicNetwork' could be set. */ privateNetwork?: PrivateNetwork /** * Public network details. * - * One-of ('details'): at most one of 'privateNetwork', 'publicNetwork' could - * be set. + * One-of ('details'): at most one of 'privateNetwork', 'publicNetwork' could be set. */ publicNetwork?: PublicNetwork - /** List of IPv4 addresses of the endpoint. */ + /** + * List of IPv4 addresses of the endpoint. + */ ips: string[] - /** UUID of the endpoint. */ + /** + * UUID of the endpoint. + */ id: string } export interface ACLRuleSpec { - /** IPv4 network address of the rule. */ + /** + * IPv4 network address of the rule. + */ ipCidr: string - /** Description of the rule. */ + /** + * Description of the rule. + */ description: string } @@ -135,411 +177,646 @@ export interface EndpointSpec { /** * Private Network specification details. * - * One-of ('endpointType'): at most one of 'privateNetwork', 'publicNetwork' - * could be set. + * One-of ('endpointType'): at most one of 'privateNetwork', 'publicNetwork' could be set. */ privateNetwork?: EndpointSpecPrivateNetworkSpec /** * Public network specification details. * - * One-of ('endpointType'): at most one of 'privateNetwork', 'publicNetwork' - * could be set. + * One-of ('endpointType'): at most one of 'privateNetwork', 'publicNetwork' could be set. */ publicNetwork?: EndpointSpecPublicNetworkSpec } export interface ClusterVersion { - /** Redis™ engine version. */ + /** + * Redis™ engine version. + */ version: string - /** Date of End of Life. */ + /** + * Date of End of Life. + */ endOfLifeAt?: Date - /** Cluster settings available to be updated. */ + /** + * Cluster settings available to be updated. + */ availableSettings: AvailableClusterSetting[] - /** Redis™ logo url. */ + /** + * Redis™ logo url. + */ logoUrl: string - /** Zone of the Redis™ Database Instance. */ + /** + * Zone of the Redis™ Database Instance. + */ zone: ScwZone } export interface Cluster { - /** UUID of the Database Instance. */ + /** + * UUID of the Database Instance. + */ id: string - /** Name of the Database Instance. */ + /** + * Name of the Database Instance. + */ name: string - /** Project ID the Database Instance belongs to. */ + /** + * Project ID the Database Instance belongs to. + */ projectId: string - /** Status of the Database Instance. */ + /** + * Status of the Database Instance. + */ status: ClusterStatus - /** Redis™ engine version of the Database Instance. */ + /** + * Redis™ engine version of the Database Instance. + */ version: string - /** List of Database Instance endpoints. */ + /** + * List of Database Instance endpoints. + */ endpoints: Endpoint[] - /** List of tags applied to the Database Instance. */ + /** + * List of tags applied to the Database Instance. + */ tags: string[] - /** Node type of the Database Instance. */ + /** + * Node type of the Database Instance. + */ nodeType: string - /** Creation date (Format ISO 8601). */ + /** + * Creation date (Format ISO 8601). + */ createdAt?: Date - /** Update date (Format ISO 8601). */ + /** + * Update date (Format ISO 8601). + */ updatedAt?: Date - /** Defines whether or not TLS is enabled. */ + /** + * Defines whether or not TLS is enabled. + */ tlsEnabled: boolean - /** List of Database Instance settings. */ + /** + * List of Database Instance settings. + */ clusterSettings: ClusterSetting[] - /** List of ACL rules. */ + /** + * List of ACL rules. + */ aclRules: ACLRule[] - /** Number of nodes of the Database Instance cluster. */ + /** + * Number of nodes of the Database Instance cluster. + */ clusterSize: number - /** Zone of the Database Instance. */ + /** + * Zone of the Database Instance. + */ zone: ScwZone - /** Name of the user associated to the cluster. */ + /** + * Name of the user associated to the cluster. + */ userName: string - /** List of engine versions the Database Instance can upgrade to. */ + /** + * List of engine versions the Database Instance can upgrade to. + */ upgradableVersions: string[] } export interface NodeType { - /** Node type name. */ + /** + * Node type name. + */ name: string - /** Current stock status of the node type. */ + /** + * Current stock status of the node type. + */ stockStatus: NodeTypeStock - /** Current specifications of the offer. */ + /** + * Current specifications of the offer. + */ description: string - /** Number of virtual CPUs. */ + /** + * Number of virtual CPUs. + */ vcpus: number - /** Quantity of RAM. */ + /** + * Quantity of RAM. + */ memory: number - /** Defines whether node type is currently disabled or not. */ + /** + * Defines whether node type is currently disabled or not. + */ disabled: boolean - /** Defines whether node type is currently in beta. */ + /** + * Defines whether node type is currently in beta. + */ beta: boolean - /** Zone of the node type. */ + /** + * Zone of the node type. + */ zone: ScwZone } export type AddAclRulesRequest = { - /** Zone to target. If none is passed will use default zone from the config. */ + /** + * Zone to target. If none is passed will use default zone from the config. + */ zone?: ScwZone - /** UUID of the Database Instance you want to add ACL rules to. */ + /** + * UUID of the Database Instance you want to add ACL rules to. + */ clusterId: string - /** ACLs rules to add to the cluster. */ + /** + * ACLs rules to add to the cluster. + */ aclRules: ACLRuleSpec[] } export interface AddAclRulesResponse { - /** ACL Rules enabled for the Database Instance. */ + /** + * ACL Rules enabled for the Database Instance. + */ aclRules: ACLRule[] - /** Total count of ACL rules of the Database Instance. */ + /** + * Total count of ACL rules of the Database Instance. + */ totalCount: number } export type AddClusterSettingsRequest = { - /** Zone to target. If none is passed will use default zone from the config. */ + /** + * Zone to target. If none is passed will use default zone from the config. + */ zone?: ScwZone - /** UUID of the Database Instance you want to add settings to. */ + /** + * UUID of the Database Instance you want to add settings to. + */ clusterId: string - /** Settings to add to the cluster. */ + /** + * Settings to add to the cluster. + */ settings: ClusterSetting[] } export type AddEndpointsRequest = { - /** Zone to target. If none is passed will use default zone from the config. */ + /** + * Zone to target. If none is passed will use default zone from the config. + */ zone?: ScwZone - /** UUID of the Database Instance you want to add endpoints to. */ + /** + * UUID of the Database Instance you want to add endpoints to. + */ clusterId: string - /** Endpoints to add to the Database Instance. */ + /** + * Endpoints to add to the Database Instance. + */ endpoints: EndpointSpec[] } export interface AddEndpointsResponse { - /** Endpoints defined on the Database Instance. */ + /** + * Endpoints defined on the Database Instance. + */ endpoints: Endpoint[] - /** Total count of endpoints of the Database Instance. */ + /** + * Total count of endpoints of the Database Instance. + */ totalCount: number } export interface ClusterMetricsResponse { - /** Time series of metrics of a given cluster. */ + /** + * Time series of metrics of a given cluster. + */ timeseries: TimeSeries[] } export interface ClusterSettingsResponse { - /** Settings configured for a given Database Instance. */ + /** + * Settings configured for a given Database Instance. + */ settings: ClusterSetting[] } export type CreateClusterRequest = { - /** Zone to target. If none is passed will use default zone from the config. */ + /** + * Zone to target. If none is passed will use default zone from the config. + */ zone?: ScwZone - /** Project ID in which to create the Database Instance. */ + /** + * Project ID in which to create the Database Instance. + */ projectId?: string - /** Name of the Database Instance. */ + /** + * Name of the Database Instance. + */ name?: string - /** Redis™ engine version of the Database Instance. */ + /** + * Redis™ engine version of the Database Instance. + */ version: string - /** Tags to apply to the Database Instance. */ + /** + * Tags to apply to the Database Instance. + */ tags?: string[] - /** Type of node to use for the Database Instance. */ + /** + * Type of node to use for the Database Instance. + */ nodeType: string - /** Name of the user created upon Database Instance creation. */ + /** + * Name of the user created upon Database Instance creation. + */ userName: string - /** Password of the user. */ + /** + * Password of the user. + */ password: string - /** Number of nodes in the Redis™ cluster. */ + /** + * Number of nodes in the Redis™ cluster. + */ clusterSize?: number - /** List of ACLRuleSpec used to secure your publicly exposed cluster. */ + /** + * List of ACLRuleSpec used to secure your publicly exposed cluster. + */ aclRules?: ACLRuleSpec[] /** - * Zero or multiple EndpointSpec used to expose your cluster publicly and - * inside private networks. If no EndpoindSpec is given the cluster will be - * publicly exposed by default. + * Zero or multiple EndpointSpec used to expose your cluster publicly and inside private networks. If no EndpoindSpec is given the cluster will be publicly exposed by default. */ endpoints?: EndpointSpec[] - /** Defines whether or not TLS is enabled. */ + /** + * Defines whether or not TLS is enabled. + */ tlsEnabled: boolean - /** List of advanced settings to be set upon Database Instance initialization. */ + /** + * List of advanced settings to be set upon Database Instance initialization. + */ clusterSettings?: ClusterSetting[] } export type DeleteAclRuleRequest = { - /** Zone to target. If none is passed will use default zone from the config. */ + /** + * Zone to target. If none is passed will use default zone from the config. + */ zone?: ScwZone - /** UUID of the ACL rule you want to delete. */ + /** + * UUID of the ACL rule you want to delete. + */ aclId: string } export type DeleteClusterRequest = { - /** Zone to target. If none is passed will use default zone from the config. */ + /** + * Zone to target. If none is passed will use default zone from the config. + */ zone?: ScwZone - /** UUID of the Database Instance to delete. */ + /** + * UUID of the Database Instance to delete. + */ clusterId: string } export type DeleteClusterSettingRequest = { - /** Zone to target. If none is passed will use default zone from the config. */ + /** + * Zone to target. If none is passed will use default zone from the config. + */ zone?: ScwZone - /** UUID of the Database Instance where the settings must be set. */ + /** + * UUID of the Database Instance where the settings must be set. + */ clusterId: string - /** Setting name to delete. */ + /** + * Setting name to delete. + */ settingName: string } export type DeleteEndpointRequest = { - /** Zone to target. If none is passed will use default zone from the config. */ + /** + * Zone to target. If none is passed will use default zone from the config. + */ zone?: ScwZone - /** UUID of the endpoint you want to delete. */ + /** + * UUID of the endpoint you want to delete. + */ endpointId: string } export type GetAclRuleRequest = { - /** Zone to target. If none is passed will use default zone from the config. */ + /** + * Zone to target. If none is passed will use default zone from the config. + */ zone?: ScwZone - /** UUID of the ACL rule you want to get. */ + /** + * UUID of the ACL rule you want to get. + */ aclId: string } export type GetClusterCertificateRequest = { - /** Zone to target. If none is passed will use default zone from the config. */ + /** + * Zone to target. If none is passed will use default zone from the config. + */ zone?: ScwZone - /** UUID of the cluster. */ + /** + * UUID of the cluster. + */ clusterId: string } export type GetClusterMetricsRequest = { - /** Zone to target. If none is passed will use default zone from the config. */ + /** + * Zone to target. If none is passed will use default zone from the config. + */ zone?: ScwZone - /** UUID of the cluster. */ + /** + * UUID of the cluster. + */ clusterId: string - /** Start date. */ + /** + * Start date. + */ startAt?: Date - /** End date. */ + /** + * End date. + */ endAt?: Date - /** Name of the metric to gather. */ + /** + * Name of the metric to gather. + */ metricName?: string } export type GetClusterRequest = { - /** Zone to target. If none is passed will use default zone from the config. */ + /** + * Zone to target. If none is passed will use default zone from the config. + */ zone?: ScwZone - /** UUID of the cluster. */ + /** + * UUID of the cluster. + */ clusterId: string } export type GetEndpointRequest = { - /** Zone to target. If none is passed will use default zone from the config. */ + /** + * Zone to target. If none is passed will use default zone from the config. + */ zone?: ScwZone - /** UUID of the endpoint you want to get. */ + /** + * UUID of the endpoint you want to get. + */ endpointId: string } export type ListClusterVersionsRequest = { - /** Zone to target. If none is passed will use default zone from the config. */ + /** + * Zone to target. If none is passed will use default zone from the config. + */ zone?: ScwZone - /** Defines whether or not to include disabled Redis™ engine versions. */ + /** + * Defines whether or not to include disabled Redis™ engine versions. + */ includeDisabled: boolean - /** Defines whether or not to include beta Redis™ engine versions. */ + /** + * Defines whether or not to include beta Redis™ engine versions. + */ includeBeta: boolean - /** Defines whether or not to include deprecated Redis™ engine versions. */ + /** + * Defines whether or not to include deprecated Redis™ engine versions. + */ includeDeprecated: boolean - /** List Redis™ engine versions that match a given name pattern. */ + /** + * List Redis™ engine versions that match a given name pattern. + */ version?: string page?: number pageSize?: number } export interface ListClusterVersionsResponse { - /** List of available Redis™ engine versions. */ + /** + * List of available Redis™ engine versions. + */ versions: ClusterVersion[] - /** Total count of available Redis™ engine versions. */ + /** + * Total count of available Redis™ engine versions. + */ totalCount: number } export type ListClustersRequest = { - /** Zone to target. If none is passed will use default zone from the config. */ + /** + * Zone to target. If none is passed will use default zone from the config. + */ zone?: ScwZone - /** Filter by Database Instance tags. */ + /** + * Filter by Database Instance tags. + */ tags?: string[] - /** Filter by Database Instance names. */ + /** + * Filter by Database Instance names. + */ name?: string - /** Criteria to use when ordering the list. */ + /** + * Criteria to use when ordering the list. + */ orderBy?: ListClustersRequestOrderBy - /** Filter by Project ID. */ + /** + * Filter by Project ID. + */ projectId?: string - /** Filter by Organization ID. */ + /** + * Filter by Organization ID. + */ organizationId?: string - /** Filter by Redis™ engine version. */ + /** + * Filter by Redis™ engine version. + */ version?: string page?: number pageSize?: number } export interface ListClustersResponse { - /** List all Database Instances. */ + /** + * List all Database Instances. + */ clusters: Cluster[] - /** Total count of Database Instances. */ + /** + * Total count of Database Instances. + */ totalCount: number } export type ListNodeTypesRequest = { - /** Zone to target. If none is passed will use default zone from the config. */ + /** + * Zone to target. If none is passed will use default zone from the config. + */ zone?: ScwZone - /** Defines whether or not to include disabled types. */ + /** + * Defines whether or not to include disabled types. + */ includeDisabledTypes: boolean page?: number pageSize?: number } export interface ListNodeTypesResponse { - /** Types of node. */ + /** + * Types of node. + */ nodeTypes: NodeType[] - /** Total count of node types available. */ + /** + * Total count of node types available. + */ totalCount: number } export type MigrateClusterRequest = { - /** Zone to target. If none is passed will use default zone from the config. */ + /** + * Zone to target. If none is passed will use default zone from the config. + */ zone?: ScwZone - /** UUID of the Database Instance to update. */ + /** + * UUID of the Database Instance to update. + */ clusterId: string /** * Redis™ engine version of the Database Instance. * - * One-of ('action'): at most one of 'version', 'nodeType', 'clusterSize' - * could be set. + * One-of ('action'): at most one of 'version', 'nodeType', 'clusterSize' could be set. */ version?: string /** * Type of node to use for the Database Instance. * - * One-of ('action'): at most one of 'version', 'nodeType', 'clusterSize' - * could be set. + * One-of ('action'): at most one of 'version', 'nodeType', 'clusterSize' could be set. */ nodeType?: string /** * Number of nodes for the Database Instance. * - * One-of ('action'): at most one of 'version', 'nodeType', 'clusterSize' - * could be set. + * One-of ('action'): at most one of 'version', 'nodeType', 'clusterSize' could be set. */ clusterSize?: number } export type RenewClusterCertificateRequest = { - /** Zone to target. If none is passed will use default zone from the config. */ + /** + * Zone to target. If none is passed will use default zone from the config. + */ zone?: ScwZone - /** UUID of the cluster. */ + /** + * UUID of the cluster. + */ clusterId: string } export type SetAclRulesRequest = { - /** Zone to target. If none is passed will use default zone from the config. */ + /** + * Zone to target. If none is passed will use default zone from the config. + */ zone?: ScwZone - /** UUID of the Database Instance where the ACL rules have to be set. */ + /** + * UUID of the Database Instance where the ACL rules have to be set. + */ clusterId: string - /** ACLs rules to define for the cluster. */ + /** + * ACLs rules to define for the cluster. + */ aclRules: ACLRuleSpec[] } export interface SetAclRulesResponse { - /** ACL Rules enabled for the Database Instance. */ + /** + * ACL Rules enabled for the Database Instance. + */ aclRules: ACLRule[] } export type SetClusterSettingsRequest = { - /** Zone to target. If none is passed will use default zone from the config. */ + /** + * Zone to target. If none is passed will use default zone from the config. + */ zone?: ScwZone - /** UUID of the Database Instance where the settings must be set. */ + /** + * UUID of the Database Instance where the settings must be set. + */ clusterId: string - /** Settings to define for the Database Instance. */ + /** + * Settings to define for the Database Instance. + */ settings: ClusterSetting[] } export type SetEndpointsRequest = { - /** Zone to target. If none is passed will use default zone from the config. */ + /** + * Zone to target. If none is passed will use default zone from the config. + */ zone?: ScwZone - /** UUID of the Database Instance where the endpoints have to be set. */ + /** + * UUID of the Database Instance where the endpoints have to be set. + */ clusterId: string - /** Endpoints to define for the Database Instance. */ + /** + * Endpoints to define for the Database Instance. + */ endpoints: EndpointSpec[] } export interface SetEndpointsResponse { - /** Endpoints defined on the Database Instance. */ + /** + * Endpoints defined on the Database Instance. + */ endpoints: Endpoint[] } export type UpdateClusterRequest = { - /** Zone to target. If none is passed will use default zone from the config. */ + /** + * Zone to target. If none is passed will use default zone from the config. + */ zone?: ScwZone - /** UUID of the Database Instance to update. */ + /** + * UUID of the Database Instance to update. + */ clusterId: string - /** Name of the Database Instance. */ + /** + * Name of the Database Instance. + */ name?: string - /** Database Instance tags. */ + /** + * Database Instance tags. + */ tags?: string[] - /** Name of the Database Instance user. */ + /** + * Name of the Database Instance user. + */ userName?: string - /** Password of the Database Instance user. */ + /** + * Password of the Database Instance user. + */ password?: string } export type UpdateEndpointRequest = { - /** Zone to target. If none is passed will use default zone from the config. */ + /** + * Zone to target. If none is passed will use default zone from the config. + */ zone?: ScwZone - /** UUID of the endpoint you want to get. */ + /** + * UUID of the endpoint you want to get. + */ endpointId: string /** * Private Network details. * - * One-of ('endpointType'): at most one of 'privateNetwork', 'publicNetwork' - * could be set. + * One-of ('endpointType'): at most one of 'privateNetwork', 'publicNetwork' could be set. */ privateNetwork?: EndpointSpecPrivateNetworkSpec /** * Public network details. * - * One-of ('endpointType'): at most one of 'privateNetwork', 'publicNetwork' - * could be set. + * One-of ('endpointType'): at most one of 'privateNetwork', 'publicNetwork' could be set. */ publicNetwork?: EndpointSpecPublicNetworkSpec } diff --git a/packages/clients/src/api/registry/v1/api.gen.ts b/packages/clients/src/api/registry/v1/api.gen.ts index 0d01310b1..f70fc185a 100644 --- a/packages/clients/src/api/registry/v1/api.gen.ts +++ b/packages/clients/src/api/registry/v1/api.gen.ts @@ -51,8 +51,8 @@ const jsonContentHeaders = { /** * Container Registry API. - * - * This API allows you to manage your Container Registry resources. + +This API allows you to manage your Container Registry resources. */ export class API extends ParentAPI { /** Lists the available regions of the API. */ @@ -85,11 +85,7 @@ export class API extends ParentAPI { ) /** - * List namespaces. List all namespaces in a specified region. By default, the - * namespaces listed are ordered by creation date in ascending order. This can - * be modified via the order_by field. You can also define additional - * parameters for your query, such as the `instance_id` and `project_id` - * parameters. + * List namespaces. List all namespaces in a specified region. By default, the namespaces listed are ordered by creation date in ascending order. This can be modified via the order_by field. You can also define additional parameters for your query, such as the `instance_id` and `project_id` parameters. * * @param request - The request {@link ListNamespacesRequest} * @returns A Promise of ListNamespacesResponse @@ -98,10 +94,7 @@ export class API extends ParentAPI { enrichForPagination('namespaces', this.pageOfListNamespaces, request) /** - * Get a namespace. Retrieve information about a given namespace, specified by - * its `namespace_id` and region. Full details about the namespace, such as - * `description`, `project_id`, `status`, `endpoint`, `is_public`, `size`, and - * `image_count` are returned in the response. + * Get a namespace. Retrieve information about a given namespace, specified by its `namespace_id` and region. Full details about the namespace, such as `description`, `project_id`, `status`, `endpoint`, `is_public`, `size`, and `image_count` are returned in the response. * * @param request - The request {@link GetNamespaceRequest} * @returns A Promise of Namespace @@ -138,10 +131,7 @@ export class API extends ParentAPI { ) /** - * Create a namespace. Create a new Container Registry namespace. You must - * specify the namespace name and region in which you want it to be created. - * Optionally, you can specify the `project_id` and `is_public` in the request - * payload. + * Create a namespace. Create a new Container Registry namespace. You must specify the namespace name and region in which you want it to be created. Optionally, you can specify the `project_id` and `is_public` in the request payload. * * @param request - The request {@link CreateNamespaceRequest} * @returns A Promise of Namespace @@ -160,9 +150,7 @@ export class API extends ParentAPI { ) /** - * Update a namespace. Update the parameters of a given namespace, specified - * by its `namespace_id` and `region`. You can update the `description` and - * `is_public` parameters. + * Update a namespace. Update the parameters of a given namespace, specified by its `namespace_id` and `region`. You can update the `description` and `is_public` parameters. * * @param request - The request {@link UpdateNamespaceRequest} * @returns A Promise of Namespace @@ -181,9 +169,7 @@ export class API extends ParentAPI { ) /** - * Delete a namespace. Delete a given namespace. You must specify, in the - * endpoint, the `region` and `namespace_id` parameters of the namespace you - * want to delete. + * Delete a namespace. Delete a given namespace. You must specify, in the endpoint, the `region` and `namespace_id` parameters of the namespace you want to delete. * * @param request - The request {@link DeleteNamespaceRequest} * @returns A Promise of Namespace @@ -219,10 +205,7 @@ export class API extends ParentAPI { ) /** - * List images. List all images in a specified region. By default, the images - * listed are ordered by creation date in ascending order. This can be - * modified via the order_by field. You can also define additional parameters - * for your query, such as the `namespace_id` and `project_id` parameters. + * List images. List all images in a specified region. By default, the images listed are ordered by creation date in ascending order. This can be modified via the order_by field. You can also define additional parameters for your query, such as the `namespace_id` and `project_id` parameters. * * @param request - The request {@link ListImagesRequest} * @returns A Promise of ListImagesResponse @@ -231,10 +214,7 @@ export class API extends ParentAPI { enrichForPagination('images', this.pageOfListImages, request) /** - * Get an image. Retrieve information about a given container image, specified - * by its `image_id` and region. Full details about the image, such as `name`, - * `namespace_id`, `status`, `visibility`, and `size` are returned in the - * response. + * Get an image. Retrieve information about a given container image, specified by its `image_id` and region. Full details about the image, such as `name`, `namespace_id`, `status`, `visibility`, and `size` are returned in the response. * * @param request - The request {@link GetImageRequest} * @returns A Promise of Image @@ -271,8 +251,7 @@ export class API extends ParentAPI { ) /** - * Update an image. Update the parameters of a given image, specified by its - * `image_id` and `region`. You can update the `visibility` parameter. + * Update an image. Update the parameters of a given image, specified by its `image_id` and `region`. You can update the `visibility` parameter. * * @param request - The request {@link UpdateImageRequest} * @returns A Promise of Image @@ -291,8 +270,7 @@ export class API extends ParentAPI { ) /** - * Delete an image. Delete a given image. You must specify, in the endpoint, - * the `region` and `image_id` parameters of the image you want to delete. + * Delete an image. Delete a given image. You must specify, in the endpoint, the `region` and `image_id` parameters of the image you want to delete. * * @param request - The request {@link DeleteImageRequest} * @returns A Promise of Image @@ -325,10 +303,7 @@ export class API extends ParentAPI { ) /** - * List tags. List all tags for a given image, specified by region. By - * default, the tags listed are ordered by creation date in ascending order. - * This can be modified via the order_by field. You can also define additional - * parameters for your query, such as the `name`. + * List tags. List all tags for a given image, specified by region. By default, the tags listed are ordered by creation date in ascending order. This can be modified via the order_by field. You can also define additional parameters for your query, such as the `name`. * * @param request - The request {@link ListTagsRequest} * @returns A Promise of ListTagsResponse @@ -337,9 +312,7 @@ export class API extends ParentAPI { enrichForPagination('tags', this.pageOfListTags, request) /** - * Get a tag. Retrieve information about a given image tag, specified by its - * `tag_id` and region. Full details about the tag, such as `name`, - * `image_id`, `status`, and `digest` are returned in the response. + * Get a tag. Retrieve information about a given image tag, specified by its `tag_id` and region. Full details about the tag, such as `name`, `image_id`, `status`, and `digest` are returned in the response. * * @param request - The request {@link GetTagRequest} * @returns A Promise of Tag @@ -376,8 +349,7 @@ export class API extends ParentAPI { ) /** - * Delete a tag. Delete a given image tag. You must specify, in the endpoint, - * the `region` and `tag_id` parameters of the tag you want to delete. + * Delete a tag. Delete a given image tag. You must specify, in the endpoint, the `region` and `tag_id` parameters of the tag you want to delete. * * @param request - The request {@link DeleteTagRequest} * @returns A Promise of Tag diff --git a/packages/clients/src/api/registry/v1/types.gen.ts b/packages/clients/src/api/registry/v1/types.gen.ts index e61274170..a9441669f 100644 --- a/packages/clients/src/api/registry/v1/types.gen.ts +++ b/packages/clients/src/api/registry/v1/types.gen.ts @@ -40,311 +40,395 @@ export type NamespaceStatus = export type TagStatus = 'unknown' | 'ready' | 'deleting' | 'error' | 'locked' export interface Image { - /** UUID of the image. */ + /** + * UUID of the image. + */ id: string - /** Name of the image, it must be unique within the namespace. */ + /** + * Name of the image, it must be unique within the namespace. + */ name: string - /** UUID of the namespace the image belongs to. */ + /** + * UUID of the namespace the image belongs to. + */ namespaceId: string - /** Status of the image. */ + /** + * Status of the image. + */ status: ImageStatus - /** Details of the image status. */ + /** + * Details of the image status. + */ statusMessage?: string /** - * Set to `public` to allow the image to be pulled without authentication. - * Else, set to `private`. Set to `inherit` to keep the same visibility - * configuration as the namespace. + * Set to `public` to allow the image to be pulled without authentication. Else, set to `private`. Set to `inherit` to keep the same visibility configuration as the namespace. */ visibility: ImageVisibility /** - * Image size in bytes, calculated from the size of image layers. One layer - * used in two tags of the same image is counted once but one layer used in - * two images is counted twice. + * Image size in bytes, calculated from the size of image layers. One layer used in two tags of the same image is counted once but one layer used in two images is counted twice. */ size: number - /** Date and time of image creation. */ + /** + * Date and time of image creation. + */ createdAt?: Date - /** Date and time of last update. */ + /** + * Date and time of last update. + */ updatedAt?: Date - /** List of docker tags of the image. */ + /** + * List of docker tags of the image. + */ tags: string[] } export interface Namespace { - /** UUID of the namespace. */ + /** + * UUID of the namespace. + */ id: string - /** Name of the namespace, unique in a region accross all organizations. */ + /** + * Name of the namespace, unique in a region across all organizations. + */ name: string - /** Description of the namespace. */ + /** + * Description of the namespace. + */ description: string - /** Owner of the namespace. */ + /** + * Owner of the namespace. + */ organizationId: string - /** Project of the namespace. */ + /** + * Project of the namespace. + */ projectId: string - /** Namespace status. */ + /** + * Namespace status. + */ status: NamespaceStatus - /** Namespace status details. */ + /** + * Namespace status details. + */ statusMessage: string - /** Endpoint reachable by docker. */ + /** + * Endpoint reachable by docker. + */ endpoint: string - /** Defines whether or not namespace is public. */ + /** + * Defines whether or not namespace is public. + */ isPublic: boolean /** - * Total size of the namespace, calculated as the sum of the size of all - * images in the namespace. + * Total size of the namespace, calculated as the sum of the size of all images in the namespace. */ size: number - /** Date and time of creation. */ + /** + * Date and time of creation. + */ createdAt?: Date - /** Date and time of last update. */ + /** + * Date and time of last update. + */ updatedAt?: Date - /** Number of images in the namespace. */ + /** + * Number of images in the namespace. + */ imageCount: number - /** Region the namespace belongs to. */ + /** + * Region the namespace belongs to. + */ region: ScwRegion } export interface Tag { - /** UUID of the tag. */ + /** + * UUID of the tag. + */ id: string - /** Tag name, unique to an image. */ + /** + * Tag name, unique to an image. + */ name: string - /** Image ID the of the image the tag belongs to. */ + /** + * Image ID the of the image the tag belongs to. + */ imageId: string - /** Tag status. */ + /** + * Tag status. + */ status: TagStatus /** - * Hash of the tag content. Several tags of a same image may have the same - * digest. + * Hash of the tag content. Several tags of a same image may have the same digest. */ digest: string - /** Date and time of creation. */ + /** + * Date and time of creation. + */ createdAt?: Date - /** Date and time of last update. */ + /** + * Date and time of last update. + */ updatedAt?: Date } export type CreateNamespaceRequest = { /** - * Region to target. If none is passed will use default region from the - * config. + * Region to target. If none is passed will use default region from the config. */ region?: ScwRegion - /** Name of the namespace. */ + /** + * Name of the namespace. + */ name?: string - /** Description of the namespace. */ + /** + * Description of the namespace. + */ description: string /** * @deprecated Namespace owner (deprecated). * - * One-of ('projectIdentifier'): at most one of 'projectId', 'organizationId' - * could be set. + * One-of ('projectIdentifier'): at most one of 'projectId', 'organizationId' could be set. */ organizationId?: string /** * Project ID on which the namespace will be created. * - * One-of ('projectIdentifier'): at most one of 'projectId', 'organizationId' - * could be set. + * One-of ('projectIdentifier'): at most one of 'projectId', 'organizationId' could be set. */ projectId?: string - /** Defines whether or not namespace is public. */ + /** + * Defines whether or not namespace is public. + */ isPublic: boolean } export type DeleteImageRequest = { /** - * Region to target. If none is passed will use default region from the - * config. + * Region to target. If none is passed will use default region from the config. */ region?: ScwRegion - /** UUID of the image. */ + /** + * UUID of the image. + */ imageId: string } export type DeleteNamespaceRequest = { /** - * Region to target. If none is passed will use default region from the - * config. + * Region to target. If none is passed will use default region from the config. */ region?: ScwRegion - /** UUID of the namespace. */ + /** + * UUID of the namespace. + */ namespaceId: string } export type DeleteTagRequest = { /** - * Region to target. If none is passed will use default region from the - * config. + * Region to target. If none is passed will use default region from the config. */ region?: ScwRegion - /** UUID of the tag. */ + /** + * UUID of the tag. + */ tagId: string /** - * @deprecated If two tags share the same digest the deletion will fail unless - * this parameter is set to true (deprecated). + * @deprecated If two tags share the same digest the deletion will fail unless this parameter is set to true (deprecated). */ force?: boolean } export type GetImageRequest = { /** - * Region to target. If none is passed will use default region from the - * config. + * Region to target. If none is passed will use default region from the config. */ region?: ScwRegion - /** UUID of the image. */ + /** + * UUID of the image. + */ imageId: string } export type GetNamespaceRequest = { /** - * Region to target. If none is passed will use default region from the - * config. + * Region to target. If none is passed will use default region from the config. */ region?: ScwRegion - /** UUID of the namespace. */ + /** + * UUID of the namespace. + */ namespaceId: string } export type GetTagRequest = { /** - * Region to target. If none is passed will use default region from the - * config. + * Region to target. If none is passed will use default region from the config. */ region?: ScwRegion - /** UUID of the tag. */ + /** + * UUID of the tag. + */ tagId: string } export type ListImagesRequest = { /** - * Region to target. If none is passed will use default region from the - * config. + * Region to target. If none is passed will use default region from the config. */ region?: ScwRegion - /** A positive integer to choose the page to display. */ + /** + * A positive integer to choose the page to display. + */ page?: number /** - * A positive integer lower or equal to 100 to select the number of items to - * display. + * A positive integer lower or equal to 100 to select the number of items to display. */ pageSize?: number /** - * Criteria to use when ordering image listings. Possible values are - * `created_at_asc`, `created_at_desc`, `name_asc`, `name_desc`, `region`, - * `status_asc` and `status_desc`. The default value is `created_at_asc`. + * Criteria to use when ordering image listings. Possible values are `created_at_asc`, `created_at_desc`, `name_asc`, `name_desc`, `region`, `status_asc` and `status_desc`. The default value is `created_at_asc`. */ orderBy?: ListImagesRequestOrderBy - /** Filter by the namespace ID. */ + /** + * Filter by the namespace ID. + */ namespaceId?: string - /** Filter by the image name (exact match). */ + /** + * Filter by the image name (exact match). + */ name?: string - /** Filter by Organization ID. */ + /** + * Filter by Organization ID. + */ organizationId?: string - /** Filter by Project ID. */ + /** + * Filter by Project ID. + */ projectId?: string } export interface ListImagesResponse { - /** Paginated list of images that match the selected filters. */ + /** + * Paginated list of images that match the selected filters. + */ images: Image[] - /** Total number of images that match the selected filters. */ + /** + * Total number of images that match the selected filters. + */ totalCount: number } export type ListNamespacesRequest = { /** - * Region to target. If none is passed will use default region from the - * config. + * Region to target. If none is passed will use default region from the config. */ region?: ScwRegion - /** A positive integer to choose the page to display. */ + /** + * A positive integer to choose the page to display. + */ page?: number /** - * A positive integer lower or equal to 100 to select the number of items to - * display. + * A positive integer lower or equal to 100 to select the number of items to display. */ pageSize?: number /** - * Criteria to use when ordering namespace listings. Possible values are - * `created_at_asc`, `created_at_desc`, `name_asc`, `name_desc`, `region`, - * `status_asc` and `status_desc`. The default value is `created_at_asc`. + * Criteria to use when ordering namespace listings. Possible values are `created_at_asc`, `created_at_desc`, `name_asc`, `name_desc`, `region`, `status_asc` and `status_desc`. The default value is `created_at_asc`. */ orderBy?: ListNamespacesRequestOrderBy - /** Filter by Organization ID. */ + /** + * Filter by Organization ID. + */ organizationId?: string - /** Filter by Project ID. */ + /** + * Filter by Project ID. + */ projectId?: string - /** Filter by the namespace name (exact match). */ + /** + * Filter by the namespace name (exact match). + */ name?: string } export interface ListNamespacesResponse { - /** Paginated list of namespaces that match the selected filters. */ + /** + * Paginated list of namespaces that match the selected filters. + */ namespaces: Namespace[] - /** Total number of namespaces that match the selected filters. */ + /** + * Total number of namespaces that match the selected filters. + */ totalCount: number } export type ListTagsRequest = { /** - * Region to target. If none is passed will use default region from the - * config. + * Region to target. If none is passed will use default region from the config. */ region?: ScwRegion - /** UUID of the image. */ + /** + * UUID of the image. + */ imageId: string - /** A positive integer to choose the page to display. */ + /** + * A positive integer to choose the page to display. + */ page?: number /** - * A positive integer lower or equal to 100 to select the number of items to - * display. + * A positive integer lower or equal to 100 to select the number of items to display. */ pageSize?: number /** - * Criteria to use when ordering tag listings. Possible values are - * `created_at_asc`, `created_at_desc`, `name_asc`, `name_desc`, `region`, - * `status_asc` and `status_desc`. The default value is `created_at_asc`. + * Criteria to use when ordering tag listings. Possible values are `created_at_asc`, `created_at_desc`, `name_asc`, `name_desc`, `region`, `status_asc` and `status_desc`. The default value is `created_at_asc`. */ orderBy?: ListTagsRequestOrderBy - /** Filter by the tag name (exact match). */ + /** + * Filter by the tag name (exact match). + */ name?: string } export interface ListTagsResponse { - /** Paginated list of tags that match the selected filters. */ + /** + * Paginated list of tags that match the selected filters. + */ tags: Tag[] - /** Total number of tags that match the selected filters. */ + /** + * Total number of tags that match the selected filters. + */ totalCount: number } export type UpdateImageRequest = { /** - * Region to target. If none is passed will use default region from the - * config. + * Region to target. If none is passed will use default region from the config. */ region?: ScwRegion - /** ID of the image to update. */ + /** + * ID of the image to update. + */ imageId: string /** - * Set to `public` to allow the image to be pulled without authentication. - * Else, set to `private`. Set to `inherit` to keep the same visibility - * configuration as the namespace. + * Set to `public` to allow the image to be pulled without authentication. Else, set to `private`. Set to `inherit` to keep the same visibility configuration as the namespace. */ visibility?: ImageVisibility } export type UpdateNamespaceRequest = { /** - * Region to target. If none is passed will use default region from the - * config. + * Region to target. If none is passed will use default region from the config. */ region?: ScwRegion - /** ID of the namespace to update. */ + /** + * ID of the namespace to update. + */ namespaceId: string - /** Namespace description. */ + /** + * Namespace description. + */ description?: string - /** Defines whether or not the namespace is public. */ + /** + * Defines whether or not the namespace is public. + */ isPublic?: boolean }