1

我正在尝试根据http://graph.microsoft.io/en-us/docs/api-reference/beta/api/user_post_plans使用 Graph 创建一个规划器计划

但我一直收到以下 BadRequest 响应:

"error": {
    "code": "BadRequest",
    "message": "Write requests are only supported on contained entities",
    "innerError": {
        "request-id": "eae08944-6f47-477e-9950-ade31c473dd7",
        "date": "2016-03-07T11:59:04"
    }

根据我发布到https://graph.microsoft.com/beta/me/plans的文档,正文如下:

"createdBy": "<my uuid>",
"owner": "<a previously generated group uuid>",
"title": "Blah Plan"

没有运气。之前生成的组如下所示:

{
        "id": "<uuid>",
        "classification": null,
        "createdDateTime": "2016-03-07T09:53:26Z",
        "description": "Int Test",
        "displayName": "Int Test",
        "groupTypes": [
            "Unified"
        ],
        "mail": "<email_address>",
        "mailEnabled": true,
        "mailNickname": "IntTest",
        "onPremisesLastSyncDateTime": null,
        "onPremisesSecurityIdentifier": null,
        "onPremisesSyncEnabled": null,
        "proxyAddresses": [
            "SMTP:<email_address>"
        ],
        "renewedDateTime": "2016-03-07T09:53:26Z",
        "securityEnabled": false,
        "visibility": "Public"
    }

我尝试了各种请求主体的组合。有和没有 createdBy 值。有和没有所有者价值观。似乎没有任何效果。

有什么想法我哪里出错了吗?该错误在我的集成测试以及图形浏览器中是一致的。

谢谢

4

4 回答 4

1

2017 年 7 月,API 被修改并发布。现在创建计划的新端点是:

https://graph.microsoft.com/v1.0/planner/plans

带有请求正文,例如:

{
  "owner": "<group-id>",
  "title": "my plan title"
}

其中 <group-id> 必须是先前创建的组的 id。

于 2017-08-23T11:54:03.653 回答
0

为这里的混乱道歉。该文档有一个错误将很快更新。要创建计划,请确保已创建组,并且用户是组成员。然后创建计划,将所有者设置为组 ID,并将 createdBy 设置为用户 ID。

于 2016-03-08T07:05:01.477 回答
0

正如 Sriram 提到的,这是一个文档错误。它刚刚被修复。更新后的 URL 为:https ://graph.microsoft.io/en-us/docs/api-reference/beta/api/plan_post_plans

问题在于调用哪个端点来创建计划。您应该调用“/plans”而不是“/me/plans”。您还应该知道,您传入的某些数据是只读的。您不应包含“createdBy”,因为这是由服务设置的只读属性,而不是您。计划资源文档将向您显示可以在计划中设置的所有属性。

最后要记住的是,每组只能有一个计划。如果您尝试制定第二个计划,您将收到来自 API 的错误消息。

于 2016-10-17T18:20:45.533 回答
0

对于这个问题,您可以尝试完全按照以下步骤操作吗?

  • 创建统一组
  • 将用户添加为统一组的成员
  • 通过发送 {“owner”: group-id, “title”: string} 创建计划 - 不要发送“createdBy”字段,因为它是只读字段

要将任务添加到存储桶,如果您发送它应该可以正常工作

{“planId”:plan-id,“bucketId”:bucket-id,“title”:字符串}

如果这仍然不起作用,请随时通过 lixian@microsoft.com 与我联系。

谢谢,

肖恩

于 2016-03-21T20:45:46.920 回答