demorfi/synox-web-api

v1.3.0 2024-03-11 20:18 UTC

This package is auto-updated.

Last update: 2024-05-13 23:39:59 UTC


README

Implementation of the API interface for SynoX Web

Composer Installation

composer require demorfi/synox-web-api

Basic Usage

$api = new \SynoxWebApi\Api('https://synox-web.domain/api/');

Search Usage

$search = $api->search();
$search->makeFilters()->addCategory('video')->addPackage('tpb'); // optional make filters
$profile = null; // optional profile name 
foreach ($search->create('Silent Hill', $profile)->run() as $item) {
    printf("Title: %s; Size: %s\n", $item->getTitle(), $item->getWeight());
    // download only this torrent file
    if (stripos($item->getTitle(), 'Silent Hill 2') !== false) {
        // $item->getFetchId(); fetched id for download
        file_put_contents('file.torrent', $item->fetch()->download());
        return;
    }
}

Download Usage

$fetched = $api->content()->fetch('tpb', 'fetch id');
//$fetched->downloadUrn(); only URN path to torrent file
file_put_contents('file.torrent', $fetched->download());

Change Package State

$api->packages()->changeState('tpb', true); // enable this package

Reporting issues

If you have any issues with the application please open an issue on GitHub.

License

SynoX Web is licensed under the MIT License.