{
  "openapi": "3.0.1",
  "info": {
    "title": "Google Maps Scraper — Places",
    "description": "Scrape Google Maps businesses in any country. Get names, addresses, phones, websites, ratings, star histograms, popular times and more. Search by keyword and location. From $2 per 1,000 places. Pair with our Reviews Scraper for full review text.",
    "version": "0.3",
    "x-build-id": "JZ1zsQLICXvqnb62B"
  },
  "servers": [
    {
      "url": "https://api.apify.com/v2"
    }
  ],
  "paths": {
    "/acts/rastriq~gmaps-discover-enrich/run-sync-get-dataset-items": {
      "post": {
        "operationId": "run-sync-get-dataset-items-rastriq-gmaps-discover-enrich",
        "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/rastriq~gmaps-discover-enrich/runs": {
      "post": {
        "operationId": "runs-sync-rastriq-gmaps-discover-enrich",
        "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/rastriq~gmaps-discover-enrich/run-sync": {
      "post": {
        "operationId": "run-sync-rastriq-gmaps-discover-enrich",
        "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": {
          "searches": {
            "title": "🔍 Search terms — one per line",
            "type": "array",
            "description": "Type each search like in Google Maps, one per line. Include the area in the line. Works in any country.<br><br><b>Examples</b><br><code>restaurant, 28521, Madrid, Spain</code><br><code>dentist, 75001, Paris, France</code><br><code>hotel, New York, USA</code>",
            "items": {
              "type": "string"
            }
          },
          "maxResults": {
            "title": "📏 Max results per search",
            "minimum": 0,
            "type": "integer",
            "description": "How many places to keep per search line. <b>0 = no limit</b> (all that Google returns, ~250 per line).",
            "default": 50
          },
          "deepCoverage": {
            "title": "📊 Full census of the area",
            "type": "boolean",
            "description": "<b>Off</b>: a single search returns the top ~250 places. <b>On</b>: the Actor maps the area (city/postcode) and scans it section by section to list <b>every</b> establishment — a full census. Slower and many more results.",
            "default": false
          },
          "categoryFilter": {
            "title": "🏷️ Only include these categories",
            "type": "array",
            "description": "Optional. Keep only the business types you pick — handy to drop unrelated results (e.g. cafés when you only want restaurants). Empty = keep all. Best with <b>Results language = English</b>.",
            "items": {
              "type": "string",
              "enum": [
                "Restaurant",
                "Bar",
                "Pub",
                "Cafe",
                "Coffee shop",
                "Bakery",
                "Pizza restaurant",
                "Fast food restaurant",
                "Tapas bar",
                "Seafood restaurant",
                "Italian restaurant",
                "Japanese restaurant",
                "Chinese restaurant",
                "Mexican restaurant",
                "Indian restaurant",
                "Steak house",
                "Hamburger restaurant",
                "Ice cream shop",
                "Night club",
                "Hotel",
                "Hostel",
                "Bed & breakfast",
                "Apartment building",
                "Vacation home rental",
                "Supermarket",
                "Grocery store",
                "Convenience store",
                "Butcher shop",
                "Greengrocer",
                "Wine store",
                "Liquor store",
                "Clothing store",
                "Shoe store",
                "Jewelry store",
                "Bookstore",
                "Electronics store",
                "Furniture store",
                "Hardware store",
                "Florist",
                "Pet store",
                "Gift shop",
                "Toy store",
                "Sporting goods store",
                "Mobile phone store",
                "Shopping mall",
                "Pharmacy",
                "Hospital",
                "Doctor",
                "Dentist",
                "Dental clinic",
                "Veterinarian",
                "Optician",
                "Physiotherapist",
                "Medical clinic",
                "Beauty salon",
                "Hair salon",
                "Barber shop",
                "Nail salon",
                "Spa",
                "Tattoo shop",
                "Gym",
                "Fitness center",
                "Yoga studio",
                "Bank",
                "ATM",
                "Insurance agency",
                "Real estate agency",
                "Lawyer",
                "Notary public",
                "Accountant",
                "Consultant",
                "Marketing agency",
                "Coworking space",
                "Gas station",
                "Car dealer",
                "Used car dealer",
                "Car repair",
                "Car wash",
                "Tire shop",
                "Motorcycle dealer",
                "Parking lot",
                "Car rental",
                "School",
                "Primary school",
                "Secondary school",
                "University",
                "Language school",
                "Driving school",
                "Kindergarten",
                "Library",
                "Museum",
                "Art gallery",
                "Cinema",
                "Theater",
                "Tourist attraction",
                "Park",
                "Church",
                "Laundry",
                "Dry cleaner",
                "Locksmith",
                "Plumber",
                "Electrician",
                "Painter",
                "Carpenter",
                "Construction company",
                "Travel agency",
                "Post office",
                "Courier service",
                "Storage facility",
                "Funeral home",
                "Cemetery",
                "Mosque",
                "Synagogue",
                "Police station",
                "Fire station",
                "Town hall",
                "Embassy"
              ]
            }
          },
          "country": {
            "title": "🌍 Country / region",
            "enum": [
              "",
              "us",
              "af",
              "al",
              "dz",
              "as",
              "ad",
              "ao",
              "ai",
              "aq",
              "ag",
              "ar",
              "am",
              "aw",
              "au",
              "at",
              "az",
              "bs",
              "bh",
              "bd",
              "bb",
              "by",
              "be",
              "bz",
              "bj",
              "bm",
              "bt",
              "bo",
              "ba",
              "bw",
              "bv",
              "br",
              "io",
              "bn",
              "bg",
              "bf",
              "bi",
              "kh",
              "cm",
              "ca",
              "cv",
              "ky",
              "cf",
              "td",
              "cl",
              "cn",
              "cx",
              "cc",
              "co",
              "km",
              "cg",
              "cd",
              "ck",
              "cr",
              "ci",
              "hr",
              "cu",
              "cy",
              "cz",
              "dk",
              "dj",
              "dm",
              "do",
              "ec",
              "eg",
              "sv",
              "gq",
              "er",
              "ee",
              "et",
              "fk",
              "fo",
              "fj",
              "fi",
              "fr",
              "gf",
              "pf",
              "tf",
              "ga",
              "gm",
              "ge",
              "de",
              "gh",
              "gi",
              "gr",
              "gl",
              "gd",
              "gp",
              "gu",
              "gt",
              "gn",
              "gw",
              "gy",
              "ht",
              "hm",
              "va",
              "hn",
              "hu",
              "is",
              "in",
              "id",
              "ir",
              "iq",
              "ie",
              "il",
              "it",
              "jm",
              "jp",
              "jo",
              "kz",
              "ke",
              "ki",
              "kp",
              "kr",
              "kw",
              "kg",
              "la",
              "lv",
              "lb",
              "ls",
              "lr",
              "ly",
              "li",
              "lt",
              "lu",
              "mo",
              "mk",
              "mg",
              "mw",
              "my",
              "mv",
              "ml",
              "mt",
              "mh",
              "mq",
              "mr",
              "mu",
              "yt",
              "mx",
              "fm",
              "md",
              "mc",
              "mn",
              "me",
              "ms",
              "ma",
              "mz",
              "mm",
              "na",
              "nr",
              "np",
              "nl",
              "an",
              "nc",
              "nz",
              "ni",
              "ne",
              "ng",
              "nu",
              "nf",
              "mp",
              "no",
              "om",
              "pk",
              "pw",
              "ps",
              "pa",
              "pg",
              "py",
              "pe",
              "ph",
              "pn",
              "pl",
              "pt",
              "pr",
              "qa",
              "re",
              "ro",
              "ru",
              "rw",
              "sh",
              "kn",
              "lc",
              "pm",
              "vc",
              "ws",
              "sm",
              "st",
              "sa",
              "sn",
              "rs",
              "sc",
              "sl",
              "sg",
              "sk",
              "si",
              "sb",
              "so",
              "za",
              "gs",
              "ss",
              "es",
              "lk",
              "sd",
              "sr",
              "sj",
              "sz",
              "se",
              "ch",
              "sy",
              "tw",
              "tj",
              "tz",
              "th",
              "tl",
              "tg",
              "tk",
              "to",
              "tt",
              "tn",
              "tr",
              "tm",
              "tc",
              "tv",
              "ug",
              "ua",
              "ae",
              "gb",
              "um",
              "uy",
              "uz",
              "vu",
              "ve",
              "vn",
              "vg",
              "vi",
              "wf",
              "eh",
              "ye",
              "zm",
              "zw"
            ],
            "type": "string",
            "description": "Google Maps region for the search. You can leave the default — the area is set by your search text.",
            "default": "us"
          },
          "language": {
            "title": "🗣️ Results language",
            "enum": [
              "en",
              "af",
              "az",
              "id",
              "ms",
              "bs",
              "ca",
              "cs",
              "da",
              "de",
              "et",
              "es",
              "es-419",
              "eu",
              "fil",
              "fr",
              "gl",
              "hr",
              "zu",
              "is",
              "it",
              "sw",
              "lv",
              "lt",
              "hu",
              "nl",
              "no",
              "uz",
              "pl",
              "pt-BR",
              "pt-PT",
              "ro",
              "sq",
              "sk",
              "sl",
              "fi",
              "sv",
              "vi",
              "tr",
              "el",
              "bg",
              "ky",
              "kk",
              "mk",
              "mn",
              "ru",
              "sr",
              "uk",
              "ka",
              "hy",
              "iw",
              "ur",
              "ar",
              "fa",
              "am",
              "ne",
              "hi",
              "mr",
              "bn",
              "pa",
              "gu",
              "ta",
              "te",
              "kn",
              "ml",
              "si",
              "th",
              "lo",
              "my",
              "km",
              "ko",
              "ja",
              "zh-CN",
              "zh-TW"
            ],
            "type": "string",
            "description": "Language of the place details (names, addresses, review text).",
            "default": "en"
          },
          "startUrls": {
            "title": "🔗 Google Maps URLs",
            "type": "array",
            "description": "Paste a list of Google Maps place URLs, upload a file or link a Google Sheet. The Actor extracts these places directly — no search needed.",
            "items": {
              "type": "object",
              "required": [
                "url"
              ],
              "properties": {
                "url": {
                  "type": "string",
                  "title": "URL of a web page",
                  "format": "uri"
                }
              }
            }
          },
          "placeIds": {
            "title": "🆔 Place IDs",
            "type": "array",
            "description": "Or paste a bulk list of Google Maps place identifiers, one per line.",
            "items": {
              "type": "string"
            }
          },
          "maxReviews": {
            "title": "💬 Individual reviews per place",
            "minimum": 0,
            "maximum": 60,
            "type": "integer",
            "description": "Rating, review count and the star histogram are <b>always included</b>, free. Use this only to also pull individual review text (author, rating, text) — up to 60 per place. <b>0 = none</b>. This is the paid extra.",
            "default": 0
          },
          "includePopularTimes": {
            "title": "⏰ Include popular times",
            "type": "boolean",
            "description": "Add the busy-hours-by-day data. Off by default — it makes the output heavier.",
            "default": false
          },
          "proxyConfiguration": {
            "title": "🛡️ Proxy",
            "type": "object",
            "description": "Leave as is. Used automatically so the Actor can read all the data.",
            "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
                  }
                }
              }
            }
          }
        }
      }
    }
  }
}