Мы используем файлы cookie для обеспечения наилучшего взаимодействия с сайтом.
Мы направим доступы в личный кабинет KC Booking на почту или Telegram
Оставьте заявку на получение доступов
Мы направим доступы в личный кабинет KC Delivery на почту или Telegram
Оставьте заявку на получение доступов
Как получать заявки с сайта с иной CMS
Инструкция по интеграции сайта вашего ресторана с системой бронирования Keep Calm Booking для получения заявок на брони в раздел «Уведомления».
1/ Настройка в личном кабинете KC Booking
1. Из бокового меню перейдите в раздел «Настройки». В открывшемся списке выберите подраздел «Настройки организации» /settings/organization.

2. В открывшемся подразделе в поле «Ссылка на Webhook» нажмите на «Сгенерировать ссылку».

3. Скопируйте ссылку в буфер обмена — она понадобится при переходе в кабинет Tilda.
2/ Настройка интеграции с формами на вашем сайте
Соглашения

  • Запрос создания заявки в API выполняется с помощью метода POST
  • Данные ожидаются в JSON формате согласно спецификации RFC 7159
  • Заголовок Accept игнорируется
  • Кодировка данных UTF-8
  • Заголовок Content-Type должен быть "application/json; charset=UTF-8"
  • Заголовок Content-Length должен содержать корректную длину сообщения, следуя спецификации HTTP/1.1

Доступ

Базовый URL для доступа к API соответствует следующему шаблону:~protocol :// url~protocol - https;URL booking.keep-calm.ru/api/v1/:API_KEY/reservation/ — значение берётся из поля «Ссылка Webhook» в разделе «Настройки организации»
Описание структуры полей

Ожидаемый объект JSON с данными:
{
Date: string,
Time: string,
persons: string,
Restaurant: string,
Name: string,
Phone: string,
Textarea: string,
}
Допускается другое именование полей в объекте JSON, в таком случае поля должны быть названы в формате snake_case (через нижнее подчеркивание). На стороне KC Booking в таком случае выполняется сопоставление наименований полей.
Важно

1. Поля Дата визита/Время визита/Телефон/Имя/Ресторан/Количество гостей являются обязательными и должны быть заполнены.

2. Название ресторана в поле Restaurant должно совпадать с названием ресторана в системе KC Booking
Пример

{
"Дата": "10-04-2024",
"Время": "18:30",
"Количество_персон": "На 4 человек",
"name": "Мария Титова",
"phone": "79629112217",
"Пожелания": "Просьба забронировать столик в зале где по-тише.\nТак как будет деловая встреча.",
"restaurant": "Синий лев"
}
Пример запроса через http

curl -H 'Content-Type: application/json ; charset=UTF-8'
-d '{"Date": "05-04-2024","Time": "20:00","persons": "на 4 персоны","Restaurant":"Синий лев","Name":"Диана Курт", "Phone":"79263224451","Textarea":"В центре зала, столик на двоих"}'
-X POST
https://booking.keep-calm.ru/api/v1/dd9a0c14a134ae09d0d25ce5f004907f/reservation
Возвращается ответ с HTTP кодом 201 в виде JSON объект

{
"status": "ok",
"message": "success"
}
Ошибки

Отсутствует API_KEY в системе KC Booking:
{
"statusCode": 404,
"message": "Организация c API KEY fw4amifqzhohefdfbktf4y5y8880ffh5gn62355x отсутствует.",
"error": "Not Found"
}

В передаваем объекте отсутствует поле:
Restaurant
{
"statusCode": 400,
"message": "Отсутствуют поле Restaurant",
"error": "Bad Request"
}
Если у вас не получилось настроить интеграцию, напишите нам — мы поможем 🧠
Если есть вопросы, задайте их команде KC Booking