Free
$0/mo
200
Requests / month
- Overage
- Hard limit
- Rate limit
- 10/min
- Card
- Not needed
Local businesses from Google Maps: phone, website, coordinates, ratings, and hours.
Data samples
The page the Google Maps API reads, and the response it returns for the same query.
https://www.google.com/maps/search/plumbers+in+Denver?hl=en

{
"engine": "google_maps",
"family": "local",
"query": {
"q": "plumbers in Denver",
"country": "us",
"latitude": null,
"longitude": null,
"zoom": null
},
"count": 65,
"results": [
{
"position": 1,
"title": "Applewood Plumbing Heating & Electric",
"place_id": "ChIJkWUJx22Ha4cRVVLq4AJk7Ng",
"data_id": "0x876b876dc7096591:0xd8ec6402e0ea5255",
"cid": "15630978370222314069",
"latitude": 39.7583004,
"longitude": -105.0512657,
"rating": 4.8,
"reviews_count": 17793,
"category": "Plumber",
"price": null,
"address": "5000 W 29th Ave",
"open_state": "Open · Closes 10 PM",
"phone": "(303) 444-1633",
"website": "https://www.applewoodfixit.com/",
"description": null,
"wheelchair_accessible": null,
"action_links": [
{
"label": "Book online",
"url": "https://book.servicetitan.com/lhxa271djh03w5bfje81s0qd"
}
],
"thumbnail": null,
"sponsored": false,
"url": "https://www.google.com/maps/place/?q=place_id:ChIJkWUJx22Ha4cRVVLq4AJk7Ng"
},
{
"position": 2,
"title": "Brothers Plumbing, Heating & Electric",
"place_id": "ChIJszGcvzV0bIcR3_6j5Gru8sM",
"data_id": "0x876c7435bf9c31b3:0xc3f2ee6ae4a3fedf",
"cid": "14119609924629823199",
"latitude": 39.8096461,
"longitude": -104.9881312,
"rating": 4.7,
"reviews_count": 9173,
"category": "Plumber",
"price": null,
"address": "6201 Broadway",
"open_state": "Open · Closes 8 PM",
"phone": "(720) 994-7132",
"website": "http://www.brothersplumbing.com/",
"description": null,
"wheelchair_accessible": true,
"action_links": [
{
"label": "Book online",
"url": "https://book.servicetitan.com/xlcp8o3v3fnyrpk2sh94bcux"
}
],
"thumbnail": null,
"sponsored": false,
"url": "https://www.google.com/maps/place/?q=place_id:ChIJszGcvzV0bIcR3_6j5Gru8sM"
}
],
"next_cursor": null
}Source page captured separately from the recorded response, so live values can differ.
Code
One host, one Bearer key for every Clair API. Each call returns JSON with the same envelope, so a second API is a new path, not a new client.
curl -G "https://api.clair.im/v1/search?engine=google_maps&q=plumbers+in+Denver&country=us" \ -H "Authorization: Bearer YOUR_API_KEY"
Reference
One scrolled Maps results list per request, usually 20 to 70 places, repeats removed. Put the area in q, or pass latitude and longitude to search around a point. Service businesses usually show phone and website on the card; restaurants and shops often do not, so call GET /v1/place for those.
GET /v1/search?engine=google_maps
Authorizationheader · stringrequired
enginestringrequired
qstringrequired
countrystring
latitudenumber
longitudenumber
zoominteger
Pricing
This API is its own subscription with its own quota. Unused requests expire at renewal. Need a custom volume? Email contact@serinlabs.com.
$0/mo
200
Requests / month
$49.99/mo
3,700
Requests / month
Most popular
$149/mo
14,800
Requests / month
$399/mo
49,600
Requests / month
No monthly fee
$0.0201
Per request
Prices in USD, billed monthly by Stripe. Cancel any time from Manage billing.
Live scrape of Google Maps in a real browser. Search scrolls the results list and returns every place it loaded, usually 20 to 70, with place_id, coordinates, category, address, phone, website, open state, and booking links. Place returns one business with full address, phone, website, the week's hours, rating histogram, review topics, and the reviews Google shows first. Google gives logged-out visitors either a full or a limited view; on the limited view review counts, the histogram, reviews, and most of the week's hours are missing, and place.view says so.
All of them: Search, Place. They share this API's monthly quota.
Each call is one request, and each extra page is a new call. A malformed request (400) is not counted, and a request that fails on our side (5xx) is refunded.
Yes. Every Clair API has its own free tier: 200 requests a month, with no card. It resets monthly, and the API stops when the month's requests run out.
On a paid tier, extra calls are billed at the tier's overage rate until its ceiling, then the API returns 429 until the next period. The free tier returns 429 as soon as its requests are used.
No. Each API is its own subscription, and one key works with all of them. A call to an API the account does not subscribe to returns 403 not_subscribed.
Related
APIs teams often combine with the Google Maps API.
Each Clair API is its own monthly request quota. Unused requests expire. Every API has a free tier to try it.