IMDb Movie & TV Titles Scraper avatar

IMDb Movie & TV Titles Scraper

Pricing

from $6.80 / 1,000 results

Go to Apify Store
IMDb Movie & TV Titles Scraper

IMDb Movie & TV Titles Scraper

Scrape IMDb movie and TV title data: title, original title, type, year, genres, IMDb rating and vote count, runtime, plot, directors, main cast, content rating and poster image. Search by keyword or look up title IDs. Export to JSON, CSV or Excel.

Pricing

from $6.80 / 1,000 results

Rating

0.0

(0)

Developer

Scrapers Lat

Scrapers Lat

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

8 days ago

Last modified

Categories

Share

IMDb Movie & TV Titles Scraper

IMDb Movie & TV Titles Scraper

Here is one real result, with every field the actor returns:

{
"imageUrl": "https://m.media-amazon.com/images/M/MV5BNGEwYjgwOGQtYjg5ZS00Njc1LTk2ZGEtM2QwZWQ2NjdhZTE5XkEyXkFqcGc@._V1_.jpg",
"imdbId": "tt0068646",
"title": "The Godfather",
"originalTitle": "The Godfather",
"type": "movie",
"typeLabel": "Movie",
"year": 1972,
"endYear": null,
"rating": 9.2,
"votes": 2246864,
"runtimeMinutes": 175,
"contentRating": "R",
"genres": ["Crime", "Drama"],
"directors": ["Francis Ford Coppola"],
"cast": ["Marlon Brando", "Al Pacino", "James Caan", "Diane Keaton"],
"plot": "The aging patriarch of an organized crime dynasty transfers control of his clandestine empire to his reluctant son.",
"url": "https://www.imdb.com/title/tt0068646/",
"searchQuery": null,
"aiSummary": null,
"aiTags": null,
"source": "IMDb",
"observedAt": "2026-08-14T08:23:32.810Z"
}

The most complete IMDb title scraper available. It returns every core field a title exposes (rating, votes, genres, runtime, plot, directors, main cast, content rating, poster), resolves keyword searches to exact titles, and offers optional AI logline and thematic-tag add-ons.

📥 Input · 📤 Output · 💰 Pricing · ▶️ Examples

Apify Coverage Output Billing

Table of contents

What it does

The actor resolves movie and TV titles from keyword searches and explicit IMDb title IDs, fetches each title's full record, and writes one normalized record per title to the run's dataset. Each record carries the title and original title, type, release year (and end year for series), IMDb rating and vote count, runtime in minutes, content rating, genres, directors, main cast, plot and poster image. It reads only publicly available IMDb data.

Search by one or more keywords (each returns its best-matching titles), look up exact title IDs when you already know them, or combine both. Optional AI add-ons write a spoiler-free logline and thematic tags from the plot.

Quickstart

Open the actor, paste this into the input, and press Run. It looks up two titles by exact IMDb ID.

{
"imdbIds": ["tt0111161", "tt0068646"],
"maxTitles": 10
}

Or search by keyword instead:

{
"searchQueries": ["Inception", "Breaking Bad", "Dune"],
"maxTitles": 10
}

At least one of searchQueries or imdbIds is required.

Input reference

FieldTypeRequiredDefaultDescription
searchQueriesstring[]conditional(example titles)Movie or TV titles to search, one per line. Each keyword returns its best-matching titles.
imdbIdsstring[]conditional(empty)Exact IMDb title IDs (tt...) to fetch when you already know the titles.
maxTitlesintegerno30Maximum titles to collect across all searches and IDs. Free Apify plans are capped at 10 per run.
withSummarybooleannofalsePaid add-on. AI spoiler-free one-line logline from the plot (aiSummary). Paid plans only.
withTagsbooleannofalsePaid add-on. AI thematic tags (themes, mood, subgenre) from the plot (aiTags). Paid plans only.

At least one of searchQueries or imdbIds must be supplied, or the run returns a single item with an error field.

Output reference

One dataset item per title. Types: string, number, integer, string[], or null when the source value is absent.

FieldTypeDescription
imageUrlstringPoster image URL, else null.
imdbIdstringIMDb title ID.
titlestringDisplay title.
originalTitlestringOriginal-language title.
typestringTitle type ID, for example movie, tvSeries.
typeLabelstringHuman title type label, for example Movie.
yearintegerRelease year, else null.
endYearintegerEnd year for series, else null.
ratingnumberIMDb aggregate rating, else null.
votesintegerIMDb vote count, else null.
runtimeMinutesintegerRuntime in minutes, else null.
contentRatingstringContent certificate, for example R, PG-13, else null.
genresstring[]Genre labels.
directorsstring[]Director names.
caststring[]Main cast names.
plotstringPlot summary text, else null.
urlstringIMDb title URL.
searchQuerystringThe keyword that surfaced this title, or null for direct-ID lookups.
aiSummarystringAI spoiler-free logline (paid add-on), else null.
aiTagsstring[]AI thematic tags (paid add-on), else null.
sourcestringAlways IMDb.
observedAtstringISO 8601 timestamp of when the record was collected.
errorstringPresent only on a failed run: a single item with a populated error field is written instead.

