Поделиться через


mailboxItem: delta

Пространство имен: microsoft.graph

Важно!

API версии /beta в Microsoft Graph могут быть изменены. Использование этих API в производственных приложениях не поддерживается. Чтобы определить, доступен ли API в версии 1.0, используйте селектор версий.

Получите набор объектов mailboxItem , добавленных, удаленных или обновленных в указанном mailboxFolder.

Вызов разностной функции для элементов в папке аналогичен запросу GET, за исключением того, что, применяя маркеры состояния в одном или нескольких из этих вызовов, можно запросить добавочные изменения элементов в этой папке. Такой подход позволяет поддерживать и синхронизировать локальное хранилище элементов почтового ящика пользователя без необходимости каждый раз получать весь набор элементов с сервера.

Разрешения

Выберите разрешение или разрешения, помеченные как наименее привилегированные для этого API. Используйте более привилегированное разрешение или разрешения только в том случае, если это требуется приложению. Дополнительные сведения о делегированных разрешениях и разрешениях приложений см. в разделе Типы разрешений. Дополнительные сведения об этих разрешениях см. в справочнике по разрешениям.

Тип разрешения Разрешения с наименьшими привилегиями Более высокие привилегированные разрешения
Делегированные (рабочая или учебная учетная запись) MailboxItem.Read Недоступно.
Делегированные (личная учетная запись Майкрософт) Не поддерживается. Не поддерживается.
Приложение MailboxItem.Read.All Недоступно.

HTTP-запрос

GET /admin/exchange/mailboxes/{mailboxId}/folders/{mailboxFolderId}/items/delta

Параметры запроса

При отслеживании изменений в элементах выполняется цикл из одного или нескольких вызовов разностных функций. Если вы используете параметры запроса, отличные от $deltaToken и $skipToken, их необходимо указать в начальном запросе delta. Microsoft Graph автоматически кодирует указанные параметры в маркере, входящем в состав URL-адреса nextLink или deltaLink, включенного в отклик. Параметры запроса нужно указать только один раз в первом запросе. В последующих запросах просто скопируйте и примените nextLink URL-адрес или deltaLink из предыдущего ответа, так как этот URL-адрес уже содержит закодированные требуемые параметры.

Параметр запроса Описание
$deltaToken Маркер состояния, возвращаемый в deltaLink URL-адресе предыдущего вызова функции delta для той же коллекции элементов, что указывает на завершение этого раунда отслеживания изменений. Сохраните URL-адрес deltaLink с этим токеном и примените его в первом запросе следующего цикла отслеживания изменений для этой коллекции.
$skipToken Маркер состояния, возвращенный в nextLink URL-адресе предыдущего вызова разностной функции, указывающий, что в той же коллекции элементов доступны дальнейшие изменения.

Параметры запросов OData

  • Параметр запроса можно использовать $select для указания только свойств, необходимых для оптимальной производительности. Свойство id возвращается всегда.
  • Этот разностный запрос поддерживает $select параметры запроса и $top для элементов.
  • Существует ограниченная поддержка для $filter и $orderby:
    • Единственными поддерживаемыми $filter выражениями являются $filter=receivedDateTime+ge+{value} и $filter=receivedDateTime+gt+{value}.
    • Для параметра $orderby поддерживается только выражение $orderby=receivedDateTime+desc. Если не включить $orderby выражение, порядок возврата не гарантируется.
  • Параметр $search запроса не поддерживается.

Заголовки запросов

Имя Описание
Авторизация Bearer {token}. Обязательно. Дополнительные сведения о проверке подлинности и авторизации.
Prefer odata.maxpagesize={x}. Необязательный параметр.

Текст запроса

Не указывайте текст запроса для этого метода.

Отклик

В случае успешного 200 OK выполнения эта функция возвращает код отклика и коллекцию объектов mailboxItem в тексте отклика.

Примеры

Запрос

В следующем примере показано, как выполнить один вызов разностной функции и ограничить максимальное количество элементов в тексте ответа двумя.

Чтобы отслеживать изменения в элементах в папке, необходимо выполнить один или несколько вызовов разностной функции, чтобы получить набор добавочных изменений с момента последнего разностного запроса.

Пример, показывающий цикл разностных вызовов запросов, см. в разделе Получение добавочных изменений элементов в папке.

GET https://graph.microsoft.com/beta/admin/exchange/mailboxes/MBX:e0643f21@a7809c93/folders/AAMkAGUwNjQ4ZyTAAA=/items/delta
Prefer: odata.maxpagesize=2

Отклик

Если запрос выполнен успешно, ответ включает маркер состояния, который является ( $skipToken в заголовке ответа @odata.nextLink ) или $deltaToken (в заголовке ответа @odata.deltaLink ). Соответственно, они указывают, следует ли продолжить цикл или вы завершили получение всех изменений для этого раунда.

В следующем примере показан в $skipToken заголовке ответа @odata.nextLink .

Примечание. Объект отклика, показанный здесь, может быть сокращен для удобочитаемости.

HTTP/1.1 200 OK
Content-Type: application/json
Content-length: 337

{
    "@odata.context": "https://graph.microsoft.com/beta/$metadata#Collection(mailboxItem)",
    "@odata.nextLink": "https://graph.microsoft.com/beta/admin/exchange/mailboxes/MBX:e0643f21@a7809c93/folders/AAMkAGUwNjQ4ZyTAAA=/items/delta?$skiptoken={_skipToken_}",
    "value": [
        {
            "@odata.type": "#microsoft.graph.mailboxItem",
            "@odata.etag": "W/\"CQAAABYAAACQ2fKdhq8oSKEDSVrdi3lRAAFR+6ZT\"",
            "createdDateTime": "2021-10-19T06:30:30Z",
            "lastModifiedDateTime": "2021-10-19T07:17:06Z",
            "changeKey": "CQAAABYAAACQ2fKdhq8oSKEDSVrdi3lRAAFR+6ZT",
            "categories": [],
            "type": "IPM.Note",
            "size": 75329,
            "id": "AAMkAGUwNjQ4ZyTAACQ2fKdhq8oSKEDSVrdi3lRAAFSX03WAAA="
        }
    ]
}