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

Get Tasks for User

See more Microsoft Tasks and Plans Examples

Demonstrates how to retrieve a list of plannertask objects assigned to a User.

See https://docs.microsoft.com/en-us/graph/api/planneruser-list-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');

  // Send a GET request to https://graph.microsoft.com/v1.0/me/planner/tasks
  final String strResponse;
  try {
    strResponse = http.quickGetStr('https://graph.microsoft.com/v1.0/me/planner/tasks');
  } on ChilkatException catch (e) {
    print(e.lastErrorText);
    return;
  }

  final json = CkJsonObject();
  json.load(strResponse);
  json.emitCompact = false;

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

  print(json.emit());

  // Sample output:
  // (See parsing code below..)

  // {
  //   "value": [
  //     {
  //       "createdBy": {
  //         "user": {
  //           "id": "6463a5ce-2119-4198-9f2a-628761df4a62"
  //         }
  //       },
  //       "planId": "xqQg5FS2LkCp935s-FIFm2QAFkHM",
  //       "bucketId": "gcrYAaAkgU2EQUvpkNNXLGQAGTtu",
  //       "title": "title-value",
  //       "orderHint": "9223370609546166567W",
  //       "assigneePriority": "90057581\"",
  //       "createdDateTime": "2015-03-25T18:36:49.2407981Z",
  //       "assignments": {
  //         "fbab97d0-4932-4511-b675-204639209557": {
  //           "@odata.type": "#microsoft.graph.plannerAssignment",
  //           "assignedBy": {
  //             "user": {
  //               "id": "1e9955d2-6acd-45bf-86d3-b546fdc795eb"
  //             }
  //           },
  //           "assignedDateTime": "2015-03-25T18:38:21.956Z",
  //           "orderHint": "RWk1"
  //          }
  //       },
  //       "id":"01gzSlKkIUSUl6DF_EilrmQAKDhh"
  //     }
  //   ]
  // }

  var i = 0;
  var createdByUserId = '';
  var planId = '';
  var bucketId = '';
  var title = '';
  var orderHint = '';
  var assigneePriority = '';
  var createdDateTime = '';
  var assignmentsOdataType = '';
  var assignmentsAssignedByUserId = '';
  var assignmentsAssignedDateTime = '';
  var assignmentsOrderHint = '';
  var id = '';

  final jsonA = CkJsonObject();
  final jsonUserA = CkJsonObject();

  i = 0;
  final countI = json.sizeOfArray('value');
  while (i < countI) {
    json.i = i;
    createdByUserId = json.stringOf('value[i].createdBy.user.id');
    planId = json.stringOf('value[i].planId');
    bucketId = json.stringOf('value[i].bucketId');
    title = json.stringOf('value[i].title');
    orderHint = json.stringOf('value[i].orderHint');
    assigneePriority = json.stringOf('value[i].assigneePriority');
    createdDateTime = json.stringOf('value[i].createdDateTime');

    json.objectOf2('value[i].assignments', jsonA);

    final userId = jsonA.nameAt(0);

    jsonA.objectOf2(userId, jsonUserA);

    assignmentsOdataType = jsonUserA.stringOf('"@odata.type"');
    assignmentsAssignedByUserId = jsonUserA.stringOf('assignedBy.user.id');
    assignmentsAssignedDateTime = jsonUserA.stringOf('assignedDateTime');
    assignmentsOrderHint = jsonUserA.stringOf('orderHint');

    id = json.stringOf('value[i].id');
    i++;
  }

  print('Success.');
}