Skip to content

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:

txt
https://<instance_url>/backend/_i/<slug>
https://app.ryot.io/backend/_i/int_a6cGGXEq6KOI # example

WARNING

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.

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