Ir para o conteúdo

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:

pip install netbox-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:

pip install 'netbox-sdk[cli]'

TUI:

pip install 'netbox-sdk[tui]'

Tudo:

pip install 'netbox-sdk[all]'

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

uv tool install --force 'netbox-sdk[cli]'
nbx --help

Fixado à versão documentada:

uv tool install --force 'netbox-sdk[cli]==0.0.9'

nbx --help

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-sdk se você só precisa do SDK Python
  • pip install 'netbox-sdk[cli]' se você quer o comando nbx
  • pip install 'netbox-sdk[tui]' se você quer lançar TUIs Textual a partir do pacote em um ambiente Python existente
  • pip 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:

uv tool run --from playwright playwright install chromium --with-deps