← К заметкам

Заметки

booking.v1 не находит ресурс из calendar.resource.list

Ресурс виден в calendar.resource.list, но booking.v1.booking.add отвечает Some resources were not found. Совпадение слова «бронирование» в названиях здесь обманчиво: это разные API.

Что используетеГде получать ресурсы
Календарное бронирование ресурсовcalendar.resource.list
Онлайн-запись, booking.v1booking.v1.resource.list

Параметр resourceIds нового бронирования должен содержать ID из второго метода. Перенос числового ID из календаря не создаёт соответствующий ресурс в Онлайн-записи.

Для booking.v1.booking.add тело запроса выглядит так. Вместо 7 нужен реальный ID из booking.v1.resource.list; время задаётся Unix timestamp и часовым поясом IANA.

{
  "fields": {
    "name": "Консультация",
    "resourceIds": [7],
    "datePeriod": {
      "from": { "timestamp": 1790848800, "timezone": "Europe/Moscow" },
      "to": { "timestamp": 1790852400, "timezone": "Europe/Moscow" }
    }
  }
}

В примере бронь длится час. Замените обе границы на нужное время, сохранив порядок начала и окончания.

Если задача состоит в заполнении пользовательского поля CRM «Бронирование ресурсов», создание записи через booking.v1 само по себе это поле не заполняет. Для чтения календарных броней существует calendar.resource.booking.list. Не выбирайте другой API только потому, что в нём нашёлся метод с окончанием add.

Документация: booking.v1.booking.add; calendar.resource.list; calendar.resource.booking.list.