Update plannerplandetails

Namespace: microsoft.graph

Update the properties of plannerplandetails object.


One of the following permissions is required to call this API. To learn more, including how to choose permissions, see Permissions.

Permission type Permissions (from least to most privileged)
Delegated (work or school account) Tasks.ReadWrite, Group.ReadWrite.All
Delegated (personal Microsoft account) Not supported.
Application Tasks.ReadWrite.All

HTTP request

PATCH /planner/plans/{id}/details

Optional request headers

Name Description
Authorization Bearer {token}. Required.
If-Match Last known ETag value for the plannerPlanDetails to be updated. Required.

Request body

In the request body, supply the values for relevant fields that should be updated. Existing properties that are not included in the request body will maintain their previous values or be recalculated based on changes to other property values. For best performance you shouldn't include existing values that haven't changed.

Property Type Description
categoryDescriptions plannerCategoryDescriptions An object that specifies the descriptions of the six categories that can be associated with tasks in the plan
sharedWith plannerUserIds Set of user ids that this plan is shared with. If you are leveraging Microsoft 365 groups, use the Groups API to manage group membership to share the group's plan. You can also add existing members of the group to this collection though it is not required for them to access the plan owned by the group.


If successful, this method returns 204 No Content response and empty content. If the request specifies Prefer header with return=representation preference, then this method returns a 200 OK response code and updated plannerPlanDetails object in the response body.

This method can return any of the HTTP status codes. The most common errors that apps should handle for this method are the 400, 403, 404, 409, and 412 responses. For more information about these errors, see Common Planner error conditions.



Here is an example of the request.

PATCH https://graph.microsoft.com/v1.0/planner/plans/{plan-id}/details
Content-type: application/json
Prefer: return=representation

  "sharedWith": {
    "6463a5ce-2119-4198-9f2a-628761df4a62" : true,
    "d95e6152-f683-4d78-9ff5-67ad180fea4a" : false,
  "categoryDescriptions": {
    "category1": "Indoors",
    "category3": null,

Here is an example of the response. Note: The response object shown here might be shortened for readability.

HTTP/1.1 200 OK
Content-type: application/json

  "sharedWith": {
    "aaa27244-1db4-476a-a5cb-004607466324" : true,
    "6463a5ce-2119-4198-9f2a-628761df4a62" : true
  "categoryDescriptions": {
    "category1": "Indoors",
    "category2": "Outdoors",
    "category3": null,
    "category4": null,
    "category5": "Needs materials",
    "category6": "Needs equipment",
    "category7": "Description of category 7",
    "category8": "Description of category 8",
    "category9": "Description of category 9",
    "category10": "Description of category 10",
    "category11": "Description of category 11",
    "category12": "Description of category 12",
    "category13": "Description of category 13",
    "category14": "Description of category 14",
    "category15": "Description of category 15",
    "category16": "Description of category 16",
    "category17": "Description of category 17",
    "category18": "Description of category 18",
    "category19": "Description of category 19",
    "category20": "Description of category 20",
    "category21": "Description of category 21",
    "category22": "Description of category 22",
    "category23": "Description of category 23",
    "category24": "Description of category 24",
    "category25": "Description of category 25"
  "id": "xqQg5FS2LkCp935s-FIFm2QAFkHM"