Letterboxd Filmography API
A director, actor, producer, writer, composer or studio filmography with the person's portrait and biography, plus a film list with titles and years.
GET /v1/letterboxd/people/{role}/{slug}/films1 credit Failed requests are free A not-found answer is still charged
About this endpoint
GET /v1/letterboxd/people/{role}/{slug}/films takes role from the film's crew roles, for example director, actor, producer, executive-producer, editor, cinematography, writer, composer or studio, plus the person or studio slug. On found, data.person carries role, slug, name, heading, tmdbId, image, bio, bioTruncated and films. A heading reads like Films directed by Bong Joon Ho, which is useful as a ready-made label. Each film row has slug, id, shortCode, shortUrl, title and year.
A director, actor or other crew role returns the whole filmography in one response, including the largest actor filmographies (over 1,000 films). A studio returns its first 24 films. There is no page or cursor parameter and no next page. The role in the path must match the person's or studio's role, so director/bong-joon-ho and actor/bong-joon-ho are separate lookups. A TMDB contributor keeps the colon in its slug, for example director/contributor:61567.
Letterboxd Filmography API FAQ
Which roles can I use?
Any role on the film, for example director, actor, producer, executive-producer, editor, cinematography, writer, composer or studio. Use the role that appears in the URL: /people/director/christopher-nolan/films, /people/producer/kevin-feige/films or /people/studio/a24/films.
Can I get more than the first 24 films of a studio?
No. A studio call returns its first 24 films and the route takes no page or cursor. Director, actor, producer and other crew roles return every film in one response.
What fields does each film row have?
slug, id, shortCode, shortUrl, title and year. The same film reference shape is used on watchlists, lists and review cards, so you can join rows across routes by slug.
How many credits does a filmography cost?
Pricing is documented on the operation in the API registry (shown on this page). Confirm on every response with meta.creditsCharged: that field is the billing source of truth.
What does lookupStatus mean here?
found means data.person is the filmography, which may legitimately have an empty films array. not_found means the person or studio does not exist for that role, and data.person is null.
Other Letterboxd endpoints
- FilmGET /v1/letterboxd/films/{slug}
- MemberGET /v1/letterboxd/users/{username}
- Watched filmsGET /v1/letterboxd/users/{username}/films
- DiaryGET /v1/letterboxd/users/{username}/diary
- ReviewsGET /v1/letterboxd/users/{username}/reviews
- ReviewGET /v1/letterboxd/users/{username}/films/{slug}/review
- WatchlistGET /v1/letterboxd/users/{username}/watchlist
- FollowersGET /v1/letterboxd/users/{username}/followers