This site uses cookies! Learn More

Ce site utilise des cookies !

En continuant à utiliser ce site, vous vous engagez à nous permettre de stocker des cookies sur votre ordinateur.

 

Si nous utilisons des cookies et retenons des données anonymes, c’est pour nous aider à mieux gérer notre mesure d’audience, aider nos partenaires commerciaux à nous rémunérer et nos partenaires publicitaires à proposer des annonces qui vous correspondent.

 

Grâce à ces cookies, le forum est en mesure de savoir qui écrit un message et utile pour le système d'authentification.

 

En cliquant sur « J'accepte », vous acceptez l'utilisation par NAS-Forum de cookies publicitaires et de mesure d'audience fine.

Terrano

[Script] Web Api Synology

Messages recommandés

J'ai vu très peu de sujet sur ce forum concernant l'utilisation des web api de nos chers NAS.

Synology propose, comme par exemple pour Surveillance Station, des documents :

https://global.download.synology.com/download/Document/DeveloperGuide/Surveillance_Station_Web_API.pdf

On peut alors très facilement contrôler toutes les fonctions natives du NAS.

Je vais vous expliquer comment trouver toutes ces fonctions et comment les utiliser.

Tout d'abord, la documentation n'étant pas à jour avec Surveillance Station 7, comment trouver les informations sur ces API à jour ?

  • Lister les API Synology :

Ce script va vous aider à lister les API existantes, et elles sont très nombreuses :

<?php
    $server = "https://dsm.solar-crisis.fr";
    
    $json = file_get_contents($server.'/webapi/query.cgi?api=SYNO.API.Info&method=Query&version=1&query=SYNO.');
    
    header('Content-Type: application/json');
    echo $json;
?>

Le résultat est assez conséquent !!! De quoi trouver son bonheur.

