Google APIgoogle.com ↗
Retrieve place name, address, coordinates, phone, hours, rating, website, and categories from Google Maps via a single API endpoint.
What is the Google API?
The Google Maps API exposes 11 structured fields per place through a single get_place_details endpoint, returning the top matching result for any business name, address, or location query. Each response includes coordinates, current open/closed status, today's hours, phone number, website, categories, neighborhood, timezone, and Google's place_id — giving you a complete snapshot of any mappable location in one call.
curl -X GET 'https://api.parse.bot/scraper/2edf1c7e-f190-4df2-81a2-cc70f45fdf2a/get_place_details?query=Empire+State+Building+New+York' \ -H 'X-API-Key: $PARSE_API_KEY'
Typed, relational, agent-ready
A generated client with real types, enums, and the links between objects — the structure a flat JSON response can't carry. Autocompletes in your editor and reads cleanly to coding agents.
- Fully typed · autocompletes
- Objects link to objects
- Typed errors & pagination
Typed Python client. Set up the SDK in your uv project, then pull this API’s typed client:
uv add parse-sdk uv run parse init uv run parse add --marketplace google-com-api
uv run parse add --marketplace pulls a pinned snapshot of this canonical API — it won’t change underneath you. To customize it, subscribe and swap to your own copy.
"""Walkthrough: Google Maps Places SDK — look up any location's details and hours."""
from parse_apis.google_com_api import GoogleMaps, ParseError
client = GoogleMaps()
# Find a place by name and address — returns a typed Place with all details.
place = client.places.find(query="Starbucks 1500 Broadway New York")
print(f"{place.name} — {place.address}")
print(f" Rating: {place.rating}, Categories: {place.categories}")
print(f" Coordinates: ({place.latitude}, {place.longitude})")
# Access opening hours for today
if place.opening_hours:
print(f" Status: {place.opening_hours.current_status}")
print(f" Today ({place.opening_hours.today_day}): {place.opening_hours.today_hours}")
# Look up a landmark
landmark = client.places.find(query="Empire State Building New York")
print(f"\n{landmark.name} in {landmark.neighborhood}")
print(f" Website: {landmark.website}")
print(f" Timezone: {landmark.timezone}")
# Handle errors gracefully
try:
result = client.places.find(query="Central Park Zoo")
print(f"\n{result.name}: {result.description}")
print(f" Phone: {result.phone}")
except ParseError as exc:
print(f"Error: {exc}")
print("\nexercised: places.find (3 queries) with typed Place + OpeningHours access")
Search Google Maps for a specific place and return its detailed information. Returns the top matching place's name, address, coordinates, rating, current opening status with today's hours, phone number, website, categories, neighborhood, timezone, and description. The query can be a place name, business name with address, or any search term that would work in the Google Maps search bar.
| Param | Type | Description |
|---|---|---|
| queryrequired | string | Place name, business name, or address to search for on Google Maps (e.g. 'Starbucks 1500 Broadway New York', 'Empire State Building', 'Central Park Zoo'). |
{
"type": "object",
"fields": {
"name": "string",
"phone": "string",
"rating": "number",
"address": "string",
"website": "string",
"latitude": "number",
"place_id": "string",
"timezone": "string",
"longitude": "number",
"categories": "array of category strings",
"description": "string",
"full_address": "string",
"neighborhood": "string",
"opening_hours": "object with current_status, today_day, today_date, today_hours"
},
"sample": {
"data": {
"name": "Starbucks Coffee Company",
"phone": "+1 (555) 012-3456",
"rating": 4,
"address": "1500 Broadway, New York, NY 10036",
"website": "https://www.starbucks.com/store-locator/store/13918/",
"latitude": 40.75664,
"place_id": "0x89c258552071bcb3:0x5cc7129cc313de1a",
"timezone": "America/New_York",
"longitude": -73.9859,
"categories": [
"Coffee shop",
"Breakfast restaurant",
"Cafe",
"Coffee store",
"Espresso bar",
"Internet cafe"
],
"description": "Iconic coffeehouse chain",
"full_address": "Starbucks Coffee Company, 1500 Broadway, New York, NY 10036",
"neighborhood": "Manhattan",
"opening_hours": {
"today_day": "Thursday",
"today_date": [
2026,
6,
25
],
"today_hours": [
"5 AM–12 AM"
],
"current_status": "Open · Closes 12 AM"
}
},
"status": "success"
}
}About the Google API
What the API Returns
The get_place_details endpoint accepts a query string — anything from a business name like Starbucks 1500 Broadway New York to a plain address — and returns the top matching place from Google Maps. The response covers the place's name, address, latitude, longitude, place_id, phone, website, rating, timezone, and an array of categories describing the place type.
Hours and Open Status
The endpoint surfaces the current opening status alongside today's specific hours, so you can determine at request time whether a location is currently open without needing a separate call. This is particularly useful for consumer-facing apps that display real-time availability.
Place Identification and Geocoding
Every response includes latitude and longitude for direct use in mapping applications, plus a place_id that corresponds to Google Maps' canonical identifier for that location. The timezone field returns the IANA timezone string for the place's physical location, which is useful when displaying hours across different regions.
Categories and Scope
The categories field returns an array of place-type labels (e.g. ["coffee shop", "cafe"]), enabling classification and filtering workflows. The API returns the single best-matching result for a query rather than a ranked list of candidates, so queries should be as specific as possible to target the intended location.
The Google API is a managed, monitored endpoint for google.com — not a raw scraper you maintain. Every endpoint is automatically health-checked on a schedule, and when google.com changes and a check fails, the API is automatically queued for repair and re-verified. It is built to keep working as the site underneath it changes.
This isn't an official google.com API — it's an independent, maintained REST wrapper over public data. Where the source has no official API (or only a limited one), Parse gives you a stable contract over a source that never promised one, and keeps it current. Need a new endpoint or field? You can revise it yourself in plain English and the agent rebuilds it against the live site in minutes — contributing the change back to the shared API is free.
Will this API break when the source site changes?+
Is this an official API from the source site?+
Can I fix or extend this API myself if I need a new endpoint or field?+
What happens if I call an endpoint that has an issue?+
- Populate a business directory with address, phone, website, and hours from a list of place names
- Geocode business addresses by extracting latitude and longitude for mapping applications
- Audit local business listings by comparing your CRM data against live Google Maps records
- Display current open/closed status and today's hours in a restaurant or retail finder app
- Categorize a set of locations by place type using the categories array
- Resolve a business name to a canonical Google place_id for deduplication pipelines
- Pull timezone data for multi-location scheduling tools using the timezone field
| Tier | Price | Credits/month | Rate limit |
|---|---|---|---|
| Free | $0/mo | 100 | 5 req/min |
| Hobby | $30/mo | 1,000 | 20 req/min |
| Developer | $100/mo | 5,000 | 100 req/min |
One credit = one API call regardless of which marketplace API you call. Exceeding the rate limit returns a 429 response. Authenticate with the X-API-Key header.