crm.item.details.configuration.set
Установить параметры карточки элементов
Описание
Метод crm.item.details.configuration.set устанавливает настройки карточки определенного объекта CRM. Записывает личные настройки карточки указанного пользователя или общие настройки для всех пользователей.
Параметры
entityTypeId
integer
обязательный
Идентификатор системного или пользовательского типа объектов CRM
data
section[]
обязательный
Список section описывающий конфигурацию разделов полей в карточке элемента. Структура section описана ниже
userId
user
необязательный
Идентификатор пользователя, для которого вы хотите установить конфигурацию.
Если параметр не передан, то будет взят userId пользователя, вызывающего этот метод.
Нужен только при запросе личных настроек
scope
string
необязательный
Область применения настроек. Допустимые значения:
- 'P' — личные настройки
- 'C' — общие настройки
По умолчанию значение равно 'P'
extras
object
необязательный
Дополнительные параметры. Возможные значения и их структура описана ниже
section
name
string
обязательный
Уникальное название раздела
title
string
обязательный
Название раздела. Отображается в карточке элемента
type
string
обязательный
Тип раздела.
На данный момент доступно только значение 'section'
elements
section_element[]
необязательный
Массив section_element, описывающий конфигурацию полей в разделе
extras
Смарт-процесс
необязательный
categoryId
Сделка
необязательный
dealCategoryId
Лид
необязательный
leadCustomerType
Примеры запроса
curl -X POST \
-H "Content-Type: application/json" \
-H "Accept: application/json" \
-d '{"entityTypeId":3,"userId":1,"data":[{"name":"section_1","title":"Личные данные","type":"section","elements":[{"name":"NAME","optionFlags":1},{"name":"LAST_NAME","optionFlags":1},{"name":"SECOND_NAME"},{"name":"BIRTHDATE"},{"name":"PHONE","optionFlags":1,"options":{"defaultCountry":"GB"}},{"name":"ADDRESS","optionFlags":1,"options":{"defaultAddressType":4}}]},{"name":"section_2","title":"Основная информация","type":"section","elements":[{"name":"TYPE_ID"},{"name":"SOURCE_ID"},{"name":"POST"}]},{"name":"section_3","title":"Дополнительная информация","type":"section","elements":[{"name":"PHOTO"},{"name":"COMMENTS"},{"name":"UF_CRM_1720697698689"}]}]}' \
https://**put_your_bitrix24_address**/rest/**put_your_user_id_here**/**put_your_webhook_here**/crm.item.details.configuration.set
curl -X POST \
-H "Content-Type: application/json" \
-H "Accept: application/json" \
-d '{"entityTypeId":3,"userId":1,"data":[{"name":"section_1","title":"Личные данные","type":"section","elements":[{"name":"NAME","optionFlags":1},{"name":"LAST_NAME","optionFlags":1},{"name":"SECOND_NAME"},{"name":"BIRTHDATE"},{"name":"PHONE","optionFlags":1,"options":{"defaultCountry":"GB"}},{"name":"ADDRESS","optionFlags":1,"options":{"defaultAddressType":4}}]},{"name":"section_2","title":"Основная информация","type":"section","elements":[{"name":"TYPE_ID"},{"name":"SOURCE_ID"},{"name":"POST"}]},{"name":"section_3","title":"Дополнительная информация","type":"section","elements":[{"name":"PHOTO"},{"name":"COMMENTS"},{"name":"UF_CRM_1720697698689"}]}],"auth":"**put_access_token_here**"}' \
https://**put_your_bitrix24_address**/rest/crm.item.details.configuration.set
// This snippet is an ES module: top-level await requires type="module" or a bundler.
// $b24 is an already-initialized SDK instance (see the SDK "Get started" guide).
import { Text } from '@bitrix24/b24jssdk'
import type { B24Frame } from '@bitrix24/b24jssdk'
declare const $b24: B24Frame
try {
const response = await $b24.actions.v2.call.make<boolean>({
method: 'crm.item.details.configuration.set',
params: {
entityTypeId: 3,
userId: 1,
data: [
{
name: 'section_1',
title: 'Personal data',
type: 'section',
elements: [
{
name: 'NAME',
optionFlags: 1,
},
{
name: 'LAST_NAME',
optionFlags: 1,
},
{
name: 'SECOND_NAME',
},
{
name: 'BIRTHDATE',
},
{
name: 'PHONE',
optionFlags: 1,
options: {
defaultCountry: 'GB',
},
},
{
name: 'ADDRESS',
optionFlags: 1,
options: {
defaultAddressType: 4,
},
},
],
},
{
name: 'section_2',
title: 'Main information',
type: 'section',
elements: [
{ name: 'TYPE_ID' },
{ name: 'SOURCE_ID' },
{ name: 'POST' },
],
},
{
name: 'section_3',
title: 'Additional information',
type: 'section',
elements: [
{ name: 'PHOTO' },
{ name: 'COMMENTS' },
{ name: 'UF_CRM_1720697698689' },
],
},
],
},
requestId: Text.getUuidRfc4122()
})
// The payload is available only on a successful response
if (!response.isSuccess) {
console.error(response.getErrorMessages().join('; '))
} else {
const result = response.getData()!.result
console.info('Configuration saved successfully:', result)
}
} catch (error) {
// Thrown on transport or SDK failures (AjaxError, SdkError, etc.)
console.error(error)
}
<!-- Load the SDK (UMD build); it is exposed as the global B24Js -->
<script src="https://unpkg.com/@bitrix24/b24jssdk@1/dist/umd/index.min.js"></script>
<script>
async function setDetailsConfiguration() {
try {
// Initialize the SDK inside a Bitrix24 frame
const $b24 = await B24Js.initializeB24Frame()
const response = await $b24.actions.v2.call.make({
method: 'crm.item.details.configuration.set',
params: {
entityTypeId: 3,
userId: 1,
data: [
{
name: 'section_1',
title: 'Personal data',
type: 'section',
elements: [
{
name: 'NAME',
optionFlags: 1,
},
{
name: 'LAST_NAME',
optionFlags: 1,
},
{
name: 'SECOND_NAME',
},
{
name: 'BIRTHDATE',
},
{
name: 'PHONE',
optionFlags: 1,
options: {
defaultCountry: 'GB',
},
},
{
name: 'ADDRESS',
optionFlags: 1,
options: {
defaultAddressType: 4,
},
},
],
},
{
name: 'section_2',
title: 'Main information',
type: 'section',
elements: [
{ name: 'TYPE_ID' },
{ name: 'SOURCE_ID' },
{ name: 'POST' },
],
},
{
name: 'section_3',
title: 'Additional information',
type: 'section',
elements: [
{ name: 'PHOTO' },
{ name: 'COMMENTS' },
{ name: 'UF_CRM_1720697698689' },
],
},
],
},
requestId: B24Js.Text.getUuidRfc4122()
})
// The payload is available only on a successful response
if (!response.isSuccess) {
console.error(response.getErrorMessages().join('; '))
return
}
const result = response.getData().result
console.info('Configuration saved successfully:', result)
} catch (error) {
// Thrown on transport or SDK failures (AjaxError, SdkError, etc.)
console.error(error)
}
}
document.addEventListener('DOMContentLoaded', setDetailsConfiguration)
</script>
from b24pysdk.errors import BitrixAPIError, BitrixSDKException
try:
bitrix_response = client.crm.item.details.configuration.set(
entity_type_id=3,
user_id=1,
data=[
{
"name": "section_1",
"title": "Личные данные",
"type": "section",
"elements": [
{
"name": "NAME",
"optionFlags": 1,
},
{
"name": "LAST_NAME",
"optionFlags": 1,
},
{
"name": "SECOND_NAME",
},
{
"name": "BIRTHDATE",
},
{
"name": "PHONE",
"optionFlags": 1,
"options": {
"defaultCountry": "GB",
},
},
{
"name": "ADDRESS",
"optionFlags": 1,
"options": {
"defaultAddressType": 4,
},
},
],
},
{
"name": "section_2",
"title": "Основная информация",
"type": "section",
"elements": [
{
"name": "TYPE_ID",
},
{
"name": "SOURCE_ID",
},
{
"name": "POST",
},
],
},
{
"name": "section_3",
"title": "Дополнительная информация",
"type": "section",
"elements": [
{
"name": "PHOTO",
},
{
"name": "COMMENTS",
},
{
"name": "UF_CRM_1720697698689",
},
],
},
],
).response
result = bitrix_response.result
print(result)
except BitrixAPIError as error:
print(
"Ошибка Bitrix API",
f"error: {error.error}",
f"error_description: {error.error_description}",
sep="\n",
)
except BitrixSDKException as error:
print(f"Ошибка Bitrix SDK: {error.message}")
except Exception as error:
print(f"Непредвиденная ошибка: {error}")
try {
$response = $b24Service
->core
->call(
'crm.item.details.configuration.set',
[
'entityTypeId' => 3,
'userId' => 1,
'data' => [
[
'name' => "section_1",
'title' => "Личные данные",
'type' => "section",
'elements' => [
[
'name' => "NAME",
'optionFlags' => 1,
],
[
'name' => "LAST_NAME",
'optionFlags' => 1,
],
[
'name' => "SECOND_NAME",
],
[
'name' => "BIRTHDATE",
],
[
'name' => "PHONE",
'optionFlags' => 1,
'options' => [
'defaultCountry' => "GB",
],
],
[
'name' => "ADDRESS",
'optionFlags' => 1,
'options' => [
'defaultAddressType' => 4,
],
],
],
],
[
'name' => "section_2",
'title' => "Основная информация",
'type' => "section",
'elements' => [
['name' => "TYPE_ID"],
['name' => "SOURCE_ID"],
['name' => "POST"],
],
],
[
'name' => "section_3",
'title' => "Дополнительная информация",
'type' => "section",
'elements' => [
['name' => "PHOTO"],
['name' => "COMMENTS"],
['name' => "UF_CRM_1720697698689"],
],
],
],
]
);
$result = $response
->getResponseData()
->getResult();
echo 'Success: ' . print_r($result, true);
} catch (Throwable $e) {
error_log($e->getMessage());
echo 'Error setting details configuration: ' . $e->getMessage();
}
BX24.callMethod(
'crm.item.details.configuration.set',
{
entityTypeId: 3,
userId: 1,
data: [
{
name: "section_1",
title: "Личные данные",
type: "section",
elements: [
{
name: "NAME",
optionFlags: 1,
},
{
name: "LAST_NAME",
optionFlags: 1,
},
{
name: "SECOND_NAME",
},
{
name: "BIRTHDATE",
},
{
name: "PHONE",
optionFlags: 1,
options: {
defaultCountry: "GB",
},
},
{
name: "ADDRESS",
optionFlags: 1,
options: {
defaultAddressType: 4,
},
},
],
},
{
name: "section_2",
title: "Основная информация",
type: "section",
elements: [
{ name: "TYPE_ID" },
{ name: "SOURCE_ID" },
{ name: "POST" },
],
},
{
name: "section_3",
title: "Дополнительная информация",
type: "section",
elements: [
{ name: "PHOTO" },
{ name: "COMMENTS" },
{ name: "UF_CRM_1720697698689" },
],
},
],
},
(result) => {
if (result.error())
{
console.error(result.error());
return;
}
console.info(result.data());
},
);
require_once('crest.php');
$result = CRest::call(
'crm.item.details.configuration.set',
[
'entityTypeId' => 3,
'userId' => 1,
'data' => [
[
'name' => "section_1",
'title' => "Личные данные",
'type' => "section",
'elements' => [
[
'name' => "NAME",
'optionFlags' => 1,
],
[
'name' => "LAST_NAME",
'optionFlags' => 1,
],
[
'name' => "SECOND_NAME",
],
[
'name' => "BIRTHDATE",
],
[
'name' => "PHONE",
'optionFlags' => 1,
'options' => [
'defaultCountry' => "GB",
],
],
[
'name' => "ADDRESS",
'optionFlags' => 1,
'options' => [
'defaultAddressType' => 4,
],
],
],
],
[
'name' => "section_2",
'title' => "Основная информация",
'type' => "section",
'elements' => [
['name' => "TYPE_ID"],
['name' => "SOURCE_ID"],
['name' => "POST"],
],
],
[
'name' => "section_3",
'title' => "Дополнительная информация",
'type' => "section",
'elements' => [
['name' => "PHOTO"],
['name' => "COMMENTS"],
['name' => "UF_CRM_1720697698689"],
],
],
],
]
);
echo '<PRE>';
print_r($result);
echo '</PRE>';
// client и ctx уже созданы — см. раздел «SDK для Go»
res, err := client.Core().Call(ctx, "crm.item.details.configuration.set", b24.Params{
"entityTypeId": 3,
"userId": 1,
"data": []b24.Params{
{
"name": "section_1",
"title": "Личные данные",
"type": "section",
"elements": []b24.Params{
{
"name": "NAME",
"optionFlags": 1,
},
{
"name": "LAST_NAME",
"optionFlags": 1,
},
{
"name": "SECOND_NAME",
},
{
"name": "BIRTHDATE",
},
{
"name": "PHONE",
"optionFlags": 1,
"options": b24.Params{
"defaultCountry": "GB",
},
},
{
"name": "ADDRESS",
"optionFlags": 1,
"options": b24.Params{
"defaultAddressType": 4,
},
},
},
},
{
"name": "section_2",
"title": "Основная информация",
"type": "section",
"elements": []b24.Params{
{
"name": "TYPE_ID",
},
{
"name": "SOURCE_ID",
},
{
"name": "POST",
},
},
},
{
"name": "section_3",
"title": "Дополнительная информация",
"type": "section",
"elements": []b24.Params{
{
"name": "PHOTO",
},
{
"name": "COMMENTS",
},
{
"name": "UF_CRM_1720697698689",
},
},
},
},
})
if err != nil {
return fmt.Errorf("crm.item.details.configuration.set: %w", err)
}
var ok bool
if err := json.Unmarshal(res.Result, &ok); err != nil {
return fmt.Errorf("разбор ответа: %w", err)
}
fmt.Println("выполнено:", ok)
Ответ
HTTP-статус: 200
{
"result": true,
"time": {
"start": 1720699969.76157,
"finish": 1720699970.153406,
"duration": 0.39183592796325684,
"processing": 0.02178215980529785,
"date_start": "2024-07-11T14:12:49+02:00",
"date_finish": "2024-07-11T14:12:50+02:00",
"operating": 0
}
}
Возвращаемые данные
result
boolean
Корневой элемент ответа. Возвращает true в случае успеха
time
time
Информация о времени выполнения запроса
Обработка ошибок
HTTP-статус: 400
{
"error": "",
"error_description": "Element at index 0 in section at index 1 does not have name."
}
| Код | Описание | Значение |
|---|---|---|
| — | Parameter 'entityTypeId' is not defined | Не передан обязательный параметр entityTypeId |
| — | The entity type 'entityTypeName' is not supported in current context. |
Метод не поддерживает данный тип сущности |
| — | Access denied. | У пользователя нет административных прав |
| — | Parameter 'data' must be array. | В data передан не массив |
| — | The data must be indexed array. | В data передан не индексированный массив |
| — | There are no data to write. | В data передан пустой массив |
| — | Section at index i have type data[i].type. The expected type is 'section'. |
В data[i].type находится значение отличное от 'section' |
| — | Section at index i does not have name. |
В data[i].name передано пустое значение |
| — | Section at index i does not have title. |
В data[i].title передано пустое значение |
| — | Element at index j in section at index i does not have name. |
В data[i].elements[j].name передано пустое значение |

