当任何用户在MS团队中创建一个新的团队时,我们都希望将这些信息传播到我们的自定义应用程序中,并执行一些操作。有什么办法触发这个事件吗?
发布于 2022-08-18 00:03:29
您可以使用变更通知将webhooks接收到您自己的api端点。
要接收新事件的webhook,您必须创建一个新的订阅 (参见创建订阅),并使用/users/{id}/events
作为resource
。将{id}
更改为要订阅的用户的Id
。
因为您只想接收新事件,所以将ChangeType
设置为created
。您还可以使用updated
或deleted
,并使用,
来链接它们。
示例请求创建新的订阅
POST https://graph.microsoft.com/beta/subscriptions
Content-type: application/json
{
"changeType": "created",
"notificationUrl": "https://yourbackend.tld/api/new-event",
"resource": "/users/{id}/events",
"expirationDateTime":"2022-05-21T11:21:32.5261217Z",
}
expirationDateTime
请注意,expirationDateTime
有一个最大值。见每种资源类型的最大订阅长度。事件的最大值为4230分钟。
您可以通过延长订阅的过期时间来更新订阅,请参阅更新订阅。
用于Outlook资源的不可变标识符
我还建议使用标头Prefer: IdType="ImmutableId"
来确保事件的Id
不会随着时间的推移而改变。阅读有关此这里的更多信息。
https://stackoverflow.com/questions/73385714
复制