python-heatclient
OpenStack Orchestration API Client Library
What it is and what it does
python-heatclient is a Python library and command-line interface for the OpenStack Heat orchestration service. It provides both a programmatic API (the heatclient module) and a CLI tool (heat command) for creating, updating, and managing infrastructure stacks defined in Heat templates. The package wraps the Heat orchestration API, abstracting away HTTP details and providing Pythonic access to stack operations.
The library integrates with the broader OpenStack ecosystem through keystoneauth1 for authentication, cliff for CLI framework, and oslo libraries for serialization and utilities. It supports modern Python versions (3.10 through 3.13) and is maintained as part of the official OpenStack project. Installation is straightforward via pip with no compiled dependencies, making it suitable for both local development and server-side automation.
Use it for:
- Deploy and manage infrastructure stacks programmatically from Python applications using Heat templates.
- Automate stack lifecycle operations (create, update, delete) in CI/CD pipelines targeting OpenStack clouds.
- Query stack status, outputs, and resource details from command-line scripts or monitoring systems.
- Integrate Heat orchestration into larger infrastructure-as-code workflows alongside other OpenStack services.
- Develop custom tooling that extends Heat functionality by building on the client library's Python API.
Worth the install?
AI-flagged interpretation of the facts on this page — verify before relying
Python client library and command-line tool for interacting with OpenStack Heat orchestration services, enabling programmatic stack management and template deployment.
Yes, if you are working with OpenStack Heat orchestration. The package is actively maintained, has low install friction, carries permissive licensing, and integrates cleanly with the OpenStack ecosystem. It is production-stable and suitable for both CLI automation and programmatic stack management. Not relevant for non-OpenStack environments.
Install
python-heatclient on PyPI
pip
pip install python-heatclientuv
uv add python-heatclientpoetry
poetry add python-heatclientInstalling python-heatclient
Before you install
Low install friction with a pure-Python wheel distribution. Active maintenance status as of 88 days ago. Depends on 12 runtime packages including keystoneauth1 for authentication and cliff for CLI framework, all standard OpenStack ecosystem components.
License in practice
Licensed under Apache (permissive treatment), meaning you can use, modify, and distribute this package with minimal legal restriction, typical for OpenStack projects.
Quickstart
pip install python-heatclient
from heatclient import client
from keystoneauth1 import session
from keystoneauth1.identity import v3
auth = v3.Password(auth_url='...', username='...', password='...', project_name='...', user_domain_name='...', project_domain_name='...')
sess = session.Session(auth=auth)
heat = client.Client('1', session=sess, endpoint='...')
Requires OpenStack Heat service endpoint and valid Keystone authentication credentials; Python >= 3.10.
Verify before relying
- Whether the package supports all current OpenStack API versions or only specific Heat API versions.
- Compatibility with non-Keystone authentication methods or custom identity providers.
- Performance characteristics when managing large numbers of stacks or templates.
Package facts
| License | not declared (permissive) |
| Python support | supports the current Python release (>=3.10) |
| Install friction | low — pure-Python wheel |
| Runtime dependencies | 12 — pbr, cliff, iso8601, osc-lib, PrettyTable, oslo.i18n, oslo.serialization, oslo.utils, keystoneauth1, python-swiftclient, PyYAML, requests |
| Maintenance | actively maintained — 88 days since the last release |
| First released | |
| Downloads | 220,638/month — #9,296 on PyPI (30-day window, as of 2026-08-14) |
| Known vulnerabilities | none known (OSV.dev, checked 2026-08-14) |
Evidence: python_heatclient-5.2.0-py3-none-any.whl
Tags
More Distributed Computing packages
gRPC Python is an HTTP/2-based RPC framework…
permissive · top 100 on PyPI
execnetexecnet lets you spawn and communicate with…
permissive · top 1,000 on PyPI
cloudpickleCloudpickle extends Python's standard pickle…
permissive · top 1,000 on PyPI
smart-openProvides a unified, open()-compatible Python…
permissive · top 1,000 on PyPI
portalockerPortalocker provides cross-platform file…
permissive · top 1,000 on PyPI
rayRay is a distributed computing framework that…
permissive · top 1,000 on PyPI
python-magnumclientPython bindings and command-line tool for the…
permissive · top 15,000 on PyPI
python-mistralclientPython client library and command-line…
permissive · top 15,000 on PyPI
python-novaclientPython bindings to the OpenStack Compute API,…
permissive · top 15,000 on PyPI
python-zaqarclientPython client library for the OpenStack Zaqar…
permissive · top 15,000 on PyPI
python-glanceclientPython client library and command-line tool for…
permissive · top 15,000 on PyPI
python-designateclientPython client library and command-line tool for…
permissive · top 15,000 on PyPI
python-troveclientPython client library and command-line tool for…
permissive · top 15,000 on PyPI
python-neutronclientPython bindings and client library for the…
permissive · top 15,000 on PyPI
python-manilaclientProvides Python bindings and a command-line…
permissive · top 15,000 on PyPI
python-cinderclientPython bindings and command-line interface to…
permissive · top 15,000 on PyPI