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 - Create ContactCreate a new contact. For more information, see https://developers.google.com/people/v1/contacts#create-a-new-contact
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")); # Implements the following CURL command: # curl -H "Content-Type: application/json" -X POST # -d '{ # "names": [{ "givenName": "John", "familyName": "Doe" }] # }' # https://people.googleapis.com/v1/people:createContact # Use the following online tool to generate HTTP code from a CURL command # Convert a cURL Command to HTTP Source Code # Use this online tool to generate code from sample JSON: # Generate Code to Create JSON # The following JSON is sent in the request body. # { # "names": [ # { # "givenName": "John", # "familyName": "Doe" # } # ] # } $json = chilkat::CkJsonObject->new(); $json->UpdateString("names[0].givenName","John"); $json->UpdateString("names[0].familyName","Doe"); # resp is a HttpResponse $resp = $http->PostJson3("https://people.googleapis.com/v1/people:createContact","application/json",$json); if ($http->get_LastMethodSuccess() == 0) { print $http->lastErrorText() . "\r\n"; exit; } $sbResponseBody = chilkat::CkStringBuilder->new(); $resp->GetBodySb($sbResponseBody); $jResp = chilkat::CkJsonObject->new(); $jResp->LoadSb($sbResponseBody); $jResp->put_EmitCompact(0); print "Response Body:" . "\r\n"; print $jResp->emit() . "\r\n"; $respStatusCode = $resp->get_StatusCode(); print "Response Status Code = " . $respStatusCode . "\r\n"; if ($respStatusCode >= 400) { print "Response Header:" . "\r\n"; print $resp->header() . "\r\n"; print "Failed." . "\r\n"; exit; } # Sample JSON response: # (Sample code for parsing the JSON response is shown below) # { # "resourceName": "people/c172365763025317520", # "etag": "%EigBAj0DBAUGBwgJPgoLPwwNDg8QQBESExQVFhc1GTQ3HyEiIyQlJicuGgQBAgUHIgxleVowR3U1SFZhcz0=", # "metadata": { # "sources": [ # { # "type": "CONTACT", # "id": "2645dbf8c902e90", # "etag": "#eyZ0Gu5HVas=", # "updateTime": "2020-08-03T22:46:03.410Z" # } # ], # "objectType": "PERSON" # }, # "names": [ # { # "metadata": { # "primary": true, # "source": { # "type": "CONTACT", # "id": "2645dbf8c902e90" # } # }, # "displayName": "John Doe", # "familyName": "Doe", # "givenName": "John", # "displayNameLastFirst": "Doe, John", # "unstructuredName": "John Doe" # } # ], # "photos": [ # { # "metadata": { # "primary": true, # "source": { # "type": "CONTACT", # "id": "2645dbf8c902e90" # } # }, # "url": "https://lh3.googleusercontent.com/-XdUIqdMkCWA/AAAAAAAAAAI/AAAAAAAAAAA/V8BNOaftJmYG2hHugNzYued7G9QFdbZOACLcDEAEiGQoBShD___________8BGNuwiP7______wE/s100/photo.jpg", # "default": true # } # ], # "memberships": [ # { # "metadata": { # "source": { # "type": "CONTACT", # "id": "2645dbf8c902e90" # } # }, # "contactGroupMembership": { # "contactGroupId": "myContacts", # "contactGroupResourceName": "contactGroups/myContacts" # } # } # ] # } # Sample code for parsing the JSON response... # Use the following online tool to generate parsing code from sample JSON: # Generate Parsing Code from JSON $resourceName = $jResp->stringOf("resourceName"); $etag = $jResp->stringOf("etag"); $metadataObjectType = $jResp->stringOf("metadata.objectType"); $i = 0; $count_i = $jResp->SizeOfArray("metadata.sources"); while ($i < $count_i) { $jResp->put_I($i); $v_type = $jResp->stringOf("metadata.sources[i].type"); $id = $jResp->stringOf("metadata.sources[i].id"); $etag = $jResp->stringOf("metadata.sources[i].etag"); $updateTime = $jResp->stringOf("metadata.sources[i].updateTime"); $i = $i + 1; } $i = 0; $count_i = $jResp->SizeOfArray("names"); while ($i < $count_i) { $jResp->put_I($i); $metadataPrimary = $jResp->BoolOf("names[i].metadata.primary"); $metadataSourceType = $jResp->stringOf("names[i].metadata.source.type"); $metadataSourceId = $jResp->stringOf("names[i].metadata.source.id"); $displayName = $jResp->stringOf("names[i].displayName"); $familyName = $jResp->stringOf("names[i].familyName"); $givenName = $jResp->stringOf("names[i].givenName"); $displayNameLastFirst = $jResp->stringOf("names[i].displayNameLastFirst"); $unstructuredName = $jResp->stringOf("names[i].unstructuredName"); $i = $i + 1; } $i = 0; $count_i = $jResp->SizeOfArray("photos"); while ($i < $count_i) { $jResp->put_I($i); $metadataPrimary = $jResp->BoolOf("photos[i].metadata.primary"); $metadataSourceType = $jResp->stringOf("photos[i].metadata.source.type"); $metadataSourceId = $jResp->stringOf("photos[i].metadata.source.id"); $url = $jResp->stringOf("photos[i].url"); $default = $jResp->BoolOf("photos[i].default"); $i = $i + 1; } $i = 0; $count_i = $jResp->SizeOfArray("memberships"); while ($i < $count_i) { $jResp->put_I($i); $metadataSourceType = $jResp->stringOf("memberships[i].metadata.source.type"); $metadataSourceId = $jResp->stringOf("memberships[i].metadata.source.id"); $contactGroupMembershipContactGroupId = $jResp->stringOf("memberships[i].contactGroupMembership.contactGroupId"); $contactGroupMembershipContactGroupResourceName = $jResp->stringOf("memberships[i].contactGroupMembership.contactGroupResourceName"); $i = $i + 1; } |
© 2000-2024 Chilkat Software, Inc. All Rights Reserved.