{
  "openapi": "3.0.1",
  "info": {
    "title": "Google Maps Business Scraper",
    "description": "Extract up to 500 business listings from Google Maps by keyword and location. Returns name, phone number, hours, category, address, website, and rating. Perfect for lead generation and market research.",
    "version": "0.0",
    "x-build-id": "xR5aWapbziYe43mhh"
  },
  "servers": [
    {
      "url": "https://api.apify.com/v2"
    }
  ],
  "paths": {
    "/acts/mantraydtg~google-maps-apify-scraper/run-sync-get-dataset-items": {
      "post": {
        "operationId": "run-sync-get-dataset-items-mantraydtg-google-maps-apify-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/mantraydtg~google-maps-apify-scraper/runs": {
      "post": {
        "operationId": "runs-sync-mantraydtg-google-maps-apify-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/mantraydtg~google-maps-apify-scraper/run-sync": {
      "post": {
        "operationId": "run-sync-mantraydtg-google-maps-apify-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",
        "required": [
          "searchStringsArray",
          "locationQuery"
        ],
        "properties": {
          "searchStringsArray": {
            "title": "🔍 Search term(s)",
            "type": "array",
            "description": "One or more keywords to search on Google Maps (e.g. \"restaurant\", \"plumber\", \"dentist\").",
            "default": [
              "restaurant"
            ],
            "items": {
              "type": "string"
            }
          },
          "locationQuery": {
            "title": "📍 Location",
            "type": "string",
            "description": "City, state, or full address to search in. Use only one location per run.",
            "default": "New York, USA"
          },
          "scrapeHours": {
            "title": "⏰ Scrape business hours (slower)",
            "type": "boolean",
            "description": "Scrape opening hours for each business. Adds significant time per listing. Disable for faster runs.",
            "default": false
          },
          "maxCrawledPlacesPerSearch": {
            "title": "💯 Number of places to extract (per search term)",
            "minimum": 1,
            "maximum": 500,
            "type": "integer",
            "description": "Maximum number of places to scrape per search term. Base cost: $4 per 1,000 places.",
            "default": 500
          },
          "language": {
            "title": "🌍 Language",
            "type": "string",
            "description": "Language for Google Maps results.",
            "default": "en"
          },
          "skipClosedPlaces": {
            "title": "Skip closed places",
            "type": "boolean",
            "description": "If true, permanently closed businesses will be skipped.",
            "default": false
          },
          "scrapePlaceDetailPage": {
            "title": "📌 Scrape full place detail page ($)",
            "type": "boolean",
            "description": "Scrape the full detail page for each place. Incurs additional cost.",
            "default": false
          },
          "scrapeContacts": {
            "title": "🏢 Scrape company contacts ($)",
            "type": "boolean",
            "description": "Attempt to scrape additional contact information such as email. Incurs additional cost.",
            "default": false
          },
          "includeWebResults": {
            "title": "Include web results",
            "type": "boolean",
            "description": "Include web search results alongside map results.",
            "default": false
          },
          "scrapeReviewsPersonalData": {
            "title": "⭐️ Scrape reviews personal data ($)",
            "type": "boolean",
            "description": "Include reviewer personal data when scraping reviews.",
            "default": false
          },
          "maximumLeadsEnrichmentRecords": {
            "title": "👥 Max lead enrichment records ($)",
            "minimum": 0,
            "type": "integer",
            "description": "Number of leads to enrich. Set to 0 to disable. Incurs additional cost.",
            "default": 0
          },
          "scrapeDirectories": {
            "title": "Scrape directories",
            "type": "boolean",
            "description": "Also scrape results from business directories.",
            "default": false
          },
          "scrapeImageAuthors": {
            "title": "🖼️ Scrape image authors ($)",
            "type": "boolean",
            "description": "Scrape image author information. Incurs additional cost.",
            "default": false
          },
          "scrapeTableReservationProvider": {
            "title": "Scrape table reservation provider",
            "type": "boolean",
            "description": "Scrape the table reservation provider if available.",
            "default": false
          },
          "scrapeSocialMediaProfiles": {
            "title": "👥 Scrape social media profiles ($)",
            "type": "object",
            "description": "Choose which social media profiles to attempt to scrape. Each incurs additional cost.",
            "default": {
              "facebooks": false,
              "instagrams": false,
              "tiktoks": false,
              "twitters": false,
              "youtubes": 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
                  }
                }
              },
              "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
                  }
                }
              }
            }
          }
        }
      }
    }
  }
}