
| If you have: | And you need: | Then you need to use: | Because: |
| NetBox 3.7.0 or newer | VPNs | 7.3.3 or newer | vpn app was added in pynetbox |
| NetBox 3.5.0 or newer | ASN ranges | 7.1.0 or newer | asn_ranges.available_asns was added in pynetbox |
| NetBox 3.3.0 or newer | Cable terminations | 7.0.0 or newer | Cable terminations were changed in NetBox 3.3 |
| NetBox older than 3.3.0 | Cable terminations | 6.6.2 (or older) | pynetbox 7.0.0 (or newer) only supports NetBox 3.3 or newer |
| NetBox 3.2.0 or newer | /api/ipam/vlan-groups/<id>/available_vlans | 6.5.0 or newer | Feature was added in NetBox 3.2 |
| NetBox 3.1.1 or newer | /api/ipam/prefixes/<id>/available_ips (or _prefixes) | 6.4.1 or newer | NetBox behaviour was changed, pynetbox was updated to support that |
| NetBox 3.1.0 or newer | /api/wireless | pynetbox 6.4.0 or newer | wireless app was added in pynetbox |
| NetBox 3.0.0 or newer | /api/users/tokens/provision | pynetbox 6.3.0 or newer | Api.create_token() was added in pynetbox |
| NetBox 2.10.0 or newer | /api/status | pynetbox 5.2.0 or newer | Api.status() was added in pynetbox |
| NetBox 2.9.0 or newer | /api/users | pynetbox 5.2.0 or newer | users app was added in pynetbox |
| NetBox 2.9.0 or newer | Tags | pynetbox 5.1.2 or newer | Tag handling was changed in NetBox, pynetbox was updated to support that |
Whenever upgrading pynetbox always read the full release notes between your current version and the new version to see the affecting changes.
Reminder: You can check Api.version in your code to make it compatible with various NetBox versions if needed, for example (see also Comparing Version Numbers in Python):
import os
import pynetbox
# pkg_resources is part of setuptools
from pkg_resources import parse_version as version
token = os.getenv("NETBOX_TOKEN")
netbox = pynetbox.api("https://netbox.example.com", token)
if version(netbox.version) >= version("3.1"):
print("NetBox 3.1+ detected")
else:
print("Not running the latest NetBox series yet eh?")