Scheduling in Huntarr.io

Overview

Huntarr's scheduling system allows you to automate routine tasks for your media management applications on a recurring schedule. Instead of manually triggering actions like searching for missing media or upgrading content quality, you can set up automated schedules to handle these tasks at specific times and days.

Key Features

  • App-Specific Scheduling - Create schedules for specific apps (Sonarr, Radarr, Lidarr, Readarr, etc.)
  • Flexible Time Options - Schedule tasks for specific times and days of the week
  • Multiple Actions - Configure various actions like searching for missing content, upgrading content quality, etc.
  • Persistent Storage - All schedules are stored on the server and persist across container restarts
  • Execution History - Track when scheduled actions were last executed and their status

How Scheduling Works

Huntarr's scheduling system runs in the background, checking every minute to see if any scheduled actions need to be executed. When you configure a schedule, you specify:

  • App Type - Which app this schedule applies to (global, Sonarr, Radarr, etc.)
  • Action - What action to perform (search missing, upgrade quality, etc.)
  • Time - When to run the action (specific hour and minute)
  • Days - Which days of the week to run the action
  • App Instance - For multi-instance setups, which instance to target

The scheduling engine validates the timing against the current system time and executes the appropriate action when a schedule's criteria are met. All execution results are logged for monitoring.

Creating a Schedule

  1. Navigate to the Scheduling Page

    From the Huntarr dashboard, click on the "Scheduling" option in the sidebar navigation.

  2. Click "Add Schedule"

    At the top of the scheduling interface, click the "+ Add Schedule" button.

  3. Configure Your Schedule

    In the form that appears, set up your schedule with the following details:

    • App Type: Select the app this schedule applies to (Sonarr, Radarr, etc.)
    • Action: Choose what action to perform
    • Time: Set the hour and minute for execution
    • Days: Select which days of the week this should run
    • App Instance: For multi-instance setups, choose which instance to use
    • Enabled: Toggle whether this schedule is active
  4. Save Your Schedule

    Click "Save" to create the schedule. It will be stored in Huntarr's persistent storage.

Schedule Data Structure

Huntarr stores schedule information in a JSON format. Each schedule includes:

{
  "id": "unique-schedule-id",
  "action": "search_missing",
  "time": "13:30",
  "days": ["monday", "wednesday", "friday"],
  "app": "Main Sonarr",
  "enabled": true,
  "appType": "sonarr"
}

These schedules are organized by app type in the storage system:

{
  "global": [ /* global schedules */ ],
  "sonarr": [ /* sonarr-specific schedules */ ],
  "radarr": [ /* radarr-specific schedules */ ],
  "lidarr": [ /* lidarr-specific schedules */ ],
  "readarr": [ /* readarr-specific schedules */ ],
  "whisparr": [ /* whisparr-specific schedules */ ],
  "eros": [ /* eros-specific schedules */ ]
}

Available Actions

Depending on the app type, different actions are available for scheduling:

App Actions Description
Sonarr search_missing Search for missing episodes
Sonarr upgrade_cutoff Upgrade episodes that haven't met quality cutoff
Radarr search_missing Search for missing movies
Radarr upgrade_cutoff Upgrade movies that haven't met quality cutoff
Lidarr search_missing Search for missing albums
Lidarr upgrade_cutoff Upgrade albums that haven't met quality cutoff
Readarr search_missing Search for missing books
Readarr upgrade_cutoff Upgrade books that haven't met quality cutoff
Global refresh_cache Refresh Huntarr's internal cache

Managing Schedules

Editing a Schedule

To edit an existing schedule, click the edit icon (pencil) next to the schedule in the list. This will open the schedule editor where you can modify any of the settings.

Enabling/Disabling Schedules

You can quickly enable or disable a schedule by toggling the switch in the "Enabled" column. Disabled schedules remain in the system but won't be executed until enabled again.

Deleting a Schedule

To remove a schedule completely, click the delete icon (trash) next to the schedule. You'll be asked to confirm before the schedule is permanently removed.

Viewing Schedule History

The scheduling page includes a history section where you can see when schedules were last executed and whether they were successful. This helps with troubleshooting and monitoring your automated tasks.

The history shows:

  • Timestamp of execution
  • Action performed
  • Target app
  • Status (success/failure)
  • Any error messages if applicable

Best Practices

  • Stagger Schedules - Avoid scheduling multiple resource-intensive tasks at the same time
  • Consider Server Load - Schedule heavy operations during off-peak hours
  • Monitor Performance - Check the history regularly to ensure schedules are executing properly
  • Start Small - Begin with a few essential schedules before adding more complex automation

Troubleshooting

Schedule Not Running

  • Verify the schedule is enabled
  • Check that the day and time settings are correct
  • Ensure the target app is properly configured and connected
  • Check the logs for any error messages

Schedule Running But Not Working

  • Verify the app API is accessible from Huntarr
  • Check if the action can be performed manually
  • Look for error messages in the schedule history
  • Ensure the app instance selected is correct