diff --git a/packages_generated/vpc/src/v2/api.gen.ts b/packages_generated/vpc/src/v2/api.gen.ts index e6998ddc1..b9e2dbc5a 100644 --- a/packages_generated/vpc/src/v2/api.gen.ts +++ b/packages_generated/vpc/src/v2/api.gen.ts @@ -39,6 +39,7 @@ import type { DeleteSubnetsRequest, DeleteSubnetsResponse, DeleteVPCRequest, + EnableCustomRoutesPropagationRequest, EnableDHCPRequest, EnableRoutingRequest, GetAclRequest, @@ -312,6 +313,25 @@ export class API extends ParentAPI { unmarshalVPC, ) + /** + * Enable custom routes propagation on a VPC. Enable custom routes propagation on an existing VPC. Note that you will not be able to deactivate it afterwards. + * + * @param request - The request {@link EnableCustomRoutesPropagationRequest} + * @returns A Promise of VPC + */ + enableCustomRoutesPropagation = ( + request: Readonly, + ) => + this.client.fetch( + { + body: '{}', + headers: jsonContentHeaders, + method: 'POST', + path: `/vpc/v2/regions/${validatePathParam('region', request.region ?? this.client.settings.defaultRegion)}/vpcs/${validatePathParam('vpcId', request.vpcId)}/enable-custom-routes-propagation`, + }, + unmarshalVPC, + ) + protected pageOfListSubnets = (request: Readonly = {}) => this.client.fetch( { diff --git a/packages_generated/vpc/src/v2/index.gen.ts b/packages_generated/vpc/src/v2/index.gen.ts index fca210056..5eb2e18df 100644 --- a/packages_generated/vpc/src/v2/index.gen.ts +++ b/packages_generated/vpc/src/v2/index.gen.ts @@ -16,6 +16,7 @@ export type { DeleteSubnetsRequest, DeleteSubnetsResponse, DeleteVPCRequest, + EnableCustomRoutesPropagationRequest, EnableDHCPRequest, EnableRoutingRequest, GetAclRequest, diff --git a/packages_generated/vpc/src/v2/marshalling.gen.ts b/packages_generated/vpc/src/v2/marshalling.gen.ts index f583b1810..d19e2a596 100644 --- a/packages_generated/vpc/src/v2/marshalling.gen.ts +++ b/packages_generated/vpc/src/v2/marshalling.gen.ts @@ -103,6 +103,7 @@ export const unmarshalVPC = (data: unknown): VPC => { return { createdAt: unmarshalDate(data.created_at), + customRoutesPropagationEnabled: data.custom_routes_propagation_enabled, id: data.id, isDefault: data.is_default, name: data.name, diff --git a/packages_generated/vpc/src/v2/types.gen.ts b/packages_generated/vpc/src/v2/types.gen.ts index ea0bb2f82..e898316b2 100644 --- a/packages_generated/vpc/src/v2/types.gen.ts +++ b/packages_generated/vpc/src/v2/types.gen.ts @@ -233,6 +233,10 @@ export interface VPC { * Defines whether the VPC routes traffic between its Private Networks. */ routingEnabled: boolean + /** + * Defines whether the VPC advertises custom routes between its Private Networks. + */ + customRoutesPropagationEnabled: boolean } export type AddSubnetsRequest = { @@ -391,6 +395,17 @@ export type DeleteVPCRequest = { vpcId: string } +export type EnableCustomRoutesPropagationRequest = { + /** + * Region to target. If none is passed will use default region from the config. + */ + region?: ScwRegion + /** + * VPC ID. + */ + vpcId: string +} + export type EnableDHCPRequest = { /** * Region to target. If none is passed will use default region from the config.