A significant amount of information has been compiled regarding the web APIs powering Synology's DiskStation Manager (DSM). An extensive, unofficial GitHub repository details over 750 methods across more than 110 API categories. This collection, which claims 100% coverage for ActiveBackup for Business with 215 methods, aims to provide comprehensive documentation for DSM core functions, file management, backup services, and various applications. The repository offers structured UDM-style documentation, complete with example API calls and JSON response formats, serving as a technical blueprint for interacting with Synology NAS devices programmatically.
The documented APIs span a wide array of functionalities, including:
Authentication and System Management: Handling logins, session management, retrieving system information, and managing users, groups, packages, shares, and certificates.
File and Data Operations: Detailed methods for FileStation (file management, uploads, downloads, sharing), DownloadStation (download tasks, RSS feeds, torrent searches), and Synology Drive (file collaboration, monitoring).
Application-Specific Control: Extensive coverage for applications like ActiveBackup for Business, Docker (container management), Photos (library organization), Surveillance Station (camera control, recording), AudioStation (music playback), VPN Server, Snapshot Replication, Virtual Machine Manager, and various System Services.
Automation and Integration: Tools for task scheduling, cloud synchronization (Google Drive, OneDrive, Dropbox, S3), and Directory Server (LDAP/AD management).
This unofficial documentation suggests a deep level of integration is possible, allowing for automation of file operations, backup tasks, download management, container orchestration, photo library organization, surveillance automation, music library control, VPN management, snapshot automation, virtual machine management, and system monitoring. It also details user and permission management, and integration with other systems. The project is presented under an MIT License, inviting contributions.
Read More: New LLMs Can Now Write Math Proofs Better
The existence and extent of these documented APIs highlight the underlying architecture of DSM, where everyday interactions through the web interface are mediated by these services. An article published on May 20, 2024, discusses this, noting that users might not realize they are constantly interacting with web APIs when using DSM. The piece outlines a typical API interaction flow:
Discovering API Information: Finding details about the desired API.
Authentication: Logging in to obtain a session ID.
Service Call: Executing the API method with correct parameters.
Logout: Terminating the session.
An example provided shows how to call the get_info method for the SYNO.MariaDB10.lib service and subsequently log out. This article also points to Synology's official website for further API documentation in PDF format, mentioning APIs for File Station, Virtual Machine Manager, Calendar, and Surveillance, and suggesting their utility for controlling NAS services directly, for instance, from a PHP page.