skillfed

aioautomower

MPython module to talk to Husqvarna Automower.

aioautomower v2.8.0 77.8K downloads/30d#14,491 on PyPI10
Permissive license MIT Active released

What it is and what it does

Aioautomower is an async Python client for the Husqvarna Automower Connect API, designed to let developers integrate Automower devices into Python applications. It wraps the HTTP API with async/await patterns, handling authentication token management through a pluggable AbstractAuth interface that you implement to supply credentials and manage refreshes. The library uses aiohttp for HTTP, mashumaro for serialization, orjson for JSON, pyjwt for token handling, and standard date/time libraries.

You register on the Husqvarna Developers Portal, connect your account to both the Authentication API and Automower Connect API, then implement AbstractAuth to provide access tokens. Once authenticated, you invoke the service to query mower state, schedule operations, or trigger actions. The library targets Python 3.11+ and is actively maintained; it ships as a wheel with low install friction.

Use it for:

  • Build a home automation dashboard that queries Automower status and battery level via async calls.
  • Integrate Automower scheduling into a smart-home system that coordinates with other devices.
  • Create a monitoring bot that alerts when a mower encounters errors or requires maintenance.
  • Develop a mobile app backend that exposes Automower control through a REST or GraphQL layer.
  • Automate mower operations based on weather data or calendar events in a larger orchestration workflow.

Worth the install?

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

Asynchronous Python client library for communicating with the Husqvarna Automower Connect API, enabling programmatic control and monitoring of Automower devices.

Yes, if you own a Husqvarna Automower and need to integrate it into a Python application. The library is actively maintained, uses permissive MIT licensing, has low install friction, and targets modern Python versions (3.11+). The main prerequisite is obtaining Husqvarna API credentials; once done, the async design and standard dependencies make it straightforward to use. No known security vulnerabilities as of 2026-08-14.

Install

aioautomower on PyPI

pip

pip install aioautomower

uv

uv add aioautomower

poetry

poetry add aioautomower

Installing aioautomower

Before you install

Low friction install with a wheel distribution. Active maintenance as of 2026-08-14 with recent release. Requires Python 3.11 or later and depends on common async libraries (aiohttp, mashumaro, orjson) plus JWT and calendar handling.

License in practice

MIT license permits commercial and private use with minimal restrictions—you may use, modify, and distribute the package freely provided you retain the license notice.

Quickstart

pip install aioautomower

import aioautomower
from aioautomower import AbstractAuth

# Implement AbstractAuth with your Husqvarna credentials
# Create an async session and call the API via the library

Requires Python 3.11 or later. You must register on the Husqvarna Developers Portal and obtain client_id and client_secret from the Authentication API and Automower Connect API.

Verify before relying

  • Whether the library supports all current Automower models and API endpoints available in the Connect API.
  • Performance characteristics and rate-limiting behavior when managing multiple mowers concurrently.
  • Stability and breaking-change history across the 2021–2026 release timeline.

Package facts

License MIT (permissive)
Python support supports the current Python release (>=3.11)
Install friction low — pure-Python wheel
Runtime dependencies 7 — aiohttp, ical, mashumaro, orjson, pyjwt, python-dateutil, tzlocal
Maintenance actively maintained — 0 days since the last release
Last repo commit
First released
Downloads 77,818/month — #14,491 on PyPI (30-day window, as of 2026-08-14)
Known vulnerabilities none known (OSV.dev, checked 2026-08-14)

Evidence: aioautomower-2.8.0-py3-none-any.whl

Keywords: Automower, Husqvarna, api, async, client

Development Status :: 5 - Production/StableFramework :: AsyncIOIntended Audience :: DevelopersNatural Language :: EnglishProgramming Language :: Python :: 3Programming Language :: Python :: 3.11Programming Language :: Python :: 3.12Programming Language :: Python :: 3.13Programming Language :: Python :: 3.14Topic :: Software Development :: Libraries :: Python Modules

Tags

husqvarna automower api clientasync automower controlautomower connect libraryhusqvarna mower automationasyncio automower integration
automowerhusqvarna-apiasyncio

More Python Modules packages