addressBookMultiGet
addressBookMultiGet
addressBookMultiGet is used to retrieve specific address object resources from within a collection.
If the Request-URI is an address object resource. This report is similar to the addressBookQuery except that it takes a list of vcard urls, instead of a filter, to determine which vcards to return.
// fetch 2 specific vcards from one addressBook
const vcards = await addressBookMultiGet({
url: 'https://contacts.icloud.com/1234567/carddavhome/card/',
props: [
{ name: 'getetag', namespace: DAVNamespace.DAV },
{ name: 'address-data', namespace: DAVNamespace.CARDDAV },
],
objectUrls: [
'https://contacts.icloud.com/1234567/carddavhome/card/1.vcf',
'https://contacts.icloud.com/1234567/carddavhome/card/2.vcf',
],
depth: '1',
headers: {
authorization: 'Basic x0C9ueWd9Vz8OwS0DEAtkAlj',
},
});
Arguments
url
required, url of CARDDAV serverobjectUrls
required, urls of vcards to getprops
required, DAVProp the client needsfilters
DAVFilter the filter on the vcardsdepth
required, DAVDepth of the requestheaders
request headers
Return Value
array of DAVVCard
Behavior
send carddav:addressbook-multiget REPORT request and parse the response xml to extract an array of DAVVCard data.