{
  "openapi": "3.0.1",
  "info": {
    "title": "Google Maps Scraper — Business Emails & Phones API",
    "description": "Collect Google Maps business leads with published contacts, optional MX email signals and explicit coverage. Bulk export: JSON, CSV, Excel and API. Pay per result: from $1.25/1K business results; usage extra; mode rates differ.",
    "version": "0.5",
    "x-build-id": "21oMaXFaIk9a4jlgc"
  },
  "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. Allowed range: 1..5."
          },
          "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. Allowed range: 1..5."
          },
          "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. Allowed range: 0..unbounded."
          },
          "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. Allowed range: 0..unbounded."
          },
          "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": "Inspect readable public business websites for emails and socials. Blocked/failed reads are diagnosed and not charged as completed enrichment; emails are not from Google listings.",
            "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": "Check email format and published MX records. Disposable-domain service failure is reported explicitly; no mailbox existence or deliverability guarantee. 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. Allowed range: 0..100."
          },
          "trackChanges": {
            "title": "Track changes across runs (monitor mode)",
            "type": "boolean",
            "description": "Compare observed cards using state scoped to location/categories/filters. First run establishes a new baseline. Avoid concurrent runs for the same input; failed processing preserves baseline.",
            "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. Allowed range: 1..200000.",
            "default": 1000
          },
          "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. Allowed range: 1..500.",
            "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. Allowed range: 1..1000.",
            "default": 100
          },
          "deepContactPages": {
            "title": "Search contact and about pages",
            "type": "boolean",
            "description": "When homepage has no email, inspect likely Contact/About pages in contacts or full mode. Extra event only if a page is readable; does not guarantee an email.",
            "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
                  }
                }
              }
            }
          }
        }
      }
    }
  }
}