# sale.delivery.handler.update

URL: https://chugunov.pro/api-bitrix24/sale/delivery/handler/sale-delivery-handler-update/
Проверено на Битрикс24 REST API, обновлено 11.09.2026 (ревизия источника fb39d6c).
Источник: официальная документация Битрикс24 (bitrix-tools/b24-rest-docs, лицензия MIT, © Bitrix). Справочник независимый, официальной документацией не является.

Обновить обработчик службы доставки
Scope: `delivery`
Кто может выполнять метод: администратор CRM

## Описание

Метод `sale.delivery.handler.update` обновляет обработчик службы доставки.

## Параметры

- `ID` `sale_delivery_handler.ID` — обязательный. Идентификатор обработчика службы доставки.
  Получить идентификаторы обработчиков службы доставки можно с помощью метода [`sale.delivery.handler.list`](https://chugunov.pro/api-bitrix24/sale/delivery/handler/sale-delivery-handler-list/)
- `NAME` `string` — необязательный. Название обработчика службы доставки
- `CODE` `string` — необязательный. Символьный код обработчика службы доставки
- `SORT` `integer` — необязательный. Сортировка
- `DESCRIPTION` `string` — необязательный. Описание обработчика службы доставки
- `SETTINGS` `object` — необязательный. Объект, содержащий информацию о настройках обработчика службы доставки (подробное описание приведено [ниже](#parametr-settings))
- `PROFILES` `object[]` — необязательный. Массив, содержащий список объектов профилей доставки (подробное описание приведено [ниже](#parametr-profiles)).
  Подразумевается, что у обработчика службы доставки должен быть как минимум 1 профиль

### Параметр SETTINGS

- `CALCULATE_URL` `string` — обязательный. URL для расчета стоимости доставки.
  На данный URL приходят данные о посылке (что доставить, куда и как), стоимость доставки которой нужно рассчитать в ответе.
  Формат запроса и ответа детально описан в документации по веб-хуку **Расчет стоимости доставки**
- `CREATE_DELIVERY_REQUEST_URL` `string` — необязательный. URL для создания заказа на доставку.
  На данный URL приходят данные о посылке (что доставить, куда и как), заказ на которую нужно оформить в службе доставки.
  Формат запроса и ответа детально описан в документации по веб-хуку **Создание заказа на доставку**
- `CANCEL_DELIVERY_REQUEST_URL` `string` — необязательный. URL для отмены заказа на доставку
  На данный URL приходят данные о посылке (что доставить, куда и как), заказ на которую нужно отменить в службе доставки.
  Формат запроса и ответа детально описан в документации по веб-хуку **Отмена заказа на доставку**
- `HAS_CALLBACK_TRACKING_SUPPORT` `string` — необязательный. Индикатор того, будет ли служба доставки присылать оповещения о статусе заказа на доставку (см. метод [`sale.delivery.request.sendmessage`](https://chugunov.pro/api-bitrix24/sale/delivery/delivery-request/sale-delivery-request-send-message/)). 
  В случае, если поддержка событий указана, то в интерфейсе менеджера при заказе доставки будет создано дело на доставку, в которое могут транслироваться изменения, связанные с текущим статусом доставки.
  Возможные значения:
  - `Y` — есть поддержка
  - `N` — нет поддержки
- `CONFIG` `object` — необязательный. Массив объектов с доступными настройками для службы доставки, создаваемой с использованием данного обработчика (подробное описание приведено [ниже](#parametr-config))

### Параметр CONFIG

- `TYPE` `string` — обязательный. Тип поля настройки
  Возможные значения:
  - `STRING` — строка
  - `Y/N` — чекбокс (да / нет)
  - `NUMBER` — число
  - `ENUM` — список
  - `DATE` — дата
  - `LOCATION` — местоположение
- `CODE` `string` — обязательный. Символьный код настройки
- `NAME` `string` — обязательный. Название настройки
- `OPTIONS` `object` — необязательный. Список опций для выбора. Объект в формате `ключ=значение`. Где ключ — код опции, а значение — опция.
  Пример:
  ```
  {
     "Option1Code": "Option1Value",
     "Option2Code": "Option2Value",
     "Option3Code": "Option3Value"
  }
  ```
  Параметр актуален только для настройки типа `ENUM`

### Параметр PROFILES

- `NAME` `string` — обязательный. Название профиля обработчика службы доставки
- `CODE` `string` — обязательный. Символьный код профиля обработчика службы доставки
- `DESCRIPTION` `string` — необязательный. Описание профиля обработчика службы доставки

## Ответ

HTTP-статус: 200

```json
{
   "result":true,
   "time":{
      "start":1713857588.711742,
      "finish":1713857589.121912,
      "duration":0.4101700782775879,
      "processing":0.02155303955078125,
      "date_start":"2024-04-23T10:33:08+03:00",
      "date_finish":"2024-04-23T10:33:09+03:00"
   }
}
```

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

- `result` `boolean`. Результат обновления обработчика службы доставки
- `time` `time`. Информация о времени выполнения запроса

## Ошибки

HTTP-статус: 400

```json
{
   "error":"ERROR_HANDLER_NOT_FOUND",
   "error_description":"Handler not found"
}
```

- `ERROR_HANDLER_NOT_FOUND` — Обработчик службы доставки с указанным идентификатором не найден. 400
- `ERROR_CHECK_FAILURE` — Ошибка валидации входящих параметров (детали в описании ошибки). 400
- `ERROR_HANDLER_UPDATE` — Ошибка при попытке обновления обработчика службы доставки. 400
- `ERROR_HANDLER_ALREADY_EXIST` — Обработчик службы доставки с указанным кодом уже существует. 400
- `ACCESS_DENIED` — Недостаточно прав для обновления обработчика службы доставки. 403

## Примеры запроса

### cURL (Webhook)

```bash
curl -X POST \
-H "Content-Type: application/json" \
-H "Accept: application/json" \
-d '{"ID":14,"CODE":"uber","NAME":"New Uber","DESCRIPTION":"New Uber Description","SORT":300,"SETTINGS":{"CALCULATE_URL":"https://gateway.bx/calculate.php","CREATE_DELIVERY_REQUEST_URL":"https://gateway.bx/create_delivery_request.php","CANCEL_DELIVERY_REQUEST_URL":"https://gateway.bx/cancel_delivery_request.php","HAS_CALLBACK_TRACKING_SUPPORT":"N","CONFIG":[{"TYPE":"STRING","CODE":"SETTING_1","NAME":"String Example"},{"TYPE":"Y/N","CODE":"SETTING_2","NAME":"Checkbox Example"},{"TYPE":"NUMBER","CODE":"SETTING_3","NAME":"Number Example"},{"TYPE":"ENUM","CODE":"SETTING_4","NAME":"Enum Example","OPTIONS":{"Option1Code":"Option1Value","Option2Code":"Option2Value","Option3Code":"Option3Value","Option4Code":"Option4Value","Option5Code":"Option5Value"}},{"TYPE":"DATE","CODE":"SETTING_5","NAME":"Date Example"},{"TYPE":"LOCATION","CODE":"SETTING_6","NAME":"Location Example"}]},"PROFILES":[{"NAME":"New Taxi","CODE":"TAXI","DESCRIPTION":"New Taxi Delivery"},{"NAME":"New Cargo","CODE":"CARGO","DESCRIPTION":"New Cargo Delivery"}]}' \
https://**put_your_bitrix24_address**/rest/**put_your_user_id_here**/**put_your_webhook_here**/sale.delivery.handler.update
```

### cURL (OAuth)

```bash
curl -X POST \
-H "Content-Type: application/json" \
-H "Accept: application/json" \
-d '{"ID":14,"CODE":"uber","NAME":"New Uber","DESCRIPTION":"New Uber Description","SORT":300,"SETTINGS":{"CALCULATE_URL":"https://gateway.bx/calculate.php","CREATE_DELIVERY_REQUEST_URL":"https://gateway.bx/create_delivery_request.php","CANCEL_DELIVERY_REQUEST_URL":"https://gateway.bx/cancel_delivery_request.php","HAS_CALLBACK_TRACKING_SUPPORT":"N","CONFIG":[{"TYPE":"STRING","CODE":"SETTING_1","NAME":"String Example"},{"TYPE":"Y/N","CODE":"SETTING_2","NAME":"Checkbox Example"},{"TYPE":"NUMBER","CODE":"SETTING_3","NAME":"Number Example"},{"TYPE":"ENUM","CODE":"SETTING_4","NAME":"Enum Example","OPTIONS":{"Option1Code":"Option1Value","Option2Code":"Option2Value","Option3Code":"Option3Value","Option4Code":"Option4Value","Option5Code":"Option5Value"}},{"TYPE":"DATE","CODE":"SETTING_5","NAME":"Date Example"},{"TYPE":"LOCATION","CODE":"SETTING_6","NAME":"Location Example"}]},"PROFILES":[{"NAME":"New Taxi","CODE":"TAXI","DESCRIPTION":"New Taxi Delivery"},{"NAME":"New Cargo","CODE":"CARGO","DESCRIPTION":"New Cargo Delivery"}],"auth":"**put_access_token_here**"}' \
https://**put_your_bitrix24_address**/rest/sale.delivery.handler.update
```

### JS (TS)

```ts
// 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

try {
  const response = await $b24.actions.v2.call.make<boolean>({
    method: 'sale.delivery.handler.update',
    params: {
      ID: 14,
      CODE: 'uber',
      NAME: 'New Uber',
      DESCRIPTION: 'New Uber Description',
      SORT: 300,
      SETTINGS: {
        CALCULATE_URL: 'https://gateway.bx/calculate.php',
        CREATE_DELIVERY_REQUEST_URL: 'https://gateway.bx/create_delivery_request.php',
        CANCEL_DELIVERY_REQUEST_URL: 'https://gateway.bx/cancel_delivery_request.php',
        HAS_CALLBACK_TRACKING_SUPPORT: 'N',
        CONFIG: [
          { TYPE: 'STRING', CODE: 'SETTING_1', NAME: 'String Example' },
          { TYPE: 'Y/N', CODE: 'SETTING_2', NAME: 'Checkbox Example' },
          { TYPE: 'NUMBER', CODE: 'SETTING_3', NAME: 'Number Example' },
          {
            TYPE: 'ENUM',
            CODE: 'SETTING_4',
            NAME: 'Enum Example',
            OPTIONS: {
              Option1Code: 'Option1Value',
              Option2Code: 'Option2Value',
              Option3Code: 'Option3Value',
              Option4Code: 'Option4Value',
              Option5Code: 'Option5Value',
            },
          },
          { TYPE: 'DATE', CODE: 'SETTING_5', NAME: 'Date Example' },
          { TYPE: 'LOCATION', CODE: 'SETTING_6', NAME: 'Location Example' },
        ],
      },
      PROFILES: [
        { NAME: 'New Taxi', CODE: 'TAXI', DESCRIPTION: 'New Taxi Delivery' },
        { NAME: 'New Cargo', CODE: 'CARGO', DESCRIPTION: 'New Cargo Delivery' },
      ],
    },
    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('Handler updated successfully:', result)
  }
} catch (error) {
  // Thrown on transport or SDK failures (AjaxError, SdkError, etc.)
  console.error(error)
}
```

### JS (UMD)

```html
<!-- 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 updateDeliveryHandler() {
    try {
      // Initialize the SDK inside a Bitrix24 frame
      const $b24 = await B24Js.initializeB24Frame()

      const response = await $b24.actions.v2.call.make({
        method: 'sale.delivery.handler.update',
        params: {
          ID: 14,
          CODE: 'uber',
          NAME: 'New Uber',
          DESCRIPTION: 'New Uber Description',
          SORT: 300,
          SETTINGS: {
            CALCULATE_URL: 'https://gateway.bx/calculate.php',
            CREATE_DELIVERY_REQUEST_URL: 'https://gateway.bx/create_delivery_request.php',
            CANCEL_DELIVERY_REQUEST_URL: 'https://gateway.bx/cancel_delivery_request.php',
            HAS_CALLBACK_TRACKING_SUPPORT: 'N',
            CONFIG: [
              { TYPE: 'STRING', CODE: 'SETTING_1', NAME: 'String Example' },
              { TYPE: 'Y/N', CODE: 'SETTING_2', NAME: 'Checkbox Example' },
              { TYPE: 'NUMBER', CODE: 'SETTING_3', NAME: 'Number Example' },
              {
                TYPE: 'ENUM',
                CODE: 'SETTING_4',
                NAME: 'Enum Example',
                OPTIONS: {
                  Option1Code: 'Option1Value',
                  Option2Code: 'Option2Value',
                  Option3Code: 'Option3Value',
                  Option4Code: 'Option4Value',
                  Option5Code: 'Option5Value',
                },
              },
              { TYPE: 'DATE', CODE: 'SETTING_5', NAME: 'Date Example' },
              { TYPE: 'LOCATION', CODE: 'SETTING_6', NAME: 'Location Example' },
            ],
          },
          PROFILES: [
            { NAME: 'New Taxi', CODE: 'TAXI', DESCRIPTION: 'New Taxi Delivery' },
            { NAME: 'New Cargo', CODE: 'CARGO', DESCRIPTION: 'New Cargo Delivery' },
          ],
        },
        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('Handler updated successfully:', result)
    } catch (error) {
      // Thrown on transport or SDK failures (AjaxError, SdkError, etc.)
      console.error(error)
    }
  }

  document.addEventListener('DOMContentLoaded', updateDeliveryHandler)
</script>
```

### Python

```python
from b24pysdk.errors import BitrixAPIError, BitrixSDKException

settings = {
    "CALCULATE_URL": "https://gateway.bx/calculate.php",
    "CREATE_DELIVERY_REQUEST_URL": "https://gateway.bx/create_delivery_request.php",
    "CANCEL_DELIVERY_REQUEST_URL": "https://gateway.bx/cancel_delivery_request.php",
    "HAS_CALLBACK_TRACKING_SUPPORT": "N",
    "CONFIG": [
        {
            "TYPE": "STRING",
            "CODE": "SETTING_1",
            "NAME": "String Example",
        },
        {
            "TYPE": "Y/N",
            "CODE": "SETTING_2",
            "NAME": "Checkbox Example",
        },
        {
            "TYPE": "NUMBER",
            "CODE": "SETTING_3",
            "NAME": "Number Example",
        },
        {
            "TYPE": "ENUM",
            "CODE": "SETTING_4",
            "NAME": "Enum Example",
            "OPTIONS": {
                "Option1Code": "Option1Value",
                "Option2Code": "Option2Value",
                "Option3Code": "Option3Value",
                "Option4Code": "Option4Value",
                "Option5Code": "Option5Value",
            },
        },
        {
            "TYPE": "DATE",
            "CODE": "SETTING_5",
            "NAME": "Date Example",
        },
        {
            "TYPE": "LOCATION",
            "CODE": "SETTING_6",
            "NAME": "Location Example",
        },
    ],
}

profiles = [
    {
        "NAME": "New Taxi",
        "CODE": "TAXI",
        "DESCRIPTION": "New Taxi Delivery",
    },
    {
        "NAME": "New Cargo",
        "CODE": "CARGO",
        "DESCRIPTION": "New Cargo Delivery",
    },
]

try:
    bitrix_response = client.sale.delivery.handler.update(
        bitrix_id=14,
        code='uber',
        name='New Uber',
        sort=300,
        description='New Uber Description',
        settings=settings,
        profiles=profiles,
    ).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}")
```

### PHP

```php
try {
    $response = $b24Service
        ->core
        ->call(
            'sale.delivery.handler.update',
            [
                'ID'          => 14,
                'CODE'        => "uber",
                'NAME'        => "New Uber",
                'DESCRIPTION' => "New Uber Description",
                'SORT'        => 300,
                'SETTINGS'    => [
                    'CALCULATE_URL'               => "https://gateway.bx/calculate.php",
                    'CREATE_DELIVERY_REQUEST_URL' => "https://gateway.bx/create_delivery_request.php",
                    'CANCEL_DELIVERY_REQUEST_URL' => "https://gateway.bx/cancel_delivery_request.php",
                    'HAS_CALLBACK_TRACKING_SUPPORT' => "N",
                    'CONFIG'                      => [
                        [
                            'TYPE' => "STRING",
                            'CODE' => "SETTING_1",
                            'NAME' => "String Example",
                        ],
                        [
                            'TYPE' => "Y/N",
                            'CODE' => "SETTING_2",
                            'NAME' => "Checkbox Example",
                        ],
                        [
                            'TYPE' => "NUMBER",
                            'CODE' => "SETTING_3",
                            'NAME' => "Number Example",
                        ],
                        [
                            'TYPE'    => "ENUM",
                            'CODE'    => "SETTING_4",
                            'NAME'    => "Enum Example",
                            'OPTIONS' => [
                                "Option1Code" => "Option1Value",
                                "Option2Code" => "Option2Value",
                                "Option3Code" => "Option3Value",
                                "Option4Code" => "Option4Value",
                                "Option5Code" => "Option5Value",
                            ],
                        ],
                        [
                            'TYPE' => "DATE",
                            'CODE' => "SETTING_5",
                            'NAME' => "Date Example",
                        ],
                        [
                            'TYPE' => "LOCATION",
                            'CODE' => "SETTING_6",
                            'NAME' => "Location Example",
                        ],
                    ],
                ],
                'PROFILES'    => [
                    [
                        'NAME'        => "New Taxi",
                        'CODE'        => "TAXI",
                        'DESCRIPTION' => "New Taxi Delivery",
                    ],
                    [
                        'NAME'        => "New Cargo",
                        'CODE'        => "CARGO",
                        'DESCRIPTION' => "New Cargo Delivery",
                    ],
                ],
            ]
        );

    $result = $response
        ->getResponseData()
        ->getResult();

    echo 'Success: ' . print_r($result, true);

} catch (Throwable $e) {
    error_log($e->getMessage());
    echo 'Error updating delivery handler: ' . $e->getMessage();
}
```

### BX24.js

```js
BX24.callMethod(
    'sale.delivery.handler.update', {
        ID: 14,
        CODE: "uber",
        NAME: "New Uber",
        DESCRIPTION: "New Uber Description",
        SORT: 300,
        SETTINGS: {
            CALCULATE_URL: "https://gateway.bx/calculate.php",
            CREATE_DELIVERY_REQUEST_URL: "https://gateway.bx/create_delivery_request.php",
            CANCEL_DELIVERY_REQUEST_URL: "https://gateway.bx/cancel_delivery_request.php",
            HAS_CALLBACK_TRACKING_SUPPORT: "N",
            CONFIG: [{
                    TYPE: "STRING",
                    CODE: "SETTING_1",
                    NAME: "String Example",
                },
                {
                    TYPE: "Y/N",
                    CODE: "SETTING_2",
                    NAME: "Checkbox Example",
                },
                {
                    TYPE: "NUMBER",
                    CODE: "SETTING_3",
                    NAME: "Number Example",
                },
                {
                    TYPE: "ENUM",
                    CODE: "SETTING_4",
                    NAME: "Enum Example",
                    OPTIONS: {
                        "Option1Code": "Option1Value",
                        "Option2Code": "Option2Value",
                        "Option3Code": "Option3Value",
                        "Option4Code": "Option4Value",
                        "Option5Code": "Option5Value",
                    },
                },
                {
                    TYPE: "DATE",
                    CODE: "SETTING_5",
                    NAME: "Date Example",
                },
                {
                    TYPE: "LOCATION",
                    CODE: "SETTING_6",
                    NAME: "Location Example",
                },
            ],
        },
        PROFILES: [{
                NAME: "New Taxi",
                CODE: "TAXI",
                DESCRIPTION: "New Taxi Delivery",
            },
            {
                NAME: "New Cargo",
                CODE: "CARGO",
                DESCRIPTION: "New Cargo Delivery",
            },
        ],
    },
    function(result) {
        if (result.error()) {
            console.error(result.error());
        } else {
            console.info(result.data());
        }
    }
);
```

### PHP CRest

```php
require_once('crest.php');

$result = CRest::call(
    'sale.delivery.handler.update',
    [
        'ID' => 14,
        'CODE' => "uber",
        'NAME' => "New Uber",
        'DESCRIPTION' => "New Uber Description",
        'SORT' => 300,
        'SETTINGS' => [
            'CALCULATE_URL' => "https://gateway.bx/calculate.php",
            'CREATE_DELIVERY_REQUEST_URL' => "https://gateway.bx/create_delivery_request.php",
            'CANCEL_DELIVERY_REQUEST_URL' => "https://gateway.bx/cancel_delivery_request.php",
            'HAS_CALLBACK_TRACKING_SUPPORT' => "N",
            'CONFIG' => [
                ['TYPE' => "STRING", 'CODE' => "SETTING_1", 'NAME' => "String Example"],
                ['TYPE' => "Y/N", 'CODE' => "SETTING_2", 'NAME' => "Checkbox Example"],
                ['TYPE' => "NUMBER", 'CODE' => "SETTING_3", 'NAME' => "Number Example"],
                [
                    'TYPE' => "ENUM",
                    'CODE' => "SETTING_4",
                    'NAME' => "Enum Example",
                    'OPTIONS' => [
                        "Option1Code" => "Option1Value",
                        "Option2Code" => "Option2Value",
                        "Option3Code" => "Option3Value",
                        "Option4Code" => "Option4Value",
                        "Option5Code" => "Option5Value",
                    ],
                ],
                ['TYPE' => "DATE", 'CODE' => "SETTING_5", 'NAME' => "Date Example"],
                ['TYPE' => "LOCATION", 'CODE' => "SETTING_6", 'NAME' => "Location Example"],
            ],
        ],
        'PROFILES' => [
            ['NAME' => "New Taxi", 'CODE' => "TAXI", 'DESCRIPTION' => "New Taxi Delivery"],
            ['NAME' => "New Cargo", 'CODE' => "CARGO", 'DESCRIPTION' => "New Cargo Delivery"],
        ],
    ]
);

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

### Go

```go
// client и ctx уже созданы — см. раздел «SDK для Go»
res, err := client.Core().Call(ctx, "sale.delivery.handler.update", b24.Params{
	"ID":          14,
	"CODE":        "uber",
	"NAME":        "New Uber",
	"DESCRIPTION": "New Uber Description",
	"SORT":        300,
	"SETTINGS": b24.Params{
		"CALCULATE_URL":                 "https://gateway.bx/calculate.php",
		"CREATE_DELIVERY_REQUEST_URL":   "https://gateway.bx/create_delivery_request.php",
		"CANCEL_DELIVERY_REQUEST_URL":   "https://gateway.bx/cancel_delivery_request.php",
		"HAS_CALLBACK_TRACKING_SUPPORT": "N",
		"CONFIG": []b24.Params{
			{
				"TYPE": "STRING",
				"CODE": "SETTING_1",
				"NAME": "String Example",
			},
			{
				"TYPE": "Y/N",
				"CODE": "SETTING_2",
				"NAME": "Checkbox Example",
			},
			{
				"TYPE": "NUMBER",
				"CODE": "SETTING_3",
				"NAME": "Number Example",
			},
			{
				"TYPE": "ENUM",
				"CODE": "SETTING_4",
				"NAME": "Enum Example",
				"OPTIONS": b24.Params{
					"Option1Code": "Option1Value",
					"Option2Code": "Option2Value",
					"Option3Code": "Option3Value",
					"Option4Code": "Option4Value",
					"Option5Code": "Option5Value",
				},
			},
			{
				"TYPE": "DATE",
				"CODE": "SETTING_5",
				"NAME": "Date Example",
			},
			{
				"TYPE": "LOCATION",
				"CODE": "SETTING_6",
				"NAME": "Location Example",
			},
		},
	},
	"PROFILES": []b24.Params{
		{
			"NAME":        "New Taxi",
			"CODE":        "TAXI",
			"DESCRIPTION": "New Taxi Delivery",
		},
		{
			"NAME":        "New Cargo",
			"CODE":        "CARGO",
			"DESCRIPTION": "New Cargo Delivery",
		},
	},
})
if err != nil {
	return fmt.Errorf("sale.delivery.handler.update: %w", err)
}

var ok bool
if err := json.Unmarshal(res.Result, &ok); err != nil {
	return fmt.Errorf("разбор ответа: %w", err)
}
fmt.Println("выполнено:", ok)
```

Оригинал в официальной документации: https://apidocs.bitrix24.ru/api-reference/sale/delivery/handler/sale-delivery-handler-update.html
