Блог Горошко Андрея Bitrix24,PHP Получить элементы справочника по типу crm.status.entity.items

Получить элементы справочника по типу crm.status.entity.items

Оптимизация производительности и безопасности — залог успешного проекта на 1С-Битрикс. Данный материал посвящен практическому применению «Получить элементы справочника по типу crm.status.entity.items». Мы подготовили подробный разбор принципов работы и развернутые примеры интеграции.

Получить элементы справочника по типу crm.status.entity.items

> Scope: crm
>
> Кто может выполнять метод: любой пользователь

Метод crm.status.entity.items возвращает все элементы справочника по идентификатору ENTITY_ID с сортировкой по полю SORT.
Метод аналогичен crm.status.list, за исключением того, что в последнем можно определить правила сортировки.

Параметры метода

Название
тип
Описание
entityId*
string
Тип справочника, например DEAL_STAGE, SOURCE. Получить список типов можно методом crm.status.entity.types

Примеры кода

  • cURL (Webhook)
    curl -X POST \
         -H "Content-Type: application/json" \
         -H "Accept: application/json" \
         -d '{"entityId":"DEAL_STAGE"}' \
         https://**put_your_bitrix24_address**/rest/**put_your_user_id_here**/**put_your_webbhook_here**/crm.status.entity.items
  • cURL (OAuth)
    curl -X POST \
    -H "Content-Type: application/json" \
    -H "Accept: application/json" \
    -d '{"entityId":"DEAL_STAGE","auth":"**put_access_token_here**"}' \
    https://**put_your_bitrix24_address**/rest/crm.status.entity.items
  • JS
    try
    {
    	const response = await $b24.callMethod(
    		"crm.status.entity.items",
    		{
    			entityId: "DEAL_STAGE"
    		}
    	);
    	
    	const result = response.getData().result;
    	console.dir(result);
    }
    catch( error )
    {
    	console.error(error);
    }
  • PHP
    try {
        $response = $b24Service
            ->core
            ->call(
                'crm.status.entity.items',
                [
                    'entityId' => 'DEAL_STAGE'
                ]
            );
    
        $result = $response
            ->getResponseData()
            ->getResult();
    
        if ($result->error()) {
            error_log($result->error());
            echo 'Error: ' . $result->error();
        } else {
            echo 'Success: ' . print_r($result->data(), true);
        }
    
    } catch (Throwable $e) {
        error_log($e->getMessage());
        echo 'Error fetching status entity items: ' . $e->getMessage();
    }
  • BX24.js
    BX24.callMethod(
        "crm.status.entity.items",
        {
            entityId: "DEAL_STAGE"
        },
        function(result) {
            if(result.error())
                console.error(result.error());
            else
                console.dir(result.data());
        }
    );
  • PHP CRest
    require_once('crest.php');

    $result = CRest::call(
        'crm.status.entity.items',
        [
            'entityId' => 'DEAL_STAGE'
        ]
    );

    echo '<PRE>';
    print_r($result);
    echo '</PRE>';

Обработка ответа

HTTP-статус: 200

{
    "result": [
        {
            "NAME": "Новая",
            "SORT": 10,
            "STATUS_ID": "NEW"
        },
        {
            "NAME": "Подготовка документов",
            "SORT": 20,
            "STATUS_ID": "PREPARATION"
        },
        {
            "NAME": "Cчет на предоплату",
            "SORT": 30,
            "STATUS_ID": "PREPAYMENT_INVOICE"
        },
        {
            "NAME": "В работе",
            "SORT": 40,
            "STATUS_ID": "EXECUTING"
        },
        {
            "NAME": "Финальный счет",
            "SORT": 50,
            "STATUS_ID": "FINAL_INVOICE"
        },
        {
            "NAME": "Сделка успешна",
            "SORT": 60,
            "STATUS_ID": "WON"
        },
        {
            "NAME": "Сделка провалена",
            "SORT": 70,
            "STATUS_ID": "LOSE"
        },
        {
            "NAME": "Анализ причины провала",
            "SORT": 80,
            "STATUS_ID": "APOLOGY"
        }
    ],
    "time": {
        "start": 1752144806.703358,
        "finish": 1752144806.76889,
        "duration": 0.06553196907043457,
        "processing": 0.010729789733886719,
        "date_start": "2025-07-10T13:53:26+03:00",
        "date_finish": "2025-07-10T13:53:26+03:00",
        "operating_reset_at": 1752145406,
        "operating": 0
    }
}

Возвращаемые данные

Название
тип
Описание
result
array
Массив элементов справочника
time
time
Информация о времени выполнения запроса

Обработка ошибок

HTTP-статус: 400

{
    "error": "The parameter entityId is not defined or invalid.",
    "error_description": "Не указан или некорректен идентификатор справочника."
}

Возможные коды ошибок

КодОписаниеЗначение
400Access denied.Нет прав на выполнение операции
400The parameter entityId is not defined or invalid.Не указан или некорректен идентификатор справочника
  • [](./crm-status-fields)
  • [](./crm-status-list)
  • [](./crm-status-add)
  • [](./crm-status-update)
  • [](./crm-status-delete)

💡 Экспертное мнение и рекомендации

Практические рекомендации:

  • При написании кастомных компонентов для «Получить элементы справочника по типу crm.status.entity.items» всегда разделяйте бизнес-логику и представление (шаблон).
  • Используйте отладку SQL-запросов через конструкцию $wpdb->last_query или стандартный трекер Битрикса, чтобы контролировать нагрузку.

Похожая задача в бизнесе?

Помогу автоматизировать процессы и внедрить ИИ

Меня зовут Андрей Горошко. Я Full-stack разработчик и эксперт по 1С-Битрикс. Настраиваю CRM Битрикс24, разрабатываю защищенные API и создаю умных ИИ-агентов для автоматизации рутины.

Related Post

Перенос интернет-магазина с OpenCart на 1С-Битрикс под ключПеренос интернет-магазина с OpenCart на 1С-Битрикс под ключ

Профессиональная поддержка, модернизация и оптимизация производительности сайта на 1С-Битрикс — это гарантия высокой конверсии, стабильности продаж и защиты от киберугроз. Услуга «Перенос интернет-магазина с OpenCart на 1С-Битрикс под ключ» включает

Как использовать метод SDK crm.company.userfield.update в Битрикс24Как использовать метод SDK crm.company.userfield.update в Битрикс24

Оптимизация производительности и безопасности — залог успешного проекта на 1С-Битрикс. Данный материал посвящен практическому применению «Как использовать метод SDK crm.company.userfield.update в Битрикс24». Мы подготовили подробный разбор принципов работы и развернутые

Удалить сервис ai.engine.unregisterУдалить сервис ai.engine.unregister

Эффективная интеграция и кастомизация функционала в Битрикс24 часто требует работы на уровне API. Сегодня мы подробно рассмотрим «Удалить сервис ai.engine.unregister». Вы узнаете экспертные методики работы с ai.engine.unregister и научитесь избегать