selfhost.directory

The index of self-hostable projects — ranked, categorized and served with live updates.
Own your data and stop giving it to big tech.

GitHub
searcharr logo

Self-host searcharr

v3.4.0

Telegram bot to add media to Sonarr, Radarr, and Readarr

ReleaseOpen SourceMIT
Updated6 months ago
LanguagePython
Setup difficultyModerate
Stars
304
Docker
toddrob/searcharr
Install with Docker Compose
Authentication screen showing /start password promptSearch result with buttons to add media to Sonarr/RadarrSearch result showing media already exists in Sonarr/RadarrRoot folder selection prompt when multiple folders configuredQuality profile selection prompt when multiple profiles configuredConfirmation screen after media has been added

What is searcharr?

Searcharr is a Telegram bot written in Python that bridges chat messaging with the *arr media management stack. Users authenticate with a password, then search for movies, TV series, or books using commands like /movie, /series, or /book. The bot returns results with inline buttons to view details on TVDB, IMDb, or TMDB, pick a root folder and quality profile, and add the item to the corresponding *arr instance. Admins can manage user access via the /users command. It runs as a long-lived container or Python process, stores its settings and SQLite database in a mapped data volume, and requires a Telegram bot token plus API keys and URLs for each *arr service you want to enable. The project is MIT-licensed, actively maintained, and distributed as a Docker image on Docker Hub.

Should you self-host searcharr?

searcharr scores 49/100 on selfhost.directory (how scoring works) and ranks #51 of 110 in Chat. It has 304 GitHub stars.

It shipped 1 stable release in the past year. The latest, v3.4.0, came out on 8 April 2026.

Setup is moderate: expect some configuration beyond a single command. An official Docker image is available. It is MIT-licensed and written mostly in Python.

Its closest alternative on selfhost.directory is Zulip (82/100, 26 133 stars). It scores higher overall, so compare the two before you pick. See searcharr vs Zulip side by side.

Features

  • Admin user management
  • Custom command aliases
  • External metadata links
  • Forced and selectable tags
  • Movie search and add to Radarr
  • Multi-language Support
  • Python source installation
  • Quality profile selection
  • Root folder selection
  • Series search and add to Sonarr
  • Tagging with username
  • Telegram bot interface
  • User authentication with password

searcharr README

How to install searcharr

Install searcharr with Docker Compose

version: '3.0' services: searcharr: container_name: searcharr image: toddrob/searcharr:latest volumes: - ./data:/app/data - ./logs:/app/logs environment: - TZ=America/New_York restart: unless-stopped network_mode: host

Map ./data to /app/data for settings and database, ./logs to /app/logs. Copy settings-sample.py to data/settings.py and configure before starting.

How to configure searcharr

  • radarr_add_monitoredTrueAdd movies to Radarr as monitored

    Add movies to Radarr as monitored

    values: True or False

  • radarr_allow_user_to_select_tagsTrueAllow user to select tags when adding a movie

    Allow user to select tags when adding a movie

    values: True or False

  • radarr_api_keyAPI key for Radarr

    API key for Radarr

  • radarr_enabledTrueEnable Radarr integration

    Enable Radarr integration

    values: True or False

  • radarr_min_availabilityreleasedMinimum availability for movies added to Radarr

    Minimum availability for movies added to Radarr

    values: announced, inCinemas, released

  • radarr_search_on_addTrueTell Radarr to start searching for each movie when added

    Tell Radarr to start searching for each movie when added

    values: True or False

  • radarr_tag_with_usernameTrueAdd a tag to each movie indicating which Telegram user added it

    Add a tag to each movie indicating which Telegram user added it

    values: True or False

  • radarr_urlURL to connect to Radarr instance

    URL to connect to Radarr instance

  • readarr_add_monitoredTrueAdd books to Readarr as monitored

    Add books to Readarr as monitored

    values: True or False

  • readarr_allow_user_to_select_tagsTrueAllow user to select tags when adding a book

    Allow user to select tags when adding a book

    values: True or False

  • readarr_api_keyAPI key for Readarr

    API key for Readarr

  • readarr_enabledTrueEnable Readarr integration

    Enable Readarr integration

    values: True or False

  • readarr_search_on_addTrueTell Readarr to start searching for each book when added

    Tell Readarr to start searching for each book when added

    values: True or False

  • readarr_tag_with_usernameTrueAdd a tag to each book indicating which Telegram user added it

    Add a tag to each book indicating which Telegram user added it

    values: True or False

  • readarr_urlURL to connect to Readarr instance

    URL to connect to Readarr instance

  • searcharr_admin_passwordPassword used to authenticate as admin to manage users via /start command

    Password used to authenticate as admin to manage users via /start command

  • searcharr_languageen-usLanguage code for bot messages (e.g., en-us, pt-br)

    Language code for bot messages (e.g., en-us, pt-br)

  • searcharr_passwordPassword used to authenticate as a regular user to add series/movies via /start command

    Password used to authenticate as a regular user to add series/movies via /start command

  • sonarr_add_monitoredTrueAdd series to Sonarr as monitored

    Add series to Sonarr as monitored

    values: True or False

  • sonarr_allow_user_to_select_tagsTrueAllow user to select tags when adding a series

    Allow user to select tags when adding a series

    values: True or False

  • sonarr_api_keyAPI key for Sonarr

    API key for Sonarr

  • sonarr_enabledTrueEnable Sonarr integration

    Enable Sonarr integration

    values: True or False

  • sonarr_search_on_addTrueTell Sonarr to start searching for each series when added

    Tell Sonarr to start searching for each series when added

    values: True or False

  • sonarr_season_monitor_promptFalseAllow user to monitor All, First, or Latest Season(s) when adding a series

    Allow user to monitor All, First, or Latest Season(s) when adding a series

    values: True or False

  • sonarr_tag_with_usernameTrueAdd a tag to each series indicating which Telegram user added it

    Add a tag to each series indicating which Telegram user added it

    values: True or False

  • sonarr_urlURL to connect to Sonarr instance

    URL to connect to Sonarr instance

  • tgram_tokenTelegram bot token from BotFather

    Telegram bot token from BotFather

searcharr releases & version history

More in Chat

Rate this project

Click to rate — no account needed.

0 comments

Posting as guest
Loading comments…