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

Удалить элемент справочника crm.status.delete

При разработке и поддержке проектов на платформе 1С-Битрикс критически важно использовать современные стандарты D7 API. В этом руководстве мы детально изучим тему «Удалить элемент справочника crm.status.delete», разберем архитектурные особенности и предоставим готовые к интеграции примеры кода.

Удалить элемент справочника crm.status.delete

> Scope: crm
>
> Кто может выполнять метод: пользователь с правами администратора CRM

Метод crm.status.delete удаляет элемент справочника по идентификатору.

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

Название
тип
Описание
id*
integer
Идентификатор элемента справочника, который требуется удалить. Получить список идентификаторов можно методом crm.status.list
params
string
Доступные флаги:

— FORCED — флаг принудительного удаления системных элементов. По умолчанию N.
Передавайте значение Y, чтобы удалить элемент, даже если он системный

Примеры кода

Удаление обычного элемента.

  • cURL (Webhook)
    curl -X POST \
         -H "Content-Type: application/json" \
         -H "Accept: application/json" \
         -d '{"id":123}' \
         https://**put_your_bitrix24_address**/rest/**put_your_user_id_here**/**put_your_webbhook_here**/crm.status.delete
  • cURL (OAuth)
    curl -X POST \
    -H "Content-Type: application/json" \
    -H "Accept: application/json" \
    -d '{"id":123,"auth":"**put_access_token_here**"}' \
    https://**put_your_bitrix24_address**/rest/crm.status.delete
  • JS
    try
    {
    	const response = await $b24.callMethod(
    		"crm.status.delete",
    		{
    			id: 123
    		}
    	);
    	
    	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.status.delete',
                [
                    'id' => 123,
                ]
            );
    
        $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 deleting status: ' . $e->getMessage();
    }
  • BX24.js
    BX24.callMethod(
        "crm.status.delete",
        {
            id: 123
        },
        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.delete',
        [
            'id' => 123
        ]
    );

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

Удаление системного элемента.

  • cURL (Webhook)
    curl -X POST -H "Content-Type: application/json" -H "Accept: application/json" -d '{"id":123,"params":{"FORCED":"Y"}}' https://**put_your_bitrix24_address**/rest/**put_your_user_id_here**/**put_your_webbhook_here**/crm.status.delete
  • cURL (OAuth)
    curl -X POST -H "Content-Type: application/json" -H "Accept: application/json" -d '{"id":123,"params":{"FORCED":"Y"},"auth":"**put_access_token_here**"}' https://**put_your_bitrix24_address**/rest/crm.status.delete
  • JS
    try
    {
    	const response = await $b24.callMethod(
    		"crm.status.delete",
    		{
    			id: 123,
    			params: {
    				FORCED: "Y"
    			}
    		}
    	);
    	
    	const result = response.getData().result;
    	console.dir(result);
    }
    catch( error )
    {
    	console.error(error);
    }
  • PHP
    try {
        $response = $b24Service
            ->core
            ->call(
                'crm.status.delete',
                [
                    'id' => 123,
                    'params' => [
                        'FORCED' => 'Y'
                    ]
                ]
            );
    
        $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 deleting CRM status: ' . $e->getMessage();
    }
  • BX24.js
    BX24.callMethod(
        "crm.status.delete",
        {
            id: 123,
            params: {
                FORCED: "Y"
            }
        },
        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.delete',
        [
            'id' => 123,
            'params' => [
                'FORCED' => 'Y'
            ]
        ]
    );

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

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

HTTP-статус: 200

{
    "result": true,
    "time": {
        "start": 1752145688.808395,
        "finish": 1752145688.842539,
        "duration": 0.03414416313171387,
        "processing": 0.010373115539550781,
        "date_start": "2025-07-10T14:08:08+03:00",
        "date_finish": "2025-07-10T14:08:08+03:00",
        "operating_reset_at": 1752146288,
        "operating": 0
    }
}

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

Название
тип
Описание
result
boolean
Корневой элемент ответа, содержит true в случае успеха
time
time
Информация о времени выполнения запроса

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

HTTP-статус: 400

{
    "error": "Invalid identifier.",
    "error_description": "Передан некорректный идентификатор."
}

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

КодОписаниеЗначение
400Access denied.Нет прав на выполнение операции
400Invalid identifier.Передан некорректный идентификатор
400Status is not found.Элемент не найден
400CRM System Status can be deleted only if parameter FORCED is specified and equal to "Y".Системный элемент можно удалить только с параметром FORCED = "Y"
400There are active items in this status.Есть связанные элементы, удаление невозможно
400Error on deleting status.Ошибка при удалении элемента
  • [](./crm-status-fields)
  • [](./crm-status-list)
  • [](./crm-status-get)
  • [](./crm-status-add)
  • [](./crm-status-update)

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

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

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

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

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

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

Related Post

Как обновить и удалить файлыКак обновить и удалить файлы

Каждый PHP-разработчик, работающий с экосистемой Bitrix Framework, должен глубоко понимать работу её ключевых компонентов. В этой статье мы проведем подробный аудит темы «Как обновить и удалить файлы», проанализируем лучшие практики

Как использовать метод SDK crm.requisite.link.list в Битрикс24Как использовать метод SDK crm.requisite.link.list в Битрикс24

При разработке и поддержке проектов на платформе 1С-Битрикс критически важно использовать современные стандарты D7 API. В этом руководстве мы детально изучим тему «Как использовать метод SDK crm.requisite.link.list в Битрикс24», разберем

Изменить задачу tasks.task.updateИзменить задачу tasks.task.update

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