Chilkat HOME Android™ Classic ASP C C++ C# Mono C# .NET Core C# C# UWP/WinRT DataFlex Delphi ActiveX Delphi DLL Visual FoxPro Java Lianja MFC Objective-C Perl PHP ActiveX PHP Extension PowerBuilder PowerShell PureBasic CkPython Chilkat2-Python Ruby SQL Server Swift 2 Swift 3,4,5... Tcl Unicode C Unicode C++ Visual Basic 6.0 VB.NET VB.NET UWP/WinRT VBScript Xojo Plugin Node.js Excel Go
(VB.NET UWP/WinRT) 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
' This example requires the Chilkat API to have been previously unlocked. ' See Global Unlock Sample for sample code. Dim http As New Chilkat.Http ' Use your previously obtained access token here: Get Outlook Contacts OAuth2 Access Token (Azure AD v2.0 Endpoint). Dim jsonToken As New Chilkat.JsonObject Dim success As Boolean = jsonToken.LoadFile("qa_data/tokens/outlookContacts.json") If (success = False) Then Debug.WriteLine(jsonToken.LastErrorText) Exit Sub End If http.AuthToken = jsonToken.StringOf("access_token") ' Send the following GET: ' GET https://graph.microsoft.com/v1.0/me/contacts Dim sbJson As New Chilkat.StringBuilder success = Await http.QuickGetSbAsync("https://graph.microsoft.com/v1.0/me/contacts",sbJson) If (success = False) Then Debug.WriteLine(http.LastErrorText) Exit Sub End If Dim statusCode As Integer = http.LastStatus Debug.WriteLine("Response status code = " & statusCode) If (statusCode <> 200) Then Debug.WriteLine(sbJson.GetAsString()) Debug.WriteLine("Failed.") Exit Sub End If Dim jResp As New Chilkat.JsonObject jResp.LoadSb(sbJson) jResp.EmitCompact = False Debug.WriteLine(jResp.Emit()) ' 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": {} ' }, ' ... ' ] ' } Dim odata_etag As String Dim id As String Dim createdDateTime As String Dim lastModifiedDateTime As String Dim changeKey As String Dim parentFolderId As String Dim birthday As String Dim fileAs As String Dim displayName As String Dim givenName As String Dim initials As String Dim middleName As String Dim nickName As String Dim surname As String Dim title As String Dim yomiGivenName As String Dim yomiSurname As String Dim yomiCompanyName As String Dim generation As String Dim jobTitle As String Dim companyName As String Dim department As String Dim officeLocation As String Dim profession As String Dim businessHomePage As String Dim assistantName As String Dim manager As String Dim mobilePhone As String Dim spouseName As String Dim personalNotes As String Dim j As Integer Dim count_j As Integer Dim strVal As String Dim name As String Dim address As String Dim odata_context As String = jResp.StringOf("""@odata.context""") Dim i As Integer = 0 Dim count_i As Integer = jResp.SizeOfArray("value") While i < count_i jResp.I = i odata_etag = jResp.StringOf("value[i].""@odata.etag""") id = jResp.StringOf("value[i].id") createdDateTime = jResp.StringOf("value[i].createdDateTime") lastModifiedDateTime = jResp.StringOf("value[i].lastModifiedDateTime") changeKey = jResp.StringOf("value[i].changeKey") parentFolderId = jResp.StringOf("value[i].parentFolderId") birthday = jResp.StringOf("value[i].birthday") fileAs = jResp.StringOf("value[i].fileAs") displayName = jResp.StringOf("value[i].displayName") givenName = jResp.StringOf("value[i].givenName") initials = jResp.StringOf("value[i].initials") middleName = jResp.StringOf("value[i].middleName") nickName = jResp.StringOf("value[i].nickName") surname = jResp.StringOf("value[i].surname") title = jResp.StringOf("value[i].title") yomiGivenName = jResp.StringOf("value[i].yomiGivenName") yomiSurname = jResp.StringOf("value[i].yomiSurname") yomiCompanyName = jResp.StringOf("value[i].yomiCompanyName") generation = jResp.StringOf("value[i].generation") jobTitle = jResp.StringOf("value[i].jobTitle") companyName = jResp.StringOf("value[i].companyName") department = jResp.StringOf("value[i].department") officeLocation = jResp.StringOf("value[i].officeLocation") profession = jResp.StringOf("value[i].profession") businessHomePage = jResp.StringOf("value[i].businessHomePage") assistantName = jResp.StringOf("value[i].assistantName") manager = jResp.StringOf("value[i].manager") mobilePhone = jResp.StringOf("value[i].mobilePhone") spouseName = jResp.StringOf("value[i].spouseName") personalNotes = jResp.StringOf("value[i].personalNotes") j = 0 count_j = jResp.SizeOfArray("value[i].categories") While j < count_j jResp.J = j j = j + 1 End While j = 0 count_j = jResp.SizeOfArray("value[i].imAddresses") While j < count_j jResp.J = j j = j + 1 End While j = 0 count_j = jResp.SizeOfArray("value[i].homePhones") While j < count_j jResp.J = j j = j + 1 End While j = 0 count_j = jResp.SizeOfArray("value[i].businessPhones") While j < count_j jResp.J = j strVal = jResp.StringOf("value[i].businessPhones[j]") j = j + 1 End While j = 0 count_j = jResp.SizeOfArray("value[i].children") While j < count_j jResp.J = j j = j + 1 End While j = 0 count_j = jResp.SizeOfArray("value[i].emailAddresses") While j < count_j jResp.J = j name = jResp.StringOf("value[i].emailAddresses[j].name") address = jResp.StringOf("value[i].emailAddresses[j].address") j = j + 1 End While i = i + 1 End While |
© 2000-2022 Chilkat Software, Inc. All Rights Reserved.