Sample code for 30+ languages & platforms
Dart Requires Chilkat v11.0.0+

Create Task

See more Microsoft Tasks and Plans Examples

Demonstrates how to create a new plannerTask.

See https://docs.microsoft.com/en-us/graph/api/planner-post-tasks?view=graph-rest-1.0 for more information.

Chilkat Dart Downloads

Dart
import 'package:chilkat/chilkat.dart';

void main() {
  // This example requires the Chilkat API to have been previously unlocked.
  // See Global Unlock Sample for sample code.

  final http = CkHttp();

  // The Microsoft Planner REST API requires an OAuth2 token with the Group.ReadWrite.All scope.
  // Use your previously obtained access token as shown here:
  //    Get Microsoft Graph OAuth2 Access Token with Group.ReadWrite.All scope.

  final jsonToken = CkJsonObject();
  try {
    jsonToken.loadFile('qa_data/tokens/msGraphGroup.json');
  } on ChilkatException catch (e) {
    print(e.lastErrorText);
    return;
  }

  http.authToken = jsonToken.stringOf('access_token');

  // Create a JSON body for the HTTP POST
  // Use this online tool to generate the code from sample JSON: 
  // Generate Code to Create JSON

  // {
  //   "planId": "xqQg5FS2LkCp935s-FIFm2QAFkHM",
  //   "bucketId": "hsOf2dhOJkqyYYZEtdzDe2QAIUCR",
  //   "title": "Update client list",
  //   "assignments": {
  //     "fbab97d0-4932-4511-b675-204639209557": {
  //       "@odata.type": "#microsoft.graph.plannerAssignment",
  //       "orderHint": " !"
  //     }
  //   },
  // }

  final json = CkJsonObject();
  json.updateString('planId', 'xqQg5FS2LkCp935s-FIFm2QAFkHM');
  json.updateString('bucketId', 'hsOf2dhOJkqyYYZEtdzDe2QAIUCR');
  json.updateString('title', 'Update client list');
  json.updateString('assignments.fbab97d0-4932-4511-b675-204639209557."@odata.type"', '#microsoft.graph.plannerAssignment');
  json.updateString('assignments.fbab97d0-4932-4511-b675-204639209557.orderHint', ' !');

  // POST the JSON to https://graph.microsoft.com/v1.0/planner/tasks

  final resp = CkHttpResponse();
  try {
    http.httpJson('POST', 'https://graph.microsoft.com/v1.0/planner/tasks', json, 'application/json', resp);
  } on ChilkatException catch (e) {
    print(e.lastErrorText);
    return;
  }

  json.load(resp.bodyStr);
  json.emitCompact = false;

  if (resp.statusCode != 200) {
    print(json.emit());
    print('Failed, response status code = ${resp.statusCode}');
    return;
  }

  print(json.emit());

  // A sample response:
  // (See code for parsing this response below..)

  // {
  //   "createdBy": {
  //     "user": {
  //       "id": "6463a5ce-2119-4198-9f2a-628761df4a62"
  //     }
  //   },
  //   "planId": "xqQg5FS2LkCp935s-FIFm2QAFkHM",
  //   "bucketId": "hsOf2dhOJkqyYYZEtdzDe2QAIUCR",
  //   "title": "Update client list",
  //   "orderHint": "85752723360752+",
  //   "createdDateTime": "2015-03-25T18:36:49.2407981Z",
  //   "assignments": {
  //     "fbab97d0-4932-4511-b675-204639209557": {
  //       "@odata.type": "#microsoft.graph.plannerAssignment",
  //       "assignedBy": {
  //         "user": {
  //           "id": "6463a5ce-2119-4198-9f2a-628761df4a62"
  //         }
  //       },
  //       "assignedDateTime": "2015-03-25T18:36:49.2407981Z",
  //       "orderHint": "RWk1"
  //     }
  //   },
  //   "id":"01gzSlKkIUSUl6DF_EilrmQAKDhh"
  // }

  // Use this online tool to generate parsing code from sample JSON: 
  // Generate Parsing Code from JSON

  final createdByUserId = json.stringOf('createdBy.user.id');
  final planId = json.stringOf('planId');
  final bucketId = json.stringOf('bucketId');
  final title = json.stringOf('title');
  final orderHint = json.stringOf('orderHint');
  final createdDateTime = json.stringOf('createdDateTime');
  final assignmentsOdataType = json.stringOf('assignments.fbab97d0-4932-4511-b675-204639209557."@odata.type"');
  final assignmentsAssignedByUserId = json.stringOf('assignments.fbab97d0-4932-4511-b675-204639209557.assignedBy.user.id');
  final assignmentsAssignedDateTime = json.stringOf('assignments.fbab97d0-4932-4511-b675-204639209557.assignedDateTime');
  final assignmentsOrderHint = json.stringOf('assignments.fbab97d0-4932-4511-b675-204639209557.orderHint');
  final id = json.stringOf('id');

  print('Success.');
}