Sign inTry it

Find movies and TV shows on IMDb by title.

Looks up movies, TV series and other titles by name, like IMDb's search box: title, year, type, the two leading actors, poster and the IMDb link, best matches first, with IMDb's popularity rank. Optionally only one type (movie, TV series, …). Uses IMDb's own suggestion service on v3.sg.media-imdb.com, the host IMDb's search box calls.

No reports yetRead-only, no login
Site
IMDb, United States
Version
v2 of 2
Runs, last 7 days
No reports yet
sha256
427c3fdc14b1…

Run it with your agent

after installing Wield

Ask in plain words. Your agent finds this recipe and calls it:

“Find movies and TV shows on IMDb by title.”

Read-only: it changes nothing on the site. No login needed.

{
  "tool": "run",
  "arguments": {
    "recipe_id": "imdb.com/search-titles",
    "params": {
      "query": "the matrix"
    }
  }
}

Requests

sent from your browser, in order
  1. 1GETv3.sg.media-imdb.com/suggestion/{{f.c | urlencode}}/{{params.query | trim | lower | urlencode}}.json?includeVideosIMDb's suggestion service (v3.sg.media-imdb.com/suggestion/<first letter>/<query>.json), the call IMDb's search box makes as you type. It answers up to 8 entries: titles (tt…), people (nm…) and franchises; the recipe keeps titles.no cookiesrepeats, max 1

Parameters

from your agent
querystringrequiredTitle or part of it, e.g. 'the matrix', 'breaking bad', 'dune 2021'
typeenumOnly titles of this IMDb type "any" | "movie" | "tvSeries" | "tvMiniSeries" | "tvMovie" | "tvSpecial" | "short" | "video" | "videoGame" | "musicVideo" | "podcastSeries" = "any"

Returns

to your agent
querystring
titlesobject[]image, popularity_rank, stars, title, type, type_label, url, year, years

Where it can send

  • v3.sg.media-imdb.com

Anything else is blocked by the extension.

Reads from your session

Nothing. Your browser attaches the site's cookies by itself.

Used only in requests to the addresses on the left. Never sent to wield.run or your agent.

Checks

a run passes when
  • length(output.titles) >= `4`
  • output.titles[0].title == 'The Matrix'
  • output.titles[0].year == `1999`
  • output.titles[0].type == 'movie'
  • length(output.titles[?starts_with(url, 'https://www.imdb.com/title/tt')]) == length(output.titles)

Raw recipe

Served as canonical JSON from /api/v1/recipes/imdb.com/search-titles, so its sha256 matches the ETag and the index.

