contactFolder: delta
Namespace: microsoft.graph
Get a set of contact folders that have been added, deleted, or removed from the user's mailbox.
A delta function call for contact folders in a mailbox is similar to a GET request, except that by appropriately applying state tokens in one or more of these calls, you can query for incremental changes in the contact folders. This allows you to maintain and synchronize a local store of a user's contact folders without having to fetch all the contact folders of that mailbox from the server every time.
Permissions
One of the following permissions is required to call this API. To learn more, including how to choose permissions, see Permissions.
Permission type | Permissions (from least to most privileged) |
---|---|
Delegated (work or school account) | Contacts.Read, Contacts.ReadWrite |
Delegated (personal Microsoft account) | Contacts.Read, Contacts.ReadWrite |
Application | Contacts.Read, Contacts.ReadWrite |
HTTP request
GET /me/contactFolders/delta
GET /users/{id}/contactFolders/delta
Query parameters
Tracking changes in contact folders incurs a round of one or more delta function calls. If you use any query parameter
(other than $deltatoken
and $skiptoken
), you must specify
it in the initial delta request. Microsoft Graph automatically encodes any specified parameters
into the token portion (skiptoken
or $deltatoken
) of the @odata.nextLink
or @odata.deltaLink
URL provided in the response.
You only need to specify any desired query parameters once upfront.
In subsequent requests, simply copy and apply the @odata.nextLink
or @odata.deltaLink
URL from the previous response, as that URL already
includes the encoded, desired parameters.
Query parameter | Type | Description |
---|---|---|
$deltatoken | string | A state token returned in the @odata.deltaLink URL of the previous delta function call for the same contact folder collection, indicating the completion of that round of change tracking. Save and apply the entire @odata.deltaLink URL including this token in the first request of the next round of change tracking for that collection. |
$skiptoken | string | A state token returned in the @odata.nextLink URL of the previous delta function call, indicating there are further changes to be tracked in the same contact folder collection. |
OData query parameters
You can use a $select
query parameter as in any GET request to specify only the properties your need for best performance. The
id property is always returned.
Request headers
Name | Type | Description |
---|---|---|
Authorization | string | Bearer {token}. Required. |
Content-Type | string | application/json. Required. |
Prefer | string | odata.maxpagesize={x}. Optional. |
Response
If successful, this method returns a 200 OK
response code and contactFolder collection object in the response body.
Example
Request
The following example shows how to make a single delta function call, and limit the maximum number of contact folders in the response body to 2.
To track changes in the contact folders of a mailbox, you would make one or more delta function calls, with appropriate state tokens, to get the set of incremental changes since the last delta query.
You can find a similar example that shows how to use the state tokens to track changes in the messages of a mail folder: Get incremental changes to messages in a folder. The main differences between tracking contact folders and tracking messages in a folder are in the delta query request URLs, and the query responses returning contactFolder rather than message collections.
GET https://graph.microsoft.com/v1.0/me/contactFolders/delta
Prefer: odata.maxpagesize=2
Response
If the request is successful, the response would include a state token, which is either a skipToken
(in an @odata.nextLink response header) or a deltaToken (in an @odata.deltaLink response header).
Respectively, they indicate whether you should continue with the round or you have completed
getting all the changes for that round.
The response below shows a skipToken in an @odata.nextLink response header.
Note: The response object shown here might be shortened for readability.
HTTP/1.1 200 OK
Content-type: application/json
{
"@odata.nextLink":"https://graph.microsoft.com/v1.0/me/contactfolders/delta?$skiptoken={_skipToken_}",
"value": [
{
"parentFolderId": "parentFolderId-value",
"displayName": "displayName-value",
"id": "id-value"
}
]
}
See also
Feedback
Submit and view feedback for