Для AI-агентов: markdown этой страницы — /docs-content/entities/delivery-services/update.md индекс документации — /llms.txt

Обновить службу доставки

PATCH /v1/delivery-services/:id

Частично обновляет службу доставки по идентификатору, сохраняя значения полей, которые не переданы в запросе.

Поля передаются в корне JSON без обёртки fields.

Параметры

Параметр Тип Обяз. Описание
id (path) integer да Положительный безопасный целочисленный идентификатор из списка служб доставки

Поля запроса (body)

Поле Тип Обяз. Описание
name string нет Название службы. Пустая строка и "0" не допускаются
currency string нет Код валюты, например USD. Список валют
description string нет Описание службы
sort integer нет Индекс сортировки
active string нет Активность службы, например Y или N
logo string[] нет Два непустых элемента: имя файла и его содержимое в base64. Размер файла после декодирования — до 2 МиБ

Тело должно содержать хотя бы одно поле. Размер JSON — до 3 МиБ.

restCode и config задаются только при создании службы.

Примеры

curl — личный ключ

Terminal
curl -X PATCH "https://vibecode.bitrix24.tech/v1/delivery-services/85" \
  -H "X-Api-Key: YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
  "name": "Курьерская доставка по адресу"
}'

curl — OAuth-приложение

Terminal
curl -X PATCH "https://vibecode.bitrix24.tech/v1/delivery-services/85" \
  -H "X-Api-Key: YOUR_APP_KEY" \
  -H "Authorization: Bearer USER_SESSION_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{
  "name": "Курьерская доставка по адресу"
}'

JavaScript — личный ключ

javascript
const res = await fetch('https://vibecode.bitrix24.tech/v1/delivery-services/85', {
  method: 'PATCH',
  headers: {
    'X-Api-Key': 'YOUR_API_KEY',
    'Content-Type': 'application/json',
  },
  body: JSON.stringify({
    name: 'Курьерская доставка по адресу',
  }),
})

const { success, data } = await res.json()
console.log(data.id)

JavaScript — OAuth-приложение

javascript
const res = await fetch('https://vibecode.bitrix24.tech/v1/delivery-services/85', {
  method: 'PATCH',
  headers: {
    'X-Api-Key': 'YOUR_APP_KEY',
    'Authorization': 'Bearer USER_SESSION_TOKEN',
    'Content-Type': 'application/json',
  },
  body: JSON.stringify({
    name: 'Курьерская доставка по адресу',
  }),
})

const { success, data } = await res.json()
console.log(data.id)

Поля ответа

HTTP-статус — 200 OK. Возвращается обновлённая запись.

RO — поля только для чтения.

Поле Тип Описание
success boolean true при успехе
data object Обновлённая служба доставки
data.id integer Идентификатор службы. RO
data.parentId integer | null Идентификатор родительской службы или null. RO
data.name string | null Название службы
data.active string | null Активность службы
data.description string | null Описание службы
data.currency string | null Код валюты
data.sort integer | null Индекс сортировки
data.logotype integer | null Идентификатор файла логотипа, не URL, или null. RO. Для записи используется logo

Пример ответа

JSON
{
  "success": true,
  "data": {
    "id": 85,
    "parentId": null,
    "name": "Курьерская доставка по адресу",
    "active": "N",
    "description": "",
    "currency": "USD",
    "sort": 100,
    "logotype": null
  }
}

Пример ответа при ошибке

400 — в теле передано поле logotype вместо logo:

JSON
{
  "success": false,
  "error": {
    "code": "READONLY_FIELD",
    "message": "Field 'logotype' is not writable for this operation"
  }
}

Ошибки

HTTP error.code Описание
400 INVALID_PARAMS id не является положительным безопасным целым числом, неверный тип поля или некорректный файл в logo
400 MISSING_REQUIRED_FIELDS Тело не является непустым JSON-объектом либо name равен пустой строке или "0"
400 READONLY_FIELD В теле есть поле вне таблицы полей запроса, в том числе logotype, restCode или config
404 ENTITY_NOT_FOUND Служба с указанным id не найдена при обновлении
404 ENTITY_NOT_FOUND После успешной записи обновлённая служба не найдена при чтении результата
413 PAYLOAD_TOO_LARGE Файл логотипа превышает 2 МиБ или тело JSON превышает 3 МиБ
422 BITRIX_ERROR Битрикс24 отклонил или не подтвердил обновление. Причина указана в error.message
502 BITRIX_RESPONSE_INVALID Ответ Битрикс24 на обновление имеет некорректную структуру
502 BITRIX_RESPONSE_INVALID Не удалось прочитать корректную запись после обновления
403 BITRIX_ACCESS_DENIED Нет права на изменение службы, служба создана без REST-обработчика или принадлежит другому OAuth-приложению
401 TOKEN_MISSING У API-ключа нет настроенных токенов Битрикс24
403 SCOPE_DENIED У API-ключа нет скоупа delivery
403 WRITE_BLOCKED_READONLY_KEY API-ключ работает в режиме только для чтения

Полный список общих ошибок API — Ошибки.

Известные особенности

Ошибка при чтении результата не означает, что изменение не сохранилось. Перед повтором запроса проверьте службу через получение по идентификатору.

Смотрите также