--- id: py-synologydsm-api version: "2.10.4" license: MIT license_treatment: permissive maintenance: active --- # py-synologydsm-api — Python API for communication with Synology DSM License: permissive · Maintenance: active · Downloads: 80.7K/mo ## What it is and what it does py-synologydsm-api is an async Python client for Synology NAS devices running DSM. It wraps the Synology HTTP API to let you query system health, manage storage volumes, upload and download files, and control download tasks—all without blocking your event loop. The library handles authentication including two-step verification, caches data between updates, and exposes an object model for DSM subsystems like information, utilisation, storage, file station, and download station. You provide an aiohttp.ClientSession, instantiate SynologyDSM with your NAS IP and credentials, call login(), then call update() on the subsystem you need. The library is actively maintained, supports Python 3.11 through 3.14, and has no known vulnerabilities. It's most useful in automation scripts, home-automation integrations, or monitoring dashboards where you need non-blocking access to NAS state. Use it for: - Monitor Synology NAS CPU, memory, and network usage in real-time from a Python monitoring or alerting system. - Automate file uploads and downloads to a NAS from a Python application without blocking other async tasks. - Query storage volume status and disk health in a home-automation or infrastructure-management tool. - Manage download tasks on a Synology Download Station programmatically (create, pause, resume, delete). - Integrate NAS metrics and file operations into an async Python framework or monitoring dashboard. ## Worth the install? AI-flagged interpretation of the facts above — verify before relying. Asynchronous Python client library for communicating with Synology DSM devices over HTTP/HTTPS, providing access to system information, storage, file operations, and download station management. Yes. The package is actively maintained, has low install friction, carries a permissive MIT license, supports current Python versions (3.11 through 3.14), and has no known vulnerabilities. Install it if you need to interact with a Synology NAS from Python. The only caveat is that it requires an aiohttp session and async/await syntax; if you need synchronous access or don't have a Synology device, it's not applicable. ## Install pip install py-synologydsm-api uv add py-synologydsm-api poetry add py-synologydsm-api ## Installing py-synologydsm-api Before you install: Low friction installation with a pure Python wheel. Actively maintained with last commit on 2026-08-01. Requires Python 3.11 or later and three lightweight async dependencies: aiohttp, aiofiles, and awesomeversion. License in practice: MIT license permits commercial and private use with minimal restrictions—you may use, modify, and distribute the package freely provided you include the license notice. Quickstart: pip install py-synologydsm-api import asyncio import aiohttp from synology_dsm import SynologyDSM async def main(): async with aiohttp.ClientSession() as session: api = SynologyDSM(session, "", "", "user", "pass") await api.login() await api.information.update() print(api.information.model) Requires aiohttp.ClientSession to be created and passed to the constructor; all operations are async and must be awaited within an async context. Verify before relying: - Whether two-step authentication (2SA) support is fully documented and reliable in production use. - Performance characteristics when managing large numbers of files or concurrent operations. - Compatibility with specific Synology DSM versions beyond the general API coverage. ## Package facts - License: MIT (permissive) - Python support: supports_current - Install friction: low - Maintenance: active - Downloads: 80.7K/month (top 15,000 on PyPI) - Known vulnerabilities: none known ## Tags synology dsm api client, synology nas python async, synology disk station manager, nas management python library, synology file station api, synology download station control, nas-management, async-api-client, synology [View on SkillFed](https://skillfed.io/packages/py-synologydsm-api) · [View on PyPI](https://pypi.org/project/py-synologydsm-api/)