Ama*_*ney 2 microsoft-teams microsoft-graph-api
我正在使用 POSTMAN 调用 Microsoft Graph API。我正在尝试订阅多个用户的状态。文档中提到,为了订阅对多个用户状态的更改,请使用以下 url:/communications/presences?$filter=id in ({id},{id}...)
请求网址
https://graph.microsoft.com/beta/subscriptions
Run Code Online (Sandbox Code Playgroud)
这是请求正文(原始)
{
"changeType": "updated",
"notificationUrl": "https://d3a8ebc3581d.ngrok.io/presence-notify/",
"resource": "/communications/presences?$filter=id in (abcd-efgh-4856-a935-c9a2f685xyz,abcd-efgh-47f8-9d79-eacb0fd6xyz)",
"expirationDateTime": "2020-09-22T07:37:13Z",
"clientState": "secretClientState"
}
Run Code Online (Sandbox Code Playgroud)
我代表用户调用此 API,即我正在使用UserAccessToken. 这是回应:
{
"error": {
"code": "BadRequest",
"message": "Invalid filter clause",
"innerError": {
"date": "2020-09-21T16:24:50",
"request-id": "2cf476f0-2270-417f-a987-5c5bbc92a351",
"client-request-id": "2cf476f0-2270-417f-a987-5c5bbc92a351"
}
}
}
Run Code Online (Sandbox Code Playgroud)
PS:我已经更改了两个用户 ID 的前几个和最后几个字符。所以这不是问题。
我猜这并没有很清楚地记录下来,但是如果您检查过滤器文档。你会发现价值观实际上需要围绕'它们。
因此,如果您将请求更改为以下内容,它应该可以工作:
{
"changeType": "updated",
"notificationUrl": "https://d3a8ebc3581d.ngrok.io/presence-notify/",
"resource": "/communications/presences?$filter=id in ('abcd-efgh-4856-a935-c9a2f685xyz','abcd-efgh-47f8-9d79-eacb0fd6xyz')",
"expirationDateTime": "2020-09-22T07:37:13Z",
"clientState": "secretClientState"
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
4170 次 |
| 最近记录: |