Skip to main content

Netbox Circuit Maintenance Plugin

Documentation: https://jasonyates.github.io/netbox-circuitmaintenance/

A NetBox plugin built to track circuit maintenance events, the plugin itself is agnostic in that it is only built to store data surrounding maintenance events and provide an overview of historical, active and upcoming circuit and provider maintenance events. The plugin tracks maintenance events at the provider level and associates impact from each event at the circuit level.

The plugin does not directly provide an automated approach to ingesting provider notifications, instead it extends NetBox's extensive REST API and provides GET/POST/PUT/PATCH methods to manage maintenance events. The plugin is intended to be coupled with an automated parser to handle the parsing of provider notifications and the delivery of the maintenance events to the plugin's REST API. Several example parsers have been documented here.

Features

  • Track provider maintenance events with provider timezone support
  • Track circuit impact from provider maintenance
  • Maintenance summary dashboard with stats, timeline and grouped-by-provider views
  • Maintenance calendar with ICS/iCal subscription feed
  • Consolidated view of active, upcoming and historical maintenance at the provider and circuit level
  • Unmatched notification triage queue for automated parser workflows
  • Full REST API with timezone and nullable notification support

Compatibility

This plugin is only supported on NetBox 3.4 or higher, for exact compatibility information, see the table below.

NetBox Version Plugin Version
4.4+ 0.8.0
4.4+ 0.6.0
4.2+ 0.5.0
4.0+ 0.4.2
3.5 0.3.0
3.4 0.2.2

Installing

A working installation of Netbox 3.4+ is required - see official documentation.

Package Installation

Activate your virtual env and install via pip::

$ source /opt/netbox/venv/bin/activate
(venv) $ pip install netbox-circuitmaintenance

To ensure the Netbox Documents plugin is automatically re-installed during future upgrades, add the package to your local_requirements.txt :

# echo netbox-circuitmaintenance >> local_requirements.txt

Enable the Plugin

In the Netbox configuration.py configuration file add or update the PLUGINS parameter, adding netbox_circuitmaintenance:

PLUGINS = [
    'netbox_circuitmaintenance'
]

PLUGINS_CONFIG = {
    "netbox_circuitmaintenance": {},
}

Apply Database Migrations

Apply database migrations with Netbox manage.py:

(venv) $ python manage.py migrate

Restart Netbox

Restart the Netbox service to apply changes:

sudo systemctl restart netbox

Screenshots

Maintenance Event View Circuit Maintenance View Provider Maintenance View

Credits

Based on the NetBox plugin tutorial:

This package was created with Cookiecutter and the netbox-community/cookiecutter-netbox-plugin project template.

Release files for netbox-circuitmaintenance 0.8.0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for netbox-circuitmaintenance 0.8.0
File Size Uploaded
netbox_circuitmaintenance-0.8.0.tar.gz 1.1 MB Details

Built distribution (wheel)

Table of built distributions (wheels) for netbox-circuitmaintenance 0.8.0
File Interpreter ABI Platform
netbox_circuitmaintenance-0.8.0-py3-none-any.whl Python 3 none any Details

Total release size: 1.2 MB

Release files / netbox_circuitmaintenance-0.8.0.tar.gz

Download URL netbox_circuitmaintenance-0.8.0.tar.gz
Size 1.1 MB
Tags Source
SHA-256 checksum
How to use checksums
075a9c6325d4318d29a2aaad6a155348b6fb2e958e2bd228147c62d2e935fdd8
BLAKE2b-256 checksum
How to use checksums
ca8fcfe47b45159e1526d1883f1bc9f8f953332d2b312ad7a2b86a3552116853
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.13.7

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Feb 15, 2026.

Transparency log

Release files / netbox_circuitmaintenance-0.8.0-py3-none-any.whl

Download URL netbox_circuitmaintenance-0.8.0-py3-none-any.whl
Size 48.9 kB
Tags Python 3
SHA-256 checksum
How to use checksums
eb87d49da3aaea8d57db789a4b7287f49f53b5417de54b532ad543204ba35986
BLAKE2b-256 checksum
How to use checksums
1e9915d32d104b483a562470fb8875d39b994dd5fcf6e2f1d57d8407719f4bf8
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.13.7

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Feb 15, 2026.

Transparency log

Release history Release notifications | RSS feed

This release

0.8.0 This release

2 release files

0.6.0

2 release files

0.5.0

2 release files

0.4.2

2 release files

0.4.1

2 release files

0.4.0

2 release files

0.3.0

2 release files

0.2.2

2 release files

0.2.1

2 release files

0.2.0

2 release files

0.1.0

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page