TMDB API endpoint
Returns a page of TMDB movies from the `category` chart (`popular` by default, or `top_rated`, `now_playing`, `upcoming`), optionally refined by `sort_by`, `with_genres`, `original_language`, release dates, rating, votes and runtime. `limit` defaults to 10 (max 20). Each movie has id, title, overview, poster, release date and `uri`; `has_next_page` signals more pages.
/tmdb/movie/listReturns TMDB movie charts and filtered movie discovery results. This covers the Movies menu pages (popular, now_playing, upcoming, and top_rated) plus their pagination and browse filters.
Query parameters:
category (optional, default popular). Allowed values: popular, top_rated, now_playing, upcoming.page (optional, default 1) — 1-based results page.sort_by (optional). Allowed values: popularity.desc, popularity.asc, vote_average.desc, vote_average.asc, primary_release_date.desc, primary_release_date.asc, title.asc, title.desc.with_genres (optional) — comma- or pipe-separated movie genre ids. Allowed individual values: 28 (Action), 12 (Adventure), 16 (Animation), 35 (Comedy), 80 (Crime), 99 (Documentary), 18 (Drama), 10751 (Family), 14 (Fantasy), 36 (History), 27 (Horror), 10402 (Music), 9648 (Mystery), 10749 (Romance), 878 (Science Fiction), 10770 (TV Movie), 53 (Thriller), 10752 (War), 37 (Western). For the live discovery list, use GET /tmdb/genres.original_language (optional) — two-letter original-language code, for example en.date_from, date_to (optional) — release-date bounds in YYYY-MM-DD format.min_rating, max_rating (optional) — TMDB user-rating bounds from 0 to 10.min_votes (optional) — minimum vote count.min_runtime, max_runtime (optional) — runtime bounds in minutes.include_adult (optional, default false).limit (optional, default 10, max 20).Response includes page, has_next_page, and movies[] (id, title, uri). Use id with GET /tmdb/movie/{id} for full detail. A valid filtered page with no matches returns an empty movies array. Note: the top_rated chart is not a pure highest-rating sort — TMDB pins a small number of trending/promoted titles at the top of the page ahead of the rating-sorted list, which this endpoint faithfully reflects rather than re-sorting.
| Field | Filled in, of 20 checked | Values in the sample |
|---|---|---|
| id | 20 | |
| title | 20 | “Spider-Man: Brand New Day” and 19 other values |
| uri | 20 | themoviedb.org |
| Parameter | Type | Required | Default | Description | Example |
|---|---|---|---|---|---|
| category | string | No | Movie chart, default popular Allowed values: popular, top_rated, now_playing, upcoming. | ||
| page | integer | No | 1-based page, default 1 | ||
| sort_by | string | No | Sort order Allowed values: popularity.desc, popularity.asc, vote_average.desc, vote_average.asc, primary_release_date.desc, primary_release_date.asc, title.asc, title.desc. | ||
| with_genres | string | No | Comma- or pipe-separated movie genre ids: 28,12,16,35,80,99,18,10751,14,36,27,10402,9648,10749,878,10770,53,10752,37 | 18,878 | |
| original_language | string | No | Two-letter original-language code | en | |
| date_from | string | No | Release date lower bound (YYYY-MM-DD) | ||
| date_to | string | No | Release date upper bound (YYYY-MM-DD) | ||
| min_rating | number | No | Minimum rating, 0-10 | ||
| max_rating | number | No | Maximum rating, 0-10 | ||
| min_votes | integer | No | Minimum vote count | ||
| min_runtime | integer | No | Minimum runtime in minutes | ||
| max_runtime | integer | No | Maximum runtime in minutes | ||
| include_adult | boolean | No | Include adult titles | ||
| limit | integer | No | Max movies, default 10, max 20 | ||
| x-api-key (header) | string | Yes | API key required |
curl -X GET "https://api.crawlora.net/api/v1/tmdb/movie/list?category=popular&page=1&sort_by=popularity.desc&include_adult=true&limit=10" \ -H "x-api-key: $CRAWLORA_API_KEY"
{
"code": 200,
"msg": "OK",
"data": {
"category": "now_playing",
"page": 2,
"has_next_page": true,
"movies": [
{
"id": "986056",
"title": "Thunderbolts*",
"uri": "https://www.themoviedb.org/movie/986056-thunderbolts"
}
],
"source_url": "https://www.themoviedb.org/movie/now-playing?page=2"
}
}Request schema
No body schema
Response schema
#/definitions/tmdb.movieListResponseDoc
| Field | Type | Required | Enum | Bounds | Example | Description |
|---|---|---|---|---|---|---|
| code | integer | No | 200 | |||
| data | tmdb.MovieListResponse | No | ||||
| data.category | string | No | ||||
| data.has_next_page | boolean | No | ||||
| data.movies | array | No | MediaRef record, 6 fields: id, overview, poster_url, release_date, title, uri. Described under TMDB TV List API. | |||
| data.page | integer | No | ||||
| data.source_url | string | No | ||||
| msg | string | No | OK |
| Status | Description | Schema |
|---|---|---|
| 400 | Bad Request | #/definitions/app.Response |
| 500 | Internal Server Error | #/definitions/app.Response |
| 503 | Service Unavailable | #/definitions/app.Response |
Use environment variables for secrets and keep Crawlora API keys server-side.
curl -X GET "https://api.crawlora.net/api/v1/tmdb/movie/list?category=popular&page=1&sort_by=popularity.desc&include_adult=true&limit=10" \
-H "x-api-key: $CRAWLORA_API_KEY"