The product feed offers a number of ways for you to specify points of interest associated with the product. Google uses this information to help surface the product to users when relevant POIs or destinations are being searched.
Each product option
can specify one or more points of interests (POIs)
related to the option using the related_location
field (containing a list of
RelatedLocation
objects). Each RelatedLocation
object contains a location
describing the POI in question and a relation_type
describing the
relationship between the POI and the product option
.
Related locations and relation_type
A product option should only be marked as related if it provides a
meaningful experience of the location in addition to physically visiting
it. The definition of "meaningful" might vary for different locations, but
things that usually shouldn't be marked as related include views of a POI during
for example a boat cruise or bus tour or meeting points for tours (use the
meeting_point
field instead). The three relation_types
are:
RELATED_NO_ADMISSION: Location is related but the product option does not include admission or admission is irrelevant. For example if the location is a square highlighted in a city tour.
ADMISSION_TICKET: Relation grants admission to this related location.
SUPPLEMENTARY_ADDON: Relation declares an additional service which doesn't get the user into the related location. For example parking ticket, a temporary exhibition.
Examples
relation_type | Example |
---|---|
RELATED_NO_ADMISSION | Walking tour around the Eiffel tower without entry. Helicopter tour around the Burj Khalifa. |
ADMISSION_TICKET | Entry ticket to a Zoo, can include additional addons. |
SUPPLEMENTARY_ADDON | Skip the line without entry, audio guide without entry. |
Not related | Boat cruise which sees the POI from a distance. Tour office where the tour starts or ticket can be purchased. |
Each product option
may also have a meeting_point
for specific tour types
where the starting location is unclear and must be determined (e.g. guided
tours).
How to request a new Attraction to be added
If you are providing the official tickets for attractions and notice one of the attractions you are working with is missing from Google Things To Do, you can fill in the TTD New POI Request Form to request the POI to be added as part of Things To Do.
How to pass related locations to Google
When processing an incoming feed, Google attempts to match the location hints provided as textual strings to Google-internal entities representing those locations, known as Point of Interests (POIs).
A POI can be loosely defined as a named pin on a specific location (coordinates). Within the context of Things to do, relevant examples include tour operators and tourist attractions; however, generally speaking, a POI can be any establishment with a name and location that is known to Google.
Location Matching refers to the process of matching a related location, in the form of a textual hint, to a POI known to Google, if one exists in the Google database.
There are multiple ways to send a related location to Google, depending on the source of the location data, contractual requirements with suppliers, and the amount of control one wishes to have over the matching process.
The following hint types are supported (in order of preference):
Hint types
Type | Description | Recommended Usage |
---|---|---|
Business Profile ID |
Uniquely identifies a business on Google.
It can only be obtained directly from the business owner using their Business Profile advanced settings page, as described in Advanced profile settings. It is mapped to the POI representing the business on Google. The mapping will be successful only if the business's location has been verified by Google. In addition to POIs, this format also supports service-area and hybrid business types, defined in How to use a service-area on Google. |
|
Place Info |
Structured representation of a POI, providing separate fields for
place name, address components, and additional hints such as phone
number, website, and coordinates.
This is the preferred method when obtaining a Business Profile ID from the POI owner is not feasible. |
|
Place ID |
Uniquely identifies a POI on Google.
It can be sourced using the Places API endpoints, for example Place Search or Place Autocomplete, or manually using the Find Location Matches tool in Things to Do Center. |
|
Latitude and Longitude | Loosely identify a geographical or geopolitical region such as a city, locality, or travel destination. |
|
Address |
Represents a POI location as an unstructured single-line address,
optionally including the place name.
Deprecated. This format will no longer be supported as of May 1, 2024. |
|
Examples
// Example 1: Business Profile ID, copied from the Advanced settings page
// of the Google Business Profile that manages the POI.
"location": {
"business_profile_id": 11458995034835395294
}
// Example 2: Place Info with structured address, coordinates, website URL,
// and phone number.
"location": {
"place_info": {
"name": "Colosseum",
"phone_number": "+39 063 99 67 700",
"website_url": "https://colosseo.it/",
"coordinates": {
"latitude": 41.8902102,
"longitude": 12.4922309
},
"structured_address" {
"street_address": "Piazza del Colosseo, 1",
"locality": "Roma",
"administrative_area": "RM",
"postal_code": "00184",
"country_code": "IT"
}
}
}
// Example 3: Place Info with unstructured address.
"location": {
"place_info": {
"name": "Eiffel Tower",
"unstructured_address": "5 Av. Anatole France, 75007 Paris, France"
}
}
// Example 4: Place Info using place name and coordinates only. This
// configuration is useful for matching POIs located in remote areas without
// an exact street address, such as POIs located in deserts or on unnamed
// roads.
"location": {
"place_info": {
"name": "Mutitjulu Waterhole",
"coordinates": {
"latitude": -25.3511774,
"longitude": 131.0326859
}
}
}
// Example 5: Latitude and longitude.
// This format maintains the old behavior and will only match to the city or
// region.
// For more accurate matching using coordinates, use PlaceInfo instead,
// which includes a mandatory field for the place name.
"location": {
"lat_lng": {
"latitude": 51.5072178,
"longitude": -0.1275862
}
}
How to migrate address
field to the new place_info
field
You can migrate the existing unstructured address
field to the new
place_info
field with the following steps:
- If the address data you have is unstructured then:
- Add the business name to
place_info/name
field - Place the address without the business name in
place_info/unstructured_address
- Drop the existing
address
field from the feed - Go to step 3
- Add the business name to
- If the address data you have is structured then:
- Add the business name to
place_info/name
field - Add the address information such as
street_address
,postal_address
inplace_info/structured_address
. - Drop the existing
address
field from the feed - Go to step 3
- Add the business name to
- Add additional data such as
website_url
andphone_number
to improve matching accuracy