Open oehTie opened 1 week ago
the exact api call:
curl -X 'PUT' \ 'http://localhost:8000/api/ipam/vlans/4060/' \ -H 'accept: application/json' \ -H 'Authorization: Token *****' \ -H 'Content-Type: application/json' \ -H 'X-CSRFTOKEN: ****' \ -d '{"comments":"","description":"","group":null,"interfaces":[],"name":"VLAN-3","role":3,"status":"active","vid":1000}'
response:
Error: Bad request: { "non_field_errors": [ "The fields group, vid must make a unique set." ] }
Please edit your post above to include the specific values and REST API query used in the creation of each object. This is necessary for someone to attempt to reproduce the behavior.
Maybe a duplicate of (or at least related to) https://github.com/netbox-community/netbox/issues/17810 ?
@jeremystretch here is the API call flow that will result in the error:
POST ungrouped VLAN with vid 1000 -> Success with ID 1
curl -X 'POST' \
'http://localhost:8000/api/ipam/vlans/' \
-H 'accept: application/json' \
-H 'Authorization: Token ***' \
-H 'Content-Type: application/json' \
-H 'X-CSRFTOKEN: ***' \
-d '{"comments":"","description":"","group":null,"name":"VLAN-1","role":1,"status":"active","vid":1000}'
POST ungrouped VLAN with vid 1000 -> Success with ID 2
curl -X 'POST' \
'http://localhost:8000/api/ipam/vlans/' \
-H 'accept: application/json' \
-H 'Authorization: Token ***' \
-H 'Content-Type: application/json' \
-H 'X-CSRFTOKEN: ***' \
-d '{"comments":"","description":"","group":null,"name":"VLAN-2","role":1,"status":"active","vid":1000}'
POST ungrouped VLAN with vid 1001 -> Success with ID 3
curl -X 'POST' \
'http://localhost:8000/api/ipam/vlans/' \
-H 'accept: application/json' \
-H 'Authorization: Token ***' \
-H 'Content-Type: application/json' \
-H 'X-CSRFTOKEN: ***' \
-d '{"comments":"","description":"","group":null,"name":"VLAN-3","role":1,"status":"active","vid":1001}'
PUT VLAN with ID 1 to update VID to 1001 -> Error: Bad request: {"non_field_errors": ["The fields group, vid must make a unique set."]}
curl -X 'PUT' \
'http://localhost:8000/api/ipam/vlans/1/' \
-H 'accept: application/json' \
-H 'Authorization: Token ***' \
-H 'Content-Type: application/json' \
-H 'X-CSRFTOKEN: ***' \
-d '{"comments":"","description":"","group":null,"name":"VLAN-1","role":1,"status":"active","vid":1001}'
PATCH VLAN with ID 1 to update VID to 1001 -> Error: Bad request: {"non_field_errors": ["The fields group, vid must make a unique set."]}
curl -X 'PATCH' \
'http://localhost:8000/api/ipam/vlans/1/' \
-H 'accept: application/json' \
-H 'Authorization: Token ***' \
-H 'Content-Type: application/json' \
-H 'X-CSRFTOKEN: ***' \
-d '{"vid":1001}'
Deployment Type
Self-hosted
Triage priority
N/A
NetBox Version
v4.1.6
Python Version
3.10
Steps to Reproduce
Using the API, create a vlan without a group, using the api, create a second vlan with the same vlan-id, this works. using the api, create a third vlan with a different vlan-id, also without a group, this works. using the api, change the first vlan to have the same vlan id as the second one, still without a group. This results in an error that the vlan is duplicate.
Expected Behavior
as the vlans have no group, duplicates should be allowed.
When the same steps to reproduce are executed using the Netbox Gui, it works as expected.
Observed Behavior
Error: The fields group, vid must make a unique set.