AI-generated Key Takeaways
-
The Place resource in Google Places API provides comprehensive data about real-world locations, including identification, contact details, location coordinates, user feedback, operational status, visuals, and descriptive information.
-
It utilizes various data structures such as LocalizedText, AddressComponent, PlusCode, LatLng, Viewport, and more to represent specific attributes.
-
Developers can leverage the Place resource to display place details, enable user interactions, and build location-aware applications using methods like autocomplete, get, searchNearby, and searchText.
-
Additional attributes offer specific insights into payment options, parking, sub-locations, fuel and EV charging, contextual information, links, pricing, timezone, service options, food and drinks, ambiance, and accessibility.
-
The resource incorporates AI-generated summaries, references, and contextual details for a more enriched understanding of the place and its surroundings.
- Resource: Place
- LocalizedText
- PostalAddress
- AddressComponent
- PlusCode
- LatLng
- Viewport
- Review
- AuthorAttribution
- Date
- OpeningHours
- Period
- Point
- SecondaryHoursType
- SpecialDay
- TimeZone
- Photo
- BusinessStatus
- PriceLevel
- Attribution
- PaymentOptions
- ParkingOptions
- SubDestination
- AccessibilityOptions
- FuelOptions
- FuelPrice
- FuelType
- Money
- EVChargeOptions
- ConnectorAggregation
- EVConnectorType
- GenerativeSummary
- ContainingPlace
- AddressDescriptor
- Landmark
- SpatialRelationship
- Area
- Containment
- GoogleMapsLinks
- PriceRange
- ReviewSummary
- EvChargeAmenitySummary
- ContentBlock
- NeighborhoodSummary
- ConsumerAlert
- Details
- Link
- Methods
Resource: Place
All the information representing a Place.
JSON representation |
---|
{ "name": string, "id": string, "displayName": { object ( |
Fields | |
---|---|
name |
This Place's resource name, in |
id |
The unique identifier of a place. |
displayName |
The localized name of the place, suitable as a short human-readable description. For example, "Google Sydney", "Starbucks", "Pyrmont", etc. |
types[] |
A set of type tags for this result. For example, "political" and "locality". For the complete list of possible values, see Table A and Table B at https://developers.google.com/maps/documentation/places/web-service/place-types |
primaryType |
The primary type of the given result. This type must be one of the Places API supported types. For example, "restaurant", "cafe", "airport", etc. A place can only have a single primary type. For the complete list of possible values, see Table A and Table B at https://developers.google.com/maps/documentation/places/web-service/place-types. The primary type may be missing if the place's primary type is not a supported type. When a primary type is present, it is always one of the types in the |
primaryTypeDisplayName |
The display name of the primary type, localized to the request language if applicable. For the complete list of possible values, see Table A and Table B at https://developers.google.com/maps/documentation/places/web-service/place-types. The primary type may be missing if the place's primary type is not a supported type. |
nationalPhoneNumber |
A human-readable phone number for the place, in national format. |
internationalPhoneNumber |
A human-readable phone number for the place, in international format. |
formattedAddress |
A full, human-readable address for this place. |
shortFormattedAddress |
A short, human-readable address for this place. |
postalAddress |
The address in postal address format. |
addressComponents[] |
Repeated components for each locality level. Note the following facts about the addressComponents[] array: - The array of address components may contain more components than the formattedAddress. - The array does not necessarily include all the political entities that contain an address, apart from those included in the formattedAddress. To retrieve all the political entities that contain a specific address, you should use reverse geocoding, passing the latitude/longitude of the address as a parameter to the request. - The format of the response is not guaranteed to remain the same between requests. In particular, the number of addressComponents varies based on the address requested and can change over time for the same address. A component can change position in the array. The type of the component can change. A particular component may be missing in a later response. |
plusCode |
Plus code of the place location lat/long. |
location |
The position of this place. |
viewport |
A viewport suitable for displaying the place on an average-sized map. This viewport should not be used as the physical boundary or the service area of the business. |
rating |
A rating between 1.0 and 5.0, based on user reviews of this place. |
googleMapsUri |
A URL providing more information about this place. |
websiteUri |
The authoritative website for this place, e.g. a business' homepage. Note that for places that are part of a chain (e.g. an IKEA store), this will usually be the website for the individual store, not the overall chain. |
reviews[] |
List of reviews about this place, sorted by relevance. A maximum of 5 reviews can be returned. |
regularOpeningHours |
The regular hours of operation. Note that if a place is always open (24 hours), the |
timeZone |
IANA Time Zone Database time zone. For example "America/New_York". |
photos[] |
Information (including references) about photos of this place. A maximum of 10 photos can be returned. |
adrFormatAddress |
The place's address in adr microformat: http://microformats.org/wiki/adr. |
businessStatus |
The business status for the place. |
priceLevel |
Price level of the place. |
attributions[] |
A set of data provider that must be shown with this result. |
iconMaskBaseUri |
A truncated URL to an icon mask. User can access different icon type by appending type suffix to the end (eg, ".svg" or ".png"). |
iconBackgroundColor |
Background color for icon_mask in hex format, e.g. #909CE1. |
currentOpeningHours |
The hours of operation for the next seven days (including today). The time period starts at midnight on the date of the request and ends at 11:59 pm six days later. This field includes the specialDays subfield of all hours, set for dates that have exceptional hours. |
currentSecondaryOpeningHours[] |
Contains an array of entries for the next seven days including information about secondary hours of a business. Secondary hours are different from a business's main hours. For example, a restaurant can specify drive through hours or delivery hours as its secondary hours. This field populates the type subfield, which draws from a predefined list of opening hours types (such as DRIVE_THROUGH, PICKUP, or TAKEOUT) based on the types of the place. This field includes the specialDays subfield of all hours, set for dates that have exceptional hours. |
regularSecondaryOpeningHours[] |
Contains an array of entries for information about regular secondary hours of a business. Secondary hours are different from a business's main hours. For example, a restaurant can specify drive through hours or delivery hours as its secondary hours. This field populates the type subfield, which draws from a predefined list of opening hours types (such as DRIVE_THROUGH, PICKUP, or TAKEOUT) based on the types of the place. |
editorialSummary |
Contains a summary of the place. A summary is comprised of a textual overview, and also includes the language code for these if applicable. Summary text must be presented as-is and can not be modified or altered. |
paymentOptions |
Payment options the place accepts. If a payment option data is not available, the payment option field will be unset. |
parkingOptions |
Options of parking provided by the place. |
subDestinations[] |
A list of sub-destinations related to the place. |
fuelOptions |
The most recent information about fuel options in a gas station. This information is updated regularly. |
evChargeOptions |
Information of ev charging options. |
generativeSummary |
AI-generated summary of the place. |
containingPlaces[] |
List of places in which the current place is located. |
addressDescriptor |
The address descriptor of the place. Address descriptors include additional information that help describe a location using landmarks and areas. See address descriptor regional coverage in https://developers.google.com/maps/documentation/geocoding/address-descriptors/coverage. |
googleMapsLinks |
Links to trigger different Google Maps actions. |
priceRange |
The price range associated with a Place. |
reviewSummary |
AI-generated summary of the place using user reviews. |
evChargeAmenitySummary |
The summary of amenities near the EV charging station. |
neighborhoodSummary |
A summary of points of interest near the place. |
consumerAlert |
The consumer alert message for the place when we detect suspicious review activity on a business or a business violates our policies. |
utcOffsetMinutes |
Number of minutes this place's timezone is currently offset from UTC. This is expressed in minutes to support timezones that are offset by fractions of an hour, e.g. X hours and 15 minutes. |
userRatingCount |
The total number of reviews (with or without text) for this place. |
takeout |
Specifies if the business supports takeout. |
delivery |
Specifies if the business supports delivery. |
dineIn |
Specifies if the business supports indoor or outdoor seating options. |
curbsidePickup |
Specifies if the business supports curbside pickup. |
reservable |
Specifies if the place supports reservations. |
servesBreakfast |
Specifies if the place serves breakfast. |
servesLunch |
Specifies if the place serves lunch. |
servesDinner |
Specifies if the place serves dinner. |
servesBeer |
Specifies if the place serves beer. |
servesWine |
Specifies if the place serves wine. |
servesBrunch |
Specifies if the place serves brunch. |
servesVegetarianFood |
Specifies if the place serves vegetarian food. |
outdoorSeating |
Place provides outdoor seating. |
liveMusic |
Place provides live music. |
menuForChildren |
Place has a children's menu. |
servesCocktails |
Place serves cocktails. |
servesDessert |
Place serves dessert. |
servesCoffee |
Place serves coffee. |
goodForChildren |
Place is good for children. |
allowsDogs |
Place allows dogs. |
restroom |
Place has restroom. |
goodForGroups |
Place accommodates groups. |
goodForWatchingSports |
Place is suitable for watching sports. |
accessibilityOptions |
Information about the accessibility options a place offers. |
pureServiceAreaBusiness |
Indicates whether the place is a pure service area business. Pure service area business is a business that visits or delivers to customers directly but does not serve customers at their business address. For example, businesses like cleaning services or plumbers. Those businesses may not have a physical address or location on Google Maps. |
LocalizedText
Localized variant of a text in a particular language.
JSON representation |
---|
{ "text": string, "languageCode": string } |
Fields | |
---|---|
text |
Localized string in the language corresponding to |
languageCode |
The text's BCP-47 language code, such as "en-US" or "sr-Latn". For more information, see http://www.unicode.org/reports/tr35/#Unicode_locale_identifier. |
PostalAddress
Represents a postal address, such as for postal delivery or payments addresses. With a postal address, a postal service can deliver items to a premise, P.O. box, or similar. A postal address is not intended to model geographical locations like roads, towns, or mountains.
In typical usage, an address would be created by user input or from importing existing data, depending on the type of process.
Advice on address input or editing:
- Use an internationalization-ready address widget such as https://github.com/google/libaddressinput.
- Users should not be presented with UI elements for input or editing of fields outside countries where that field is used.
For more guidance on how to use this schema, see: https://support.google.com/business/answer/6397478.
JSON representation |
---|
{ "revision": integer, "regionCode": string, "languageCode": string, "postalCode": string, "sortingCode": string, "administrativeArea": string, "locality": string, "sublocality": string, "addressLines": [ string ], "recipients": [ string ], "organization": string } |
Fields | |
---|---|
revision |
The schema revision of the All new revisions must be backward compatible with old revisions. |
regionCode |
Required. CLDR region code of the country/region of the address. This is never inferred and it is up to the user to ensure the value is correct. See https://cldr.unicode.org/ and https://www.unicode.org/cldr/charts/30/supplemental/territory_information.html for details. Example: "CH" for Switzerland. |
languageCode |
Optional. BCP-47 language code of the contents of this address (if known). This is often the UI language of the input form or is expected to match one of the languages used in the address' country/region, or their transliterated equivalents. This can affect formatting in certain countries, but is not critical to the correctness of the data and will never affect any validation or other non-formatting related operations. If this value is not known, it should be omitted (rather than specifying a possibly incorrect default). Examples: "zh-Hant", "ja", "ja-Latn", "en". |
postalCode |
Optional. Postal code of the address. Not all countries use or require postal codes to be present, but where they are used, they may trigger additional validation with other parts of the address (for example, state or zip code validation in the United States). |
sortingCode |
Optional. Additional, country-specific, sorting code. This is not used in most regions. Where it is used, the value is either a string like "CEDEX", optionally followed by a number (for example, "CEDEX 7"), or just a number alone, representing the "sector code" (Jamaica), "delivery area indicator" (Malawi) or "post office indicator" (Côte d'Ivoire). |
administrativeArea |
Optional. Highest administrative subdivision which is used for postal addresses of a country or region. For example, this can be a state, a province, an oblast, or a prefecture. For Spain, this is the province and not the autonomous community (for example, "Barcelona" and not "Catalonia"). Many countries don't use an administrative area in postal addresses. For example, in Switzerland, this should be left unpopulated. |
locality |
Optional. Generally refers to the city or town portion of the address. Examples: US city, IT comune, UK post town. In regions of the world where localities are not well defined or do not fit into this structure well, leave |
sublocality |
Optional. Sublocality of the address. For example, this can be a neighborhood, borough, or district. |
addressLines[] |
Unstructured address lines describing the lower levels of an address. Because values in The minimum permitted structural representation of an address consists of a Creating an address only containing a |
recipients[] |
Optional. The recipient at the address. This field may, under certain circumstances, contain multiline information. For example, it might contain "care of" information. |
organization |
Optional. The name of the organization at the address. |
AddressComponent
The structured components that form the formatted address, if this information is available.
JSON representation |
---|
{ "longText": string, "shortText": string, "types": [ string ], "languageCode": string } |
Fields | |
---|---|
longText |
The full text description or name of the address component. For example, an address component for the country Australia may have a long_name of "Australia". |
shortText |
An abbreviated textual name for the address component, if available. For example, an address component for the country of Australia may have a short_name of "AU". |
types[] |
An array indicating the type(s) of the address component. |
languageCode |
The language used to format this components, in CLDR notation. |
PlusCode
Plus code (http://plus.codes) is a location reference with two formats: global code defining a 14mx14m (1/8000th of a degree) or smaller rectangle, and compound code, replacing the prefix with a reference location.
JSON representation |
---|
{ "globalCode": string, "compoundCode": string } |
Fields | |
---|---|
globalCode |
Place's global (full) code, such as "9FWM33GV+HQ", representing an 1/8000 by 1/8000 degree area (~14 by 14 meters). |
compoundCode |
Place's compound code, such as "33GV+HQ, Ramberg, Norway", containing the suffix of the global code and replacing the prefix with a formatted name of a reference entity. |
LatLng
An object that represents a latitude/longitude pair. This is expressed as a pair of doubles to represent degrees latitude and degrees longitude. Unless specified otherwise, this object must conform to the WGS84 standard. Values must be within normalized ranges.
JSON representation |
---|
{ "latitude": number, "longitude": number } |
Fields | |
---|---|
latitude |
The latitude in degrees. It must be in the range [-90.0, +90.0]. |
longitude |
The longitude in degrees. It must be in the range [-180.0, +180.0]. |
Viewport
A latitude-longitude viewport, represented as two diagonally opposite low
and high
points. A viewport is considered a closed region, i.e. it includes its boundary. The latitude bounds must range between -90 to 90 degrees inclusive, and the longitude bounds must range between -180 to 180 degrees inclusive. Various cases include:
If
low
=high
, the viewport consists of that single point.If
low.longitude
>high.longitude
, the longitude range is inverted (the viewport crosses the 180 degree longitude line).If
low.longitude
= -180 degrees andhigh.longitude
= 180 degrees, the viewport includes all longitudes.If
low.longitude
= 180 degrees andhigh.longitude
= -180 degrees, the longitude range is empty.If
low.latitude
>high.latitude
, the latitude range is empty.
Both low
and high
must be populated, and the represented box cannot be empty (as specified by the definitions above). An empty viewport will result in an error.
For example, this viewport fully encloses New York City:
{ "low": { "latitude": 40.477398, "longitude": -74.259087 }, "high": { "latitude": 40.91618, "longitude": -73.70018 } }
JSON representation |
---|
{ "low": { object ( |
Fields | |
---|---|
low |
Required. The low point of the viewport. |
high |
Required. The high point of the viewport. |
Review
Information about a review of a place.
JSON representation |
---|
{ "name": string, "relativePublishTimeDescription": string, "text": { object ( |
Fields | |
---|---|
name |
A reference representing this place review which may be used to look up this place review again (also called the API "resource" name: |
relativePublishTimeDescription |
A string of formatted recent time, expressing the review time relative to the current time in a form appropriate for the language and country. |
text |
The localized text of the review. |
originalText |
The review text in its original language. |
rating |
A number between 1.0 and 5.0, also called the number of stars. |
authorAttribution |
This review's author. |
publishTime |
Timestamp for the review. Uses RFC 3339, where generated output will always be Z-normalized and use 0, 3, 6 or 9 fractional digits. Offsets other than "Z" are also accepted. Examples: |
flagContentUri |
A link where users can flag a problem with the review. |
googleMapsUri |
A link to show the review on Google Maps. |
visitDate |
The date when the author visited the place. This is trucated to month. |
AuthorAttribution
Information about the author of the UGC data. Used in Photo
, and Review
.
JSON representation |
---|
{ "displayName": string, "uri": string, "photoUri": string } |
Fields | |
---|---|
displayName |
|
uri |
|
photoUri |
|
Date
Represents a whole or partial calendar date, such as a birthday. The time of day and time zone are either specified elsewhere or are insignificant. The date is relative to the Gregorian Calendar. This can represent one of the following:
- A full date, with non-zero year, month, and day values.
- A month and day, with a zero year (for example, an anniversary).
- A year on its own, with a zero month and a zero day.
- A year and month, with a zero day (for example, a credit card expiration date).
Related types:
google.type.TimeOfDay
google.type.DateTime
google.protobuf.Timestamp
JSON representation |
---|
{ "year": integer, "month": integer, "day": integer } |
Fields | |
---|---|
year |
Year of the date. Must be from 1 to 9999, or 0 to specify a date without a year. |
month |
Month of a year. Must be from 1 to 12, or 0 to specify a year without a month and day. |
day |
Day of a month. Must be from 1 to 31 and valid for the year and month, or 0 to specify a year by itself or a year and month where the day isn't significant. |
OpeningHours
Information about business hour of the place.
JSON representation |
---|
{ "periods": [ { object ( |
Fields | |
---|---|
periods[] |
The periods that this place is open during the week. The periods are in chronological order, in the place-local timezone. An empty (but not absent) value indicates a place that is never open, e.g. because it is closed temporarily for renovations. The starting day of NOTE: The ordering of the |
weekdayDescriptions[] |
Localized strings describing the opening hours of this place, one string for each day of the week. NOTE: The order of the days and the start of the week is determined by the locale (language and region). The ordering of the Will be empty if the hours are unknown or could not be converted to localized text. Example: "Sun: 18:00–06:00" |
secondaryHoursType |
A type string used to identify the type of secondary hours. |
specialDays[] |
Structured information for special days that fall within the period that the returned opening hours cover. Special days are days that could impact the business hours of a place, e.g. Christmas day. Set for currentOpeningHours and currentSecondaryOpeningHours if there are exceptional hours. |
nextOpenTime |
The next time the current opening hours period starts up to 7 days in the future. This field is only populated if the opening hours period is not active at the time of serving the request. Uses RFC 3339, where generated output will always be Z-normalized and use 0, 3, 6 or 9 fractional digits. Offsets other than "Z" are also accepted. Examples: |
nextCloseTime |
|