POST /api/imdb/titles/search
Price: 1 credit
Advanced IMDb title search with rich filters: keyword, title type, genres, user rating and votes, release date, runtime, country of origin, spoken language, US certificate, coloration, plot keywords, credited companies and people, major awards, IMDb ranked lists and adult-content handling, with sorting.
Search IMDb titles by keyword and/or faceted filters (title_type, genres, rating_min/max, votes_min/max, release_date_from/to, runtime_min/max, countries, languages, us_certificates, color, keywords, companies, cast_or_crew, interests, awards, ranked_lists, adult) and sort the results. Each result has id, url, title_text, original_title, type_id, type_name, year, rating, vote_count, runtime_minutes, certificate, plot, genres and image. Set count to control how many results to return.
access-token string requiredtimeout integer — Max scrapping execution timeout (in seconds) (default: 300; min: 20; max: 1500)keyword string nullable — Title name to search fortitle_type array nullable — Include only these title types (one of: "movie", "tvSeries", "tvMiniSeries", "tvMovie", "tvSpecial", "tvEpisode", "tvShort", "short", "video", "videoGame", "musicVideo", "podcastSeries", "podcastEpisode")title_type_exclude array nullable — Exclude these title types (one of: "movie", "tvSeries", "tvMiniSeries", "tvMovie", "tvSpecial", "tvEpisode", "tvShort", "short", "video", "videoGame", "musicVideo", "podcastSeries", "podcastEpisode")genres array nullable — Include only these genres (one of: "Action", "Adult", "Adventure", "Animation", "Biography", "Comedy", "Crime", "Documentary", "Drama", "Family", "Fantasy", "Film-Noir", "Game-Show", "History", "Horror", "Music", "Musical", "Mystery", "News", "Reality-TV", "Romance", "Sci-Fi", "Short", "Sport", "Talk-Show", "Thriller", "War", "Western")genres_exclude array nullable — Exclude these genres (one of: "Action", "Adult", "Adventure", "Animation", "Biography", "Comedy", "Crime", "Documentary", "Drama", "Family", "Fantasy", "Film-Noir", "Game-Show", "History", "Horror", "Music", "Musical", "Mystery", "News", "Reality-TV", "Romance", "Sci-Fi", "Short", "Sport", "Talk-Show", "Thriller", "War", "Western")rating_min number nullable — Minimum IMDb user rating (min: 0; max: 10)rating_max number nullable — Maximum IMDb user rating (min: 0; max: 10)votes_min integer nullable — Minimum number of user votes (min: 0)votes_max integer nullable — Maximum number of user votes (min: 0)release_date_from string nullable — Earliest release date (YYYY-MM-DD or YYYY)release_date_to string nullable — Latest release date (YYYY-MM-DD or YYYY)runtime_min integer nullable — Minimum runtime in minutes (min: 0)runtime_max integer nullable — Maximum runtime in minutes (min: 0)countries array nullable — Country-of-origin ISO codes (e.g. 'US', 'GB', 'FR')countries_exclude array nullable — Exclude these country-of-origin ISO codeslanguages array nullable — Spoken-language ISO codes (e.g. 'en', 'es', 'ja')us_certificates array nullable — US content ratings (MPAA) (one of: "G", "PG", "PG-13", "R", "NC-17")color array nullable — Coloration types (one of: "COLOR", "BLACK_AND_WHITE", "COLORIZED", "ACES")keywords array nullable — Plot keywords (e.g. 'based-on-novel', 'murder')companies array nullable — Company IDs (co-IDs) credited on the titlecast_or_crew array nullable — Person IDs (nm-IDs) credited on the titleawards array nullable — Filter by major award wins/nominations (one of: "OSCAR_WINNING", "OSCAR_NOMINATED", "EMMY_WINNING", "EMMY_NOMINATED", "GOLDEN_GLOBE_WINNING", "GOLDEN_GLOBE_NOMINATED")ranked_lists array nullable — Membership in IMDb ranked lists (one of: "TOP_RATED_MOVIES", "LOWEST_RATED_MOVIES", "MOVIE_METER", "TV_METER", "TITLE_METER")interests array nullable — Interest IDs (in-ID) to includeadult string nullable — How to treat adult titles (one of: "EXCLUDE_ADULT", "INCLUDE_ADULT", "ONLY_ADULT")sort string — Result ordering (default: "POPULARITY"; one of: "POPULARITY", "USER_RATING", "USER_RATING_COUNT", "RELEASE_DATE", "RUNTIME", "YEAR", "BOX_OFFICE_GROSS_DOMESTIC", "METACRITIC_SCORE", "RANKING")sort_order string — Sort direction (default: "ASC"; one of: "ASC", "DESC")country string nullable — ISO country code for localized displaylanguage string nullable — Locale for localized displaycount integer required — Max number of results to return (min: 1)@type string (default: "ImdbTitleSearchResult")id string requiredurl string requiredtitle_text string nullableoriginal_title string nullabletype_id string nullabletype_name string nullableyear integer nullableend_year integer nullablerating number nullablevote_count integer nullableruntime_minutes integer nullablecertificate string nullableplot string nullablegenres array (default: [])image string nullable422 — The request body did not validate Check the fields against this schema. A URN with the wrong prefix is the most common cause.408 — The request ran past its time limit Raise `timeout` in the request body, up to the maximum this endpoint documents. Lowering `count` or turning off the `with_*` flags also helps, because less work finishes sooner.412 — The entity was not found, or a precondition failed Retrying will not help: either the entity does not exist, or the input points at a different one.429 — Too many requests: a rate limit or a usage window is exhausted When the response carries an X-Retry-After header, wait that many seconds and retry: the same number is in the body as `detail.retry_after`, and the limit clears once that window passes. The message in the body names the limit that was hit.500 — Something broke on our side Retrying will not help. If it keeps happening, send us the X-Request-ID from the response headers.529 — Rate limit reached, or the endpoint is overloaded Wait at least 30 seconds, then retry.X-Error — Error message text (present only on error)X-Request-ID — Unique request identifierX-Execution-Time — Execution time in secondsX-Result-Count — How many records the body carries. 0 means an empty result, which is a normal answer and not by itself an error. A non-zero count can come back together with X-Error when the failure happened partway through — read this header and X-Error independently.X-Total-Available-Results — How many records exist for this query, when the endpoint can say. On a `dry_run` request this is the answer and the body is empty. It saturates: the endpoint's documented maximum means 'at least that many', any smaller number is exact.X-Warning — Present when the request body carried keys this endpoint does not document. They were ignored, so any filter you meant to apply through them did not apply. Check the spelling against this schema and retry.X-Retry-After — Seconds to wait before retrying. Present only on 429.