Google Maps scraper API

Google Maps — business search, place details, nearby search, reviews, and business enrichment.

Web & maps 5 capabilities stable 0.0% success rate

Capabilities

Every capability is one POST /execute call that returns structured JSON.

Enrich Business

enrich.google-maps

Unified enrichment lookup: find a business on Google Maps by name + optional city/state and return the best-match Place with phone, website, address, rating, hours, coordinates.

Request

curl -X POST https://data.upscrape.com/execute \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"input":{"business_name":"Apple Inc","city":"Cupertino","state":"CA"},"capability":"enrich.google-maps"}'

Input

Field Type Required Description
business_name string required Business name to search for.
city string optional City name for location bias.
country string optional Country code (default 'us').
lang string optional Language code (default 'en').
state string optional State or region for location bias.

Output

Field Type Required Description
address string optional
business_status string optional
cid string optional
confidence string optional 'high' on exact match, 'medium' on substring.
feature_id string optional
hours array<object> optional
hours[].day string optional
hours[].hours string optional
lat number optional
latency_ms integer optional
lng number optional
maps_url string optional
name string optional
open_now boolean | null optional
phone string optional
photo_url string optional
place_id string optional
price_level integer optional
rating number optional
review_count integer optional
source string optional Always 'google_maps'.
types array<string> optional
website string optional

Search Nearby

googlemaps.nearby

Search for places near a coordinate — returns name, address, phone, website, rating, coordinates, and categories for businesses within a given radius. Supports keyword filtering and place type constraints.

Request

curl -X POST https://data.upscrape.com/execute \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"input":{"lat":37.7749,"limit":20,"lng":-122.4194,"query":"coffee","radius":500},"capability":"googlemaps.nearby"}'

Input

Field Type Required Description
country string optional Country code (default 'us').
lang string optional Language code (default 'en').
lat number required Latitude (required).
limit integer optional Max results (default 60, max 120).
lng number required Longitude (required).
query string optional Keyword filter, e.g. 'coffee'.
radius integer optional Search radius in meters (default 1000).
types array<string> optional Place types, e.g. ['restaurant'].

Output

Field Type Required Description
items array<object> required Place objects near the given coordinates.
items[].address string optional
items[].cid string optional
items[].feature_id string optional
items[].lat number optional
items[].lng number optional
items[].maps_url string optional
items[].name string optional
items[].phone string optional
items[].photo_url string optional
items[].place_id string optional
items[].rating number optional
items[].review_count integer optional
items[].types array<string> optional
items[].website string optional
summary object required
summary.has_more boolean optional
summary.query string optional
summary.total_items integer optional

Get Place

googlemaps.place

Fetch full details for a single place — name, address, phone, website, rating, review count, coordinates, categories, opening hours, photos, and Google Maps URL. Provide a search query or a Maps URL.

Request

curl -X POST https://data.upscrape.com/execute \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"input":{"query":"Empire State Building New York"},"capability":"googlemaps.place"}'

Input

Field Type Required Description
country string optional Country code (default 'us').
lang string optional Language code (default 'en').
query string optional Place name or address, e.g. 'Shake Shack Madison Square Park'.
url string optional Full Google Maps URL (name extracted from path).

Output

Field Type Required Description
address string optional
business_status string optional
cid string optional
feature_id string optional
hours array<object> optional
hours[].day string optional
hours[].hours string optional
lat number optional
lng number optional
maps_url string optional
name string optional
open_now boolean | null optional
phone string optional
photo_url string optional
place_id string optional
price_level integer optional
rating number optional
review_count integer optional
types array<string> optional
website string optional

List Reviews

googlemaps.reviews

Stream all reviews for a place. Provide one of: feature_id (preferred), place_id, cid, or url. If feature_id is not provided, an extra request is made to resolve it.

Request

curl -X POST https://data.upscrape.com/execute \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"input":{"feature_id":"0x89c259a57ed8c6a3:0x7fde98e2e28a5bca","limit":50,"sort":"newest"},"capability":"googlemaps.reviews"}'

Input

Field Type Required Description
feature_id string optional 0x...:0x... from SearchPlaces/GetPlace result (preferred).
lang string optional Language code (default 'en').
limit integer optional Max reviews to return (default 100).
sort string optional Sort order.
url string optional Google Maps URL (name extracted for feature_id lookup).

Output

Field Type Required Description
items array<object> required Review objects for the place.
items[].language string optional
items[].like_count integer optional
items[].owner_reply string optional
items[].photos array<string> optional
items[].published_at string optional ISO 8601 timestamp.
items[].rating integer optional
items[].relative_time string optional
items[].reviewer_name string optional
items[].reviewer_photo string optional
items[].reviewer_url string optional
items[].text string optional
summary object required
summary.has_more boolean optional
summary.total_items integer optional
summary.total_pages integer optional

Search Places

googlemaps.search

Search Google Maps for businesses by keyword and optional location — returns name, address, phone, website, rating, coordinates, categories, and place IDs. Supports geo-bias via lat/lng/zoom and country filtering.

Request

curl -X POST https://data.upscrape.com/execute \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"input":{"limit":20,"location":"San Francisco, CA","query":"coffee shops"},"capability":"googlemaps.search"}'

Input

Field Type Required Description
country string optional Country code for gl param (default 'us').
lang string optional Language code (default 'en').
lat number optional Latitude for geo-bias (use with lng).
limit integer optional Max records to return (default 60, max 120).
lng number optional Longitude for geo-bias.
location string optional Location bias appended to query, e.g. 'New York, NY'.
query string required Search query, e.g. 'pizza restaurants'.
zoom integer optional Map zoom level (default 14; higher = tighter area, lower = wider).

Output

Field Type Required Description
items array<object> required Place objects matching the search query.
items[].address string optional
items[].business_status string optional
items[].cid string optional Decimal CID, most stable long-term ID.
items[].feature_id string optional Internal feature ID (0x...:0x...), needed for reviews.
items[].lat number optional
items[].lng number optional
items[].maps_url string optional
items[].name string optional
items[].phone string optional
items[].photo_url string optional
items[].place_id string optional Google Places API ID (ChIJ...).
items[].price_level integer optional
items[].rating number optional
items[].review_count integer optional
items[].types array<string> optional
items[].website string optional
summary object required
summary.has_more boolean optional
summary.query string optional
summary.total_items integer optional

Run Google Maps in under a minute

Sign in, create an API key, and try any capability in the playground before you write code.

Get an API key