Manage network settings and RDNS for VPS and domains

Update the network configuration for your services, including changing IP addresses and managing Reverse DNS (RDNS). This endpoint returns a serverId for subsequent calls to POST /api/server-tags and requires a subnetId from POST /api/vm/{vmid}/network for certain actions. Use necessary IDs from GET /api/vps-accounts to identify your services.

VPS Services Networking

Context

Where to get IDs / values

Workflow links

Requires
Produces

Path Parameters

vmid integer · min: 1 required Example: 10000

Unique vmid identifier

Headers

Accept Example
Content-Type Example

Body

required
application/json
action string · enum required · Example: delete_interface
assign_ip
change_ip
create_private_interface
delete_interface
get_available_subnets
remove_ip
interfaceName string · Example: net1
ipAddress string · Example: 10.0.0.0
ipId integer | string · Example: 16842
ipType string · Example: ipv4
isPrimary integer · Example: 1
subnetId string · Example: 853
vlan integer · Example: 220

Responses

200
data object required
data.currentVlan string · Example: 108
data.interface string · enum · Example: net1
net0
net1
net2
net3
data.ipAddress string · Example: 10.0.0.0
data.ipChangePolicy object
data.ipChangePolicy.lastUsedAt string required · Example: 2026-02-10T00:00:00.000Z
data.ipChangePolicy.monthlyLimit integer required · Example: 2
data.ipChangePolicy.nextReset string required · Example: 2026-02-10T00:00:00.000Z
data.ipChangePolicy.periodStart string required · Example: 2026-02-10T00:00:00.000Z
data.ipChangePolicy.remaining integer required · Example: 0
data.ipChangePolicy.usedThisPeriod integer required · Example: 2
data.message string · Example: Interface net1 removed

Human-readable message.

data.requiresRestart boolean · Example: true
data.restartJobId string · Example: restart-17416-1766500277261
data.subnets array<object> · Example: [{"subnetId":"806","subnetName":"192.0.0.1/25","vlan":"101","serverId":"806","available...
data.subnets[].availableCount integer required · Example: 1
data.subnets[].ips array<object> required · Example: [{"id":"10731","ipaddress":"192.0.0.1","vlan":"101","status":"available","allocationSta...
data.subnets[].ips[].allocationStatus string · enum required · Example: assigned_to_other
assigned_to_current
assigned_to_other
data.subnets[].ips[].id string required · Example: 10731
data.subnets[].ips[].ipaddress string required · Example: 192.0.0.1
data.subnets[].ips[].isAvailable boolean required · Example: false
data.subnets[].ips[].status string · enum required · Example: available
assigned_to_account
available
data.subnets[].ips[].vlan string required · Example: 101
data.subnets[].serverId string required · Example: 806
data.subnets[].subnetId string required · Example: 806
data.subnets[].subnetName string required · Example: 192.0.0.1/25
data.subnets[].vlan string required · Example: 101
data.success boolean · Example: true

True for successful responses.

data.unassignedIps array<object> · Example: []
data.vlanChanged boolean · Example: false
requestId string required · Example: 2121ae20-bd9d-41e9-aeeb-5dd1dd1a24ba

Unique request identifier (UUID).

success boolean required · Example: true

True for successful responses.

timestamp string required · Example: 2026-02-10T00:00:00.000Z

ISO 8601 timestamp (UTC).

500
code string required · Example: INTERNAL_ERROR

Machine-readable error code.

error string required · Example: Internal Server Error

HTTP status title (e.g. 'Bad Request').

message string required · Example: Failed to update interface

Human-readable message.

requestId string required · Example: 2121ae20-bd9d-41e9-aeeb-5dd1dd1a24ba

Unique request identifier (UUID).

timestamp string required · Example: 2026-02-10T00:00:00.000Z

ISO 8601 timestamp (UTC).

POST https://cloud.hostup.se/api/vm/{vmid}/network
For AI assistants
cURL
curl -X POST "https://cloud.hostup.se/api/vm/10000/network" \
  -H "X-API-Key: YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "action": "delete_interface",
    "interfaceName": "net1"
  }'
Response
{
  "success": true,
  "timestamp": "2026-02-10T00:00:00.000Z",
  "requestId": "2121ae20-bd9d-41e9-aeeb-5dd1dd1a24ba",
  "data": {
    "success": true,
    "message": "Interface net1 removed",
    "restartJobId": "restart-17416-1766500277261",
    "requiresRestart": true
  }
}
Request Body delete_interface
{
  "action": "delete_interface",
  "interfaceName": "net1"
}