365 Teams 聊天的图表 API 限制为每次聊天 20 条消息
Graph API for 365 Teams Chats throttled to 20 messages per chat
在它的新测试版 API 之后,我编写了一个脚本,将 Teams 一对一聊天导出到文本文件。这样一来,在迁移到新租户后,我的用户可以在某个地方拥有他们的聊天记录。完成代码并在我的第一个用户身上试用后,我发现我每次聊天只能提取最近的 20 条消息。
这是我正在使用的 API 命令:https://github.com/microsoftgraph/microsoft-graph-docs/blob/master/api-reference/beta/api/chatmessage-list.md
有什么方法可以关闭限制,或者我是否缺少某些步骤以便可以导出 所有 聊天消息?我是 Graph API.
的新手
不是节流问题。
图 API 实现了某些 API 的分页。对于List chat messagesAPI,20条消息是目前的限制。 API 响应有 "@odata.nextLink" 属性 和 link 以获取接下来的 20 条消息。
示例响应
"@odata.context": "https://graph.microsoft.com/beta/LongUrlShort/messages",
"@odata.count": 20,
"@odata.nextLink": "https://graph.microsoft.com/beta/me/chats/LongUrlhSort",
所以你需要在调用API时处理它。您可以循环调用 API 并获取所有记录。
您可以使用查询参数?top=30
来获取前 30 条消息。没有这方面的文档。
在我的例子中,我发现它也有 50 个的限制。
即
?top=50
在它的新测试版 API 之后,我编写了一个脚本,将 Teams 一对一聊天导出到文本文件。这样一来,在迁移到新租户后,我的用户可以在某个地方拥有他们的聊天记录。完成代码并在我的第一个用户身上试用后,我发现我每次聊天只能提取最近的 20 条消息。
这是我正在使用的 API 命令:https://github.com/microsoftgraph/microsoft-graph-docs/blob/master/api-reference/beta/api/chatmessage-list.md
有什么方法可以关闭限制,或者我是否缺少某些步骤以便可以导出 所有 聊天消息?我是 Graph API.
的新手不是节流问题。
图 API 实现了某些 API 的分页。对于List chat messagesAPI,20条消息是目前的限制。 API 响应有 "@odata.nextLink" 属性 和 link 以获取接下来的 20 条消息。
示例响应
"@odata.context": "https://graph.microsoft.com/beta/LongUrlShort/messages",
"@odata.count": 20,
"@odata.nextLink": "https://graph.microsoft.com/beta/me/chats/LongUrlhSort",
所以你需要在调用API时处理它。您可以循环调用 API 并获取所有记录。
您可以使用查询参数?top=30
来获取前 30 条消息。没有这方面的文档。
在我的例子中,我发现它也有 50 个的限制。
即
?top=50