Swagger/OpenAPI mismatch with returned data for DeviceInterface.ConnectedEndpoint #3823

Closed
opened 2025-12-29 18:31:22 +01:00 by adam · 6 comments
Owner

Originally created by @clienthax on GitHub (Jul 1, 2020).

Environment

  • Python version: netbox-docker
  • NetBox version: 2.8.6

Steps to Reproduce

  1. Generate go-netbox with latest swagger https://github.com/netbox-community/go-netbox
  2. Create 2x device with network cable connection between them
  3. Query for data with Dcim.DcimInterfacesRead

Expected Behavior

Swagger to match returned data.

Observed Behavior

error: json: cannot unmarshal number into Go struct field DeviceInterface.connected_endpoint of type string

It seems this is defined in OAS/swagger as a map[string]string instead of a structure.

Originally created by @clienthax on GitHub (Jul 1, 2020). <!-- NOTE: IF YOUR ISSUE DOES NOT FOLLOW THIS TEMPLATE, IT WILL BE CLOSED. This form is only for reproducible bugs. If you need assistance with NetBox installation, or if you have a general question, DO NOT open an issue. Instead, post to our mailing list: https://groups.google.com/forum/#!forum/netbox-discuss Please describe the environment in which you are running NetBox. Be sure that you are running an unmodified instance of the latest stable release before submitting a bug report, and that any plugins have been disabled. --> ### Environment * Python version: netbox-docker * NetBox version: 2.8.6 <!-- Describe in detail the exact steps that someone else can take to reproduce this bug using the current stable release of NetBox. Begin with the creation of any necessary database objects and call out every operation being performed explicitly. If reporting a bug in the REST API, be sure to reconstruct the raw HTTP request(s) being made: Don't rely on a client library such as pynetbox. --> ### Steps to Reproduce 1. Generate go-netbox with latest swagger https://github.com/netbox-community/go-netbox 2. Create 2x device with network cable connection between them 3. Query for data with Dcim.DcimInterfacesRead <!-- What did you expect to happen? --> ### Expected Behavior Swagger to match returned data. <!-- What happened instead? --> ### Observed Behavior error: json: cannot unmarshal number into Go struct field DeviceInterface.connected_endpoint of type string It seems this is defined in OAS/swagger as a map[string]string instead of a structure.
adam added the type: bugstatus: needs ownerpending closure labels 2025-12-29 18:31:22 +01:00
adam closed this issue 2025-12-29 18:31:22 +01:00
Author
Owner

@jeremystretch commented on GitHub (Jul 1, 2020):

@clienthax Since this is the third such issue you've opened recently (in addition to #4803 and #4804), I'm going to ask you to volunteer to take on at least one of them.

@jeremystretch commented on GitHub (Jul 1, 2020): @clienthax Since this is the third such issue you've opened recently (in addition to #4803 and #4804), I'm going to ask you to volunteer to take on at least one of them.
Author
Owner

@clienthax commented on GitHub (Jul 1, 2020):

@jeremystretch If i knew how to resolve the issues in Netbox itself I would of done that instead of opening issue reports.
I am not against helping with projects when I am aware of how they function, that is not the case here, I have near 0 python experience and the same for Django/Swagger apart from using the generated library, I have no idea why this is 'broken' or what would need to be done to resolve it on this end.

@clienthax commented on GitHub (Jul 1, 2020): @jeremystretch If i knew how to resolve the issues in Netbox itself I would of done that instead of opening issue reports. I am not against helping with projects when I am aware of how they function, that is not the case here, I have near 0 python experience and the same for Django/Swagger apart from using the generated library, I have no idea why this is 'broken' or what would need to be done to resolve it on this end.
Author
Owner

@jeremystretch commented on GitHub (Jul 1, 2020):

We make a reasonable effort to ensure the automatically generated OpenAPI spec is accurate. However, supporting the ability to dynamically generate a full client based on the spec is not a design goal, so this sort of "bug" is not going to get a lot of attention from the core maintainers. So, if this is something you need from the project, I encourage you to commit the time and effort to own the issues you've opened. Otherwise, unless someone else volunteers to own the work, it's likely not going to get addressed and the issue will be automatically closed after a few weeks of inactivity.

@jeremystretch commented on GitHub (Jul 1, 2020): We make a reasonable effort to ensure the automatically generated OpenAPI spec is accurate. However, supporting the ability to dynamically generate a full client based on the spec is not a design goal, so this sort of "bug" is not going to get a lot of attention from the core maintainers. So, if this is something you need from the project, I encourage you to commit the time and effort to own the issues you've opened. Otherwise, unless someone else volunteers to own the work, it's likely not going to get addressed and the issue will be automatically closed after a few weeks of inactivity.
Author
Owner

@dgjustice commented on GitHub (Jul 2, 2020):

That's a reasonable approach. At its core, this and pynetbox are where the lion's share of activity and usage occur. The generated client code in go-netbox gets us most of the way to where we want to be. Some hand-massaging of the golang repo between releases shouldn't be a massive problem.

@dgjustice commented on GitHub (Jul 2, 2020): That's a reasonable approach. At its core, this and pynetbox are where the lion's share of activity and usage occur. The generated client code in go-netbox gets us most of the way to where we want to be. Some hand-massaging of the golang repo between releases shouldn't be a massive problem.
Author
Owner

@stale[bot] commented on GitHub (Jul 16, 2020):

This issue has been automatically marked as stale because it has not had recent activity. It will be closed if no further activity occurs. NetBox is governed by a small group of core maintainers which means not all opened issues may receive direct feedback. Please see our contributing guide.

@stale[bot] commented on GitHub (Jul 16, 2020): This issue has been automatically marked as stale because it has not had recent activity. It will be closed if no further activity occurs. NetBox is governed by a small group of core maintainers which means not all opened issues may receive direct feedback. Please see our [contributing guide](https://github.com/netbox-community/netbox/blob/develop/CONTRIBUTING.md).
Author
Owner

@stale[bot] commented on GitHub (Jul 24, 2020):

This issue has been automatically closed due to lack of activity. In an effort to reduce noise, please do not comment any further. Note that the core maintainers may elect to reopen this issue at a later date if deemed necessary.

@stale[bot] commented on GitHub (Jul 24, 2020): This issue has been automatically closed due to lack of activity. In an effort to reduce noise, please do not comment any further. Note that the core maintainers may elect to reopen this issue at a later date if deemed necessary.
Sign in to join this conversation.
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: starred/netbox#3823