Каждый PHP-разработчик, работающий с экосистемой Bitrix Framework, должен глубоко понимать работу её ключевых компонентов. В этой статье мы проведем подробный аудит темы «Получить поля, доступные для добавления в шаблон реквизитов crm.requisite.pre…», проанализируем лучшие практики и покажем, как правильно использовать crm.requisite.preset.field.availabletoadd в реальных задачах.
Получить поля, доступные для добавления в шаблон реквизитов crm.requisite.preset.field.availabletoadd
> Scope: crm
>
> Кто может выполнять метод: любой пользователь
Метод возвращает поля, доступные для добавления в указанный шаблон реквизитов.
Параметры метода
Названиетип | Описание |
|---|---|
preset*object | Объект, содержащий значение идентификатора шаблона, для которого нужно получить список доступных для добавления настраиваемых полей. Идентификаторы шаблонов можно получить с помощью метода crm.requisite.preset.list. Поля с префиксом |
Примеры кода
- cURL (Webhook)
curl -X POST \
-H "Content-Type: application/json" \
-H "Accept: application/json" \
-d '{"preset":{"ID":27}}' \
https://**put_your_bitrix24_address**/rest/**put_your_user_id_here**/**put_your_webhook_here**/crm.requisite.preset.field.availabletoadd- cURL (OAuth)
curl -X POST \
-H "Content-Type: application/json" \
-H "Accept: application/json" \
-d '{"preset":{"ID":27},"auth":"**put_access_token_here**"}' \
https://**put_your_bitrix24_address**/rest/crm.requisite.preset.field.availabletoadd- JS
try
{
const response = await $b24.callMethod(
"crm.requisite.preset.field.availabletoadd",
{
preset:
{
"ID": 27
}
}
);
const result = response.getData().result;
if(result.error())
{
console.error(result.error());
}
else
{
console.dir(result);
}
}
catch(error)
{
console.error('Error:', error);
}- PHP
try {
$response = $b24Service
->core
->call(
'crm.requisite.preset.field.availabletoadd',
[
'preset' => [
'ID' => 27
]
]
);
$result = $response
->getResponseData()
->getResult();
if ($result->error()) {
error_log($result->error());
} else {
echo 'Success: ' . print_r($result->data(), true);
}
} catch (Throwable $e) {
error_log($e->getMessage());
echo 'Error checking available fields: ' . $e->getMessage();
}- BX24.js
BX24.callMethod(
"crm.requisite.preset.field.availabletoadd",
{
preset:
{
"ID": 27
}
},
function(result)
{
if(result.error())
console.error(result.error());
else
console.dir(result.data());
}
);- PHP CRest
require_once('crest.php');
$result = CRest::call(
'crm.requisite.preset.field.availabletoadd',
[
'preset' => ['ID' => 27]
]
);
echo '<PRE>';
print_r($result);
echo '</PRE>';Обработка ответа
HTTP-статус: 200
{
"result": [
"RQ_FIRST_NAME",
"RQ_LAST_NAME",
"RQ_SECOND_NAME",
"RQ_COMPANY_NAME",
"RQ_COMPANY_FULL_NAME",
"RQ_COMPANY_REG_DATE",
"RQ_DIRECTOR",
"RQ_ACCOUNTANT",
"RQ_ADDR",
"RQ_CONTACT",
"RQ_EMAIL",
"RQ_PHONE",
"RQ_FAX",
"RQ_IDENT_DOC",
"RQ_IDENT_DOC_SER",
"RQ_IDENT_DOC_NUM",
"RQ_IDENT_DOC_DATE",
"RQ_IDENT_DOC_ISSUED_BY",
"RQ_IDENT_DOC_DEP_CODE",
"RQ_INN",
"RQ_KPP",
"RQ_IFNS",
"RQ_OGRN",
"RQ_OGRNIP",
"RQ_OKPO",
"RQ_OKTMO",
"RQ_OKVED",
"RQ_ST_CERT_SER",
"RQ_ST_CERT_NUM",
"RQ_ST_CERT_DATE",
"RQ_SIGNATURE",
"RQ_STAMP",
"UF_CRM_1707997209",
"UF_CRM_1707997236",
"UF_CRM_1707997253",
"UF_CRM_1708012333"
]
}Возвращаемые данные
Названиетип | Описание |
|---|---|
resultarray | Массив с названиями полей, которые можно добавить в указанный шаблон реквизитов |
timetime | Информация о времени выполнения запроса |
Описание полей
Названиетип | Описание |
|---|---|
RQ_FIRST_NAMEstring | Имя |
RQ_LAST_NAMEstring | Фамилия |
RQ_SECOND_NAMEstring | Отчество |
RQ_COMPANY_NAMEstring | Сокращенное наименование организации |
RQ_COMPANY_FULL_NAMEstring | Полное наименование организации |
RQ_COMPANY_REG_DATEstring | Дата государственной регистрации |
RQ_DIRECTORstring | Генеральный директор |
RQ_ACCOUNTANTstring | Главный бухгалтер |
RQ_CONTACTstring | Контактное лицо |
RQ_EMAILstring | |
RQ_PHONEstring | Телефон |
RQ_FAXstring | Факс |
RQ_IDENT_DOCstring | Вид документа |
RQ_IDENT_DOC_SERstring | Серия |
RQ_IDENT_DOC_NUMstring | Номер |
RQ_IDENT_DOC_DATEstring | Дата выдачи |
RQ_IDENT_DOC_ISSUED_BYstring | Кем выдан |
RQ_IDENT_DOC_DEP_CODEstring | Код подразделения |
RQ_INNstring | ИНН |
RQ_KPPstring | КПП |
RQ_IFNSstring | ИФНС |
RQ_OGRNstring | ОГРН |
RQ_OGRNIPstring | ОГРНИП |
RQ_OKPOstring | ОКПО |
RQ_OKTMOstring | ОКТМО |
RQ_OKVEDstring | ОКВЭД |
RQ_ST_CERT_SERstring | Серия свидетельства о государственной регистрации |
RQ_ST_CERT_NUMstring | Номер свидетельства о государственной регистрации |
RQ_ST_CERT_DATEstring | Дата свидетельства о государственной регистрации |
UF_CRM_1707997209double | Пользовательское поле типа «Число» |
UF_CRM_1707997236boolean | Пользовательское поле типа «Да/Нет» |
UF_CRM_1707997253datetime | Пользовательское поле типа «Дата» |
UF_CRM_1708012333string | Пользовательское поле типа «Строка» |
Обработка ошибок
HTTP-статус: 40x, 50x
{
"error": "",
"error_description": "Шаблон не найден."
}Возможные коды ошибок
| Код | Описание |
|---|---|
Шаблон не найден | Не найден шаблон, для которого нужно получить список полей, доступных для добавления |
- [](./crm-requisite-preset-field-add)
- [](./crm-requisite-preset-field-update)
- [](./crm-requisite-preset-field-get)
- [](./crm-requisite-preset-field-list)
- [](./crm-requisite-preset-field-delete)
- [](./crm-requisite-preset-field-fields)
💡 Экспертное мнение и рекомендации
Ключевые выводы по теме «Получить поля, доступные для добавления в шаблон реквизитов crm.requisite.pre…»:
Использование современных стандартов D7 при работе с crm.requisite.preset.field.availabletoadd позволяет писать чистый, масштабируемый и безопасный код. Не забывайте обрабатывать исключения (try/catch) и проверять права доступа текущего пользователя перед выполнением критических операций.
Похожая задача в бизнесе?
Помогу автоматизировать процессы и внедрить ИИ
Меня зовут Андрей Горошко. Я Full-stack разработчик и эксперт по 1С-Битрикс. Настраиваю CRM Битрикс24, разрабатываю защищенные API и создаю умных ИИ-агентов для автоматизации рутины.
или на почту: gorandvas@yandex.ru