Skip to content

IPs ​

A floating IP is a public address that can be moved between instances without changing the address itself. Each IP belongs to a workspace and can be attached to at most one instance at a time. DHCP settings control how the platform delivers the address to the guest. Reverse DNS (rDNS) maps the IP back to a hostname.

Reverse DNS and DHCP changes are asynchronous and return workflows. Attach and detach are command endpoints covered in Network commands.

All path parameters are required. PUT requests require a JSON body.

See Workspaces and scope and Pagination for shared conventions.

Search IPs ​

GET/v1/workspaces/{wid}/ipsSearch IPs in a workspace

Lists the floating IPs in a workspace, with pagination.

Path parameters

NameTypeDescription
widstringWorkspace ID

Query parameters

NameTypeDescription
qstringQuick search by address or ID
addressstringFilter by exact or partial IP address
instancestring[]Filter to IPs attached to specific instance IDs
availablebooleanWhen true, return only unattached IPs
dnsstringFilter by reverse DNS value
regionstringFilter by region: NA_01
ownerstring[]Filter by workspace IDs
typestringFilter by IP family: IPv4 or IPv6

All query parameters are optional, including the shared pagination parameters. Returns 200 OK with a KeysetResultFloatingIpListView containing items and pagination fields.

Fetch an IP ​

GET/v1/networking/ips/{fid}Fetch an IP address

Path parameters

NameTypeDescription
fidstringIP address ID

Returns 200 OK with a FloatingIpListView: id, address, locked, range, and nullable dns, instance, owner, and subject fields.

Set reverse DNS ​

PUT/v1/networking/ips/{fid}/dnsSet reverse DNS for an IP

Sets or replaces the rDNS PTR record for an IP address.

Path parameters

NameTypeDescription
fidstringIP address ID

Request body

FieldTypeRequiredDescription
dnsstring or nullnoHostname to point to, for example mail.example.com. Omit, send null, or send a blank string to clear the entry.
json
{
  "dns": "mail.example.com"
}

Returns 200 OK with a WorkflowData object.

Remove reverse DNS ​

DELETE/v1/networking/ips/{fid}/dnsRemove reverse DNS for an IP

Clears the reverse DNS entry for the address.

Path parameters

NameTypeDescription
fidstringIP address ID

Returns 200 OK with a WorkflowData object.

Fetch DHCP settings ​

GET/v1/instances/{iid}/dhcpFetch DHCP settings for an instance

Returns the DHCP configuration for an instance. When no custom settings exist, enabled, v4, and v6 are all null, indicating automatic mode.

Path parameters

NameTypeDescription
iidstringInstance ID

Returns 200 OK with a DHCP object. enabled is a nullable boolean. v4 and v6 are nullable FloatingIpListView objects.

Update DHCP settings ​

PUT/v1/instances/{iid}/dhcpUpdate DHCP settings for an instance

Replaces the DHCP configuration for an instance. enabled is required. Omitted or null address fields clear the corresponding assignment. Addresses must be attached to this instance and match the requested family. Disabling DHCP clears both assignments.

Path parameters

NameTypeDescription
iidstringInstance ID

Request body

FieldTypeRequiredDescription
enabledbooleanyesWhether DHCP is enabled for this instance
v4string or nullnoAttached IPv4 address ID to serve, or null to serve none
v6string or nullnoAttached IPv6 address ID to serve, or null to serve none
json
{
  "enabled": true,
  "v4": "1464201868476432440",
  "v6": null
}

Returns 200 OK with a WorkflowData object. Network changes take effect once the workflow completes.

Delete DHCP settings ​

DELETE/v1/instances/{iid}/dhcpDelete DHCP settings for an instance

Removes any custom DHCP settings and restores automatic mode.

Path parameters

NameTypeDescription
iidstringInstance ID

Returns 200 OK with a WorkflowData object.

Address ranges ​

We expose allocation range operations in the public specification. These manage address pools rather than individual floating IP attachments. Range details contain id, range, region, split, type, and flags. Staff detail responses additionally include disabled, comment, and metrics.

Search address ranges ​

GET/v1/networking/rangesSearch address ranges

Query parameters

NameTypeRequiredDescription
qstringnoQuick search by range or ID
idstring[]noList of range IDs to filter
rangestringnoIP address range to filter
typestringnoIP address type Values: IPv4, IPv6.
regionstringnoRegion to filter Values: NA_01.
flagsstring[]noIP address flags (all must match) Values: PROTECTED.
disabledbooleannoFilter by disabled status

Supports pagination. Returns 200 OK with KeysetResultIpRangeSummary. Each item contains id, range, region, type, flags, disabled, comment, and metrics.

Create an address range ​

POST/v1/networking/rangesCreate an address range

The JSON body is required. Create and update use CreateRangeRequest:

FieldTypeRequiredDescription
commentstring or nullnoFree-form comment on the range. defaults to empty
disabledboolean or nullnoWhether the range is excluded from allocation. defaults to false
flagsstring[] or nullnoFlags carried by every address in the range. defaults to none
rangestringyesThe range in CIDR notation, matching the given IP family
regionstringyesRegion the range serves Values: NA_01.
splitintegeryesPrefix length the range is handed out at: 0 to 32 for IPv4, 1 to 128 for IPv6 Range: 0 to 128.
typestringyesIP family of the range Values: IPv4, IPv6.

For IPv4, split must be 0 to 32. For IPv6, it must be 1 to 128. The range must match the selected family.

json
{
  "range": "203.0.113.0/24",
  "region": "NA_01",
  "split": 32,
  "type": "IPv4"
}

Returns 200 OK with IpRangeDetailView.

Fetch an address range ​

GET/v1/networking/ranges/{rgid}Fetch an address range

Path parameters

NameTypeRequiredDescription
rgidstringyesAddress range ID

Returns 200 OK with IpRangeDetailView.

Update an address range ​

PUT/v1/networking/ranges/{rgid}Update an address range

Path parameters

NameTypeRequiredDescription
rgidstringyesAddress range ID

The JSON body is required. Send the create range fields, including every required field. Omitted nullable fields reset to their documented defaults.

Returns 200 OK with IpRangeDetailView.

Delete an address range ​

DELETE/v1/networking/ranges/{rgid}Delete an address range

We reject deletion while IPs remain attached to the range.

Path parameters

NameTypeRequiredDescription
rgidstringyesAddress range ID

Returns 200 OK with an empty body.