canonical: https://jentic.com/apis/googleapis.com/places

# Google Places API (New)

The Google Places API (New) lets applications search for businesses and points of interest, autocomplete place queries as the user types, find nearby places by category, and fetch detailed information for a specific place by resourceName. The four endpoints in v1 cover text search, nearby search, autocomplete, and place details, with field masks that let callers control billing-relevant response size. Each Place response can include addresses, opening hours, ratings, photos, and Plus Codes drawn from Google Maps' global place database.

## For AI agents

Search Google's place database by text query, location, or autocomplete prefix and retrieve place details including address, hours, rating, and photos.

## Scope

Does not handle routing, geocoding-only address conversion, or static map rendering - use for searching and retrieving Google place data only.

## Capabilities

- Search places by free-text query with optional location bias and category filtering
- Find places within a radius of a latitude and longitude with type filters such as restaurant or cafe
- Autocomplete place queries character-by-character for typeahead UIs
- Retrieve a single Place resource by name with selectable fields like opening hours, ratings, and photos
- Apply field masks to limit response size and avoid charges for unused fields
- Bias search results to a circular or rectangular geographic region

## Use cases

### Place Search Autocomplete

Build a typeahead search experience that suggests places as the user types, similar to the Google Maps search bar. The places:autocomplete endpoint returns suggested place predictions for a partial query in milliseconds and accepts a sessionToken so each user typing session is billed as a single autocomplete-plus-details transaction. Implementations typically debounce keystrokes and forward the final selection to places:searchText or a place details lookup.

Example prompt: POST /v1/places:autocomplete with {input: 'mountain v', locationBias: {circle: {center: {latitude: 37.4, longitude: -122.1}, radius: 5000}}, sessionToken: '...'} and return the top 5 predictions.

### Nearby Restaurant Discovery

Power a 'restaurants near me' or 'open now' feature inside a travel or delivery app. The places:searchNearby endpoint takes a circular location restriction, an array of included place types such as restaurant or cafe, and returns up to 20 ranked results per call. Field masks ensure the response includes only the fields the UI renders (for example displayName, rating, currentOpeningHours), keeping billing predictable.

Example prompt: POST /v1/places:searchNearby with includedTypes=['restaurant'], locationRestriction.circle.center=current GPS, radius=1500, and X-Goog-FieldMask='places.displayName,places.rating,places.currentOpeningHours'.

### Travel Itinerary Enrichment

Enrich a travel itinerary by attaching ratings, opening hours, photos, and addresses to each named destination. Use places:searchText to resolve a free-form name like 'Sushi Saito Tokyo' to a Place resource, then GET the place details with a field mask for the data the itinerary card displays. A 20-stop itinerary can be enriched in a single batch of API calls in under a second.

Example prompt: POST /v1/places:searchText with textQuery='Sushi Saito Tokyo', then GET /v1/{place.name} with X-Goog-FieldMask='id,displayName,formattedAddress,rating,regularOpeningHours,photos'.

### AI Agent Location Lookup via Jentic

Travel and concierge agents that need to ground a user's request ('book me a quiet cafe near the office') in real-world places can call the Places API through Jentic without managing API keys or field masks directly. Jentic stores the Google Cloud key in its vault and exposes one search query per intent so the agent picks the right operation in a single step.

Example prompt: Search Jentic for 'find places near a location', load the places.searchNearby schema, and execute it with the user's coordinates and includedTypes=['cafe'].

## Key endpoints

| Method | Path | Description |
| --- | --- | --- |
| POST | /v1/places:autocomplete | Autocomplete place predictions for a partial query |
| POST | /v1/places:searchNearby | Find places within a radius of a coordinate |
| POST | /v1/places:searchText | Search places by free-text query |
| GET | /v1/{name} | Get detailed information for a specific place |

## Key resources

- **places** — Search and retrieve place details by text, autocomplete prefix, nearby coordinates, or resourceName

## Why Jentic

- **Setup:** Wiring the Places API by hand means handling Google OAuth 2.0 or an API key, minting scoped tokens, and setting the required field masks on requests to places.googleapis.com yourself. Through Jentic you install once, import the Places API from the API Directory, store the credential once, and your agent calls it.
- **Permission scoping:** The Places API search operations take the query in the request body (places:searchText, places:searchNearby), so limit the agent to the operations it needs, such as autocomplete, nearby search, or place details. Every operation the agent can call is one you added to the allowed set, and these are read-only place lookups.
- **Credential handling:** Your Places API credential is stored once, encrypted, by your own Jentic One instance and injected at execution time. It never enters the agent's prompt, logs, or context.
- **Discovery method:** Agents search Jentic by intent such as 'find a restaurant nearby' or 'autocomplete a place name', and Jentic returns the matching Places operation with its input schema so the agent calls the right endpoint without browsing the reference docs.

## Related APIs

- **Google My Business Information API** — Edit the business listing whose place you read via Places
- **TomTom Search API** — Search places, geocode, and look up POIs without using Google Cloud
- **TomTom Routing API** — Calculate driving routes between places resolved through Places search

## FAQ

### What authentication does the Google Places API use?

The Places API (New) accepts an API key passed via the X-Goog-API-Key header or OAuth 2.0 access tokens for server-side calls. Through Jentic the API key or OAuth credential is held in your Jentic One instance and injected at call time so agents never see the raw key.

### Can I get opening hours and photos with the Places API?

Yes. The Place resource includes regularOpeningHours, currentOpeningHours, photos, rating, and userRatingCount fields. Request them by adding the field names to the X-Goog-FieldMask header on the GET /v1/{name} or search calls - fields not listed in the mask are not returned and are not billed.

### What are the rate limits for the Google Places API?

The Places API uses Google Cloud quotas measured in queries per minute per project. Per-call billing is based on which fields are requested via the field mask, so large field masks can hit the per-day spend cap faster. Quotas can be raised through the Google Cloud Console.

### How do I autocomplete place queries through Jentic?

Run jentic search 'autocomplete a Google place query', load the schema for POST /v1/places:autocomplete, and execute it with input set to the partial text and a sessionToken to bundle the autocomplete and a follow-up details call into one billable session.

### Is the Google Places API free?

The Places API is paid, billed per request with field-mask-aware pricing. Google Cloud offers a recurring monthly credit that covers a baseline volume of calls. Pricing per SKU is published at developers.google.com/maps/billing-and-pricing.

### Can I search for places only within a specific country or region?

Yes. Both places:searchText and places:autocomplete accept a locationRestriction (rectangle or circle) and includedRegionCodes to constrain results to specific countries. places:searchNearby requires a circular locationRestriction with a center coordinate and radius.

### Can I limit what my agent is allowed to do with the Google Places API?

Yes. Because you run Jentic One yourself, your own rules decide which Places operations the agent can call, so you can allow only what a task needs, such as autocomplete, nearby search, text search, or a place details lookup, and withhold the rest. Every one of these operations is a read-only place query, and the Google Cloud credential stays in your instance and is injected at execution time rather than exposed to the agent. That means the agent can search and read place data within the exact set of operations you approved and nothing beyond it.
