Skip to content

Bulk-create IP addresses

POST
/api/ip-addresses/bulk
curl --request POST \
--url http://localhost:3000/api/ip-addresses/bulk \
--header 'Content-Type: application/json' \
--cookie session=<session> \
--data '{ "items": [ {} ] }'

Max 5000 items; items without an address are skipped and reported.

Media type application/json
object
items
required
Array<object>
<= 5000 items

Same shape as the single IP-address create body

object
Example generated
{
"items": [
{}
]
}

Bulk insert report

Media type application/json
object
data
Array<object>
object
id
required
string format: uuid
address
required
string
vrfId
string format: uuid
nullable
deviceId
string format: uuid
nullable
interfaceId

Device_ports.id this address is bound to. Setting it on create/update re-homes deviceId to that port’s device so the address shows under both the interface and the device. ON DELETE SET NULL.

string format: uuid
nullable
interfaceName

Join-only: the interface name, returned by GET /api/devices/{id}/ips.

string
nullable
status
required
string
Allowed values: active reserved deprecated dhcp
role

E.g. loopback, mgmt, peering, vip, secondary

string
nullable
family
integer
nullable
Allowed values: 4 6
dnsName
string
nullable
description
string
nullable
createdAt
required
string format: date-time
updatedAt
required
string format: date-time
requested
required
integer
inserted
required
integer
skipped
required
Array<object>
object
index
integer
reason
string
Example
{
"data": [
{
"address": "10.0.0.10/24",
"status": "active",
"family": 4
}
]
}

Items must be an array of at most 5000 entries

Media type application/json
object
error
required
string
Example
{
"error": "Not found"
}

Not authenticated

Media type application/json
object
error
required
string
Example
{
"error": "Not found"
}