# Send Request media on Overseerr to your agent
Hand the extracted package to your coding agent with a concrete install brief instead of figuring it out manually.
## Fast path
- Download the package from Yavira.
- Extract it into a folder your agent can access.
- Paste one of the prompts below and point your agent at the extracted folder.
## Suggested prompts
### New install

```text
I downloaded a skill package from Yavira. Read SKILL.md from the extracted folder and install it by following the included instructions. Tell me what you changed and call out any manual steps you could not complete.
```
### Upgrade existing

```text
I downloaded an updated skill package from Yavira. Read SKILL.md from the extracted folder, compare it with my current installation, and upgrade it while preserving any custom configuration unless the package docs explicitly say otherwise. Summarize what changed and any follow-up checks I should run.
```
## Machine-readable fields
```json
{
  "schemaVersion": "1.0",
  "item": {
    "slug": "overseerr-request-media",
    "name": "Request media on Overseerr",
    "source": "tencent",
    "type": "skill",
    "category": "内容创作",
    "sourceUrl": "https://clawhub.ai/trialskid/overseerr-request-media",
    "canonicalUrl": "https://clawhub.ai/trialskid/overseerr-request-media",
    "targetPlatform": "OpenClaw"
  },
  "install": {
    "downloadUrl": "/downloads/overseerr-request-media",
    "sourceDownloadUrl": "https://wry-manatee-359.convex.site/api/v1/download?slug=overseerr-request-media",
    "sourcePlatform": "tencent",
    "targetPlatform": "OpenClaw",
    "packageFormat": "ZIP package",
    "primaryDoc": "SKILL.md",
    "includedAssets": [
      "SKILL.md"
    ],
    "downloadMode": "redirect",
    "sourceHealth": {
      "source": "tencent",
      "slug": "overseerr-request-media",
      "status": "healthy",
      "reason": "direct_download_ok",
      "recommendedAction": "download",
      "checkedAt": "2026-04-30T13:59:55.613Z",
      "expiresAt": "2026-05-07T13:59:55.613Z",
      "httpStatus": 200,
      "finalUrl": "https://wry-manatee-359.convex.site/api/v1/download?slug=overseerr-request-media",
      "contentType": "application/zip",
      "probeMethod": "head",
      "details": {
        "probeUrl": "https://wry-manatee-359.convex.site/api/v1/download?slug=overseerr-request-media",
        "contentDisposition": "attachment; filename=\"overseerr-request-media-1.0.0.zip\"",
        "redirectLocation": null,
        "bodySnippet": null,
        "slug": "overseerr-request-media"
      },
      "scope": "item",
      "summary": "Item download looks usable.",
      "detail": "Yavira can redirect you to the upstream package for this item.",
      "primaryActionLabel": "Download for OpenClaw",
      "primaryActionHref": "/downloads/overseerr-request-media"
    },
    "validation": {
      "installChecklist": [
        "Use the Yavira download entry.",
        "Review SKILL.md after the package is downloaded.",
        "Confirm the extracted package contains the expected setup assets."
      ],
      "postInstallChecks": [
        "Confirm the extracted package includes the expected docs or setup files.",
        "Validate the skill or prompts are available in your target agent workspace.",
        "Capture any manual follow-up steps the agent could not complete."
      ]
    }
  },
  "links": {
    "detailUrl": "https://openagent3.xyz/skills/overseerr-request-media",
    "downloadUrl": "https://openagent3.xyz/downloads/overseerr-request-media",
    "agentUrl": "https://openagent3.xyz/skills/overseerr-request-media/agent",
    "manifestUrl": "https://openagent3.xyz/skills/overseerr-request-media/agent.json",
    "briefUrl": "https://openagent3.xyz/skills/overseerr-request-media/agent.md"
  }
}
```
## Documentation

### Purpose

Request a movie or TV show using the user's Overseerr instance. Overseerr forwards the request to Sonarr/Radarr.

### Requirements

Environment variables:

