{
  "openapi": "3.0.1",
  "info": {
    "title": "Google Maps Scraper | MX-Verified Emails & Leads",
    "description": "Build local business lead lists by city, category or area. Export names, public emails, phones, websites, ratings, hours and opportunity signals to CSV, Excel, JSON, API or MCP. No Google API key required.",
    "version": "0.4",
    "x-build-id": "tpDw3vYXS8Lud9Bea"
  },
  "servers": [
    {
      "url": "https://api.apify.com/v2"
    }
  ],
  "paths": {
    "/acts/apivault_labs~google-maps-scraper-emails-contact-details-leads/run-sync-get-dataset-items": {
      "post": {
        "operationId": "run-sync-get-dataset-items-apivault_labs-google-maps-scraper-emails-contact-details-leads",
        "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/apivault_labs~google-maps-scraper-emails-contact-details-leads/runs": {
      "post": {
        "operationId": "runs-sync-apivault_labs-google-maps-scraper-emails-contact-details-leads",
        "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/apivault_labs~google-maps-scraper-emails-contact-details-leads/run-sync": {
      "post": {
        "operationId": "run-sync-apivault_labs-google-maps-scraper-emails-contact-details-leads",
        "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": {
          "country": {
            "title": "Country",
            "type": "string",
            "description": "Country code (ISO 3166-1 alpha-2, e.g. 'us', 'gb', 'de'). Scopes the city lookup and localizes Google results.",
            "default": "us"
          },
          "city": {
            "title": "City",
            "type": "string",
            "description": "City to collect, for example `Chicago`, `Toronto`, or `Berlin`. Leave empty when using coordinates or a bounding box.",
            "default": "Boise"
          },
          "state": {
            "title": "State / region (optional)",
            "type": "string",
            "description": "Narrows the city lookup, e.g. 'Illinois' for Springfield."
          },
          "postalCode": {
            "title": "Postal / ZIP code (optional)",
            "type": "string",
            "description": "Target a single postal code instead of a whole city."
          },
          "categories": {
            "title": "Search terms / business categories",
            "type": "array",
            "description": "Select one or more business categories. Start with one niche; every additional category expands coverage, runtime, and possible cost.",
            "items": {
              "type": "string",
              "enum": [
                "restaurant",
                "cafe",
                "bar",
                "bakery",
                "fast food restaurant",
                "pizza restaurant",
                "hotel",
                "motel",
                "dentist",
                "doctor",
                "medical clinic",
                "pharmacy",
                "chiropractor",
                "physiotherapist",
                "psychologist",
                "veterinarian",
                "hair salon",
                "barber shop",
                "beauty salon",
                "nail salon",
                "spa",
                "massage therapist",
                "fitness center",
                "gym",
                "plumber",
                "electrician",
                "HVAC contractor",
                "roofing contractor",
                "general contractor",
                "painter",
                "landscaper",
                "cleaning service",
                "pest control service",
                "locksmith",
                "auto repair shop",
                "car dealer",
                "used car dealer",
                "tire shop",
                "auto body shop",
                "car wash",
                "towing service",
                "car rental agency",
                "real estate agency",
                "property management company",
                "mortgage broker",
                "insurance agency",
                "lawyer",
                "accountant",
                "tax preparation service",
                "financial advisor",
                "marketing agency",
                "advertising agency",
                "web design company",
                "software company",
                "IT support service",
                "business consultant",
                "employment agency",
                "coworking space",
                "retail store",
                "clothing store",
                "furniture store",
                "electronics store",
                "hardware store",
                "florist",
                "jewelry store",
                "pet store",
                "school",
                "day care center",
                "driving school",
                "photographer",
                "event planner",
                "wedding venue",
                "travel agency",
                "moving company"
              ],
              "enumTitles": [
                "Restaurants",
                "Cafes",
                "Bars",
                "Bakeries",
                "Fast food",
                "Pizza restaurants",
                "Hotels",
                "Motels",
                "Dentists",
                "Doctors",
                "Medical clinics",
                "Pharmacies",
                "Chiropractors",
                "Physiotherapists",
                "Psychologists",
                "Veterinarians",
                "Hair salons",
                "Barber shops",
                "Beauty salons",
                "Nail salons",
                "Spas",
                "Massage therapists",
                "Fitness centers",
                "Gyms",
                "Plumbers",
                "Electricians",
                "HVAC contractors",
                "Roofing contractors",
                "General contractors",
                "Painters",
                "Landscapers",
                "Cleaning services",
                "Pest control",
                "Locksmiths",
                "Auto repair shops",
                "Car dealers",
                "Used car dealers",
                "Tire shops",
                "Auto body shops",
                "Car washes",
                "Towing services",
                "Car rental agencies",
                "Real estate agencies",
                "Property management",
                "Mortgage brokers",
                "Insurance agencies",
                "Lawyers",
                "Accountants",
                "Tax preparation",
                "Financial advisors",
                "Marketing agencies",
                "Advertising agencies",
                "Web design companies",
                "Software companies",
                "IT support",
                "Business consultants",
                "Employment agencies",
                "Coworking spaces",
                "Retail stores",
                "Clothing stores",
                "Furniture stores",
                "Electronics stores",
                "Hardware stores",
                "Florists",
                "Jewelry stores",
                "Pet stores",
                "Schools",
                "Day care centers",
                "Driving schools",
                "Photographers",
                "Event planners",
                "Wedding venues",
                "Travel agencies",
                "Moving companies"
              ]
            },
            "default": [
              "dentist"
            ]
          },
          "customSearchTerms": {
            "title": "Custom search terms (optional)",
            "type": "array",
            "description": "Add categories or niche search phrases that are not available in the list above.",
            "items": {
              "type": "string"
            }
          },
          "websiteFilter": {
            "title": "Website",
            "enum": [
              "any",
              "without",
              "with"
            ],
            "type": "string",
            "description": "Keep all businesses, only those WITHOUT a website, or only those WITH one.",
            "default": "any"
          },
          "requirePhone": {
            "title": "Only businesses with a phone",
            "type": "boolean",
            "description": "Keep only leads that expose a public phone number.",
            "default": false
          },
          "onlyNoBooking": {
            "title": "Only businesses without online booking",
            "type": "boolean",
            "description": "Keep only businesses with no booking system (no Reserve with Google, no third-party platform).",
            "default": false
          },
          "openNowOnly": {
            "title": "Only businesses open now",
            "type": "boolean",
            "description": "Keep only places Google currently marks as open. Places with unknown opening status are excluded.",
            "default": false
          },
          "skipClosedPlaces": {
            "title": "Skip closed businesses",
            "type": "boolean",
            "description": "Exclude businesses Google marks with a closed status.",
            "default": false
          },
          "minRating": {
            "title": "Minimum rating",
            "minimum": 1,
            "maximum": 5,
            "type": "number",
            "description": "Keep only businesses rated at or above this (1-5). Unrated businesses are excluded when set."
          },
          "maxRating": {
            "title": "Maximum rating",
            "minimum": 1,
            "maximum": 5,
            "type": "number",
            "description": "Keep only businesses rated at or below this (1-5) вЂ” find reputation problems to fix."
          },
          "minReviews": {
            "title": "Minimum review count",
            "minimum": 0,
            "type": "integer",
            "description": "Keep only businesses with at least this many Google reviews. Unreviewed businesses are excluded when set."
          },
          "maxReviews": {
            "title": "Maximum review count",
            "minimum": 0,
            "type": "integer",
            "description": "Keep only businesses with no more than this many Google reviews. Leave empty or zero for no upper limit."
          },
          "nameFilter": {
            "title": "Business name filter",
            "type": "string",
            "description": "Optional text to match against the business name, for example 'Hilton' or 'McDonald’s'."
          },
          "nameMatching": {
            "title": "Business name matching",
            "enum": [
              "includes",
              "exact"
            ],
            "type": "string",
            "description": "Match the name exactly or keep names containing the filter text.",
            "default": "includes"
          },
          "googleCategoryFilter": {
            "title": "Filter by Google's own category (optional)",
            "type": "array",
            "description": "Keep only businesses whose Google category contains any of these words, e.g. 'pizza'.",
            "items": {
              "type": "string"
            }
          },
          "enrich": {
            "title": "Enrich leads (email, socials, buy-intent signals)",
            "type": "boolean",
            "description": "Visit each business website to find public emails and social profiles. The default sample keeps this enabled because contacts are the main value of this Actor.",
            "default": true
          },
          "enrichmentMode": {
            "title": "Enrichment depth",
            "enum": [
              "contacts",
              "full"
            ],
            "type": "string",
            "description": "Fast contacts finds email and social profiles with high parallelism. Full website audit also checks CMS, SSL, mobile readiness, speed, booking, and hiring signals.",
            "default": "contacts"
          },
          "verifyEmails": {
            "title": "Check email quality (MX)",
            "type": "boolean",
            "description": "Keep emails with a valid format, a non-disposable domain, and a working mail server (MX). This checks the domain, not the existence of an individual mailbox. Requires enrichment.",
            "default": true
          },
          "requireEmail": {
            "title": "Only leads with an email",
            "type": "boolean",
            "description": "Keep only leads where an email was found. Requires enrichment.",
            "default": false
          },
          "minPriorityScore": {
            "title": "Minimum priority score",
            "minimum": 0,
            "maximum": 100,
            "type": "integer",
            "description": "Keep only leads scoring at or above this (0-100). Requires enrichment."
          },
          "trackChanges": {
            "title": "Track changes across runs (monitor mode)",
            "type": "boolean",
            "description": "Remember businesses between runs and tag each lead new / changed / unchanged (with first-seen / last-seen). Ideal on a schedule.",
            "default": false
          },
          "onlyFresh": {
            "title": "Only fresh leads (new or changed)",
            "type": "boolean",
            "description": "With monitor mode on, return only leads new or changed since the last run. Ignored if monitor mode is off.",
            "default": false
          },
          "maxResults": {
            "title": "Maximum leads to deliver",
            "minimum": 1,
            "maximum": 200000,
            "type": "integer",
            "description": "Maximum Dataset rows. For email and score filters, the Actor automatically checks extra candidates to get closer to this number. A niche may still contain fewer matching businesses.",
            "default": 50
          },
          "fastMode": {
            "title": "Fast mode",
            "type": "boolean",
            "description": "Return a quick sample for validation and lightweight workflows. Disable it when you need broader whole-city coverage.",
            "default": true
          },
          "concurrency": {
            "title": "Google Maps search workers",
            "minimum": 1,
            "maximum": 500,
            "type": "integer",
            "description": "Parallel workers used to discover businesses. The default is tuned for a reliable first run; increase only for large exports.",
            "default": 100
          },
          "enrichmentConcurrency": {
            "title": "Website and email workers",
            "minimum": 1,
            "maximum": 1000,
            "type": "integer",
            "description": "Parallel website checks used for contact enrichment. The default favors reliability; full website audit is automatically capped at 100.",
            "default": 100
          },
          "deepContactPages": {
            "title": "Search contact and about pages",
            "type": "boolean",
            "description": "When the homepage has no email, inspect likely contact and about pages. Improves email coverage but makes enrichment slower.",
            "default": false
          },
          "language": {
            "title": "Results language (optional)",
            "type": "string",
            "description": "Language code for result labels (e.g. 'en', 'de'). Empty = the country's own language."
          },
          "lat": {
            "title": "Custom center latitude (advanced)",
            "type": "string",
            "description": "Center latitude. Example: `41.8781`. To search by coordinates, also provide Longitude and Area span. Coordinates override City."
          },
          "lng": {
            "title": "Custom center longitude (advanced)",
            "type": "string",
            "description": "Center longitude. Example: `-87.6298`. Used together with Latitude and Area span."
          },
          "span": {
            "title": "Area span in degrees (advanced)",
            "type": "string",
            "description": "Area width in degrees around the center. Example: `0.20` is roughly a medium-sized city area. Used only with custom coordinates."
          },
          "north": {
            "title": "Bounding box north (advanced)",
            "type": "number",
            "description": "Northern edge. Set north, south, east and west together to define an exact rectangle. The bounding box overrides both city and center coordinates."
          },
          "south": {
            "title": "Bounding box south (advanced)",
            "type": "number",
            "description": "Southern latitude."
          },
          "east": {
            "title": "Bounding box east (advanced)",
            "type": "number",
            "description": "Eastern longitude. Dateline-crossing boxes are not supported."
          },
          "west": {
            "title": "Bounding box west (advanced)",
            "type": "number",
            "description": "Western longitude."
          }
        }
      },
      "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
                  }
                }
              }
            }
          }
        }
      }
    }
  }
}