Skip to main content

HPE Aruba Networking Central Python Package

Project description

PyCentral (Python SDK for HPE Aruba Networking Central)

⚠️ Pre-release Notice
This is a pre-release version of PyCentral-v2, and the features are constantly being updated as the APIs evolve. This version of the SDK allows you to make API calls to New Central, GLP, and Classic Central.
If you are looking for the stable version of PyCentral (v1), it is still available and fully supported. PyCentral-v1, which only supports Classic Central, can be found here.

A Python SDK for interacting with HPE Aruba Networking Central via REST APIs.
Automate onboarding, configuration, monitoring, and management for:

  • New Central
  • HPE GreenLake Platform (GLP)
  • Classic Central (via the classic module for backward compatibility)

Upgrading to this pre-release version will not break PyCentral-v1 code. All the PyCentral-v1 code has been moved to the classic folder within the PyCentral directory, ensuring backward compatibility. You can find Classic Central PyCentral Documentation here.


Install

To install the latest pre-release version of PyCentral, use the following command:

pip3 install --pre pycentral

If you already have PyCentral-v1 and would like to upgrade to the pre-release version, use the following command:

pip3 install --upgrade --pre pycentral

Authentication

New Central

You will need:

  • Base URL or Cluster Name: Identifies your Central Account's API gateway. Both options function identically. Use whichever is convenient:
    • Base URL — URL for requests to your Central API Gateway. For instructions on how to locate your Base URL, see Finding Your Base URL in Central.
    • Cluster Name — Name of the cluster where your account is provisioned. A table detailing all cluster names can be found here.
  • Client ID and Client Secret: These credentials are required to generate an access token to authenticate API requests. You can obtain them by creating a Personal API Client for your New Central Account. Follow the detailed steps in the Create Client Credentials documentation.
new_central:
  base_url: <api-base-url>
  client_id: <client-id>
  client_secret: <client-secret>

HPE GreenLake Platform (GLP)

If you are working with HPE GreenLake APIs, authentication is slightly different:

  • GLP does not require a Base URL.
  • You only need the Client ID & Client Secret for the HPE GreenLake Platform.
glp:
  client_id: <client-id>
  client_secret: <client-secret>

Example

Before running the script, create a token.yaml file in the same directory and populate it with the required credentials as follows:

new_central:
  base_url: <api-base-url>
  client_id: <client-id>
  client_secret: <client-secret>
glp:
  client_id: <client-id>
  client_secret: <client-secret>

Once you have the token.yaml file ready, you can run the following Python script:

import os
from pycentral import NewCentralBase

# Validate token file exists
token_file = "token.yaml"
if not os.path.exists(token_file):
    raise FileNotFoundError(
        f"Token file '{token_file}' not found. Please provide a valid token file."
    )

# Initialize NewCentralBase class with the token credentials for New Central/GLP
with NewCentralBase(token_info=token_file) as conn:
   
    # Make the API call to retrieve device inventory
    resp = conn.command(
        api_method="GET",
        api_path="network-monitoring/v1/device-inventory"
    )
    
    # If the response code is 200, print the device inventory response; otherwise, print the error code and message
    if resp["code"] == 200:
        print(resp["msg"])
    else:
        print(f"Error {resp['code']}: {resp['msg']}")

Run the script using the following command:

python3 demo.py

Compatibility

  • v2 supports New Central and GLP.
  • Classic Central (v1) remains in the classic module for backward compatibility.
  • Existing v1 code will continue to work without changes.

Documentation


Classic Central

The Classic Central functionality is still fully supported by the SDK and has been moved to a dedicated documentation page. For information on using the SDK with Classic Central, including authentication methods, API calls, and workflow examples, please see the Classic Central Documentation.

Documentation

Use-Cases and Workflows

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

pycentral-2.0a16.tar.gz (127.9 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

pycentral-2.0a16-py3-none-any.whl (168.7 kB view details)

Uploaded Python 3

File details

Details for the file pycentral-2.0a16.tar.gz.

File metadata

  • Download URL: pycentral-2.0a16.tar.gz
  • Upload date:
  • Size: 127.9 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for pycentral-2.0a16.tar.gz
Algorithm Hash digest
SHA256 4a313fb19a518c041df48da8ee330cad4c663851801789d3563f06c0863d75b6
MD5 5da6b2fe613e5ad919de21f0b5fab8f0
BLAKE2b-256 a38c1b19c67d9db25b1d83b42ca89fbedd5c476ef9711d77fd5f1d861028511e

See more details on using hashes here.

Provenance

The following attestation bundles were made for pycentral-2.0a16.tar.gz:

Publisher: release.yaml on aruba/pycentral

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file pycentral-2.0a16-py3-none-any.whl.

File metadata

  • Download URL: pycentral-2.0a16-py3-none-any.whl
  • Upload date:
  • Size: 168.7 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for pycentral-2.0a16-py3-none-any.whl
Algorithm Hash digest
SHA256 9e341e654869e9730804ca105941dd717df8a4128521031123845932111ca1c1
MD5 c5406703b5c1e1f4f4b1ac5dd83644ba
BLAKE2b-256 42ee05332c19d5666aae982c3fe22f2959940574b97549e48d9d9aab6e334f1f

See more details on using hashes here.

Provenance

The following attestation bundles were made for pycentral-2.0a16-py3-none-any.whl:

Publisher: release.yaml on aruba/pycentral

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page