Sample code for 30+ languages & platforms
Rust 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 Rust Downloads

Rust

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

let http = chilkat::Http::new();

// 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.

let json_token = chilkat::JsonObject::new();
if json_token.load_file("qa_data/tokens/msGraphGroup.json").is_err() {
    println!("{}", json_token.last_error_text());
    return;
}

http.set_auth_token(&json_token.string_of("access_token").unwrap_or_default());

// Send a GET request to https://graph.microsoft.com/v1.0/me/planner/tasks
let Ok(str_response) = http.quick_get_str("https://graph.microsoft.com/v1.0/me/planner/tasks") else {
    println!("{}", http.last_error_text());
    return;
};

let json = chilkat::JsonObject::new();
let _ = json.load(&str_response);
json.set_emit_compact(false);

if http.last_status() != 200 {
    println!("{}", json.emit().unwrap_or_default());
    println!("Failed, response status code = {}", http.last_status());
    return;
}

println!("{}", json.emit().unwrap_or_default());

// 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"
//     }
//   ]
// }

let mut i: i32 = 0;

let json_a = chilkat::JsonObject::new();
let json_user_a = chilkat::JsonObject::new();

i = 0;
let count_i = json.size_of_array("value");
while i < count_i {
    json.set_i(i);
    let _ = json.string_of("value[i].createdBy.user.id").unwrap_or_default();
    let _ = json.string_of("value[i].planId").unwrap_or_default();
    let _ = json.string_of("value[i].bucketId").unwrap_or_default();
    let _ = json.string_of("value[i].title").unwrap_or_default();
    let _ = json.string_of("value[i].orderHint").unwrap_or_default();
    let _ = json.string_of("value[i].assigneePriority").unwrap_or_default();
    let _ = json.string_of("value[i].createdDateTime").unwrap_or_default();

    let _ = json.object_of2("value[i].assignments", &json_a);

    let user_id = json_a.name_at(0).unwrap_or_default();

    let _ = json_a.object_of2(&user_id, &json_user_a);

    let _ = json_user_a.string_of("\"@odata.type\"").unwrap_or_default();
    let _ = json_user_a.string_of("assignedBy.user.id").unwrap_or_default();
    let _ = json_user_a.string_of("assignedDateTime").unwrap_or_default();
    let _ = json_user_a.string_of("orderHint").unwrap_or_default();

    let _ = json.string_of("value[i].id").unwrap_or_default();
    i = i + 1;
}

println!("Success.");