This API allows you to manage your Virtual Private Clouds (VPCs) and Private Networks.
Ingress rules.
Create an ingress rule in the specified region.
Usage:
scw vpc ingress-rule create [arg=value ...]Arguments:
| Name | Description | Argument Specifications |
|---|---|---|
| vpc-id | ID of the VPC this rule will belong to | Required |
| source | Source network to match ingress traffic on. Can be IPv6 or IPv4 | Required |
| nexthop-resource-ip | IP of the local resource to redirect ingress traffic to. IP version must be consistent with the source network | Required |
| nexthop-private-network-id | ID of the Private Network the destination resource is in | Required |
| description | Description for this ingress rule | |
| tags.{index} | Tags for this ingress rule | |
| region | Region to target. If none is passed will use default region from the config | Default: fr-parOne of: fr-par, it-mil, nl-ams, pl-waw |
Delete an ingress rule specified by its ingress rule ID.
Usage:
scw vpc ingress-rule delete <rule-id ...> [arg=value ...]Arguments:
| Name | Description | Argument Specifications |
|---|---|---|
| rule-id | ID of the ingress rule to delete | Required |
| region | Region to target. If none is passed will use default region from the config | Default: fr-parOne of: fr-par, it-mil, nl-ams, pl-waw |
Retrieve details of an existing ingress rule, specified by its ingress rule ID.
Usage:
scw vpc ingress-rule get <rule-id ...> [arg=value ...]Arguments:
| Name | Description | Argument Specifications |
|---|---|---|
| rule-id | ID of the ingress rule to return | Required |
| region | Region to target. If none is passed will use default region from the config | Default: fr-parOne of: fr-par, it-mil, nl-ams, pl-waw |
List existing ingress rules in the specified region.
Usage:
scw vpc ingress-rule list [arg=value ...]Arguments:
| Name | Description | Argument Specifications |
|---|---|---|
| order-by | Sort order of the returned ingress rules | One of: created_at_asc, created_at_desc, source_asc, source_desc, prefix_len_asc, prefix_len_desc |
| vpc-id | ID of the VPC to filter for | |
| nexthop-resource-ip | Next hop IP to filter for | |
| nexthop-private-network-id | Next hop Private Network ID to filter for. Only ingress rules with this Private Network as next hop will be returned | |
| is-ipv6 | Whether to return only IPv4 or IPv6 ingress rules | |
| tags.{index} | Tags to filter for. Only ingress rules with one or more matching tags will be returned | |
| project-id | Project ID to filter for. Only ingress rules belonging to this Project will be returned | |
| organization-id | Organization ID to filter for. Only ingress rules belonging to this Organization will be returned | |
| region | Region to target. If none is passed will use default region from the config | Default: fr-parOne of: fr-par, it-mil, nl-ams, pl-waw, all |
Update an ingress rule specified by its ingress rule ID.
Usage:
scw vpc ingress-rule update <rule-id ...> [arg=value ...]Arguments:
| Name | Description | Argument Specifications |
|---|---|---|
| rule-id | ID of the ingress rule to update | Required |
| source | Source network to match ingress traffic on. Can be IPv4 or IPv6 | |
| nexthop-resource-ip | IP of the local resource to redirect ingress traffic to. IP version must be consistent with the source network | |
| nexthop-private-network-id | ID of the Private Network the destination resource is in | |
| description | Description to set for this ingress rule | |
| tags.{index} | Tags to set for this ingress rule | |
| region | Region to target. If none is passed will use default region from the config | Default: fr-parOne of: fr-par, it-mil, nl-ams, pl-waw |
A Private Network allows you to interconnect your Scaleway resources in an isolated and private network. Network reachability is limited to resources that are on the same Private Network. Note that a resource can be a part of multiple private networks.
Create a new Private Network. Once created, you can attach Scaleway resources which are in the same region.
Usage:
scw vpc private-network create [arg=value ...]Arguments:
| Name | Description | Argument Specifications |
|---|---|---|
| name | Name for the Private Network | Required Default: <generated> |
| project-id | Project ID to use. If none is passed the default project ID will be used | |
| tags.{index} | Tags for the Private Network | |
| subnets.{index} | Private Network subnets CIDR | |
| vpc-id | VPC in which to create the Private Network | |
| default-route-propagation-enabled | Defines whether default v4 and v6 routes are propagated for this Private Network | |
| region | Region to target. If none is passed will use default region from the config | Default: fr-parOne of: fr-par, it-mil, nl-ams, pl-waw |
Delete an existing Private Network. Note that you must first detach all resources from the network, in order to delete it.
Usage:
scw vpc private-network delete <private-network-id ...> [arg=value ...]Arguments:
| Name | Description | Argument Specifications |
|---|---|---|
| private-network-id | Private Network ID | Required |
| region | Region to target. If none is passed will use default region from the config | Default: fr-parOne of: fr-par, it-mil, nl-ams, pl-waw |
Enable DHCP managed on an existing Private Network. Note that you will not be able to deactivate it afterwards.
Usage:
scw vpc private-network enable-dhcp [arg=value ...]Arguments:
| Name | Description | Argument Specifications |
|---|---|---|
| private-network-id | Private Network ID | Required |
| region | Region to target. If none is passed will use default region from the config | Default: fr-parOne of: fr-par, it-mil, nl-ams, pl-waw |
Retrieve information about an existing Private Network, specified by its Private Network ID. Its full details are returned in the response object.
Usage:
scw vpc private-network get <private-network-id ...> [arg=value ...]Arguments:
| Name | Description | Argument Specifications |
|---|---|---|
| private-network-id | Private Network ID | Required |
| region | Region to target. If none is passed will use default region from the config | Default: fr-parOne of: fr-par, it-mil, nl-ams, pl-waw |
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.
Usage:
scw vpc private-network list [arg=value ...]Arguments:
| Name | Description | Argument Specifications |
|---|---|---|
| order-by | Sort order of the returned Private Networks | One of: created_at_asc, created_at_desc, name_asc, name_desc |
| name | Name to filter for. Only Private Networks with names containing this string will be returned | |
| tags.{index} | Tags to filter for. Only Private Networks with one or more matching tags will be returned | |
| project-id | Project ID to filter for. Only Private Networks belonging to this Project will be returned | |
| private-network-ids.{index} | Private Network IDs to filter for. Only Private Networks with one of these IDs will be returned | |
| vpc-id | VPC ID to filter for. Only Private Networks belonging to this VPC will be returned | |
| dhcp-enabled | DHCP status to filter for. When true, only Private Networks with managed DHCP enabled will be returned | |
| object-storage-private-access-enabled | Filter by whether Object Storage private access is enabled. When set, only matching Private Networks will be returned | |
| organization-id | Organization ID to filter for. Only Private Networks belonging to this Organization will be returned | |
| region | Region to target. If none is passed will use default region from the config | Default: fr-parOne of: fr-par, it-mil, nl-ams, pl-waw, all |
Update parameters (such as name or tags) of an existing Private Network, specified by its Private Network ID.
Usage:
scw vpc private-network update <private-network-id ...> [arg=value ...]Arguments:
| Name | Description | Argument Specifications |
|---|---|---|
| private-network-id | Private Network ID | Required |
| name | Name for the Private Network | |
| tags.{index} | Tags for the Private Network | |
| default-route-propagation-enabled | Defines whether default v4 and v6 routes are propagated for this Private Network | |
| region | Region to target. If none is passed will use default region from the config | Default: fr-parOne of: fr-par, it-mil, nl-ams, pl-waw |
Custom routes.
Create a new custom Route.
Usage:
scw vpc route create [arg=value ...]Arguments:
| Name | Description | Argument Specifications |
|---|---|---|
| description | Route description | |
| tags.{index} | Tags of the Route | |
| vpc-id | VPC the Route belongs to | |
| destination | Destination of the Route | |
| nexthop-resource-id | ID of the nexthop resource | |
| nexthop-private-network-id | ID of the nexthop private network | |
| nexthop-vpc-connector-id | ID of the nexthop VPC Connector | |
| region | Region to target. If none is passed will use default region from the config | Default: fr-parOne of: fr-par, it-mil, nl-ams, pl-waw |
Delete a Route specified by its Route ID.
Usage:
scw vpc route delete <route-id ...> [arg=value ...]Arguments:
| Name | Description | Argument Specifications |
|---|---|---|
| route-id | Route ID | Required |
| region | Region to target. If none is passed will use default region from the config | Default: fr-parOne of: fr-par, it-mil, nl-ams, pl-waw |
Enable routing on an existing VPC. Note that you will not be able to deactivate it afterwards.
Usage:
scw vpc route enable-routing <vpc-id ...> [arg=value ...]Arguments:
| Name | Description | Argument Specifications |
|---|---|---|
| vpc-id | VPC ID | Required |
| region | Region to target. If none is passed will use default region from the config | Default: fr-parOne of: fr-par, it-mil, nl-ams, pl-waw |
Retrieve details of an existing Route, specified by its Route ID.
Usage:
scw vpc route get <route-id ...> [arg=value ...]Arguments:
| Name | Description | Argument Specifications |
|---|---|---|
| route-id | Route ID | Required |
| region | Region to target. If none is passed will use default region from the config | Default: fr-parOne of: fr-par, it-mil, nl-ams, pl-waw |
Return routes with associated next hop data.
Usage:
scw vpc route list [arg=value ...]Arguments:
| Name | Description | Argument Specifications |
|---|---|---|
| order-by | Sort order of the returned routes | One of: created_at_asc, created_at_desc, destination_asc, destination_desc, prefix_len_asc, prefix_len_desc |
| vpc-id | VPC to filter for. Only routes within this VPC will be returned | |
| nexthop-resource-id | Next hop resource ID to filter for. Only routes with a matching next hop resource ID will be returned | |
| nexthop-private-network-id | Next hop private network ID to filter for. Only routes with a matching next hop private network ID will be returned | |
| nexthop-resource-type | Next hop resource type to filter for. Only Routes with a matching next hop resource type will be returned | One of: unknown_type, vpc_gateway_network, instance_private_nic, baremetal_private_nic, apple_silicon_private_nic, vpn_gateway |
| nexthop-vpc-connector-id | Next hop VPC connector ID to filter for. Only routes with a matching next hop VPC connector ID will be returned | |
| contains | Only routes whose destination is contained in this subnet will be returned | |
| tags.{index} | Tags to filter for, only routes with one or more matching tags will be returned | |
| is-ipv6 | Only routes with an IPv6 destination will be returned | |
| region | Region to target. If none is passed will use default region from the config | Default: fr-parOne of: all |
Update parameters of the specified Route.
Usage:
scw vpc route update <route-id ...> [arg=value ...]Arguments:
| Name | Description | Argument Specifications |
|---|---|---|
| route-id | Route ID | Required |
| description | Route description | |
| tags.{index} | Tags of the Route | |
| destination | Destination of the Route | |
| nexthop-resource-id | ID of the nexthop resource | |
| nexthop-private-network-id | ID of the nexthop private network | |
| nexthop-vpc-connector-id | ID of the nexthop VPC connector | |
| region | Region to target. If none is passed will use default region from the config | Default: fr-parOne of: fr-par, it-mil, nl-ams, pl-waw |
ACL Rules.
This command starts your default editor to edit a marshaled version of your resource Default editor will be taken from $VISUAL, then $EDITOR or an editor based on your system
Usage:
scw vpc rule edit [arg=value ...]Arguments:
| Name | Description | Argument Specifications |
|---|---|---|
| vpc-id | ID of the Network ACL's VPC | Required |
| 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 | |
| default-policy | Action to take for packets which do not match any rules | |
| mode | marshaling used when editing data | Default: yamlOne of: yaml, json |
| region | Region to target. If none is passed will use default region from the config | Default: fr-par |
Retrieve a list of ACL rules for a VPC, specified by its VPC ID.
Usage:
scw vpc rule get [arg=value ...]Arguments:
| Name | Description | Argument Specifications |
|---|---|---|
| vpc-id | ID of the Network ACL's VPC | Required |
| 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. | Required |
| region | Region to target. If none is passed will use default region from the config | Default: fr-parOne of: fr-par, it-mil, nl-ams, pl-waw |
Set the list of ACL rules and the default routing policy for a VPC.
Usage:
scw vpc rule set [arg=value ...]Arguments:
| Name | Description | Argument Specifications |
|---|---|---|
| vpc-id | ID of the Network ACL's VPC | Required |
| rules.{index}.protocol | Protocol to which this rule applies | Required One of: ANY, TCP, UDP, ICMP |
| rules.{index}.source | Source IP range to which this rule applies (CIDR notation with subnet mask) | Required |
| rules.{index}.src-port-low | Starting port of the source port range to which this rule applies (inclusive) | Required |
| rules.{index}.src-port-high | Ending port of the source port range to which this rule applies (inclusive) | Required |
| rules.{index}.destination | Destination IP range to which this rule applies (CIDR notation with subnet mask) | Required |
| rules.{index}.dst-port-low | Starting port of the destination port range to which this rule applies (inclusive) | Required |
| rules.{index}.dst-port-high | Ending port of the destination port range to which this rule applies (inclusive) | Required |
| rules.{index}.action | Policy to apply to the packet | Required One of: unknown_action, accept, drop |
| rules.{index}.description | Rule description | Required |
| 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. | Required |
| default-policy | Action to take for packets which do not match any rules | Required One of: unknown_action, accept, drop |
| region | Region to target. If none is passed will use default region from the config | Default: fr-parOne of: fr-par, it-mil, nl-ams, pl-waw |
A Virtual Private Cloud (VPC) allows you to group your regional Private Networks together. Note that a Private Network can be a part of only one VPC.
Create a new VPC in the specified region.
Usage:
scw vpc vpc create [arg=value ...]Arguments:
| Name | Description | Argument Specifications |
|---|---|---|
| name | Name for the VPC | Required Default: <generated> |
| project-id | Project ID to use. If none is passed the default project ID will be used | |
| tags.{index} | Tags for the VPC | |
| enable-routing | Enable routing between Private Networks in the VPC | |
| enable-transitivity | Enable packets from peered VPCs to transit through this VPC | |
| region | Region to target. If none is passed will use default region from the config | Default: fr-parOne of: fr-par, it-mil, nl-ams, pl-waw |
Delete a VPC specified by its VPC ID.
Usage:
scw vpc vpc delete <vpc-id ...> [arg=value ...]Arguments:
| Name | Description | Argument Specifications |
|---|---|---|
| vpc-id | VPC ID | Required |
| region | Region to target. If none is passed will use default region from the config | Default: fr-parOne of: fr-par, it-mil, nl-ams, pl-waw |
Retrieve details of an existing VPC, specified by its VPC ID.
Usage:
scw vpc vpc get <vpc-id ...> [arg=value ...]Arguments:
| Name | Description | Argument Specifications |
|---|---|---|
| vpc-id | VPC ID | Required |
| region | Region to target. If none is passed will use default region from the config | Default: fr-parOne of: fr-par, it-mil, nl-ams, pl-waw |
List existing VPCs in the specified region.
Usage:
scw vpc vpc list [arg=value ...]Arguments:
| Name | Description | Argument Specifications |
|---|---|---|
| order-by | Sort order of the returned VPCs | One of: created_at_asc, created_at_desc, name_asc, name_desc |
| name | Name to filter for. Only VPCs with names containing this string will be returned | |
| tags.{index} | Tags to filter for. Only VPCs with one or more matching tags will be returned | |
| project-id | Project ID to filter for. Only VPCs belonging to this Project will be returned | |
| is-default | Defines whether to filter only for VPCs which are the default one for their Project | |
| routing-enabled | Defines whether to filter only for VPCs which route traffic between their Private Networks | |
| object-storage-private-access-enabled | Defines whether to filter only for VPCs with Object Storage private access enabled | |
| organization-id | Organization ID to filter for. Only VPCs belonging to this Organization will be returned | |
| region | Region to target. If none is passed will use default region from the config | Default: fr-parOne of: fr-par, it-mil, nl-ams, pl-waw, all |
Update parameters including name and tags of the specified VPC.
Usage:
scw vpc vpc update <vpc-id ...> [arg=value ...]Arguments:
| Name | Description | Argument Specifications |
|---|---|---|
| vpc-id | VPC ID | Required |
| name | Name for the VPC | |
| tags.{index} | Tags for the VPC | |
| region | Region to target. If none is passed will use default region from the config | Default: fr-parOne of: fr-par, it-mil, nl-ams, pl-waw |
VPC peering connectors.
Create a new VPC connector in the specified region.
Usage:
scw vpc vpc-connector create [arg=value ...]Arguments:
| Name | Description | Argument Specifications |
|---|---|---|
| name | Name for the VPC connector | Required Default: <generated> |
| tags.{index} | Tags for the VPC connector | |
| vpc-id | VPC ID to filter for. Only connectors belonging to this VPC will be returned | |
| target-vpc-id | Target VPC ID to filter for. Only connectors belonging to this target VPC will be returned | |
| region | Region to target. If none is passed will use default region from the config | Default: fr-parOne of: fr-par, it-mil, nl-ams, pl-waw |
Delete a VPC connector specified by its VPC connector ID.
Usage:
scw vpc vpc-connector delete <vpc-connector-id ...> [arg=value ...]Arguments:
| Name | Description | Argument Specifications |
|---|---|---|
| vpc-connector-id | VPC connector ID | Required |
| region | Region to target. If none is passed will use default region from the config | Default: fr-parOne of: fr-par, it-mil, nl-ams, pl-waw |
Retrieve details of an existing VPC connector, specified by its VPC connector ID.
Usage:
scw vpc vpc-connector get <vpc-connector-id ...> [arg=value ...]Arguments:
| Name | Description | Argument Specifications |
|---|---|---|
| vpc-connector-id | VPC connector ID | Required |
| region | Region to target. If none is passed will use default region from the config | Default: fr-parOne of: fr-par, it-mil, nl-ams, pl-waw |
List existing VPC connectors in the specified region.
Usage:
scw vpc vpc-connector list [arg=value ...]Arguments:
| Name | Description | Argument Specifications |
|---|---|---|
| order-by | Sort order of the returned VPC connectors | One of: created_at_asc, created_at_desc, name_asc, name_desc |
| name | Name to filter for. Only connectors with names containing this string will be returned | |
| tags.{index} | Tags to filter for. Only connectors with one or more matching tags will be returned | |
| project-id | Project ID to filter for. Only connectors belonging to this Project will be returned | |
| vpc-id | VPC ID to filter for. Only connectors belonging to this VPC will be returned | |
| target-vpc-id | Target VPC ID to filter for. Only connectors belonging to this target VPC will be returned | |
| status | Status of the VPC connector | One of: unknown_vpc_connector_status, orphan, peered, conflict |
| organization-id | Organization ID to filter for. Only connectors belonging to this Organization will be returned | |
| region | Region to target. If none is passed will use default region from the config | Default: fr-parOne of: fr-par, it-mil, nl-ams, pl-waw, all |
Update parameters including name and tags of the specified VPC connector.
Usage:
scw vpc vpc-connector update <vpc-connector-id ...> [arg=value ...]Arguments:
| Name | Description | Argument Specifications |
|---|---|---|
| vpc-connector-id | VPC connector ID | Required |
| name | Name for the VPC connector | |
| tags.{index} | Tags for the VPC connector | |
| region | Region to target. If none is passed will use default region from the config | Default: fr-parOne of: fr-par, it-mil, nl-ams, pl-waw |