skillfed

aiosyncthing

Asynchronous Python client for the Syncthing REST API

aiosyncthing v0.7.1 74.0K downloads/30d#14,885 on PyPI10
Permissive license The MIT License AGING released

What it is and what it does

aiosyncthing is an async Python wrapper around the Syncthing REST API, built on aiohttp and yarl. It provides namespace-organized access to Syncthing's system endpoints (ping, status, version, pause/resume), config endpoints (folders, devices), database endpoints (folder status), and event endpoints (long-polling listener). The package is designed for integration into async Python applications that need to monitor or control Syncthing instances programmatically.

The library is in active development but not feature-complete—not all Syncthing API endpoints are implemented. It handles authentication via API key, supports custom base URLs and SSL verification settings, and manages connection timeouts and event reconnection internally. Errors are raised as typed exceptions (SyncthingError, PingError, UnknownDeviceError, UnknownFolderError) to allow granular error handling.

Use it for:

  • Monitor Syncthing server status and sync progress in real-time from a Python application
  • Pause or resume synchronization programmatically based on external conditions or schedules
  • Listen to Syncthing events (file changes, device connections) and trigger downstream workflows
  • Query folder and device configuration to build dashboards or automation tools
  • Integrate Syncthing management into larger async Python services or orchestration platforms

Worth the install?

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

Asynchronous Python client for the Syncthing REST API, providing async/await access to system, config, database, and event endpoints.

Yes, with conditions. Install if you need async Syncthing API access in a Python application and can tolerate incomplete API coverage. The low install friction, permissive MIT license, and recent maintenance activity make it a reasonable choice. However, the aging maintenance status (207 days since last release, 10 repository stars) and acknowledged incomplete feature set mean you should verify that the endpoints you need are implemented before committing to it.

Install

aiosyncthing on PyPI

pip

pip install aiosyncthing

uv

uv add aiosyncthing

poetry

poetry add aiosyncthing

Installing aiosyncthing

Before you install

Low install friction with only two lightweight runtime dependencies (aiohttp and yarl). Maintenance is aging—last release was 207 days ago and the repository shows minimal activity (10 stars), though it remains unarchived and the last commit is recent.

License in practice

MIT License (permissive) allows free use, modification, and distribution with minimal restrictions, making it suitable for both open-source and commercial projects.

Quickstart

pip install aiosyncthing

import asyncio
from aiosyncthing import Syncthing

async def main():
    async with Syncthing("API Key") as client:
        await client.system.ping()

asyncio.run(main())

Requires a running Syncthing instance with a valid API key; SSL verification can be disabled via verify_ssl parameter if needed.

Verify before relying

  • Extent of unimplemented API features beyond what the description excerpt documents
  • Performance characteristics under high-frequency event polling or large folder counts
  • Compatibility with Syncthing server versions beyond those tested during development

Package facts

License The MIT License (permissive)
Python support not specified
Install friction low — pure-Python wheel
Runtime dependencies 2 — aiohttp, yarl
Maintenance aging — 207 days since the last release
Last repo commit
First released
Downloads 74,044/month — #14,885 on PyPI (30-day window, as of 2026-08-14)
Known vulnerabilities none known (OSV.dev, checked 2026-08-14)

Evidence: aiosyncthing-0.7.1-py3-none-any.whl

Keywords: syncthing, sync, rest, backup, api, aio, async, await

Development Status :: 4 - BetaIntended Audience :: DevelopersLicense :: OSI Approved :: MIT LicenseNatural Language :: EnglishProgramming Language :: Python :: 3.10Programming Language :: Python :: 3.11Programming Language :: Python :: 3.12Programming Language :: Python :: 3.13Programming Language :: Python :: 3.14Programming Language :: Python :: 3.15Topic :: System :: Archiving :: Mirroring

Tags

syncthing async clientsyncthing rest api pythonasync file syncsyncthing events listeneraiohttp syncthing wrappersyncthing automation pythonasync syncthing integration
async-iorest-clientsyncthing

More Mirroring packages