webservice.php Vtiger update Query String php curl post

¿Alguien sabe cómo formatear correctamente la consulta de actualización en vtiger para actualizar un registro en el módulo Leads?

He estado siguiendo esto:http://community.vtiger.com/help/vtigercrm/developers/third-party-app-integration.html

y he podido iniciar sesión, consultar y hacer la respuesta al desafío, pero no he podido hacer que la función de actualización funcione y podría ser porque no estoy seguro de cómo quieren que se vea la consulta. Este es el error que obtengo cuando envío la consulta:

stdClass Object ( [success] => [error] => stdClass Object ( [code] => ACCESS_DENIED [message] => Permission to perform the operation is denied for id ) )   

Código de prueba actual:

function updatesomeone(){
global $createduserleadnum;
global $url;
global $sessionID;
global $createduserid;


$customdata = array(
'firstname'=> 'TestAPILead2',//Update First name
'lastname'=> 'TestAPILeadLast2', //Updated Last name
'leadstatus'=> 'New',
'leadsource'=> 'Some Lead Source', //Not Real Lead source
'assigned_user_id'=> 'User-Assigned', //not real user
'cf_755'=> 'A Custom Field', // A Custom Field
'lead_no' => $createduserleadnum, Acquired from other function/stored value
);

$customdata = json_encode($customdata);
$field = array(
'operation' => 'update',
'sessionName'=> $sessionID,
'element' => $customdata
);


$fields_string;
foreach($field as $key=>$value) { global $fields_string;
$fields_string .= $key.'='.$value.'&'; }
$ch = curl_init();


curl_setopt($ch,CURLOPT_URL, $url);
curl_setopt($ch,CURLOPT_POST, count($field));
curl_setopt($ch,CURLOPT_POSTFIELDS, $fields_string);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, TRUE);

$result = curl_exec($ch);
$pringjson = json_decode($result);

print_r($pringjson);

}

Respuestas a la pregunta(3)

Su respuesta a la pregunta