Place IDs

Select platform: Android iOS JavaScript Web Service

Place IDs uniquely identify a place in the Google Places database and on Google Maps. Place IDs are accepted in requests to the following Maps APIs:

  • Retrieving an address for a Place ID in the Geocoding API web service and Geocoding Service, Maps JavaScript API.
  • Specifying origin, destination and intermediate waypoints in the Routes API and Directions API web service and Directions Service, Maps JavaScript API.
  • Specifying origins and destinations in the Routes API and Distance Matrix API web service and Distance Matrix Service, Maps JavaScript API.
  • Retrieving Place Details in Places API web service, Places SDK for Android, Places SDK for iOS, and Places Library.
  • Using Place ID parameters in Maps Embed API.
  • Retrieving search queries in Maps URLs.
  • Displaying speed limits in Roads API.
  • Finding and styling boundary polygons in data-driven styling for boundaries.

Find the ID of a particular place

Are you looking for the place ID of a specific place? Use the place ID finder below to search for a place and get its ID:

Alternatively, you can view the place ID finderwith its code in the Maps JavaScript API documentation.

Overview

A place ID is a textual identifier that uniquely identifies a place. The length of the identifier may vary (there is no maximum length for Place IDs). Examples:

  • ChIJgUbEo8cfqokR5lP9_Wh_DaM
  • GhIJQWDl0CIeQUARxks3icF8U8A
  • EicxMyBNYXJrZXQgU3QsIFdpbG1pbmd0b24sIE5DIDI4NDAxLCBVU0EiGhIYChQKEgnRTo6ixx-qiRHo_bbmkCm7ZRAN
  • EicxMyBNYXJrZXQgU3QsIFdpbG1pbmd0b24sIE5DIDI4NDAxLCBVU0E
  • IhoSGAoUChIJ0U6OoscfqokR6P225pApu2UQDQ

Place IDs are available for most locations, including businesses, landmarks, parks, and intersections. It is possible for the same place or location to have multiple different place IDs. Place IDs may change over time.

You can use the same place ID across the Places API and a number of Google Maps Platform APIs. For example, you can use the same place ID to reference a place in the Places API,the Maps JavaScript API, theGeocoding API, theMaps Embed API and theRoads API.

Retrieve place details using the place ID

A common way of using place IDs is to search for a place (using thePlaces API or thePlaces libraryin the Maps JavaScript API, for example) then use the returned place ID to retrieve place details. You can store the place ID and use it to retrieve the same place details later. Read about saving place IDsbelow.

The following examples show how to request an icon URL for Places API (New) and Places API.

Places API (New)

Using the Places API, you can find a place ID by doing a Text Search (New) request.

curl -X POST -d '{
"textQuery": "Spicy Vegetarian Food in Sydney, Australia"
}' \
-H 'Content-Type: application/json' -H 'X-Goog-Api-Key:API_KEY' \
-H 'X-Goog-FieldMask: places.id,places.displayName,places.formattedAddress' \
'https://places.googleapis /v1/places:searchText'

The response includes a place ID in theidfield, as shown below:

