чаты: getAllMessages

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

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

Заметка: Это лимитный API, который поддерживает model=A модели оплаты и model=B . Дополнительные сведения см. в разделе Модели оплаты. Если в запросе не указана модель оплаты, будет использоваться режим оценки по умолчанию.

В зависимости от выбранной модели оплаты также может потребоваться лицензия.

Этот API доступен в следующих национальных облачных развертываниях.

Глобальная служба Правительство США L4 Правительство США L5 (DOD) Китай управляется 21Vianet

Разрешения

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

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

HTTP-запрос

GET /users/{id | user-principal-name}/chats/getAllMessages

Необязательные параметры запросов

Вы можете использовать параметр запроса model, который поддерживает значения A и B, в зависимости от предпочитаемой модели лицензирования и оплаты, как показано в следующих примерах.

GET /users/{id | user-principal-name}/chats/getAllMessages?model=A
GET /users/{id | user-principal-name}/chats/getAllMessages?model=B

Если параметр не model указан, используется режим оценки .

Этот метод также поддерживает параметры диапазона дат для настройки ответа, как показано в следующем примере.

GET /users/{id}/chats/getAllMessages?$top=50&$filter=lastModifiedDateTime gt 2020-06-04T18:03:11.591Z and lastModifiedDateTime lt 2020-06-05T21:00:09.413Z

Этот метод поддерживает $filter параметр запроса. В следующей таблице приведены примеры.

Сценарий Параметр $filter Возможные значения
Получение сообщений, отправляемых по типу удостоверения пользователя $filter=from/user/userIdentityType eq '{teamworkUserIdentityType}' aadUser, onPremiseAadUser, anonymousGuest, federatedUser, personalMicrosoftAccountUser, skypeUser, phoneUser
Получение сообщений, отправляемых по типу приложения $filter=from/application/applicationIdentityType eq "{teamworkApplicationIdentity}" aadApplication, bot, tenantBot, office365Connector, outgoingWebhook
Получение сообщений, отправляемых по идентификатору пользователя $filter=from/user/id eq '{oid}'
Получение сообщений control(system event) $filter=messageType eq 'systemEventMessage'
Исключить сообщения об управлении (системных событиях) $filter=messageType ne 'systemEventMessage'

Заметка: Эти предложения фильтра можно объединить с помощью or оператора . Предложение фильтра может отображаться в запросе несколько раз, и оно может фильтровать по другому значению каждый раз, когда оно появляется в запросе.

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

Заголовок Значение
Авторизация Bearer {token}. Обязательно. Дополнительные сведения о проверке подлинности и авторизации.

Отклик

В случае успеха этот метод возвращает 200 OK код отклика и список chatMessages в теле отклика.

Ошибки

Этот API имеет требования к лицензированию и оплате. Если эти требования не выполняются, API возвращает одну из следующих ошибок.

Пример типа ошибки Код состояния Пример сообщения об ошибке
Не выполнены требования к лицензии E5 402 (требуется оплата) "...needs a valid license to access this API..."
"...tenant needs a valid license to access this API..."
Превышены возможности оценки 402 (требуется оплата) "...evaluation mode capacity has been exceeded. Use a valid billing model..."

Пример

Запрос

GET https://graph.microsoft.com/v1.0/users/0b4f1cf6-54c8-4820-bbb7-2a1f4257ade5/chats/getAllMessages?$top=2

Отклик

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

HTTP/1.1 200 OK
Content-type: application/json

{
    "@odata.context": "https://graph.microsoft.com/v1.0/$metadata#Collection(chatMessage)",
    "@odata.count": 2,
    "@odata.nextLink": "https://graph.microsoft.com/v1.0/users('0b4f1cf6-54c8-4820-bbb7-2a1f4257ade5')/chats/getallMessages?$top=2&$skiptoken=U2tpcFZhbHVlPTIjTWFpbGJveEZvbGRlcj1NYWlsRm9sZGVycy9UZWFtc01lc3NhZ2VzRGF0YQ%3d%3d",
    "value": [
        {
            "@odata.type": "#microsoft.graph.chatMessage",
            "id": "1621973534864",
            "replyToId": null,
            "etag": "1621973534864",
            "messageType": "message",
            "createdDateTime": "2021-05-25T20:12:14.864Z",
            "lastModifiedDateTime": "2021-05-25T20:12:14.864Z",
            "lastEditedDateTime": null,
            "deletedDateTime": null,
            "subject": null,
            "summary": null,
            "chatId": "19:3c9e92a344704332bbf5bda58f4d37b1@thread.v2",
            "importance": "normal",
            "locale": "en-us",
            "webUrl": null,
            "channelIdentity": null,
            "policyViolation": null,
            "eventDetail": null,
            "from": {
                "application": null,
                "device": null,
                "user": {
                    "id": "0b4f1cf6-54c8-4820-bbb7-2a1f4257ade5",
                    "displayName": "user1 a",
                    "userIdentityType": "aadUser"
                }
            },
            "body": {
                "contentType": "text",
                "content": "Hello user2, user 3"
            },
            "attachments": [],
            "mentions": [],
            "reactions": []
        },
        {
            "@odata.type": "#microsoft.graph.chatMessage",
            "id": "1622762567488",
            "replyToId": null,
            "etag": "1622762567488",
            "messageType": "message",
            "createdDateTime": "2021-06-03T23:22:47.488Z",
            "lastModifiedDateTime": "2021-06-03T23:22:47.488Z",
            "lastEditedDateTime": null,
            "deletedDateTime": null,
            "subject": null,
            "summary": null,
            "chatId": "19:0b4f1cf6-54c8-4820-bbb7-2a1f4257ade5_0d7c63d3-1306-4eec-8f21-588a70fb6ef1@unq.gbl.spaces",
            "importance": "normal",
            "locale": "en-us",
            "webUrl": null,
            "channelIdentity": null,
            "policyViolation": null,
            "eventDetail": null,
            "from": {
                "application": null,
                "device": null,
                "user": {
                    "id": "0b4f1cf6-54c8-4820-bbb7-2a1f4257ade5",
                    "displayName": "user1 a",
                    "userIdentityType": "aadUser"
                }
            },
            "body": {
                "contentType": "text",
                "content": "hi user2"
            },
            "attachments": [],
            "mentions": [],
            "reactions": []
        }
    ]
}

Ограничения регулирования для служб, связанных с Microsoft Graph