Получить параметры карточки элементов crm.item.details.configuration.get
Выберите инструмент для разработки с AI-агентом:
- используйте Битрикс24 Вайбкод, чтобы создать приложение для Битрикс24 по описанию задачи без знания языков программирования. Агент напишет код и разместит приложение на сервере без ручной настройки хостинга
- используйте MCP-сервер, чтобы разрабатывать интеграцию через REST API в своем проекте. Агент будет обращаться к официальной REST-документации
Scope:
crmКто может выполнять метод: проверка прав при выполнении метода зависит от переданных данных:
- Любой пользователь имеет право получить свои и общие настройки
- Пользователь имеет право получить чужие настройки только если он является администратором
Метод crm.item.details.configuration.get возвращает настройки карточки определенного объекта CRM. Может работать как с личными настройками карточки указанного пользователя, так и с общими настройками, заданными для всех пользователей.
Примечание
- Настройки карточки повторных лидов могут отличаться от настроек карточки простых лидов. Для переключения между настройками карточек лидов применяется параметр
extras.leadCustomerType. - Настройки карточки элемента могут отличаться в зависимости от их воронки. Для переключения используется параметры
extras.categoryId— для смарт-процессовextras.dealCategoryId— для сделок
Параметры метода
Обязательные параметры отмечены *
|
Название |
Описание |
|
entityTypeId* |
Идентификатор системного или пользовательского типа объектов CRM |
|
userId |
Идентификатор пользователя, чью конфигурацию вы хотите получить. Если данный параметр не передан, то будет взят Нужен только при запросе личных настроек |
|
scope |
Область применения настроек. Допустимые значения:
По умолчанию значение равно |
|
extras |
Дополнительные параметры. Возможные значения и их структура описана ниже |
extras
Параметр в extras зависит от объекта CRM.
|
Объект CRM |
Название |
Описание |
|
Смарт-процесс |
|
Идентификатор воронки смарт-процессов. Можно получить с помощью Если не указано, то берется идентификатор воронки по умолчанию для данного смарт-процесса |
|
Сделка |
|
Идентификатор воронки сделок. Можно получить с помощью Если не указан, то берется идентификатор воронки по умолчанию для сделок |
|
Лид |
|
Тип лидов. Возможные значения:
|
Примеры кода
Как использовать примеры в документации
-
Получить общую конфигурацию карточки элементов для сделок, находящихся в воронке с
id = 9, для пользователя сid = 1cURL (Webhook)cURL (OAuth)JS (TS)JS (UMD)PHPPythoncurl -X POST \ -H "Content-Type: application/json" \ -H "Accept: application/json" \ -d '{"entityTypeId":2,"userId":1,"scope":"C","extras":{"dealCategoryId":9}}' \ https://**put_your_bitrix24_address**/rest/**put_your_user_id_here**/**put_your_webhook_here**/crm.item.details.configuration.getcurl -X POST \ -H "Content-Type: application/json" \ -H "Accept: application/json" \ -d '{"entityTypeId":2,"userId":1,"scope":"C","extras":{"dealCategoryId":9},"auth":"**put_access_token_here**"}' \ https://**put_your_bitrix24_address**/rest/crm.item.details.configuration.get// 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 // Shape of the payload returned in result (match the "response handling" section of the page) type SectionElement = { name: string optionFlags: string options?: Record<string, string> } type Section = { name: string title: string type: string elements: SectionElement[] } try { const response = await $b24.actions.v2.call.make<Section[] | null>({ method: 'crm.item.details.configuration.get', params: { entityTypeId: 2, userId: 1, scope: 'C', extras: { dealCategoryId: 9, }, }, 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('Sections count:', result?.length ?? 0, 'first section:', result?.[0]?.name) } } 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 getDetailsConfiguration() { 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.get', params: { entityTypeId: 2, userId: 1, scope: 'C', extras: { dealCategoryId: 9, }, }, 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('Sections count:', result?.length ?? 0, 'first section:', result?.[0]?.name) } catch (error) { // Thrown on transport or SDK failures (AjaxError, SdkError, etc.) console.error(error) } } document.addEventListener('DOMContentLoaded', getDetailsConfiguration) </script>require_once('crest.php'); $result = CRest::call( 'crm.item.details.configuration.get', [ 'entityTypeId' => 2, 'userId' => 1, 'scope' => "C", 'extras' => [ 'dealCategoryId' => 9, ] ] ); echo '<PRE>'; print_r($result); echo '</PRE>';Пример
from b24pysdk.client import BaseClient from b24pysdk.errors import BitrixAPIError, BitrixSDKException client: BaseClient try: bitrix_response = client.crm.item.details.configuration.get( entity_type_id=2, user_id=1, scope="C", extras={ "dealCategoryId": 9, }, ).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}") -
Получить личную конфигурацию карточки элементов смарт-процесса с
entityTypeId = 1032в воронке сid = 5cURL (Webhook)cURL (OAuth)JS (TS)JS (UMD)PHPcurl -X POST \ -H "Content-Type: application/json" \ -H "Accept: application/json" \ -d '{"entityTypeId":1032,"extras":{"categoryId":5}}' \ https://**put_your_bitrix24_address**/rest/**put_your_user_id_here**/**put_your_webhook_here**/crm.item.details.configuration.getcurl -X POST \ -H "Content-Type: application/json" \ -H "Accept: application/json" \ -d '{"entityTypeId":1032,"extras":{"categoryId":5},"auth":"**put_access_token_here**"}' \ https://**put_your_bitrix24_address**/rest/crm.item.details.configuration.get// 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 // Shape of the payload returned in result (match the "response handling" section of the page) type SectionElement = { name: string optionFlags: string options?: Record<string, string> } type Section = { name: string title: string type: string elements: SectionElement[] } try { const response = await $b24.actions.v2.call.make<Section[] | null>({ method: 'crm.item.details.configuration.get', params: { entityTypeId: 1032, extras: { categoryId: 5, }, }, 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('Sections count:', result?.length ?? 0, 'first section:', result?.[0]?.name) } } 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 getDetailsConfiguration() { 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.get', params: { entityTypeId: 1032, extras: { categoryId: 5, }, }, 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('Sections count:', result?.length ?? 0, 'first section:', result?.[0]?.name) } catch (error) { // Thrown on transport or SDK failures (AjaxError, SdkError, etc.) console.error(error) } } document.addEventListener('DOMContentLoaded', getDetailsConfiguration) </script>require_once('crest.php'); $result = CRest::call( 'crm.item.details.configuration.get', [ 'entityTypeId' => 1032, 'extras' => [ 'categoryId' => 5, ] ] ); echo '<PRE>'; print_r($result); echo '</PRE>';
Обработка ответа
HTTP-статус: 200
{
"result": [
{
"name": "main",
"title": "О сделке",
"type": "section",
"elements": [
{
"name": "TITLE",
"optionFlags": "0"
},
{
"name": "STAGE_ID",
"optionFlags": "0"
},
{
"name": "OPPORTUNITY_WITH_CURRENCY",
"optionFlags": "0"
},
{
"name": "CLOSEDATE",
"optionFlags": "0"
},
{
"name": "CLIENT",
"optionFlags": "1",
"options": {
"defaultCountry": "RU"
}
},
{
"name": "UF_CRM_1686898039656",
"optionFlags": "1"
}
]
},
{
"name": "additional",
"title": "Дополнительно",
"type": "section",
"elements": [
{
"name": "TYPE_ID",
"optionFlags": "0"
},
{
"name": "SOURCE_ID",
"optionFlags": "0"
},
{
"name": "SOURCE_DESCRIPTION",
"optionFlags": "0"
},
{
"name": "BEGINDATE",
"optionFlags": "0"
},
{
"name": "OPENED",
"optionFlags": "0"
},
{
"name": "ASSIGNED_BY_ID",
"optionFlags": "0"
},
{
"name": "OBSERVER",
"optionFlags": "0"
},
{
"name": "COMMENTS",
"optionFlags": "0"
},
{
"name": "UTM",
"optionFlags": "0"
}
]
},
{
"name": "products",
"title": "Товары",
"type": "section",
"elements": [
{
"name": "PRODUCT_ROW_SUMMARY",
"optionFlags": "0"
}
]
},
{
"name": "recurring",
"title": "Регулярная сделка",
"type": "section",
"elements": [
{
"name": "RECURRING",
"optionFlags": "0"
}
]
}
],
"time": {
"start": 1720624891.017344,
"finish": 1720624891.405621,
"duration": 0.3882770538330078,
"processing": 0.02097320556640625,
"date_start": "2024-07-10T17:21:31+02:00",
"date_finish": "2024-07-10T17:21:31+02:00",
"operating": 0
}
}
Возвращаемые данные
|
Название |
Описание |
|
result |
Корневой элемент ответа. Содержит конфигурацию разделов детальной карточки элемента. Возвращает |
|
time |
Информация о времени выполнения запроса |
section
Описывает отдельно взятый раздел с полями внутри карточки элемента
|
Название |
Описание |
|
name |
Уникальное название раздела, используемое для идентификации |
|
title |
Название раздела |
|
type |
Тип раздела |
|
elements |
Список выводимых в карточку полей сущности с дополнительными настройками |
section_element
Конфигурация отдельно взятого поля внутри раздела
|
Название |
Описание |
|
name |
Идентификатор поля |
|
optionFlags |
Значения:
|
|
options |
Дополнительные опции поля |
Обработка ошибок
HTTP-статус: 400
{
"error": "",
"error_description": "Parameter 'entityTypeId' is not defined"
}
|
Название |
Описание |
|
error |
Строковый код ошибки. Может состоять из цифр, латинских букв и знака подчеркивания |
|
error_description |
Текстовое описание ошибки. Описание не предназначено для показа конечному пользователю в необработанном виде |
Возможные коды ошибок
|
Код |
Описание |
Значение |
|
Пустое значение |
Parameter 'entityTypeId' is not defined |
Не передан обязательный параметр |
|
Пустое значение |
The entity type ' |
Метод не поддерживает данный тип сущности |
|
Пустое значение |
Access denied. |
У пользователя нет административных прав |
Статусы и коды системных ошибок
HTTP-статус: 20x, 40x, 50x
Описанные ниже ошибки могут возникнуть при вызове любого метода
|
Статус |
Код |
Описание |
|
|
|
Возникла внутренняя ошибка сервера, обратитесь к администратору сервера или в техническую поддержку Битрикс24 |
|
|
|
Возникла внутренняя ошибка сервера, обратитесь к администратору сервера или в техническую поддержку Битрикс24 |
|
|
|
Превышен лимит на интенсивность запросов |
|
|
|
Метод заблокирован из-за превышения лимита на ресурсоемкость запросов. Блокировка снимается автоматически через 10 минут |
|
|
|
Текущий метод не разрешен для вызова с помощью batch |
|
|
|
Превышена максимальная длина параметров, переданных в метод batch |
|
|
|
Неверный access-токен или код вебхука |
|
|
|
Для вызовов методов требуется использовать протокол HTTPS |
|
|
|
REST API заблокирован из-за перегрузки. Это ручная индивидуальная блокировка, для снятия необходимо обращаться в техническую поддержку Битрикс24 |
|
|
|
REST API доступен только на коммерческих планах |
|
|
|
У пользователя, с чьим access-токеном или вебхуком был вызван метод, не хватает прав |
|
|
|
Манифест недоступен |
|
|
|
Запрос требует более высоких привилегий, чем предоставляет токен вебхука |
|
|
|
Предоставленный access-токен доступа истек |
|
|
|
Пользователь не имеет доступа к приложению. Это означает, что приложение установлено, но администратор портала разрешил доступ к этому приложению только конкретным пользователям |
|
|
|
Публичная часть сайта закрыта. Чтобы открыть публичную часть сайта на коробочной установке отключите опцию «Временное закрытие публичной части сайта». Путь к настройке: Рабочий стол > Настройки > Настройки продукта > Настройки модулей > Главный модуль > Временное закрытие публичной части сайта |
Продолжите изучение
- Разделы в детальной карточке CRM: обзор методов
- Установить параметры карточки элементов crm.item.details.configuration.set
- Сбросить параметры карточки элементов crm.item.details.configuration.reset
- Установить общую карточку для всех пользователей crm.item.details.configuration.forceCommonScopeForAll