{
"places": [
{
"id": "ChIJs5ydyTiuEmsR0fRSlU0C7k0",
"formattedAddress": "29 King St, Sydney NSW 2000, Australia",
"displayName": {
"text": "Peace Harmony",
"languageCode": "en"
}
},
...
}

Now you can now make a Place Details (New) request by including the place ID in the request URL:

https://places.googleapis /v1/places/ChIJs5ydyTiuEmsR0fRSlU0C7k0?fields=id,displayName&key=API_KEY

Places API

Using the Places API, you can find a place ID by doing a Place Searchrequest.

The following example is a search request for places of type 'restaurant' within a 1500m radius of a point in Sydney, Australia, containing the word 'cruise':

https://maps.googleapis /maps/api/place/nearbysearch/json?location=-33.8670522,151.1957362&radius=1500&type=restaurant&keyword=cruise&key=YOUR_API_KEY

The response includes a place ID in theplace_idfield, as shown in this snippet:

{
"html_attributions": [],
"results": [
{
"geometry": {
"location": {
"lat": -33.870775,
"lng": 151.199025
}
},
...
"place_id": "ChIJrTLr-GyuEmsRBfy61i59si0",
...
}
],
"status": "OK"
}

Now you can send a Place Details request, putting the place ID in theplace_idparameter:

https://maps.googleapis /maps/api/place/details/json?place_id=ChIJrTLr-GyuEmsRBfy61i59si0&key=YOUR_API_KEY

Save place IDs for later use

Place IDs areexempt fromthe caching restrictions stated in Section 3.2.3(b) of the Google Maps Platform Terms of Service. You can therefore store place ID values for later use.

Refreshing stored place IDs

We recommend refreshing place IDs if they are more than 12 months old. You can refresh Place IDsat no charge,by making a Place Details request, specifying only the place ID field in thefieldsparameter.

Places API (New)

For example, usingPlace Details (New):

https://places.googleapis /v1/places/ChIJ05IRjKHxEQ0RJLV_5NLdK2w?fields=id&key=API_KEY

Places API

For example, using the legacyPlace DetailsAPI:

https://maps.googleapis /maps/api/place/details/json?place_id=ChIJ05IRjKHxEQ0RJLV_5NLdK2w&fields=place_id&key=API_KEY

This call triggers the Place Detail New (IDs Only)or Places Details - ID Refresh SKU.

This request might also returnNOT_FOUNDstatus code. One strategy is to store the original request that returned each place ID. If a place ID becomes invalid, you can re-issue that request to get fresh results. These results may or may not include the original place. However, this request is chargeable.

Error codes when using place IDs

TheINVALID_REQUESTstatus code indicates that the specified place ID is not valid.INVALID_REQUESTmay be returned when the place ID has been truncated or otherwise modified, and is no longer correct.

TheNOT_FOUNDstatus code indicates that the specified place ID is obsolete. A place ID may become obsolete if a business closes or moves to a new location. Place IDs may change due to large-scale updates on the Google Maps database. In such cases, a place may receive a new place ID, and the old ID returns aNOT_FOUNDresponse.

In particular, some types of place IDs may sometimes cause a NOT_FOUNDresponse, or the API may return a different place ID in the response. These place ID types include:

  • Street addresses that do not exist in Google Maps as precise addresses, but are inferred from a range of addresses.
  • Segments of a long route, where the request also specifies a city or locality.
  • Intersections.
  • Places with an address component of typesubpremise.

These IDs often take the form of a long string (there is no maximum length for Place IDs). For example:

EpID4LC14LC_4LCo4LCv4LGN4LCo4LCX4LCw4LGNIC0g4LC44LGI4LCm4LGN4LCs4LC-4LCm4LGNIOCwsOCxi-CwoeCxjeCwoeCxgSAmIOCwteCwv-CwqOCwr-CxjSDgsKjgsJfgsLDgsY0g4LCu4LGG4LCv4LC_4LCo4LGNIOCwsOCxi-CwoeCxjeCwoeCxgSwg4LC14LC_4LCo4LCv4LGNIOCwqOCwl-CwsOCxjSDgsJXgsL7gsLLgsKjgsYAsIOCwsuCwleCxjeCwt-CxjeCwruCwv-CwqOCwl-CwsOCxjSDgsJXgsL7gsLLgsKjgsYAsIOCwuOCwsOCxguCwsOCxjSDgsKjgsJfgsLDgsY0g4LC14LGG4LC44LGN4LCf4LGNLCDgsLjgsK_gsYDgsKbgsL7gsKzgsL7gsKbgsY0sIOCwueCxiOCwpuCwsOCwvuCwrOCwvuCwpuCxjSwg4LCk4LGG4LCy4LCC4LCX4LC-4LCjIDUwMDA1OSwg4LCt4LC-4LCw4LCk4LCm4LGH4LC24LCCImYiZAoUChIJ31l5uGWYyzsR9zY2qk9lDiASFAoSCd9ZebhlmMs7Efc2NqpPZQ4gGhQKEglDz61OZpjLOxHgDJCFY-o1qBoUChIJi37TW2-YyzsRr_uv50r7tdEiCg1MwFcKFS_dyy4