{
  "openapi": "3.0.1",
  "info": {
    "title": "Google Maps Reviews Scraper",
    "description": "Scrape all Google Maps reviews using keywords, place URLs, or IDs. Filter by date, rating, or keyword, and capture reviewer details, translations, photos, aspect ratings, owner replies, and complete business info in structured format",
    "version": "0.6",
    "x-build-id": "tBSwyvBqyDXvwEamK"
  },
  "servers": [
    {
      "url": "https://api.apify.com/v2"
    }
  ],
  "paths": {
    "/acts/web_wanderer~google-reviews-scraper/run-sync-get-dataset-items": {
      "post": {
        "operationId": "run-sync-get-dataset-items-web_wanderer-google-reviews-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/web_wanderer~google-reviews-scraper/runs": {
      "post": {
        "operationId": "runs-sync-web_wanderer-google-reviews-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/web_wanderer~google-reviews-scraper/run-sync": {
      "post": {
        "operationId": "run-sync-web_wanderer-google-reviews-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": {
          "include_personal": {
            "title": "Personal information",
            "type": "boolean",
            "description": "If enabled, the actor will include personal information about the reviewer, such as name, user ID, and profile URL.",
            "default": false
          },
          "place_urls": {
            "title": "Google Maps Place URLs",
            "uniqueItems": false,
            "type": "array",
            "description": "Google Maps place URLs to scrape (e.g., `https://www.google.com/maps/place/Gate+City+Coffee/@42.8721827,-112.5145324,13z/...`).",
            "items": {
              "type": "string"
            }
          },
          "place_ids": {
            "title": "Place IDs",
            "uniqueItems": true,
            "type": "array",
            "description": "Google Place IDs (`place_fid`) to scrape (e.g., `ChIJoTXWl8dbwokRpKA2BJFVsGA`).",
            "items": {
              "type": "string"
            }
          },
          "anyDate": {
            "title": "Scrape reviews newer than",
            "pattern": "^(\\d{4})-(0[1-9]|1[0-2])-(0[1-9]|[12]\\d|3[01])$|^(\\d+)\\s*(day|week|month|year)s?$",
            "type": "string",
            "description": "Select date in format YYYY-MM-DD or {number} {unit}"
          },
          "lang": {
            "title": "Translate to",
            "type": "string",
            "description": "Set the language in which reviews should be returned. It will include both the original language and the specified target language.",
            "default": "en"
          },
          "limit": {
            "title": "Number of reviews",
            "maximum": 100000,
            "type": "integer",
            "description": "Maximum number of reviews to scrape per place.",
            "default": 200
          },
          "order": {
            "title": "Sort reviews by",
            "enum": [
              "most_relevant",
              "newest",
              "highest_rating",
              "lowest_rating"
            ],
            "type": "string",
            "description": "Set the order of the reviews",
            "default": "most_relevant"
          },
          "source": {
            "title": "Reviews source",
            "enum": [
              "all",
              "google",
              "tripadvisor",
              "trip_com",
              "priceline",
              "zenhotels"
            ],
            "type": "string",
            "description": "Select the source of the reviews. Choose 'All' to scrape from all available sources, or specify 'Googles' for Google reviews only.",
            "default": "all"
          },
          "searchKeyword": {
            "title": "Filter reviews by keyword",
            "type": "string",
            "description": "This filter looks for keywords used in reviews, e.g `good`, `bad` etc",
            "default": ""
          },
          "search": {
            "title": "Search queries & Google maps URLs",
            "type": "array",
            "description": "Provide one or more search queries (e.g., 'restaurants') or Google Maps search URLs. URLs must include the `maps/search` path to be valid.",
            "items": {
              "type": "string"
            }
          },
          "rating": {
            "title": "Rating",
            "enum": [
              "0.0",
              "2.0",
              "2.5",
              "3.0",
              "3.5",
              "4.0",
              "4.5"
            ],
            "type": "string",
            "description": "Filter out places below a specific average rating. For example, selecting '4.0 and up' will only include places rated 4.0 or higher. Select 'All' to disable rating filtering.",
            "default": "0.0"
          },
          "search_limit": {
            "title": "Page limit per search",
            "maximum": 10000,
            "type": "integer",
            "description": "Set the maximum number of search result pages to process per query or URL. Each page typically contains up to 40 places.",
            "default": 1
          },
          "search_location": {
            "title": "Search location",
            "type": "string",
            "description": "Specify a location to search within, such as a city name (e.g., `Paris`, `Berlin`, `New York`). Useful for general queries like 'restaurants' without geographic context.",
            "default": "New York"
          },
          "search_coordination": {
            "title": "Search coordinates",
            "type": "string",
            "description": "Specify a geographic coordinate in the format `<longitude>,<latitude>` (e.g., `2.3522,48.8566` for Paris). This allows for precise location targeting when used with general queries.",
            "default": ""
          }
        }
      },
      "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
                  }
                }
              }
            }
          }
        }
      }
    }
  }
}