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
(Go) Google People API - Create ContactCreate a new contact. For more information, see https://developers.google.com/people/v1/contacts#create-a-new-contact
// 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.NewJsonObject() success := jsonToken.LoadFile("qa_data/tokens/googlePeople.json") if success != true { fmt.Println("Failed to load googleContacts.json") jsonToken.DisposeJsonObject() return } http := chilkat.NewHttp() http.SetAuthToken(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.NewJsonObject() json.UpdateString("names[0].givenName","John") json.UpdateString("names[0].familyName","Doe") resp := http.PostJson3("https://people.googleapis.com/v1/people:createContact","application/json",json) if http.LastMethodSuccess() == false { fmt.Println(http.LastErrorText()) jsonToken.DisposeJsonObject() http.DisposeHttp() json.DisposeJsonObject() return } sbResponseBody := chilkat.NewStringBuilder() resp.GetBodySb(sbResponseBody) jResp := chilkat.NewJsonObject() jResp.LoadSb(sbResponseBody) jResp.SetEmitCompact(false) fmt.Println("Response Body:") fmt.Println(*jResp.Emit()) respStatusCode := resp.StatusCode() fmt.Println("Response Status Code = ", respStatusCode) if respStatusCode >= 400 { fmt.Println("Response Header:") fmt.Println(resp.Header()) fmt.Println("Failed.") resp.DisposeHttpResponse() jsonToken.DisposeJsonObject() http.DisposeHttp() json.DisposeJsonObject() sbResponseBody.DisposeStringBuilder() jResp.DisposeJsonObject() return } resp.DisposeHttpResponse() // 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 var v_type *string = new(string) var id *string = new(string) var updateTime *string = new(string) var metadataPrimary bool var metadataSourceType *string = new(string) var metadataSourceId *string = new(string) var displayName *string = new(string) var familyName *string = new(string) var givenName *string = new(string) var displayNameLastFirst *string = new(string) var unstructuredName *string = new(string) var url *string = new(string) var default bool var contactGroupMembershipContactGroupId *string = new(string) var contactGroupMembershipContactGroupResourceName *string = new(string) resourceName := jResp.StringOf("resourceName") etag := jResp.StringOf("etag") metadataObjectType := jResp.StringOf("metadata.objectType") i := 0 count_i := jResp.SizeOfArray("metadata.sources") for i < count_i { jResp.SetI(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") for i < count_i { jResp.SetI(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") for i < count_i { jResp.SetI(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") for i < count_i { jResp.SetI(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 } jsonToken.DisposeJsonObject() http.DisposeHttp() json.DisposeJsonObject() sbResponseBody.DisposeStringBuilder() jResp.DisposeJsonObject() |
© 2000-2024 Chilkat Software, Inc. All Rights Reserved.