Proxbox is a NetBox plugin that integrates Proxmox with NetBox through a separate FastAPI backend.
The current repository code is v0.0.7 and declares support for NetBox 4.5.x:
min_version = "4.5.0"max_version = "4.5.99"
The latest upstream NetBox release I verified for this docs refresh is v4.5.5, published on 2026-03-17.
This repository is ahead of the latest published PyPI release of netbox-proxbox.
- If you want the code documented in this repository, install from source.
- If you install the older PyPI prerelease, its compatibility notes from the old docs do not apply to the current
mainbranch anymore.
Proxbox remains read-oriented toward Proxmox. The plugin triggers synchronization through the backend and does not directly manage Proxmox resources from NetBox.
Proxbox has two parts:
- The NetBox plugin in this repository.
- A separate FastAPI backend service (
proxbox-api) that talks to Proxmox and NetBox.
Inside NetBox, the plugin currently manages:
ProxmoxEndpointNetBoxEndpointFastAPIEndpointSyncProcessVMBackup
The UI exposes sync actions for:
- devices
- virtual machines
- full update
- VM backups
For the current codebase, the recommended install path is:
- Install the plugin from this repository into the NetBox virtual environment.
- Run migrations and collect static files.
- Install and start the
proxbox-apibackend separately. - In NetBox, create at least one endpoint object for:
- Proxmox API
- NetBox API
- ProxBox API (FastAPI)
- Run
Full Updatefrom the Proxbox home page.
cd /opt/netbox/netbox
git clone https://github.com/netdevopsbr/netbox-proxbox.git
source /opt/netbox/venv/bin/activate
pip install -e /opt/netbox/netbox/netbox-proxbox
cd /opt/netbox/netbox
python3 manage.py migrate netbox_proxbox
python3 manage.py collectstatic --no-input
sudo systemctl restart netboxEnable the plugin in /opt/netbox/netbox/netbox/configuration.py:
PLUGINS = ["netbox_proxbox"]Scheduled and recurring sync jobs run through NetBox's Redis Queue system. Start a worker that includes the plugin's queue alongside the standard NetBox queues:
cd /opt/netbox/netbox
source /opt/netbox/venv/bin/activate
python3 manage.py rqworker high default low netbox_proxbox.syncFor production, add a systemd unit so the worker starts automatically. See Scheduled Sync — systemd unit for an example service file.
Manual sync (clicking the sync buttons in the UI) does not require the RQ worker. The worker is only needed for scheduled and recurring jobs.
The plugin requires a running proxbox-api service. The simplest backend install is a separate virtual environment:
mkdir -p /opt/proxbox-api
cd /opt/proxbox-api
python3 -m venv venv
source venv/bin/activate
pip install proxbox-api==0.0.2.post3
/opt/proxbox-api/venv/bin/uvicorn proxbox_api.main:app --host 0.0.0.0 --port 8800 --app-dir /opt/proxbox-apiDocker is also supported for the backend itself:
docker pull emersonfelipesp/proxbox-api:latest
docker run -d --name proxbox-api -p 8800:8800 emersonfelipesp/proxbox-api:latestThe repository also ships sample systemd units in contrib/proxbox.service and contrib/proxbox-https.service.
After both services are running, configure the plugin through the NetBox UI:
- Open
Plugins > Proxbox. - Create a
Proxmox APIendpoint. - Create a
NetBox APIendpoint. - Create a
ProxBox API (FastAPI)endpoint. - Return to the Proxbox home page and run a sync.
If you enable WebSocket support on the FastAPI endpoint, the sync pages can display real-time messages from the backend.
Proxbox supports scheduling sync operations to run automatically on a recurring interval (e.g. daily at 02:00).
- Start the RQ worker (see Install From Source above).
- In NetBox, go to Proxbox > Schedule Sync.
- Choose a sync type (All, Devices, Virtual Machines, VM Backups).
- Set an optional schedule time and recurrence interval (in minutes).
- Click Schedule.
After the job is queued, view its status, structured logs, and any error details under Proxbox > Sync Jobs or Operations > Background Jobs.
Common intervals:
| Minutes | Frequency |
|---|---|
60 |
Every hour |
1440 |
Every day (daily) |
10080 |
Every week (weekly) |
Recurring jobs re-schedule automatically after each execution. To stop recurrence, delete the scheduled job from the NetBox job list.
See docs/features/scheduled-sync.md for full details.
- The current code requires Python
>=3.12for the plugin itself. - HTMX navigation in NetBox can still affect the Proxbox UI; see the pre-installation note in the docs.
- Containerized NetBox/plugin installation is not documented as a supported workflow yet.
The MkDocs site lives under docs/. The main entry points are:
- GitHub Discussions: https://github.com/orgs/netdevopsbr/discussions
- Discord: https://discord.gg/X6FudvXW
- Telegram: https://t.me/netboxbr