Perl
Perl
SugarCRM: Importing Email Addresses (New Records)
See more SugarCRM Examples
Demonstrates how to import a new contact with email addresses.Chilkat Perl Downloads
use chilkat();
$success = 0;
# This example requires the Chilkat API to have been previously unlocked.
# See Global Unlock Sample for sample code.
$http = chilkat::CkHttp->new();
$http->put_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
$jsonRequestBody = chilkat::CkJsonObject->new();
$jsonRequestBody->UpdateString("first_name","Rob");
$jsonRequestBody->UpdateString("last_name","Robertson");
$jsonRequestBody->UpdateString("email[0].email_address",'rob.robertson@sugar.crm');
$jsonRequestBody->UpdateString("email[0].primary_address","1");
$jsonRequestBody->UpdateString("email[0].invalid_email","0");
$jsonRequestBody->UpdateString("email[0].opt_out","0");
$jsonRequestBody->UpdateString("email[1].email_address",'rob@sugar.crm');
$jsonRequestBody->UpdateString("email[1].primary_address","0");
$jsonRequestBody->UpdateString("email[1].invalid_email","0");
$jsonRequestBody->UpdateString("email[1].opt_out","1");
$url = "http://<site url>/rest/v10/Contacts";
$http->SetRequestHeader("OAuth-Token","ACCESS_TOKEN");
$resp = chilkat::CkHttpResponse->new();
$success = $http->HttpJson("POST",$url,$jsonRequestBody,"application/json",$resp);
if ($success == 0) {
print $http->lastErrorText() . "\r\n";
exit;
}
print "Response Status Code: " . $resp->get_StatusCode() . "\r\n";
$jsonResponse = chilkat::CkJsonObject->new();
$jsonResponse->Load($resp->bodyStr());
$jsonResponse->put_EmitCompact(0);
print $jsonResponse->emit() . "\r\n";
if ($resp->get_StatusCode() >= 300) {
print "Failed." . "\r\n";
exit;
}