Places (Search) API Developer's Guide

Contacts Object Structure

There are multiple mechanisms for contacting a place. For each available type of contact, the object contains an attribute that provides a list of contact details for that type. The possible types include:

Attribute Type Description
phone Array[LabeledValue]; optional A telephone number for voice calls
fax Array[LabeledValue]; optional A telephone number for facsimile (telecopy) transmissions
email Array[LabeledValue]; optional An e-mail address for sending messages to the place
website Array[LabeledValue]; optional A URL for the website operated by the place

New types may be added at any time and client applications should iterate over all available contact types instead of just using this predefined set, to ensure that they always display all available contact mechanisms to their users.

The contacts within a type are ordered by relevance. So clients that are only capable of displaying a single contact per type should always display the first entry. But in general, client applications should iterate over all contacts and use the label assigned to the contacts to distinguish them.

When there are many items of the same type, these items can be combined. Two phone items, for example, can be displayed as shown below:

An example of multiple phone objects could be:

"contacts": {
  "phone": [
        {
          "label": "Phone",
          "value": "+33147206252"
        },
        {
          "label": "Mobile",
          "value": "+33147206252"
        }
  ],
  ...
}

Labeled Value

Each individual contact item provides two attributes:

Attribute Type Description
value String A localized label to describe the purpose of the contact.
label String A string value appropriate for the contact method.