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

B4X
Dim success As Boolean = False

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

Dim http As ChilkatHttp
http.Initialize("http")

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

Dim jsonToken As ChilkatJsonObject
jsonToken.Initialize
success = jsonToken.LoadFile("qa_data/tokens/msGraphGroup.json")
If success = False Then
    Log(jsonToken.LastErrorText)
    Return
End If


http.AuthToken = jsonToken.StringOf("access_token")

'  Send a GET request to https://graph.microsoft.com/v1.0/me/planner/tasks
Dim strResponse As String = http.QuickGetStr("https://graph.microsoft.com/v1.0/me/planner/tasks")
If http.LastMethodSuccess = False Then
    Log(http.LastErrorText)
    Return
End If


Dim json As ChilkatJsonObject
json.Initialize
json.Load(strResponse)
json.EmitCompact = False

If http.LastStatus <> 200 Then
    Log(json.Emit)
    Log("Failed, response status code = " & http.LastStatus)
    Return
End If


Log(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"
'      }
'    ]
'  }

Dim i As Int
Dim count_i As Int
Dim createdByUserId As String
Dim planId As String
Dim bucketId As String
Dim title As String
Dim orderHint As String
Dim assigneePriority As String
Dim createdDateTime As String
Dim assignments_odataType As String
Dim assignmentsAssignedByUserId As String
Dim assignmentsAssignedDateTime As String
Dim assignmentsOrderHint As String
Dim id As String

Dim jsonA As ChilkatJsonObject
jsonA.Initialize
Dim jsonUserA As ChilkatJsonObject
jsonUserA.Initialize

i = 0
count_i = json.SizeOfArray("value")
Do While i < count_i
    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)

    Dim userId As String = jsonA.NameAt(0)

    jsonA.ObjectOf2(userId, jsonUserA)

    assignments_odataType = jsonUserA.StringOf(Chr(34) & "@odata.type" & Chr(34))
    assignmentsAssignedByUserId = jsonUserA.StringOf("assignedBy.user.id")
    assignmentsAssignedDateTime = jsonUserA.StringOf("assignedDateTime")
    assignmentsOrderHint = jsonUserA.StringOf("orderHint")

    id = json.StringOf("value[i].id")
    i = i + 1
Loop

Log("Success.")