This package assumes you are using NetBox 2.0, as the NetBox 1.0 API no longer exists.
Using the client
The github.com/go-netbox/netbox package has some convenience functions for creating clients with the most common
configurations you are likely to need while connecting to NetBox. NewNetboxAt allows you to specify a hostname
(including port, if you need it), and NewNetboxWithAPIKey allows you to specify both a hostname:port and API token.
c := netbox.NewNetboxAt("your.netbox.host:8000")
c := netbox.NewNetboxWithAPIKey("your.netbox.host:8000", "your_netbox_token")
If you specify the API key, you do not need to pass an additional authInfo to operations that need authentication, and
can pass nil:
More complex client configuration
The client is generated using go-swagger. This means the generated client
makes use of github.com/go-openapi/runtime/client. If you need
a more complex configuration, it is probably possible with a combination of this generated client and the runtime
The godocs for the go-openapi/runtime/client module explain
the client options in detail, including different authentication and debugging options. One thing I want to flag because
it is so useful: setting the DEBUG environment variable will dump all requests to standard out.
Regenerating the client
To regenerate the client with a new or different swagger schema, first clean the existing client, then replace
swagger.json and finally re-generate:
cp new_swagger_file.json swagger.json