Returns entries on the user's calendar list.
Dim rest As New ChilkatRest
Dim success As Long
' Provide a previously obtained OAuth2 access token.
Dim oauth2 As New ChilkatOAuth2
oauth2.AccessToken = "OAUTH2_ACCESS_TOKEN"
success = rest.SetAuthOAuth2(oauth2)
success = rest.Connect("www.googleapis.com",443,1,1)
If (success <> 1) Then
Debug.Print rest.LastErrorText
Exit Sub
End If
Dim sbJson As New ChilkatStringBuilder
success = rest.FullRequestNoBodySb("GET","/calendar/v3/users/me/calendarList",sbJson)
If (success <> 1) Then
Debug.Print rest.LastErrorText
Exit Sub
End If
If (rest.ResponseStatusCode <> 200) Then
Debug.Print "Received error response code: " & rest.ResponseStatusCode
Debug.Print "Response body:"
Debug.Print sbJson.GetAsString()
Exit Sub
End If
Dim json As New ChilkatJsonObject
success = json.LoadSb(sbJson)
' The following code parses the JSON response.
' A sample JSON response is shown below the sample code.
Dim kind As String
Dim etag As String
Dim nextSyncToken As String
Dim i As Long
Dim count_i As Long
Dim id As String
Dim summary As String
Dim timeZone As String
Dim colorId As String
Dim backgroundColor As String
Dim foregroundColor As String
Dim selected As Long
Dim accessRole As String
Dim primary As Long
Dim j As Long
Dim count_j As Long
Dim method As String
Dim minutes As Long
Dim type As String
kind = json.StringOf("kind")
etag = json.StringOf("etag")
nextSyncToken = json.StringOf("nextSyncToken")
i = 0
count_i = json.SizeOfArray("items")
Do While i < count_i
json.I = i
kind = json.StringOf("items[i].kind")
etag = json.StringOf("items[i].etag")
id = json.StringOf("items[i].id")
summary = json.StringOf("items[i].summary")
timeZone = json.StringOf("items[i].timeZone")
colorId = json.StringOf("items[i].colorId")
backgroundColor = json.StringOf("items[i].backgroundColor")
foregroundColor = json.StringOf("items[i].foregroundColor")
selected = json.BoolOf("items[i].selected")
accessRole = json.StringOf("items[i].accessRole")
primary = json.BoolOf("items[i].primary")
j = 0
count_j = json.SizeOfArray("items[i].defaultReminders")
Do While j < count_j
json.J = j
method = json.StringOf("items[i].defaultReminders[j].method")
minutes = json.IntOf("items[i].defaultReminders[j].minutes")
j = j + 1
Loop
j = 0
count_j = json.SizeOfArray("items[i].notificationSettings.notifications")
Do While j < count_j
json.J = j
type = json.StringOf("items[i].notificationSettings.notifications[j].type")
method = json.StringOf("items[i].notificationSettings.notifications[j].method")
j = j + 1
Loop
i = i + 1
Loop
Debug.Print "Example Completed."
{
"kind": "calendar#calendarList",
"etag": "\"p33gdfl6bualde0g\"",
"nextSyncToken": "CODX1MvyqtcCEhhzdXBwb3J0QGNoaWxrYXRjbG91ZC5jb20=",
"items": [
{
"kind": "calendar#calendarListEntry",
"etag": "\"1465249947472000\"",
"id": "support@chilkatcloud.com",
"summary": "support@chilkatcloud.com",
"timeZone": "America/Chicago",
"colorId": "14",
"backgroundColor": "#9fe1e7",
"foregroundColor": "#000000",
"selected": true,
"accessRole": "owner",
"defaultReminders": [
{
"method": "popup",
"minutes": 10
}
],
"notificationSettings": {
"notifications": [
{
"type": "eventCreation",
"method": "email"
},
{
"type": "eventChange",
"method": "email"
},
{
"type": "eventCancellation",
"method": "email"
},
{
"type": "eventResponse",
"method": "email"
}
]
},
"primary": true
},
{
"kind": "calendar#calendarListEntry",
"etag": "\"1502373382732000\"",
"id": "#contacts@group.v.calendar.google.com",
"summary": "Contacts",
"timeZone": "America/Chicago",
"colorId": "13",
"backgroundColor": "#92e1c0",
"foregroundColor": "#000000",
"selected": true,
"accessRole": "reader",
"defaultReminders": []
},
{
"kind": "calendar#calendarListEntry",
"etag": "\"1502373376447000\"",
"id": "en.usa#holiday@group.v.calendar.google.com",
"summary": "Holidays in United States",
"timeZone": "America/Chicago",
"colorId": "8",
"backgroundColor": "#16a765",
"foregroundColor": "#000000",
"selected": true,
"accessRole": "reader",
"defaultReminders": []
}
]
}