Installation¶
netbox-sdk requires Python 3.11 or newer.
Documented release
This site documents netbox-sdk 0.0.9. Use unpinned installs for the latest PyPI release; pin with ==0.0.9 to match the documented version.
From PyPI¶
SDK only:
The base package already includes the dependencies required by the async SDK and
the versioned typed SDK, including pydantic and email-validator.
CLI:
TUI:
Everything:
Pinned installs for the documented release (same extras, exact version):
pip install netbox-sdk==0.0.9
pip install 'netbox-sdk[cli]==0.0.9'
pip install 'netbox-sdk[tui]==0.0.9'
pip install 'netbox-sdk[all]==0.0.9'
With uv tool¶
Pinned to the documented release:
From source¶
git clone https://github.com/emersonfelipesp/netbox-sdk.git
cd netbox-sdk
uv sync --dev --extra cli --extra tui --extra demo
uv run nbx --help
Typed SDK support¶
The repository ships committed OpenAPI bundles and generated Pydantic models for
NetBox 4.6, 4.5, 4.4, and 4.3. Users do not need to run code generation
locally. CI live-tests the SDK against v4.6.0, v4.5.9, and v4.5.8.
IDE type hints¶
All three installed packages (netbox_sdk, netbox_cli, netbox_tui) ship
PEP 561 py.typed markers. Pylance, Pyright, and other PEP 561-aware editors
resolve types automatically from the installed wheel — no extra setup. See the
IDE Support developer guide for the contributor
workspace and dual-checker pre-commit gates.
Which install should I pick?¶
pip install netbox-sdkif you only need the Python SDKpip install 'netbox-sdk[cli]'if you want thenbxcommandpip install 'netbox-sdk[tui]'if you want to launch Textual TUIs from the package in an existing Python environmentpip install 'netbox-sdk[all]'if you want every interface available locally
Contributor workflow¶
uv run pre-commit install --hook-type pre-commit --hook-type pre-push
uv run pre-commit run --all-files
uv run pytest
Optional demo automation¶
nbx demo init uses Playwright. The browser runtime must be installed separately: