cnaas-nms-api-client
A typed Python client library for the CNaaS NMS API, auto-generated from the OpenAPI specification using openapi-python-client.
Installation
pip install cnaas-nms-api-client
Or install directly from GitHub:
pip install git+https://github.com/acidjunk/cnaas-nms-api-client.git
Usage
from cnaas_nms_api_client import AuthenticatedClient
from cnaas_nms_api_client.api.devices import get_devices_api
client = AuthenticatedClient(
base_url="https://your-cnaas-instance/api/v1.0",
token="your-api-token",
)
# Example: list devices
response = get_devices_api.sync_detailed(client=client)
print(response.status_code)
Every endpoint has both sync_detailed and asyncio_detailed variants for synchronous and async usage.
Development
This project uses uv for dependency management.
# Clone and install
git clone https://github.com/acidjunk/cnaas-nms-api-client.git
cd cnaas-nms-api-client
uv sync
# Regenerate client from OpenAPI spec
make generate
# Build package
make build
# Lint
make lint
Regenerating the Client
If the upstream CNaaS NMS API changes:
- Place the updated Swagger 2.0 spec in
swagger_files/swagger.json - Run
make convertto produce the OpenAPI 3.1 spec - Run
make generateto regenerate the Python client
License
Apache-2.0
Metadata
Release files for cnaas-nms-api-client 0.2.0
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| cnaas_nms_api_client-0.2.0.tar.gz | 21.3 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| cnaas_nms_api_client-0.2.0-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 129.8 kB
Release files / cnaas_nms_api_client-0.2.0.tar.gz
| Download URL | cnaas_nms_api_client-0.2.0.tar.gz |
|---|---|
| Size | 21.3 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
39c52b1d8c4e694449d0bde12f793e3fc87185d3854995db0206b28e4fd481af
|
|
BLAKE2b-256 checksum How to use checksums |
a1cc127e62ee90588e81e3ceb2e84191ac059f87b9631867dd8de381a3a1773b
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/6.1.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 Jul 21, 2026.
Transparency logRelease files / cnaas_nms_api_client-0.2.0-py3-none-any.whl
| Download URL | cnaas_nms_api_client-0.2.0-py3-none-any.whl |
|---|---|
| Size | 108.5 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
8d7e7a3b6ccb484a95cd226663ffe914b687997b72b3b63128191dcbdacb0e11
|
|
BLAKE2b-256 checksum How to use checksums |
41cfee062027daab5232ba9f1cc470e783d520e5cc496a1f92f4340002199595
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/6.1.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 Jul 21, 2026.
Transparency log