Choose the permission or permissions marked as least privileged for this API. Use a higher privileged permission or permissions only if your app requires it. For details about delegated and application permissions, see Permission types. To learn more about these permissions, see the permissions reference.
Permission type
Least privileged permissions
Higher privileged permissions
Delegated (work or school account)
Tasks.ReadWrite
Group.ReadWrite.All
Delegated (personal Microsoft account)
Not supported.
Not supported.
Application
Tasks.ReadWrite.All
Not available.
HTTP request
POST /planner/tasks
Request headers
Name
Description
Authorization
Bearer {token}. Required.
Content-Type
application/json. Required.
Request body
In the request body, supply a JSON representation of a plannerTask object.
The plannerTask planId property must be set to an existing plannerPlan object's ID.
Response
If successful, this method returns a 201 Created response code and a plannerTask 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 and 404 responses. For more information about these errors, see Common Planner error conditions.
// Code snippets are only available for the latest version. Current version is 5.x
// Dependencies
using Microsoft.Graph.Models;
var requestBody = new PlannerTask
{
PlanId = "xqQg5FS2LkCp935s-FIFm2QAFkHM",
BucketId = "hsOf2dhOJkqyYYZEtdzDe2QAIUCR",
Title = "Update client list",
Assignments = new PlannerAssignments
{
AdditionalData = new Dictionary<string, object>
{
{
"fbab97d0-4932-4511-b675-204639209557" , new PlannerAssignment
{
OdataType = "#microsoft.graph.plannerAssignment",
OrderHint = " !",
}
},
},
},
};
// To initialize your graphClient, see https://learn.microsoft.com/en-us/graph/sdks/create-client?from=snippets&tabs=csharp
var result = await graphClient.Planner.Tasks.PostAsync(requestBody);
<?php
// THIS SNIPPET IS A PREVIEW VERSION OF THE SDK. NON-PRODUCTION USE ONLY
$graphServiceClient = new GraphServiceClient($tokenRequestContext, $scopes);
$requestBody = new PlannerTask();
$requestBody->setPlanId('xqQg5FS2LkCp935s-FIFm2QAFkHM');
$requestBody->setBucketId('hsOf2dhOJkqyYYZEtdzDe2QAIUCR');
$requestBody->setTitle('Update client list');
$assignments = new PlannerAssignments();
$additionalData = [
'fbab97d0-4932-4511-b675-204639209557' => [
'@odata.type' => '#microsoft.graph.plannerAssignment',
'orderHint' => ' !',
],
];
$assignments->setAdditionalData($additionalData);
$requestBody->setAssignments($assignments);
$result = $graphServiceClient->planner()->tasks()->post($requestBody)->wait();