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
(Perl) Google People API - List the User's ContactsGets a list of people in the user's contacts. For more information, see https://developers.google.com/people/v1/contacts
use chilkat(); # This example assumes the Chilkat API to have been previously unlocked. # See Global Unlock Sample for sample code. # It is assumed we previously obtained an OAuth2 access token. # This example loads the JSON access token file # originally obtained by this example: Get Google People API OAuth2 Access Token # or refreshed by this example: Refresh Google People API OAuth2 Access Token $jsonToken = chilkat::CkJsonObject->new(); $success = $jsonToken->LoadFile("qa_data/tokens/googlePeople.json"); if ($success != 1) { print "Failed to load googleContacts.json" . "\r\n"; exit; } $http = chilkat::CkHttp->new(); $http->put_AuthToken($jsonToken->stringOf("access_token")); $sbResponseBody = chilkat::CkStringBuilder->new(); $success = $http->QuickGetSb("https://people.googleapis.com/v1/people/me/connections?personFields=names,addresses,emailAddresses",$sbResponseBody); if ($success == 0) { print $http->lastErrorText() . "\r\n"; print $sbResponseBody->getAsString() . "\r\n"; exit; } # Sample JSON Response # Use this online tool to generate parsing code from sample JSON: # Generate Parsing Code from JSON # { # "connections": [ # { # "resourceName": "people/c8871101035606120608", # "etag": "%EgkBAj0JQhBANy4aBAECBQciDERLSGdVTFNPbzNJPQ==", # "names": [ # { # "metadata": { # "primary": true, # "source": { # "type": "CONTACT", # "id": "7b1c7b6409e718a0" # } # }, # "displayName": "Chilkat Cloud", # "familyName": "Cloud", # "givenName": "Chilkat", # "displayNameLastFirst": "Cloud, Chilkat", # "unstructuredName": "Chilkat Cloud" # } # ], # "emailAddresses": [ # { # "metadata": { # "primary": true, # "source": { # "type": "CONTACT", # "id": "7b1c7b6409e718a0" # } # }, # "value": "support@***.com" # } # ] # }, # { # "resourceName": "people/c7607335470312011517", # "etag": "%EgkBAj0JQhBANy4aBAECBQciDGZETUtHVTVMazI4PQ==", # "names": [ # { # "metadata": { # "primary": true, # "source": { # "type": "CONTACT", # "id": "6992af4e0b2d36fd" # } # }, # "displayName": "Matt Smith", # "familyName": "Smith", # "givenName": "Matt", # "displayNameLastFirst": "Smith, Matt", # "unstructuredName": "Matt Smith" # } # ], # "addresses": [ # { # "metadata": { # "primary": true, # "source": { # "type": "CONTACT", # "id": "6992af4e0b2d36fd" # } # }, # "formattedValue": "2222 E Foorest Ave\nWheaton, IL 60999\nUS", # "streetAddress": "2222 E Foorest Ave", # "city": "Wheaton", # "region": "IL", # "postalCode": "60999", # "country": "US", # "countryCode": "US" # } # ], # "emailAddresses": [ # { # "metadata": { # "primary": true, # "source": { # "type": "CONTACT", # "id": "6992af4e0b2d36fd" # } # }, # "value": "matt@***.com" # }, # { # "metadata": { # "source": { # "type": "CONTACT", # "id": "6992af4e0b2d36fd" # } # }, # "value": "admin@***.com" # } # ] # } # ], # "totalPeople": 2, # "totalItems": 2 # } $json = chilkat::CkJsonObject->new(); $json->put_EmitCompact(0); $json->Load($sbResponseBody->getAsString()); print $json->emit() . "\r\n"; $totalPeople = $json->IntOf("totalPeople"); $totalItems = $json->IntOf("totalItems"); $i = 0; $count_i = $json->SizeOfArray("connections"); while ($i < $count_i) { $json->put_I($i); $resourceName = $json->stringOf("connections[i].resourceName"); $etag = $json->stringOf("connections[i].etag"); $j = 0; $count_j = $json->SizeOfArray("connections[i].names"); while ($j < $count_j) { $json->put_J($j); $metadataPrimary = $json->BoolOf("connections[i].names[j].metadata.primary"); $metadataSourceType = $json->stringOf("connections[i].names[j].metadata.source.type"); $metadataSourceId = $json->stringOf("connections[i].names[j].metadata.source.id"); $displayName = $json->stringOf("connections[i].names[j].displayName"); $familyName = $json->stringOf("connections[i].names[j].familyName"); $givenName = $json->stringOf("connections[i].names[j].givenName"); $displayNameLastFirst = $json->stringOf("connections[i].names[j].displayNameLastFirst"); $unstructuredName = $json->stringOf("connections[i].names[j].unstructuredName"); $j = $j + 1; } $j = 0; $count_j = $json->SizeOfArray("connections[i].emailAddresses"); while ($j < $count_j) { $json->put_J($j); $metadataPrimary = $json->BoolOf("connections[i].emailAddresses[j].metadata.primary"); $metadataSourceType = $json->stringOf("connections[i].emailAddresses[j].metadata.source.type"); $metadataSourceId = $json->stringOf("connections[i].emailAddresses[j].metadata.source.id"); $value = $json->stringOf("connections[i].emailAddresses[j].value"); $j = $j + 1; } $j = 0; $count_j = $json->SizeOfArray("connections[i].addresses"); while ($j < $count_j) { $json->put_J($j); $metadataPrimary = $json->BoolOf("connections[i].addresses[j].metadata.primary"); $metadataSourceType = $json->stringOf("connections[i].addresses[j].metadata.source.type"); $metadataSourceId = $json->stringOf("connections[i].addresses[j].metadata.source.id"); $formattedValue = $json->stringOf("connections[i].addresses[j].formattedValue"); $streetAddress = $json->stringOf("connections[i].addresses[j].streetAddress"); $city = $json->stringOf("connections[i].addresses[j].city"); $region = $json->stringOf("connections[i].addresses[j].region"); $postalCode = $json->stringOf("connections[i].addresses[j].postalCode"); $country = $json->stringOf("connections[i].addresses[j].country"); $countryCode = $json->stringOf("connections[i].addresses[j].countryCode"); $j = $j + 1; } $i = $i + 1; } |
© 2000-2024 Chilkat Software, Inc. All Rights Reserved.