Skip to main content
POST
Create subnet
Requires the IAM action network:CreateSubnet. See NETWORK permissions for the full list, what each one covers, and an example policy.

Authorizations

Authorization
string
header
required

An OAuth 2.0 bearer token, sent as Authorization: Bearer <token>. This is the recommended way to authenticate.

Get one by exchanging a service account's access key pair at POST /v1/oauth/token with grant_type=client_credentials. It is the standard client-credentials grant, so any OAuth-aware library will obtain and refresh it for you.

Tokens last an hour by default. The same access key pair is separately your AWS SigV4 credential for the S3-compatible object endpoint, which speaks nothing else.

Headers

Idempotency-Key
string

Optional client-generated key that makes a create replay-safe. Retrying a request with the same key returns the original outcome verbatim instead of creating a duplicate resource. Reusing a key with a different request body is rejected (422); a request whose key is still being processed returns 409. Records are honored for 24 hours. Use a UUID or similarly unique token.

Maximum string length: 255

Body

application/json
vpc
string
required

VPC UUID, CRN or exact name in the caller account.

Example:

"5f8d3a2e-1c4b-4e7a-9f6d-2b1a8c3e5d7f"

name
string
required

Resource names must not start with the literal crn: prefix or be UUIDs (canonical, compact, braced, or urn:uuid: forms, in either case).

Example:

"prod-web"

cidr_ipv4
string
required
Example:

"10.0.1.0/24"

description
string
Example:

"Public web-tier subnet"

gateway_ipv4
string | null

Defaults to the first usable host in the CIDR

Example:

"10.0.1.1"

route_table
string

Route-table UUID, nested CRN or exact name within the subnet VPC. On PATCH the owned path subnet supplies the VPC. Omission on create selects the default table; an empty reference is invalid.

Example:

"a3c9e1f4-7b2d-4a6e-8c1f-9d3b5e7a2c4f"

allocate_cidr_ipv6
boolean
default:false

Allocate a free /64 from the VPC IPv6 range. Can be enabled after creation. Every existing and new interface receives an IPv6 /96 and its first /128 automatically. NAT gateways hosted here also receive a public IPv6 address from the regional pool. Updating hosted gateways requires UpdateNATGateway permission and public IPv6 quota.

cidr_ipv6
string | null

An aligned /64 inside the VPC IPv6 range. Can be added later; cannot replace an existing range. Mutually exclusive with allocate_cidr_ipv6.

Example:

"2a13:9500:1a6:100::/64"

tags
object

Response

Subnet created

subnet
object
required