Details
Get the details of a TV episode.
Get the details of a TV episode by series, season, and episode number. Supports appending sub-resources in a single request via append_to_response.
async details<T extends readonly TVEpisodeAppendToResponseNamespace[] = []>(
params: TVEpisodeDetailsParams & { append_to_response?: T }
): Promise<T extends [] ? TVEpisode : TVEpisodeDetailsWithAppends<T>>TMDB Reference: TV Episode Details
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
series_id | number | ✅ | TMDB TV series identifier. |
season_number | number | ✅ | Season number within the TV series. |
episode_number | number | ✅ | Episode number within the season. |
append_to_response | TVEpisodeAppendToResponseNamespace[] | ❌ | Sub-resources to append to the response. |
language | Language | ❌ | Language for localized results. Defaults to en-US. |
include_image_language | (Language | "null")[] | ❌ | Extra languages for an appended images block. Serialized comma-separated. |
When you append images and pass a language, TMDB treats the language as a filter on the appended block. Episode
stills are mostly untagged, so the block usually comes back empty — pass include_image_language with "null":
const episode = await tmdb.tv_episodes.details({
series_id: 1396,
season_number: 1,
episode_number: 1,
language: "it-IT",
append_to_response: ["images"],
include_image_language: ["null", "en"], // untagged + English
});
// 6 stills — without include_image_language: 0Returns
TVEpisode when no appends are provided,
or TVEpisodeDetailsWithAppends<T> when append_to_response is specified.
Example
// Basic details
const episode = await tmdb.tv_episodes.details({
series_id: 1396,
season_number: 1,
episode_number: 1,
});
console.log(episode.name);
// With appended data
const episode = await tmdb.tv_episodes.details({
series_id: 1396,
season_number: 1,
episode_number: 1,
append_to_response: ["credits", "images", "videos"],
});
console.log(episode.credits.cast);
console.log(episode.videos.results);