This page is not complete.

Secure context

This feature is available only in secure contexts (HTTPS), in some or all supporting browsers.

The getProperties() method of the ContactsManager interface returns a Promise which resolves with an Array of strings indicating which contact properties are available.


var ContactProperties = ContactsManager.getProperties();


This method receives no parameters.

Return value

Returns a Promise which when resolved returns an Array of available contact properties as strings.

Properties can be any of the following:

  • 'name': The contact's name.
  • 'tel': The telephone number(s) of the contact.
  • 'email': The email address of the contact.
  • 'address': The contact's postal address.
  • 'icon': The avatar of the contact.


No exceptions are thrown.


The following asynchronous function uses the getProperties method to check for supported properties.

async function checkProperties() {
  const supportedProperties = await navigator.contacts.getProperties();
  if (supportedProperties.includes('name')) {
    // run code for name support
  if (supportedProperties.includes('email')) {
    // run code for email support
  if (supportedProperties.includes('tel')) {
    // run code for telephone number support
  if (supportedProperties.includes('address')) {
    // run code for address support
  if (supportedProperties.includes('icon')) {
    // run code for avatar support


Contact Picker API
# contacts-manager-getproperties

Browser compatibility

BCD tables only load in the browser