Chilkat HOME .NET Core C# Android™ AutoIt C C# C++ Chilkat2-Python CkPython Classic ASP DataFlex Delphi ActiveX Delphi DLL Go Java Lianja Mono C# Node.js Objective-C PHP ActiveX PHP Extension Perl PowerBuilder PowerShell PureBasic Ruby SQL Server Swift 2 Swift 3,4,5... 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. For more information, see https://docs.microsoft.com/en-us/graph/api/user-list-calendars?view=graph-rest-1.0&tabs=http
LOCAL loHttp LOCAL loJsonToken LOCAL lnSuccess 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 * This example requires the Chilkat API to have been previously unlocked. * See Global Unlock Sample for sample code. * For versions of Chilkat < 10.0.0, use CreateObject('Chilkat_9_5_0.Http') loHttp = CreateObject('Chilkat.Http') * Use your previously obtained access token here: Get Outlook Calendar OAuth2 Access Token (Azure AD v2.0 Endpoint). * For versions of Chilkat < 10.0.0, use CreateObject('Chilkat_9_5_0.JsonObject') 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 = loHttp.QuickRequest("GET","https://graph.microsoft.com/v1.0/me/calendars") IF (loHttp.LastMethodSuccess <> 1) THEN ? loHttp.LastErrorText RELEASE loHttp RELEASE loJsonToken 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 loResp RELEASE loHttp RELEASE loJsonToken CANCEL ENDIF * For versions of Chilkat < 10.0.0, use CreateObject('Chilkat_9_5_0.JsonObject') 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" * } * } * ] * } RELEASE loResp 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 loJson |
© 2000-2024 Chilkat Software, Inc. All Rights Reserved.