{
    "data": {
        "SYNO.ACEEditor": {
            "maxVersion": 1,
            "minVersion": 1,
            "path": "entry.cgi",
            "requestFormat": "JSON"
        },
        "SYNO.ACEEditor.Preference": {
            "maxVersion": 1,
            "minVersion": 1,
            "path": "entry.cgi",
            "requestFormat": "JSON"
        },
        "SYNO.API.Auth": {
            "maxVersion": 3,
            "minVersion": 1,
            "path": "auth.cgi"
        },
        "SYNO.API.Encryption": {
            "maxVersion": 1,
            "minVersion": 1,
            "path": "encryption.cgi"
        },
        "SYNO.API.Info": {
            "maxVersion": 1,
            "minVersion": 1,
            "path": "query.cgi"
        },
        "SYNO.AudioPlayer.Stream": {
            "maxVersion": 1,
            "minVersion": 1,
            "path": "AudioPlayer/stream.cgi"
        },
        "SYNO.AudioStation.Album": {
            "maxVersion": 2,
            "minVersion": 1,
            "path": "AudioStation/album.cgi"
        },
        "SYNO.AudioStation.Artist": {
            "maxVersion": 2,
            "minVersion": 1,
            "path": "AudioStation/artist.cgi"
        },
        "SYNO.AudioStation.Composer": {
            "maxVersion": 2,
            "minVersion": 1,
            "path": "AudioStation/composer.cgi"
        },
        "SYNO.AudioStation.Cover": {
            "maxVersion": 2,
            "minVersion": 1,
            "path": "AudioStation/cover.cgi"
        },
        "SYNO.AudioStation.Download": {
            "maxVersion": 1,
            "minVersion": 1,
            "path": "AudioStation/download.cgi"
        },
        "SYNO.AudioStation.Folder": {
            "maxVersion": 2,
            "minVersion": 1,
            "path": "AudioStation/folder.cgi"
        },
        "SYNO.AudioStation.Genre": {
            "maxVersion": 2,
            "minVersion": 1,
            "path": "AudioStation/genre.cgi"
        },
        "SYNO.AudioStation.Info": {
            "maxVersion": 3,
            "minVersion": 1,
            "path": "AudioStation/info.cgi"
        },
        "SYNO.AudioStation.Lyrics": {
            "maxVersion": 2,
            "minVersion": 1,
            "path": "AudioStation/lyrics.cgi"
        },
        "SYNO.AudioStation.LyricsSearch": {
            "maxVersion": 2,
            "minVersion": 1,
            "path": "AudioStation/lyrics_search.cgi"
        },
        "SYNO.AudioStation.MediaServer": {
            "maxVersion": 1,
            "minVersion": 1,
            "path": "AudioStation/media_server.cgi"
        },
        "SYNO.AudioStation.Playlist": {
            "maxVersion": 2,
            "minVersion": 1,
            "path": "AudioStation/playlist.cgi"
        },
        "SYNO.AudioStation.Proxy": {
            "maxVersion": 1,
            "minVersion": 1,
            "path": "AudioStation/proxy.cgi"
        },
        "SYNO.AudioStation.Radio": {
            "maxVersion": 2,
            "minVersion": 1,
            "path": "AudioStation/radio.cgi"
        },
        "SYNO.AudioStation.RemotePlayer": {
            "maxVersion": 2,
            "minVersion": 1,
            "path": "AudioStation/remote_player.cgi"
        },
        "SYNO.AudioStation.RemotePlayerStatus": {
            "maxVersion": 1,
            "minVersion": 1,
            "path": "AudioStation/remote_player_status.cgi"
        },
        "SYNO.AudioStation.Search": {
            "maxVersion": 1,
            "minVersion": 1,
            "path": "AudioStation/search.cgi"
        },
        "SYNO.AudioStation.Song": {
            "maxVersion": 2,
            "minVersion": 1,
            "path": "AudioStation/song.cgi"
        },
        "SYNO.AudioStation.Stream": {
            "maxVersion": 2,
            "minVersion": 1,
            "path": "AudioStation/stream.cgi"
        },
        "SYNO.AudioStation.WebPlayer": {
            "maxVersion": 1,
            "minVersion": 1,
            "path": "AudioStation/web_player.cgi"
        },
        "SYNO.Backup.App": {
            "maxVersion": 2,
            "minVersion": 1,
            "path": "entry.cgi",
            "requestFormat": "JSON"
        },
        "SYNO.Backup.App.Backup": {
            "maxVersion": 2,
            "minVersion": 1,
            "path": "entry.cgi",
            "requestFormat": "JSON"
        },
        "SYNO.Backup.App.Restore": {
            "maxVersion": 2,
            "minVersion": 1,
            "path": "entry.cgi",
            "requestFormat": "JSON"
        },
        "SYNO.Backup.Config.Backup": {
            "maxVersion": 2,
            "minVersion": 1,
            "path": "entry.cgi",
            "requestFormat": "JSON"
        },
        "SYNO.Backup.Config.Restore": {
            "maxVersion": 2,
            "minVersion": 1,
            "path": "entry.cgi",
            "requestFormat": "JSON"
        },
        "SYNO.Backup.Log": {
            "maxVersion": 2,
            "minVersion": 1,
            "path": "entry.cgi",
            "requestFormat": "JSON"
        },
        "SYNO.Backup.Repository": {
            "maxVersion": 2,
            "minVersion": 1,
            "path": "entry.cgi",
            "requestFormat": "JSON"
        },
        "SYNO.Backup.Repository.PrivilegedUser": {
            "maxVersion": 2,
            "minVersion": 1,
            "path": "entry.cgi",
            "requestFormat": "JSON"
        },
        "SYNO.Backup.Restore": {
            "maxVersion": 2,
            "minVersion": 1,
            "path": "entry.cgi",
            "requestFormat": "JSON"
        },
        "SYNO.Backup.Server": {
            "maxVersion": 2,
            "minVersion": 1,
            "path": "entry.cgi",
            "requestFormat": "JSON"
        },
        "SYNO.Backup.Service.NetworkBackup": {
            "maxVersion": 2,
            "minVersion": 1,
            "path": "entry.cgi",
            "requestFormat": "JSON"
        },
        "SYNO.Backup.Service.TimeBackup": {
            "maxVersion": 2,
            "minVersion": 1,
            "path": "entry.cgi",
            "requestFormat": "JSON"
        },
        "SYNO.Backup.Service.VersionBackup": {
            "maxVersion": 2,
            "minVersion": 1,
            "path": "entry.cgi",
            "requestFormat": "JSON"
        },
        "SYNO.Backup.Share.Restore": {
            "maxVersion": 2,
            "minVersion": 1,
            "path": "entry.cgi",
            "requestFormat": "JSON"
        },
        "SYNO.Backup.Source.Folder": {
            "maxVersion": 2,
            "minVersion": 1,
            "path": "entry.cgi",
            "requestFormat": "JSON"
        },
        "SYNO.Backup.Storage.Connect.Network": {
            "maxVersion": 2,
            "minVersion": 1,
            "path": "entry.cgi",
            "requestFormat": "JSON"
        },
        "SYNO.Backup.Storage.S3.Bucket": {
            "maxVersion": 2,
            "minVersion": 1,
            "path": "entry.cgi",
            "requestFormat": "JSON"
        },
        "SYNO.Backup.Storage.S3.Region": {
            "maxVersion": 2,
            "minVersion": 1,
            "path": "entry.cgi",
            "requestFormat": "JSON"
        },
        "SYNO.Backup.Storage.Share.Local": {
            "maxVersion": 2,
            "minVersion": 1,
            "path": "entry.cgi",
            "requestFormat": "JSON"
        },
        "SYNO.Backup.Storage.Volume.Local": {
            "maxVersion": 2,
            "minVersion": 1,
            "path": "entry.cgi",
            "requestFormat": "JSON"
        },
        "SYNO.Backup.Target": {
            "maxVersion": 2,
            "minVersion": 1,
            "path": "entry.cgi",
            "requestFormat": "JSON"
        },
        "SYNO.Backup.Target.Folder": {
            "maxVersion": 2,
            "minVersion": 1,
            "path": "entry.cgi",
            "requestFormat": "JSON"
        },
        "SYNO.Backup.Target.Owner": {
            "maxVersion": 2,
            "minVersion": 1,
            "path": "entry.cgi",
            "requestFormat": "JSON"
        },
        "SYNO.Backup.Target.PrivilegedUser": {
            "maxVersion": 2,
            "minVersion": 1,
            "path": "entry.cgi",
            "requestFormat": "JSON"
        },
        "SYNO.Backup.Task": {
            "maxVersion": 2,
            "minVersion": 1,
            "path": "entry.cgi",
            "requestFormat": "JSON"
        },
        "SYNO.Backup.Task.Data": {
            "maxVersion": 2,
            "minVersion": 1,
            "path": "entry.cgi",
            "requestFormat": "JSON"
        },
        "SYNO.Backup.Version": {
            "maxVersion": 2,
            "minVersion": 1,
            "path": "entry.cgi",
            "requestFormat": "JSON"
        },
        "SYNO.Core.ACL": {
            "maxVersion": 1,
            "minVersion": 1,
            "path": "entry.cgi",
            "requestFormat": "JSON"
        },
        "SYNO.Core.AppPortal": {
            "maxVersion": 2,
            "minVersion": 1,
            "path": "entry.cgi",
            "requestFormat": "JSON"
        },
        "SYNO.Core.AppPortal.Config": {
            "maxVersion": 1,
            "minVersion": 1,
            "path": "entry.cgi",
            "requestFormat": "JSON"
        },
        "SYNO.Core.AppPriv": {
            "maxVersion": 1,
            "minVersion": 1,
            "path": "entry.cgi",
            "requestFormat": "JSON"
        },
        "SYNO.Core.AppPriv.App": {
            "maxVersion": 2,
            "minVersion": 1,
            "path": "entry.cgi",
            "requestFormat": "JSON"
        },
        "SYNO.Core.AppPriv.Rule": {
            "maxVersion": 1,
            "minVersion": 1,
            "path": "entry.cgi",
            "requestFormat": "JSON"
        },
        "SYNO.Core.BandwidthControl": {
            "maxVersion": 1,
            "minVersion": 1,
            "path": "entry.cgi",
            "requestFormat": "JSON"
        },
        "SYNO.Core.BandwidthControl.Protocol": {
            "maxVersion": 1,
            "minVersion": 1,
            "path": "entry.cgi",
            "requestFormat": "JSON"
        },
        "SYNO.Core.BandwidthControl.Status": {
            "maxVersion": 1,
            "minVersion": 1,
            "path": "entry.cgi",
            "requestFormat": "JSON"
        },
        "SYNO.Core.CMS": {
            "maxVersion": 2,
            "minVersion": 1,
            "path": "entry.cgi",
            "requestFormat": "JSON"
        },
        "SYNO.Core.CMS.Cache": {
            "maxVersion": 1,
            "minVersion": 1,
            "path": "entry.cgi",
            "requestFormat": "JSON"
        },
        "SYNO.Core.CMS.Info": {
            "maxVersion": 1,
            "minVersion": 1,
            "path": "entry.cgi",
            "requestFormat": "JSON"
        },
        "SYNO.Core.CMS.Policy": {
            "maxVersion": 1,
            "minVersion": 1,
            "path": "entry.cgi",
            "requestFormat": "JSON"
        },
        "SYNO.Core.CMS.ServerInfo": {
            "maxVersion": 1,
            "minVersion": 1,
            "path": "entry.cgi",
            "requestFormat": "JSON"
        },
        "SYNO.Core.CMS.Token": {
            "maxVersion": 1,
            "minVersion": 1,
            "path": "entry.cgi",
            "requestFormat": "JSON"
        },
        "SYNO.Core.Certificate": {
            "maxVersion": 1,
            "minVersion": 1,
            "path": "entry.cgi",
            "requestFormat": "JSON"
        },
        "SYNO.Core.Certificate.CRT": {
            "maxVersion": 1,
            "minVersion": 1,
            "path": "entry.cgi",
            "requestFormat": "JSON"
        },
        "SYNO.Core.Certificate.CSR": {
            "maxVersion": 1,
            "minVersion": 1,
            "path": "entry.cgi",
            "requestFormat": "JSON"
        },
        "SYNO.Core.CurrentConnection": {
            "maxVersion": 1,
            "minVersion": 1,
            "path": "entry.cgi",
            "requestFormat": "JSON"
        },
        "SYNO.Core.DDNS.ExtIP": {
            "maxVersion": 1,
            "minVersion": 1,
            "path": "entry.cgi",
            "requestFormat": "JSON"
        },
        "SYNO.Core.DDNS.Provider": {
            "maxVersion": 1,
            "minVersion": 1,
            "path": "entry.cgi",
            "requestFormat": "JSON"
        },
        "SYNO.Core.DDNS.Record": {
            "maxVersion": 1,
            "minVersion": 1,
            "path": "entry.cgi",
            "requestFormat": "JSON"
        },
        "SYNO.Core.DDNS.Synology": {
            "maxVersion": 1,
            "minVersion": 1,
            "path": "entry.cgi",
            "requestFormat": "JSON"
        },
        "SYNO.Core.DataCollect": {
            "maxVersion": 1,
            "minVersion": 1,
            "path": "entry.cgi",
            "requestFormat": "JSON"
        },
        "SYNO.Core.DataCollect.Application": {
            "maxVersion": 1,
            "minVersion": 1,
            "path": "entry.cgi",
            "requestFormat": "JSON"
        },
        "SYNO.Core.Desktop.Timeout": {
            "maxVersion": 1,
            "minVersion": 1,
            "path": "entry.cgi",
            "requestFormat": "JSON"
        },
        "SYNO.Core.Directory.Domain": {
            "maxVersion": 2,
            "minVersion": 1,
            "path": "entry.cgi",
            "requestFormat": "JSON"
        },
        "SYNO.Core.Directory.Domain.Conf": {
            "maxVersion": 1,
            "minVersion": 1,
            "path": "entry.cgi",
            "requestFormat": "JSON"
        },
        "SYNO.Core.Directory.Domain.Schedule": {
            "maxVersion": 1,
            "minVersion": 1,
            "path": "entry.cgi",
            "requestFormat": "JSON"
        },
        "SYNO.Core.Directory.LDAP": {
            "maxVersion": 1,
            "minVersion": 1,
            "path": "entry.cgi",
            "requestFormat": "JSON"
        },
        "SYNO.Core.Directory.LDAP.BaseDN": {
            "maxVersion": 1,
            "minVersion": 1,
            "path": "entry.cgi",
            "requestFormat": "JSON"
        },
        "SYNO.Core.Directory.LDAP.Profile": {
            "maxVersion": 1,
            "minVersion": 1,
            "path": "entry.cgi",
            "requestFormat": "JSON"
        },
        "SYNO.Core.ExternalDevice.Bluetooth": {
            "maxVersion": 2,
            "minVersion": 1,
            "path": "entry.cgi",
            "requestFormat": "JSON"
        },
        "SYNO.Core.ExternalDevice.Bluetooth.Device": {
            "maxVersion": 1,
            "minVersion": 1,
            "path": "entry.cgi",
            "requestFormat": "JSON"
        },
        "SYNO.Core.ExternalDevice.Bluetooth.Settings": {
            "maxVersion": 1,
            "minVersion": 1,
            "path": "entry.cgi",
            "requestFormat": "JSON"
        },
        "SYNO.Core.ExternalDevice.DefaultPermission": {
            "maxVersion": 1,
            "minVersion": 1,
            "path": "entry.cgi",
            "requestFormat": "JSON"
        },
        "SYNO.Core.ExternalDevice.Printer": {
            "maxVersion": 1,
            "minVersion": 1,
            "path": "entry.cgi",
            "requestFormat": "JSON"
        },
        "SYNO.Core.ExternalDevice.Printer.BonjourSharing": {
            "maxVersion": 1,
            "minVersion": 1,
            "path": "entry.cgi",
            "requestFormat": "JSON"
        },
        "SYNO.Core.ExternalDevice.Printer.Driver": {
            "maxVersion": 1,
            "minVersion": 1,
            "path": "entry.cgi",
            "requestFormat": "JSON"
        },
        "SYNO.Core.ExternalDevice.Printer.Network": {
            "maxVersion": 1,
            "minVersion": 1,
            "path": "entry.cgi",
            "requestFormat": "JSON"
        },
        "SYNO.Core.ExternalDevice.Printer.Network.Host": {
            "maxVersion": 1,
            "minVersion": 1,
            "path": "entry.cgi",
            "requestFormat": "JSON"
        },
        "SYNO.Core.ExternalDevice.Printer.OAuth": {
            "maxVersion": 1,
            "minVersion": 1,
            "path": "entry.cgi",
            "requestFormat": "JSON"
        },
        "SYNO.Core.ExternalDevice.Printer.USB": {
            "maxVersion": 1,
            "minVersion": 1,
            "path": "entry.cgi",
            "requestFormat": "JSON"
        },
        "SYNO.Core.ExternalDevice.Storage.EUnit": {
            "maxVersion": 1,
            "minVersion": 1,
            "path": "entry.cgi",
            "requestFormat": "JSON"
        },
        "SYNO.Core.ExternalDevice.Storage.SD": {
            "maxVersion": 1,
            "minVersion": 1,
            "path": "entry.cgi",
            "requestFormat": "JSON"
        },
        "SYNO.Core.ExternalDevice.Storage.Setting": {
            "maxVersion": 1,
            "minVersion": 1,
            "path": "entry.cgi",
            "requestFormat": "JSON"
        },
        "SYNO.Core.ExternalDevice.Storage.USB": {
            "maxVersion": 1,
            "minVersion": 1,
            "path": "entry.cgi",
            "requestFormat": "JSON"
        },
        "SYNO.Core.ExternalDevice.Storage.eSATA": {
            "maxVersion": 1,
            "minVersion": 1,
            "path": "entry.cgi",
            "requestFormat": "JSON"
        },
        "SYNO.Core.ExternalDevice.UPS": {
            "maxVersion": 1,
            "minVersion": 1,
            "path": "entry.cgi",
            "requestFormat": "JSON"
        },
        "SYNO.Core.EzInternet": {
            "maxVersion": 1,
            "minVersion": 1,
            "path": "entry.cgi",
            "requestFormat": "JSON"
        },
        "SYNO.Core.File": {
            "maxVersion": 2,
            "minVersion": 1,
            "path": "entry.cgi",
            "requestFormat": "JSON"
        },
        "SYNO.Core.File.Thumbnail": {
            "maxVersion": 1,
            "minVersion": 1,
            "path": "entry.cgi",
            "requestFormat": "JSON"
        },
        "SYNO.Core.FileServ.AFP": {
            "maxVersion": 1,
            "minVersion": 1,
            "path": "entry.cgi",
            "requestFormat": "JSON"
        },
        "SYNO.Core.FileServ.FTP": {
            "maxVersion": 3,
            "minVersion": 1,
            "path": "entry.cgi",
            "requestFormat": "JSON"
        },
        "SYNO.Core.FileServ.FTP.ChrootUser": {
            "maxVersion": 2,
            "minVersion": 2,
            "path": "entry.cgi",
            "requestFormat": "JSON"
        },
        "SYNO.Core.FileServ.FTP.SFTP": {
            "maxVersion": 1,
            "minVersion": 1,
            "path": "entry.cgi",
            "requestFormat": "JSON"
        },
        "SYNO.Core.FileServ.FTP.Security": {
            "maxVersion": 1,
            "minVersion": 1,
            "path": "entry.cgi",
            "requestFormat": "JSON"
        },
        "SYNO.Core.FileServ.NFS": {
            "maxVersion": 2,
            "minVersion": 1,
            "path": "entry.cgi",
            "requestFormat": "JSON"
        },
        "SYNO.Core.FileServ.NFS.AdvancedSetting": {
            "maxVersion": 1,
            "minVersion": 1,
            "path": "entry.cgi",
            "requestFormat": "JSON"
        },
        "SYNO.Core.FileServ.NFS.IDMap": {
            "maxVersion": 1,
            "minVersion": 1,
            "path": "entry.cgi",
            "requestFormat": "JSON"
        },
        "SYNO.Core.FileServ.NFS.Kerberos": {
            "maxVersion": 1,
            "minVersion": 1,
            "path": "entry.cgi",
            "requestFormat": "JSON"
        },
        "SYNO.Core.FileServ.NFS.SharePrivilege": {
            "maxVersion": 1,
            "minVersion": 1,
            "path": "entry.cgi",
            "requestFormat": "JSON"
        },
        "SYNO.Core.FileServ.SMB": {
            "maxVersion": 2,
            "minVersion": 1,
            "path": "entry.cgi",
            "requestFormat": "JSON"
        },
        "SYNO.Core.FileServ.WebDAV": {
            "maxVersion": 1,
            "minVersion": 1,
            "path": "entry.cgi",
            "requestFormat": "JSON"
        },
        "SYNO.Core.FileServ.WebDAV.CalDAV": {
            "maxVersion": 1,
            "minVersion": 1,
            "path": "entry.cgi",
            "requestFormat": "JSON"
        },
        "SYNO.Core.FileServ.WebDAV.CalDAV.Calendar": {
            "maxVersion": 1,
            "minVersion": 1,
            "path": "entry.cgi",
            "requestFormat": "JSON"
        },
        "SYNO.Core.Group": {
            "maxVersion": 1,
            "minVersion": 1,
            "path": "entry.cgi",
            "requestFormat": "JSON"
        },
        "SYNO.Core.Group.Member": {
            "maxVersion": 1,
            "minVersion": 1,
            "path": "entry.cgi",
            "requestFormat": "JSON"
        },
        "SYNO.Core.Hardware.BeepControl": {
            "maxVersion": 1,
            "minVersion": 1,
            "path": "entry.cgi",
            "requestFormat": "JSON"
        },
        "SYNO.Core.Hardware.DCOutput": {
            "maxVersion": 1,
            "minVersion": 1,
            "path": "entry.cgi",
            "requestFormat": "JSON"
        },
        "SYNO.Core.Hardware.DCOutput.Task": {
            "maxVersion": 1,
            "minVersion": 1,
            "path": "entry.cgi",
            "requestFormat": "JSON"
        },
        "SYNO.Core.Hardware.FanSpeed": {
            "maxVersion": 1,
            "minVersion": 1,
            "path": "entry.cgi",
            "requestFormat": "JSON"
        },
        "SYNO.Core.Hardware.Hibernation": {
            "maxVersion": 1,
            "minVersion": 1,
            "path": "entry.cgi",
            "requestFormat": "JSON"
        },
        "SYNO.Core.Hardware.LCM": {
            "maxVersion": 1,
            "minVersion": 1,
            "path": "entry.cgi",
            "requestFormat": "JSON"
        },
        "SYNO.Core.Hardware.PowerRecovery": {
            "maxVersion": 1,
            "minVersion": 1,
            "path": "entry.cgi",
            "requestFormat": "JSON"
        },
        "SYNO.Core.Hardware.PowerSchedule": {
            "maxVersion": 1,
            "minVersion": 1,
            "path": "entry.cgi",
            "requestFormat": "JSON"
        },
        "SYNO.Core.Hardware.ZRAM": {
            "maxVersion": 1,
            "minVersion": 1,
            "path": "entry.cgi",
            "requestFormat": "JSON"
        },
        "SYNO.Core.MediaIndexing": {
            "maxVersion": 1,
            "minVersion": 1,
            "path": "entry.cgi",
            "requestFormat": "JSON"
        },
        "SYNO.Core.MediaIndexing.IndexFolder": {
            "maxVersion": 1,
            "minVersion": 1,
            "path": "entry.cgi",
            "requestFormat": "JSON"
        },
        "SYNO.Core.MediaIndexing.MediaConverter": {
            "maxVersion": 1,
            "minVersion": 1,
            "path": "entry.cgi",
            "requestFormat": "JSON"
        },
        "SYNO.Core.MyDSCenter": {
            "maxVersion": 2,
            "minVersion": 1,
            "path": "entry.cgi",
            "requestFormat": "JSON"
        },
        "SYNO.Core.MyDSCenter.Account": {
            "maxVersion": 1,
            "minVersion": 1,
            "path": "entry.cgi",
            "requestFormat": "JSON"
        },
        "SYNO.Core.MyDSCenter.Purchase": {
            "maxVersion": 1,
            "minVersion": 1,
            "path": "entry.cgi",
            "requestFormat": "JSON"
        },
        "SYNO.Core.MyDSCenter.Unify": {
            "maxVersion": 1,
            "minVersion": 1,
            "path": "entry.cgi",
            "requestFormat": "JSON"
        },
        "SYNO.Core.Network": {
            "maxVersion": 1,
            "minVersion": 1,
            "path": "entry.cgi",
            "requestFormat": "JSON"
        },
        "SYNO.Core.Network.Bond": {
            "maxVersion": 1,
            "minVersion": 1,
            "path": "entry.cgi",
            "requestFormat": "JSON"
        },
        "SYNO.Core.Network.Bridge": {
            "maxVersion": 1,
            "minVersion": 1,
            "path": "entry.cgi",
            "requestFormat": "JSON"
        },
        "SYNO.Core.Network.DHCPServer": {
            "maxVersion": 1,
            "minVersion": 1,
            "path": "entry.cgi",
            "requestFormat": "JSON"
        },
        "SYNO.Core.Network.DHCPServer.ClientList": {
            "maxVersion": 2,
            "minVersion": 1,
            "path": "entry.cgi",
            "requestFormat": "JSON"
        },
        "SYNO.Core.Network.DHCPServer.PXE": {
            "maxVersion": 2,
            "minVersion": 1,
            "path": "entry.cgi",
            "requestFormat": "JSON"
        },
        "SYNO.Core.Network.DHCPServer.Reservation": {
            "maxVersion": 2,
            "minVersion": 1,
            "path": "entry.cgi",
            "requestFormat": "JSON"
        },
        "SYNO.Core.Network.DHCPServer.WPAD": {
            "maxVersion": 1,
            "minVersion": 1,
            "path": "entry.cgi",
            "requestFormat": "JSON"
        },
        "SYNO.Core.Network.Ethernet": {
            "maxVersion": 1,
            "minVersion": 1,
            "path": "entry.cgi",
            "requestFormat": "JSON"
        },
        "SYNO.Core.Network.IPv6": {
            "maxVersion": 1,
            "minVersion": 1,
            "path": "entry.cgi",
            "requestFormat": "JSON"
        },
        "SYNO.Core.Network.IPv6.Router": {
            "maxVersion": 1,
            "minVersion": 1,
            "path": "entry.cgi",
            "requestFormat": "JSON"
        },
        "SYNO.Core.Network.IPv6.Router.Prefix": {
            "maxVersion": 1,
            "minVersion": 1,
            "path": "entry.cgi",
            "requestFormat": "JSON"
        },
        "SYNO.Core.Network.IPv6Tunnel": {
            "maxVersion": 1,
            "minVersion": 1,
            "path": "entry.cgi",
            "requestFormat": "JSON"
        },
        "SYNO.Core.Network.Interface": {
            "maxVersion": 1,
            "minVersion": 1,
            "path": "entry.cgi",
            "requestFormat": "JSON"
        },
        "SYNO.Core.Network.LocalBridge": {
            "maxVersion": 1,
            "minVersion": 1,
            "path": "entry.cgi",
            "requestFormat": "JSON"
        },
        "SYNO.Core.Network.MACClone": {
            "maxVersion": 1,
            "minVersion": 1,
            "path": "entry.cgi",
            "requestFormat": "JSON"
        },
        "SYNO.Core.Network.PPPoE": {
            "maxVersion": 1,
            "minVersion": 1,
            "path": "entry.cgi",
            "requestFormat": "JSON"
        },
        "SYNO.Core.Network.PPPoE.Relay": {
            "maxVersion": 1,
            "minVersion": 1,
            "path": "entry.cgi",
            "requestFormat": "JSON"
        },
        "SYNO.Core.Network.Proxy": {
            "maxVersion": 1,
            "minVersion": 1,
            "path": "entry.cgi",
            "requestFormat": "JSON"
        },
        "SYNO.Core.Network.Router.ConnectionList": {
            "maxVersion": 1,
            "minVersion": 1,
            "path": "entry.cgi",
            "requestFormat": "JSON"
        },
        "SYNO.Core.Network.Router.DMZ": {
            "maxVersion": 1,
            "minVersion": 1,
            "path": "entry.cgi",
            "requestFormat": "JSON"
        },
        "SYNO.Core.Network.Router.Gateway.List": {
            "maxVersion": 1,
            "minVersion": 1,
            "path": "entry.cgi",
            "requestFormat": "JSON"
        },
        "SYNO.Core.Network.Router.LocalLan": {
            "maxVersion": 1,
            "minVersion": 1,
            "path": "entry.cgi",
            "requestFormat": "JSON"
        },
        "SYNO.Core.Network.Router.MacFilter": {
            "maxVersion": 1,
            "minVersion": 1,
            "path": "entry.cgi",
            "requestFormat": "JSON"
        },
        "SYNO.Core.Network.Router.ParentalControl": {
            "maxVersion": 1,
            "minVersion": 1,
            "path": "entry.cgi",
            "requestFormat": "JSON"
        },
        "SYNO.Core.Network.Router.PkgList": {
            "maxVersion": 1,
            "minVersion": 1,
            "path": "entry.cgi",
            "requestFormat": "JSON"
        },
        "SYNO.Core.Network.Router.PortForward": {
            "maxVersion": 1,
            "minVersion": 1,
            "path": "entry.cgi",
            "requestFormat": "JSON"
        },
        "SYNO.Core.Network.Router.Static.Route": {
            "maxVersion": 1,
            "minVersion": 1,
            "path": "entry.cgi",
            "requestFormat": "JSON"
        },
        "SYNO.Core.Network.Router.Topology": {
            "maxVersion": 2,
            "minVersion": 1,
            "path": "entry.cgi",
            "requestFormat": "JSON"
        },
        "SYNO.Core.Network.TrafficControl.RouterRules": {
            "maxVersion": 1,
            "minVersion": 1,
            "path": "entry.cgi",
            "requestFormat": "JSON"
        },
        "SYNO.Core.Network.TrafficControl.Rules": {
            "maxVersion": 1,
            "minVersion": 1,
            "path": "entry.cgi",
            "requestFormat": "JSON"
        },
        "SYNO.Core.Network.UPnPServer": {
            "maxVersion": 1,
            "minVersion": 1,
            "path": "entry.cgi",
            "requestFormat": "JSON"
        },
        "SYNO.Core.Network.USBModem": {
            "maxVersion": 2,
            "minVersion": 1,
            "path": "entry.cgi",
            "requestFormat": "JSON"
        },
        "SYNO.Core.Network.VPN": {
            "maxVersion": 1,
            "minVersion": 1,
            "path": "entry.cgi",
            "requestFormat": "JSON"
        },
        "SYNO.Core.Network.VPN.L2TP": {
            "maxVersion": 1,
            "minVersion": 1,
            "path": "entry.cgi",
            "requestFormat": "JSON"
        },
        "SYNO.Core.Network.VPN.OpenVPN": {
            "maxVersion": 1,
            "minVersion": 1,
            "path": "entry.cgi",
            "requestFormat": "JSON"
        },
        "SYNO.Core.Network.VPN.OpenVPN.CA": {
            "maxVersion": 1,
            "minVersion": 1,
            "path": "entry.cgi",
            "requestFormat": "JSON"
        },
        "SYNO.Core.Network.VPN.PPTP": {
            "maxVersion": 1,
            "minVersion": 1,
            "path": "entry.cgi",
            "requestFormat": "JSON"
        },
        "SYNO.Core.Network.Wifi.Client": {
            "maxVersion": 1,
            "minVersion": 1,
            "path": "entry.cgi",
            "requestFormat": "JSON"
        },
        "SYNO.Core.Network.Wifi.Hotspot": {
            "maxVersion": 1,
            "minVersion": 1,
            "path": "entry.cgi",
            "requestFormat": "JSON"
        },
        "SYNO.Core.Network.Wifi.WPS": {
            "maxVersion": 1,
            "minVersion": 1,
            "path": "entry.cgi",
            "requestFormat": "JSON"
        },
        "SYNO.Core.Notification.Advance.CustomizedData": {
            "maxVersion": 1,
            "minVersion": 1,
            "path": "entry.cgi",
            "requestFormat": "JSON"
        },
        "SYNO.Core.Notification.Advance.FilterSettings": {
            "maxVersion": 1,
            "minVersion": 1,
            "path": "entry.cgi",
            "requestFormat": "JSON"
        },
        "SYNO.Core.Notification.Advance.Variables": {
            "maxVersion": 1,
            "minVersion": 1,
            "path": "entry.cgi",
            "requestFormat": "JSON"
        },
        "SYNO.Core.Notification.Advance.WarningPercentage": {
            "maxVersion": 1,
            "minVersion": 1,
            "path": "entry.cgi",
            "requestFormat": "JSON"
        },
        "SYNO.Core.Notification.CMS": {
            "maxVersion": 1,
            "minVersion": 1,
            "path": "entry.cgi",
            "requestFormat": "JSON"
        },
        "SYNO.Core.Notification.CMS.Conf": {
            "maxVersion": 1,
            "minVersion": 1,
            "path": "entry.cgi",
            "requestFormat": "JSON"
        },
        "SYNO.Core.Notification.Mail": {
            "maxVersion": 1,
            "minVersion": 1,
            "path": "entry.cgi",
            "requestFormat": "JSON"
        },
        "SYNO.Core.Notification.Mail.Auth": {
            "maxVersion": 1,
            "minVersion": 1,
            "path": "entry.cgi",
            "requestFormat": "JSON"
        },
        "SYNO.Core.Notification.Mail.Conf": {
            "maxVersion": 1,
            "minVersion": 1,
            "path": "entry.cgi",
            "requestFormat": "JSON"
        },
        "SYNO.Core.Notification.Push": {
            "maxVersion": 1,
            "minVersion": 1,
            "path": "entry.cgi",
            "requestFormat": "JSON"
        },
        "SYNO.Core.Notification.Push.AuthToken": {
            "maxVersion": 1,
            "minVersion": 1,
            "path": "entry.cgi",
            "requestFormat": "JSON"
        },
        "SYNO.Core.Notification.Push.Conf": {
            "maxVersion": 1,
            "minVersion": 1,
            "path": "entry.cgi",
            "requestFormat": "JSON"
        },
        "SYNO.Core.Notification.Push.Mail": {
            "maxVersion": 1,
            "minVersion": 1,
            "path": "entry.cgi",
            "requestFormat": "JSON"
        },
        "SYNO.Core.Notification.Push.Mobile": {
            "maxVersion": 1,
            "minVersion": 1,
            "path": "entry.cgi",
            "requestFormat": "JSON"
        },
        "SYNO.Core.Notification.SMS": {
            "maxVersion": 1,
            "minVersion": 1,
            "path": "entry.cgi",
            "requestFormat": "JSON"
        },
        "SYNO.Core.Notification.SMS.Conf": {
            "maxVersion": 1,
            "minVersion": 1,
            "path": "entry.cgi",
            "requestFormat": "JSON"
        },
        "SYNO.Core.Notification.SMS.Provider": {
            "maxVersion": 1,
            "minVersion": 1,
            "path": "entry.cgi",
            "requestFormat": "JSON"
        },
        "SYNO.Core.OTP": {
            "maxVersion": 2,
            "minVersion": 1,
            "path": "entry.cgi",
            "requestFormat": "JSON"
        },
        "SYNO.Core.OTP.EnforcePolicy": {
            "maxVersion": 1,
            "minVersion": 1,
            "path": "entry.cgi",
            "requestFormat": "JSON"
        },
        "SYNO.Core.Package": {
            "maxVersion": 1,
            "minVersion": 1,
            "path": "entry.cgi",
            "requestFormat": "JSON"
        },
        "SYNO.Core.Package.Control": {
            "maxVersion": 1,
            "minVersion": 1,
            "path": "entry.cgi",
            "requestFormat": "JSON"
        },
        "SYNO.Core.Package.Installation": {
            "maxVersion": 1,
            "minVersion": 1,
            "path": "entry.cgi",
            "requestFormat": "JSON"
        },
        "SYNO.Core.Package.Server": {
            "maxVersion": 1,
            "minVersion": 1,
            "path": "entry.cgi",
            "requestFormat": "JSON"
        },
        "SYNO.Core.Package.Setting": {
            "maxVersion": 1,
            "minVersion": 1,
            "path": "entry.cgi",
            "requestFormat": "JSON"
        },
        "SYNO.Core.Package.Uninstallation": {
            "maxVersion": 1,
            "minVersion": 1,
            "path": "entry.cgi",
            "requestFormat": "JSON"
        },
        "SYNO.Core.PortForwarding": {
            "maxVersion": 1,
            "minVersion": 1,
            "path": "entry.cgi",
            "requestFormat": "JSON"
        },
        "SYNO.Core.PortForwarding.Compatibility": {
            "maxVersion": 1,
            "minVersion": 1,
            "path": "entry.cgi",
            "requestFormat": "JSON"
        },
        "SYNO.Core.PortForwarding.RouterConf": {
            "maxVersion": 1,
            "minVersion": 1,
            "path": "entry.cgi",
            "requestFormat": "JSON"
        },
        "SYNO.Core.PortForwarding.RouterList": {
            "maxVersion": 1,
            "minVersion": 1,
            "path": "entry.cgi",
            "requestFormat": "JSON"
        },
        "SYNO.Core.PortForwarding.Rules": {
            "maxVersion": 1,
            "minVersion": 1,
            "path": "entry.cgi",
            "requestFormat": "JSON"
        },
        "SYNO.Core.PortForwarding.Rules.Serv": {
            "maxVersion": 1,
            "minVersion": 1,
            "path": "entry.cgi",
            "requestFormat": "JSON"
        },
        "SYNO.Core.QuickConnect": {
            "maxVersion": 2,
            "minVersion": 1,
            "path": "entry.cgi",
            "requestFormat": "JSON"
        },
        "SYNO.Core.QuickConnect.Permission": {
            "maxVersion": 2,
            "minVersion": 1,
            "path": "entry.cgi",
            "requestFormat": "JSON"
        },
        "SYNO.Core.Quota": {
            "maxVersion": 1,
            "minVersion": 1,
            "path": "entry.cgi",
            "requestFormat": "JSON"
        },
        "SYNO.Core.RecycleBin": {
            "maxVersion": 1,
            "minVersion": 1,
            "path": "entry.cgi",
            "requestFormat": "JSON"
        },
        "SYNO.Core.RecycleBin.User": {
            "maxVersion": 1,
            "minVersion": 1,
            "path": "entry.cgi",
            "requestFormat": "JSON"
        },
        "SYNO.Core.Region.Language": {
            "maxVersion": 1,
            "minVersion": 1,
            "path": "entry.cgi",
            "requestFormat": "JSON"
        },
        "SYNO.Core.Region.NTP": {
            "maxVersion": 1,
            "minVersion": 1,
            "path": "entry.cgi",
            "requestFormat": "JSON"
        },
        "SYNO.Core.Region.NTP.Server": {
            "maxVersion": 1,
            "minVersion": 1,
            "path": "entry.cgi",
            "requestFormat": "JSON"
        },
        "SYNO.Core.Report": {
            "maxVersion": 1,
            "minVersion": 1,
            "path": "entry.cgi",
            "requestFormat": "JSON"
        },
        "SYNO.Core.Report.Analyzer": {
            "maxVersion": 1,
            "minVersion": 1,
            "path": "entry.cgi",
            "requestFormat": "JSON"
        },
        "SYNO.Core.Report.Config": {
            "maxVersion": 1,
            "minVersion": 1,
            "path": "entry.cgi",
            "requestFormat": "JSON"
        },
        "SYNO.Core.Report.History": {
            "maxVersion": 1,
            "minVersion": 1,
            "path": "entry.cgi",
            "requestFormat": "JSON"
        },
        "SYNO.Core.SNMP": {
            "maxVersion": 1,
            "minVersion": 1,
            "path": "entry.cgi",
            "requestFormat": "JSON"
        },
        "SYNO.Core.Security.AutoBlock": {
            "maxVersion": 1,
            "minVersion": 1,
            "path": "entry.cgi",
            "requestFormat": "JSON"
        },
        "SYNO.Core.Security.AutoBlock.Rules": {
            "maxVersion": 1,
            "minVersion": 1,
            "path": "entry.cgi",
            "requestFormat": "JSON"
        },
        "SYNO.Core.Security.DSM": {
            "maxVersion": 2,
            "minVersion": 1,
            "path": "entry.cgi",
            "requestFormat": "JSON"
        },
        "SYNO.Core.Security.DSM.Embed": {
            "maxVersion": 1,
            "minVersion": 1,
            "path": "entry.cgi",
            "requestFormat": "JSON"
        },
        "SYNO.Core.Security.DoS": {
            "maxVersion": 1,
            "minVersion": 1,
            "path": "entry.cgi",
            "requestFormat": "JSON"
        },
        "SYNO.Core.Security.Firewall.Conf": {
            "maxVersion": 1,
            "minVersion": 1,
            "path": "entry.cgi",
            "requestFormat": "JSON"
        },
        "SYNO.Core.Security.Firewall.Rules": {
            "maxVersion": 2,
            "minVersion": 1,
            "path": "entry.cgi",
            "requestFormat": "JSON"
        },
        "SYNO.Core.Security.Firewall.Rules.Serv": {
            "maxVersion": 1,
            "minVersion": 1,
            "path": "entry.cgi",
            "requestFormat": "JSON"
        },
        "SYNO.Core.Security.VPNPassthrough": {
            "maxVersion": 1,
            "minVersion": 1,
            "path": "entry.cgi",
            "requestFormat": "JSON"
        },
        "SYNO.Core.Security.VPNPassthrough.Status": {
            "maxVersion": 1,
            "minVersion": 1,
            "path": "entry.cgi",
            "requestFormat": "JSON"
        },
        "SYNO.Core.SecurityScan.Conf": {
            "maxVersion": 1,
            "minVersion": 1,
            "path": "entry.cgi",
            "requestFormat": "JSON"
        },
        "SYNO.Core.SecurityScan.Operation": {
            "maxVersion": 1,
            "minVersion": 1,
            "path": "entry.cgi",
            "requestFormat": "JSON"
        },
        "SYNO.Core.SecurityScan.Status": {
            "maxVersion": 1,
            "minVersion": 1,
            "path": "entry.cgi",
            "requestFormat": "JSON"
        },
        "SYNO.Core.Service": {
            "maxVersion": 1,
            "minVersion": 1,
            "path": "entry.cgi",
            "requestFormat": "JSON"
        },
        "SYNO.Core.Service.Conf": {
            "maxVersion": 1,
            "minVersion": 1,
            "path": "entry.cgi",
            "requestFormat": "JSON"
        },
        "SYNO.Core.Service.PortInfo": {
            "maxVersion": 1,
            "minVersion": 1,
            "path": "entry.cgi",
            "requestFormat": "JSON"
        },
        "SYNO.Core.Share": {
            "maxVersion": 1,
            "minVersion": 1,
            "path": "entry.cgi",
            "requestFormat": "JSON"
        },
        "SYNO.Core.Share.Crypto": {
            "maxVersion": 1,
            "minVersion": 1,
            "path": "entry.cgi",
            "requestFormat": "JSON"
        },
        "SYNO.Core.Share.Crypto.Key": {
            "maxVersion": 1,
            "minVersion": 1,
            "path": "entry.cgi",
            "requestFormat": "JSON"
        },
        "SYNO.Core.Share.CryptoFile": {
            "maxVersion": 1,
            "minVersion": 1,
            "path": "entry.cgi",
            "requestFormat": "JSON"
        },
        "SYNO.Core.Share.Fileindex": {
            "maxVersion": 1,
            "minVersion": 1,
            "path": "entry.cgi",
            "requestFormat": "JSON"
        },
        "SYNO.Core.Share.Migration": {
            "maxVersion": 1,
            "minVersion": 1,
            "path": "entry.cgi",
            "requestFormat": "JSON"
        },
        "SYNO.Core.Share.Migration.Task": {
            "maxVersion": 1,
            "minVersion": 1,
            "path": "entry.cgi",
            "requestFormat": "JSON"
        },
        "SYNO.Core.Share.Permission": {
            "maxVersion": 1,
            "minVersion": 1,
            "path": "entry.cgi",
            "requestFormat": "JSON"
        },
        "SYNO.Core.Share.Snapshot": {
            "maxVersion": 1,
            "minVersion": 1,
            "path": "entry.cgi",
            "requestFormat": "JSON"
        },
        "SYNO.Core.Storage.Disk": {
            "maxVersion": 1,
            "minVersion": 1,
            "path": "entry.cgi",
            "requestFormat": "JSON"
        },
        "SYNO.Core.Storage.Pool": {
            "maxVersion": 1,
            "minVersion": 1,
            "path": "entry.cgi",
            "requestFormat": "JSON"
        },
        "SYNO.Core.Storage.Volume": {
            "maxVersion": 1,
            "minVersion": 1,
            "path": "entry.cgi",
            "requestFormat": "JSON"
        },
        "SYNO.Core.SupportForm.Account": {
            "maxVersion": 1,
            "minVersion": 1,
            "path": "entry.cgi",
            "requestFormat": "JSON"
        },
        "SYNO.Core.SupportForm.Form": {
            "maxVersion": 1,
            "minVersion": 1,
            "path": "entry.cgi",
            "requestFormat": "JSON"
        },
        "SYNO.Core.SupportForm.Log": {
            "maxVersion": 1,
            "minVersion": 1,
            "path": "entry.cgi",
            "requestFormat": "JSON"
        },
        "SYNO.Core.SupportForm.Service": {
            "maxVersion": 1,
            "minVersion": 1,
            "path": "entry.cgi",
            "requestFormat": "JSON"
        },
        "SYNO.Core.SyslogClient": {
            "maxVersion": 1,
            "minVersion": 1,
            "path": "entry.cgi",
            "requestFormat": "JSON"
        },
        "SYNO.Core.SyslogClient.CA": {
            "maxVersion": 1,
            "minVersion": 1,
            "path": "entry.cgi",
            "requestFormat": "JSON"
        },
        "SYNO.Core.SyslogClient.CustRule": {
            "maxVersion": 1,
            "minVersion": 1,
            "path": "entry.cgi",
            "requestFormat": "JSON"
        },
        "SYNO.Core.SyslogClient.FileTransfer": {
            "maxVersion": 1,
            "minVersion": 1,
            "path": "entry.cgi",
            "requestFormat": "JSON"
        },
        "SYNO.Core.SyslogClient.History": {
            "maxVersion": 1,
            "minVersion": 1,
            "path": "entry.cgi",
            "requestFormat": "JSON"
        },
        "SYNO.Core.SyslogClient.Log": {
            "maxVersion": 1,
            "minVersion": 1,
            "path": "entry.cgi",
            "requestFormat": "JSON"
        },
        "SYNO.Core.SyslogClient.Setting.Notify": {
            "maxVersion": 1,
            "minVersion": 1,
            "path": "entry.cgi",
            "requestFormat": "JSON"
        },
        "SYNO.Core.SyslogClient.Setting.Server": {
            "maxVersion": 1,
            "minVersion": 1,
            "path": "entry.cgi",
            "requestFormat": "JSON"
        },
        "SYNO.Core.SyslogClient.Setting.Storage": {
            "maxVersion": 1,
            "minVersion": 1,
            "path": "entry.cgi",
            "requestFormat": "JSON"
        },
        "SYNO.Core.SyslogClient.Status": {
            "maxVersion": 1,
            "minVersion": 1,
            "path": "entry.cgi",
            "requestFormat": "JSON"
        },
        "SYNO.Core.System": {
            "maxVersion": 2,
            "minVersion": 1,
            "path": "entry.cgi",
            "requestFormat": "JSON"
        },
        "SYNO.Core.System.Utilization": {
            "maxVersion": 1,
            "minVersion": 1,
            "path": "entry.cgi",
            "requestFormat": "JSON"
        },
        "SYNO.Core.TFTP": {
            "maxVersion": 1,
            "minVersion": 1,
            "path": "entry.cgi",
            "requestFormat": "JSON"
        },
        "SYNO.Core.TaskScheduler": {
            "maxVersion": 1,
            "minVersion": 1,
            "path": "entry.cgi",
            "requestFormat": "JSON"
        },
        "SYNO.Core.Terminal": {
            "maxVersion": 2,
            "minVersion": 1,
            "path": "entry.cgi",
            "requestFormat": "JSON"
        },
        "SYNO.Core.Theme.Image": {
            "maxVersion": 1,
            "minVersion": 1,
            "path": "entry.cgi",
            "requestFormat": "JSON"
        },
        "SYNO.Core.Theme.Login": {
            "maxVersion": 1,
            "minVersion": 1,
            "path": "entry.cgi",
            "requestFormat": "JSON"
        },
        "SYNO.Core.Upgrade": {
            "maxVersion": 1,
            "minVersion": 1,
            "path": "entry.cgi",
            "requestFormat": "JSON"
        },
        "SYNO.Core.Upgrade.AutoUpgrade": {
            "maxVersion": 1,
            "minVersion": 1,
            "path": "entry.cgi",
            "requestFormat": "JSON"
        },
        "SYNO.Core.Upgrade.Group": {
            "maxVersion": 1,
            "minVersion": 1,
            "path": "entry.cgi",
            "requestFormat": "JSON"
        },
        "SYNO.Core.Upgrade.Group.Download": {
            "maxVersion": 1,
            "minVersion": 1,
            "path": "entry.cgi",
            "requestFormat": "JSON"
        },
        "SYNO.Core.Upgrade.GroupInstall": {
            "maxVersion": 1,
            "minVersion": 1,
            "path": "entry.cgi",
            "requestFormat": "JSON"
        },
        "SYNO.Core.Upgrade.GroupInstall.Network": {
            "maxVersion": 1,
            "minVersion": 1,
            "path": "entry.cgi",
            "requestFormat": "JSON"
        },
        "SYNO.Core.Upgrade.Patch": {
            "maxVersion": 1,
            "minVersion": 1,
            "path": "entry.cgi",
            "requestFormat": "JSON"
        },
        "SYNO.Core.Upgrade.Server": {
            "maxVersion": 1,
            "minVersion": 1,
            "path": "entry.cgi",
            "requestFormat": "JSON"
        },
        "SYNO.Core.Upgrade.Server.Download": {
            "maxVersion": 1,
            "minVersion": 1,
            "path": "entry.cgi",
            "requestFormat": "JSON"
        },
        "SYNO.Core.Upgrade.Setting": {
            "maxVersion": 2,
            "minVersion": 1,
            "path": "entry.cgi",
            "requestFormat": "JSON"
        },
        "SYNO.Core.User": {
            "maxVersion": 1,
            "minVersion": 1,
            "path": "entry.cgi",
            "requestFormat": "JSON"
        },
        "SYNO.Core.User.Home": {
            "maxVersion": 1,
            "minVersion": 1,
            "path": "entry.cgi",
            "requestFormat": "JSON"
        },
        "SYNO.Core.User.PasswordPolicy": {
            "maxVersion": 1,
            "minVersion": 1,
            "path": "entry.cgi",
            "requestFormat": "JSON"
        },
        "SYNO.Core.Web.DSM": {
            "maxVersion": 1,
            "minVersion": 1,
            "path": "entry.cgi",
            "requestFormat": "JSON"
        },
        "SYNO.Core.Web.DSM.External": {
            "maxVersion": 1,
            "minVersion": 1,
            "path": "entry.cgi",
            "requestFormat": "JSON"
        },
        "SYNO.Core.Web.HTTP": {
            "maxVersion": 1,
            "minVersion": 1,
            "path": "entry.cgi",
            "requestFormat": "JSON"
        },
        "SYNO.Core.Web.HTTP.Dependency": {
            "maxVersion": 1,
            "minVersion": 1,
            "path": "entry.cgi",
            "requestFormat": "JSON"
        },
        "SYNO.Core.Web.HTTP.VHost": {
            "maxVersion": 1,
            "minVersion": 1,
            "path": "entry.cgi",
            "requestFormat": "JSON"
        },
        "SYNO.Core.Web.PHP": {
            "maxVersion": 1,
            "minVersion": 1,
            "path": "entry.cgi",
            "requestFormat": "JSON"
        },
        "SYNO.Core.Web.PHP.Extension": {
            "maxVersion": 1,
            "minVersion": 1,
            "path": "entry.cgi",
            "requestFormat": "JSON"
        },
        "SYNO.DSM.Application": {
            "maxVersion": 1,
            "minVersion": 1,
            "path": "dsm/app.cgi"
        },
        "SYNO.DSM.AutoBlock": {
            "maxVersion": 1,
            "minVersion": 1,
            "path": "dsm/autoblock.cgi"
        },
        "SYNO.DSM.Connection": {
            "maxVersion": 1,
            "minVersion": 1,
            "path": "dsm/connection.cgi"
        },
        "SYNO.DSM.FindMe": {
            "maxVersion": 1,
            "minVersion": 1,
            "path": "dsm/findme.cgi"
        },
        "SYNO.DSM.Group": {
            "maxVersion": 1,
            "minVersion": 1,
            "path": "dsm/group.cgi"
        },
        "SYNO.DSM.Info": {
            "maxVersion": 1,
            "minVersion": 1,
            "path": "dsm/info.cgi"
        },
        "SYNO.DSM.LogViewer": {
            "maxVersion": 1,
            "minVersion": 1,
            "path": "dsm/logviewer.cgi"
        },
        "SYNO.DSM.Network": {
            "maxVersion": 1,
            "minVersion": 1,
            "path": "dsm/network.cgi"
        },
        "SYNO.DSM.Package": {
            "maxVersion": 1,
            "minVersion": 1,
            "path": "dsm/package.cgi"
        },
        "SYNO.DSM.PushNotification": {
            "maxVersion": 1,
            "minVersion": 1,
            "path": "dsm/notification.cgi"
        },
        "SYNO.DSM.Service": {
            "maxVersion": 1,
            "minVersion": 1,
            "path": "dsm/service.cgi"
        },
        "SYNO.DSM.System": {
            "maxVersion": 1,
            "minVersion": 1,
            "path": "dsm/system.cgi"
        },
        "SYNO.DSM.SystemLoading": {
            "maxVersion": 1,
            "minVersion": 1,
            "path": "dsm/system_loading.cgi"
        },
        "SYNO.DSM.User": {
            "maxVersion": 1,
            "minVersion": 1,
            "path": "dsm/user.cgi"
        },
        "SYNO.DSM.Volume": {
            "maxVersion": 1,
            "minVersion": 1,
            "path": "dsm/volume.cgi"
        },
        "SYNO.DSM.iSCSI": {
            "maxVersion": 1,
            "minVersion": 1,
            "path": "dsm/iscsi.cgi"
        },
        "SYNO.DTV.Channel": {
            "maxVersion": 1,
            "minVersion": 1,
            "path": "VideoStation/channellist.cgi"
        },
        "SYNO.DTV.ChannelScan": {
            "maxVersion": 1,
            "minVersion": 1,
            "path": "VideoStation/channelscan.cgi"
        },
        "SYNO.DTV.Controller": {
            "maxVersion": 1,
            "minVersion": 1,
            "path": "VideoStation/dtvcontrol.cgi"
        },
        "SYNO.DTV.DVBSScan": {
            "maxVersion": 1,
            "minVersion": 1,
            "path": "VideoStation/dvbsscan.cgi"
        },
        "SYNO.DTV.Program": {
            "maxVersion": 1,
            "minVersion": 1,
            "path": "VideoStation/programlist.cgi"
        },
        "SYNO.DTV.Schedule": {
            "maxVersion": 1,
            "minVersion": 1,
            "path": "VideoStation/schedule_recording.cgi"
        },
        "SYNO.DTV.Statistic": {
            "maxVersion": 1,
            "minVersion": 1,
            "path": "VideoStation/dtvstatistic.cgi"
        },
        "SYNO.DTV.Status": {
            "maxVersion": 1,
            "minVersion": 1,
            "path": "VideoStation/dvtstatus.cgi"
        },
        "SYNO.DTV.Streaming": {
            "maxVersion": 1,
            "minVersion": 1,
            "path": "VideoStation/dtvstreaming.cgi"
        },
        "SYNO.DTV.Tuner": {
            "maxVersion": 1,
            "minVersion": 1,
            "path": "VideoStation/tuner.cgi"
        },
        "SYNO.DownloadStation.BTSearch": {
            "maxVersion": 1,
            "minVersion": 1,
            "path": "DownloadStation/btsearch.cgi"
        },
        "SYNO.DownloadStation.Info": {
            "maxVersion": 2,
            "minVersion": 1,
            "path": "DownloadStation/info.cgi"
        },
        "SYNO.DownloadStation.RSS.Feed": {
            "maxVersion": 1,
            "minVersion": 1,
            "path": "DownloadStation/RSSfeed.cgi"
        },
        "SYNO.DownloadStation.RSS.Site": {
            "maxVersion": 1,
            "minVersion": 1,
            "path": "DownloadStation/RSSsite.cgi"
        },
        "SYNO.DownloadStation.Schedule": {
            "maxVersion": 1,
            "minVersion": 1,
            "path": "DownloadStation/schedule.cgi"
        },
        "SYNO.DownloadStation.Statistic": {
            "maxVersion": 1,
            "minVersion": 1,
            "path": "DownloadStation/statistic.cgi"
        },
        "SYNO.DownloadStation.Task": {
            "maxVersion": 3,
            "minVersion": 1,
            "path": "DownloadStation/task.cgi"
        },
        "SYNO.DownloadStation.Xunlei.Task": {
            "maxVersion": 1,
            "minVersion": 1,
            "path": "DownloadStation/xunlei/dl_queue.cgi"
        },
        "SYNO.Entry.Request": {
            "maxVersion": 1,
            "minVersion": 1,
            "path": "entry.cgi",
            "requestFormat": "JSON"
        },
        "SYNO.Entry.Request.Polling": {
            "maxVersion": 1,
            "minVersion": 1,
            "path": "entry.cgi",
            "requestFormat": "JSON"
        },
        "SYNO.FileStation.BackgroundTask": {
            "maxVersion": 2,
            "minVersion": 1,
            "path": "FileStation/background_task.cgi"
        },
        "SYNO.FileStation.CheckExist": {
            "maxVersion": 1,
            "minVersion": 1,
            "path": "FileStation/file_checkDir.cgi"
        },
        "SYNO.FileStation.CheckPermission": {
            "maxVersion": 2,
            "minVersion": 1,
            "path": "FileStation/file_permission.cgi"
        },
        "SYNO.FileStation.Compress": {
            "maxVersion": 1,
            "minVersion": 1,
            "path": "FileStation/file_compress.cgi"
        },
        "SYNO.FileStation.CopyMove": {
            "maxVersion": 2,
            "minVersion": 1,
            "path": "FileStation/file_MVCP.cgi"
        },
        "SYNO.FileStation.CreateFolder": {
            "maxVersion": 1,
            "minVersion": 1,
            "path": "FileStation/file_crtfdr.cgi"
        },
        "SYNO.FileStation.Delete": {
            "maxVersion": 1,
            "minVersion": 1,
            "path": "FileStation/file_delete.cgi"
        },
        "SYNO.FileStation.DirSize": {
            "maxVersion": 1,
            "minVersion": 1,
            "path": "FileStation/file_dirSize.cgi"
        },
        "SYNO.FileStation.Download": {
            "maxVersion": 1,
            "minVersion": 1,
            "path": "FileStation/file_download.cgi"
        },
        "SYNO.FileStation.Extract": {
            "maxVersion": 1,
            "minVersion": 1,
            "path": "FileStation/file_extract.cgi"
        },
        "SYNO.FileStation.Favorite": {
            "maxVersion": 1,
            "minVersion": 1,
            "path": "FileStation/file_favorite.cgi"
        },
        "SYNO.FileStation.Info": {
            "maxVersion": 1,
            "minVersion": 1,
            "path": "FileStation/info.cgi"
        },
        "SYNO.FileStation.List": {
            "maxVersion": 1,
            "minVersion": 1,
            "path": "FileStation/file_share.cgi"
        },
        "SYNO.FileStation.MD5": {
            "maxVersion": 1,
            "minVersion": 1,
            "path": "FileStation/file_md5.cgi"
        },
        "SYNO.FileStation.OpenGoogleDrive": {
            "maxVersion": 1,
            "minVersion": 1,
            "path": "FileStation/file_opengdrive.cgi"
        },
        "SYNO.FileStation.Rename": {
            "maxVersion": 1,
            "minVersion": 1,
            "path": "FileStation/file_rename.cgi"
        },
        "SYNO.FileStation.Search": {
            "maxVersion": 1,
            "minVersion": 1,
            "path": "FileStation/file_find.cgi"
        },
        "SYNO.FileStation.Sharing": {
            "maxVersion": 2,
            "minVersion": 1,
            "path": "FileStation/file_sharing.cgi"
        },
        "SYNO.FileStation.Snapshot": {
            "maxVersion": 1,
            "minVersion": 1,
            "path": "FileStation/file_snapshot.cgi"
        },
        "SYNO.FileStation.Thumb": {
            "maxVersion": 1,
            "minVersion": 1,
            "path": "FileStation/file_thumb.cgi"
        },
        "SYNO.FileStation.Upload": {
            "maxVersion": 1,
            "minVersion": 1,
            "path": "FileStation/api_upload.cgi"
        },
        "SYNO.FileStation.VFS.Connection": {
            "maxVersion": 1,
            "minVersion": 1,
            "path": "entry.cgi",
            "requestFormat": "JSON"
        },
        "SYNO.FileStation.VFS.Profile": {
            "maxVersion": 1,
            "minVersion": 1,
            "path": "entry.cgi",
            "requestFormat": "JSON"
        },
        "SYNO.FileStation.VFS.Protocol": {
            "maxVersion": 1,
            "minVersion": 1,
            "path": "entry.cgi",
            "requestFormat": "JSON"
        },
        "SYNO.FileStation.VFS.User": {
            "maxVersion": 1,
            "minVersion": 1,
            "path": "entry.cgi",
            "requestFormat": "JSON"
        },
        "SYNO.FileStation.VirtualFolder": {
            "maxVersion": 1,
            "minVersion": 1,
            "path": "FileStation/file_virtual.cgi"
        },
        "SYNO.FolderSharing.Download": {
            "maxVersion": 1,
            "minVersion": 1,
            "path": "FolderSharing/file_download.cgi"
        },
        "SYNO.FolderSharing.List": {
            "maxVersion": 1,
            "minVersion": 1,
            "path": "FolderSharing/file_share.cgi"
        },
        "SYNO.FolderSharing.Thumb": {
            "maxVersion": 1,
            "minVersion": 1,
            "path": "FolderSharing/file_thumb.cgi"
        },
        "SYNO.NoteStation.FTS": {
            "maxVersion": 1,
            "minVersion": 1,
            "path": "entry.cgi",
            "requestFormat": "JSON"
        },
        "SYNO.NoteStation.Import.Evernote": {
            "maxVersion": 1,
            "minVersion": 1,
            "path": "entry.cgi",
            "requestFormat": "JSON"
        },
        "SYNO.NoteStation.Info": {
            "maxVersion": 1,
            "minVersion": 1,
            "path": "entry.cgi",
            "requestFormat": "JSON"
        },
        "SYNO.NoteStation.Note": {
            "maxVersion": 1,
            "minVersion": 1,
            "path": "entry.cgi",
            "requestFormat": "JSON"
        },
        "SYNO.NoteStation.Note.AppLink": {
            "maxVersion": 1,
            "minVersion": 1,
            "path": "entry.cgi",
            "requestFormat": "JSON"
        },
        "SYNO.NoteStation.Note.Encrypt": {
            "maxVersion": 1,
            "minVersion": 1,
            "path": "entry.cgi",
            "requestFormat": "JSON"
        },
        "SYNO.NoteStation.Note.Polling": {
            "maxVersion": 1,
            "minVersion": 1,
            "path": "entry.cgi",
            "requestFormat": "JSON"
        },
        "SYNO.NoteStation.Note.Version": {
            "maxVersion": 1,
            "minVersion": 1,
            "path": "entry.cgi",
            "requestFormat": "JSON"
        },
        "SYNO.NoteStation.Notebook": {
            "maxVersion": 1,
            "minVersion": 1,
            "path": "entry.cgi",
            "requestFormat": "JSON"
        },
        "SYNO.NoteStation.Permission": {
            "maxVersion": 1,
            "minVersion": 1,
            "path": "entry.cgi",
            "requestFormat": "JSON"
        },
        "SYNO.NoteStation.Permission.Public": {
            "maxVersion": 1,
            "minVersion": 1,
            "path": "entry.cgi",
            "requestFormat": "JSON"
        },
        "SYNO.NoteStation.Permission.User": {
            "maxVersion": 1,
            "minVersion": 1,
            "path": "entry.cgi",
            "requestFormat": "JSON"
        },
        "SYNO.NoteStation.Setting": {
            "maxVersion": 1,
            "minVersion": 1,
            "path": "entry.cgi",
            "requestFormat": "JSON"
        },
        "SYNO.NoteStation.Shard": {
            "maxVersion": 1,
            "minVersion": 1,
            "path": "entry.cgi",
            "requestFormat": "JSON"
        },
        "SYNO.NoteStation.Shard.Link": {
            "maxVersion": 1,
            "minVersion": 1,
            "path": "entry.cgi",
            "requestFormat": "JSON"
        },
        "SYNO.NoteStation.Share.Priv": {
            "maxVersion": 1,
            "minVersion": 1,
            "path": "entry.cgi",
            "requestFormat": "JSON"
        },
        "SYNO.NoteStation.Shortcut": {
            "maxVersion": 1,
            "minVersion": 1,
            "path": "entry.cgi",
            "requestFormat": "JSON"
        },
        "SYNO.NoteStation.Tag": {
            "maxVersion": 1,
            "minVersion": 1,
            "path": "entry.cgi",
            "requestFormat": "JSON"
        },
        "SYNO.Package": {
            "maxVersion": 1,
            "minVersion": 1,
            "path": "entry.cgi",
            "requestFormat": "JSON"
        },
        "SYNO.PersonMailAccount": {
            "maxVersion": 1,
            "minVersion": 1,
            "path": "entry.cgi",
            "requestFormat": "JSON"
        },
        "SYNO.PersonMailAccount.Contacts": {
            "maxVersion": 1,
            "minVersion": 1,
            "path": "entry.cgi",
            "requestFormat": "JSON"
        },
        "SYNO.PersonMailAccount.Mail": {
            "maxVersion": 1,
            "minVersion": 1,
            "path": "entry.cgi",
            "requestFormat": "JSON"
        },
        "SYNO.ResourceMonitor.Setting": {
            "maxVersion": 1,
            "minVersion": 1,
            "path": "entry.cgi",
            "requestFormat": "JSON"
        },
        "SYNO.S2S.Client": {
            "maxVersion": 1,
            "minVersion": 1,
            "path": "entry.cgi",
            "requestFormat": "JSON"
        },
        "SYNO.S2S.Client.Job": {
            "maxVersion": 1,
            "minVersion": 1,
            "path": "entry.cgi",
            "requestFormat": "JSON"
        },
        "SYNO.S2S.Server": {
            "maxVersion": 1,
            "minVersion": 1,
            "path": "entry.cgi",
            "requestFormat": "JSON"
        },
        "SYNO.S2S.Server.Pair": {
            "maxVersion": 1,
            "minVersion": 1,
            "path": "entry.cgi",
            "requestFormat": "JSON"
        },
        "SYNO.SocialAccount": {
            "maxVersion": 2,
            "minVersion": 1,
            "path": "entry.cgi",
            "requestFormat": "JSON"
        },
        "SYNO.SocialAccount.Friend": {
            "maxVersion": 1,
            "minVersion": 1,
            "path": "entry.cgi",
            "requestFormat": "JSON"
        },
        "SYNO.SocialAccount.Message": {
            "maxVersion": 1,
            "minVersion": 1,
            "path": "entry.cgi",
            "requestFormat": "JSON"
        },
        "SYNO.SocialAccount.Token": {
            "maxVersion": 1,
            "minVersion": 1,
            "path": "entry.cgi",
            "requestFormat": "JSON"
        },
        "SYNO.SurveillanceStation.ActionRule": {
            "maxVersion": 1,
            "minVersion": 1,
            "path": "entry.cgi",
            "requestFormat": "JSON"
        },
        "SYNO.SurveillanceStation.AddOns": {
            "maxVersion": 1,
            "minVersion": 1,
            "path": "entry.cgi",
            "requestFormat": "JSON"
        },
        "SYNO.SurveillanceStation.Analytics": {
            "maxVersion": 1,
            "minVersion": 1,
            "path": "entry.cgi",
            "requestFormat": "JSON"
        },
        "SYNO.SurveillanceStation.Analytics.Setting": {
            "maxVersion": 1,
            "minVersion": 1,
            "path": "entry.cgi",
            "requestFormat": "JSON"
        },
        "SYNO.SurveillanceStation.AudioOut": {
            "maxVersion": 1,
            "minVersion": 1,
            "path": "entry.cgi",
            "requestFormat": "JSON"
        },
        "SYNO.SurveillanceStation.AudioPattern": {
            "maxVersion": 1,
            "minVersion": 1,
            "path": "entry.cgi",
            "requestFormat": "JSON"
        },
        "SYNO.SurveillanceStation.AudioStream": {
            "maxVersion": 2,
            "minVersion": 1,
            "path": "SurveillanceStation/audioStreaming.cgi"
        },
        "SYNO.SurveillanceStation.AxisAcsCtrler": {
            "maxVersion": 1,
            "minVersion": 1,
            "path": "entry.cgi",
            "requestFormat": "JSON"
        },
        "SYNO.SurveillanceStation.AxisAcsCtrler.Search": {
            "maxVersion": 1,
            "minVersion": 1,
            "path": "entry.cgi",
            "requestFormat": "JSON"
        },
        "SYNO.SurveillanceStation.CMS": {
            "maxVersion": 1,
            "minVersion": 1,
            "path": "entry.cgi",
            "requestFormat": "JSON"
        },
        "SYNO.SurveillanceStation.CMS.GetDsStatus": {
            "maxVersion": 1,
            "minVersion": 1,
            "path": "entry.cgi",
            "requestFormat": "JSON"
        },
        "SYNO.SurveillanceStation.CMS.SlavedsWizard": {
            "maxVersion": 1,
            "minVersion": 1,
            "path": "entry.cgi",
            "requestFormat": "JSON"
        },
        "SYNO.SurveillanceStation.Camera": {
            "maxVersion": 8,
            "minVersion": 1,
            "path": "entry.cgi",
            "requestFormat": "JSON"
        },
        "SYNO.SurveillanceStation.Camera.Event": {
            "maxVersion": 1,
            "minVersion": 1,
            "path": "entry.cgi",
            "requestFormat": "JSON"
        },
        "SYNO.SurveillanceStation.Camera.Group": {
            "maxVersion": 1,
            "minVersion": 1,
            "path": "entry.cgi",
            "requestFormat": "JSON"
        },
        "SYNO.SurveillanceStation.Camera.Import": {
            "maxVersion": 1,
            "minVersion": 1,
            "path": "entry.cgi",
            "requestFormat": "JSON"
        },
        "SYNO.SurveillanceStation.Camera.Wizard": {
            "maxVersion": 1,
            "minVersion": 1,
            "path": "entry.cgi",
            "requestFormat": "JSON"
        },
        "SYNO.SurveillanceStation.Device": {
            "maxVersion": 2,
            "minVersion": 1,
            "path": "SurveillanceStation/device.cgi"
        },
        "SYNO.SurveillanceStation.DigitalOutput": {
            "maxVersion": 1,
            "minVersion": 1,
            "path": "entry.cgi",
            "requestFormat": "JSON"
        },
        "SYNO.SurveillanceStation.Emap": {
            "maxVersion": 1,
            "minVersion": 1,
            "path": "SurveillanceStation/emap.cgi"
        },
        "SYNO.SurveillanceStation.Event": {
            "maxVersion": 4,
            "minVersion": 1,
            "path": "entry.cgi",
            "requestFormat": "JSON"
        },
        "SYNO.SurveillanceStation.Event.Export": {
            "maxVersion": 1,
            "minVersion": 1,
            "path": "entry.cgi",
            "requestFormat": "JSON"
        },
        "SYNO.SurveillanceStation.Event.Mount": {
            "maxVersion": 1,
            "minVersion": 1,
            "path": "entry.cgi",
            "requestFormat": "JSON"
        },
        "SYNO.SurveillanceStation.ExternalEvent": {
            "maxVersion": 1,
            "minVersion": 1,
            "path": "entry.cgi",
            "requestFormat": "JSON"
        },
        "SYNO.SurveillanceStation.ExternalRecording": {
            "maxVersion": 2,
            "minVersion": 1,
            "path": "entry.cgi",
            "requestFormat": "JSON"
        },
        "SYNO.SurveillanceStation.Info": {
            "maxVersion": 5,
            "minVersion": 1,
            "path": "entry.cgi",
            "requestFormat": "JSON"
        },
        "SYNO.SurveillanceStation.License": {
            "maxVersion": 1,
            "minVersion": 1,
            "path": "entry.cgi",
            "requestFormat": "JSON"
        },
        "SYNO.SurveillanceStation.Log": {
            "maxVersion": 1,
            "minVersion": 1,
            "path": "entry.cgi",
            "requestFormat": "JSON"
        },
        "SYNO.SurveillanceStation.Notification": {
            "maxVersion": 2,
            "minVersion": 1,
            "path": "entry.cgi",
            "requestFormat": "JSON"
        },
        "SYNO.SurveillanceStation.Notification.Email": {
            "maxVersion": 1,
            "minVersion": 1,
            "path": "entry.cgi",
            "requestFormat": "JSON"
        },
        "SYNO.SurveillanceStation.Notification.Filter": {
            "maxVersion": 1,
            "minVersion": 1,
            "path": "entry.cgi",
            "requestFormat": "JSON"
        },
        "SYNO.SurveillanceStation.Notification.PushService": {
            "maxVersion": 1,
            "minVersion": 1,
            "path": "entry.cgi",
            "requestFormat": "JSON"
        },
        "SYNO.SurveillanceStation.Notification.SMS": {
            "maxVersion": 1,
            "minVersion": 1,
            "path": "entry.cgi",
            "requestFormat": "JSON"
        },
        "SYNO.SurveillanceStation.Notification.SMS.ServiceProvider": {
            "maxVersion": 1,
            "minVersion": 1,
            "path": "entry.cgi",
            "requestFormat": "JSON"
        },
        "SYNO.SurveillanceStation.Notification.Schedule": {
            "maxVersion": 1,
            "minVersion": 1,
            "path": "entry.cgi",
            "requestFormat": "JSON"
        },
        "SYNO.SurveillanceStation.PTZ": {
            "maxVersion": 3,
            "minVersion": 1,
            "path": "entry.cgi",
            "requestFormat": "JSON"
        },
        "SYNO.SurveillanceStation.PersonalSettings.Image": {
            "maxVersion": 1,
            "minVersion": 1,
            "path": "entry.cgi",
            "requestFormat": "JSON"
        },
        "SYNO.SurveillanceStation.Share": {
            "maxVersion": 1,
            "minVersion": 1,
            "path": "entry.cgi",
            "requestFormat": "JSON"
        },
        "SYNO.SurveillanceStation.SnapShot": {
            "maxVersion": 1,
            "minVersion": 1,
            "path": "entry.cgi",
            "requestFormat": "JSON"
        },
        "SYNO.SurveillanceStation.Stream": {
            "maxVersion": 1,
            "minVersion": 1,
            "path": "entry.cgi",
            "requestFormat": "JSON"
        },
        "SYNO.SurveillanceStation.Streaming": {
            "maxVersion": 2,
            "minVersion": 1,
            "path": "SurveillanceStation/streaming.cgi"
        },
        "SYNO.SurveillanceStation.TaskQueue": {
            "maxVersion": 1,
            "minVersion": 1,
            "path": "entry.cgi",
            "requestFormat": "JSON"
        },
        "SYNO.SurveillanceStation.VideoStream": {
            "maxVersion": 1,
            "minVersion": 1,
            "path": "SurveillanceStation/videoStreaming.cgi"
        },
        "SYNO.SurveillanceStation.VisualStation": {
            "maxVersion": 1,
            "minVersion": 1,
            "path": "entry.cgi",
            "requestFormat": "JSON"
        },
        "SYNO.SurveillanceStation.VisualStation.Layout": {
            "maxVersion": 1,
            "minVersion": 1,
            "path": "entry.cgi",
            "requestFormat": "JSON"
        },
        "SYNO.SurveillanceStation.VisualStation.Search": {
            "maxVersion": 1,
            "minVersion": 1,
            "path": "entry.cgi",
            "requestFormat": "JSON"
        },
        "SYNO.VideoController.Device": {
            "maxVersion": 1,
            "minVersion": 1,
            "path": "VideoController/device.cgi"
        },
        "SYNO.VideoController.Password": {
            "maxVersion": 1,
            "minVersion": 1,
            "path": "VideoController/password.cgi"
        },
        "SYNO.VideoController.Playback": {
            "maxVersion": 2,
            "minVersion": 1,
            "path": "VideoController/playback.cgi"
        },
        "SYNO.VideoController.Volume": {
            "maxVersion": 1,
            "minVersion": 1,
            "path": "VideoController/volume.cgi"
        },
        "SYNO.VideoStataion.Poster": {
            "maxVersion": 1,
            "minVersion": 1,
            "path": "VideoStation/poster.cgi"
        },
        "SYNO.VideoStation.AudioTrack": {
            "maxVersion": 1,
            "minVersion": 1,
            "path": "VideoStation/audiotrack.cgi"
        },
        "SYNO.VideoStation.Collection": {
            "maxVersion": 2,
            "minVersion": 1,
            "path": "VideoStation/collection.cgi"
        },
        "SYNO.VideoStation.Folder": {
            "maxVersion": 2,
            "minVersion": 1,
            "path": "VideoStation/folder.cgi"
        },
        "SYNO.VideoStation.HomeVideo": {
            "maxVersion": 2,
            "minVersion": 1,
            "path": "VideoStation/homevideo.cgi"
        },
        "SYNO.VideoStation.Info": {
            "maxVersion": 1,
            "minVersion": 1,
            "path": "VideoStation/info.cgi"
        },
        "SYNO.VideoStation.Library": {
            "maxVersion": 1,
            "minVersion": 1,
            "path": "VideoStation/library.cgi"
        },
        "SYNO.VideoStation.Metadata": {
            "maxVersion": 2,
            "minVersion": 1,
            "path": "VideoStation/metadata.cgi"
        },
        "SYNO.VideoStation.Movie": {
            "maxVersion": 2,
            "minVersion": 1,
            "path": "VideoStation/movie.cgi"
        },
        "SYNO.VideoStation.PluginSearch": {
            "maxVersion": 1,
            "minVersion": 1,
            "path": "VideoStation/pluginsearch.cgi"
        },
        "SYNO.VideoStation.Poster": {
            "maxVersion": 1,
            "minVersion": 1,
            "path": "VideoStation/poster.cgi"
        },
        "SYNO.VideoStation.Rating": {
            "maxVersion": 1,
            "minVersion": 1,
            "path": "VideoStation/rater.cgi"
        },
        "SYNO.VideoStation.Sharing": {
            "maxVersion": 1,
            "minVersion": 1,
            "path": "VideoStation/sharing.cgi"
        },
        "SYNO.VideoStation.Streaming": {
            "maxVersion": 1,
            "minVersion": 1,
            "path": "VideoStation/vtestreaming.cgi"
        },
        "SYNO.VideoStation.Subtitle": {
            "maxVersion": 3,
            "minVersion": 1,
            "path": "VideoStation/subtitle.cgi"
        },
        "SYNO.VideoStation.TVRecording": {
            "maxVersion": 2,
            "minVersion": 1,
            "path": "VideoStation/tvrecord.cgi"
        },
        "SYNO.VideoStation.TVShow": {
            "maxVersion": 2,
            "minVersion": 1,
            "path": "VideoStation/tvshow.cgi"
        },
        "SYNO.VideoStation.TVShowEpisode": {
            "maxVersion": 2,
            "minVersion": 1,
            "path": "VideoStation/tvshow_episode.cgi"
        },
        "SYNO.VideoStation.Video": {
            "maxVersion": 1,
            "minVersion": 1,
            "path": "VideoStation/video.cgi"
        },
        "SYNO.VideoStation.WatchStatus": {
            "maxVersion": 1,
            "minVersion": 1,
            "path": "VideoStation/watchstatus.cgi"
        }
    },
    "success": true
}

Problème, on a les API, ok, on a les chemins, ok.... mais comment les utiliser ?

  • Retrouver les paramères des API

Pour se faire, pas d'autre choix que de se connecter en SSH.

Par exemple, pour retrouver les paramètres de l'API SYNO.SurveillanceStation.Camera, faites ceci :

cd /var/packages/SurveillanceStation/target/webapi
vi Camera/conf/SYNO.SurveillanceStation.Camera.lib 

Vous aurez une ligne au format JSON.

{"SYNO.SurveillanceStation.Camera": {"allowUser": ["admin.local", "admin.domain", "admin.ldap", "normal.local", "normal.domain", "normal.ldap"], "appPriv": "SYNO.SDS.SurveillanceStation", "authLevel": 2, "lib": "/var/packages/SurveillanceStation/target/webapi/Camera/src/SYNO.SurveillanceStation.Camera.so", "maxVersion": 8, "methods": {"1": [{"List": {"allowDemo": true}}, {"GetSnapshot": {"allowDemo": true}}, {"ListGroup": {"allowDemo": true}}, {"Listgroup": {"allowDemo": true}}, {"GetInfo": {"allowDemo": true}}, {"GetCapability": {"allowDemo": true}}], "2": [{"List": {"allowDemo": true}}, {"GetSnapshot": {"allowDemo": true}}, {"ListGroup": {"allowDemo": true}}, {"Listgroup": {"allowDemo": true}}, {"GetInfo": {"allowDemo": true}}, {"GetCapability": {"allowDemo": tr.............

Nous voyons ici les méthodes autorisées par l'API et les différentes versions de celle-ci (8 en tout...).

Avec ceci, et la documentation, il est alors possible d'interroger et d'interagir avec les packets Synology et le NAS.

  • Exemple

Voici un exemple tout bête : Afficher un snapshot et l'état des Caméras de surveillance Station.

Tout le détail est dans le code ci-dessous :

<?php
    //DSM Server Address with port
    $server = "https://www.mondomaine.fr:IPDSM";
    //Authorized user login
    $login = "login";
    //Authorized user password
    $pass = "pass";

    /* API VERSIONS */
    //SYNO.API.Auth
    $vAuth = 2;
    //SYNO.SurveillanceStation.Camera
    $vCamera = 2;

    //Get SYNO.API.Auth Path (recommended by Synology for further update)
    $json = file_get_contents($server.'/webapi/query.cgi?api=SYNO.API.Info&method=Query&version=1&query=SYNO.API.Auth');
    $obj = json_decode($json);
    $path = $obj->data->{'SYNO.API.Auth'}->path;

    //Login and creating SID
    $json = file_get_contents($server.'/webapi/'.$path.'?api=SYNO.API.Auth&method=Login&version='.$vAuth.'&account='.$login.'&passwd='.$pass.'&session=SurveillanceStation&format=sid');
    $obj = json_decode($json);
    if($obj->success != "true"){
    	echo "error";
    	exit();
    }else{
    	//authentification successful
    	$sid = $obj->data->sid;
    	echo '<p>'.$sid.'</p>';
        
        //Get SYNO.SurveillanceStation.Camera (recommended by Synology for further update)
        $json = file_get_contents($server.'/webapi/query.cgi?api=SYNO.API.Info&method=Query&version=1&query=SYNO.SurveillanceStation.Camera');
        $obj = json_decode($json);
        $path = $obj->data->{'SYNO.SurveillanceStation.Camera'}->path;
        
    	//list of known cams 
    	$json = file_get_contents($server.'/webapi/'.$path.'?api=SYNO.SurveillanceStation.Camera&version='.$vCamera.'&method=List&_sid='.$sid);
    	$obj = json_decode($json);
    	
        foreach($obj->data->cameras as $cam){
    		$id_cam = $cam->id;
            echo "<p>Cam " . $id_cam . " detected</p>";
            //check if cam is connected
            if(!$cam->status) {
    			//check if cam is activated and not recording
        		if($cam->enabled && !$cam->recStatus) {
                    //showing a snapshot of the camera
                    echo "<img src='".$server."/webapi/".$path."?api=SYNO.SurveillanceStation.Camera&version=1&method=GetSnapshot&preview=true&camStm=1&cameraId=".$id_cam."&_sid=".$sid."' alt='limage toto' width='320' height='240'>";
        		}
        		else{
        			echo "<p>Cam " . $id_cam . " skipped</p>";
        		}
    		}else{
    			echo "<p>Cam " . $id_cam . " deconnected</p>";
    		}
    	}
    }
?>

Ne pas oublier de Kill la session après le chargement :

        //Get SYNO.API.Auth Path (recommended by Synology for further update)
        $json = file_get_contents($server.'/webapi/query.cgi?api=SYNO.API.Info&method=Query&version=1&query=SYNO.API.Auth');
        $obj = json_decode($json);
        $path = $obj->data->{'SYNO.API.Auth'}->path;
        
        //Logout and destroying SID
        $json = file_get_contents($server.'/webapi/'.$path.'?api=SYNO.API.Auth&method=Logout&version='.$vAuth.'&session=SurveillanceStation&_sid='.$sid);
        $obj = json_decode($json);
  • Et apres ?

Après, vous pouvez étudier les API, et interagir avec votre NAS à l'aide de scripts pour intégrer sous forme de Plugin php des fonctionnalités directement dans votre outil de domotique.

Les interactions peuvent être très larges, que ce soit du monitoring, de l'automatisation, des fonctionnalités...

Personnellement, je vais essayer de faire mes propres plugins PHP. Y'a du boulot. :)

Modifié par Terrano

Partager ce message


Lien à poster
Partager sur d’autres sites

Bonjour,

Je suis très intéressé par tes scripts! Je viens d'essayer le tiens pour le snapshot ça fonctionne. Mais j'essaie de d'activer et désactiver les caméras mais sans succès...

J'essaie avec cette url mais sans succès.

GET /webapi/SurveillanceStation/camera.cgi? api=SYNO.SurveillanceStation.Camera&method=Enable&version=3&cameraIds=2,10

J'ai copier/coller ton script et inséré les lignes

$json = file_get_contents($server.'/webapi/'.$path.'?api=SYNO.SurveillanceStation.Camera&method=Disable&version='.$vCamera.'&cameraIds='.$id_cam.'&_sid='.$sid);

$json = file_get_contents($server.'/webapi/'.$path.'?api=SYNO.SurveillanceStation.Camera&method=Enable&version='.$vCamera.'&cameraIds='.$id_cam.'&_sid='.$sid);

Mais rien ne se passe je ne vois rien changer sous SurveillanceStation.

Pour information j'ai la dernière mise à jour et a priori les API auraient changé mais je ne trouve pas les dernières versions.

Si tu as des astuces je suis preneur!

Merci !

Partager ce message


Lien à poster
Partager sur d’autres sites

$json = file_get_contents($server.'/webapi/'.$path.'?api=SYNO.SurveillanceStation.Camera&method=Disable&version='.$vCamera.'&cameraIds='.$id_cam.'&_sid='.$sid);

$json = file_get_contents($server.'/webapi/'.$path.'?api=SYNO.SurveillanceStation.Camera&method=Enable&version='.$vCamera.'&cameraIds='.$id_cam.'&_sid='.$sid);

Essaie avec cameraId et pas cameraIds

Partager ce message


Lien à poster
Partager sur d’autres sites

la doc officielle http://ukdl.synology.com/download/Document/DeveloperGuide/Surveillance_Station_Web_API.pdf

specifie ceci :

Request
Parameter Value    Description                                                Availability
cameraIds <string> The list of <CAMERA_ID> to be queried concatenated by “,”. 3 and onward

donc bien sur, ne suis pas la doc officielle enlève le S, suis mdr là sur ses fameux conseils

Partager ce message


Lien à poster
Partager sur d’autres sites

Franchement, le genre de commentaire completement inutile qui montre le peu de considérations que tu as des autres....

Faudrait commencer à lire mon post :

Tout d'abord, la documentation n'étant pas à jour avec Surveillance Station 7, comment trouver les informations sur ces API à jour ?

Ensuite, si mes réponses ne te conviennent pas, t'es pas obligé de répondre, où alors, je ne posterais plus rien pour aider les autres vu que ca à l'air de te géner...


Vaut mieux essayer d'aider et de se tromper que de ne rien faire, chacun sa philosophie.

Partager ce message


Lien à poster
Partager sur d’autres sites

99% de la doc est à jour et j'ai donné le lien

seul quelque api nouvelle n'y sont pas reférencée, ce qui n'est pas le cas l'api incriminée, activé une camera est possible depuis ... (le début probablement :P)

evidemment, + simple de lancé de fausse info que d'ouvrir un pdf pour vérifié pour certains

bref : RTFM

Modifié par Gaetan Cambier

Partager ce message


Lien à poster
Partager sur d’autres sites

La doc à jour ?????????????

T'es au comble du ridicule....

Dans la doc, SYNO.SurveillanceStation.Camera fait référence à :

GET /webapi/SurveillanceStation/camera.cgi? api=SYNO.SurveillanceStation.Camera&method=GetSnapshot&version=1&cameraId=10

Or, en vrai avec SurveillanceStation 7.0, c'est :

"SYNO.SurveillanceStation.Camera": {
"maxVersion": 8,
"minVersion": 1,
"path": "entry.cgi",
"requestFormat": "JSON"
},

Oh mais si pour toi c'est à jour..... Je m'incline, faudrait pas que j'offense Dieu... :rolleyes:

Partager ce message


Lien à poster
Partager sur d’autres sites

l'url de l'api n'a aucune importance si tu avait lu les première page de la doc :

URL path Surveillance Station Web API does not preserve a constant URL for every API. Instead, 3rd party applications need to use the command SYNO.API.Info to retrieve every API’s URL path. SYNO.API.Info is the only API with constant URL, and it does not need authorization, its path is /webapi/query.cgi

c'était à la page 6

donc, si c'est programmé correctement, ca n'a aucune incidence, on etait prévenu de pas le coder en dur

et pour en revenir au problème principal, car je suis là avant tout pour ca :

le + simple et d'aller detecter les caméra pour connaitre leur id (chapitre 2.3.4.1 de la doc pour ceux qui n'aime pas lire :P)

Modifié par Gaetan Cambier

Partager ce message


Lien à poster
Partager sur d’autres sites

Partager ce message


Lien à poster
Partager sur d’autres sites

T'admettra même pas que la doc n'est pas a jour.... Tu vas détourner encore la conversation et même pas t'excuser... T'es pathétique.


Et en plus tu modifies tes posts pour cacher ta bétise... Surtout que ce que tu dis, mon script php en tient compte.

Partager ce message


Lien à poster
Partager sur d’autres sites

Essaie avec cameraId et pas cameraIds

Attention, les méthodes Enable et Disable ne sont arrivées qu'à partir de la version 3 de l'API.

En ce qui concerne cameraIds et cameraId, effectivement les deux fonctionnent.

Part contre, quand j'essaie la méthode Disable j'obtient un code erreur 117 dont je ne sais pas à quoi il correspond.

Je continue à regarder.

Edit : En fait, c'est simple, j'ai pas les droits avec mon compte d'activer ou désactiver car ce n'est pas un compte Admin d'où l'erreur 117. :)

Modifié par Terrano

Partager ce message


Lien à poster
Partager sur d’autres sites

...

En ce qui concerne cameraIds et cameraId, effectivement les deux fonctionnent.

...

c'est entièrement FAUX seul "cameraIds" pour la methode enable et disable de l'api SYNO.SurveillanceStation.Camera est accepté

utiliser un paramètres inexistant provoque la classique erreur 401

Partager ce message


Lien à poster
Partager sur d’autres sites

c'est entièrement FAUX seul "cameraIds" pour la methode enable et disable de l'api SYNO.SurveillanceStation.Camera est accepté

utiliser un paramètres inexistant provoque la classique erreur 401

C'est pas entièrement faux, mais seulement faux pour Enable et Disable de cette API. :)

J'attends tes excuses concernant la documentation pas à jour.... J'attends.... B)

Partager ce message


Lien à poster
Partager sur d’autres sites

Bonjour Messieurs,

Merci pour vos retours. Malheureusement rien de concluant pour ma part... Avez-vous réussi à le tester chez vous?

Terrano je crois que c'est toi qui avait fait le script en python ? Je l'avais testé aussi mais j'avais un problème de droit, je ne pouvais pas activer désactiver la caméra...

En fait le but ultime est d'utiliser les url, c'est d'activer et désactiver la caméra en partant et en rentrant de chez moi ...

Merci d'avance pour votre aide! ;)

Partager ce message


Lien à poster
Partager sur d’autres sites

Bonsoir,

Désolé pour les temps de réponses .... OK Gaetan excuses-moi.

Bon du coup c'est bon ;)! Etant novice complet en php plus surement 2/3 de paires de moufles ça ne m'a pas aidé! Mais là c'est tout bon ça fonctionne nickel !

J'ai rien inventé ... Merci Terrano pour ton script php ! Et merci Gaetan pour ton aide !

Je mets mon petit bout de code, j'ai juste modifié la boucle foreach de ton code et j'active et désactive par l'url.

Merci à tous pour tout !!!

foreach($obj->data->cameras as $cam)
		{
    		$id_cam = $cam->id;
            echo "<p>Cam " . $id_cam . " detected</p>";
            if($_GET['cam'] == "on") 
			{
        		if($cam->enabled) 
				{
					echo "<p>Cam " . $id_cam . " deja enable</p>";
        		}
        		else
				{
					$json = file_get_contents($server.'/webapi/'.$path.'?api=SYNO.SurveillanceStation.Camera&method=Enable&version='.$vCamera.'&cameraIds='.$id_cam.'&_sid='.$sid);
					echo "<p>Cam " . $id_cam . " enabled</p>";
        		}
    		}
			if($_GET['cam'] == "off")
			{
				if(!$cam->enabled) 
				{
					echo "<p>Cam " . $id_cam . " deja disable</p>";
				}
				else
				{
					$json = file_get_contents($server.'/webapi/'.$path.'?api=SYNO.SurveillanceStation.Camera&method=Disable&version='.$vCamera.'&cameraIds='.$id_cam.'&_sid='.$sid);
					echo "<p>Cam " . $id_cam . " disabled</p>";
				}
    		}
    	}

Partager ce message


Lien à poster
Partager sur d’autres sites

@Terrano,
1) merci pour ce post !  
2) comment peut-on retrouver l'information sur une API particulière ?
tu as donné l'exemple pour surveillance station (ok), mais je cherche une API qui pourrait me donner la MAC address de mon Syno. Je pensais à "SYNO.Core.Network.MACClone" par exmple, mais où (dans quel dir) trouver les infos nécessaires ?

Merci de votre aide

Partager ce message


Lien à poster
Partager sur d’autres sites

Je ne pense pas qu'il y ait une API chez Synology qui expose l'adresse Mac.

Par contre tu peux la récupérer via SNMP :

> snmpwalk -v 2c -c public -O 0v 127.0.0.1 iso.org.dod.internet.mgmt.mib-2.interfaces.ifTable.ifEntry.ifPhysAddress.2

 

Partager ce message


Lien à poster
Partager sur d’autres sites

bonjour tout le monde.

C'est bien sympa cette histoire avec Surveillance station, mais est-ce que que quelqu'un a test avec un autre package ou tout simplement les données du NAS (HDD / activité) etc ... ?

Perso je galère, impossible d'avoir les commandes pour par exemple pouvoir monitorer le nas sur les hdd / températures etc.

Si vous avez des news n'hésitez pas ;-)

 

par exemple, ou trouver les infos des fichiers pour les item suivants ?

SYNO.Core.Hardware.FanSpeed
SYNO.Core.Storage.Volume
SYNO.Core.System
SYNO.Core.System.Utilization
SYNO.DSM.Info

avec la méthode suivante :

Par exemple, pour retrouver les paramètres de l'API SYNO.SurveillanceStation.Camera, faites ceci :

cd /var/packages/SurveillanceStation/target/webapi
vi Camera/conf/SYNO.SurveillanceStation.Camera.lib 
Modifié par fredolamasse

Partager ce message


Lien à poster
Partager sur d’autres sites

Bonjour à tous,

Je suis dans le même cas de figure que fredolamasse, je voudrais savoir grâce à l'API l'état des backup ( Success, Error). J'ai alors suivi le mini-tutoriel de Terrano. J'arrive bel et bien à récupérer certaines information avec l'api SYNO.Backup.Task en utilisant la méthode List comme le nom de la tache ou l'id. Cependant, l’état des backup n'est pas exposé par cette API. J'ai donc essayé d'utiliser les autres API telles que SYNO.Backup.Task.Data, mais je me retrouve face à un mur, en effet, je ne trouve aucune information par rapport aux méthodes supportées pour une  API spécifique. J'ai beau essayé de me rendre un dossier tel que terrano l'a montré :

cd /var/packages/nom_api/target/webapi

 cependant, ce dossier n'existe pas.

Existe-t-il un moyen de récupérer la liste des méthodes supportées pour les autre API et pas seulement la surveillance station ? 
Gaetan vous préconisez de lire la documentation sur les API, dans mes recherches je n'ai trouvé que des informations dans  Synology Download Station Official API (https://global.download.synology.com/download/Document/DeveloperGuide/Synology_Download_Station_Web_API.pdf). Bien que le début du document comporte une partie générique permettant de comprendre les bases (authentification etc...) la suite du document se concentre exclusivement sur l'API Download Station. Connaîtriez-vous alors d'autre documentations  ?

 

Merci d'avance.

Partager ce message


Lien à poster
Partager sur d’autres sites

merci gaetan.cambier pour cette réponse hautement constructive.

Si je pose la question c'est que je n'ai trouvé aucune autre API que celle de video station qui m'est totalement inutile. étant donné que ce n'est pas l'application dont je souhaite contrôler l'état.

Mais merci de ton aide si précieuse.

Effectivement Dazmi94 je pense qu'on est dans la même logique.

Partager ce message


Lien à poster
Partager sur d’autres sites

Créer un compte ou se connecter pour commenter

Vous devez être membre afin de pouvoir déposer un commentaire

Créer un compte

Créez un compte sur notre communauté. C’est facile !

Créer un nouveau compte

Se connecter

Vous avez déjà un compte ? Connectez-vous ici.

Connectez-vous maintenant