Appearance
Networks API
All endpoints require a bearer token (a login JWT or an API key).
A network is a private, region-scoped network that lets your pods talk to each other on private IPs. Pods attach to a network from the pod side (at pod creation or from the pod's Networking tab), not from here. A pod created without a network gets an auto-created one, which shows up in this list.
The network object
json
{
"id": "net_abc123",
"name": "prod",
"cidr": "10.20.0.0/24",
"gateway": "10.20.0.1",
"description": "Production network",
"serverId": "srv_...",
"status": "Active",
"health": "Healthy",
"createdAt": "2026-07-01T12:00:00Z",
"updatedAt": "2026-07-01T12:00:30Z"
}| Field | Meaning |
|---|---|
cidr | The private address range. |
gateway | First usable address in the range (assigned automatically). |
serverId | The region the network lives in. |
status | Provisioning, Active, or Failed. |
health | Healthy, Unhealthy, or empty. |
List networks
http
GET /api/networks?page=1&limit=20Paginated list of your networks.
Create a network
http
POST /api/networksjson
{
"name": "prod",
"cidr": "10.20.0.0/24",
"description": "Production network",
"serverId": "srv_..."
}| Field | Type | Notes |
|---|---|---|
cidr | string | Required. Must be a private IPv4 range, with a prefix from the block's own size down to /30: 10.0.0.0/8 allows /8-/30, 172.16.0.0/12 allows /12-/30, 192.168.0.0/16 allows /16-/30. |
serverId | string | Required. The region. Get valid ids from /open/config-options. |
name | string | Optional. 2 to 30 characters (letters, numbers, spaces, hyphens). Left blank, we generate one. Must be unique within your account. |
description | string | Optional. |
Creating a network is asynchronous: the call returns 201 with status: "Provisioning", and the network flips to Active once it is ready. Networks are free, but the create call still needs at least $3 of account credit like any other create (402 otherwise).
Describe a network
http
GET /api/networks/:idPods on a network
http
GET /api/networks/:id/resourcesLists the pods attached to the network:
json
[
{ "id": "pod_xyz789", "name": "web", "status": "Running", "os": "ubuntu", "version": "24.04", "privateIp": "10.20.0.5" }
]Network traffic
http
GET /api/networks/:id/trafficjson
{ "totalIn": 44210000, "totalOut": 981200000, "podCount": 2 }Totals are summed across the attached pods (cumulative bytes since each pod last restarted).
Update a network
http
PUT /api/networks/:idjson
{ "name": "production", "description": "Production network (updated)" }Only name and description can change. The CIDR and region are fixed once the network exists.
Delete a network
http
DELETE /api/networks/:idReturns 204. If any pod is still attached, it returns 409 "Network is still in use by N pods" - detach the pods first (from each pod's Networking tab).