Instalação¶
O netbox-sdk requer Python 3.11 ou mais recente.
Versão documentada
Este site documenta o netbox-sdk 0.0.9. Use instalações sem pin para a versão mais recente no PyPI; fixe com ==0.0.9 para coincidir com a versão documentada.
Via PyPI¶
Somente SDK:
O pacote base já inclui as dependências necessárias para o SDK assíncrono e o
SDK tipado versionado, incluindo pydantic e email-validator.
CLI:
TUI:
Tudo:
Instalações fixas para a versão documentada (mesmos extras, versão exata):
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'
Com a ferramenta uv¶
Fixado à versão documentada:
A partir do código-fonte¶
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
Suporte ao SDK tipado¶
O repositório inclui bundles OpenAPI versionados e modelos Pydantic gerados para
NetBox 4.6, 4.5, 4.4 e 4.3. Não é necessário executar geração de código
localmente. A CI testa o SDK contra v4.6.0, v4.5.9 e v4.5.8.
Type hints na IDE¶
Os três pacotes instalados (netbox_sdk, netbox_cli, netbox_tui) trazem
marcadores py.typed (PEP 561). Pylance, Pyright e outros editores compatíveis
com PEP 561 resolvem tipos automaticamente a partir da wheel instalada — sem
configuração extra. Veja o guia do desenvolvedor
Suporte de IDE para o workspace de contribuidor
e os gates duplos no pre-commit.
Qual instalação escolher?¶
pip install netbox-sdkse você só precisa do SDK Pythonpip install 'netbox-sdk[cli]'se você quer o comandonbxpip install 'netbox-sdk[tui]'se você quer lançar TUIs Textual a partir do pacote em um ambiente Python existentepip install 'netbox-sdk[all]'se você quer todas as interfaces disponíveis localmente
Fluxo do contribuidor¶
uv run pre-commit install --hook-type pre-commit --hook-type pre-push
uv run pre-commit run --all-files
uv run pytest
Automação demo opcional¶
O nbx demo init usa Playwright. O runtime do navegador deve ser instalado separadamente: