Skip to content

tingtingths/synoapi

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

58 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

SynoAPI

Fully modeled Synology API client in dart.

Usage

E.g. Get and create tasks on Download Station.

import 'package:synoapi/synoapi.dart';

main() async {
  var context = api.APIContext('myds.com', port: 5000);
  var dsApi = api.DownloadStationAPI(context);

  var authOk = await context.authApp(api.Syno.DownloadStation.name, 'user', 'password');

  // list tasks from Download Station
  dsApi.task.list().then((response) {
    var tasks = response.data?.tasks ?? [];
    tasks.forEach((task) {
      print('Task: ${task.title}');
    });
  });
  
  // create task from magnet uri
  dsApi.task.create(uris: ['magnet://abcdefg']).then((response) {
    print('Task creation ${response.success ? 'success' : 'failed'}');
  });
}

Limitations

  • Only Download Station API provided currently.

References

About

Dart Synology API wrapper

Topics

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages