webservice.php Vtiger update Query String php curl post

Кто-нибудь знает, как правильно отформатировать запрос на обновление в vtiger, чтобы обновить запись в модуле Leads?

Я следил за этим:http://community.vtiger.com/help/vtigercrm/developers/third-party-app-integration.html

и я смог войти, запросить и выполнить ответ на запрос, но я не смог заставить работать функцию обновления, и это могло быть потому, что я не уверен, как они хотят, чтобы запрос выглядел. Это ошибка, которую я получаю при отправке запроса:

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

Текущий тестовый код:

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);

}