Sample code for 30+ languages & platforms
PHP Extension

SugarCRM: Importing Email Addresses (New Records)

See more SugarCRM Examples

Demonstrates how to import a new contact with email addresses.

Chilkat PHP Extension Downloads

PHP Extension
<?php

include("chilkat.php");

$success = false;

// This example requires the Chilkat API to have been previously unlocked.
// See Global Unlock Sample for sample code.

$http = new CkHttp();

$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 = new CkJsonObject();
$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 = new CkHttpResponse();
$success = $http->HttpJson('POST',$url,$jsonRequestBody,'application/json',$resp);
if ($success == false) {
    print $http->lastErrorText() . "\n";
    exit;
}

print 'Response Status Code: ' . $resp->get_StatusCode() . "\n";

$jsonResponse = new CkJsonObject();
$jsonResponse->Load($resp->bodyStr());
$jsonResponse->put_EmitCompact(false);
print $jsonResponse->emit() . "\n";

if ($resp->get_StatusCode() >= 300) {
    print 'Failed.' . "\n";
    exit;
}


?>