чаты: 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