Integrations
Integrations can be used to continuously update your media progress or inform external services about changes. They can be of following types:
- Sink: An external client publishes progress updates to the Ryot server.
- Yank: Progress data is downloaded from an externally running server at a periodic interval.
- Push: Ryot sends data to an external service when an event occurs.
If an integration fails more than 5 times in a row, it will be automatically paused. This behavior can be disabled from the integration's settings.
Sink integrations
These work via webhooks wherein an external service can inform Ryot about a change. All webhook URLs follow this format:
https://<instance_url>/backend/_i/<slug>
https://app.ryot.io/backend/_i/int_a6cGGXEq6KOI # exampleWARNING
Keep your webhook urls private to prevent abuse.
- Ryot Browser Extension - Automatically scrobble media from streaming services PRO
- Jellyfin Sink - Automatically add new Jellyfin movie and show plays
- Emby - Automatically add new Emby movie and show plays
- Plex Sink - Automatically add Plex show and movie plays
- Kodi - Sync current movie or TV show you are watching
- Generic Json - Import data using generic JSON format
Yank integrations
You can configure the interval at which the data is fetched from the external source using the SCHEDULER_FREQUENT_CRON_JOBS_EVERY_MINUTES environment variable. Defaults to 5.
If you have enabled the Sync to owned collection option, the integration will also run at night to add all media in your instance to your "Owned" collection.
- Audiobookshelf - Sync media from Audiobookshelf
- Komga - Sync media from Komga
- Plex Yank - Add all media in your libraries to "Owned" collection
- Youtube Music - Sync music from Youtube Music PRO
Push integrations
You can enable the following push integrations:
- Radarr - Send data to Radarr when items are added to collection
- Sonarr - Send data to Sonarr when items are added to collection
- Jellyfin Push - Mark items as watched in Jellyfin PRO