问题描述
我正在将一个应用程序与MS Graph API集成。该应用程序将使用文件和文件夹创建团队,并在用户的日历上创建事件。在我们的商业Graph环境中一切正常,但当我们在我们的美国国家云环境(graph.microsoft.us)上尝试所有相同的请求时,我们遇到了问题。
发布到/Teams/{Team id}/Members每次都会返回404。该请求的格式与示例完全相同:https://docs.microsoft.com/en-us/graph/api/team-post-members?view=graph-rest-1.0&tabs=http
发布到我/事件或/用户/{用户名}/事件每次都会返回400。我甚至尝试手动格式化请求,与更改日期和地址的示例完全一样,但无济于事:https://docs.microsoft.com/en-us/graph/api/user-post-events?view=graph-rest-1.0&tabs=http
我可以发布各种其他请求。例如:应用程序创建一个团队,将文件夹添加到默认频道,并在尝试执行失败的请求之前修改对这些文件夹的权限。
我使用该API的v1.0或测试版收到错误。
我不确定这是否重要,但我使用的是带有C#的.NET 4.7.2中的WebClient类。
失败的事件请求:
POST https://graph.microsoft.us/beta/users/<my email>/calendar/events
{
"subject": "Some - Meeting - Name",
"body": {
"contentType": "HTML",
"content": ""
},
"start": {
"dateTime": "2021-07-08T21:00:00",
"timeZone": "UTC"
},
"end": {
"dateTime": "2021-07-08T22:00:00",
"timeZone": "UTC"
},
"location": {
"displayName": "Virtual"
},
"attendees": [
{
"emailAddress": {
"address": "<My email>",
"name": "<My name>"
},
"type": "required"
},
{
"emailAddress": {
"address": "<colleague email>",
"name": "<colleague name>"
},
"type": "required"
}
],
"allowNewTimeProposals": true,
"isOnlineMeeting": true,
"onlineMeetingProvider": "teamsForBusiness",
"transactionId": "fa3b8eb3-02b0-435a-ab29-5019cab134eb"
}
回复
request-id: 51351ca3-9354-4eae-8d8c-d09f168594ab
client-request-id: 51351ca3-9354-4eae-8d8c-d09f168594ab
x-ms-ags-diagnostic: {"ServerInfo":{"DataCenter":"USGov Arizona","Slice":"SliceC","Ring":"4","ScaleUnit":"000","RoleInstance":"AGSFE_IN_0"}}
Strict-Transport-Security: max-age=31536000
Content-Length: 243
Cache-Control: private
Content-Type: application/json
Date: Thu, 08 Jul 2021 00:05:47 GMT
Body:
{
"error": {
"code": "UnableToDeserializePostBody",
"message": "were unable to deserialize ",
"innerError": {
"date": "2021-07-08T00:05:48",
"request-id": "51351ca3-9354-4eae-8d8c-d09f168594ab",
"client-request-id": "51351ca3-9354-4eae-8d8c-d09f168594ab"
}
}
}
添加成员请求失败
POST https://graph.microsoft.us/beta/teams/<team-id>/members
{
"@odata.type": "#microsoft.graph.aadUserConversationMember",
"roles": [],
[email protected]: https://graph.microsoft.us/beta/users('<user guid>')
}
回复
{
"error": {
"code": "NotFound",
"message": "Not Found",
"innerError": {
"date": "2021-07-08T00:35:13",
"request-id": "b488d292-2733-4512-a759-507a3a58bdbb",
"client-request-id": "b488d292-2733-4512-a759-507a3a58bdbb"
}
}
}
推荐答案
更新11/15/2021
添加团队成员似乎已修复。与该漏洞一样,修复似乎在没有公开文档的情况下通过了。我不确定";Allow NewTimeProposals&Quot;标志,因为我们已将其从请求中删除。
原始帖子
对于事件请求,使用";AllowNewTimeProposals";属性会导致Graph在使用美国National Cloud时引发";UnableToDisializePostBody";错误。但是,世界各地的终结点使用此参数工作得很好。微软的答复是,这个问题将在下个季度得到解决。
.US Graph终结点的添加团队成员请求已中断,他们计划在下个季度修复该请求。
换句话说。MS文档就像一份设计建议书/营销文档,旨在让您购买并测试他们的服务。
这篇关于无法在MS Graph National US Cloud中创建活动或团队成员的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!