Skip to main content
Cloud

Features

Public Preview: Asset Lifecycle is in public preview. The functionality and API surface may evolve in future releases.

NetBox Asset Lifecycle bridges the gap between NetBox's inventory model and the real-world process of acquiring equipment. It lets infrastructure teams drive procurement directly from the same designs they already maintain in NetBox - and then track what was ordered, what was shipped, and what's been installed all the way back to those designs.

The plugin organises this work into four functional areas, plus a configurable workflow layer that ties them together:

FeatureWhat it covers
Bills of MaterialsDefine what equipment is needed and roll it up from existing NetBox objects
PurchasingTrack orders placed with vendors, including line item quantities and pricing
ShipmentsRecord physical deliveries from couriers and reconcile what arrived against what was ordered
Spares ManagementMaintain pools of reserve equipment and draw from them to fulfil installation requirements
Status TransitionsCustomise the lifecycle workflow that governs how BOMs, purchase orders, and shipments progress

The Lifecycle, End to End

A typical engagement with the plugin looks like this:

  1. Plan the installation in NetBox using planned-status racks, devices, modules, and cables - the same way you already model real infrastructure.
  2. Roll up the requirement into a BOM by writing scope rules that filter your planned objects, then generating the BOM. Each unique type and variant becomes a single line item with a quantity.
  3. Place orders with one or more vendors by creating purchase orders against the BOM and copying line items onto each PO with the quantity and unit price.
  4. Record deliveries by creating shipments against each purchase order. Tracking numbers can be made clickable by configuring the courier's tracking URL.
  5. Mark items received as they arrive, recording per-line shortfalls or damage as the received quantities are entered.
  6. Fulfil from spares where appropriate, drawing from a spares pool instead of placing a new order.

Bulk Import and API Access

Every record managed by the plugin can be edited individually in the UI, imported in bulk from CSV via the Import button on each list view, or read and written through NetBox's REST API. The plugin's API is namespaced under /api/plugins/asset-lifecycle/ and uses the same authentication, permissions, and serialisation conventions as the rest of NetBox.

Permissions, Tagging, and Other NetBox Features

All primary objects in the plugin support NetBox's standard features: tags, custom fields, comments, journaling, change logging, and granular object-based permissions. Vendors and couriers additionally support contact assignment.

If you can do it elsewhere in NetBox, you can do it here.

Plugin Configuration

The plugin has no required or optional PLUGINS_CONFIG settings of its own. If netbox-branching is installed alongside the plugin, all of the plugin's models should be excluded from branching by adding them to netbox_branching.exempt_models. See the project README for the exact snippet.