OVERSEERR_URL (example: https://overseerr.yourdomain.com)
OVERSEERR_API_KEY

Authentication header:

X-Api-Key: $OVERSEERR_API_KEY

Overseerr can detect if media is already available or already requested based on your configured Plex + Sonarr/Radarr connections.

### What this skill handles

User examples:

"Request Interstellar"
"Add Interstellar to overseerr"
"Request Reacher season 2"
"Request The Office seasons 2-4"

### 1) Parse the user's request

Extract:

Title
Optional type hint: movie or tv
Optional season request:

"season 2"
"seasons 1-3"
"season 1 and 4"

### 2) Search Overseerr

GET:
$OVERSEERR_URL/api/v1/search?query=<urlencoded title>

Example:
curl -s -H "X-Api-Key: $OVERSEERR_API_KEY" 
"$OVERSEERR_URL/api/v1/search?query=interstellar"

### 3) Clarify if the result is ambiguous (movie vs show with same name)

If the search results include BOTH:

a movie match AND
a tv match
with the same (or extremely similar) title,

THEN ask the user to choose before requesting.

Show 2-4 options max, like:

Movie: Title (Year)
TV: Title (Year)

If the user provided an obvious hint like "movie", "show", "tv", "season 2", then pick the matching type automatically.

### 4) Pick the best match

Rules:

Prefer exact title match
Prefer the highest popularity match when multiple results exist
Respect the user's type hint if provided (movie vs tv)

### 5) Check if it already exists (available or already requested)

Before creating a request:

Inspect the selected result for availability/request status info returned by Overseerr (library/availability/request indicators).
If it indicates the media is already available in the library:

Do NOT request it
Reply: "Already available ✅"


If it indicates the media is already requested (pending/processing/approved/requested):

Do NOT request it again
Reply: "Already requested ✅"

If the API response does NOT clearly indicate status:

Proceed with creating the request
If the POST fails due to duplicate/existing request, reply "Already requested ✅"

### 6) Create the request

POST:
$OVERSEERR_URL/api/v1/request

Movie JSON:
{
"mediaType": "movie",
"mediaId": <tmdbId>
}

TV JSON (full series):
{
"mediaType": "tv",
"mediaId": <tmdbId>
}

TV JSON (specific seasons):
{
"mediaType": "tv",
"mediaId": <tmdbId>,
"seasons": [2,3]
}

Examples:

Movie:
curl -s -X POST 
-H "X-Api-Key: $OVERSEERR_API_KEY" 
-H "Content-Type: application/json" 
"$OVERSEERR_URL/api/v1/request" 
-d '{"mediaType":"movie","mediaId":157336}'

TV (full):
curl -s -X POST 
-H "X-Api-Key: $OVERSEERR_API_KEY" 
-H "Content-Type: application/json" 
"$OVERSEERR_URL/api/v1/request" 
-d '{"mediaType":"tv","mediaId":71912}'

TV (season 2):
curl -s -X POST 
-H "X-Api-Key: $OVERSEERR_API_KEY" 
-H "Content-Type: application/json" 
"$OVERSEERR_URL/api/v1/request" 
"$OVERSEERR_URL/api/v1/request" 
-d '{"mediaType":"tv","mediaId":71912,"seasons":[2]}'

### 7) Respond cleanly

Confirm what was requested
If TV request was partial, list seasons
If already requested/available, say so
If no results, ask for alternate spelling or more context

### Output style

Short confirmations:

"✅ Requested: Interstellar (2014)"
"✅ Requested: Reacher (Season 2)"
"Already requested ✅"
"Already available ✅"

### Error handling

If search returns 0 results:

Ask for alternate title or year


If multiple equally good matches remain:

Ask the user to pick from 2-4 options
## Trust
- Source: tencent
- Verification: Indexed source record
- Publisher: trialskid
- Version: 1.0.0
## Source health
- Status: healthy
- Item download looks usable.
- Yavira can redirect you to the upstream package for this item.
- Health scope: item
- Reason: direct_download_ok
- Checked at: 2026-04-30T13:59:55.613Z
- Expires at: 2026-05-07T13:59:55.613Z
- Recommended action: Download for OpenClaw
## Links
- [Detail page](https://openagent3.xyz/skills/overseerr-request-media)
- [Send to Agent page](https://openagent3.xyz/skills/overseerr-request-media/agent)
- [JSON manifest](https://openagent3.xyz/skills/overseerr-request-media/agent.json)
- [Markdown brief](https://openagent3.xyz/skills/overseerr-request-media/agent.md)
- [Download page](https://openagent3.xyz/downloads/overseerr-request-media)