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> |
Browser compatibility
Loading…