{
  "openapi": "3.0.1",
  "info": {
    "title": "The Movie Database (TMDB) Scraper",
    "description": "Scrape movies, TV shows, people, and awards from themoviedb.org with the same list filters as the website — genres, dates, certifications, languages, ratings, watch providers, plus cast, reviews, and images.",
    "version": "1.0",
    "x-build-id": "d145obSOKKQ3dsCCk"
  },
  "servers": [
    {
      "url": "https://api.apify.com/v2"
    }
  ],
  "paths": {
    "/acts/rigelbytes~themoviedb-scraper/run-sync-get-dataset-items": {
      "post": {
        "operationId": "run-sync-get-dataset-items-rigelbytes-themoviedb-scraper",
        "x-openai-isConsequential": false,
        "summary": "Executes an Actor, waits for its completion, and returns Actor's dataset items in response.",
        "tags": [
          "Run Actor"
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/inputSchema"
              }
            }
          }
        },
        "parameters": [
          {
            "name": "token",
            "in": "query",
            "required": true,
            "schema": {
              "type": "string"
            },
            "description": "Enter your Apify token here"
          }
        ],
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/acts/rigelbytes~themoviedb-scraper/runs": {
      "post": {
        "operationId": "runs-sync-rigelbytes-themoviedb-scraper",
        "x-openai-isConsequential": false,
        "summary": "Executes an Actor and returns information about the initiated run in response.",
        "tags": [
          "Run Actor"
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/inputSchema"
              }
            }
          }
        },
        "parameters": [
          {
            "name": "token",
            "in": "query",
            "required": true,
            "schema": {
              "type": "string"
            },
            "description": "Enter your Apify token here"
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/runsResponseSchema"
                }
              }
            }
          }
        }
      }
    },
    "/acts/rigelbytes~themoviedb-scraper/run-sync": {
      "post": {
        "operationId": "run-sync-rigelbytes-themoviedb-scraper",
        "x-openai-isConsequential": false,
        "summary": "Executes an Actor, waits for completion, and returns the OUTPUT from Key-value store in response.",
        "tags": [
          "Run Actor"
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/inputSchema"
              }
            }
          }
        },
        "parameters": [
          {
            "name": "token",
            "in": "query",
            "required": true,
            "schema": {
              "type": "string"
            },
            "description": "Enter your Apify token here"
          }
        ],
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    }
  },
  "components": {
    "schemas": {
      "inputSchema": {
        "type": "object",
        "properties": {
          "searchQueries": {
            "title": "Search queries",
            "type": "array",
            "description": "Search TMDB the same way the website search box does (e.g. \"The Odyssey\", \"Moana\", \"Matt Damon\"). Combine with Search type below. You can use this instead of Lists or Start URLs.",
            "items": {
              "type": "string"
            }
          },
          "searchType": {
            "title": "Search type",
            "enum": [
              "all",
              "movie",
              "tv",
              "person"
            ],
            "type": "string",
            "description": "Which search tab to use for search queries.",
            "default": "all"
          },
          "lists": {
            "title": "Lists",
            "uniqueItems": true,
            "type": "array",
            "description": "Built-in TMDB lists (Movies: Popular / Now Playing / Upcoming / Top Rated; TV: Popular / Airing Today / On TV / Top Rated; People Popular; Awards Popular / Upcoming). Defaults to Popular Movies when nothing else is provided.",
            "items": {
              "type": "string",
              "enum": [
                "movie_popular",
                "movie_now_playing",
                "movie_upcoming",
                "movie_top_rated",
                "tv_popular",
                "tv_airing_today",
                "tv_on_the_air",
                "tv_top_rated",
                "people_popular",
                "awards_popular",
                "awards_upcoming"
              ],
              "enumTitles": [
                "Movies — Popular",
                "Movies — Now Playing",
                "Movies — Upcoming",
                "Movies — Top Rated",
                "TV — Popular",
                "TV — Airing Today",
                "TV — Currently On TV",
                "TV — Top Rated",
                "People — Popular",
                "Awards — Popular",
                "Awards — Upcoming"
              ]
            }
          },
          "startUrls": {
            "title": "Start URLs",
            "type": "array",
            "description": "TMDB page URLs to scrape: list pages (https://www.themoviedb.org/movie), filtered discover URLs, search URLs, or a specific title/person/award (e.g. https://www.themoviedb.org/movie/1368337-the-odyssey).",
            "items": {
              "type": "object",
              "required": [
                "url"
              ],
              "properties": {
                "url": {
                  "type": "string",
                  "title": "URL of a web page",
                  "format": "uri"
                }
              }
            }
          },
          "sortBy": {
            "title": "Sort results by",
            "enum": [
              "",
              "popularity.desc",
              "popularity.asc",
              "vote_average.desc",
              "vote_average.asc",
              "primary_release_date.desc",
              "primary_release_date.asc",
              "first_air_date.desc",
              "first_air_date.asc",
              "title.asc",
              "title.desc",
              "name.asc",
              "name.desc"
            ],
            "type": "string",
            "description": "Overrides the list's default sort. Leave empty to keep Popular / Top Rated / Now Playing defaults from the website.",
            "default": ""
          },
          "genres": {
            "title": "Genres",
            "type": "array",
            "description": "Genre names or TMDB IDs. Movie examples: Action, Adventure, Animation, Comedy, Crime, Documentary, Drama, Family, Fantasy, History, Horror, Music, Mystery, Romance, Science Fiction, TV Movie, Thriller, War, Western. TV examples: Action & Adventure, Kids, News, Reality, Sci-Fi & Fantasy, Soap, Talk, War & Politics.",
            "items": {
              "type": "string"
            }
          },
          "releaseDateFrom": {
            "title": "Release date from",
            "type": "string",
            "description": "Include titles with a release date on or after this day (YYYY-MM-DD). Maps to the website From date."
          },
          "releaseDateTo": {
            "title": "Release date to",
            "type": "string",
            "description": "Include titles with a release date on or before this day (YYYY-MM-DD). Maps to the website To date."
          },
          "airDateFrom": {
            "title": "Air date from (TV)",
            "type": "string",
            "description": "TV episode air-date lower bound (YYYY-MM-DD)."
          },
          "airDateTo": {
            "title": "Air date to (TV)",
            "type": "string",
            "description": "TV episode air-date upper bound (YYYY-MM-DD)."
          },
          "firstAirDateFrom": {
            "title": "First air date from (TV)",
            "type": "string",
            "description": "TV first-air-date lower bound (YYYY-MM-DD)."
          },
          "firstAirDateTo": {
            "title": "First air date to (TV)",
            "type": "string",
            "description": "TV first-air-date upper bound (YYYY-MM-DD)."
          },
          "originalLanguage": {
            "title": "Original language",
            "type": "string",
            "description": "ISO 639-1 language code from the Languages filter (e.g. en, ru, ko, ja, fr, de, es, zh)."
          },
          "originCountry": {
            "title": "Origin country",
            "type": "string",
            "description": "ISO 3166-1 country code (e.g. US, DE, KR, JP, GB)."
          },
          "certifications": {
            "title": "Certifications",
            "type": "array",
            "description": "Age ratings from the Certifications filter. Values depend on Watch region / certification country (e.g. US: G, PG, PG-13, R, NC-17; DE: 0, 6, 12, 16, 18).",
            "items": {
              "type": "string"
            }
          },
          "certificationCountry": {
            "title": "Certification country",
            "type": "string",
            "description": "Country whose certification system to use (ISO 3166-1, e.g. US, DE). Defaults to the watch region when set."
          },
          "voteAverageMin": {
            "title": "Minimum user score",
            "minimum": 0,
            "maximum": 10,
            "type": "number",
            "description": "Minimum average user score (0–10), matching the website slider."
          },
          "voteAverageMax": {
            "title": "Maximum user score",
            "minimum": 0,
            "maximum": 10,
            "type": "number",
            "description": "Maximum average user score (0–10)."
          },
          "voteCountMin": {
            "title": "Minimum user votes",
            "minimum": 0,
            "type": "integer",
            "description": "Minimum number of user votes (the website's \"Minimum User Votes\" slider). Top Rated lists use 300 by default."
          },
          "runtimeMin": {
            "title": "Minimum runtime (minutes)",
            "minimum": 0,
            "type": "integer",
            "description": "Minimum runtime in minutes (website default 0)."
          },
          "runtimeMax": {
            "title": "Maximum runtime (minutes)",
            "minimum": 0,
            "type": "integer",
            "description": "Maximum runtime in minutes (website default 400)."
          },
          "keywords": {
            "title": "Keywords",
            "type": "array",
            "description": "TMDB keyword IDs (e.g. 12377 for zombie). Multiple values are combined the same way as the website keyword filter.",
            "items": {
              "type": "string"
            }
          },
          "networks": {
            "title": "TV networks",
            "type": "array",
            "description": "TMDB TV network IDs from the Filter by TV networks control (e.g. 213 for Netflix).",
            "items": {
              "type": "string"
            }
          },
          "watchRegion": {
            "title": "Where to watch — country",
            "type": "string",
            "description": "Watch-region country code (e.g. US, DE, GB). Used for streaming availability and certifications."
          },
          "watchProviders": {
            "title": "Where to watch — providers",
            "type": "array",
            "description": "Streaming service names or TMDB provider IDs (e.g. Netflix, Disney+, 8). Names supported: Netflix, Amazon Prime Video, Apple TV, Disney+, Hulu, Max, Paramount+, Peacock, YouTube.",
            "items": {
              "type": "string"
            }
          },
          "watchMonetizationTypes": {
            "title": "Availabilities",
            "uniqueItems": true,
            "type": "array",
            "description": "Availability types from the website: Stream (flatrate), Free, Ads, Rent, Buy. Leave empty to search all.",
            "items": {
              "type": "string",
              "enum": [
                "flatrate",
                "free",
                "ads",
                "rent",
                "buy"
              ],
              "enumTitles": [
                "Stream",
                "Free",
                "Ads",
                "Rent",
                "Buy"
              ]
            }
          },
          "releaseTypes": {
            "title": "Release types",
            "uniqueItems": true,
            "type": "array",
            "description": "Used when \"Search all releases\" is turned off on the website. Now Playing typically uses Theatrical.",
            "items": {
              "type": "string",
              "enum": [
                "premiere",
                "theatrical_limited",
                "theatrical",
                "digital",
                "physical",
                "tv"
              ],
              "enumTitles": [
                "Premiere",
                "Theatrical (limited)",
                "Theatrical",
                "Digital",
                "Physical",
                "TV"
              ]
            }
          },
          "includeAdult": {
            "title": "Include adult titles",
            "type": "boolean",
            "description": "Include adult titles when TMDB would otherwise hide them.",
            "default": false
          },
          "includeDetails": {
            "title": "Scrape full title pages",
            "type": "boolean",
            "description": "Open each movie/TV page for overview, score, genres, status, budget, trailer, and keywords. Turn off to keep list-card fields only.",
            "default": true
          },
          "includeCastAndCrew": {
            "title": "Include full cast & crew",
            "type": "boolean",
            "description": "Open the Cast & Crew tab (as in the HAR session for The Odyssey).",
            "default": true
          },
          "includeReviews": {
            "title": "Include user reviews",
            "type": "boolean",
            "description": "Open the Reviews tab (as in the HAR session for Moana).",
            "default": true
          },
          "includeAwards": {
            "title": "Include awards",
            "type": "boolean",
            "description": "Open the Awards tab for each title.",
            "default": true
          },
          "includeAlternativeTitles": {
            "title": "Include alternative titles",
            "type": "boolean",
            "description": "Open the Alternative Titles tab.",
            "default": true
          },
          "includeImages": {
            "title": "Include image galleries",
            "type": "boolean",
            "description": "Open Backdrops and Posters image tabs.",
            "default": true
          },
          "maxItems": {
            "title": "Max items",
            "minimum": 0,
            "type": "integer",
            "description": "Maximum number of records to scrape (0 = unlimited).",
            "default": 0
          },
          "proxyConfiguration": {
            "title": "Proxy configuration",
            "type": "object",
            "description": "Proxy settings. Apify Residential is recommended for TMDB.",
            "default": {
              "useApifyProxy": true,
              "apifyProxyGroups": [
                "RESIDENTIAL"
              ]
            }
          }
        }
      },
      "runsResponseSchema": {
        "type": "object",
        "properties": {
          "data": {
            "type": "object",
            "properties": {
              "id": {
                "type": "string"
              },
              "actId": {
                "type": "string"
              },
              "userId": {
                "type": "string"
              },
              "startedAt": {
                "type": "string",
                "format": "date-time",
                "example": "2025-01-08T00:00:00.000Z"
              },
              "finishedAt": {
                "type": "string",
                "format": "date-time",
                "example": "2025-01-08T00:00:00.000Z"
              },
              "status": {
                "type": "string",
                "example": "READY"
              },
              "meta": {
                "type": "object",
                "properties": {
                  "origin": {
                    "type": "string",
                    "example": "API"
                  },
                  "userAgent": {
                    "type": "string"
                  }
                }
              },
              "stats": {
                "type": "object",
                "properties": {
                  "inputBodyLen": {
                    "type": "integer",
                    "example": 2000
                  },
                  "rebootCount": {
                    "type": "integer",
                    "example": 0
                  },
                  "restartCount": {
                    "type": "integer",
                    "example": 0
                  },
                  "resurrectCount": {
                    "type": "integer",
                    "example": 0
                  },
                  "computeUnits": {
                    "type": "integer",
                    "example": 0
                  }
                }
              },
              "options": {
                "type": "object",
                "properties": {
                  "build": {
                    "type": "string",
                    "example": "latest"
                  },
                  "timeoutSecs": {
                    "type": "integer",
                    "example": 300
                  },
                  "memoryMbytes": {
                    "type": "integer",
                    "example": 1024
                  },
                  "diskMbytes": {
                    "type": "integer",
                    "example": 2048
                  }
                }
              },
              "buildId": {
                "type": "string"
              },
              "defaultKeyValueStoreId": {
                "type": "string"
              },
              "defaultDatasetId": {
                "type": "string"
              },
              "defaultRequestQueueId": {
                "type": "string"
              },
              "buildNumber": {
                "type": "string",
                "example": "1.0.0"
              },
              "containerUrl": {
                "type": "string"
              },
              "usage": {
                "type": "object",
                "properties": {
                  "ACTOR_COMPUTE_UNITS": {
                    "type": "integer",
                    "example": 0
                  },
                  "DATASET_READS": {
                    "type": "integer",
                    "example": 0
                  },
                  "DATASET_WRITES": {
                    "type": "integer",
                    "example": 0
                  },
                  "KEY_VALUE_STORE_READS": {
                    "type": "integer",
                    "example": 0
                  },
                  "KEY_VALUE_STORE_WRITES": {
                    "type": "integer",
                    "example": 1
                  },
                  "KEY_VALUE_STORE_LISTS": {
                    "type": "integer",
                    "example": 0
                  },
                  "REQUEST_QUEUE_READS": {
                    "type": "integer",
                    "example": 0
                  },
                  "REQUEST_QUEUE_WRITES": {
                    "type": "integer",
                    "example": 0
                  },
                  "DATA_TRANSFER_INTERNAL_GBYTES": {
                    "type": "integer",
                    "example": 0
                  },
                  "DATA_TRANSFER_EXTERNAL_GBYTES": {
                    "type": "integer",
                    "example": 0
                  },
                  "PROXY_RESIDENTIAL_TRANSFER_GBYTES": {
                    "type": "integer",
                    "example": 0
                  },
                  "PROXY_SERPS": {
                    "type": "integer",
                    "example": 0
                  }
                }
              },
              "usageTotalUsd": {
                "type": "number",
                "example": 0.00005
              },
              "usageUsd": {
                "type": "object",
                "properties": {
                  "ACTOR_COMPUTE_UNITS": {
                    "type": "integer",
                    "example": 0
                  },
                  "DATASET_READS": {
                    "type": "integer",
                    "example": 0
                  },
                  "DATASET_WRITES": {
                    "type": "integer",
                    "example": 0
                  },
                  "KEY_VALUE_STORE_READS": {
                    "type": "integer",
                    "example": 0
                  },
                  "KEY_VALUE_STORE_WRITES": {
                    "type": "number",
                    "example": 0.00005
                  },
                  "KEY_VALUE_STORE_LISTS": {
                    "type": "integer",
                    "example": 0
                  },
                  "REQUEST_QUEUE_READS": {
                    "type": "integer",
                    "example": 0
                  },
                  "REQUEST_QUEUE_WRITES": {
                    "type": "integer",
                    "example": 0
                  },
                  "DATA_TRANSFER_INTERNAL_GBYTES": {
                    "type": "integer",
                    "example": 0
                  },
                  "DATA_TRANSFER_EXTERNAL_GBYTES": {
                    "type": "integer",
                    "example": 0
                  },
                  "PROXY_RESIDENTIAL_TRANSFER_GBYTES": {
                    "type": "integer",
                    "example": 0
                  },
                  "PROXY_SERPS": {
                    "type": "integer",
                    "example": 0
                  }
                }
              }
            }
          }
        }
      }
    }
  }
}