compute
POST /v1/compute/networks
Create a private network from a server.
Authentication
Send an API key as a bearer token. The key must carry the sites.restart permission; a key without it is refused with 403, not 404.
This endpoint takes no organisation id. Your key already identifies the organisation it belongs to, and the response is scoped to it.
Try it
Replace anything in angle brackets with your own values, and the key placeholder with a key from your dashboard.
curl -X POST https://api.zinndigital.com/v1/compute/networks \
-H "Authorization: Bearer zdk_live_…" \
-H "Content-Type: application/json" \
-d '{ "name": <string>, "ip_range": <string>, "server_id": <Uuid> }'Signed in? The API console in your dashboard fills in your real organisation id and your own key, and runs the request against the live API so you can see the actual response. Open this endpoint in the API console
Details
The network is created in the server's region and the server joins it. Ranges must be a private IPv4 block between a /8 and a /24, outside 10.42.0.0/16 and 10.43.0.0/16. No charge. Requires sites.restart.
Request body
| Name | Type | Required | What it is |
|---|---|---|---|
name | string | Yes | — |
ip_range | string | Yes | A private IPv4 block, like 10.10.0.0/16. |
server_id | Uuid | Yes | UUIDv7 identifier — sortable by creation time (docs/02 §8). |
Response
| Name | Type | Required | What it is |
|---|---|---|---|
id | Uuid | Yes | UUIDv7 identifier — sortable by creation time (docs/02 §8). |
name | string | Yes | — |
ip_range | string | Yes | — |
network_zone | string | Yes | — |
status | string<pending, active, deleted, failed> | Yes | — |
cluster_id | string | Yes | The cluster that owns this network, or blank. |
members | object[] | Yes | — |
created_at | string | Yes | — |
Errors this endpoint can return
401 · 403 · 404 · 422 · 429 · 503