尝试更新联系人记录,但我获得执行操作的权限,但ID被拒绝

时间:2018-09-10 14:45:52

标签: php rest vtiger

我可以搜索现有的联系人,如果找不到,则可以毫无问题地创建一个新联系人。

但是,如果我确实找到联系人,我想更改“联系人类型”字段,因为他们刚刚下订单,现在应该是“客户”。

但是当我这样做时,我得到“执行操作的权限被ID拒绝”。该代码与创建和查询非常相似,我设置了session_name并引用了正确的ID,但由于某种原因无法正常工作。

$vtiger_id = $existingResult['result'][0]['id'];
// Update vTiger Contact Type
$updateData = array(
    'id' => $vtiger_id,
    'contacttype' => 'Customer',
    'assigned_user_id'  => $_SESSION['vtiger']['userId'],
);
$curl = curl_init($service_url);
$updateData = json_encode($updateData);
$curl_post_data = array(
    'operation' => 'update',
    'sessionName' => $_SESSION['vtiger']['sessionName'],
    'element' => $updateData,
);
curl_setopt($curl, CURLOPT_RETURNTRANSFER, true);
curl_setopt($curl, CURLOPT_POST, true);
curl_setopt($curl, CURLOPT_POSTFIELDS, $curl_post_data);
// Send the request & save response to $resp
$resp = curl_exec($curl);
$result = json_decode($resp, true);
// Close request to clear up some resources
curl_close($curl);

1 个答案:

答案 0 :(得分:0)

好..所以问题在于姓氏字段仍然是必需的。我觉得奇怪,因为id应该始终是更新的真正要求,因为它应该是唯一的,并且与姓氏无关(因为人们共享姓氏……),它应该可以正常工作。

因此,通过编辑我的脚本以包含姓氏,它可以正常工作。