Ruby
Ruby
Outlook Calendar List Events
See more Outlook Calendar Examples
Retrieve a list of events in a calendar.Chilkat Ruby Downloads
require 'chilkat'
success = false
# This example requires the Chilkat API to have been previously unlocked.
# See Global Unlock Sample for sample code.
http = Chilkat::CkHttp.new()
# Use your previously obtained access token here: Get Outlook Calendar OAuth2 Access Token (Azure AD v2.0 Endpoint).
jsonToken = Chilkat::CkJsonObject.new()
success = jsonToken.LoadFile("qa_data/tokens/outlookCalendar.json")
if (success == false)
print jsonToken.lastErrorText() + "\n";
exit
end
http.put_AuthToken(jsonToken.stringOf("access_token"))
# Specify the ID of the calendar to list.
calendarId = "AQMkADAwATM0MDAAMS1iNTcwLWI2NTEtMDACLTAwCgBGAAADsVyfxjDU406Ic4X7ill8xAcA5_vF7TKKdE6bGCRqXyl2PQAAAgEGAAAA5_vF7TKKdE6bGCRqXyl2PQAAAiCsAAAA"
http.SetUrlVar("id",calendarId)
# To list the events in the default calendar, use the following URL: https://graph.microsoft.com/v1.0/me/calendars/events
resp = Chilkat::CkHttpResponse.new()
success = http.HttpNoBody("GET","https://graph.microsoft.com/v1.0/me/calendars/{$id}/events",resp)
if (success == false)
print http.lastErrorText() + "\n";
exit
end
print "Response status code = " + resp.get_StatusCode().to_s() + "\n";
# The HTTP request succeeded if the response status code = 200.
if (resp.get_StatusCode() != 200)
print resp.bodyStr() + "\n";
print "Failed" + "\n";
exit
end
json = Chilkat::CkJsonObject.new()
json.Load(resp.bodyStr())
json.put_EmitCompact(false)
print json.emit() + "\n";
# Here is a sample response:
# Use this online tool to generate parsing code from sample JSON:
# Generate Parsing Code from JSON
# {
# "value": [
# {
# "originalStartTimeZone": "originalStartTimeZone-value",
# "originalEndTimeZone": "originalEndTimeZone-value",
# "responseStatus": {
# "response": "",
# "time": "datetime-value"
# },
# "iCalUId": "iCalUId-value",
# "reminderMinutesBeforeStart": 99,
# "isReminderOn": true
# }
# ]
# }
i = 0
count_i = json.SizeOfArray("value")
while i < count_i
json.put_I(i)
originalStartTimeZone = json.stringOf("value[i].originalStartTimeZone")
originalEndTimeZone = json.stringOf("value[i].originalEndTimeZone")
responseStatusResponse = json.stringOf("value[i].responseStatus.response")
responseStatusTime = json.stringOf("value[i].responseStatus.time")
iCalUId = json.stringOf("value[i].iCalUId")
reminderMinutesBeforeStart = json.IntOf("value[i].reminderMinutesBeforeStart")
isReminderOn = json.BoolOf("value[i].isReminderOn")
i = i + 1
end