# Aioautomower
[](https://codecov.io/gh/Thomas55555/aioautomower)
[](https://pypi.org/project/aioautomower/)
[](LICENSE.md)
Asynchronous library to communicate with the Automower Connect API
To use this library, you need to register on the [Husqvarna Developers Portal](https://developer.husqvarnagroup.cloud/).
And connect your account to the `Authentication API` and the `Automower Connect API`.
## Quickstart
In order to use the library, you'll need to do some work yourself to get authentication
credentials. This depends a lot on the context (e.g. redirecting to use OAuth via web)
but should be easy to incorporate using Husqvarna's authentication examples. See
Husqvarna's [Authentication API](https://developer.husqvarnagroup.cloud/apis/authentication-api) for details.
You will implement `AbstractAuth` to provide an access token. Your implementation
will handle any necessary refreshes. You can invoke the service with your auth implementation
to access the API.
You need at least:
- Python 3.11+
- [Poetry][poetry-install]
For a first start you can run the `example.py`, by doing the following steps
- `git clone https://github.com/Thomas55555/aioautomower.git`
- `cd aioautomower`
- `poetry install`
- Enter your personal `client_id` and `client_secret` in the `_secrets.yaml` and rename it to `secrets.yaml`
- Run with `poetry run ./example.py`
## Contributing
This is an active open-source project. We are always open to people who want to use the code or contribute to it.
This Python project is fully managed using the [Poetry][poetry] dependency manager.
As this repository uses the [pre-commit][pre-commit] framework, all changes
are linted and tested with each commit. You can run all checks and tests
manually, using the following command:
```bash
poetry run pre-commit run --all-files
```
To run just the Python tests:
```bash
poetry run pytest
```
To update snapshots:
```bash
poetry run pytest --snapshot-update
```
[poetry-install]: https://python-poetry.org/docs/#installation
[poetry]: https://python-poetry.org
[pre-commit]: https://pre-commit.com/
# Buying Equipment
Many mowers are available from your local garden dealer or major online retailers. Another like, the compact ideal for small and flat lawns, is available on Amazon.
The links provided below are affiliate links, so if you prefer shopping on Amazon and decide to purchase something there, you’ll also be supporting me at no additional cost to you.
Alternatively, if you'd like to support the project directly, consider contributing through [GitHub sponsors](https://github.com/sponsors/Thomas55555).
Here are some affiliate links to support my work:
- [Automower R4 Aspire](https://amzn.to/3Z987Oc)
- [Endurence blades](https://amzn.to/3OyK1YD)
- [Regular blades](https://amzn.to/3ZCn8Zt)
- [Cabel connector](https://amzn.to/4f3OtJn)
Raw data
{
"_id": null,
"home_page": null,
"name": "aioautomower",
"maintainer": null,
"docs_url": null,
"requires_python": "<4.0,>=3.11",
"maintainer_email": null,
"keywords": "Husqvarna, Automower, api, async, client",
"author": "Thomas Peter Protzner",
"author_email": "thomas.protzner@gmail.com",
"download_url": "https://files.pythonhosted.org/packages/06/2f/708695aee97320082af9c0619fb7ada8c94d226db7dbd1ca26efea3aebd4/aioautomower-2.5.0.tar.gz",
"platform": null,
"description": "# Aioautomower\n\n[](https://codecov.io/gh/Thomas55555/aioautomower)\n[](https://pypi.org/project/aioautomower/)\n[](LICENSE.md)\n\nAsynchronous library to communicate with the Automower Connect API\nTo use this library, you need to register on the [Husqvarna Developers Portal](https://developer.husqvarnagroup.cloud/).\nAnd connect your account to the `Authentication API` and the `Automower Connect API`.\n\n## Quickstart\n\nIn order to use the library, you'll need to do some work yourself to get authentication\ncredentials. This depends a lot on the context (e.g. redirecting to use OAuth via web)\nbut should be easy to incorporate using Husqvarna's authentication examples. See\nHusqvarna's [Authentication API](https://developer.husqvarnagroup.cloud/apis/authentication-api) for details.\n\nYou will implement `AbstractAuth` to provide an access token. Your implementation\nwill handle any necessary refreshes. You can invoke the service with your auth implementation\nto access the API.\n\nYou need at least:\n\n- Python 3.11+\n- [Poetry][poetry-install]\n\nFor a first start you can run the `example.py`, by doing the following steps\n\n- `git clone https://github.com/Thomas55555/aioautomower.git`\n- `cd aioautomower`\n- `poetry install`\n- Enter your personal `client_id` and `client_secret` in the `_secrets.yaml` and rename it to `secrets.yaml`\n- Run with `poetry run ./example.py`\n\n## Contributing\n\nThis is an active open-source project. We are always open to people who want to use the code or contribute to it.\nThis Python project is fully managed using the [Poetry][poetry] dependency manager.\n\nAs this repository uses the [pre-commit][pre-commit] framework, all changes\nare linted and tested with each commit. You can run all checks and tests\nmanually, using the following command:\n\n```bash\npoetry run pre-commit run --all-files\n```\n\nTo run just the Python tests:\n\n```bash\npoetry run pytest\n```\n\nTo update snapshots:\n\n```bash\npoetry run pytest --snapshot-update\n```\n\n[poetry-install]: https://python-poetry.org/docs/#installation\n[poetry]: https://python-poetry.org\n[pre-commit]: https://pre-commit.com/\n\n\n# Buying Equipment\n\nMany mowers are available from your local garden dealer or major online retailers. Another like, the compact ideal for small and flat lawns, is available on Amazon.\nThe links provided below are affiliate links, so if you prefer shopping on Amazon and decide to purchase something there, you\u2019ll also be supporting me at no additional cost to you.\nAlternatively, if you'd like to support the project directly, consider contributing through [GitHub sponsors](https://github.com/sponsors/Thomas55555).\nHere are some affiliate links to support my work:\n- [Automower R4 Aspire](https://amzn.to/3Z987Oc)\n- [Endurence blades](https://amzn.to/3OyK1YD)\n- [Regular blades](https://amzn.to/3ZCn8Zt)\n- [Cabel connector](https://amzn.to/4f3OtJn)\n\n",
"bugtrack_url": null,
"license": "MIT",
"summary": "MPython module to talk to Husqvarna Automower.",
"version": "2.5.0",
"project_urls": {
"Documentation": "https://github.com/Thomas55555/aioautomower",
"Homepage": "https://github.com/Thomas55555/aioautomower",
"Issues": "https://github.com/Thomas55555/aioautomower/issues",
"Repository": "https://github.com/Thomas55555/aioautomower"
},
"split_keywords": [
"husqvarna",
" automower",
" api",
" async",
" client"
],
"urls": [
{
"comment_text": null,
"digests": {
"blake2b_256": "89d9bcdc85ce61ee47afec854da0c7c7240c8001844ef70c367b4e0995a4f4b0",
"md5": "0f162a4917f59979f541e25b03edbf72",
"sha256": "2d3ee4122788b74de2f7a005dea7f47903c13248d68da64edcc8300d760eb783"
},
"downloads": -1,
"filename": "aioautomower-2.5.0-py3-none-any.whl",
"has_sig": false,
"md5_digest": "0f162a4917f59979f541e25b03edbf72",
"packagetype": "bdist_wheel",
"python_version": "py3",
"requires_python": "<4.0,>=3.11",
"size": 36593,
"upload_time": "2025-10-20T19:42:47",
"upload_time_iso_8601": "2025-10-20T19:42:47.028637Z",
"url": "https://files.pythonhosted.org/packages/89/d9/bcdc85ce61ee47afec854da0c7c7240c8001844ef70c367b4e0995a4f4b0/aioautomower-2.5.0-py3-none-any.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": null,
"digests": {
"blake2b_256": "062f708695aee97320082af9c0619fb7ada8c94d226db7dbd1ca26efea3aebd4",
"md5": "fdf6d8f191457eda0d990d8a108120fb",
"sha256": "8292cb202b01e2e658a4b83d3044cfb7ed37bfd8c362dc688888da933a742db8"
},
"downloads": -1,
"filename": "aioautomower-2.5.0.tar.gz",
"has_sig": false,
"md5_digest": "fdf6d8f191457eda0d990d8a108120fb",
"packagetype": "sdist",
"python_version": "source",
"requires_python": "<4.0,>=3.11",
"size": 31018,
"upload_time": "2025-10-20T19:42:49",
"upload_time_iso_8601": "2025-10-20T19:42:49.332306Z",
"url": "https://files.pythonhosted.org/packages/06/2f/708695aee97320082af9c0619fb7ada8c94d226db7dbd1ca26efea3aebd4/aioautomower-2.5.0.tar.gz",
"yanked": false,
"yanked_reason": null
}
],
"upload_time": "2025-10-20 19:42:49",
"github": true,
"gitlab": false,
"bitbucket": false,
"codeberg": false,
"github_user": "Thomas55555",
"github_project": "aioautomower",
"travis_ci": false,
"coveralls": true,
"github_actions": true,
"lcname": "aioautomower"
}