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

Частичная правка: Типы ресурсов бронирования

PATCH /v1/booking-resource-types/:id

Изменяет переданные поля типа ресурса бронирования. Поля, которых нет в теле запроса, сохраняют прежние значения.

Поля передаются в корне JSON, без обёртки fields. В каждом запросе нужен новый code — см. «Известные особенности».

Параметры

Параметр Тип Обяз. Описание
id (path) number да Идентификатор типа. Список: GET /v1/booking-resource-types

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

Поле Тип Обяз. Описание
code string да Новый символьный код типа. Должен отличаться от текущего и от кодов других типов
name string нет Название типа
isInfoNotificationOn boolean | string нет Сообщение клиенту о записи. true / false или "Y" / "N"
isConfirmationNotificationOn boolean | string нет Запрос подтверждения записи
isReminderNotificationOn boolean | string нет Напоминание о записи
isFeedbackNotificationOn boolean | string нет Запрос отзыва
isDelayedNotificationOn boolean | string нет Сообщение клиенту, который опаздывает
isCancellationNotificationOn boolean | string нет Сообщение клиенту об отмене записи
senderCode string | null нет Служба отправки сообщений клиенту, например bitrix24
infoNotificationDelay number | null нет Через сколько секунд после записи отправить сообщение о ней
confirmationNotificationDelay number | null нет За сколько секунд до записи отправить первый запрос подтверждения
confirmationNotificationRepetitions number | null нет Сколько раз повторить запрос подтверждения, не считая первого
confirmationNotificationRepetitionsInterval number | null нет Интервал между повторами запроса подтверждения, в секундах
confirmationCounterDelay number | null нет За сколько секунд до записи неподтверждённая запись попадает в счётчик
reminderNotificationDelay number | null нет За сколько секунд до записи отправить напоминание. -1 — утром в день записи
delayedNotificationDelay number | null нет Через сколько секунд опоздания отправить сообщение клиенту
delayedCounterDelay number | null нет Через сколько секунд опоздания запись попадает в счётчик календаря
cancellationNotificationDelay number | null нет Задержка сообщения об отмене записи, в секундах
templateTypeInfo string нет Шаблон сообщения о записи: inanimate, animate, inanimate_long. Сохраняется, но в карточке типа не возвращается
templateTypeConfirmation string нет Шаблон запроса подтверждения: inanimate, animate, inanimate_long
templateTypeReminder string нет Шаблон напоминания. Значение одно — base
templateTypeFeedback string нет Шаблон запроса отзыва: inanimate, animate
templateTypeDelayed string нет Шаблон сообщения опоздавшему: inanimate, animate

Примеры

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

Terminal
curl -X PATCH "https://vibecode.bitrix24.tech/v1/booking-resource-types/31" \
  -H "X-Api-Key: YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "name": "Мастера маникюра",
    "code": "master-2"
  }'

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

Terminal
curl -X PATCH "https://vibecode.bitrix24.tech/v1/booking-resource-types/31" \
  -H "X-Api-Key: YOUR_APP_KEY" \
  -H "Authorization: Bearer USER_SESSION_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{
    "name": "Мастера маникюра",
    "code": "master-2"
  }'

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

javascript
const res = await fetch('https://vibecode.bitrix24.tech/v1/booking-resource-types/31', {
  method: 'PATCH',
  headers: {
    'X-Api-Key': 'YOUR_API_KEY',
    'Content-Type': 'application/json',
  },
  body: JSON.stringify({
    name: 'Мастера маникюра',
    code: 'master-2',
  }),
})

const { data } = await res.json()
console.log(data.name, data.code)

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

javascript
const res = await fetch('https://vibecode.bitrix24.tech/v1/booking-resource-types/31', {
  method: 'PATCH',
  headers: {
    'X-Api-Key': 'YOUR_APP_KEY',
    'Authorization': 'Bearer USER_SESSION_TOKEN',
    'Content-Type': 'application/json',
  },
  body: JSON.stringify({
    name: 'Мастера маникюра',
    code: 'master-2',
  }),
})

const { data } = await res.json()
console.log(data.name, data.code)

Поля ответа

Поле Тип Описание
success boolean true при успехе
data object Карточка типа после изменения. Поля карточки — в разделе «Поля ответа» страницы Получить тип ресурса бронирования

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

JSON
{
  "success": true,
  "data": {
    "id": 31,
    "code": "master-2",
    "name": "Мастера маникюра",
    "senderCode": null,
    "isInfoNotificationOn": false,
    "isConfirmationNotificationOn": false,
    "isReminderNotificationOn": false,
    "isFeedbackNotificationOn": false,
    "isDelayedNotificationOn": false,
    "isCancellationNotificationOn": false,
    "infoNotificationDelay": null,
    "confirmationNotificationDelay": 86400,
    "confirmationNotificationRepetitions": null,
    "confirmationNotificationRepetitionsInterval": 10800,
    "confirmationCounterDelay": 10800,
    "reminderNotificationDelay": -1,
    "delayedNotificationDelay": 300,
    "delayedCounterDelay": 300,
    "cancellationNotificationDelay": 600,
    "templateTypeConfirmation": "inanimate",
    "templateTypeReminder": "base",
    "templateTypeFeedback": "inanimate",
    "templateTypeDelayed": "inanimate"
  }
}

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

422 — в теле передан текущий code:

JSON
{
  "success": false,
  "error": {
    "code": "BITRIX_ERROR",
    "message": "Resource type with code \"master\" already exists",
    "b24Code": "1011"
  }
}

Ошибки

HTTP Код Описание
404 ENTITY_NOT_FOUND Типа с таким id нет. Сообщение Booking record not found
422 BITRIX_ERROR code совпадает с текущим или с кодом другого типа, b24Code 1011
422 BITRIX_ERROR В теле нет code. Сообщение Internal server error.
400 INVALID_PARAMS id — не целое положительное число. Сообщение id must be a positive safe integer
400 INVALID_PARAMS Пустое тело. Сообщение Provide a non-empty object of fields
400 INVALID_PARAMS Поле не из таблицы «Поля запроса (body)». Сообщение Unknown booking field
400 INVALID_PARAMS Значение поля — объект или массив. Сообщение Fields must contain scalar values
400 READONLY_FIELD В теле передан id. Сообщение id is read-only
401 MISSING_API_KEY Не передан X-Api-Key
401 TOKEN_MISSING У ключа нет токенов Битрикс24
403 SCOPE_DENIED У ключа нет скоупа booking
403 WRITE_BLOCKED_READONLY_KEY Ключ в режиме «Только чтение»
429 RATE_LIMITED Превышена частота запросов. Действующий потолок — в заголовке x-ratelimit-limit
502 BITRIX_RESPONSE_INVALID Битрикс24 вернул ответ неожиданной формы. Если это случилось при перечитывании карточки после записи, изменения уже сохранены — проверьте тип через получение перед повтором

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

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

Обновление требует нового code. Запрос без code отклоняется с 422 BITRIX_ERROR и сообщением Internal server error., запрос с текущим кодом — с 422 BITRIX_ERROR о том, что такой код уже есть. Чтобы изменить другие поля и сохранить прежний код, сделайте два запроса: первый — с временным code, второй — с прежним.

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