Skip to main content

NetBox VitalQIP Plugin

PyPI Python License

A NetBox plugin that integrates with Nokia VitalQIP IPAM to display IP address data and enable importing prefixes and IP addresses from QIP to NetBox.

Features

  • Device/VM Tabs: View VitalQIP data for any device or VM based on their assigned IP addresses
  • Prefix Import: Search VitalQIP for networks using wildcard patterns and import them as prefixes
  • IP Address Import: Look up individual IP addresses and import them with DNS names
  • Caching: Results are cached to minimize API calls to VitalQIP

Requirements

  • NetBox 4.0+
  • Python 3.10+
  • Nokia VitalQIP REST API access

Installation

pip install netbox-vitalqip

Add to NetBox configuration.py:

PLUGINS = [
    'netbox_vitalqip',
]

PLUGINS_CONFIG = {
    'netbox_vitalqip': {
        'qip_url': 'https://dhcp.example.com/api',
        'qip_username': 'your-username',
        'qip_password': 'your-password',
        'qip_organization': 'YourOrg',
        'timeout': 30,
        'cache_timeout': 300,
        'verify_ssl': False,
    },
}

Usage

Device/VM Tab

Navigate to any Device or VirtualMachine detail page. A "VitalQIP" tab shows:

  • IP address assignments in QIP
  • Object name and domain
  • Subnet information
  • Address type (Static/DHCP)

Import Prefixes

  1. Navigate to VitalQIP > Import from QIP
  2. Enter a wildcard pattern (e.g., 10.*, 172.16.*, 192.168.1.*)
  3. Review networks found in VitalQIP:
    • New: Networks not yet in NetBox (can be imported)
    • Existing: Networks already in NetBox (shown for reference)
  4. Select prefixes to import

Imported prefixes include:

  • Description from QIP network name
  • Appropriate status (Container for /16 and larger, Active for smaller)
  • Tenant assignment

Import Single IP Address

  1. Navigate to VitalQIP > Import from QIP
  2. Enter a full IP address (e.g., 192.168.1.1)
  3. Review the QIP data (object name, domain, class, subnet)
  4. Import with DNS name auto-populated from QIP

API Notes

VitalQIP uses a REST API with legacy TLS requirements. The plugin handles:

  • Token-based authentication (login returns Authentication header)
  • Legacy SSL/TLS negotiation via OpenSSL configuration
  • Response caching to minimize API calls

Endpoints Used

  • POST /api/login - Authentication
  • GET /api/v1/{org}/v4address.json - Search addresses
  • GET /api/v1/{org}/v4network.json - Get networks
  • GET /api/v1/{org}/v4subnet.json - Get subnet info

Development

cd ~/development/netbox-vitalqip
python -m venv .venv
source .venv/bin/activate
pip install -e ".[dev]"

License

Apache 2.0

Author

sieteunoseis (jeremy.worden@gmail.com)

Release files for netbox-vitalqip 0.1.7

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-vitalqip 0.1.7
File Size Uploaded
netbox_vitalqip-0.1.7.tar.gz 24.5 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for netbox-vitalqip 0.1.7
File Interpreter ABI Platform
netbox_vitalqip-0.1.7-py3-none-any.whl Python 3 none any Details

Total release size: 53.8 kB

Release files / netbox_vitalqip-0.1.7.tar.gz

Download URL netbox_vitalqip-0.1.7.tar.gz
Size 24.5 kB
Tags Source
SHA-256 checksum
How to use checksums
78668ce05756671f7bbbccdab081cf13ba2d438fe9283f767ecb1dac6fa6c136
BLAKE2b-256 checksum
How to use checksums
330ca56eb7c4c867d871e3561c013c529494dc359366eb6f3e13508a0c367e05
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.13.12

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 May 5, 2026.

Transparency log

Release files / netbox_vitalqip-0.1.7-py3-none-any.whl

Download URL netbox_vitalqip-0.1.7-py3-none-any.whl
Size 29.4 kB
Tags Python 3
SHA-256 checksum
How to use checksums
499ce8b96a930e4ac1174f139cf7ca797e07da0787e976a82a3094ddcbac691e
BLAKE2b-256 checksum
How to use checksums
fcf567b82c0da40d36857efe89551334a6efaaaa1817c196b8a95ee568a7111e
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.13.12

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 May 5, 2026.

Transparency log

Release history Release notifications | RSS feed

This release

0.1.7 This release

2 release files

0.1.6

2 release files

0.1.5

2 release files

0.1.4

2 release files

0.1.2

2 release files

0.1.1

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