heroku3
Heroku API Wrapper.
What it is and what it does
Heroku3 is a Python client library that wraps Heroku's REST API V3, letting you automate management of Heroku applications, addons, dynos, configuration, and account features from Python code. It depends on requests for HTTP calls and python-dateutil for timestamp handling. The library exposes Heroku resources as Python objects—you instantiate a connection with an API key, then interact with apps, addons, releases, collaborators, and other entities through method calls and attribute access. It supports pagination, filtering, and sorting on list operations, and includes debugging helpers like rate-limit tracking and request IDs.
The package is marked Production/Stable in its classifiers and has been maintained since 2014, though releases have slowed significantly (last update April 2023). It targets developers who want to script Heroku operations or integrate Heroku management into larger Python applications. The API surface is large—covering accounts, apps, addons, buildpacks, transfers, and more—so you'll need to consult the Heroku API documentation to understand what fields and operations are available for each resource type.
Use it for:
- Automate app deployments, scaling, and configuration changes across multiple Heroku applications from a Python script.
- Provision and manage addons (databases, caches, monitoring) for Heroku apps programmatically.
- Build internal tools or dashboards that query app status, dyno information, and release history.
- Integrate Heroku app management into CI/CD pipelines or infrastructure-as-code workflows.
- Batch operations like listing all apps, updating environment variables, or managing collaborators across accounts.
Worth the install?
AI-flagged interpretation of the facts on this page — verify before relying
Python wrapper for the Heroku API V3 that lets you manage Heroku applications, addons, dynos, and account settings programmatically.
Yes, if you need to automate Heroku operations from Python and can tolerate infrequent updates. The package is stable, has no known vulnerabilities, and its two dependencies are lightweight and widely used. However, verify that the Heroku API V3 endpoints you need are still current and that the package's Python version support matches your environment, since classifiers only list up to Python 3.6 despite the package being marked Production/Stable.
Install
heroku3 on PyPI
pip
pip install heroku3uv
uv add heroku3poetry
poetry add heroku3Installing heroku3
Before you install
Low install friction with only two runtime dependencies (requests and python-dateutil). Maintenance status is aging—last release was 2023-04-17 and the last commit 2026-02-11, so updates are infrequent but the repository remains active and not archived.
License in practice
MIT license permits commercial and private use with minimal restrictions, making it safe for most projects.
Quickstart
pip install heroku3
import heroku3
heroku_conn = heroku3.from_key('YOUR_API_KEY')
apps = heroku_conn.apps()
app = heroku_conn.apps()['myapp']
config = app.config()
Requires a valid Heroku API key; Python 2.7 or 3.4+ based on classifiers, though current Python support is unspecified.
Verify before relying
- Whether the package actually supports modern Python versions (3.10+) despite classifiers only listing up to 3.6.
- Current state of Heroku API V3 compatibility and whether all endpoints remain functional.
- Whether legacy API fallback for rollbacks and other operations still works as documented.
Package facts
| License | MIT (permissive) |
| Python support | not specified |
| Install friction | low — pure-Python wheel |
| Runtime dependencies | 2 — requests, python-dateutil |
| Maintenance | aging — 1,215 days since the last release |
| Last repo commit | |
| First released | |
| Downloads | 153,653/month — #10,873 on PyPI (30-day window, as of 2026-08-14) |
| Known vulnerabilities | none known (OSV.dev, checked 2026-08-14) |
Evidence: heroku3-5.2.1-py2.py3-none-any.whl
Tags
More WWW/HTTP packages
urllib3 is an HTTP client library that provides…
permissive · top 100 on PyPI
requestsRequests is a Python HTTP library that…
permissive · top 100 on PyPI
h11h11 is a pure-Python HTTP/1.1 protocol…
permissive · top 100 on PyPI
httpxHTTPX is a fully featured HTTP client library…
permissive · top 100 on PyPI
httpcoreA minimal low-level HTTP client library that…
permissive · top 100 on PyPI
aiohttpaiohttp is an async HTTP client and server…
permissive · top 100 on PyPI
django-herokuConfigures Django applications for Heroku…
permissive · top 15,000 on PyPI
pydomoPython SDK for automating Domo instance…
permissive · top 15,000 on PyPI
setuptools-odooSetuptools-odoo automates packaging of Odoo…
copyleft · top 15,000 on PyPI
WooCommerceA Python wrapper for the WooCommerce REST API…
permissive · top 15,000 on PyPI
vonage-subaccountsProvides Python bindings to Vonage's Subaccount…
permissive · top 15,000 on PyPI
manifestoo-coreParses and reasons about Odoo addon manifests,…
permissive · top 15,000 on PyPI
whoolwhool is a PEP 517 and PEP 660 compliant build…
permissive · top 15,000 on PyPI
klaviyoA deprecated client library for integrating…
permissive · top 15,000 on PyPI
pytest-odoopytest-odoo is a pytest plugin that runs Odoo…
agpl · top 15,000 on PyPI
django-appconfProvides a base class for Django apps to define…
permissive · top 5,000 on PyPI