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
(DataFlex) Outlook List ContactsSee more Outlook Contact ExamplesList Outlook Contacts For more information, see https://docs.microsoft.com/en-us/graph/api/user-list-contacts?view=graph-rest-1.0&tabs=http
Use ChilkatAx-win32.pkg Procedure Test Handle hoHttp Handle hoJsonToken Boolean iSuccess Variant vSbJson Handle hoSbJson Integer iStatusCode Handle hoJResp String sOdata_etag String sId String sCreatedDateTime String sLastModifiedDateTime String sChangeKey String sParentFolderId String sBirthday String sFileAs String sDisplayName String sGivenName String sInitials String sMiddleName String sNickName String sSurname String sTitle String sYomiGivenName String sYomiSurname String sYomiCompanyName String sGeneration String sJobTitle String sCompanyName String sDepartment String sOfficeLocation String sProfession String sBusinessHomePage String sAssistantName String sManager String sMobilePhone String sSpouseName String sPersonalNotes Integer j Integer iCount_j String sStrVal String sName String sAddress String sOdata_context Integer i Integer iCount_i String sTemp1 // This example requires the Chilkat API to have been previously unlocked. // See Global Unlock Sample for sample code. Get Create (RefClass(cComChilkatHttp)) To hoHttp If (Not(IsComObjectCreated(hoHttp))) Begin Send CreateComObject of hoHttp End // Use your previously obtained access token here: Get Outlook Contacts OAuth2 Access Token (Azure AD v2.0 Endpoint). Get Create (RefClass(cComChilkatJsonObject)) To hoJsonToken If (Not(IsComObjectCreated(hoJsonToken))) Begin Send CreateComObject of hoJsonToken End Get ComLoadFile Of hoJsonToken "qa_data/tokens/outlookContacts.json" To iSuccess If (iSuccess = False) Begin Get ComLastErrorText Of hoJsonToken To sTemp1 Showln sTemp1 Procedure_Return End Get ComStringOf Of hoJsonToken "access_token" To sTemp1 Set ComAuthToken Of hoHttp To sTemp1 // Send the following GET: // GET https://graph.microsoft.com/v1.0/me/contacts Get Create (RefClass(cComChilkatStringBuilder)) To hoSbJson If (Not(IsComObjectCreated(hoSbJson))) Begin Send CreateComObject of hoSbJson End Get pvComObject of hoSbJson to vSbJson Get ComQuickGetSb Of hoHttp "https://graph.microsoft.com/v1.0/me/contacts" vSbJson To iSuccess If (iSuccess = False) Begin Get ComLastErrorText Of hoHttp To sTemp1 Showln sTemp1 Procedure_Return End Get ComLastStatus Of hoHttp To iStatusCode Showln "Response status code = " iStatusCode If (iStatusCode <> 200) Begin Get ComGetAsString Of hoSbJson To sTemp1 Showln sTemp1 Showln "Failed." Procedure_Return End Get Create (RefClass(cComChilkatJsonObject)) To hoJResp If (Not(IsComObjectCreated(hoJResp))) Begin Send CreateComObject of hoJResp End Get pvComObject of hoSbJson to vSbJson Get ComLoadSb Of hoJResp vSbJson To iSuccess Set ComEmitCompact Of hoJResp To False Get ComEmit Of hoJResp To sTemp1 Showln sTemp1 // Sample output: // 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#users('4ee732c3-322e-4a6b-b729-2fd1eb5c6004')/contacts", // "value": [ // { // "@odata.etag": "W/\"EQAAABYAAABUcG0qWqkmQYqWLHQataQxAAD0iYfT\"", // "id": "AAMkADYzZWE3YmZmLWU0YzgtNGNkZC04MGE1LWFiYTFlNTRlY2QwYQBGAAAAAAAu7cUXL5YOTrdsUIw7-v8FBwBUcG0qWqkmQYqWLHQataQxAAAAAAEOAABUcG0qWqkmQYqWLHQataQxAAD0sxexAAA=", // "createdDateTime": "2021-06-29T16:32:05Z", // "lastModifiedDateTime": "2021-06-29T16:32:06Z", // "changeKey": "EQAAABYAAABUcG0qWqkmQYqWLHQataQxAAD0iYfT", // "categories": [ // ], // "parentFolderId": "AAMkADYzZWE3YmZmLWU0YzgtNGNkZC04MGE1LWFiYTFlNTRlY2QwYQAuAAAAAAAu7cUXL5YOTrdsUIw7-v8FAQBUcG0qWqkmQYqWLHQataQxAAAAAAEOAAA=", // "birthday": null, // "fileAs": "", // "displayName": "Pavel Bansky", // "givenName": "Pavel", // "initials": null, // "middleName": null, // "nickName": null, // "surname": "Bansky", // "title": null, // "yomiGivenName": null, // "yomiSurname": null, // "yomiCompanyName": null, // "generation": null, // "imAddresses": [ // ], // "jobTitle": null, // "companyName": null, // "department": null, // "officeLocation": null, // "profession": null, // "businessHomePage": null, // "assistantName": null, // "manager": null, // "homePhones": [ // ], // "mobilePhone": null, // "businessPhones": [ // "+1 732 555 0102" // ], // "spouseName": null, // "personalNotes": "", // "children": [ // ], // "emailAddresses": [ // { // "name": "Pavel Bansky", // "address": "pavelb@fabrikam.onmicrosoft.com" // } // ], // "homeAddress": {}, // "businessAddress": {}, // "otherAddress": {} // }, // ... // ] // } Get ComStringOf Of hoJResp '"@odata.context"' To sOdata_context Move 0 To i Get ComSizeOfArray Of hoJResp "value" To iCount_i While (i < iCount_i) Set ComI Of hoJResp To i Get ComStringOf Of hoJResp 'value[i]."@odata.etag"' To sOdata_etag Get ComStringOf Of hoJResp "value[i].id" To sId Get ComStringOf Of hoJResp "value[i].createdDateTime" To sCreatedDateTime Get ComStringOf Of hoJResp "value[i].lastModifiedDateTime" To sLastModifiedDateTime Get ComStringOf Of hoJResp "value[i].changeKey" To sChangeKey Get ComStringOf Of hoJResp "value[i].parentFolderId" To sParentFolderId Get ComStringOf Of hoJResp "value[i].birthday" To sBirthday Get ComStringOf Of hoJResp "value[i].fileAs" To sFileAs Get ComStringOf Of hoJResp "value[i].displayName" To sDisplayName Get ComStringOf Of hoJResp "value[i].givenName" To sGivenName Get ComStringOf Of hoJResp "value[i].initials" To sInitials Get ComStringOf Of hoJResp "value[i].middleName" To sMiddleName Get ComStringOf Of hoJResp "value[i].nickName" To sNickName Get ComStringOf Of hoJResp "value[i].surname" To sSurname Get ComStringOf Of hoJResp "value[i].title" To sTitle Get ComStringOf Of hoJResp "value[i].yomiGivenName" To sYomiGivenName Get ComStringOf Of hoJResp "value[i].yomiSurname" To sYomiSurname Get ComStringOf Of hoJResp "value[i].yomiCompanyName" To sYomiCompanyName Get ComStringOf Of hoJResp "value[i].generation" To sGeneration Get ComStringOf Of hoJResp "value[i].jobTitle" To sJobTitle Get ComStringOf Of hoJResp "value[i].companyName" To sCompanyName Get ComStringOf Of hoJResp "value[i].department" To sDepartment Get ComStringOf Of hoJResp "value[i].officeLocation" To sOfficeLocation Get ComStringOf Of hoJResp "value[i].profession" To sProfession Get ComStringOf Of hoJResp "value[i].businessHomePage" To sBusinessHomePage Get ComStringOf Of hoJResp "value[i].assistantName" To sAssistantName Get ComStringOf Of hoJResp "value[i].manager" To sManager Get ComStringOf Of hoJResp "value[i].mobilePhone" To sMobilePhone Get ComStringOf Of hoJResp "value[i].spouseName" To sSpouseName Get ComStringOf Of hoJResp "value[i].personalNotes" To sPersonalNotes Move 0 To j Get ComSizeOfArray Of hoJResp "value[i].categories" To iCount_j While (j < iCount_j) Set ComJ Of hoJResp To j Move (j + 1) To j Loop Move 0 To j Get ComSizeOfArray Of hoJResp "value[i].imAddresses" To iCount_j While (j < iCount_j) Set ComJ Of hoJResp To j Move (j + 1) To j Loop Move 0 To j Get ComSizeOfArray Of hoJResp "value[i].homePhones" To iCount_j While (j < iCount_j) Set ComJ Of hoJResp To j Move (j + 1) To j Loop Move 0 To j Get ComSizeOfArray Of hoJResp "value[i].businessPhones" To iCount_j While (j < iCount_j) Set ComJ Of hoJResp To j Get ComStringOf Of hoJResp "value[i].businessPhones[j]" To sStrVal Move (j + 1) To j Loop Move 0 To j Get ComSizeOfArray Of hoJResp "value[i].children" To iCount_j While (j < iCount_j) Set ComJ Of hoJResp To j Move (j + 1) To j Loop Move 0 To j Get ComSizeOfArray Of hoJResp "value[i].emailAddresses" To iCount_j While (j < iCount_j) Set ComJ Of hoJResp To j Get ComStringOf Of hoJResp "value[i].emailAddresses[j].name" To sName Get ComStringOf Of hoJResp "value[i].emailAddresses[j].address" To sAddress Move (j + 1) To j Loop Move (i + 1) To i Loop End_Procedure |
© 2000-2024 Chilkat Software, Inc. All Rights Reserved.