Visual FoxPro
Visual FoxPro
SugarCRM: Importing Email Addresses (New Records)
See more SugarCRM Examples
Demonstrates how to import a new contact with email addresses.Chilkat Visual FoxPro Downloads
LOCAL lnSuccess
LOCAL loHttp
LOCAL loJsonRequestBody
LOCAL lcUrl
LOCAL loResp
LOCAL loJsonResponse
lnSuccess = 0
* This example requires the Chilkat API to have been previously unlocked.
* See Global Unlock Sample for sample code.
loHttp = CreateObject('Chilkat.Http')
loHttp.Accept = "application/json"
* The following JSON is sent in the request body:
* {
* "first_name": "Rob",
* "last_name": "Robertson",
* "email": [
* {
* "email_address": "rob.robertson@sugar.crm",
* "primary_address": "1",
* "invalid_email": "0",
* "opt_out": "0"
* },
* {
* "email_address": "rob@sugar.crm",
* "primary_address": "0",
* "invalid_email": "0",
* "opt_out": "1"
* }
* ]
* }
* Use this online tool to generate the code from sample JSON:
* Generate Code to Create JSON
loJsonRequestBody = CreateObject('Chilkat.JsonObject')
loJsonRequestBody.UpdateString("first_name","Rob")
loJsonRequestBody.UpdateString("last_name","Robertson")
loJsonRequestBody.UpdateString("email[0].email_address","rob.robertson@sugar.crm")
loJsonRequestBody.UpdateString("email[0].primary_address","1")
loJsonRequestBody.UpdateString("email[0].invalid_email","0")
loJsonRequestBody.UpdateString("email[0].opt_out","0")
loJsonRequestBody.UpdateString("email[1].email_address","rob@sugar.crm")
loJsonRequestBody.UpdateString("email[1].primary_address","0")
loJsonRequestBody.UpdateString("email[1].invalid_email","0")
loJsonRequestBody.UpdateString("email[1].opt_out","1")
lcUrl = "http://<site url>/rest/v10/Contacts"
loHttp.SetRequestHeader("OAuth-Token","ACCESS_TOKEN")
loResp = CreateObject('Chilkat.HttpResponse')
lnSuccess = loHttp.HttpJson("POST",lcUrl,loJsonRequestBody,"application/json",loResp)
IF (lnSuccess = 0) THEN
? loHttp.LastErrorText
RELEASE loHttp
RELEASE loJsonRequestBody
RELEASE loResp
CANCEL
ENDIF
? "Response Status Code: " + STR(loResp.StatusCode)
loJsonResponse = CreateObject('Chilkat.JsonObject')
loJsonResponse.Load(loResp.BodyStr)
loJsonResponse.EmitCompact = 0
? loJsonResponse.Emit()
IF (loResp.StatusCode >= 300) THEN
? "Failed."
RELEASE loHttp
RELEASE loJsonRequestBody
RELEASE loResp
RELEASE loJsonResponse
CANCEL
ENDIF
RELEASE loHttp
RELEASE loJsonRequestBody
RELEASE loResp
RELEASE loJsonResponse