Documentation

API Reference

Huntarr's REST API for automation and integration.

Overview

  • Huntarr exposes a REST API for programmatic access
  • All endpoints require authentication (session cookie or API key)
  • Responses are in JSON format

Authentication

All API requests must include authentication:

  • Session Cookie: Automatically set after login via the web UI
  • API Key: Pass as a query parameter ?apikey=YOUR_KEY or header X-Api-Key

Core Endpoints

Stats

GET /api/stats

Returns dashboard statistics for all connected apps.

Settings

GET /api/settings/general
POST /api/settings/general

Get or update general settings.

App Instances

GET /api/instances/{app_type}
POST /api/instances/{app_type}
DELETE /api/instances/{app_type}/{instance_id}

Manage app instances. app_type can be: sonarr, radarr, lidarr, readarr, whisparr, prowlarr, swaparr.

Schedules

GET /api/schedules
POST /api/schedules
PUT /api/schedules/{id}
DELETE /api/schedules/{id}

Manage hunt schedules.

Notifications

GET /api/notifications/connections
POST /api/notifications/connections
PUT /api/notifications/connections/{id}
DELETE /api/notifications/connections/{id}
POST /api/notifications/test

Manage notification connections and send test notifications.

Logs

GET /api/logs?app_type=sonarr&level=ERROR&limit=100
GET /api/logs/stats
POST /api/logs/cleanup
POST /api/logs/all/clear

View logs, get statistics, and manage log data.

Backup

GET /api/backup/list
POST /api/backup/create
POST /api/backup/restore
POST /api/backup/upload
DELETE /api/backup/{filename}

Manage backups.

Movie Hunt API

GET /api/movie-hunt/movies
GET /api/movie-hunt/movies/{id}
POST /api/movie-hunt/movies
DELETE /api/movie-hunt/movies/{id}
POST /api/movie-hunt/search
GET /api/movie-hunt/history?tmdb_id={id}

Manage Movie Hunt library and trigger searches.

Response Format

All responses follow this structure:

{
    "success": true,
    "data": { ... },
    "message": "Operation completed"
}

Error responses:

{
    "success": false,
    "error": "Description of what went wrong"
}

Rate Limiting

The API does not enforce rate limits internally, but be mindful of:

  • *arr app API rate limits when triggering searches
  • Indexer rate limits when searches are processed
  • Database performance with very frequent requests
Polling Frequency

The API is intended for automation and integration. Avoid polling endpoints more frequently than every 5 seconds.