Xojo Plugin Google Calendar: Change the Color of an Event

Back to Index

Changes the color of a particular event. The calendar and event are specified by ID. This example changes the color for an event (id = 52e7uk7j7vl5dosj7b25memov0) on the calendar (id = support@chilkatcloud.com).
This changes the event to colorId = "6" which seems to be an orange-ish color..

Documentation: https://developers.google.com/google-apps/calendar/v3/reference/events/patch

Dim rest As New Chilkat.Rest
Dim success As Boolean

//   Provide a previously obtained OAuth2 access token.
Dim oauth2 As New Chilkat.OAuth2
oauth2.AccessToken = "OAUTH2_ACCESS_TOKEN"

success = rest.Connect("www.googleapis.com",443,True,True)
If (success <> True) Then
End If

//  The following code creates the JSON request body.
//  The JSON created by this code is shown below.
Dim jsonReq As New Chilkat.JsonObject

Dim sbReq As New Chilkat.StringBuilder


Dim sbJson As New Chilkat.StringBuilder
success = rest.FullRequestSb("PATCH","/calendar/v3/calendars/support@chilkatcloud.com/events/52e7uk7j7vl5dosj7b25memov0",sbReq,sbJson)
If (success <> True) Then
End If

If (rest.ResponseStatusCode <> 200) Then
    System.DebugLog("Received error response code: " + Str(rest.ResponseStatusCode))
    System.DebugLog("Response body:")
End If

Dim json As New Chilkat.JsonObject

//  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 id As String
Dim status As String
Dim htmlLink As String
Dim created As String
Dim updated As String
Dim summary As String
Dim colorId As String
Dim creatorEmail As String
Dim creatorSelf As Boolean
Dim organizerEmail As String
Dim organizerSelf As Boolean
Dim startDateTime As String
Dim endDateTime As String
Dim iCalUID As String
Dim sequence As Int32
Dim hangoutLink As String
Dim remindersUseDefault As Boolean

kind = json.StringOf("kind")
etag = json.StringOf("etag")
id = json.StringOf("id")
status = json.StringOf("status")
htmlLink = json.StringOf("htmlLink")
created = json.StringOf("created")
updated = json.StringOf("updated")
summary = json.StringOf("summary")
colorId = json.StringOf("colorId")
creatorEmail = json.StringOf("creator.email")
creatorSelf = json.BoolOf("creator.self")
organizerEmail = json.StringOf("organizer.email")
organizerSelf = json.BoolOf("organizer.self")
startDateTime = json.StringOf("start.dateTime")
endDateTime = json.StringOf("end.dateTime")
iCalUID = json.StringOf("iCalUID")
sequence = json.IntOf("sequence")
hangoutLink = json.StringOf("hangoutLink")
remindersUseDefault = json.BoolOf("reminders.useDefault")

System.DebugLog("Example Completed.")

Sample JSON Request Body

    "colorId": "6"

Sample JSON Response Body

  "kind": "calendar#event",
  "etag": "\"3021538600038000\"",
  "id": "52e7uk7j7vl5dosj7b25memov0",
  "status": "confirmed",
  "htmlLink": "https://www.google.com/calendar/event?eid=NTJlN3VrN2o3dmw1ZG9zajdiMjVtZW1vdjAgc3VwcG9ydEBjaGlsa2F0Y2xvdWQuY29t",
  "created": "2017-11-08T21:27:50.000Z",
  "updated": "2017-11-15T18:08:20.019Z",
  "summary": "Dentist Appointment",
  "colorId": "6",
  "creator": {
    "email": "support@chilkatcloud.com",
    "self": true
  "organizer": {
    "email": "support@chilkatcloud.com",
    "self": true
  "start": {
    "dateTime": "2017-11-27T10:30:00-06:00"
  "end": {
    "dateTime": "2017-11-27T11:30:00-06:00"
  "iCalUID": "52e7uk7j7vl5dosj7b25memov0@google.com",
  "sequence": 1,
  "hangoutLink": "https://plus.google.com/hangouts/_/chilkatcloud.com/support?hceid=c3VwcG9ydEBjaGlsa2F0Y2xvdWQuY29t.52e7uk7j7vl5dosj7b25memov0",
  "reminders": {
    "useDefault": true