聊天: getAllMessages
命名空间:microsoft.graph
从用户参与的所有 聊天 中获取所有 消息,包括一对一聊天、群组聊天和会议聊天。
注意:这是支持 和
model=B
付款模型的按流量计费的model=A
API。 有关详细信息,请参阅 付款模型。 如果未在查询中指定付款模型,将使用默认 评估模式 。根据你选择的支付模式,可能还需要许可证。
此 API 可用于以下国家级云部署。
全局服务 | 美国政府 L4 | 美国政府 L5 (DOD) | 由世纪互联运营的中国 |
---|---|---|---|
✅ | ❌ | ❌ | ❌ |
权限
为此 API 选择标记为最低特权的权限。 只有在应用需要它时,才使用更高的特权权限。 有关委派权限和应用程序权限的详细信息,请参阅权限类型。 要了解有关这些权限的详细信息,请参阅 权限参考。
权限类型 | 最低特权权限 | 更高特权权限 |
---|---|---|
委派(工作或学校帐户) | 不支持。 | 不支持。 |
委派(个人 Microsoft 帐户) | 不支持。 | 不支持。 |
应用程序 | Chat.Read.All | Chat.ReadWrite.All |
HTTP 请求
GET /users/{id | user-principal-name}/chats/getAllMessages
可选的查询参数
根据首选的 许可和付款模型,可以使用支持值 A
和 B
的 model
查询参数,如以下示例所示。
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, 机器人, tenantBot, office365Connector, outgoingWebhook |
获取用户 ID 发送的消息 | $filter=from/user/id eq '{oid}' | |
获取控制 (系统事件) 消息 | $filter=messageType eq 'systemEventMessage' | |
排除控件 (系统事件) 消息 | $filter=messageType ne 'systemEventMessage' |
注意: 可以使用 运算符联接
or
这些筛选器子句。 筛选器子句可以在查询中多次出现,并且每次在查询中出现时,它都可以根据不同的值进行筛选。
请求标头
标头 | 值 |
---|---|
Authorization | 持有者 {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": []
}
]
}