Place Details
Places
Place Details
Resolve a picked autocomplete prediction to coordinates, closing the Google billing session
POST
Place Details
Overview
Resolves aplaceId from Place Autocomplete to its coordinates via Google Place Details (field mask id,displayName,formattedAddress,location). Passing the interaction’s sessionToken closes the Google Autocomplete session, billing the whole typing interaction (N autocomplete calls + this one) as a single session — clients should always pass it when they have one.
Authentication
Same as autocomplete — any authenticated caller; shares theplace-search rate-limit bucket (120 / 60 per 60s, user / anon).
Body Parameters
string
required
The Google
placeId from an autocomplete prediction (raw, without the client-side google: namespace prefix).string
The session token the autocomplete calls used. Optional but strongly recommended — omitting it bills the preceding autocomplete calls per-request instead of per-session.
Response
string
The canonical Google place id.
object
{ text } — the place’s display name (e.g. "Waterloo Station").string
Formatted address string.
object
{ latitude, longitude } — note the order: this is Google’s lat/lng object, not a Mapbox-style [lng, lat] pair. The planner client (fetchGooglePlaceDetails) owns the axis swap; this contract is locked in by packages/shared/__fixtures__/google-place-details-waterloo.json and its regression test.Example
Errors
Same table as Place Autocomplete; a502 here means the Google details call itself failed (upstream_status in the body — e.g. 404 for an unknown placeId surfaces as 502 with upstream_status: 404).