Interactive scrollable sales explainer for the Google Maps Platform Places API (New): a live, queryable index of businesses and points of interest reached via Text Search, Nearby Search, Place Details, Autocomplete, and Place Photos. Covers what's included, the search and ranking filters built into Text and Nearby Search, how Autocomplete session tokens bill a whole type-ahead interaction once instead of per keystroke, the rich place-attribute and AI-generated summary fields available on Place Details, how field masking determines which of five SKU tiers a request is billed at, why that field-masking decision is where Navagis adds value over a direct Google Cloud signup, the legacy-to-New API migration, how it bridges to the rest of Google Maps Platform and to Places Insights, example Text Search and Nearby Search request/response pairs, the reliability SLA, SKU-tiered pricing, and a three-step get-started close, with animated stats, flow diagrams, a click-to-run request demo, and a comparison table, styled in Google's Material color and type language.
01 / overview
The Places API: Google's search, details, and autocomplete engine for real-world places
in one line
- It is: a live lookup API — search, details, autocomplete, and photos, returned as JSON, billed by which fields you ask for.
- It is not: a bulk dataset you can dump into a warehouse and query offline — for that, Places Insights is the product.
02 / what's included
Five methods cover search, lookup, type-ahead, and imagery
Included
- Text Search — free-form query, e.g. "vegan restaurants in Austin"
- Nearby Search — radius + place-type search around a point
- Place Details — the full record for one place ID
- Autocomplete — type-ahead place & address predictions
- Place Photos — imagery served by photo reference
Not included
- Address ↔ coordinate conversion (Geocoding API)
- Deliverability certification (Address Validation API)
- Turn-by-turn routing (Routes API)
- Bulk place-attribute export for analytics (Places Insights)
common request parameters
every request is
03 / search & ranking
Search that filters like a product, not just a keyword box
built-in filters
- priceLevels and minRating narrow Text Search results in the same call, no second round-trip
- rankPreference reorders Nearby Search by POPULARITY (default) or raw DISTANCE
- evOptions filters for a minimum charging rate and specific connector types — genuine EV-aware search, not a bolt-on
text search filters
nearby search ranking & scope
04 / autocomplete sessions
One bill for the whole search, not one per keystroke
how a session works
- generate a fresh sessionToken (a UUID) client-side when a new search starts
- reuse that same token on every prediction request as the user keeps typing
- pass it once more to Place Details on the selected result — that call closes the session
- skip the token, or reuse one indefinitely, and you're billed per request instead of per search
05 / place attributes & ai
The response is richer than a name and an address
notable fields
- accessibilityOptions exposes wheelchair-accessible entrance, parking, restroom, and seating as individual booleans
- evChargeOptions returns connector type, count, and max charging rate per station
- generativeSummary and reviewSummary are Google-authored natural-language summaries, not raw review text
- secondaryOpeningHours covers cases like a separate drive-through or delivery schedule
real-world attributes
hours & status
ai-generated (enterprise + atmosphere)
06 / field masks & skus
The single header that decides your bill
the trap teams fall into
- asking for reviews on a card that only renders a name and a pin pushes the entire call into the priciest tier
- the mask is enforced per request, not per project — two calls to the same endpoint can land in two different SKU tiers
- a leaner mask usually means a smaller, faster response too, not just a cheaper one
essentials
pro
enterprise / enterprise + atmosphere
07 / why go through us
A Google Cloud account gets you the API. It doesn't get you the field-mask audit.
| Navagis | Direct self-serve | |
|---|---|---|
| Field-mask / SKU cost audit before launch | ✓ | ✕ |
| Autocomplete session-token implementation review | ✓ | ✕ |
| Legacy → New API migration support | ✓ | ✕ |
| One invoice across Places, other Maps Platform APIs, and BigQuery | ✓ | ✕ |
| Volume pricing negotiated across products, not per-API | ✓ | ~ |
| Dedicated technical support with an escalation path back into Google | ✓ | ~ |
| Requests hit Google's own Places API endpoints | ✓ | ✓ |
"~" = available direct through standard Google Cloud support and volume-discount programs, but not proactively applied or bundled the way it is through a partner relationship.
08 / legacy → new
Legacy Places API still runs — new features don't land there
what changes in the move
- legacy GET query-string calls become POST requests with a JSON body
- snake_case fields (
formatted_address) become camelCase (formattedAddress) - billing shifts from flat per-call to per-field-mask SKU tier
09 / extend with maps platform
A place ID is a key into the rest of Maps Platform
Every one of these runs on the same Google Cloud billing account and the same API key management as the Places API itself — one platform relationship to negotiate and support, not four.
pairs well with
10 / example requests
What a request actually looks like
a free-form query, essentials + pro fields
POST https://places.googleapis.com/v1/places:searchText
X-Goog-Api-Key: YOUR_API_KEY
X-Goog-FieldMask: places.displayName,places.formattedAddress,
places.rating,places.currentOpeningHours
{ "textQuery": "vegan restaurants in Austin, TX" }
200 OK · 0.3s elapsed
| field | value |
|---|---|
| displayName | Bouldin Creek Cafe |
| formattedAddress | 1900 S 1st St, Austin, TX 78704 |
| rating | 4.4 (3,208 reviews) |
radius + type, essentials fields only
POST https://places.googleapis.com/v1/places:searchNearby
X-Goog-Api-Key: YOUR_API_KEY
X-Goog-FieldMask: places.displayName,places.location,places.types
{ "includedTypes": ["coffee_shop"],
"locationRestriction": { "circle": {
"center": { "latitude": 30.267, "longitude": -97.743 },
"radius": 800.0 } } }
200 OK · 0.2s elapsed
| field | value |
|---|---|
| displayName | Radio Coffee & Beer |
| location | 30.2419, -97.8081 |
| types | coffee_shop, cafe |
11 / reliability
Backed by an SLA, not a best-effort promise
the commitment
- 99.9% monthly uptime SLA
- service credits owed if Google misses it
the proof
- public status dashboard with incident history
- the same index that powers Google Maps and Search results
12 / pricing
You set the price by choosing the field mask and the session strategy
This is exactly where a field-mask and session-token audit pays for itself: shaving a UI's field mask from Enterprise down to Pro or Essentials, and making sure Autocomplete is actually using session tokens, are usually the two biggest levers on the bill.
| SKU tier | relative cost |
|---|---|
| Essentials IDs Only | lowest |
| Essentials | low |
| Pro | moderate |
| Enterprise | high |
| Enterprise + Atmosphere | highest |
Tier order and structure reflect Google's published SKU model for Places API (New) as of this writing; per-tier dollar rates change periodically and should be confirmed in the Cloud Billing console or the pricing reference above before quoting. Legacy Places API is priced and billed differently — a flat rate per call regardless of fields requested.
13 / get started

