# Google Maps Scraper API by Bolt Scraper

> Programmatic API for Google Maps lead extraction. Query synchronously for instant search responses (~2-4s) or launch distributed cloud batch jobs with residential proxy rotation, website email crawl, mobile phone detection, and webhooks.

**URL:** https://boltscraper.com/api/google-maps-scraper-api/  
**Online Platform:** https://app.boltscraper.com  
**Interactive Docs:** https://docs.boltscraper.com/?topic=maps-search  
**Base URL:** `https://boltscraper.com/api/v1`  
**Authentication:** `Authorization: Bearer bs_YOUR_API_KEY`  

---

## What it does

The Bolt Scraper Google Maps Scraper API allows developers, CRM builders, and sales teams to programmatically extract enriched B2B leads directly from Google Maps without headless browser management or proxy configuration:

1. **Synchronous Real-Time Search (`POST /v1/maps/search`)**: Instantly returns ~20 enriched business listings per query in ~2–4 seconds for on-demand lead enrichment and live user search experiences.
2. **Distributed Cloud Batch Jobs (`POST /v1/maps/jobs`)**: Execute multi-keyword, multi-city lead generation pipelines across thousands of targets concurrently with automatic webhook delivery.

---

## Key Features

* **Bypass 120-Result Pagination Limit**: Automatically overcomes Google Maps' native 120-listing viewport cap. Activating `ultra_mode` executes multi-point sub-grid coordinate scanning across micro-neighborhoods to extract up to 3x more listings in dense cities.
* **Integrated Website Email Crawler**: When `extract_emails: true` is enabled, our crawler automatically explores official company websites in the background, extracting direct corporate emails and 7+ social channels.
* **Mobile vs. Landline Phone Classification**: Classifies every phone number as Mobile (SMS-ready for outreach), Landline, or VoIP, complete with country-specific E.164 formatting.
* **Zero IP Bans & Zero CAPTCHAs**: Backed by a distributed residential proxy network with automatic browser TLS fingerprint spoofing and IP rotation.
* **HMAC-SHA256 Signed Webhooks**: Dispatches instant webhook callbacks as soon as batch jobs complete.

---

## Endpoints

### 1. Real-Time Search
`POST https://boltscraper.com/api/v1/maps/search`

#### Request Payload
```json
{
  "keyword": "Coffee shops in Seattle",
  "page": 1,
  "hl": "en"
}
```

#### Response (HTTP 200 OK)
```json
{
  "success": true,
  "status": "success",
  "pagination": {
    "page": 1,
    "results_returned": 20,
    "total_results": 20,
    "has_next_page": true
  },
  "data": [
    {
      "Keyword": "Coffee shops in Seattle",
      "Name": "Storyville Coffee Pike Place",
      "Full Address": "94 Pike St Top floor Seattle WA 98101",
      "City": "Seattle",
      "State": "WA",
      "Zip": "98101",
      "Country": "US",
      "Phone": "(206) 780-5777",
      "International Phone": "+1 206-780-5777",
      "Phone Type": "Landline",
      "Website": "https://storyville.com",
      "Domain": "storyville.com",
      "Category": "Coffee shop",
      "Average Rating": 4.6,
      "Review Count": 2180,
      "Place ID": "ChIJbT0mY5JqkFQRzVq7g",
      "Latitude": 47.6089,
      "Longitude": -122.3405
    }
  ]
}
```

---

### 2. Create Background Batch Job
`POST https://boltscraper.com/api/v1/jobs`

#### Request Payload
```json
{
  "service": "google_maps",
  "queries": ["electricians in Miami FL", "HVAC repair Orlando FL"],
  "extract_emails": true,
  "ultra_mode": true,
  "webhook_url": "https://your-crm.com/api/webhook"
}
```

---

### 3. Check Job Status & Download CSV
* **Status**: `GET https://boltscraper.com/api/v1/jobs/{job_id}`
* **Download**: `GET https://boltscraper.com/api/v1/jobs/{job_id}/download`

---

## Comparison: Bolt Scraper API vs Google Places API

| Comparison Metric | Bolt Scraper API | Google Places API |
|:---|:---|:---|
| **Cost per 1,000 Leads** | **~$0.38** (Starting at $19/mo for 50k leads) | **$17.00 – $32.00** |
| **Direct Business Emails** | ✅ Included (Crawled from domains) | ❌ Not available |
| **Social Media Profiles** | ✅ Facebook, IG, LinkedIn, Twitter/X | ❌ Not available |
| **Phone Line Classification** | ✅ Mobile, Landline, VoIP | ❌ Raw phone string only |
| **Pagination Depth** | ✅ 200–300+ leads per keyword | ❌ Hard cap at 60 places |
| **Webhooks Support** | ✅ HMAC-signed webhook callbacks | ❌ Requires polling |