Example output record

Real record from a live run (input {"imdbIds":["tt0111161","tt0068646"],"withSummary":true,"withTags":true}):

{
"imdbId": "tt0068646",
"title": "The Godfather",
"type": "movie",
"typeLabel": "Movie",
"year": 1972,
"rating": 9.2,
"votes": 2246864,
"runtimeMinutes": 175,
"contentRating": "R",
"genres": ["Crime", "Drama"],
"directors": ["Francis Ford Coppola"],
"cast": ["Marlon Brando", "Al Pacino", "James Caan", "Diane Keaton"],
"plot": "The aging patriarch of an organized crime dynasty transfers control of his clandestine empire to his reluctant son.",
"url": "https://www.imdb.com/title/tt0068646/",
"aiSummary": "A reluctant heir navigates the treacherous world of organized crime as he inherits his father's powerful legacy.",
"aiTags": ["family loyalty", "crime syndicate", "power struggle", "legacy", "betrayal", "Italian-American culture", "moral ambiguity", "father-son relationship"],
"source": "IMDb",
"observedAt": "2026-08-14T08:23:32.810Z"
}

Run via API and CLI

Start a run and wait for it to finish, then read the dataset. Replace <TOKEN> with your Apify API token.

Run synchronously and get dataset items in one call:

curl -X POST "https://api.apify.com/v2/acts/scrapers_lat~imdb-titles-scraper/run-sync-get-dataset-items?token=<TOKEN>" \
-H "Content-Type: application/json" \
-d '{"searchQueries":["Dune","Oppenheimer"],"maxTitles":10}'

Start a run asynchronously:

curl -X POST "https://api.apify.com/v2/acts/scrapers_lat~imdb-titles-scraper/runs?token=<TOKEN>" \
-H "Content-Type: application/json" \
-d '{"imdbIds":["tt0111161","tt0068646"],"maxTitles":25}'

Apify CLI:

apify call scrapers_lat/imdb-titles-scraper \
--input '{"searchQueries":["Breaking Bad"],"withSummary":true,"withTags":true}'

Fetch results

Every run writes to a dataset. Fetch items as JSON, CSV, or Excel by changing format:

# JSON
curl "https://api.apify.com/v2/datasets/<DATASET_ID>/items?token=<TOKEN>&clean=true&format=json"
# CSV
curl "https://api.apify.com/v2/datasets/<DATASET_ID>/items?token=<TOKEN>&clean=true&format=csv"
# Paginate large datasets
curl "https://api.apify.com/v2/datasets/<DATASET_ID>/items?token=<TOKEN>&offset=1000&limit=1000"

<DATASET_ID> is returned as defaultDatasetId in the run object. Use offset and limit to page through large result sets. clean=true drops empty and internal fields.

Billing and limits

  • Pay per result. You are charged per title returned (result event). See the pricing tab for the current per-result price.
  • Paid AI add-ons. withSummary and withTags charge separate per-title events (ai_summary, ai_tags) only when they produce output, and are disabled for free plans.
  • No charge on failure. If the run cannot resolve any title, it writes a single item with a populated error field and does not charge for it. Empty runs cost nothing.
  • Spend cap respected. Set maxTotalChargeUsd on the run; once reached, the actor stops emitting and charging further billable results.
  • Free Apify plans are capped at 10 titles per run. Upgrade for higher maxTitles.

FAQ and troubleshooting

A keyword returned the wrong title. Why? Keyword search returns IMDb's best matches for the text. For an exact title, pass its imdbId instead (the tt... ID from the IMDb URL).

Why are aiSummary and aiTags null? The AI add-ons are off by default, require a paid Apify plan, and need plot text. Titles without a plot skip enrichment.

Can I get reviews too? This actor returns title metadata. For user reviews use the IMDb User Reviews Scraper.

What does endYear mean? For TV series it is the year the series ended (or null if ongoing or for movies).

Is this an official IMDb tool? No. This actor is independent and has no affiliation with IMDb or Amazon. It reads only data that is publicly available on IMDb. Use it in accordance with IMDb's terms of service.

More scrapers at scrapers.lat

Built and maintained by scrapers.lat, where we publish scrapers for US and Latin American public platforms: company registries, government data, finance, e-commerce and more. Browse the catalog or request a custom scraper at scrapers.lat.


Independent tool, not affiliated with IMDb or Amazon. Accesses only publicly available IMDb data. Use in accordance with IMDb's terms of service.