Environment
- SolarWinds IPAM 2026.2
- SWIS REST API:
https://<ipam-server>:17774/SolarWinds/InformationService/v3/Json - Authentication: Basic, with a local Orion service account (
<svc-account>) - Client: Ansible
uri module and Thunder Client, from a Linux automation runner
Goal
We’re automating IP allocation for VM builds:
- Reserve an IP.
- Write the VM details into the IP’s custom properties (hostname, owner, environment and so on).
- Finish the reservation.
Steps 1 and 3 work. Step 2 returns 403.
Service account permissions
- IPAM role: Custom, with Power User on the target subnet.
What works with this account
POST /Query on IPAM.Subnet, IPAM.IPNode and IPAM.NodesCustomProperties. Reading custom property values works.Invoke/IPAM.SubnetManagement/StartIpReservation: Available → API Blocked (16)FinishIpReservation: API Blocked → Used (1) or Reserved (4)CancelIpReservation: API Blocked → AvailableChangeIpStatus: changes the status as expected
What fails: steps to reproduce
- Get the IP’s Uri:
POST /Query
{"query":"SELECT IpNodeId, IPAddress, Status, Uri FROM IPAM.IPNode WHERE IPAddress = @ip AND SubnetId = <id>","parameters":{"ip":"10.x.x.x"}}
It returns swis://<ipam-server>/Orion/IPAM.IPNode/IpNodeId=<n>.
- Update a custom property:
POST https://<ipam-server>:17774/SolarWinds/InformationService/v3/Json/swis://<ipam-server>/Orion/IPAM.IPNode/IpNodeId=<n>/CustomProperties
Content-Type: application/json
{"NEW_Hostname":"test-host"}
- Response:
HTTP 403
Access to IPAM.NodesCustomProperties denied
Variations tried, all with the same 403
- The IP held by
StartIpReservation (status 16), and the IP after FinishIpReservation as Reserved (4) .../IPAM.IPNode/IpNodeId=<n>/Custom.../IPAM.IPNodeGrid/.../CustomProperties
The custom properties exist on IPAM.NodesCustomProperties, according to Metadata.Property. We can read their values through IPAM.IPNode.CustomProperties.<field>. The web console saves the same fields through an internal endpoint (/api2/ipam/CustomProperties/ipCustomProperties/<id>), but we’d rather use the supported SWIS API.
Questions
- Which permission does a SWIS update to
IPAM.NodesCustomProperties need? Is IPAM Power User on the subnet enough, or does it need an Orion account-level right such as Allow Node Management Rights, or IPAM Admin? - Is updating IPAM IP custom properties through
<IPNode Uri>/CustomProperties supported in 2026.2? If not, is there a verb that does it? - Has anyone set IP custom properties from automation as a non-admin account? What was the minimum permission that worked?
Thanks in advance.