pydiscovergy
Async Python 3 library for interacting with Discovergy smart meters API
What it is and what it does
pydiscovergy is an async Python library that wraps the Discovergy (now Inexogy) smart meter API, allowing you to authenticate and retrieve meter data programmatically. It handles HTTP communication via httpx, serialization with mashumaro and orjson, and OAuth-style authentication via authlib. The library is built for modern Python (3.11+) and uses asyncio throughout, making it suitable for integration into async applications that need to poll smart meter readings.
You provide email and password credentials, then call methods like meters() to list available devices and meter_last_reading() to fetch the most recent energy consumption data. The package is actively maintained, has no known security vulnerabilities, and carries a permissive MIT license, making it straightforward to adopt in both open-source and commercial projects.
Use it for:
- Fetch smart meter readings from Discovergy/Inexogy in a home automation or energy monitoring dashboard.
- Poll multiple meters asynchronously and aggregate consumption data for billing or analytics.
- Integrate Discovergy meter data into a Python async web service or IoT platform.
- Build a local energy management system that tracks real-time or historical meter readings.
- Automate meter data collection for reporting or compliance purposes.
Worth the install?
AI-flagged interpretation of the facts on this page — verify before relying
Asynchronous Python client for querying Discovergy (now Inexogy) smart meter data via their API, handling authentication and meter readings.
Yes. The package is actively maintained, has low install friction, carries a permissive MIT license, and is free of known vulnerabilities. Install it if you need to query Discovergy/Inexogy smart meters from Python. The only caveat is that the last release was 555 days ago—verify that the Inexogy API has not changed significantly before deploying to production.
Install
pydiscovergy on PyPI
pip
pip install pydiscovergyuv
uv add pydiscovergypoetry
poetry add pydiscovergyInstalling pydiscovergy
Before you install
Low friction: pure Python wheel with four lightweight runtime dependencies (authlib, httpx, masumaro, orjson). Actively maintained with recent commits and stable release cadence; requires Python 3.11+.
License in practice
MIT license (permissive): you may use, modify, and distribute this package freely, including in proprietary projects, provided you retain the copyright notice and license text.
Quickstart
pip install pydiscovergy
import asyncio
from pydiscovergy import Discovergy
async def main():
discovergy = Discovergy(email="user@example.com", password="pass")
meters = await discovergy.meters()
reading = await discovergy.meter_last_reading(meter_id=meters[0].meter_id)
print(reading.values)
asyncio.run(main())
Requires Python 3.11 or later; Discovergy/Inexogy API credentials (email and password) needed to authenticate.
Verify before relying
- Whether the package works with current Inexogy API endpoints or if the service has changed since last release (555 days ago).
- Rate limiting or request throttling behavior when fetching multiple meters or readings in quick succession.
Package facts
| License | MIT (permissive) |
| Python support | supports the current Python release (<4.0,>=3.11) |
| Install friction | low — pure-Python wheel |
| Runtime dependencies | 4 — authlib, httpx, mashumaro, orjson |
| Maintenance | actively maintained — 555 days since the last release |
| Last repo commit | |
| First released | |
| Downloads | 75,005/month — #14,757 on PyPI (30-day window, as of 2026-08-14) |
| Known vulnerabilities | none known (OSV.dev, checked 2026-08-14) |
Evidence: pydiscovergy-3.1.0-py3-none-any.whl
Keywords: discovergy, smart meter, smart home
Tags
More Python Modules packages
Converts domain names between Unicode and…
permissive · top 100 on PyPI
setuptoolsSetuptools is a Python build backend and…
permissive · top 100 on PyPI
PyYAMLPyYAML parses and emits YAML 1.1 data format,…
permissive · top 100 on PyPI
pydanticPydantic validates Python data structures…
permissive · top 100 on PyPI
annotated-typesProvides reusable metadata objects for use with…
permissive · top 100 on PyPI
typing-inspectionProvides runtime tools to inspect and…
permissive · top 100 on PyPI
openmeterOpenMeter Python SDK provides a client library…
permissive · top 15,000 on PyPI
pysmartthingsAsynchronous Python client for fetching data…
permissive · top 15,000 on PyPI
p1monitorAsynchronous Python client library for reading…
permissive · top 15,000 on PyPI
ovoenergyA Python client library for querying energy…
permissive · top 15,000 on PyPI
dlms-cosemA Python library for implementing DLMS/COSEM…
permissive · top 15,000 on PyPI
pysmlReads and parses Smart Message Language (SML)…
permissive · top 15,000 on PyPI
aiowithingsAsynchronous Python client for fetching data…
permissive · top 15,000 on PyPI
python-homewizard-energyAsyncio client library for communicating with…
permissive · top 15,000 on PyPI
dsmr-parserParses Dutch Smart Meter Requirements (DSMR)…
permissive · top 15,000 on PyPI
pecoA Python library for querying the PECO outage…
permissive · top 15,000 on PyPI