Check it yourself
curl -s https://wield.run/api/v1/recipes/imdb.com/search-titles | shasum -a 256
# 427c3fdc14b1fbd467efdca7a34b4c75c84d8007655903e030ca396dea59b621
imdb.com/search-titles.json, v2
{
  "description": "Looks up movies, TV series and other titles by name, like IMDb's search box: title, year, type, the two leading actors, poster and the IMDb link, best matches first, with IMDb's popularity rank. Optionally only one type (movie, TV series, …). Uses IMDb's own suggestion service on v3.sg.media-imdb.com, the host IMDb's search box calls.",
  "effect": "read",
  "id": "imdb.com/search-titles",
  "keywords": [
    "imdb",
    "movie",
    "film",
    "tv show",
    "series",
    "cast",
    "actor",
    "release year",
    "poster",
    "kino",
    "serie",
    "schauspieler"
  ],
  "output": {
    "schema": {
      "properties": {
        "query": {
          "type": "string"
        },
        "titles": {
          "items": {
            "properties": {
              "image": {
                "type": [
                  "string",
                  "null"
                ]
              },
              "popularity_rank": {
                "description": "IMDb's popularity rank (lower is more popular)",
                "type": [
                  "integer",
                  "null"
                ]
              },
              "stars": {
                "description": "The two leading actors",
                "type": [
                  "string",
                  "null"
                ]
              },
              "title": {
                "type": "string"
              },
              "type": {
                "description": "IMDb type id: movie, tvSeries, tvMiniSeries, tvMovie, …",
                "type": [
                  "string",
                  "null"
                ]
              },
              "type_label": {
                "description": "e.g. 'feature', 'TV series'",
                "type": [
                  "string",
                  "null"
                ]
              },
              "url": {
                "type": "string"
              },
              "year": {
                "type": [
                  "integer",
                  "null"
                ]
              },
              "years": {
                "description": "As IMDb shows it, e.g. '2008–2013' for a series",
                "type": [
                  "string",
                  "null"
                ]
              }
            },
            "type": "object"
          },
          "type": "array"
        }
      },
      "required": [
        "query",
        "titles"
      ],
      "type": "object"
    },
    "value": "let $t = params.type || 'any' in {query: params.query, titles: map(&{title: l, year: y || `null`, years: yr || tl || `null`, type: qid || `null`, type_label: q || `null`, stars: s || `null`, popularity_rank: rank || `null`, image: i.imageUrl || `null`, url: join('', ['https://www.imdb.com/title/', id, '/'])}, steps.suggest[0].titles[?$t == 'any' || qid == $t] || `[]`)}"
  },
  "params": {
    "additionalProperties": false,
    "properties": {
      "query": {
        "description": "Title or part of it, e.g. 'the matrix', 'breaking bad', 'dune 2021'",
        "maxLength": 100,
        "minLength": 2,
        "type": "string"
      },
      "type": {
        "default": "any",
        "description": "Only titles of this IMDb type",
        "enum": [
          "any",
          "movie",
          "tvSeries",
          "tvMiniSeries",
          "tvMovie",
          "tvSpecial",
          "short",
          "video",
          "videoGame",
          "musicVideo",
          "podcastSeries"
        ],
        "type": "string"
      }
    },
    "required": [
      "query"
    ],
    "type": "object"
  },
  "provenance": {
    "method": "browser-inspect",
    "notes": "IMDb's search box calls https://v3.sg.media-imdb.com/suggestion/<first letter of the query>/<lowercased query>.json?includeVideos=0 (IMDb's own suggestion host on its media-imdb.com domain; CORS for www.imdb.com). Answer: d = up to 8 entries {id (tt title, nm person, in franchise), l label, y year, yr year range for series, tl type and year text, q type label, qid type id, s two lead actors or a person's best-known work, rank popularity, i.imageUrl poster on m.media-amazon.com (a link, never called)}. Title pages (ratings, genres) were not used: www.imdb.com answers servers with an empty 202 challenge and its robots.txt disallows all bots. v2 (2026-11-07 22:38): tos.notes only; requests and output unchanged.",
    "recorded_at": "2026-11-07T21:48:00+01:00",
    "recorded_by": "C4"
  },
  "requires_login": false,
  "schema": "https://wield.run/schema/recipe/v1.json",
  "site": {
    "country": "US",
    "id": "imdb.com",
    "language": "en",
    "name": "IMDb",
    "origin": "https://www.imdb.com",
    "origins": [
      "https://v3.sg.media-imdb.com"
    ]
  },
  "steps": [
    {
      "description": "IMDb's suggestion service (v3.sg.media-imdb.com/suggestion/<first letter>/<query>.json), the call IMDb's search box makes as you type. It answers up to 8 entries: titles (tt…), people (nm…) and franchises; the recipe keeps titles.",
      "expect": {
        "content_type": "json",
        "status": [
          200
        ]
      },
      "extract": {
        "json": {
          "titles": "d[?starts_with(id, 'tt')] || `[]`"
        }
      },
      "foreach": {
        "as": "f",
        "in": "[{c: lower(trim(params.query))[:1]}]",
        "max": 1
      },
      "id": "suggest",
      "request": {
        "credentials": "omit",
        "headers": {
          "Accept": "application/json"
        },
        "method": "GET",
        "query": {
          "includeVideos": "0"
        },
        "url": "https://v3.sg.media-imdb.com/suggestion/{{f.c | urlencode}}/{{params.query | trim | lower | urlencode}}.json"
      }
    }
  ],
  "task": "Find movies and TV shows on IMDb by title",
  "tos": {
    "notes": "IMDb's Conditions of Use prohibit data mining, robots and screen scraping without written consent, and www.imdb.com's robots.txt disallows all bots. Wield runs this recipe only when the user asks, one title lookup per call through IMDb's own suggestion service (v3.sg.media-imdb.com), from the user's own browser: no title pages, ratings or bulk lookups.",
    "reviewed": true
  },
  "verify": {
    "checks": [
      "length(output.titles) >= `4`",
      "output.titles[0].title == 'The Matrix'",
      "output.titles[0].year == `1999`",
      "output.titles[0].type == 'movie'",
      "length(output.titles[?starts_with(url, 'https://www.imdb.com/title/tt')]) == length(output.titles)"
    ],
    "example_params": {
      "query": "the matrix"
    },
    "max_ms": 2000
  },
  "version": 2
}