ContactsManager: getProperties() method
Limited availability
This feature is not Baseline because it does not work in some of the most widely-used browsers.
Secure context: This feature is available only in secure contexts (HTTPS), in some or all supporting browsers.
Experimental: This is an experimental technology
Check the Browser compatibility table carefully before using this in production.
The getProperties() method of the ContactsManager interface returns a Promise which resolves with an Array of strings indicating which contact properties are available.
Syntax
getProperties() Parameters
None.
Return value
Returns a Promise that resolves with an Array of strings naming the contact properties that can be returned by the current system.
Properties can include 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.
Exceptions
No exceptions are thrown.
Examples
>Verify Property Support
The following asynchronous function uses the getProperties() method to check whether the current system supports the icon property.
async function checkProperties() { const supportedProperties = await navigator.contacts.getProperties(); if (!supportedProperties.includes("icon")) { console.log("Your system does not support getting icons."); } } Select Using Only Supported Properties
The following example is similar to one for the select() method. Instead of hard-coding the properties passed to select(), it uses getProperties() to ensure that only supported properties are passed. Otherwise, select() might throw a TypeError. handleResults() is a developer defined function.
const supportedProperties = await navigator.contacts.getProperties(); async function getContacts() { try { const contacts = await navigator.contacts.select(supportedProperties); handleResults(contacts); } catch (ex) { // Handle any errors here. } } Specifications
| Specification |
|---|
| Contact Picker API> # contacts-manager-getproperties> |