Google Maps API
The Google Maps API returns place, business and review data as clean JSON.
🤖 Using an AI assistant? Copy this link into ChatGPT / Claude / Cursor — it reads every endpoint and parameter instantly and tells you if this API fits your use case.
The primary place/search endpoint returns places with name, rating, review count, category, address, locality and coordinates, and you can pull a place/detail, look up a place by id, find nearby places, geocode an address, and read place/reviews and place/photos. It is the managed alternative to the official Places API and to scraping Maps — for local-data products, lead generation and review monitoring, with no per-request Google billing to manage. One ReefAPI key, one shared credit pool, the standard envelope.
Real request and response JSON
Captured from the indexed primary action, place/search, on .
{
"method": "POST",
"url": "https://api.reefapi.com/google-maps/v1/place/search",
"headers": {
"x-api-key": "$REEF_KEY",
"content-type": "application/json"
},
"body": {
"query": "specialty coffee Times Square",
"lat": 40.7589,
"lng": -73.9881,
"maxResults": 10
}
}{
"ok": true,
"meta": {
"api": "google-maps",
"endpoint": "place/search",
"mode": "live",
"latency_ms": 920.5,
"record_count": 10,
"bytes": 123340,
"cache_hit": false,
"completeness_pct": 99,
"query": "specialty coffee Times Square"
},
"data": {
"places": [
{
"fid": "0x89c2585580e483ab:0xe[redacted-phone]b3d7a8",
"place_id": "0x89c2585580e483ab:0xe[redacted-phone]b3d7a8",
"cid": "[redacted-phone]",
"entity_id": "/g/11c1xjnyxs",
"name": "[redacted-name]",
"rating": 4,
"review_count": 555,
"category_primary": "Coffee shop",
"categories": [
"Coffee shop",
"Cafe",
"Coffee store"
],
"address": "117 W 46th St, New York, NY 10036",
"locality": "New York, NY 10036",
"latitude": 40.7579144,
"longitude": -73.9831988,
"website": "http://forfivecoffee.com/",
"domain": "forfivecoffee.com",
"phone": "[redacted-phone]",
"phone_display": "[redacted-phone]",
"hours_today": [
"8 AM-4 PM"
],
"photos": [
"https://lh4.googleusercontent.com/-tbMGIa_Z3BI/AAAAAAAAAAI/AAAAAAAAAAA/w5zuKoQaC78/s44-p-k-no-ns-nd/photo.jpg"
],
"photo_count": 1,
"thumbnail": "https://lh4.googleusercontent.com/-tbMGIa_Z3BI/AAAAAAAAAAI/AAAAAAAAAAA/w5zuKoQaC78/s44-p-k-no-ns-nd/photo.jpg",
"maps_url": "https://www.google.com/maps?cid=[redacted-phone]"
},
{
"fid": "0x89c259b6c59db77d:0x57cf5d10e4d1b9a5",
"place_id": "0x89c259b6c59db77d:0x57cf5d10e4d1b9a5",
"cid": "[redacted-phone]",
"entity_id": "/g/11y31_2b88",
"name": "[redacted-name]",
"rating": 4.9,
"review_count": 3427,
"category_primary": "Coffee shop",
"categories": [
"Coffee shop"
],
"address": "245 W 46th St, New York, NY 10036",
"locality": "New York, NY 10036",
"latitude": 40.759709099999995,
"longitude": -73.9873617,
"website": "https://www.787coffee.com/",
"domain": "787coffee.com",
"phone": "[redacted-phone]",
"phone_display": "[redacted-phone]",
"hours_today": [
"7 AM-9 PM"
],
"photos": [
"https://lh6.googleusercontent.com/-TZOLVWqy2ks/AAAAAAAAAAI/AAAAAAAAAAA/3qu4C5Si7yU/s44-p-k-no-ns-nd/photo.jpg"
],
"photo_count": 1,
"thumbnail": "https://lh6.googleusercontent.com/-TZOLVWqy2ks/AAAAAAAAAAI/AAAAAAAAAAA/3qu4C5Si7yU/s44-p-k-no-ns-nd/photo.jpg",
"maps_url": "https://www.google.com/maps?cid=[redacted-phone]"
},
{
"fid": "0x89c25903f53cf951:0xc2c7e3abcb39348f",
"place_id": "0x89c25903f53cf951:0xc2c7e3abcb39348f",
"cid": "[redacted-phone]",
"entity_id": "/g/11m7mgfqyx",
"name": "[redacted-name]",
"rating": 4.5,
"review_count": 314,
"category_primary": "Coffee shop",
"categories": [
"Coffee shop"
],
"address": "106 W 45th St, New York, NY 10036",
"locality": "New York, NY 10036",
"latitude": 40.7569259,
"longitude": -73.983446,
"website": "http://www.gumptioncoffee.com/",
"domain": "gumptioncoffee.com",
"phone": "[redacted-phone]",
"phone_display": "[redacted-phone]",
"hours_today": [
"8 AM-4 PM"
],
"photos": [
"https://lh5.googleusercontent.com/-q79K_96SXK0/AAAAAAAAAAI/AAAAAAAAAAA/xI0Mft89yzY/s44-p-k-no-ns-nd/photo.jpg"
],
"photo_count": 1,
"thumbnail": "https://lh5.googleusercontent.com/-q79K_96SXK0/AAAAAAAAAAI/AAAAAAAAAAA/xI0Mft89yzY/s44-p-k-no-ns-nd/photo.jpg",
"maps_url": "https://www.google.com/maps?cid=[redacted-phone]"
}
],
"count": 10
}
}What the Google Maps API does
| Action | Description | Concrete use case | Key params |
|---|---|---|---|
| place/search | Search places by text query with optional lat/lng geo-bias. Returns up to 200 places with name, address, rating, categories, phone, website, coordinates, photos. | Support teams call place/search to search places by text query with optional lat/lng geo-bias. | query, lat, lng, altitude, maxResults, ... |
| place/detail | The single richest matching place: name, address, phone, website, rating, total review count, categories, coordinates, opening hours and photos. | Reputation platforms call place/detail to get the single richest matching place. | query, lat, lng, lang, region, ... |
| place/by-id | Fetch a place directly by its Google id — fid (0x…:0x…), place_id or numeric cid — no text query needed. Use the id returned by place/search. | Market researchers call place/by-id to fetch a place directly by its Google id. | fid, place_id, cid, query, lat, ... |
| place/nearby | Find places of a given type near coordinates (e.g. coffee shops, pharmacies, ATMs around a lat/lng). Returns up to 200 nearby places. | B2B review analysts call place/nearby to find places of a given type near coordinates (e.g. | lat, lng, type, radius, maxResults, ... |
| geocode | Turn an address or place name into coordinates: returns latitude, longitude and the formatted address of the best match. | Support teams call geocode to turn an address or place name into coordinates. | address, lang, region |
| place/reviews | Public Google reviews for a place — paginated to ALL reviews. Each review carries author name, rating, text, date, photos and the owner's response. Resolve a place by query, or pass its fid/cid/place_id from place/search. | Reputation platforms call place/reviews to get public Google reviews for a place. | query, fid, cid, place_id, sort, ... |
| place/photos | Public photos for a place — the featured/hero gallery plus user-uploaded photos attached to reviews. Each is a stable image CDN URL (append '=s800' etc. for a sized variant). Resolve by query or pass an id. | Market researchers call place/photos to get public photos for a place. | query, fid, cid, place_id, lat, ... |
| place/freshness | Monitor a place for changes: returns the current place plus a typed diff vs the snapshot you pass from a previous call (rating/review_count/phone/website/address changes). | B2B review analysts call place/freshness to monitor a place for changes. | query, lat, lng, previous, lang, ... |
Call place/search from your stack
curl -X POST https://api.reefapi.com/google-maps/v1/place/search \
-H "x-api-key: $REEF_KEY" \
-H "content-type: application/json" \
-d '{"query":"specialty coffee Times Square","lat":40.7589,"lng":-73.9881,"maxResults":10}'import requests
r = requests.post(
"https://api.reefapi.com/google-maps/v1/place/search",
headers={"x-api-key": REEF_KEY},
json={
"query": "specialty coffee Times Square",
"lat": 40.7589,
"lng": -73.9881,
"maxResults": 10
},
)
print(r.json()["data"])const res = await fetch("https://api.reefapi.com/google-maps/v1/place/search", {
method: "POST",
headers: {
"x-api-key": process.env.REEF_KEY,
"content-type": "application/json",
},
body: JSON.stringify({
"query": "specialty coffee Times Square",
"lat": 40.7589,
"lng": -73.9881,
"maxResults": 10
}),
});
const { ok, data, meta, error } = await res.json();Ask your MCP-connected assistant: call reefapi.google-maps.place/search with {"query":"specialty coffee Times Square","lat":40.7589,"lng":-73.9881,"maxResults":10}.Who uses this API and why
- Lead-generation tools call place/search to build lists of businesses by category and location.
- Reputation products use place/reviews to monitor a business's Google ratings and review text.
- Local-data apps use place/detail and geocode to enrich a location with hours, contact and coordinates.
Questions developers ask before integrating
What is the Google Maps API?
Google Maps API is a ReefAPI endpoint group for places, business details, ratings and reviews. It returns live JSON through POST requests under /google-maps/v1.
Is the Google Maps API free to try?
Yes. ReefAPI starts with 1,000 free credits, no card required. Google Maps calls use the same shared credit balance as every other ReefAPI engine.
Do I need a Google Maps login or account?
No login to Google Maps is needed for the API response. You call ReefAPI with your x-api-key header, and the playground can run live examples before you create a production key.
How fresh is the Google Maps data?
The page example is captured from a live place/search call, and production requests fetch live data through ReefAPI rather than a static sample.
How many credits does the Google Maps API use?
Google Maps actions currently cost 1-3 credits per successful call. Failed or blocked calls are free, and all APIs draw from one credit pool.
Can I call Google Maps from an AI assistant or MCP client?
Yes. Connect ReefAPI once through MCP and your assistant can call google-maps actions with the same key, credit pool and JSON envelope used by normal REST requests.
Is the Google Maps API a Google Maps scraper?
It is the managed alternative to a DIY Google Maps scraper. Instead of building and maintaining your own scraper — proxies, headless browsers, captcha and constant breakage — you call one ReefAPI endpoint and get the same places, business details, ratings and reviews back as clean JSON.
Why does my Google Maps scraper keep getting blocked?
Most Google Maps scrapers break on anti-bot defenses, rate limits and IP bans that need rotating residential proxies and browser fingerprinting to clear. ReefAPI handles all of that for you — no proxies, no captchas, no maintenance — and returns live JSON. Blocked or failed calls are free.