Scope:
crm
Кто может выполнять метод: любой пользователь с правом «изменения» контактов
Метод crm.contact.company.items.set
устанавливает набор компаний, связанных с указанным контактом.
{% include Сноска о параметрах %}
#|
|| Название
тип
| Описание ||
|| id*
integer
| Идентификатор контакта.
Идентификатор можно получить с помощью методов crm.contact.list или crm.contact.add
||
|| items*
object[]
| Набор объектов, которые описывают привязанные компании к контакту. Структура отдельно взятого объекта привязки смотрите ниже ||
|#
{% include Сноска о параметрах %}
#|
|| Название
тип
| Описание ||
|| COMPANY_ID*
crm_entity
| Идентификатор компании, который будет привязан к контакту.
Идентификатор можно получить с помощью метода crm.item.list по entityTypeId = 4
||
|| IS_PRIMARY
boolean
| Является ли привязка первичной. Возможные значения:
Y
— даN
— нет
Если нет привязки с IS_PRIMARY = Y
, то она выставляется у первой привязки в items
.
Если передано несколько привязок с IS_PRIMARY = Y
, то первичной будет считаться первая привязка с IS_PRIMARY = Y
||
|| SORT
integer
| Индекс сортировки.
По умолчанию i + 10
, где i
— максимальный индекс сортировки у существующих и переданных привязок для текущего контакта или 0
в случае, если SORT
не передан ни у одной из привязок и если у контакта отсутствуют привязки.
Если передана уже существующая привязка без параметра SORT
, то значение по умолчанию не выставится (значение останется тем же) ||
|#
{% include Сноска о примерах %}
Установить у контакта с id = 82
следующие привязанные компании:
- компания с
id = 8
, сделать ее первичной и установитьSORT = 100
- компания с
id = 9
, установитьSORT = 200
- компания с
id = 10
, установитьSORT = 400
{% list tabs %}
-
cURL (Webhook)
curl -X POST \ -H "Content-Type: application/json" \ -H "Accept: application/json" \ -d '{"id":82,"items":[{"COMPANY_ID":8,"IS_PRIMARY":"Y","SORT":100},{"COMPANY_ID":9,"SORT":200},{"COMPANY_ID":10,"SORT":400}]}' \ https://**put_your_bitrix24_address**/rest/**put_your_user_id_here**/**put_your_webbhook_here**/crm.contact.company.items.set
-
cURL (OAuth)
curl -X POST \ -H "Content-Type: application/json" \ -H "Accept: application/json" \ -d '{"id":82,"items":[{"COMPANY_ID":8,"IS_PRIMARY":"Y","SORT":100},{"COMPANY_ID":9,"SORT":200},{"COMPANY_ID":10,"SORT":400}],"auth":"**put_access_token_here**"}' \ https://**put_your_bitrix24_address**/rest/crm.contact.company.items.set
-
JS
BX24.callMethod( 'crm.contact.company.items.set', { id: 82, items: [ { COMPANY_ID: 8, IS_PRIMARY: "Y", SORT: 100, }, { COMPANY_ID: 9, SORT: 200, }, { COMPANY_ID: 10, SORT: 400, } ], }, (result) => { result.error() ? console.error(result.error()) : console.info(result.data()) ; }, );
-
PHP
require_once('crest.php'); $result = CRest::call( 'crm.contact.company.items.set', [ 'id' => 82, 'items' => [ [ 'COMPANY_ID' => 8, 'IS_PRIMARY' => 'Y', 'SORT' => 100, ], [ 'COMPANY_ID' => 9, 'SORT' => 200, ], [ 'COMPANY_ID' => 10, 'SORT' => 400, ] ] ] ); echo '<PRE>'; print_r($result); echo '</PRE>';
{% endlist %}
HTTP-статус: 200
{
"result": true,
"time": {
"start": 1724139480.073569,
"finish": 1724139481.016709,
"duration": 0.9431400299072266,
"processing": 0.4230809211730957,
"date_start": "2024-08-20T09:38:00+02:00",
"date_finish": "2024-08-20T09:38:01+02:00",
"operating": 0
}
}
#|
|| Название
тип
| Описание ||
|| result
boolean
| Корневой элемент ответа. Содержит true
в случае успеха ||
|| time
time
| Информация о времени выполнения запроса ||
|#
HTTP-статус: 400
{
"error": "",
"error_description": "The parameter items must be array."
}
{% include notitle обработка ошибок %}
#|
|| Код | Описание | Значение ||
|| -
| The parameter ownerEntityID is invalid or not defined
| Передан id
меньше 0 или не передан вовсе ||
|| -
| The parameter items must be array
| В items
передан не массив ||
|| ACCESS_DENIED
| Access denied!
| У пользователя нет прав на изменения контактов ||
|| -
| Not found
| Контакт с переданным id
не найден ||
|#
{% include системные ошибки %}