{
  "openapi": "3.0.1",
  "info": {
    "title": "Metacritic Scores Scraper",
    "description": "Scrape Metacritic games, movies and TV shows and return one record per title with critic and user scores, review counts, release dates and genres. Enable details for score breakdowns, platforms, developers, publishers, directors and cast; no login or API key is required.",
    "version": "0.1",
    "x-build-id": "4fStnDt3lPPlLlfL6"
  },
  "servers": [
    {
      "url": "https://api.apify.com/v2"
    }
  ],
  "paths": {
    "/acts/axiomworks~metacritic-scores-scraper/run-sync-get-dataset-items": {
      "post": {
        "operationId": "run-sync-get-dataset-items-axiomworks-metacritic-scores-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/axiomworks~metacritic-scores-scraper/runs": {
      "post": {
        "operationId": "runs-sync-axiomworks-metacritic-scores-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/axiomworks~metacritic-scores-scraper/run-sync": {
      "post": {
        "operationId": "run-sync-axiomworks-metacritic-scores-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": {
          "searchTerms": {
            "title": "Search terms",
            "type": "array",
            "description": "Titles to search on Metacritic, e.g. [\"zelda\", \"the bear\"]. Each term returns its matching games, movies and TV shows (narrow with searchType); results from all terms share maxItems. A term with no match is skipped and noted in the status message. Leave empty to use URLs or browse filters.",
            "items": {
              "type": "string"
            }
          },
          "searchType": {
            "title": "Search type",
            "enum": [
              "all",
              "game",
              "movie",
              "tv"
            ],
            "type": "string",
            "description": "Restrict search terms to one kind of title: all, game, movie or tv. Default all. Applies to searchTerms only.",
            "default": "all"
          },
          "startUrls": {
            "title": "Metacritic URLs",
            "type": "array",
            "description": "Metacritic URLs, e.g. [{\"url\": \"https://www.metacritic.com/game/elden-ring/\"}]. Accepts title pages (/game/, /movie/, /tv/), browse pages (/browse/game/ps5/all/all-time/metascore/) and search pages. Processed before search terms. A dead or non-Metacritic URL is skipped; if nothing matches the run ends with 0 items and a message naming the cause.",
            "items": {
              "type": "object",
              "required": [
                "url"
              ],
              "properties": {
                "url": {
                  "type": "string",
                  "title": "URL of a web page",
                  "format": "uri"
                }
              }
            }
          },
          "slugs": {
            "title": "Title slugs",
            "type": "array",
            "description": "Known title slugs, e.g. elden-ring (category selects games, movies or tv), or game/elden-ring, movie/parasite, tv/severance for mixed media. URLs run first, then slugs, then searches. maxItems is shared; missing or blocked titles return no rows.",
            "default": [],
            "items": {
              "type": "string"
            }
          },
          "category": {
            "title": "Category",
            "enum": [
              "games",
              "movies",
              "tv"
            ],
            "type": "string",
            "description": "Category for browsing and bare slugs: games, movies or tv, default games. Qualified slugs such as movie/parasite set their own type. Browsing runs only when URLs, slugs and search terms are empty.",
            "default": "games"
          },
          "platform": {
            "title": "Game platform",
            "enum": [
              "all",
              "ps5",
              "xbox-series-x",
              "nintendo-switch-2",
              "nintendo-switch",
              "pc",
              "mobile",
              "3ds",
              "dreamcast",
              "ds",
              "gameboy-advance",
              "gamecube",
              "meta-quest",
              "nintendo-64",
              "ps1",
              "ps2",
              "ps3",
              "ps4",
              "psp",
              "ps-vita",
              "wii",
              "wii-u",
              "xbox",
              "xbox-360",
              "xbox-one"
            ],
            "type": "string",
            "description": "Games only (category 'games'): one platform id such as 'ps5', 'pc' or 'nintendo-switch'. Default 'all'. Ignored for movies and tv.",
            "default": "all"
          },
          "genres": {
            "title": "Genres",
            "type": "array",
            "description": "Browse only. Genre names as on Metacritic, e.g. [\"Horror\", \"Comedy\", \"Action RPG\"] (case-insensitive). Each genre runs one browse and results are merged without duplicates, sharing maxItems.",
            "items": {
              "type": "string"
            }
          },
          "releaseYearFrom": {
            "title": "Released from year",
            "minimum": 1850,
            "maximum": 2200,
            "type": "integer",
            "description": "Browse only. Earliest release year, e.g. 2020. If only the end year is set, starts at 1900."
          },
          "releaseYearTo": {
            "title": "Released to year",
            "minimum": 1850,
            "maximum": 2200,
            "type": "integer",
            "description": "Browse only. Latest release year, e.g. 2025. If only the start year is set, ends at the current year."
          },
          "sortBy": {
            "title": "Sort by",
            "enum": [
              "metascore",
              "userscore",
              "newest"
            ],
            "type": "string",
            "description": "Browse order, best first: 'metascore' (critic score), 'userscore' or 'newest' (release date). Default 'metascore'. Browse only; ignored for search terms.",
            "default": "metascore"
          },
          "maxItems": {
            "title": "Maximum results",
            "minimum": 1,
            "maximum": 5000,
            "type": "integer",
            "description": "Maximum titles returned across all URLs, slugs, search terms and browse filters combined, 1-5000, default 50. Duplicates count once; the run stops once this many are saved. Use 10 for a quick sample.",
            "default": 50
          },
          "includeDetails": {
            "title": "Include details",
            "type": "boolean",
            "description": "true (default): adds detail data for listing/search results, including user counts, review splits and per-platform scores. false: listing data only, with detail-only fields null. Direct URLs and slugs always fetch title details.",
            "default": true
          },
          "proxyConfiguration": {
            "title": "Proxy configuration",
            "type": "object",
            "description": "Optional Apify Proxy. Default is no proxy, which works for Metacritic. Enable it if requests start getting blocked (403/429).",
            "default": {
              "useApifyProxy": false
            }
          }
        }
      },
      "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
                  },
                  "PROXY_UNBLOCKER_UNITS": {
                    "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
                  },
                  "PROXY_UNBLOCKER_UNITS": {
                    "type": "integer",
                    "example": 0
                  }
                }
              }
            }
          }
        }
      }
    }
  }
}