scaleway.vpc.v2 package
Subpackages
Submodules
scaleway.vpc.v2.api module
- class scaleway.vpc.v2.api.VpcV2API(client: Client, *, bypass_validation: bool = False)
Bases:
APIThis API allows you to manage your Virtual Private Clouds (VPCs) and Private Networks.
- add_subnets(*, private_network_id: str, region: str | None = None, subnets: List[str] | None = None) AddSubnetsResponse
Add subnets to a Private Network. Add new subnets to an existing Private Network. :param private_network_id: Private Network ID. :param region: Region to target. If none is passed will use default region from the config. :param subnets: Private Network subnets CIDR. :return:
AddSubnetsResponseUsage:
result = api.add_subnets( private_network_id="example", )
- create_private_network(*, default_route_propagation_enabled: bool, region: str | None = None, name: str | None = None, project_id: str | None = None, tags: List[str] | None = None, subnets: List[str] | None = None, vpc_id: str | None = None) PrivateNetwork
Create a Private Network. Create a new Private Network. Once created, you can attach Scaleway resources which are in the same region. :param default_route_propagation_enabled: Defines whether default v4 and v6 routes are propagated for this Private Network. :param region: Region to target. If none is passed will use default region from the config. :param name: Name for the Private Network. :param project_id: Scaleway Project in which to create the Private Network. :param tags: Tags for the Private Network. :param subnets: Private Network subnets CIDR. :param vpc_id: VPC in which to create the Private Network. :return:
PrivateNetworkUsage:
result = api.create_private_network( default_route_propagation_enabled=False, )
- create_route(*, description: str, vpc_id: str, destination: str, region: str | None = None, tags: List[str] | None = None, nexthop_resource_id: str | None = None, nexthop_private_network_id: str | None = None) Route
Create a Route. Create a new custom Route. :param description: Route description. :param vpc_id: VPC the Route belongs to. :param destination: Destination of the Route. :param region: Region to target. If none is passed will use default region from the config. :param tags: Tags of the Route. :param nexthop_resource_id: ID of the nexthop resource. :param nexthop_private_network_id: ID of the nexthop private network. :return:
RouteUsage:
result = api.create_route( description="example", vpc_id="example", destination="example", )
- create_vpc(*, enable_routing: bool, region: str | None = None, name: str | None = None, project_id: str | None = None, tags: List[str] | None = None) VPC
Create a VPC. Create a new VPC in the specified region. :param enable_routing: Enable routing between Private Networks in the VPC. :param region: Region to target. If none is passed will use default region from the config. :param name: Name for the VPC. :param project_id: Scaleway Project in which to create the VPC. :param tags: Tags for the VPC. :return:
VPCUsage:
result = api.create_vpc( enable_routing=False, )
- delete_private_network(*, private_network_id: str, region: str | None = None) None
Delete a Private Network. Delete an existing Private Network. Note that you must first detach all resources from the network, in order to delete it. :param private_network_id: Private Network ID. :param region: Region to target. If none is passed will use default region from the config.
Usage:
result = api.delete_private_network( private_network_id="example", )
- delete_route(*, route_id: str, region: str | None = None) None
Delete a Route. Delete a Route specified by its Route ID. :param route_id: Route ID. :param region: Region to target. If none is passed will use default region from the config.
Usage:
result = api.delete_route( route_id="example", )
- delete_subnets(*, private_network_id: str, region: str | None = None, subnets: List[str] | None = None) DeleteSubnetsResponse
Delete subnets from a Private Network. Delete the specified subnets from a Private Network. :param private_network_id: Private Network ID. :param region: Region to target. If none is passed will use default region from the config. :param subnets: Private Network subnets CIDR. :return:
DeleteSubnetsResponseUsage:
result = api.delete_subnets( private_network_id="example", )
- delete_vpc(*, vpc_id: str, region: str | None = None) None
Delete a VPC. Delete a VPC specified by its VPC ID. :param vpc_id: VPC ID. :param region: Region to target. If none is passed will use default region from the config.
Usage:
result = api.delete_vpc( vpc_id="example", )
- enable_custom_routes_propagation(*, vpc_id: str, region: str | None = None) VPC
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 vpc_id: VPC ID. :param region: Region to target. If none is passed will use default region from the config. :return:
VPCUsage:
result = api.enable_custom_routes_propagation( vpc_id="example", )
- enable_dhcp(*, private_network_id: str, region: str | None = None) PrivateNetwork
Enable DHCP on a Private Network. Enable DHCP managed on an existing Private Network. Note that you will not be able to deactivate it afterwards. :param private_network_id: Private Network ID. :param region: Region to target. If none is passed will use default region from the config. :return:
PrivateNetworkUsage:
result = api.enable_dhcp( private_network_id="example", )
- enable_routing(*, vpc_id: str, region: str | None = None) VPC
Enable routing on a VPC. Enable routing on an existing VPC. Note that you will not be able to deactivate it afterwards. :param vpc_id: VPC ID. :param region: Region to target. If none is passed will use default region from the config. :return:
VPCUsage:
result = api.enable_routing( vpc_id="example", )
- get_acl(*, vpc_id: str, is_ipv6: bool, region: str | None = None) GetAclResponse
Get ACL Rules for VPC. Retrieve a list of ACL rules for a VPC, specified by its VPC ID. :param vpc_id: ID of the Network ACL’s VPC. :param is_ipv6: Defines whether this set of ACL rules is for IPv6 (false = IPv4). Each Network ACL can have rules for only one IP type. :param region: Region to target. If none is passed will use default region from the config. :return:
GetAclResponseUsage:
result = api.get_acl( vpc_id="example", is_ipv6=False, )
- get_private_network(*, private_network_id: str, region: str | None = None) PrivateNetwork
Get a Private Network. Retrieve information about an existing Private Network, specified by its Private Network ID. Its full details are returned in the response object. :param private_network_id: Private Network ID. :param region: Region to target. If none is passed will use default region from the config. :return:
PrivateNetworkUsage:
result = api.get_private_network( private_network_id="example", )
- get_route(*, route_id: str, region: str | None = None) Route
Get a Route. Retrieve details of an existing Route, specified by its Route ID. :param route_id: Route ID. :param region: Region to target. If none is passed will use default region from the config. :return:
RouteUsage:
result = api.get_route( route_id="example", )
- get_vpc(*, vpc_id: str, region: str | None = None) VPC
Get a VPC. Retrieve details of an existing VPC, specified by its VPC ID. :param vpc_id: VPC ID. :param region: Region to target. If none is passed will use default region from the config. :return:
VPCUsage:
result = api.get_vpc( vpc_id="example", )
- list_private_networks(*, region: str | None = None, order_by: ListPrivateNetworksRequestOrderBy | None = None, page: int | None = None, page_size: int | None = None, name: str | None = None, tags: List[str] | None = None, organization_id: str | None = None, project_id: str | None = None, private_network_ids: List[str] | None = None, vpc_id: str | None = None, dhcp_enabled: bool | None = None) ListPrivateNetworksResponse
List Private Networks. List existing Private Networks in the specified region. By default, the Private Networks returned in the list are ordered by creation date in ascending order, though this can be modified via the order_by field. :param region: Region to target. If none is passed will use default region from the config. :param order_by: Sort order of the returned Private Networks. :param page: Page number to return, from the paginated results. :param page_size: Maximum number of Private Networks to return per page. :param name: Name to filter for. Only Private Networks with names containing this string will be returned. :param tags: Tags to filter for. Only Private Networks with one or more matching tags will be returned. :param organization_id: Organization ID to filter for. Only Private Networks belonging to this Organization will be returned. :param project_id: Project ID to filter for. Only Private Networks belonging to this Project will be returned. :param private_network_ids: Private Network IDs to filter for. Only Private Networks with one of these IDs will be returned. :param vpc_id: VPC ID to filter for. Only Private Networks belonging to this VPC will be returned. :param dhcp_enabled: DHCP status to filter for. When true, only Private Networks with managed DHCP enabled will be returned. :return:
ListPrivateNetworksResponseUsage:
result = api.list_private_networks()
- list_private_networks_all(*, region: str | None = None, order_by: ListPrivateNetworksRequestOrderBy | None = None, page: int | None = None, page_size: int | None = None, name: str | None = None, tags: List[str] | None = None, organization_id: str | None = None, project_id: str | None = None, private_network_ids: List[str] | None = None, vpc_id: str | None = None, dhcp_enabled: bool | None = None) List[PrivateNetwork]
List Private Networks. List existing Private Networks in the specified region. By default, the Private Networks returned in the list are ordered by creation date in ascending order, though this can be modified via the order_by field. :param region: Region to target. If none is passed will use default region from the config. :param order_by: Sort order of the returned Private Networks. :param page: Page number to return, from the paginated results. :param page_size: Maximum number of Private Networks to return per page. :param name: Name to filter for. Only Private Networks with names containing this string will be returned. :param tags: Tags to filter for. Only Private Networks with one or more matching tags will be returned. :param organization_id: Organization ID to filter for. Only Private Networks belonging to this Organization will be returned. :param project_id: Project ID to filter for. Only Private Networks belonging to this Project will be returned. :param private_network_ids: Private Network IDs to filter for. Only Private Networks with one of these IDs will be returned. :param vpc_id: VPC ID to filter for. Only Private Networks belonging to this VPC will be returned. :param dhcp_enabled: DHCP status to filter for. When true, only Private Networks with managed DHCP enabled will be returned. :return:
List[PrivateNetwork]Usage:
result = api.list_private_networks_all()
- list_subnets(*, region: str | None = None, order_by: ListSubnetsRequestOrderBy | None = None, page: int | None = None, page_size: int | None = None, organization_id: str | None = None, project_id: str | None = None, subnet_ids: List[str] | None = None, vpc_id: str | None = None) ListSubnetsResponse
List subnets. List any Private Network’s subnets. See ListPrivateNetworks to list a specific Private Network’s subnets. :param region: Region to target. If none is passed will use default region from the config. :param order_by: Sort order of the returned subnets. :param page: Page number to return, from the paginated results. :param page_size: Maximum number of Private Networks to return per page. :param organization_id: Organization ID to filter for. Only subnets belonging to this Organization will be returned. :param project_id: Project ID to filter for. Only subnets belonging to this Project will be returned. :param subnet_ids: Subnet IDs to filter for. Only subnets matching the specified IDs will be returned. :param vpc_id: VPC ID to filter for. Only subnets belonging to this VPC will be returned. :return:
ListSubnetsResponseUsage:
result = api.list_subnets()
- list_subnets_all(*, region: str | None = None, order_by: ListSubnetsRequestOrderBy | None = None, page: int | None = None, page_size: int | None = None, organization_id: str | None = None, project_id: str | None = None, subnet_ids: List[str] | None = None, vpc_id: str | None = None) List[Subnet]
List subnets. List any Private Network’s subnets. See ListPrivateNetworks to list a specific Private Network’s subnets. :param region: Region to target. If none is passed will use default region from the config. :param order_by: Sort order of the returned subnets. :param page: Page number to return, from the paginated results. :param page_size: Maximum number of Private Networks to return per page. :param organization_id: Organization ID to filter for. Only subnets belonging to this Organization will be returned. :param project_id: Project ID to filter for. Only subnets belonging to this Project will be returned. :param subnet_ids: Subnet IDs to filter for. Only subnets matching the specified IDs will be returned. :param vpc_id: VPC ID to filter for. Only subnets belonging to this VPC will be returned. :return:
List[Subnet]Usage:
result = api.list_subnets_all()
- list_vp_cs(*, region: str | None = None, order_by: ListVPCsRequestOrderBy | None = None, page: int | None = None, page_size: int | None = None, name: str | None = None, tags: List[str] | None = None, organization_id: str | None = None, project_id: str | None = None, is_default: bool | None = None, routing_enabled: bool | None = None) ListVPCsResponse
List VPCs. List existing VPCs in the specified region. :param region: Region to target. If none is passed will use default region from the config. :param order_by: Sort order of the returned VPCs. :param page: Page number to return, from the paginated results. :param page_size: Maximum number of VPCs to return per page. :param name: Name to filter for. Only VPCs with names containing this string will be returned. :param tags: Tags to filter for. Only VPCs with one or more matching tags will be returned. :param organization_id: Organization ID to filter for. Only VPCs belonging to this Organization will be returned. :param project_id: Project ID to filter for. Only VPCs belonging to this Project will be returned. :param is_default: Defines whether to filter only for VPCs which are the default one for their Project. :param routing_enabled: Defines whether to filter only for VPCs which route traffic between their Private Networks. :return:
ListVPCsResponseUsage:
result = api.list_vp_cs()
- list_vp_cs_all(*, region: str | None = None, order_by: ListVPCsRequestOrderBy | None = None, page: int | None = None, page_size: int | None = None, name: str | None = None, tags: List[str] | None = None, organization_id: str | None = None, project_id: str | None = None, is_default: bool | None = None, routing_enabled: bool | None = None) List[VPC]
List VPCs. List existing VPCs in the specified region. :param region: Region to target. If none is passed will use default region from the config. :param order_by: Sort order of the returned VPCs. :param page: Page number to return, from the paginated results. :param page_size: Maximum number of VPCs to return per page. :param name: Name to filter for. Only VPCs with names containing this string will be returned. :param tags: Tags to filter for. Only VPCs with one or more matching tags will be returned. :param organization_id: Organization ID to filter for. Only VPCs belonging to this Organization will be returned. :param project_id: Project ID to filter for. Only VPCs belonging to this Project will be returned. :param is_default: Defines whether to filter only for VPCs which are the default one for their Project. :param routing_enabled: Defines whether to filter only for VPCs which route traffic between their Private Networks. :return:
List[VPC]Usage:
result = api.list_vp_cs_all()
- set_acl(*, vpc_id: str, rules: List[AclRule], is_ipv6: bool, default_policy: Action, region: str | None = None) SetAclResponse
Set VPC ACL rules. Set the list of ACL rules and the default routing policy for a VPC. :param vpc_id: ID of the Network ACL’s VPC. :param rules: List of Network ACL rules. :param is_ipv6: Defines whether this set of ACL rules is for IPv6 (false = IPv4). Each Network ACL can have rules for only one IP type. :param default_policy: Action to take for packets which do not match any rules. :param region: Region to target. If none is passed will use default region from the config. :return:
SetAclResponseUsage:
result = api.set_acl( vpc_id="example", rules=[], is_ipv6=False, default_policy=Action.unknown_action, )
- update_private_network(*, private_network_id: str, region: str | None = None, name: str | None = None, tags: List[str] | None = None, default_route_propagation_enabled: bool | None = None) PrivateNetwork
Update Private Network. Update parameters (such as name or tags) of an existing Private Network, specified by its Private Network ID. :param private_network_id: Private Network ID. :param region: Region to target. If none is passed will use default region from the config. :param name: Name for the Private Network. :param tags: Tags for the Private Network. :param default_route_propagation_enabled: Defines whether default v4 and v6 routes are propagated for this Private Network. :return:
PrivateNetworkUsage:
result = api.update_private_network( private_network_id="example", )
- update_route(*, route_id: str, region: str | None = None, description: str | None = None, tags: List[str] | None = None, destination: str | None = None, nexthop_resource_id: str | None = None, nexthop_private_network_id: str | None = None) Route
Update Route. Update parameters of the specified Route. :param route_id: Route ID. :param region: Region to target. If none is passed will use default region from the config. :param description: Route description. :param tags: Tags of the Route. :param destination: Destination of the Route. :param nexthop_resource_id: ID of the nexthop resource. :param nexthop_private_network_id: ID of the nexthop private network. :return:
RouteUsage:
result = api.update_route( route_id="example", )
- update_vpc(*, vpc_id: str, region: str | None = None, name: str | None = None, tags: List[str] | None = None) VPC
Update VPC. Update parameters including name and tags of the specified VPC. :param vpc_id: VPC ID. :param region: Region to target. If none is passed will use default region from the config. :param name: Name for the VPC. :param tags: Tags for the VPC. :return:
VPCUsage:
result = api.update_vpc( vpc_id="example", )
scaleway.vpc.v2.marshalling module
- scaleway.vpc.v2.marshalling.marshal_AclRule(request: AclRule, defaults: ProfileDefaults) Dict[str, Any]
- scaleway.vpc.v2.marshalling.marshal_AddSubnetsRequest(request: AddSubnetsRequest, defaults: ProfileDefaults) Dict[str, Any]
- scaleway.vpc.v2.marshalling.marshal_CreatePrivateNetworkRequest(request: CreatePrivateNetworkRequest, defaults: ProfileDefaults) Dict[str, Any]
- scaleway.vpc.v2.marshalling.marshal_CreateRouteRequest(request: CreateRouteRequest, defaults: ProfileDefaults) Dict[str, Any]
- scaleway.vpc.v2.marshalling.marshal_CreateVPCRequest(request: CreateVPCRequest, defaults: ProfileDefaults) Dict[str, Any]
- scaleway.vpc.v2.marshalling.marshal_DeleteSubnetsRequest(request: DeleteSubnetsRequest, defaults: ProfileDefaults) Dict[str, Any]
- scaleway.vpc.v2.marshalling.marshal_SetAclRequest(request: SetAclRequest, defaults: ProfileDefaults) Dict[str, Any]
- scaleway.vpc.v2.marshalling.marshal_UpdatePrivateNetworkRequest(request: UpdatePrivateNetworkRequest, defaults: ProfileDefaults) Dict[str, Any]
- scaleway.vpc.v2.marshalling.marshal_UpdateRouteRequest(request: UpdateRouteRequest, defaults: ProfileDefaults) Dict[str, Any]
- scaleway.vpc.v2.marshalling.marshal_UpdateVPCRequest(request: UpdateVPCRequest, defaults: ProfileDefaults) Dict[str, Any]
- scaleway.vpc.v2.marshalling.unmarshal_AddSubnetsResponse(data: Any) AddSubnetsResponse
- scaleway.vpc.v2.marshalling.unmarshal_DeleteSubnetsResponse(data: Any) DeleteSubnetsResponse
- scaleway.vpc.v2.marshalling.unmarshal_GetAclResponse(data: Any) GetAclResponse
- scaleway.vpc.v2.marshalling.unmarshal_ListPrivateNetworksResponse(data: Any) ListPrivateNetworksResponse
- scaleway.vpc.v2.marshalling.unmarshal_ListSubnetsResponse(data: Any) ListSubnetsResponse
- scaleway.vpc.v2.marshalling.unmarshal_ListVPCsResponse(data: Any) ListVPCsResponse
- scaleway.vpc.v2.marshalling.unmarshal_PrivateNetwork(data: Any) PrivateNetwork
- scaleway.vpc.v2.marshalling.unmarshal_SetAclResponse(data: Any) SetAclResponse
scaleway.vpc.v2.types module
- class scaleway.vpc.v2.types.AclRule(protocol: 'AclRuleProtocol', source: 'str', src_port_low: 'int', src_port_high: 'int', destination: 'str', dst_port_low: 'int', dst_port_high: 'int', action: 'Action', description: 'Optional[str]' = None)
Bases:
object- description: str | None = None
Rule description.
- destination: str
Destination IP range to which this rule applies (CIDR notation with subnet mask).
- dst_port_high: int
Ending port of the destination port range to which this rule applies (inclusive).
- dst_port_low: int
Starting port of the destination port range to which this rule applies (inclusive).
- protocol: AclRuleProtocol
Protocol to which this rule applies.
- source: str
Source IP range to which this rule applies (CIDR notation with subnet mask).
- src_port_high: int
Ending port of the source port range to which this rule applies (inclusive).
- src_port_low: int
Starting port of the source port range to which this rule applies (inclusive).
- class scaleway.vpc.v2.types.AclRuleProtocol(value: str, names: Any | None = None, *args: Any, **kwargs: Any)
Bases:
str,Enum- ANY = 'any'
- ICMP = 'icmp'
- TCP = 'tcp'
- UDP = 'udp'
- class scaleway.vpc.v2.types.Action(value: str, names: Any | None = None, *args: Any, **kwargs: Any)
Bases:
str,Enum- ACCEPT = 'accept'
- DROP = 'drop'
- UNKNOWN_ACTION = 'unknown_action'
- class scaleway.vpc.v2.types.AddSubnetsRequest(private_network_id: 'str', region: 'Optional[ScwRegion]' = None, subnets: 'Optional[List[str]]' = <factory>)
Bases:
object- private_network_id: str
Private Network ID.
- region: str | None = None
Region to target. If none is passed will use default region from the config.
- subnets: List[str] | None
Private Network subnets CIDR.
- class scaleway.vpc.v2.types.AddSubnetsResponse(subnets: 'List[str]')
Bases:
object- subnets: List[str]
- class scaleway.vpc.v2.types.CreatePrivateNetworkRequest(default_route_propagation_enabled: 'bool', region: 'Optional[ScwRegion]' = None, name: 'Optional[str]' = None, project_id: 'Optional[str]' = None, tags: 'Optional[List[str]]' = <factory>, subnets: 'Optional[List[str]]' = <factory>, vpc_id: 'Optional[str]' = None)
Bases:
object- default_route_propagation_enabled: bool
Defines whether default v4 and v6 routes are propagated for this Private Network.
- name: str | None = None
Name for the Private Network.
- project_id: str | None = None
Scaleway Project in which to create the Private Network.
- region: str | None = None
Region to target. If none is passed will use default region from the config.
- subnets: List[str] | None
Private Network subnets CIDR.
- tags: List[str] | None
Tags for the Private Network.
- vpc_id: str | None = None
VPC in which to create the Private Network.
- class scaleway.vpc.v2.types.CreateRouteRequest(description: 'str', vpc_id: 'str', destination: 'str', region: 'Optional[ScwRegion]' = None, tags: 'Optional[List[str]]' = <factory>, nexthop_resource_id: 'Optional[str]' = None, nexthop_private_network_id: 'Optional[str]' = None)
Bases:
object- description: str
Route description.
- destination: str
Destination of the Route.
- nexthop_private_network_id: str | None = None
ID of the nexthop private network.
- nexthop_resource_id: str | None = None
ID of the nexthop resource.
- region: str | None = None
Region to target. If none is passed will use default region from the config.
- tags: List[str] | None
Tags of the Route.
- vpc_id: str
VPC the Route belongs to.
- class scaleway.vpc.v2.types.CreateVPCRequest(enable_routing: 'bool', region: 'Optional[ScwRegion]' = None, name: 'Optional[str]' = None, project_id: 'Optional[str]' = None, tags: 'Optional[List[str]]' = <factory>)
Bases:
object- enable_routing: bool
Enable routing between Private Networks in the VPC.
- name: str | None = None
Name for the VPC.
- project_id: str | None = None
Scaleway Project in which to create the VPC.
- region: str | None = None
Region to target. If none is passed will use default region from the config.
- tags: List[str] | None
Tags for the VPC.
- class scaleway.vpc.v2.types.DeletePrivateNetworkRequest(private_network_id: 'str', region: 'Optional[ScwRegion]' = None)
Bases:
object- private_network_id: str
Private Network ID.
- region: str | None = None
Region to target. If none is passed will use default region from the config.
- class scaleway.vpc.v2.types.DeleteRouteRequest(route_id: 'str', region: 'Optional[ScwRegion]' = None)
Bases:
object- region: str | None = None
Region to target. If none is passed will use default region from the config.
- route_id: str
Route ID.
- class scaleway.vpc.v2.types.DeleteSubnetsRequest(private_network_id: 'str', region: 'Optional[ScwRegion]' = None, subnets: 'Optional[List[str]]' = <factory>)
Bases:
object- private_network_id: str
Private Network ID.
- region: str | None = None
Region to target. If none is passed will use default region from the config.
- subnets: List[str] | None
Private Network subnets CIDR.
- class scaleway.vpc.v2.types.DeleteSubnetsResponse(subnets: 'List[str]')
Bases:
object- subnets: List[str]
- class scaleway.vpc.v2.types.DeleteVPCRequest(vpc_id: 'str', region: 'Optional[ScwRegion]' = None)
Bases:
object- region: str | None = None
Region to target. If none is passed will use default region from the config.
- vpc_id: str
VPC ID.
- class scaleway.vpc.v2.types.EnableCustomRoutesPropagationRequest(vpc_id: 'str', region: 'Optional[ScwRegion]' = None)
Bases:
object- region: str | None = None
Region to target. If none is passed will use default region from the config.
- vpc_id: str
VPC ID.
- class scaleway.vpc.v2.types.EnableDHCPRequest(private_network_id: 'str', region: 'Optional[ScwRegion]' = None)
Bases:
object- private_network_id: str
Private Network ID.
- region: str | None = None
Region to target. If none is passed will use default region from the config.
- class scaleway.vpc.v2.types.EnableRoutingRequest(vpc_id: 'str', region: 'Optional[ScwRegion]' = None)
Bases:
object- region: str | None = None
Region to target. If none is passed will use default region from the config.
- vpc_id: str
VPC ID.
- class scaleway.vpc.v2.types.GetAclRequest(vpc_id: 'str', is_ipv6: 'bool', region: 'Optional[ScwRegion]' = None)
Bases:
object- is_ipv6: bool
Defines whether this set of ACL rules is for IPv6 (false = IPv4). Each Network ACL can have rules for only one IP type.
- region: str | None = None
Region to target. If none is passed will use default region from the config.
- vpc_id: str
ID of the Network ACL’s VPC.
- class scaleway.vpc.v2.types.GetAclResponse(rules: 'List[AclRule]', default_policy: 'Action')
Bases:
object
- class scaleway.vpc.v2.types.GetPrivateNetworkRequest(private_network_id: 'str', region: 'Optional[ScwRegion]' = None)
Bases:
object- private_network_id: str
Private Network ID.
- region: str | None = None
Region to target. If none is passed will use default region from the config.
- class scaleway.vpc.v2.types.GetRouteRequest(route_id: 'str', region: 'Optional[ScwRegion]' = None)
Bases:
object- region: str | None = None
Region to target. If none is passed will use default region from the config.
- route_id: str
Route ID.
- class scaleway.vpc.v2.types.GetVPCRequest(vpc_id: 'str', region: 'Optional[ScwRegion]' = None)
Bases:
object- region: str | None = None
Region to target. If none is passed will use default region from the config.
- vpc_id: str
VPC ID.
- class scaleway.vpc.v2.types.ListPrivateNetworksRequest(region: 'Optional[ScwRegion]' = None, order_by: 'Optional[ListPrivateNetworksRequestOrderBy]' = <ListPrivateNetworksRequestOrderBy.CREATED_AT_ASC: 'created_at_asc'>, page: 'Optional[int]' = 0, page_size: 'Optional[int]' = 0, name: 'Optional[str]' = None, tags: 'Optional[List[str]]' = <factory>, organization_id: 'Optional[str]' = None, project_id: 'Optional[str]' = None, private_network_ids: 'Optional[List[str]]' = <factory>, vpc_id: 'Optional[str]' = None, dhcp_enabled: 'Optional[bool]' = False)
Bases:
object- dhcp_enabled: bool | None = False
DHCP status to filter for. When true, only Private Networks with managed DHCP enabled will be returned.
- name: str | None = None
Name to filter for. Only Private Networks with names containing this string will be returned.
- order_by: ListPrivateNetworksRequestOrderBy | None = 'created_at_asc'
Sort order of the returned Private Networks.
- organization_id: str | None = None
Organization ID to filter for. Only Private Networks belonging to this Organization will be returned.
- page: int | None = 0
Page number to return, from the paginated results.
- page_size: int | None = 0
Maximum number of Private Networks to return per page.
- private_network_ids: List[str] | None
Private Network IDs to filter for. Only Private Networks with one of these IDs will be returned.
- project_id: str | None = None
Project ID to filter for. Only Private Networks belonging to this Project will be returned.
- region: str | None = None
Region to target. If none is passed will use default region from the config.
- tags: List[str] | None
Tags to filter for. Only Private Networks with one or more matching tags will be returned.
- vpc_id: str | None = None
VPC ID to filter for. Only Private Networks belonging to this VPC will be returned.
- class scaleway.vpc.v2.types.ListPrivateNetworksRequestOrderBy(value: str, names: Any | None = None, *args: Any, **kwargs: Any)
Bases:
str,Enum- CREATED_AT_ASC = 'created_at_asc'
- CREATED_AT_DESC = 'created_at_desc'
- NAME_ASC = 'name_asc'
- NAME_DESC = 'name_desc'
- class scaleway.vpc.v2.types.ListPrivateNetworksResponse(private_networks: 'List[PrivateNetwork]', total_count: 'int')
Bases:
object- private_networks: List[PrivateNetwork]
- total_count: int
- class scaleway.vpc.v2.types.ListSubnetsRequest(region: 'Optional[ScwRegion]' = None, order_by: 'Optional[ListSubnetsRequestOrderBy]' = <ListSubnetsRequestOrderBy.CREATED_AT_ASC: 'created_at_asc'>, page: 'Optional[int]' = 0, page_size: 'Optional[int]' = 0, organization_id: 'Optional[str]' = None, project_id: 'Optional[str]' = None, subnet_ids: 'Optional[List[str]]' = <factory>, vpc_id: 'Optional[str]' = None)
Bases:
object- order_by: ListSubnetsRequestOrderBy | None = 'created_at_asc'
Sort order of the returned subnets.
- organization_id: str | None = None
Organization ID to filter for. Only subnets belonging to this Organization will be returned.
- page: int | None = 0
Page number to return, from the paginated results.
- page_size: int | None = 0
Maximum number of Private Networks to return per page.
- project_id: str | None = None
Project ID to filter for. Only subnets belonging to this Project will be returned.
- region: str | None = None
Region to target. If none is passed will use default region from the config.
- subnet_ids: List[str] | None
Subnet IDs to filter for. Only subnets matching the specified IDs will be returned.
- vpc_id: str | None = None
VPC ID to filter for. Only subnets belonging to this VPC will be returned.
- class scaleway.vpc.v2.types.ListSubnetsRequestOrderBy(value: str, names: Any | None = None, *args: Any, **kwargs: Any)
Bases:
str,Enum- CREATED_AT_ASC = 'created_at_asc'
- CREATED_AT_DESC = 'created_at_desc'
- class scaleway.vpc.v2.types.ListSubnetsResponse(subnets: 'List[Subnet]', total_count: 'int')
Bases:
object- total_count: int
- class scaleway.vpc.v2.types.ListVPCsRequest(region: 'Optional[ScwRegion]' = None, order_by: 'Optional[ListVPCsRequestOrderBy]' = <ListVPCsRequestOrderBy.CREATED_AT_ASC: 'created_at_asc'>, page: 'Optional[int]' = 0, page_size: 'Optional[int]' = 0, name: 'Optional[str]' = None, tags: 'Optional[List[str]]' = <factory>, organization_id: 'Optional[str]' = None, project_id: 'Optional[str]' = None, is_default: 'Optional[bool]' = False, routing_enabled: 'Optional[bool]' = False)
Bases:
object- is_default: bool | None = False
Defines whether to filter only for VPCs which are the default one for their Project.
- name: str | None = None
Name to filter for. Only VPCs with names containing this string will be returned.
- order_by: ListVPCsRequestOrderBy | None = 'created_at_asc'
Sort order of the returned VPCs.
- organization_id: str | None = None
Organization ID to filter for. Only VPCs belonging to this Organization will be returned.
- page: int | None = 0
Page number to return, from the paginated results.
- page_size: int | None = 0
Maximum number of VPCs to return per page.
- project_id: str | None = None
Project ID to filter for. Only VPCs belonging to this Project will be returned.
- region: str | None = None
Region to target. If none is passed will use default region from the config.
- routing_enabled: bool | None = False
Defines whether to filter only for VPCs which route traffic between their Private Networks.
- tags: List[str] | None
Tags to filter for. Only VPCs with one or more matching tags will be returned.
- class scaleway.vpc.v2.types.ListVPCsRequestOrderBy(value: str, names: Any | None = None, *args: Any, **kwargs: Any)
Bases:
str,Enum- CREATED_AT_ASC = 'created_at_asc'
- CREATED_AT_DESC = 'created_at_desc'
- NAME_ASC = 'name_asc'
- NAME_DESC = 'name_desc'
- class scaleway.vpc.v2.types.ListVPCsResponse(vpcs: 'List[VPC]', total_count: 'int')
Bases:
object- total_count: int
- class scaleway.vpc.v2.types.PrivateNetwork(id: 'str', name: 'str', organization_id: 'str', project_id: 'str', region: 'ScwRegion', tags: 'List[str]', subnets: 'List[Subnet]', vpc_id: 'str', dhcp_enabled: 'bool', default_route_propagation_enabled: 'bool', created_at: 'Optional[datetime]' = None, updated_at: 'Optional[datetime]' = None)
Bases:
object- created_at: datetime | None = None
Date the Private Network was created.
- default_route_propagation_enabled: bool
Defines whether default v4 and v6 routes are propagated for this Private Network.
- dhcp_enabled: bool
Defines whether managed DHCP is enabled for this Private Network.
- id: str
Private Network ID.
- name: str
Private Network name.
- organization_id: str
Scaleway Organization the Private Network belongs to.
- project_id: str
Scaleway Project the Private Network belongs to.
- region: str
Region in which the Private Network is available.
- tags: List[str]
Tags of the Private Network.
- updated_at: datetime | None = None
Date the Private Network was last modified.
- vpc_id: str
VPC the Private Network belongs to.
- class scaleway.vpc.v2.types.Route(id: 'str', description: 'str', tags: 'List[str]', vpc_id: 'str', destination: 'str', is_read_only: 'bool', region: 'ScwRegion', nexthop_resource_id: 'Optional[str]' = None, nexthop_private_network_id: 'Optional[str]' = None, created_at: 'Optional[datetime]' = None, updated_at: 'Optional[datetime]' = None)
Bases:
object- created_at: datetime | None = None
Date the Route was created.
- description: str
Route description.
- destination: str
Destination of the Route.
- id: str
Route ID.
- is_read_only: bool
Defines whether the route can be modified or deleted by the user.
- nexthop_private_network_id: str | None = None
ID of the nexthop private network.
- nexthop_resource_id: str | None = None
ID of the nexthop resource.
- region: str
Region of the Route.
- tags: List[str]
Tags of the Route.
- updated_at: datetime | None = None
Date the Route was last modified.
- vpc_id: str
VPC the Route belongs to.
- class scaleway.vpc.v2.types.SetAclRequest(vpc_id: 'str', rules: 'List[AclRule]', is_ipv6: 'bool', default_policy: 'Action', region: 'Optional[ScwRegion]' = None)
Bases:
object- is_ipv6: bool
Defines whether this set of ACL rules is for IPv6 (false = IPv4). Each Network ACL can have rules for only one IP type.
- region: str | None = None
Region to target. If none is passed will use default region from the config.
- vpc_id: str
ID of the Network ACL’s VPC.
- class scaleway.vpc.v2.types.SetAclResponse(rules: 'List[AclRule]', default_policy: 'Action')
Bases:
object
- class scaleway.vpc.v2.types.Subnet(id: 'str', subnet: 'str', project_id: 'str', private_network_id: 'str', vpc_id: 'str', created_at: 'Optional[datetime]' = None, updated_at: 'Optional[datetime]' = None)
Bases:
object- created_at: datetime | None = None
Subnet creation date.
- id: str
ID of the subnet.
- private_network_id: str
Private Network the subnet belongs to.
- project_id: str
Scaleway Project the subnet belongs to.
- subnet: str
Subnet CIDR.
- updated_at: datetime | None = None
Subnet last modification date.
- vpc_id: str
VPC the subnet belongs to.
- class scaleway.vpc.v2.types.UpdatePrivateNetworkRequest(private_network_id: 'str', region: 'Optional[ScwRegion]' = None, name: 'Optional[str]' = None, tags: 'Optional[List[str]]' = <factory>, default_route_propagation_enabled: 'Optional[bool]' = False)
Bases:
object- default_route_propagation_enabled: bool | None = False
Defines whether default v4 and v6 routes are propagated for this Private Network.
- name: str | None = None
Name for the Private Network.
- private_network_id: str
Private Network ID.
- region: str | None = None
Region to target. If none is passed will use default region from the config.
- tags: List[str] | None
Tags for the Private Network.
- class scaleway.vpc.v2.types.UpdateRouteRequest(route_id: 'str', region: 'Optional[ScwRegion]' = None, description: 'Optional[str]' = None, tags: 'Optional[List[str]]' = <factory>, destination: 'Optional[str]' = None, nexthop_resource_id: 'Optional[str]' = None, nexthop_private_network_id: 'Optional[str]' = None)
Bases:
object- description: str | None = None
Route description.
- destination: str | None = None
Destination of the Route.
- nexthop_private_network_id: str | None = None
ID of the nexthop private network.
- nexthop_resource_id: str | None = None
ID of the nexthop resource.
- region: str | None = None
Region to target. If none is passed will use default region from the config.
- route_id: str
Route ID.
- tags: List[str] | None
Tags of the Route.
- class scaleway.vpc.v2.types.UpdateVPCRequest(vpc_id: 'str', region: 'Optional[ScwRegion]' = None, name: 'Optional[str]' = None, tags: 'Optional[List[str]]' = <factory>)
Bases:
object- name: str | None = None
Name for the VPC.
- region: str | None = None
Region to target. If none is passed will use default region from the config.
- tags: List[str] | None
Tags for the VPC.
- vpc_id: str
VPC ID.
- class scaleway.vpc.v2.types.VPC(id: 'str', name: 'str', organization_id: 'str', project_id: 'str', region: 'ScwRegion', tags: 'List[str]', is_default: 'bool', private_network_count: 'int', routing_enabled: 'bool', custom_routes_propagation_enabled: 'bool', created_at: 'Optional[datetime]' = None, updated_at: 'Optional[datetime]' = None)
Bases:
object- created_at: datetime | None = None
Date the VPC was created.
- custom_routes_propagation_enabled: bool
Defines whether the VPC advertises custom routes between its Private Networks.
- id: str
VPC ID.
- is_default: bool
Defines whether the VPC is the default one for its Project.
- name: str
VPC name.
- organization_id: str
Scaleway Organization the VPC belongs to.
- private_network_count: int
Number of Private Networks within this VPC.
- project_id: str
Scaleway Project the VPC belongs to.
- region: str
Region of the VPC.
- routing_enabled: bool
Defines whether the VPC routes traffic between its Private Networks.
- tags: List[str]
Tags for the VPC.
- updated_at: datetime | None = None
Date the VPC was last modified.
Module contents
- class scaleway.vpc.v2.AclRule(protocol: 'AclRuleProtocol', source: 'str', src_port_low: 'int', src_port_high: 'int', destination: 'str', dst_port_low: 'int', dst_port_high: 'int', action: 'Action', description: 'Optional[str]' = None)
Bases:
object- description: str | None = None
Rule description.
- destination: str
Destination IP range to which this rule applies (CIDR notation with subnet mask).
- dst_port_high: int
Ending port of the destination port range to which this rule applies (inclusive).
- dst_port_low: int
Starting port of the destination port range to which this rule applies (inclusive).
- protocol: AclRuleProtocol
Protocol to which this rule applies.
- source: str
Source IP range to which this rule applies (CIDR notation with subnet mask).
- src_port_high: int
Ending port of the source port range to which this rule applies (inclusive).
- src_port_low: int
Starting port of the source port range to which this rule applies (inclusive).
- class scaleway.vpc.v2.AclRuleProtocol(value: str, names: Any | None = None, *args: Any, **kwargs: Any)
Bases:
str,Enum- ANY = 'any'
- ICMP = 'icmp'
- TCP = 'tcp'
- UDP = 'udp'
- class scaleway.vpc.v2.Action(value: str, names: Any | None = None, *args: Any, **kwargs: Any)
Bases:
str,Enum- ACCEPT = 'accept'
- DROP = 'drop'
- UNKNOWN_ACTION = 'unknown_action'
- class scaleway.vpc.v2.AddSubnetsRequest(private_network_id: 'str', region: 'Optional[ScwRegion]' = None, subnets: 'Optional[List[str]]' = <factory>)
Bases:
object- private_network_id: str
Private Network ID.
- region: str | None = None
Region to target. If none is passed will use default region from the config.
- subnets: List[str] | None
Private Network subnets CIDR.
- class scaleway.vpc.v2.CreatePrivateNetworkRequest(default_route_propagation_enabled: 'bool', region: 'Optional[ScwRegion]' = None, name: 'Optional[str]' = None, project_id: 'Optional[str]' = None, tags: 'Optional[List[str]]' = <factory>, subnets: 'Optional[List[str]]' = <factory>, vpc_id: 'Optional[str]' = None)
Bases:
object- default_route_propagation_enabled: bool
Defines whether default v4 and v6 routes are propagated for this Private Network.
- name: str | None = None
Name for the Private Network.
- project_id: str | None = None
Scaleway Project in which to create the Private Network.
- region: str | None = None
Region to target. If none is passed will use default region from the config.
- subnets: List[str] | None
Private Network subnets CIDR.
- tags: List[str] | None
Tags for the Private Network.
- vpc_id: str | None = None
VPC in which to create the Private Network.
- class scaleway.vpc.v2.CreateRouteRequest(description: 'str', vpc_id: 'str', destination: 'str', region: 'Optional[ScwRegion]' = None, tags: 'Optional[List[str]]' = <factory>, nexthop_resource_id: 'Optional[str]' = None, nexthop_private_network_id: 'Optional[str]' = None)
Bases:
object- description: str
Route description.
- destination: str
Destination of the Route.
- nexthop_private_network_id: str | None = None
ID of the nexthop private network.
- nexthop_resource_id: str | None = None
ID of the nexthop resource.
- region: str | None = None
Region to target. If none is passed will use default region from the config.
- tags: List[str] | None
Tags of the Route.
- vpc_id: str
VPC the Route belongs to.
- class scaleway.vpc.v2.CreateVPCRequest(enable_routing: 'bool', region: 'Optional[ScwRegion]' = None, name: 'Optional[str]' = None, project_id: 'Optional[str]' = None, tags: 'Optional[List[str]]' = <factory>)
Bases:
object- enable_routing: bool
Enable routing between Private Networks in the VPC.
- name: str | None = None
Name for the VPC.
- project_id: str | None = None
Scaleway Project in which to create the VPC.
- region: str | None = None
Region to target. If none is passed will use default region from the config.
- tags: List[str] | None
Tags for the VPC.
- class scaleway.vpc.v2.DeletePrivateNetworkRequest(private_network_id: 'str', region: 'Optional[ScwRegion]' = None)
Bases:
object- private_network_id: str
Private Network ID.
- region: str | None = None
Region to target. If none is passed will use default region from the config.
- class scaleway.vpc.v2.DeleteRouteRequest(route_id: 'str', region: 'Optional[ScwRegion]' = None)
Bases:
object- region: str | None = None
Region to target. If none is passed will use default region from the config.
- route_id: str
Route ID.
- class scaleway.vpc.v2.DeleteSubnetsRequest(private_network_id: 'str', region: 'Optional[ScwRegion]' = None, subnets: 'Optional[List[str]]' = <factory>)
Bases:
object- private_network_id: str
Private Network ID.
- region: str | None = None
Region to target. If none is passed will use default region from the config.
- subnets: List[str] | None
Private Network subnets CIDR.
- class scaleway.vpc.v2.DeleteSubnetsResponse(subnets: 'List[str]')
Bases:
object- subnets: List[str]
- class scaleway.vpc.v2.DeleteVPCRequest(vpc_id: 'str', region: 'Optional[ScwRegion]' = None)
Bases:
object- region: str | None = None
Region to target. If none is passed will use default region from the config.
- vpc_id: str
VPC ID.
- class scaleway.vpc.v2.EnableCustomRoutesPropagationRequest(vpc_id: 'str', region: 'Optional[ScwRegion]' = None)
Bases:
object- region: str | None = None
Region to target. If none is passed will use default region from the config.
- vpc_id: str
VPC ID.
- class scaleway.vpc.v2.EnableDHCPRequest(private_network_id: 'str', region: 'Optional[ScwRegion]' = None)
Bases:
object- private_network_id: str
Private Network ID.
- region: str | None = None
Region to target. If none is passed will use default region from the config.
- class scaleway.vpc.v2.EnableRoutingRequest(vpc_id: 'str', region: 'Optional[ScwRegion]' = None)
Bases:
object- region: str | None = None
Region to target. If none is passed will use default region from the config.
- vpc_id: str
VPC ID.
- class scaleway.vpc.v2.GetAclRequest(vpc_id: 'str', is_ipv6: 'bool', region: 'Optional[ScwRegion]' = None)
Bases:
object- is_ipv6: bool
Defines whether this set of ACL rules is for IPv6 (false = IPv4). Each Network ACL can have rules for only one IP type.
- region: str | None = None
Region to target. If none is passed will use default region from the config.
- vpc_id: str
ID of the Network ACL’s VPC.
- class scaleway.vpc.v2.GetAclResponse(rules: 'List[AclRule]', default_policy: 'Action')
Bases:
object
- class scaleway.vpc.v2.GetPrivateNetworkRequest(private_network_id: 'str', region: 'Optional[ScwRegion]' = None)
Bases:
object- private_network_id: str
Private Network ID.
- region: str | None = None
Region to target. If none is passed will use default region from the config.
- class scaleway.vpc.v2.GetRouteRequest(route_id: 'str', region: 'Optional[ScwRegion]' = None)
Bases:
object- region: str | None = None
Region to target. If none is passed will use default region from the config.
- route_id: str
Route ID.
- class scaleway.vpc.v2.GetVPCRequest(vpc_id: 'str', region: 'Optional[ScwRegion]' = None)
Bases:
object- region: str | None = None
Region to target. If none is passed will use default region from the config.
- vpc_id: str
VPC ID.
- class scaleway.vpc.v2.ListPrivateNetworksRequest(region: 'Optional[ScwRegion]' = None, order_by: 'Optional[ListPrivateNetworksRequestOrderBy]' = <ListPrivateNetworksRequestOrderBy.CREATED_AT_ASC: 'created_at_asc'>, page: 'Optional[int]' = 0, page_size: 'Optional[int]' = 0, name: 'Optional[str]' = None, tags: 'Optional[List[str]]' = <factory>, organization_id: 'Optional[str]' = None, project_id: 'Optional[str]' = None, private_network_ids: 'Optional[List[str]]' = <factory>, vpc_id: 'Optional[str]' = None, dhcp_enabled: 'Optional[bool]' = False)
Bases:
object- dhcp_enabled: bool | None = False
DHCP status to filter for. When true, only Private Networks with managed DHCP enabled will be returned.
- name: str | None = None
Name to filter for. Only Private Networks with names containing this string will be returned.
- order_by: ListPrivateNetworksRequestOrderBy | None = 'created_at_asc'
Sort order of the returned Private Networks.
- organization_id: str | None = None
Organization ID to filter for. Only Private Networks belonging to this Organization will be returned.
- page: int | None = 0
Page number to return, from the paginated results.
- page_size: int | None = 0
Maximum number of Private Networks to return per page.
- private_network_ids: List[str] | None
Private Network IDs to filter for. Only Private Networks with one of these IDs will be returned.
- project_id: str | None = None
Project ID to filter for. Only Private Networks belonging to this Project will be returned.
- region: str | None = None
Region to target. If none is passed will use default region from the config.
- tags: List[str] | None
Tags to filter for. Only Private Networks with one or more matching tags will be returned.
- vpc_id: str | None = None
VPC ID to filter for. Only Private Networks belonging to this VPC will be returned.
- class scaleway.vpc.v2.ListPrivateNetworksRequestOrderBy(value: str, names: Any | None = None, *args: Any, **kwargs: Any)
Bases:
str,Enum- CREATED_AT_ASC = 'created_at_asc'
- CREATED_AT_DESC = 'created_at_desc'
- NAME_ASC = 'name_asc'
- NAME_DESC = 'name_desc'
- class scaleway.vpc.v2.ListPrivateNetworksResponse(private_networks: 'List[PrivateNetwork]', total_count: 'int')
Bases:
object- private_networks: List[PrivateNetwork]
- total_count: int
- class scaleway.vpc.v2.ListSubnetsRequest(region: 'Optional[ScwRegion]' = None, order_by: 'Optional[ListSubnetsRequestOrderBy]' = <ListSubnetsRequestOrderBy.CREATED_AT_ASC: 'created_at_asc'>, page: 'Optional[int]' = 0, page_size: 'Optional[int]' = 0, organization_id: 'Optional[str]' = None, project_id: 'Optional[str]' = None, subnet_ids: 'Optional[List[str]]' = <factory>, vpc_id: 'Optional[str]' = None)
Bases:
object- order_by: ListSubnetsRequestOrderBy | None = 'created_at_asc'
Sort order of the returned subnets.
- organization_id: str | None = None
Organization ID to filter for. Only subnets belonging to this Organization will be returned.
- page: int | None = 0
Page number to return, from the paginated results.
- page_size: int | None = 0
Maximum number of Private Networks to return per page.
- project_id: str | None = None
Project ID to filter for. Only subnets belonging to this Project will be returned.
- region: str | None = None
Region to target. If none is passed will use default region from the config.
- subnet_ids: List[str] | None
Subnet IDs to filter for. Only subnets matching the specified IDs will be returned.
- vpc_id: str | None = None
VPC ID to filter for. Only subnets belonging to this VPC will be returned.
- class scaleway.vpc.v2.ListSubnetsRequestOrderBy(value: str, names: Any | None = None, *args: Any, **kwargs: Any)
Bases:
str,Enum- CREATED_AT_ASC = 'created_at_asc'
- CREATED_AT_DESC = 'created_at_desc'
- class scaleway.vpc.v2.ListSubnetsResponse(subnets: 'List[Subnet]', total_count: 'int')
Bases:
object- total_count: int
- class scaleway.vpc.v2.ListVPCsRequest(region: 'Optional[ScwRegion]' = None, order_by: 'Optional[ListVPCsRequestOrderBy]' = <ListVPCsRequestOrderBy.CREATED_AT_ASC: 'created_at_asc'>, page: 'Optional[int]' = 0, page_size: 'Optional[int]' = 0, name: 'Optional[str]' = None, tags: 'Optional[List[str]]' = <factory>, organization_id: 'Optional[str]' = None, project_id: 'Optional[str]' = None, is_default: 'Optional[bool]' = False, routing_enabled: 'Optional[bool]' = False)
Bases:
object- is_default: bool | None = False
Defines whether to filter only for VPCs which are the default one for their Project.
- name: str | None = None
Name to filter for. Only VPCs with names containing this string will be returned.
- order_by: ListVPCsRequestOrderBy | None = 'created_at_asc'
Sort order of the returned VPCs.
- organization_id: str | None = None
Organization ID to filter for. Only VPCs belonging to this Organization will be returned.
- page: int | None = 0
Page number to return, from the paginated results.
- page_size: int | None = 0
Maximum number of VPCs to return per page.
- project_id: str | None = None
Project ID to filter for. Only VPCs belonging to this Project will be returned.
- region: str | None = None
Region to target. If none is passed will use default region from the config.
- routing_enabled: bool | None = False
Defines whether to filter only for VPCs which route traffic between their Private Networks.
- tags: List[str] | None
Tags to filter for. Only VPCs with one or more matching tags will be returned.
- class scaleway.vpc.v2.ListVPCsRequestOrderBy(value: str, names: Any | None = None, *args: Any, **kwargs: Any)
Bases:
str,Enum- CREATED_AT_ASC = 'created_at_asc'
- CREATED_AT_DESC = 'created_at_desc'
- NAME_ASC = 'name_asc'
- NAME_DESC = 'name_desc'
- class scaleway.vpc.v2.ListVPCsResponse(vpcs: 'List[VPC]', total_count: 'int')
Bases:
object- total_count: int
- class scaleway.vpc.v2.PrivateNetwork(id: 'str', name: 'str', organization_id: 'str', project_id: 'str', region: 'ScwRegion', tags: 'List[str]', subnets: 'List[Subnet]', vpc_id: 'str', dhcp_enabled: 'bool', default_route_propagation_enabled: 'bool', created_at: 'Optional[datetime]' = None, updated_at: 'Optional[datetime]' = None)
Bases:
object- created_at: datetime | None = None
Date the Private Network was created.
- default_route_propagation_enabled: bool
Defines whether default v4 and v6 routes are propagated for this Private Network.
- dhcp_enabled: bool
Defines whether managed DHCP is enabled for this Private Network.
- id: str
Private Network ID.
- name: str
Private Network name.
- organization_id: str
Scaleway Organization the Private Network belongs to.
- project_id: str
Scaleway Project the Private Network belongs to.
- region: str
Region in which the Private Network is available.
- tags: List[str]
Tags of the Private Network.
- updated_at: datetime | None = None
Date the Private Network was last modified.
- vpc_id: str
VPC the Private Network belongs to.
- class scaleway.vpc.v2.Route(id: 'str', description: 'str', tags: 'List[str]', vpc_id: 'str', destination: 'str', is_read_only: 'bool', region: 'ScwRegion', nexthop_resource_id: 'Optional[str]' = None, nexthop_private_network_id: 'Optional[str]' = None, created_at: 'Optional[datetime]' = None, updated_at: 'Optional[datetime]' = None)
Bases:
object- created_at: datetime | None = None
Date the Route was created.
- description: str
Route description.
- destination: str
Destination of the Route.
- id: str
Route ID.
- is_read_only: bool
Defines whether the route can be modified or deleted by the user.
- nexthop_private_network_id: str | None = None
ID of the nexthop private network.
- nexthop_resource_id: str | None = None
ID of the nexthop resource.
- region: str
Region of the Route.
- tags: List[str]
Tags of the Route.
- updated_at: datetime | None = None
Date the Route was last modified.
- vpc_id: str
VPC the Route belongs to.
- class scaleway.vpc.v2.SetAclRequest(vpc_id: 'str', rules: 'List[AclRule]', is_ipv6: 'bool', default_policy: 'Action', region: 'Optional[ScwRegion]' = None)
Bases:
object- is_ipv6: bool
Defines whether this set of ACL rules is for IPv6 (false = IPv4). Each Network ACL can have rules for only one IP type.
- region: str | None = None
Region to target. If none is passed will use default region from the config.
- vpc_id: str
ID of the Network ACL’s VPC.
- class scaleway.vpc.v2.SetAclResponse(rules: 'List[AclRule]', default_policy: 'Action')
Bases:
object
- class scaleway.vpc.v2.Subnet(id: 'str', subnet: 'str', project_id: 'str', private_network_id: 'str', vpc_id: 'str', created_at: 'Optional[datetime]' = None, updated_at: 'Optional[datetime]' = None)
Bases:
object- created_at: datetime | None = None
Subnet creation date.
- id: str
ID of the subnet.
- private_network_id: str
Private Network the subnet belongs to.
- project_id: str
Scaleway Project the subnet belongs to.
- subnet: str
Subnet CIDR.
- updated_at: datetime | None = None
Subnet last modification date.
- vpc_id: str
VPC the subnet belongs to.
- class scaleway.vpc.v2.UpdatePrivateNetworkRequest(private_network_id: 'str', region: 'Optional[ScwRegion]' = None, name: 'Optional[str]' = None, tags: 'Optional[List[str]]' = <factory>, default_route_propagation_enabled: 'Optional[bool]' = False)
Bases:
object- default_route_propagation_enabled: bool | None = False
Defines whether default v4 and v6 routes are propagated for this Private Network.
- name: str | None = None
Name for the Private Network.
- private_network_id: str
Private Network ID.
- region: str | None = None
Region to target. If none is passed will use default region from the config.
- tags: List[str] | None
Tags for the Private Network.
- class scaleway.vpc.v2.UpdateRouteRequest(route_id: 'str', region: 'Optional[ScwRegion]' = None, description: 'Optional[str]' = None, tags: 'Optional[List[str]]' = <factory>, destination: 'Optional[str]' = None, nexthop_resource_id: 'Optional[str]' = None, nexthop_private_network_id: 'Optional[str]' = None)
Bases:
object- description: str | None = None
Route description.
- destination: str | None = None
Destination of the Route.
- nexthop_private_network_id: str | None = None
ID of the nexthop private network.
- nexthop_resource_id: str | None = None
ID of the nexthop resource.
- region: str | None = None
Region to target. If none is passed will use default region from the config.
- route_id: str
Route ID.
- tags: List[str] | None
Tags of the Route.
- class scaleway.vpc.v2.UpdateVPCRequest(vpc_id: 'str', region: 'Optional[ScwRegion]' = None, name: 'Optional[str]' = None, tags: 'Optional[List[str]]' = <factory>)
Bases:
object- name: str | None = None
Name for the VPC.
- region: str | None = None
Region to target. If none is passed will use default region from the config.
- tags: List[str] | None
Tags for the VPC.
- vpc_id: str
VPC ID.
- class scaleway.vpc.v2.VPC(id: 'str', name: 'str', organization_id: 'str', project_id: 'str', region: 'ScwRegion', tags: 'List[str]', is_default: 'bool', private_network_count: 'int', routing_enabled: 'bool', custom_routes_propagation_enabled: 'bool', created_at: 'Optional[datetime]' = None, updated_at: 'Optional[datetime]' = None)
Bases:
object- created_at: datetime | None = None
Date the VPC was created.
- custom_routes_propagation_enabled: bool
Defines whether the VPC advertises custom routes between its Private Networks.
- id: str
VPC ID.
- is_default: bool
Defines whether the VPC is the default one for its Project.
- name: str
VPC name.
- organization_id: str
Scaleway Organization the VPC belongs to.
- private_network_count: int
Number of Private Networks within this VPC.
- project_id: str
Scaleway Project the VPC belongs to.
- region: str
Region of the VPC.
- routing_enabled: bool
Defines whether the VPC routes traffic between its Private Networks.
- tags: List[str]
Tags for the VPC.
- updated_at: datetime | None = None
Date the VPC was last modified.
- class scaleway.vpc.v2.VpcV2API(client: Client, *, bypass_validation: bool = False)
Bases:
APIThis API allows you to manage your Virtual Private Clouds (VPCs) and Private Networks.
- add_subnets(*, private_network_id: str, region: str | None = None, subnets: List[str] | None = None) AddSubnetsResponse
Add subnets to a Private Network. Add new subnets to an existing Private Network. :param private_network_id: Private Network ID. :param region: Region to target. If none is passed will use default region from the config. :param subnets: Private Network subnets CIDR. :return:
AddSubnetsResponseUsage:
result = api.add_subnets( private_network_id="example", )
- create_private_network(*, default_route_propagation_enabled: bool, region: str | None = None, name: str | None = None, project_id: str | None = None, tags: List[str] | None = None, subnets: List[str] | None = None, vpc_id: str | None = None) PrivateNetwork
Create a Private Network. Create a new Private Network. Once created, you can attach Scaleway resources which are in the same region. :param default_route_propagation_enabled: Defines whether default v4 and v6 routes are propagated for this Private Network. :param region: Region to target. If none is passed will use default region from the config. :param name: Name for the Private Network. :param project_id: Scaleway Project in which to create the Private Network. :param tags: Tags for the Private Network. :param subnets: Private Network subnets CIDR. :param vpc_id: VPC in which to create the Private Network. :return:
PrivateNetworkUsage:
result = api.create_private_network( default_route_propagation_enabled=False, )
- create_route(*, description: str, vpc_id: str, destination: str, region: str | None = None, tags: List[str] | None = None, nexthop_resource_id: str | None = None, nexthop_private_network_id: str | None = None) Route
Create a Route. Create a new custom Route. :param description: Route description. :param vpc_id: VPC the Route belongs to. :param destination: Destination of the Route. :param region: Region to target. If none is passed will use default region from the config. :param tags: Tags of the Route. :param nexthop_resource_id: ID of the nexthop resource. :param nexthop_private_network_id: ID of the nexthop private network. :return:
RouteUsage:
result = api.create_route( description="example", vpc_id="example", destination="example", )
- create_vpc(*, enable_routing: bool, region: str | None = None, name: str | None = None, project_id: str | None = None, tags: List[str] | None = None) VPC
Create a VPC. Create a new VPC in the specified region. :param enable_routing: Enable routing between Private Networks in the VPC. :param region: Region to target. If none is passed will use default region from the config. :param name: Name for the VPC. :param project_id: Scaleway Project in which to create the VPC. :param tags: Tags for the VPC. :return:
VPCUsage:
result = api.create_vpc( enable_routing=False, )
- delete_private_network(*, private_network_id: str, region: str | None = None) None
Delete a Private Network. Delete an existing Private Network. Note that you must first detach all resources from the network, in order to delete it. :param private_network_id: Private Network ID. :param region: Region to target. If none is passed will use default region from the config.
Usage:
result = api.delete_private_network( private_network_id="example", )
- delete_route(*, route_id: str, region: str | None = None) None
Delete a Route. Delete a Route specified by its Route ID. :param route_id: Route ID. :param region: Region to target. If none is passed will use default region from the config.
Usage:
result = api.delete_route( route_id="example", )
- delete_subnets(*, private_network_id: str, region: str | None = None, subnets: List[str] | None = None) DeleteSubnetsResponse
Delete subnets from a Private Network. Delete the specified subnets from a Private Network. :param private_network_id: Private Network ID. :param region: Region to target. If none is passed will use default region from the config. :param subnets: Private Network subnets CIDR. :return:
DeleteSubnetsResponseUsage:
result = api.delete_subnets( private_network_id="example", )
- delete_vpc(*, vpc_id: str, region: str | None = None) None
Delete a VPC. Delete a VPC specified by its VPC ID. :param vpc_id: VPC ID. :param region: Region to target. If none is passed will use default region from the config.
Usage:
result = api.delete_vpc( vpc_id="example", )
- enable_custom_routes_propagation(*, vpc_id: str, region: str | None = None) VPC
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 vpc_id: VPC ID. :param region: Region to target. If none is passed will use default region from the config. :return:
VPCUsage:
result = api.enable_custom_routes_propagation( vpc_id="example", )
- enable_dhcp(*, private_network_id: str, region: str | None = None) PrivateNetwork
Enable DHCP on a Private Network. Enable DHCP managed on an existing Private Network. Note that you will not be able to deactivate it afterwards. :param private_network_id: Private Network ID. :param region: Region to target. If none is passed will use default region from the config. :return:
PrivateNetworkUsage:
result = api.enable_dhcp( private_network_id="example", )
- enable_routing(*, vpc_id: str, region: str | None = None) VPC
Enable routing on a VPC. Enable routing on an existing VPC. Note that you will not be able to deactivate it afterwards. :param vpc_id: VPC ID. :param region: Region to target. If none is passed will use default region from the config. :return:
VPCUsage:
result = api.enable_routing( vpc_id="example", )
- get_acl(*, vpc_id: str, is_ipv6: bool, region: str | None = None) GetAclResponse
Get ACL Rules for VPC. Retrieve a list of ACL rules for a VPC, specified by its VPC ID. :param vpc_id: ID of the Network ACL’s VPC. :param is_ipv6: Defines whether this set of ACL rules is for IPv6 (false = IPv4). Each Network ACL can have rules for only one IP type. :param region: Region to target. If none is passed will use default region from the config. :return:
GetAclResponseUsage:
result = api.get_acl( vpc_id="example", is_ipv6=False, )
- get_private_network(*, private_network_id: str, region: str | None = None) PrivateNetwork
Get a Private Network. Retrieve information about an existing Private Network, specified by its Private Network ID. Its full details are returned in the response object. :param private_network_id: Private Network ID. :param region: Region to target. If none is passed will use default region from the config. :return:
PrivateNetworkUsage:
result = api.get_private_network( private_network_id="example", )
- get_route(*, route_id: str, region: str | None = None) Route
Get a Route. Retrieve details of an existing Route, specified by its Route ID. :param route_id: Route ID. :param region: Region to target. If none is passed will use default region from the config. :return:
RouteUsage:
result = api.get_route( route_id="example", )
- get_vpc(*, vpc_id: str, region: str | None = None) VPC
Get a VPC. Retrieve details of an existing VPC, specified by its VPC ID. :param vpc_id: VPC ID. :param region: Region to target. If none is passed will use default region from the config. :return:
VPCUsage:
result = api.get_vpc( vpc_id="example", )
- list_private_networks(*, region: str | None = None, order_by: ListPrivateNetworksRequestOrderBy | None = None, page: int | None = None, page_size: int | None = None, name: str | None = None, tags: List[str] | None = None, organization_id: str | None = None, project_id: str | None = None, private_network_ids: List[str] | None = None, vpc_id: str | None = None, dhcp_enabled: bool | None = None) ListPrivateNetworksResponse
List Private Networks. List existing Private Networks in the specified region. By default, the Private Networks returned in the list are ordered by creation date in ascending order, though this can be modified via the order_by field. :param region: Region to target. If none is passed will use default region from the config. :param order_by: Sort order of the returned Private Networks. :param page: Page number to return, from the paginated results. :param page_size: Maximum number of Private Networks to return per page. :param name: Name to filter for. Only Private Networks with names containing this string will be returned. :param tags: Tags to filter for. Only Private Networks with one or more matching tags will be returned. :param organization_id: Organization ID to filter for. Only Private Networks belonging to this Organization will be returned. :param project_id: Project ID to filter for. Only Private Networks belonging to this Project will be returned. :param private_network_ids: Private Network IDs to filter for. Only Private Networks with one of these IDs will be returned. :param vpc_id: VPC ID to filter for. Only Private Networks belonging to this VPC will be returned. :param dhcp_enabled: DHCP status to filter for. When true, only Private Networks with managed DHCP enabled will be returned. :return:
ListPrivateNetworksResponseUsage:
result = api.list_private_networks()
- list_private_networks_all(*, region: str | None = None, order_by: ListPrivateNetworksRequestOrderBy | None = None, page: int | None = None, page_size: int | None = None, name: str | None = None, tags: List[str] | None = None, organization_id: str | None = None, project_id: str | None = None, private_network_ids: List[str] | None = None, vpc_id: str | None = None, dhcp_enabled: bool | None = None) List[PrivateNetwork]
List Private Networks. List existing Private Networks in the specified region. By default, the Private Networks returned in the list are ordered by creation date in ascending order, though this can be modified via the order_by field. :param region: Region to target. If none is passed will use default region from the config. :param order_by: Sort order of the returned Private Networks. :param page: Page number to return, from the paginated results. :param page_size: Maximum number of Private Networks to return per page. :param name: Name to filter for. Only Private Networks with names containing this string will be returned. :param tags: Tags to filter for. Only Private Networks with one or more matching tags will be returned. :param organization_id: Organization ID to filter for. Only Private Networks belonging to this Organization will be returned. :param project_id: Project ID to filter for. Only Private Networks belonging to this Project will be returned. :param private_network_ids: Private Network IDs to filter for. Only Private Networks with one of these IDs will be returned. :param vpc_id: VPC ID to filter for. Only Private Networks belonging to this VPC will be returned. :param dhcp_enabled: DHCP status to filter for. When true, only Private Networks with managed DHCP enabled will be returned. :return:
List[PrivateNetwork]Usage:
result = api.list_private_networks_all()
- list_subnets(*, region: str | None = None, order_by: ListSubnetsRequestOrderBy | None = None, page: int | None = None, page_size: int | None = None, organization_id: str | None = None, project_id: str | None = None, subnet_ids: List[str] | None = None, vpc_id: str | None = None) ListSubnetsResponse
List subnets. List any Private Network’s subnets. See ListPrivateNetworks to list a specific Private Network’s subnets. :param region: Region to target. If none is passed will use default region from the config. :param order_by: Sort order of the returned subnets. :param page: Page number to return, from the paginated results. :param page_size: Maximum number of Private Networks to return per page. :param organization_id: Organization ID to filter for. Only subnets belonging to this Organization will be returned. :param project_id: Project ID to filter for. Only subnets belonging to this Project will be returned. :param subnet_ids: Subnet IDs to filter for. Only subnets matching the specified IDs will be returned. :param vpc_id: VPC ID to filter for. Only subnets belonging to this VPC will be returned. :return:
ListSubnetsResponseUsage:
result = api.list_subnets()
- list_subnets_all(*, region: str | None = None, order_by: ListSubnetsRequestOrderBy | None = None, page: int | None = None, page_size: int | None = None, organization_id: str | None = None, project_id: str | None = None, subnet_ids: List[str] | None = None, vpc_id: str | None = None) List[Subnet]
List subnets. List any Private Network’s subnets. See ListPrivateNetworks to list a specific Private Network’s subnets. :param region: Region to target. If none is passed will use default region from the config. :param order_by: Sort order of the returned subnets. :param page: Page number to return, from the paginated results. :param page_size: Maximum number of Private Networks to return per page. :param organization_id: Organization ID to filter for. Only subnets belonging to this Organization will be returned. :param project_id: Project ID to filter for. Only subnets belonging to this Project will be returned. :param subnet_ids: Subnet IDs to filter for. Only subnets matching the specified IDs will be returned. :param vpc_id: VPC ID to filter for. Only subnets belonging to this VPC will be returned. :return:
List[Subnet]Usage:
result = api.list_subnets_all()
- list_vp_cs(*, region: str | None = None, order_by: ListVPCsRequestOrderBy | None = None, page: int | None = None, page_size: int | None = None, name: str | None = None, tags: List[str] | None = None, organization_id: str | None = None, project_id: str | None = None, is_default: bool | None = None, routing_enabled: bool | None = None) ListVPCsResponse
List VPCs. List existing VPCs in the specified region. :param region: Region to target. If none is passed will use default region from the config. :param order_by: Sort order of the returned VPCs. :param page: Page number to return, from the paginated results. :param page_size: Maximum number of VPCs to return per page. :param name: Name to filter for. Only VPCs with names containing this string will be returned. :param tags: Tags to filter for. Only VPCs with one or more matching tags will be returned. :param organization_id: Organization ID to filter for. Only VPCs belonging to this Organization will be returned. :param project_id: Project ID to filter for. Only VPCs belonging to this Project will be returned. :param is_default: Defines whether to filter only for VPCs which are the default one for their Project. :param routing_enabled: Defines whether to filter only for VPCs which route traffic between their Private Networks. :return:
ListVPCsResponseUsage:
result = api.list_vp_cs()
- list_vp_cs_all(*, region: str | None = None, order_by: ListVPCsRequestOrderBy | None = None, page: int | None = None, page_size: int | None = None, name: str | None = None, tags: List[str] | None = None, organization_id: str | None = None, project_id: str | None = None, is_default: bool | None = None, routing_enabled: bool | None = None) List[VPC]
List VPCs. List existing VPCs in the specified region. :param region: Region to target. If none is passed will use default region from the config. :param order_by: Sort order of the returned VPCs. :param page: Page number to return, from the paginated results. :param page_size: Maximum number of VPCs to return per page. :param name: Name to filter for. Only VPCs with names containing this string will be returned. :param tags: Tags to filter for. Only VPCs with one or more matching tags will be returned. :param organization_id: Organization ID to filter for. Only VPCs belonging to this Organization will be returned. :param project_id: Project ID to filter for. Only VPCs belonging to this Project will be returned. :param is_default: Defines whether to filter only for VPCs which are the default one for their Project. :param routing_enabled: Defines whether to filter only for VPCs which route traffic between their Private Networks. :return:
List[VPC]Usage:
result = api.list_vp_cs_all()
- set_acl(*, vpc_id: str, rules: List[AclRule], is_ipv6: bool, default_policy: Action, region: str | None = None) SetAclResponse
Set VPC ACL rules. Set the list of ACL rules and the default routing policy for a VPC. :param vpc_id: ID of the Network ACL’s VPC. :param rules: List of Network ACL rules. :param is_ipv6: Defines whether this set of ACL rules is for IPv6 (false = IPv4). Each Network ACL can have rules for only one IP type. :param default_policy: Action to take for packets which do not match any rules. :param region: Region to target. If none is passed will use default region from the config. :return:
SetAclResponseUsage:
result = api.set_acl( vpc_id="example", rules=[], is_ipv6=False, default_policy=Action.unknown_action, )
- update_private_network(*, private_network_id: str, region: str | None = None, name: str | None = None, tags: List[str] | None = None, default_route_propagation_enabled: bool | None = None) PrivateNetwork
Update Private Network. Update parameters (such as name or tags) of an existing Private Network, specified by its Private Network ID. :param private_network_id: Private Network ID. :param region: Region to target. If none is passed will use default region from the config. :param name: Name for the Private Network. :param tags: Tags for the Private Network. :param default_route_propagation_enabled: Defines whether default v4 and v6 routes are propagated for this Private Network. :return:
PrivateNetworkUsage:
result = api.update_private_network( private_network_id="example", )
- update_route(*, route_id: str, region: str | None = None, description: str | None = None, tags: List[str] | None = None, destination: str | None = None, nexthop_resource_id: str | None = None, nexthop_private_network_id: str | None = None) Route
Update Route. Update parameters of the specified Route. :param route_id: Route ID. :param region: Region to target. If none is passed will use default region from the config. :param description: Route description. :param tags: Tags of the Route. :param destination: Destination of the Route. :param nexthop_resource_id: ID of the nexthop resource. :param nexthop_private_network_id: ID of the nexthop private network. :return:
RouteUsage:
result = api.update_route( route_id="example", )
- update_vpc(*, vpc_id: str, region: str | None = None, name: str | None = None, tags: List[str] | None = None) VPC
Update VPC. Update parameters including name and tags of the specified VPC. :param vpc_id: VPC ID. :param region: Region to target. If none is passed will use default region from the config. :param name: Name for the VPC. :param tags: Tags for the VPC. :return:
VPCUsage:
result = api.update_vpc( vpc_id="example", )