crm.contact.fields
Получить поля контакта
Описание
Метод возвращает описание полей контакта, в том числе пользовательских.
Без параметров.
Примеры запроса
curl -X POST \
-H "Content-Type: application/json" \
-H "Accept: application/json" \
-d '{}' \
https://**put_your_bitrix24_address**/rest/**put_your_user_id_here**/**put_your_webhook_here**/crm.contact.fields
curl -X POST \
-H "Content-Type: application/json" \
-H "Accept: application/json" \
-d '{"auth":"**put_access_token_here**"}' \
https://**put_your_bitrix24_address**/rest/crm.contact.fields
// 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 CrmContactFields = Record<string, CrmContactFieldDescription>
type CrmContactFieldDescription = {
type: string
isRequired: boolean
isReadOnly: boolean
isImmutable: boolean
isMultiple: boolean
isDynamic: boolean
title: string
}
try {
const response = await $b24.actions.v2.call.make<CrmContactFields>({
method: 'crm.contact.fields',
params: {},
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('Contact fields:', Object.keys(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 getContactFields() {
try {
// Initialize the SDK inside a Bitrix24 frame
const $b24 = await B24Js.initializeB24Frame()
const response = await $b24.actions.v2.call.make({
method: 'crm.contact.fields',
params: {},
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('Contact fields:', Object.keys(result))
} catch (error) {
// Thrown on transport or SDK failures (AjaxError, SdkError, etc.)
console.error(error)
}
}
document.addEventListener('DOMContentLoaded', getContactFields)
</script>
try {
$response = $b24Service
->core
->call(
'crm.contact.fields',
[]
);
$result = $response
->getResponseData()
->getResult();
if ($result->error()) {
error_log($result->error());
echo 'Error: ' . $result->error();
} else {
echo 'Поля контакта: ' . print_r($result->data(), true);
}
} catch (Throwable $e) {
error_log($e->getMessage());
echo 'Error fetching contact fields: ' . $e->getMessage();
}
BX24.callMethod(
"crm.contact.fields",
{},
(result) => {
if(result.error())
console.error(result.error());
else
console.info("Поля контакта", result.data());
}
);
require_once('crest.php');
$result = CRest::call(
'crm.contact.fields',
[]
);
echo '<PRE>';
print_r($result);
echo '</PRE>';
// client и ctx уже созданы — см. раздел «SDK для Go»
res, err := client.Core().Call(ctx, "crm.contact.fields", nil, b24.WithIdempotent())
if err != nil {
return fmt.Errorf("crm.contact.fields: %w", err)
}
keys, ok := b24.Keys(res.Result)
if !ok {
return fmt.Errorf("ожидался объект в ответе")
}
fmt.Println("полей в ответе:", len(keys))
Ответ
HTTP-статус: 200
{
"result": {
"ID": {
"type": "integer",
"isRequired": false,
"isReadOnly": true,
"isImmutable": false,
"isMultiple": false,
"isDynamic": false,
"title": "ID"
},
"HONORIFIC": {
"type": "crm_status",
"isRequired": false,
"isReadOnly": false,
"isImmutable": false,
"isMultiple": false,
"isDynamic": false,
"statusType": "HONORIFIC",
"title": "Обращение"
},
"NAME": {
"type": "string",
"isRequired": true,
"isReadOnly": false,
"isImmutable": false,
"isMultiple": false,
"isDynamic": false,
"title": "Имя"
},
"SECOND_NAME": {
"type": "string",
"isRequired": true,
"isReadOnly": false,
"isImmutable": false,
"isMultiple": false,
"isDynamic": false,
"title": "Отчество"
},
"LAST_NAME": {
"type": "string",
"isRequired": true,
"isReadOnly": false,
"isImmutable": false,
"isMultiple": false,
"isDynamic": false,
"title": "Фамилия"
},
"PHOTO": {
"type": "file",
"isRequired": false,
"isReadOnly": false,
"isImmutable": false,
"isMultiple": false,
"isDynamic": false,
"title": "Фотография"
},
"BIRTHDATE": {
"type": "date",
"isRequired": false,
"isReadOnly": false,
"isImmutable": false,
"isMultiple": false,
"isDynamic": false,
"title": "Дата рождения"
},
"TYPE_ID": {
"type": "crm_status",
"isRequired": false,
"isReadOnly": false,
"isImmutable": false,
"isMultiple": false,
"isDynamic": false,
"statusType": "CONTACT_TYPE",
"title": "Тип контакта"
},
"SOURCE_ID": {
"type": "crm_status",
"isRequired": false,
"isReadOnly": false,
"isImmutable": false,
"isMultiple": false,
"isDynamic": false,
"statusType": "SOURCE",
"title": "Источник"
},
"SOURCE_DESCRIPTION": {
"type": "string",
"isRequired": false,
"isReadOnly": false,
"isImmutable": false,
"isMultiple": false,
"isDynamic": false,
"title": "Дополнительно об источнике"
},
"POST": {
"type": "string",
"isRequired": false,
"isReadOnly": false,
"isImmutable": false,
"isMultiple": false,
"isDynamic": false,
"title": "Должность"
},
"ADDRESS": {
"type": "string",
"isRequired": false,
"isReadOnly": false,
"isImmutable": false,
"isMultiple": false,
"isDynamic": false,
"title": "Адрес"
},
"ADDRESS_2": {
"type": "string",
"isRequired": false,
"isReadOnly": false,
"isImmutable": false,
"isMultiple": false,
"isDynamic": false,
"title": "Адрес (стр. 2)"
},
"ADDRESS_CITY": {
"type": "string",
"isRequired": false,
"isReadOnly": false,
"isImmutable": false,
"isMultiple": false,
"isDynamic": false,
"title": "Город"
},
"ADDRESS_POSTAL_CODE": {
"type": "string",
"isRequired": false,
"isReadOnly": false,
"isImmutable": false,
"isMultiple": false,
"isDynamic": false,
"title": "Почтовый индекс"
},
"ADDRESS_REGION": {
"type": "string",
"isRequired": false,
"isReadOnly": false,
"isImmutable": false,
"isMultiple": false,
"isDynamic": false,
"title": "Район"
},
"ADDRESS_PROVINCE": {
"type": "string",
"isRequired": false,
"isReadOnly": false,
"isImmutable": false,
"isMultiple": false,
"isDynamic": false,
"title": "Область"
},
"ADDRESS_COUNTRY": {
"type": "string",
"isRequired": false,
"isReadOnly": false,
"isImmutable": false,
"isMultiple": false,
"isDynamic": false,
"title": "Страна"
},
"ADDRESS_COUNTRY_CODE": {
"type": "string",
"isRequired": false,
"isReadOnly": false,
"isImmutable": false,
"isMultiple": false,
"isDynamic": false,
"title": "Код страны"
},
"ADDRESS_LOC_ADDR_ID": {
"type": "integer",
"isRequired": false,
"isReadOnly": false,
"isImmutable": false,
"isMultiple": false,
"isDynamic": false,
"title": "Идентификатор адреса местоположения"
},
"COMMENTS": {
"type": "string",
"isRequired": false,
"isReadOnly": false,
"isImmutable": false,
"isMultiple": false,
"isDynamic": false,
"title": "Комментарий"
},
"OPENED": {
"type": "char",
"isRequired": false,
"isReadOnly": false,
"isImmutable": false,
"isMultiple": false,
"isDynamic": false,
"title": "Доступен для всех"
},
"EXPORT": {
"type": "char",
"isRequired": false,
"isReadOnly": false,
"isImmutable": false,
"isMultiple": false,
"isDynamic": false,
"title": "Участвует в экспорте контактов"
},
"HAS_PHONE": {
"type": "char",
"isRequired": false,
"isReadOnly": true,
"isImmutable": false,
"isMultiple": false,
"isDynamic": false,
"title": "Задан телефон"
},
"HAS_EMAIL": {
"type": "char",
"isRequired": false,
"isReadOnly": true,
"isImmutable": false,
"isMultiple": false,
"isDynamic": false,
"title": "Задан e-mail"
},
"HAS_IMOL": {
"type": "char",
"isRequired": false,
"isReadOnly": true,
"isImmutable": false,
"isMultiple": false,
"isDynamic": false,
"title": "Задана открытая линия"
},
"ASSIGNED_BY_ID": {
"type": "user",
"isRequired": false,
"isReadOnly": false,
"isImmutable": false,
"isMultiple": false,
"isDynamic": false,
"title": "Ответственный"
},
"CREATED_BY_ID": {
"type": "user",
"isRequired": false,
"isReadOnly": true,
"isImmutable": false,
"isMultiple": false,
"isDynamic": false,
"title": "Кем создан"
},
"MODIFY_BY_ID": {
"type": "user",
"isRequired": false,
"isReadOnly": true,
"isImmutable": false,
"isMultiple": false,
"isDynamic": false,
"title": "Кем изменен"
},
"DATE_CREATE": {
"type": "datetime",
"isRequired": false,
"isReadOnly": true,
"isImmutable": false,
"isMultiple": false,
"isDynamic": false,
"title": "Дата создания"
},
"DATE_MODIFY": {
"type": "datetime",
"isRequired": false,
"isReadOnly": true,
"isImmutable": false,
"isMultiple": false,
"isDynamic": false,
"title": "Дата изменения"
},
"COMPANY_ID": {
"type": "crm_company",
"isRequired": false,
"isReadOnly": false,
"isImmutable": false,
"isMultiple": false,
"isDynamic": false,
"isDeprecated": true,
"title": "Компания"
},
"COMPANY_IDS": {
"type": "crm_company",
"isRequired": false,
"isReadOnly": false,
"isImmutable": false,
"isMultiple": true,
"isDynamic": false,
"title": "COMPANY_IDS"
},
"LEAD_ID": {
"type": "crm_lead",
"isRequired": false,
"isReadOnly": true,
"isImmutable": false,
"isMultiple": false,
"isDynamic": false,
"title": "Лид",
"settings": {
"parentEntityTypeId": 1
}
},
"ORIGINATOR_ID": {
"type": "string",
"isRequired": false,
"isReadOnly": false,
"isImmutable": false,
"isMultiple": false,
"isDynamic": false,
"title": "Внешний источник"
},
"ORIGIN_ID": {
"type": "string",
"isRequired": false,
"isReadOnly": false,
"isImmutable": false,
"isMultiple": false,
"isDynamic": false,
"title": "Идентификатор элемента во внешнем источнике"
},
"ORIGIN_VERSION": {
"type": "string",
"isRequired": false,
"isReadOnly": false,
"isImmutable": false,
"isMultiple": false,
"isDynamic": false,
"title": "Версия оригинала"
},
"UTM_SOURCE": {
"type": "string",
"isRequired": false,
"isReadOnly": false,
"isImmutable": false,
"isMultiple": false,
"isDynamic": false,
"title": "Рекламная система"
},
"UTM_MEDIUM": {
"type": "string",
"isRequired": false,
"isReadOnly": false,
"isImmutable": false,
"isMultiple": false,
"isDynamic": false,
"title": "Тип трафика"
},
"UTM_CAMPAIGN": {
"type": "string",
"isRequired": false,
"isReadOnly": false,
"isImmutable": false,
"isMultiple": false,
"isDynamic": false,
"title": "Обозначение рекламной кампании"
},
"UTM_CONTENT": {
"type": "string",
"isRequired": false,
"isReadOnly": false,
"isImmutable": false,
"isMultiple": false,
"isDynamic": false,
"title": "Содержание кампании"
},
"UTM_TERM": {
"type": "string",
"isRequired": false,
"isReadOnly": false,
"isImmutable": false,
"isMultiple": false,
"isDynamic": false,
"title": "Условие поиска кампании"
},
"LAST_ACTIVITY_TIME": {
"type": "datetime",
"isRequired": false,
"isReadOnly": true,
"isImmutable": false,
"isMultiple": false,
"isDynamic": false,
"title": "Последняя активность"
},
"LAST_ACTIVITY_BY": {
"type": "user",
"isRequired": false,
"isReadOnly": true,
"isImmutable": false,
"isMultiple": false,
"isDynamic": false,
"title": "Кем осуществлена последняя активность в таймлайне"
},
"PHONE": {
"type": "crm_multifield",
"isRequired": false,
"isReadOnly": false,
"isImmutable": false,
"isMultiple": true,
"isDynamic": false,
"title": "Телефон"
},
"EMAIL": {
"type": "crm_multifield",
"isRequired": false,
"isReadOnly": false,
"isImmutable": false,
"isMultiple": true,
"isDynamic": false,
"title": "E-mail"
},
"WEB": {
"type": "crm_multifield",
"isRequired": false,
"isReadOnly": false,
"isImmutable": false,
"isMultiple": true,
"isDynamic": false,
"title": "Сайт"
},
"IM": {
"type": "crm_multifield",
"isRequired": false,
"isReadOnly": false,
"isImmutable": false,
"isMultiple": true,
"isDynamic": false,
"title": "Мессенджер"
},
"LINK": {
"type": "crm_multifield",
"isRequired": false,
"isReadOnly": false,
"isImmutable": false,
"isMultiple": true,
"isDynamic": false,
"title": "LINK"
}
},
"time": {
"start": 1715004755.782705,
"finish": 1715004756.118899,
"duration": 0.3361940383911133,
"processing": 0.10344505310058594,
"date_start": "2024-05-06T17:12:35+03:00",
"date_finish": "2024-05-06T17:12:36+03:00",
"operating": 0
}
}
Возвращаемые данные
ID
integer
Идентификатор контакта. Только для чтения
HONORIFIC
crm_status
Обращение.
Получить значения справочника можно с помощью метода crm.status.list с фильтром по ENTITY_ID=HONORIFIC
NAME
string
Имя
SECOND_NAME
string
Отчество
LAST_NAME
string
Фамилия
PHOTO
file
Фотография
BIRTHDATE
date
Дата рождения
TYPE_ID
crm_status
Тип контакта.
Получить значения справочника можно с помощью метода crm.status.list с фильтром по ENTITY_ID=CONTACT_TYPE
SOURCE_ID
crm_status
Источник.
Получить значения справочника можно с помощью метода crm.status.list с фильтром по ENTITY_ID=SOURCE
SOURCE_DESCRIPTION
string
Дополнительно об источнике
POST
string
Должность
COMMENTS
string
Комментарий. Поддерживает bb-коды
OPENED
char
Доступен ли для всех. Возможные значения:
- Y — да
- N — нет
Учитывается в работе прав доступа для ролей с уровнем доступа «Все открытые»
EXPORT
char
Участвует в экспорте контактов. Возможные значения:
- Y — да
- N — нет
HAS_PHONE
char
Задан ли телефон. Возможные значения:
- Y — да
- N — нет
Только для чтения
HAS_EMAIL
char
Задан ли e-mail. Возможные значения:
- Y — да
- N — нет
Только для чтения
HAS_IMOL
char
Задана открытая линия. Возможные значения:
- Y — да
- N — нет
Только для чтения
ASSIGNED_BY_ID
user
Ответственный
CREATED_BY_ID
user
Кем создан. Только для чтения
MODIFY_BY_ID
user
Кем изменен. Только для чтения
DATE_CREATE
datetime
Дата создания. Только для чтения
DATE_MODIFY
datetime
Дата изменения. Только для чтения
COMPANY_ID
crm_company
Основная компания контакта
COMPANY_IDS
crm_company
Привязка контакта к компаниям. Множественное.
В методах crm.contact.update и crm.contact.add используется для подачи массива компаний.
В методах crm.contact.list и crm.contact.get поля нет и необходимо использовать crm.contact.company.items.get для получения списка компаний
LEAD_ID
crm_lead
Идентификатор лида, связанного с контактом. Только для чтения
UTM_SOURCE
string
Рекламная система (Yandex-Direct, Google-Adwords и другие)
UTM_MEDIUM
string
Тип трафика. Возможные значения:
- CPC — объявления
- CPM — баннеры
UTM_CAMPAIGN
string
Обозначение рекламной кампании
UTM_CONTENT
string
Содержание кампании. Например, для контекстных объявлений
UTM_TERM
string
Условие поиска кампании. Например, ключевые слова контекстной рекламы
LAST_ACTIVITY_TIME
datetime
Дата последней активности в таймлайне. Только для чтения
LAST_ACTIVITY_BY
user
Автор последней активности в таймлайне. Только для чтения
PHONE
crm_multifield
Телефоны. Множественное
EMAIL
crm_multifield
E-mail. Множественное
WEB
crm_multifield
Сайты. Множественное
IM
crm_multifield
Мессенджеры. Множественное
LINK
crm_multifield
Ссылки. Множественное. Служебное.
UF_...
Пользовательские поля. Например, UF_CRM_25534736.
В зависимости от настроек портала у контактов может быть набор пользовательских полей определенных типов.
Добавить пользовательское поле в контакт можно с помощью метода crm.contact.userfield.add
PARENT_ID_...
Поля связей.
Если на портале есть смарт-процессы, связанные с контактами, для каждого такого смарт-процесса существует поле, хранящее связь между этим смарт-процессом и контактом. Само поле хранит идентификатор элемента такого смарт-процесса.
Например, поле PARENT_ID_153 — связь со смарт-процессом entityTypeId=153. Оно хранит идентификатор элемента этого смарт-процесса, связанного с текущим контактом

