← Help

TMDB Data — Coming Soon

Typical API responses from TMDB that power the Coming Soon channel. Useful for deciding what filters to expose.

Endpoints used

  • /movie/upcoming?page=N — theatrical releases in the next few weeks (US-centric by default; add region=XX to shift)
  • /tv/on_the_air?page=N — TV shows airing within the next 7 days
  • /movie/{id}/credits — cast + crew for director and top actors
  • /tv/{id} — series details (created_by for showrunner)
  • /tv/{id}/credits — cast
  • /movie/{id}/videos or /tv/{id}/videos — YouTube trailer key

Movie — /movie/upcoming result item

Fields we use: id, title, original_language, overview, poster_path, release_date, genre_ids. Available but unused: popularity, vote_average, vote_count, backdrop_path. No country/region in the result — filter via the region query param instead.

{
  "id": 1087388,
  "title": "Thunderbolts*",
  "original_title": "Thunderbolts*",
  "original_language": "en",
  "overview": "After finding themselves ensnared in a death trap, a group of Marvel's most complex antiheroes must embark on a dangerous mission that will force them to confront the darkest corners of their pasts.",
  "poster_path": "/m9EtP1WJG4MGFksFOtBbFGmRIqS.jpg",
  "backdrop_path": "/fAMzIbpSNXFh1P8qFEFz7WDNXZC.jpg",
  "release_date": "2025-05-01",
  "genre_ids": [
    28,
    12,
    878
  ],
  "popularity": 4231.8,
  "vote_average": 7.4,
  "vote_count": 892,
  "adult": false,
  "video": false
}

TV — /tv/on_the_air result item

Note name (not title) and first_air_date (not release_date). origin_country is an array of ISO-3166-1 alpha-2 codes — the only country signal available in TV results. Filterable by country here without a separate API call.

{
  "id": 209867,
  "name": "The Last of Us",
  "original_name": "The Last of Us",
  "original_language": "en",
  "overview": "Twenty years after modern civilization has been destroyed, Joel, a hardened survivor, is hired to smuggle Ellie, a 14-year-old girl, out of an oppressive quarantine zone.",
  "poster_path": "/uKvVjHNqB5VmOrdxqAt2F7J78ED.jpg",
  "backdrop_path": "/mABONFe5kSgno1yCFMOFRtNOIHG.jpg",
  "first_air_date": "2023-01-15",
  "genre_ids": [
    18,
    10759,
    10765
  ],
  "origin_country": [
    "US"
  ],
  "popularity": 3201.5,
  "vote_average": 8.5,
  "vote_count": 4120
}

Movie credits — /movie/{id}/credits

We extract Director from crew and top 5 cast by order.

{
  "id": 1087388,
  "cast": [
    {
      "id": 1136406,
      "name": "Florence Pugh",
      "character": "Yelena Belova",
      "order": 0
    },
    {
      "id": 1327,
      "name": "Sebastian Stan",
      "character": "Bucky Barnes",
      "order": 1
    },
    {
      "id": 1394417,
      "name": "David Harbour",
      "character": "Alexei Shostakov / Red Guardian",
      "order": 2
    },
    {
      "id": 1213831,
      "name": "Wyatt Russell",
      "character": "John Walker / U.S. Agent",
      "order": 3
    },
    {
      "id": 2143059,
      "name": "Hannah John-Kamen",
      "character": "Ava Starr / Ghost",
      "order": 4
    }
  ],
  "crew": [
    {
      "id": 7291,
      "name": "Jake Schreier",
      "job": "Director",
      "department": "Directing"
    },
    {
      "id": 78746,
      "name": "Eric Pearson",
      "job": "Screenplay",
      "department": "Writing"
    },
    {
      "id": 2241380,
      "name": "Lee Sung Jin",
      "job": "Story",
      "department": "Writing"
    },
    {
      "id": 2309,
      "name": "Kevin Feige",
      "job": "Producer",
      "department": "Production"
    }
  ]
}

TV details — /tv/{id} (for showrunner)

created_by is used as the equivalent of director for TV shows.

{
  "id": 209867,
  "name": "The Last of Us",
  "created_by": [
    {
      "id": 1252772,
      "name": "Craig Mazin",
      "credit_id": "6255994e4e63970042f34df5",
      "gender": 2
    },
    {
      "id": 1252773,
      "name": "Neil Druckmann",
      "credit_id": "6255994e4e63970042f34df6",
      "gender": 2
    }
  ],
  "episode_run_time": [
    55
  ],
  "first_air_date": "2023-01-15",
  "number_of_episodes": 9,
  "number_of_seasons": 1,
  "status": "Returning Series",
  "networks": [
    {
      "id": 49,
      "name": "HBO"
    }
  ],
  "origin_country": [
    "US"
  ],
  "original_language": "en"
}

TV credits — /tv/{id}/credits

Top cast by order.

{
  "id": 209867,
  "cast": [
    {
      "id": 2963,
      "name": "Pedro Pascal",
      "character": "Joel Miller",
      "order": 0
    },
    {
      "id": 2273952,
      "name": "Bella Ramsey",
      "character": "Ellie Williams",
      "order": 1
    },
    {
      "id": 2737060,
      "name": "Anna Torv",
      "character": "Tess",
      "order": 2
    }
  ],
  "crew": [
    {
      "id": 1252772,
      "name": "Craig Mazin",
      "job": "Executive Producer",
      "department": "Production"
    },
    {
      "id": 1252773,
      "name": "Neil Druckmann",
      "job": "Executive Producer",
      "department": "Production"
    }
  ]
}

Filtering notes

  • Language — both movies and TV have original_language (ISO 639-1: "en", "fr", etc.). Already wired in.
  • Genregenre_ids is an array of integer IDs. Movie and TV genre IDs differ for the same genre name (e.g., Action = 28 for movies, 10759 for TV). Already wired in.
  • Country / region (movies) — Not in the result payload. TMDB supports a region=XX query parameter on /movie/upcoming that filters by theatrical release country. Adding a region chip to the Coming Soon editor and passing it as a query param is straightforward.
  • Country / region (TV)origin_country is in the result (e.g., ["US"]). Can be filtered client-side after fetch.
  • Popularity / ratingvote_average and popularity are available. Could filter out obscure titles.