en un clic
synology-api
// Synology Download Station Web API reference covering API discovery, authentication, request format, common errors, and Download Station task operations.
// Synology Download Station Web API reference covering API discovery, authentication, request format, common errors, and Download Station task operations.
rTorrent XML-RPC command reference focused on remote control, multicall patterns, load methods, and the torrent commands used by Electorrent.
Deluge Web JSON-RPC and core RPC reference covering session login, web methods, and commonly used core torrent operations.
qBittorrent WebUI API reference covering authentication, sync, transfer, torrent, RSS, and search endpoints for qBittorrent 5.0+.
Write code edits quickly without performing testing or validation
Transmission RPC reference covering JSON-RPC 2.0 transport, session token handling, torrent methods, session methods, and protocol versioning.
Safe Electron IPC patterns for renderer-main communication with preload bridges, channel design, replies, and serialization limits.
| name | synology-api |
| description | Synology Download Station Web API reference covering API discovery, authentication, request format, common errors, and Download Station task operations. |
Use this skill when you need to integrate with Synology DSM Download Station through its Web API.
All requests use /webapi/<CGI_PATH> with these core query parameters:
api=<API_NAME>version=<VERSION>method=<METHOD>_sid=<SID> or cookieGeneral form:
GET /webapi/<CGI_PATH>?api=<API_NAME>&version=<VERSION>&method=<METHOD>[&<PARAMS>][&_sid=<SID>]
All responses are JSON objects with:
success: true or falsedata: method result on successerror: integer error code on failure| Code | Meaning |
|---|---|
| 100 | Unknown error |
| 101 | Invalid parameter |
| 102 | Requested API does not exist |
| 103 | Requested method does not exist |
| 104 | Requested version does not support the functionality |
| 105 | Logged-in session does not have permission |
| 106 | Session timeout |
| 107 | Session interrupted by duplicate login |
Start with SYNO.API.Info.
/webapi/query.cgi/webapi/query.cgi?api=SYNO.API.Info&version=1&method=query&query=ALL
Electorrent specifically needs:
SYNO.API.AuthSYNO.DownloadStation.TaskSYNO.API.AuthSYNO.API.Info (commonly auth.cgi)/webapi/auth.cgi?api=SYNO.API.Auth&version=2&method=login&account=<user>&passwd=<pass>&session=DownloadStation&format=cookie
Important params:
accountpasswdsession=DownloadStationformat=cookie or format=sidotp_codeLogout:
/webapi/auth.cgi?api=SYNO.API.Auth&version=1&method=logout&session=DownloadStation
Auth-specific error codes:
| Code | Meaning |
|---|---|
| 400 | No such account or incorrect password |
| 401 | Account disabled |
| 402 | Permission denied |
| 403 | 2-step verification code required |
| 404 | Failed to authenticate 2-step verification code |
| API | Purpose |
|---|---|
SYNO.DownloadStation.Info | Package info and settings |
SYNO.DownloadStation.Schedule | Schedule settings |
SYNO.DownloadStation.Task | List tasks and perform task actions |
SYNO.DownloadStation.Statistic | Total download/upload stats |
SYNO.DownloadStation.RSS.Site | RSS site list/refresh |
SYNO.DownloadStation.RSS.Feed | RSS feed list |
SYNO.DownloadStation.BTSearch | BT search operations |
SYNO.DownloadStation.TasklistRequest params:
offset optional, default 0limit optional, default -1additional optional comma-separated expansions:
detailtransferfiletrackerpeerExample:
/webapi/DownloadStation/task.cgi?api=SYNO.DownloadStation.Task&version=1&method=list&additional=detail,file
Returns:
totaloffsettasks[]Task objects include fields such as:
idtypeusernametitlesizestatusstatus_extraadditional.detail, additional.transfer, additional.file, additional.tracker, additional.peergetinfoParams:
id=dbid_001,dbid_002additional=detail,transfer,file,tracker,peerReturns tasks[].
createUsed to add downloads.
Params:
uri optional: HTTP / FTP / magnet / ED2K links, or shared-folder file pathsfile optional: uploaded torrent/NZB payloadusername optionalpassword optionalunzip_password optionaldestination optional shared-folder-relative destinationThis is typically a POST for uploads.
deleteParams:
idforce_completeReturns per-task result objects containing:
iderror (0 means success)pauseParams:
idReturns per-task result objects with id and error.
resumeParams:
idReturns per-task result objects with id and error.
editCommonly used to change destination.
Params:
iddestinationReturns per-task result objects with id and error.
Useful task-specific codes:
| Code | Meaning |
|---|---|
| 400 | File upload failed |
| 401 | Max number of tasks reached |
| 402 | Destination denied |
| 403 | Destination does not exist |
| 404 | Invalid task id |
| 405 | Invalid task action |
| 406 | No default destination |
| 407 | Set destination failed |
| 408 | File does not exist |
Electorrent uses:
SYNO.API.Info query for API discoverySYNO.API.Auth loginSYNO.DownloadStation.Task.listSYNO.DownloadStation.Task.create for URL and file uploadsSYNO.DownloadStation.Task.pauseSYNO.DownloadStation.Task.resumeSYNO.DownloadStation.Task.delete