Установить параметры карточки сделки crm.deal.details.configuration.set
Scope:
crmКто может выполнять метод:
- пользователь может устанавливать свои личные настройки
- установить личные настройки другого пользователя можно при наличии прав на редактирование персонального вида для пользователя
- установить общие настройки можно при наличии прав на редактирование общего вида
DEPRECATED
Развитие метода остановлено. Используйте crm.item.details.configuration.set.
Метод crm.deal.details.configuration.set устанавливает настройки карточки сделки. Метод записывает личные настройки карточки указанного пользователя или общие настройки для всех пользователей.
Примечание
Настройки карточки сделок в разных воронках могут отличаться. Для выбора воронки используйте параметр extras.dealCategoryId.
Параметры метода
Обязательные параметры отмечены *
|
Название |
Описание |
|
scope |
Область применения настроек. Возможные значения:
По умолчанию — |
|
userId |
Идентификатор пользователя. Нужен только при установке личных настроек другого пользователя. Если не задан, берется текущий |
|
data* |
Список |
|
extras |
Дополнительные параметры (подробное описание) |
Параметр extras
Обязательные параметры отмечены *
|
Название |
Описание |
|
dealCategoryId |
Идентификатор воронки сделок. Можно получить с помощью crm.category.list Если не указан, используется воронка по умолчанию для сделок |
Параметр section
Описывает отдельный раздел с полями внутри карточки сделки
Обязательные параметры отмечены *
|
Название |
Описание |
|
name* |
Уникальное название раздела |
|
title* |
Название раздела |
|
type* |
Тип раздела На данный момент доступно только значение |
|
elements |
Список выводимых в карточке полей с дополнительными настройками |
Параметр section_element
Конфигурация отдельного поля внутри раздела
Обязательные параметры отмечены *
|
Название |
Описание |
|
name* |
Идентификатор поля. Список доступных полей можно узнать с помощью |
|
optionFlags |
Нужно ли показывать поле всегда:
По умолчанию — |
|
options |
Дополнительные опции поля. Состав зависит от поля |
Примеры кода
Как использовать примеры в документации
Установить личную конфигурацию карточки сделки для пользователя с id = 1 в воронке с id = 32
curl -X POST \
-H "Content-Type: application/json" \
-H "Accept: application/json" \
-d '{"scope":"P","userId":1,"extras":{"dealCategoryId":32},"data":[{"name":"main","title":"О сделке","type":"section","elements":[{"name":"TITLE"},{"name":"OPPORTUNITY_WITH_CURRENCY"},{"name":"STAGE_ID"},{"name":"CLOSEDATE"},{"name":"CLIENT"}]},{"name":"additional","title":"Дополнительно","type":"section","elements":[{"name":"TYPE_ID"},{"name":"SOURCE_ID"},{"name":"SOURCE_DESCRIPTION"},{"name":"OPENED"},{"name":"ASSIGNED_BY_ID"},{"name":"COMMENTS"}]},{"name":"products","title":"Товары","type":"section","elements":[{"name":"PRODUCT_ROW_SUMMARY"}]}]}' \
https://**put_your_bitrix24_address**/rest/**put_your_user_id_here**/**put_your_webhook_here**/crm.deal.details.configuration.set
curl -X POST \
-H "Content-Type: application/json" \
-H "Accept: application/json" \
-d '{"scope":"P","userId":1,"extras":{"dealCategoryId":32},"data":[{"name":"main","title":"О сделке","type":"section","elements":[{"name":"TITLE"},{"name":"OPPORTUNITY_WITH_CURRENCY"},{"name":"STAGE_ID"},{"name":"CLOSEDATE"},{"name":"CLIENT"}]},{"name":"additional","title":"Дополнительно","type":"section","elements":[{"name":"TYPE_ID"},{"name":"SOURCE_ID"},{"name":"SOURCE_DESCRIPTION"},{"name":"OPENED"},{"name":"ASSIGNED_BY_ID"},{"name":"COMMENTS"}]},{"name":"products","title":"Товары","type":"section","elements":[{"name":"PRODUCT_ROW_SUMMARY"}]}],"auth":"**put_access_token_here**"}' \
https://**put_your_bitrix24_address**/rest/crm.deal.details.configuration.set
try
{
const response = await $b24.callMethod(
'crm.deal.details.configuration.set',
{
scope: "P",
userId: 1,
extras: {
dealCategoryId: 32,
},
data: [
{
name: "main",
title: "О сделке",
type: "section",
elements: [
{ name: "TITLE" },
{ name: "OPPORTUNITY_WITH_CURRENCY" },
{ name: "STAGE_ID" },
{ name: "CLOSEDATE" },
{ name: "CLIENT" },
],
},
{
name: "additional",
title: "Дополнительно",
type: "section",
elements: [
{ name: "TYPE_ID" },
{ name: "SOURCE_ID" },
{ name: "SOURCE_DESCRIPTION" },
{ name: "OPENED" },
{ name: "ASSIGNED_BY_ID" },
{ name: "COMMENTS" },
],
},
{
name: "products",
title: "Товары",
type: "section",
elements: [
{ name: "PRODUCT_ROW_SUMMARY" },
],
},
],
}
);
const result = response.getData().result;
console.info(result);
}
catch( error )
{
console.error(error);
}
try {
$response = $b24Service
->core
->call(
'crm.deal.details.configuration.set',
[
'scope' => 'P',
'userId' => 1,
'extras' => [
'dealCategoryId' => 32,
],
'data' => [
[
'name' => 'main',
'title' => 'О сделке',
'type' => 'section',
'elements' => [
['name' => 'TITLE'],
['name' => 'OPPORTUNITY_WITH_CURRENCY'],
['name' => 'STAGE_ID'],
['name' => 'CLOSEDATE'],
['name' => 'CLIENT'],
],
],
[
'name' => 'additional',
'title' => 'Дополнительно',
'type' => 'section',
'elements' => [
['name' => 'TYPE_ID'],
['name' => 'SOURCE_ID'],
['name' => 'SOURCE_DESCRIPTION'],
['name' => 'OPENED'],
['name' => 'ASSIGNED_BY_ID'],
['name' => 'COMMENTS'],
],
],
[
'name' => 'products',
'title' => 'Товары',
'type' => 'section',
'elements' => [
['name' => 'PRODUCT_ROW_SUMMARY'],
],
],
],
]
);
$result = $response
->getResponseData()
->getResult();
if ($result->error()) {
echo 'Error: ' . $result->error();
} else {
echo 'Data: ' . print_r($result->data(), true);
}
} catch (Throwable $e) {
error_log($e->getMessage());
echo 'Error setting deal details configuration: ' . $e->getMessage();
}
BX24.callMethod(
'crm.deal.details.configuration.set',
{
scope: "P",
userId: 1,
extras: {
dealCategoryId: 32,
},
data: [
{
name: "main",
title: "О сделке",
type: "section",
elements: [
{ name: "TITLE" },
{ name: "OPPORTUNITY_WITH_CURRENCY" },
{ name: "STAGE_ID" },
{ name: "CLOSEDATE" },
{ name: "CLIENT" },
],
},
{
name: "additional",
title: "Дополнительно",
type: "section",
elements: [
{ name: "TYPE_ID" },
{ name: "SOURCE_ID" },
{ name: "SOURCE_DESCRIPTION" },
{ name: "OPENED" },
{ name: "ASSIGNED_BY_ID" },
{ name: "COMMENTS" },
],
},
{
name: "products",
title: "Товары",
type: "section",
elements: [
{ name: "PRODUCT_ROW_SUMMARY" },
],
},
],
},
(result) => {
result.error()
? console.error(result.error())
: console.info(result.data())
;
},
);
require_once('crest.php');
$result = CRest::call(
'crm.deal.details.configuration.set',
[
'scope' => 'P',
'userId' => 1,
'extras' => [
'dealCategoryId' => 32,
],
'data' => [
[
'name' => 'main',
'title' => 'О сделке',
'type' => 'section',
'elements' => [
['name' => 'TITLE'],
['name' => 'OPPORTUNITY_WITH_CURRENCY'],
['name' => 'STAGE_ID'],
['name' => 'CLOSEDATE'],
['name' => 'CLIENT'],
],
],
[
'name' => 'additional',
'title' => 'Дополнительно',
'type' => 'section',
'elements' => [
['name' => 'TYPE_ID'],
['name' => 'SOURCE_ID'],
['name' => 'SOURCE_DESCRIPTION'],
['name' => 'OPENED'],
['name' => 'ASSIGNED_BY_ID'],
['name' => 'COMMENTS'],
],
],
[
'name' => 'products',
'title' => 'Товары',
'type' => 'section',
'elements' => [
['name' => 'PRODUCT_ROW_SUMMARY'],
],
],
],
]
);
echo '<PRE>';
print_r($result);
echo '</PRE>';
Обработка ответа
HTTP-статус: 200
{
"result": true,
"time": {
"start": 1773311825,
"finish": 1773311825.969825,
"duration": 0.969825029373169,
"processing": 0,
"date_start": "2026-03-12T13:37:05+03:00",
"date_finish": "2026-03-12T13:37:05+03:00",
"operating_reset_at": 1773312425,
"operating": 0
}
}
Возвращаемые данные
|
Название |
Описание |
|
result |
Корневой элемент ответа. Возвращает |
|
time |
Информация о времени выполнения запроса |
Обработка ошибок
HTTP-статус: 400
{
"error": "",
"error_description": "Access denied."
}
|
Название |
Описание |
|
error |
Строковый код ошибки. Может состоять из цифр, латинских букв и знака подчеркивания |
|
error_description |
Текстовое описание ошибки. Описание не предназначено для показа конечному пользователю в необработанном виде |
Возможные коды ошибок
|
Статус |
Код |
Описание |
Значение |
|
|
Пустое значение |
Access denied |
Нет прав на установку настроек карточки сделки |
|
|
Пустое значение |
Parameter 'data' must be array |
В |
|
|
Пустое значение |
There are no data to write |
В |
|
|
Пустое значение |
The data must be indexed array |
В |
|
|
Пустое значение |
Section at index |
В |
|
|
Пустое значение |
Section at index |
В |
|
|
Пустое значение |
Section at index |
В |
|
|
Пустое значение |
Element at index |
В |
Статусы и коды системных ошибок
HTTP-статус: 20x, 40x, 50x
Описанные ниже ошибки могут возникнуть при вызове любого метода
|
Статус |
Код |
Описание |
|
|
|
Возникла внутренняя ошибка сервера, обратитесь к администратору сервера или в техническую поддержку Битрикс24 |
|
|
|
Возникла внутренняя ошибка сервера, обратитесь к администратору сервера или в техническую поддержку Битрикс24 |
|
|
|
Превышен лимит на интенсивность запросов |
|
|
|
Текущий метод не разрешен для вызова с помощью batch |
|
|
|
Превышена максимальная длина параметров, переданных в метод batch |
|
|
|
Неверный access-токен или код вебхука |
|
|
|
Для вызовов методов требуется использовать протокол HTTPS |
|
|
|
REST API заблокирован из-за перегрузки. Это ручная индивидуальная блокировка, для снятия необходимо обращаться в техническую поддержку Битрикс24 |
|
|
|
REST API доступен только на коммерческих планах |
|
|
|
У пользователя, с чьим access-токеном или вебхуком был вызван метод, не хватает прав |
|
|
|
Манифест недоступен |
|
|
|
Запрос требует более высоких привилегий, чем предоставляет токен вебхука |
|
|
|
Предоставленный access-токен доступа истек |
|
|
|
Пользователь не имеет доступа к приложению. Это означает, что приложение установлено, но администратор портала разрешил доступ к этому приложению только конкретным пользователям |
|
|
|
Публичная часть сайта закрыта. Чтобы открыть публичную часть сайта на коробочной установке отключите опцию «Временное закрытие публичной части сайта». Путь к настройке: Рабочий стол > Настройки > Настройки продукта > Настройки модулей > Главный модуль > Временное закрытие публичной части сайта |
Продолжите изучение
- Управление карточками сделок: обзор методов
- Получить параметры карточки сделки crm.deal.details.configuration.get
- Сбросить параметры карточки сделки crm.deal.details.configuration.reset
- Установить общую карточку для всех пользователей crm.deal.details.configuration.forceCommonScopeForAll