![]() |
Chilkat HOME Android™ AutoIt C C# C++ Chilkat2-Python CkPython Classic ASP DataFlex Delphi DLL Go Java Node.js Objective-C PHP Extension Perl PowerBuilder PowerShell PureBasic Ruby SQL Server Swift Tcl Unicode C Unicode C++ VB.NET VBScript Visual Basic 6.0 Visual FoxPro Xojo Plugin
(Visual FoxPro) Outlook Calendar List CalendarsSee more Outlook Calendar ExamplesGet all the user's calendars.Note: This example requires Chilkat v11.0.0 or greater. For more information, see https://docs.microsoft.com/en-us/graph/api/user-list-calendars?view=graph-rest-1.0&tabs=http
LOCAL lnSuccess LOCAL loHttp LOCAL loJsonToken LOCAL loResp LOCAL loJson LOCAL lcId LOCAL lcName LOCAL lcColor LOCAL lcHexColor LOCAL lnIsDefaultCalendar LOCAL lcChangeKey LOCAL lnCanShare LOCAL lnCanViewPrivateItems LOCAL lnCanEdit LOCAL lcDefaultOnlineMeetingProvider LOCAL lnIsTallyingResponses LOCAL lnIsRemovable LOCAL lcOwnerName LOCAL lcOwnerAddress LOCAL j LOCAL lnCount_j LOCAL lcStrVal LOCAL lcOdata_context LOCAL i LOCAL lnCount_i lnSuccess = 0 * This example requires the Chilkat API to have been previously unlocked. * See Global Unlock Sample for sample code. loHttp = CreateObject('Chilkat.Http') * Use your previously obtained access token here: Get Outlook Calendar OAuth2 Access Token (Azure AD v2.0 Endpoint). loJsonToken = CreateObject('Chilkat.JsonObject') lnSuccess = loJsonToken.LoadFile("qa_data/tokens/outlookCalendar.json") IF (lnSuccess = 0) THEN ? loJsonToken.LastErrorText RELEASE loHttp RELEASE loJsonToken CANCEL ENDIF loHttp.AuthToken = loJsonToken.StringOf("access_token") loResp = CreateObject('Chilkat.HttpResponse') lnSuccess = loHttp.HttpNoBody("GET","https://graph.microsoft.com/v1.0/me/calendars",loResp) IF (lnSuccess = 0) THEN ? loHttp.LastErrorText RELEASE loHttp RELEASE loJsonToken RELEASE loResp CANCEL ENDIF ? "Response status code = " + STR(loResp.StatusCode) * The HTTP request succeeded if the response status code = 200. IF (loResp.StatusCode <> 200) THEN ? loResp.BodyStr ? "Failed" RELEASE loHttp RELEASE loJsonToken RELEASE loResp CANCEL ENDIF loJson = CreateObject('Chilkat.JsonObject') loJson.Load(loResp.BodyStr) loJson.EmitCompact = 0 ? loJson.Emit() * Here is a sample response: * Use this online tool to generate parsing code from sample JSON: * Generate Parsing Code from JSON * { * "@odata.context": "https://graph.microsoft.com/v1.0/$metadata#me/calendars", * "value": [ * { * "@odata.id": "https://graph.microsoft.com/v1.0/users('ddfcd489-628b-40d7-b48b-57002df800e5@1717622f-1d94-4d0c-9d74-709fad664b77')/calendars('AAMkAGI2TGuLAAA=')", * "id": "AAMkAGI2TGuLAAA=", * "name": "Calendar", * "color": "auto", * "changeKey": "nfZyf7VcrEKLNoU37KWlkQAAA0x0+w==", * "canShare":true, * "canViewPrivateItems":true, * "hexColor": "", * "canEdit":true, * "allowedOnlineMeetingProviders": [ * "teamsForBusiness" * ], * "defaultOnlineMeetingProvider": "teamsForBusiness", * "isTallyingResponses": true, * "isRemovable": false, * "owner":{ * "name":"Samantha Booth", * "address":"samanthab@adatum.onmicrosoft.com" * } * } * ] * } lcOdata_context = loJson.StringOf('"@odata.context"') i = 0 lnCount_i = loJson.SizeOfArray("value") DO WHILE i < lnCount_i loJson.I = i lcId = loJson.StringOf("value[i].id") lcName = loJson.StringOf("value[i].name") lcColor = loJson.StringOf("value[i].color") lcHexColor = loJson.StringOf("value[i].hexColor") lnIsDefaultCalendar = loJson.BoolOf("value[i].isDefaultCalendar") lcChangeKey = loJson.StringOf("value[i].changeKey") lnCanShare = loJson.BoolOf("value[i].canShare") lnCanViewPrivateItems = loJson.BoolOf("value[i].canViewPrivateItems") lnCanEdit = loJson.BoolOf("value[i].canEdit") lcDefaultOnlineMeetingProvider = loJson.StringOf("value[i].defaultOnlineMeetingProvider") lnIsTallyingResponses = loJson.BoolOf("value[i].isTallyingResponses") lnIsRemovable = loJson.BoolOf("value[i].isRemovable") lcOwnerName = loJson.StringOf("value[i].owner.name") lcOwnerAddress = loJson.StringOf("value[i].owner.address") j = 0 lnCount_j = loJson.SizeOfArray("value[i].allowedOnlineMeetingProviders") DO WHILE j < lnCount_j loJson.J = j lcStrVal = loJson.StringOf("value[i].allowedOnlineMeetingProviders[j]") j = j + 1 ENDDO i = i + 1 ENDDO RELEASE loHttp RELEASE loJsonToken RELEASE loResp RELEASE loJson |
© 2000-2025 Chilkat Software, Inc. All Rights Reserved.