skillfed

aionotion

A simple Python 3 library for Notion Home Monitoring

aionotion v2025.2.0 74.6K downloads/30d#14,811 on PyPI
Permissive license MIT DORMANT released

What it is and what it does

aionotion wraps the Notion home monitoring API in an asyncio-friendly Python interface. It lets you authenticate with Notion credentials or a refresh token, then query your account's systems (households), bridges, sensors, and listener definitions asynchronously. The library handles token refresh automatically and supports connection pooling via aiohttp ClientSession for efficient bulk operations.

The package is built on aiohttp, PyJWT, mashumaro, and ciso8601, providing async/await syntax throughout. It's designed for Python 3.11+ and supports both CPython and PyPy. Common workflows include fetching all sensors, retrieving a specific sensor by ID, querying listener definitions, and managing refresh token callbacks for persistent authentication.

Use it for:

  • Fetch all home sensors and their current state in an async application monitoring a Notion-equipped home.
  • Build a dashboard that polls Notion systems and bridges periodically without blocking other async tasks.
  • Integrate Notion sensor data into a home automation framework that requires async/await patterns.
  • Persist refresh tokens and re-authenticate using stored credentials across application restarts.
  • Query listener definitions to understand what conditions Notion sensors can monitor.

Worth the install?

AI-flagged interpretation of the facts on this page — verify before relying

aionotion is an asyncio-friendly Python library for interacting with Notion home monitoring sensors, providing async methods to query systems, bridges, sensors, and listener definitions.

Yes, with caution about maintenance. The package is well-designed for asyncio workflows and has no known vulnerabilities, but dormancy (556 days since last release) and lack of visible repository activity raise questions about whether it will track future Notion API changes. Install if you need async Notion sensor integration now and can tolerate potential staleness; monitor the repository for signs of abandonment.

Install

aionotion on PyPI

pip

pip install aionotion

uv

uv add aionotion

poetry

poetry add aionotion

Installing aionotion

Before you install

Low install friction with a pure-Python wheel. Maintenance is dormant (556 days since last release), though the package was released recently (2025-02-04) and supports current Python versions (3.11–3.13).

License in practice

Licensed under MIT, a permissive license that allows use, modification, and distribution with minimal restrictions.

Quickstart

pip install aionotion

import asyncio
from aiohttp import ClientSession
from aionotion import async_get_client_with_credentials

async def main():
    async with ClientSession() as session:
        client = await async_get_client_with_credentials(
            username, password, session=session
        )
        sensors = await client.sensor.async_all()

asyncio.run(main())

Requires Python 3.11 or later; aiohttp ClientSession must be created and passed to the client factory.

Verify before relying

  • Whether the 556-day dormancy period indicates the package is actively maintained or abandoned despite the recent 2025-02-04 release.
  • Whether Notion's home monitoring API remains stable and whether this library continues to work with current Notion service changes.

Package facts

License MIT (permissive)
Python support supports the current Python release (<3.14,>=3.11)
Install friction low — pure-Python wheel
Runtime dependencies 7 — PyJWT, aiohttp, certifi, ciso8601, frozenlist, mashumaro, yarl
Maintenance dormant — 556 days since the last release
First released
Downloads 74,601/month — #14,811 on PyPI (30-day window, as of 2026-08-14)
Known vulnerabilities none known (OSV.dev, checked 2026-08-14)

Evidence: aionotion-2025.2.0-py3-none-any.whl

License :: OSI Approved :: Apache Software LicenseProgramming Language :: PythonProgramming Language :: Python :: 3Programming Language :: Python :: 3.11Programming Language :: Python :: 3.12Programming Language :: Python :: 3.13Programming Language :: Python :: Implementation :: CPythonProgramming Language :: Python :: Implementation :: PyPy

Tags

notion home monitoring apiasyncio notion sensor clientnotion api python asynchome automation notion integrationnotion bridge sensor library
asynciohome-monitoringnotion-api

More Monitoring packages