Skip to main content
 _   _      _   _
| \ | | ___| |_| | ___   ___  _ __ ___
|  \| |/ _ \ __| |/ _ \ / _ \| '_ ` _ \
| |\  |  __/ |_| | (_) | (_) | | | | | |
|_| \_|\___|\__|_|\___/ \___/|_| |_| |_|

A CLI for working with network APIs — easy, consistent, safe, and fast.

Version Python Platform

About

netloom is a plugin-backed network API CLI for operators and automation engineers. It lets you interact with network APIs through a consistent CLI with a shared command model, context-aware help and tab completion. It keeps server profiles and discovery data organized locally, and supports day-to-day tasks such as list, create, update or delete objects as well as compare and copy configuration between servers.

HPE Aruba ClearPass is a bundled plugin with netloom.

Installation

Install from PyPI:

pip install netloom-tool

Install directly from GitHub:

pip install git+https://github.com/mathias-granlund/netloom

Install the bundled man pages:

netloom-install-manpage
man netloom
man netloom-clearpass

Configuration

Example templates are included as defaults.env.example, profiles.env.example, and credentials.env.example.

For ClearPass, the minimal layout is:

~/.config/netloom/config.env
~/.config/netloom/plugins/clearpass/defaults.env
~/.config/netloom/plugins/clearpass/profiles/<profile>.env
~/.config/netloom/plugins/clearpass/credentials/<profile>.env

Required profile connection settings in profiles/<profile>.env:

NETLOOM_SERVER="server.example.com:443"

Required credentials in credentials/<profile>.env:

NETLOOM_CLIENT_ID="your-client-id"
NETLOOM_CLIENT_SECRET_REF="<profile>/client-secret"
# Optional plaintext fallback:
# NETLOOM_CLIENT_SECRET="your-client-secret"

If you use an OS keychain, store the referenced secret with:

python -m keyring set netloom/clearpass <profile>/client-secret

You can also resolve NETLOOM_CLIENT_SECRET_REF from Delinea Secret Server with a reference such as:

NETLOOM_CLIENT_SECRET_REF="secretserver://prod/Shared/ClearPass/API?field=password"

Shared Secret Server provider config lives under:

~/.config/netloom/keystores/secretserver/defaults.env
~/.config/netloom/keystores/secretserver/profiles/<profile>.env
~/.config/netloom/keystores/secretserver/credentials/<profile>.env

Typical Secret Server provider settings:

NETLOOM_SECRETSERVER_URL="https://vault.example.com/SecretServer"
NETLOOM_SECRETSERVER_USERNAME="svc-netloom"
NETLOOM_SECRETSERVER_PASSWORD_REF="prod/secretserver-password"
NETLOOM_SECRETSERVER_NETWORK_DEVICE_PATH_TEMPLATE="/Shared/ClearPass/network-devices/{name}"

When that provider is configured, netloom policyelements network-device add, update, replace, and copy can backfill missing radius_secret and tacacs_secret values from Delinea by device name. The current integration is read-only and only fetches those secret fields.

First Run / Quick Start

netloom load clearpass
netloom server use <profile>
netloom cache update
netloom identities endpoint list --limit=10

That initial cache update is what enables richer help, completion, and live module/service discovery for the active server.

CLI Examples

List a few endpoints from the active profile:

netloom identities endpoint list --limit=10

Filter a list request with shorthand syntax:

netloom identities endpoint list --filter=name:contains:guest

Fetch one object and print it to the terminal:

netloom policyelements network-device get --id=1001 --console

Compare the same service between two profiles:

netloom policyelements network-device diff --from=<source-profile> --to=<target-profile> --all --max-items=25

Preview a cross-profile copy without writing changes:

netloom policyelements network-device copy --from=<source-profile> --to=<target-profile> --all --dry-run

Feature Roadmap

  • Multi-service copy workflows
  • Extended validation and dry-run features
  • Version tracking for config changes
  • Low-priority CLI semantics and naming cleanup
  • GUI on top of CLI

Deeper Docs

For full command reference and plugin-specific details:

  • Shared CLI reference: man netloom or man/netloom.md
  • ClearPass plugin reference: man netloom-clearpass or man/netloom-clearpass.md
  • Shell completion setup and generic --filter= syntax: man netloom
  • ClearPass-oriented filter and workflow examples: man netloom-clearpass
  • Live action help from your current cache: netloom <module> <service> ?

Detailed release history is in CHANGELOG.md.

Development

pip install -e .[dev]
pytest -q
ruff check .
ruff format .
python -m build
python -m twine check dist/*
netloom-generate-manpages
netloom-generate-manpages --check

License

Proprietary / Internal Use
See LICENSE.

Metadata

Release files for netloom-tool 1.11.2

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

Source distribution (sdist)

Source distribution for netloom-tool 1.11.2
File Size Uploaded Provenance
netloom_tool-1.11.2.tar.gz 186.1 kB With provenance Details

Built distribution (wheel)

Table of built distributions (wheels) for netloom-tool 1.11.2
File Interpreter ABI Platform
netloom_tool-1.11.2-py3-none-any.whl Python 3 none any Details

Total release size: 320.3 kB

Release files / netloom_tool-1.11.2.tar.gz

Download URL netloom_tool-1.11.2.tar.gz
Size 186.1 kB
Tags Source
SHA-256 checksum
How to use checksums
c1ee2ee654a7824c189caff55dc1d927c9ca7826880977d0c08346a7ca154383
BLAKE2b-256 checksum
How to use checksums
70b50176534c82a8fe0800262814101215b9883f0ef084d967e5fc9baf353922
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

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 Aug 13, 2026.

Transparency log

Release files / netloom_tool-1.11.2-py3-none-any.whl

Download URL netloom_tool-1.11.2-py3-none-any.whl
Size 134.2 kB
Tags Python 3
SHA-256 checksum
How to use checksums
eacfea82fa4aef64bfb006df8cf784fa0cc249d1ac9d5ed7ed3d83c5846e4978
BLAKE2b-256 checksum
How to use checksums
61d9d27bbd50d1ca0a7aea06c2a778ad33aeb3c0d5d4564a651052e6b36d74b3
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

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 Aug 13, 2026.

Transparency log

Security for netloom-tool 1.11.2

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.

Full provenance

All 2 files in this release have been uploaded with provenance metadata.

Select from 2 files

Attestation for netloom_tool-1.11.2.tar.gz

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 Aug 13, 2026.

Transparency log

A note on package security

PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.

To learn more about protecting yourself from malicious actors, visit our package security documentation.

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