https://github.com/imatpot/overseerr-auto-request
🍿 Automatically request media in Overseerr
https://github.com/imatpot/overseerr-auto-request
cabal cabal2nix haskell overseerr
Last synced: 5 months ago
JSON representation
🍿 Automatically request media in Overseerr
- Host: GitHub
- URL: https://github.com/imatpot/overseerr-auto-request
- Owner: imatpot
- License: mit
- Created: 2025-03-10T20:20:21.000Z (10 months ago)
- Default Branch: main
- Last Pushed: 2025-03-11T11:04:58.000Z (10 months ago)
- Last Synced: 2025-03-27T08:17:53.442Z (10 months ago)
- Topics: cabal, cabal2nix, haskell, overseerr
- Language: Haskell
- Homepage:
- Size: 50.8 KB
- Stars: 3
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- Changelog: CHANGELOG.md
- License: LICENSE
Awesome Lists containing this project
README
# Overseerr Auto Request


[Overseerr](https://overseerr.dev/) is a fantastic application, which allows your friends to request movies and TV series for your [Plex Server](https://www.plex.tv/).
However, it lacks a built-in way to automatically re-request specific titles once they get denied.
This application solves that problem!
Simply configure the movies and TV shows you want to keep requesting, run the program, and let it handle the rest.
No more manual re-requesting—just set it and forget it!
Building and running comes in three-ish flavours, mentioned below accordingly.
## Build
You can build the auto requester using Cabal, Nix, and Docker.
### Cabal
If you have [Cabal](https://www.haskell.org/cabal/) installed, you can build the binary with
```
cabal build
```
### Nix
If you have [Nix](https://nixos.org) installed, you can build the derivation with
```
nix run
```
You don't even need to pull the repo to do this, just run
```
nix run github:imatpot/overseerr-auto-request
```
on your machine to build and run the auto requester.
### Docker
If you have [Docker](https://www.docker.com/) installed, you can build the image with
```
docker build -t overseerr-auto-request .
```
or
```
docker compose build
```
## Run
As with building, you can run the auto requester using Cabal, Nix, and Docker.
### Cabal
If you have [Cabal](https://www.haskell.org/cabal/) installed, you can run the auto requester with
```
cabal run
```
### Nix
If you have [Nix](https://nixos.org) installed, you can run the auto requester with
```
nix run
```
Again, use
```
nix run github:imatpot/overseerr-auto-request
```
to run the auto requester without pulling the repo.
### Docker
If you have [Docker](https://www.docker.com/) installed and you built the image, you can run the auto requester with
```
docker run overseerr-auto-request
```
or, alternatively, you can use Docker Compose:
```
docker compose up
```
You can also use the prebuilt image on [GitHub CR](https://ghcr.io/imatpot/overseerr-auto-request) with
```
docker run \
-e EMAIL="user@example.com" \
-e PASSWORD="password" \
-e OVERSEERR_URL="https://example.com" \
-e MOVIES="40016,126486" \
-e DEBOUNCE_SECONDS=300 \
ghcr.io/imatpot/overseerr-auto-request
```
## Environment Variables
The auto requester requires several environment variables to run.
Copy the `.env.schema` file to `.env` and fill in the values, or set them accordingly in your environment.
| Variable | Description | Required | Default |
| ------------------ | --------------------------------------------------------------------- | :------: | ------- |
| `EMAIL` | The email address you use to locally log in to Overseerr. | 🚩 | |
| `PASSWORD` | The password you use to locally log in to Overseerr. | 🚩 | |
| `OVERSEERR_URL` | The URL of your Overseerr instance. | 🚩 | |
| `MOVIES` | A comma-separated list of movie titles you want to keep requesting. | | |
| `TV_SHOWS` | A comma-separated list of TV show titles you want to keep requesting. | | |
| `DEBOUNCE_SECONDS` | The number of seconds to wait between request batches. | | 300 |
## Debugging
For debugging purposes, the auto requester comes with an HTTP-sink.
This sink allows you to inspect the requests your sending by redirecting them to your localhost.
Here's how to run the sink:
```
cabal run http-sink # using Cabal
nix run .#http-sink # using Nix
```
You cannot run the sink in Docker.
If you really want to run it in Docker, do yourself a favour and just run an [Nginx](https://nginx.org/) container instead.