Google Maps Business Search
PythonMapsPOST api.upapi.io/google-maps-search.postSearch Google Maps for businesses by text query, optionally centred on coordinates. Returns each place with its name, address, coordinates, category, rating, review count, opening hours, website and phone where Google publishes them, plus the place id you can pass to Google Maps Place Details.
Request schema
| Field | Type | Description |
|---|---|---|
zoom | Map zoom for the coordinate search, controlling the radius: 13 is roughly a city (the default), 16 a neighbourhood, 10 a metro area.· default: null | |
queryreq | string | What to search for, exactly as you would type it into Google Maps (e.g. "coffee shops in Ottawa" or "dentist near Shoreditch London"). |
region | string | Two-letter country code biasing the results (e.g. "ca", "gb").· default: "us" |
language | string | Language for names and hours, as an ISO code (e.g. "en", "fr").· default: "en" |
latitude | Centre the search on this latitude (e.g. 45.4215). Pass with longitude. Omit to let Google infer the area from the query text.· default: null | |
proxyUrl | Route the request through your own proxy (e.g. http://user:pass@host:port). Omit to use upAPI's pool.· default: null | |
longitude | Centre the search on this longitude (e.g. -75.6972). Pass with latitude.· default: null | |
maxResults | integer | How many places to return, up to 100 (e.g. 40). Google serves 20 per page, so higher values cost proportionally more time.· default: 20 |
Response schema
| Field | Type | Description |
|---|---|---|
countreq | integer | |
queryreq | string | |
placesreq | array | |
truncatedreq | boolean | True when Google still had more results than maxResults allowed |
Try it
Try it
What to search for, exactly as you would type it into Google Maps (e.g. "coffee shops in Ottawa" or "dentist near Shoreditch London").
Map zoom for the coordinate search, controlling the radius: 13 is roughly a city (the default), 16 a neighbourhood, 10 a metro area.
Two-letter country code biasing the results (e.g. "ca", "gb").
Language for names and hours, as an ISO code (e.g. "en", "fr").
Centre the search on this latitude (e.g. 45.4215). Pass with longitude. Omit to let Google infer the area from the query text.
Route the request through your own proxy (e.g. http://user:pass@host:port). Omit to use upAPI's pool.
Centre the search on this longitude (e.g. -75.6972). Pass with latitude.
How many places to return, up to 100 (e.g. 40). Google serves 20 per page, so higher values cost proportionally more time.
Run this endpoint live
Jump in as a guest — no signup — and run google-maps-search.post with your own inputs. Create a free account anytime to get your own API key.
Code examples
curl -X POST https://api.upapi.io/google-maps-search.post \
-H 'Content-Type: application/json' \
-H 'x-api-key: YOUR_API_KEY' \
-d '{ "query": "coffee shops in Ottawa", "region": "us", "language": "en", "maxResults": 20 }'