# Netflix API

> Netflix returns weekly rankings, all-time popular titles, and catalogue details as a workflow and API.

Netflix returns weekly Top 10 rankings by week, country, language group for global lists, and movie or TV category. Netflix returns all-time popular titles by language group and movie or TV category, ranked by views during their first 91 days. Netflix returns movie or show details, including seasons and episodes where publicly shown, using a title name or link and optional country.

- Page: https://fous.com/tools/netflix
- Handle: `@netflix`
- Category: [Entertainment](https://fous.com/tools/category/entertainment)
- Source website: https://netflix.com
- Last verified: Sep 29, 2026

## Methods

### Get movie or show

Operation `get_movie_or_show`, version 1. 1 credit per completed call. Failed calls without a completed billing receipt are free; completed work can remain charged if delivery is interrupted.

Look up a Netflix movie or series by name or title link, with seasons and episodes where publicly shown. Country availability comes from public catalogue listings and may lag; episodes may be absent for titles unavailable on the public page.

**Input**

| Field | Type | Required | Example | Description |
|---|---|---|---|---|
| `title` | string | yes | `"Stranger Things"` | Movie or series name, or its Netflix title link. Example: Stranger Things |
| `country` | string | no | `"United Kingdom"` | Country to check by name or two-letter code. Example: United Kingdom |

**Input schema**

```json
{
  "type": "object",
  "required": [
    "title"
  ],
  "properties": {
    "title": {
      "type": "string",
      "description": "Movie or series name, or its Netflix title link. Example: Stranger Things",
      "examples": [
        "Stranger Things",
        "The Irishman",
        "https://www.netflix.com/title/70136120"
      ]
    },
    "country": {
      "type": "string",
      "default": "United States",
      "description": "Country to check by name or two-letter code. Example: United Kingdom",
      "examples": [
        "United Kingdom"
      ]
    }
  },
  "additionalProperties": false,
  "examples": [
    {
      "title": "Stranger Things"
    },
    {
      "title": "The Irishman",
      "country": "United Kingdom"
    },
    {
      "title": "https://www.netflix.com/title/70136120",
      "country": "United Kingdom"
    }
  ]
}
```

**Output**

| Field | Type | Example | Description |
|---|---|---|---|
| `cast` | array |  |  |
| `type` | string | `"series"` |  |
| `year` | integer or null | `2025` |  |
| `title` | string | `"Stranger Things"` |  |
| `genres` | array |  |  |
| `seasons` | array |  |  |
| `seasons[].season` | string | `"Season 1"` |  |
| `seasons[].episodes` | array |  |  |
| `creators` | array |  |  |
| `description` | string or null | `"When a young boy vanishes, a small town uncovers a mystery involving secret experiments, terrifying supernatural forces` |  |
| `netflix_link` | string | `"https://www.netflix.com/title/80057281"` |  |
| `maturity_rating` | string or null | `"TV-14"` |  |
| `netflix_title_id` | string | `"80057281"` |  |
| `available_in_country` | boolean | `true` |  |

**Example input**

```json
{
  "title": "Stranger Things"
}
```

**Example output**

```json
{
  "cast": [
    "Winona Ryder",
    "David Harbour"
  ],
  "type": "series",
  "year": 2025,
  "title": "Stranger Things",
  "genres": [
    "TV Dramas",
    "Sci-Fi Shows"
  ],
  "seasons": [
    {
      "season": "Season 1",
      "episodes": [
        {
          "title": "Chapter One: The Vanishing of Will Byers",
          "runtime": "50m",
          "synopsis": "On his way home from a friend's house, young Will sees something terrifying. Nearby, a sinister secret lurks in the depths of a government lab.",
          "episode_number": 1
        },
        {
          "title": "Chapter Two: The Weirdo on Maple Street",
          "runtime": "56m",
          "synopsis": "Lucas, Mike and Dustin try to talk to the girl they found in the woods. Hopper questions an anxious Joyce about an unsettling phone call.",
          "episode_number": 2
        }
      ]
    },
    {
      "season": "Season 2",
      "episodes": [
        {
          "title": "Chapter One: MADMAX",
          "runtime": "49m",
          "synopsis": "As the town preps for Halloween, a high-scoring rival shakes things up at the arcade, and a skeptical Hopper inspects a field of rotting pumpkins.",
          "episode_number": 1
        },
        {
          "title": "Chapter Two: Trick or Treat, Freak",
          "runtime": "57m",
          "synopsis": "After Will sees something terrible on trick-or-treat night, Mike wonders whether Eleven's still out there. Nancy wrestles with the truth about Barb.",
          "episode_number": 2
        }
      ]
    }
  ],
  "creators": [
    "The Duffer Brothers"
  ],
  "description": "When a young boy vanishes, a small town uncovers a mystery involving secret experiments, terrifying supernatural forces and one strange little girl.",
  "netflix_link": "https://www.netflix.com/title/80057281",
  "maturity_rating": "TV-14",
  "netflix_title_id": "80057281",
  "available_in_country": true
}
```

### List most popular

Operation `list_most_popular`, version 1. 1 credit per completed call. Failed calls without a completed billing receipt are free; completed work can remain charged if delivery is interrupted.

List Netflix’s all-time most popular movies or shows by views in their first 91 days. Includes available views, hours viewed, and runtime.

**Input**

| Field | Type | Required | Example | Description |
|---|---|---|---|---|
| `language` | string | no | `"non_english"` | Choose English or non-English titles. Example: non_english. |
| `content_type` | string | no | `"tv"` | Choose movies or TV shows. Example: tv. |

**Input schema**

```json
{
  "type": "object",
  "properties": {
    "language": {
      "enum": [
        "english",
        "non_english"
      ],
      "type": "string",
      "default": "english",
      "description": "Choose English or non-English titles. Example: non_english.",
      "examples": [
        "non_english",
        "english"
      ]
    },
    "content_type": {
      "enum": [
        "movies",
        "tv"
      ],
      "type": "string",
      "default": "movies",
      "description": "Choose movies or TV shows. Example: tv.",
      "examples": [
        "tv",
        "movies"
      ]
    }
  },
  "additionalProperties": false,
  "examples": [
    {
      "language": "non_english",
      "content_type": "tv"
    },
    {
      "language": "english",
      "content_type": "movies"
    },
    {
      "language": "non_english",
      "content_type": "movies"
    }
  ]
}
```

**Output**

| Field | Type | Example | Description |
|---|---|---|---|
| `titles` | array |  | Most popular titles, in rank order. |
| `titles[].rank` | integer | `1` | Position in the all-time ranking. |
| `titles[].title` | string | `"Squid Game: Season 1"` | Title, including season or part for shows where shown. |
| `titles[].views` | integer or null | `265200000` | Views during the first 91 days of release. |
| `titles[].runtime` | string or null | `"8 h 19 min"` | Displayed runtime, as hours and minutes. |
| `titles[].page_url` | string | `"https://www.netflix.com/tudum/squid-game"` | Netflix page for this title. |
| `titles[].hours_viewed` | integer or null | `2205200000` | Hours viewed during the first 91 days of release, when shown. |

**Example input**

```json
{
  "language": "non_english",
  "content_type": "tv"
}
```

**Example output**

```json
{
  "titles": [
    {
      "rank": 1,
      "title": "Squid Game: Season 1",
      "views": 265200000,
      "runtime": "8 h 19 min",
      "page_url": "https://www.netflix.com/tudum/squid-game",
      "hours_viewed": 2205200000
    },
    {
      "rank": 2,
      "title": "Squid Game: Season 2",
      "views": 192600000,
      "runtime": "7 h 10 min",
      "page_url": "https://www.netflix.com/tudum/squid-game",
      "hours_viewed": 1380100000
    },
    {
      "rank": 3,
      "title": "Squid Game: Season 3",
      "views": 145800000,
      "runtime": "6 h 08 min",
      "page_url": "https://www.netflix.com/tudum/squid-game",
      "hours_viewed": 894300000
    }
  ]
}
```

### List top 10

Operation `list_top_10`, version 1. 1 credit per completed call. Failed calls without a completed billing receipt are free; completed work can remain charged if delivery is interrupted.

Get Netflix’s weekly Top 10 movies or shows worldwide or in a country. Global lists include viewing figures; country lists do not.

**Input**

| Field | Type | Required | Example | Description |
|---|---|---|---|---|
| `week` | string | no | `"2026-09-16"` | Any date in the Monday-to-Sunday week to look up. Omit for the latest published week. Example: 2026-09-16. |
| `country` | string | no | `"United States"` | Global, a country name, or a two-letter country code. Example: United States. |
| `language` | string | no | `"non_english"` | Language group for global lists only. Example: non_english. |
| `content_type` | string | no | `"tv"` | Movies or TV shows. Example: tv. |

**Input schema**

```json
{
  "type": "object",
  "properties": {
    "week": {
      "type": "string",
      "format": "date",
      "description": "Any date in the Monday-to-Sunday week to look up. Omit for the latest published week. Example: 2026-09-16.",
      "examples": [
        "2026-09-16",
        "2026-09-10"
      ]
    },
    "country": {
      "type": "string",
      "default": "global",
      "description": "Global, a country name, or a two-letter country code. Example: United States.",
      "examples": [
        "United States"
      ]
    },
    "language": {
      "enum": [
        "english",
        "non_english"
      ],
      "type": "string",
      "default": "english",
      "description": "Language group for global lists only. Example: non_english.",
      "examples": [
        "non_english"
      ]
    },
    "content_type": {
      "enum": [
        "movies",
        "tv"
      ],
      "type": "string",
      "default": "movies",
      "description": "Movies or TV shows. Example: tv.",
      "examples": [
        "tv"
      ]
    }
  },
  "additionalProperties": false,
  "examples": [
    {},
    {
      "week": "2026-09-16",
      "country": "United States",
      "content_type": "tv"
    },
    {
      "week": "2026-09-10",
      "language": "non_english",
      "content_type": "tv"
    }
  ]
}
```

**Output**

| Field | Type | Example | Description |
|---|---|---|---|
| `top_10` | array |  | Titles in rank order. Viewing figures are unavailable for countries and for some older global weeks. |
| `top_10[].rank` | integer | `1` |  |
| `top_10[].title` | string | `"Why Did I Get Married Again?"` |  |
| `top_10[].views` | integer or null | `9700000` |  |
| `top_10[].runtime` | string or null | `"1:51"` | Hours and minutes, such as 1:51. |
| `top_10[].page_link` | string | `"https://www.netflix.com/tudum/top10?week=2026-09-20"` | Official page showing this weekly ranking. |
| `top_10[].hours_viewed` | integer or null | `17900000` |  |
| `top_10[].weeks_in_top_10` | integer | `2` |  |
| `week_end` | string | `"2026-09-20"` | Last day of the ranking week. |
| `week_start` | string | `"2026-09-14"` | First day of the ranking week. |

**Example input**

```json
{}
```

**Example output**

```json
{
  "top_10": [
    {
      "rank": 1,
      "title": "Why Did I Get Married Again?",
      "views": 9700000,
      "runtime": "1:51",
      "page_link": "https://www.netflix.com/tudum/top10?week=2026-09-20",
      "hours_viewed": 17900000,
      "weeks_in_top_10": 2
    },
    {
      "rank": 2,
      "title": "The Whisper Man",
      "views": 6200000,
      "runtime": "1:54",
      "page_link": "https://www.netflix.com/tudum/top10?week=2026-09-20",
      "hours_viewed": 11800000,
      "weeks_in_top_10": 4
    },
    {
      "rank": 3,
      "title": "Riot",
      "views": 5200000,
      "runtime": "1:27",
      "page_link": "https://www.netflix.com/tudum/top10?week=2026-09-20",
      "hours_viewed": 7500000,
      "weeks_in_top_10": 1
    }
  ],
  "week_end": "2026-09-20",
  "week_start": "2026-09-14"
}
```

## Quick start

Replace `YOUR_API_KEY` with a Fous API key. To create one, open Developers at the bottom of Fous Studio, turn on Developer mode, then go to API keys (https://app.fous.com/keys). Change the values in `input` to run the same tool on new data.

```bash
curl 'https://api.fous.com/v1/query' \
  --fail-with-body --silent --show-error --max-time 180 \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -H 'Content-Type: application/json' \
  --data-raw '{
  "api": "@netflix",
  "visibility": "public",
  "operation": "get_movie_or_show",
  "version": 1,
  "input": {
    "title": "Stranger Things"
  },
  "response": {
    "format": "json"
  }
}'
```

```python
# Save as fous.py and run with python3 fous.py. No packages needed.
import json
import urllib.error
import urllib.request

api_key = "YOUR_API_KEY"

body = json.loads("{\n  \"api\": \"@netflix\",\n  \"visibility\": \"public\",\n  \"operation\": \"get_movie_or_show\",\n  \"version\": 1,\n  \"input\": {\n    \"title\": \"Stranger Things\"\n  },\n  \"response\": {\n    \"format\": \"json\"\n  }\n}")
request = urllib.request.Request(
    "https://api.fous.com/v1/query",
    data=json.dumps(body).encode("utf-8"),
    headers={
        "Authorization": f"Bearer {api_key}",
        "Content-Type": "application/json",
    },
    method="POST",
)
try:
    with urllib.request.urlopen(request, timeout=180) as response:
        result = json.load(response)
except urllib.error.HTTPError as error:
    raise RuntimeError(f"HTTP {error.code}: {error.read().decode('utf-8', errors='replace')}") from error
if result.get("success") is False:
    raise RuntimeError(result.get("error", {}).get("message", "Request failed"))
print(json.dumps(result["data"]["output"], indent=2))
```

```typescript
// Save as fous.mts and run with npx tsx fous.mts.
const apiKey = "YOUR_API_KEY";

const response = await fetch("https://api.fous.com/v1/query", {
  method: "POST",
  headers: {
    "Authorization": `Bearer ${apiKey}`,
    "Content-Type": "application/json",
  },
  signal: AbortSignal.timeout(180_000),
  body: JSON.stringify({
  "api": "@netflix",
  "visibility": "public",
  "operation": "get_movie_or_show",
  "version": 1,
  "input": {
    "title": "Stranger Things"
  },
  "response": {
    "format": "json"
  }
}),
});
type ApiResult = { success: boolean; data?: { output: unknown }; error?: { message: string } };
const result: ApiResult = await response.json();
if (!response.ok || result.success === false) {
  throw new Error(result.error?.message ?? `HTTP ${response.status}`);
}
if (!result.data) throw new Error("Missing API response data");
console.log(result.data.output);
```

## Use from an AI assistant

Connect this tool to Claude Code, Claude Desktop, Cursor, VS Code, Codex and any MCP client as its own MCP server. Each method is a typed tool whose arguments are the method’s input.

- Server URL: `https://api.fous.com/mcp/tools/netflix`
- Authorization: `Authorization: Bearer <Fous API key>`

**Tools**

- `get_movie_or_show`: Get movie or show. 1 credit per completed call. Failed calls without a completed billing receipt are free; completed work can remain charged if delivery is interrupted.
- `list_most_popular`: List most popular. 1 credit per completed call. Failed calls without a completed billing receipt are free; completed work can remain charged if delivery is interrupted.
- `list_top_10`: List top 10. 1 credit per completed call. Failed calls without a completed billing receipt are free; completed work can remain charged if delivery is interrupted.
- `fous_get_run`: the result of a run that was still going, by its `request_id`. Free.

Claude Code:

```bash
claude mcp add --scope user --transport http fous-netflix https://api.fous.com/mcp/tools/netflix --header "Authorization: Bearer ${FOUS_API_KEY:?Set FOUS_API_KEY to your Fous API key}"
```

To give the assistant every tool, connect `https://api.fous.com/mcp`: it finds one with `fous_search_tools` and runs it with `fous_run_tool`. Setup for other clients: https://fous.com/llms-full.txt.

## Use cases

- Compare weekly movie rankings across countries.
- Track weekly TV rankings over time.
- Identify popular titles by language and category.
- Check a title’s genres, cast, and maturity rating.
- Review seasons, episodes, and country availability for a title.

## FAQ

### Can I run it with my own inputs?

Yes. Change the inputs in Studio and press Run, or send new inputs from your code, or ask a connected AI assistant.

### Can I call this Netflix tool as an API?

Yes. Send a POST request to /v1/query with your Fous API key and the inputs, and get JSON back.

### How much does it cost?

Each completed run costs 1 credit. Failed runs without a completed receipt are free; completed work can remain charged if delivery is interrupted. With pay as you go, a credit costs 1¢. Monthly plans cost less per credit.

### Do I need a Netflix account?

No. You only need a Fous account.

### How current is the data?

Fous gets the data from netflix.com when you run it. Some results are reused for up to 24 hours, and results that use your account or key are never reused. It was last verified on Sep 29, 2026.

### What movies or shows ranked in a given week?

Use List top 10 with a week and movie or TV category; country and language group can also be specified.

### Which titles are most popular by views?

Use List most popular to see all-time rankings by views during titles’ first 91 days, filtered by language and movie or TV category.

### What details are available for a Netflix title?

Use Get movie or show with a title name or Netflix title link, and optionally a country, to retrieve title details and publicly shown seasons and episodes.

## Related

- [FlixPatrol API](https://fous.com/tools/flixpatrol.md): FlixPatrol provides daily streaming rankings by service and country, plus current country rankings for titles; older dates and some daily-change or Top 10 duration figures are unavailable.
- [Letterboxd API](https://fous.com/tools/letterboxd.md): Letterboxd provides films with ratings, cast, location-dependent watch services and popular reviews, plus popularity-ranked lists by time period, genre and decade; some details may be unavailable.
- [TMDB API](https://fous.com/tools/tmdb.md): TMDB returns movie and TV details, cast, trailers, releases, viewing services, scheduled upcoming movies, and up to 20 homepage trending titles; future episode details depend on published schedules.
- [JustWatch API](https://fous.com/tools/justwatch.md): JustWatch shows where movies and shows are available, including streaming, purchase, and cinema options, plus recent streaming arrivals and daily streaming charts based on its listings.
- [IMDb API](https://fous.com/tools/imdb.md): IMDb returns movie, TV, person, episode, chart and Parents Guide details, including available weekly rank changes; missing details are null, and unaired or unrated episodes lack ratings.
- [Spotify API](https://fous.com/tools/spotify.md): Spotify returns public artist profiles, album credits and ordered tracks, song details and play counts, up to 500 playlist songs, keyword results, and country-based podcast charts; dates and regional options vary.
- [YouTube API](https://fous.com/tools/youtube.md): YouTube returns public video, caption, comment and channel details, company channels, and the latest weekly Top Songs chart; inferred dates and some counts may be approximate.
- [Bilibili API](https://fous.com/tools/bilibili.md): Bilibili provides public video details and statistics, plus current overall or category rankings; movie rankings omit some video details.
- [All Entertainment tools](https://fous.com/tools/category/entertainment)
