Перейти к основному содержимому

Коды ошибок API

Обзор

Все ошибки GuestMe API возвращаются в JSON-формате с кодом ошибки, сообщением и дополнительными параметрами.


Формат ошибки

Структура

[
{
"message": "Описание ошибки на русском языке",
"code": "error_code_name",
"params": {
"key": "value"
}
}
]

Пример

[
{
"message": "Booking date is incorrect: cannot be created in the past",
"code": "booking_incorrect_date",
"params": {
"date": "2025-08-01T10:00:00"
}
}
]

Ошибки бронирования

booking_incorrect_date

Описание: Указанная дата резерва некорректна (в прошлом или не попадает в расписание).

HTTP статус: 400 Bad Request

Причины:

  • Дата в прошлом
  • Дата не попадает в расписание работы ресторана
  • Дата не попадает в расписание приёма резервов

Решение:

  • Проверьте расписание работы ресторана
  • Выберите корректную дату и время
  • Убедитесь, что время указано с правильным часовым поясом

Пример:

{
"message": "Booking date is incorrect: cannot be created in the past",
"code": "booking_incorrect_date",
"params": {
"date": "2025-08-01T10:00:00"
}
}

booking_incompatible_state

Описание: Попытка отменить резерв в неподходящем статусе.

HTTP статус: 409 Bad Request

Детали: Отмена возможна только в статусах CREATED или SENT

Решение:

  • Проверьте текущий статус резерва
  • Отменять можно только резервы в статусе CREATED или SENT

guest_have_not_closed_booking

Описание: На один номер телефона может быть только одна активная бронь в ресторане.

HTTP статус: 409 Bad Request

Решение:

  • Проверьте существующие резервы для этого номера телефона
  • Отмените или завершите предыдущий резерв
  • Создайте новый резерв после закрытия старого

Ошибки ресторана

restaurant_guest_acquisition_is_disabled

Описание: Канал привлечения гостей в ресторане отключен.

HTTP статус: 409 Bad Request

Причина: У ресторана отключена возможность онлайн-бронирования (guestAcquisitionChannelEnabled = false)

Решение:

  • Проверьте поле properties.guestAcquisitionChannelEnabled в объекте ресторана
  • Выберите другой ресторан с включённым онлайн-бронированием
  • Обратитесь к менеджеру ресторана для включения функции

Ошибки подтверждения телефона

restaurant_code_confirmation_is_disabled

Описание: Шлюз подтверждения номера телефона по коду отключен в ресторане.

HTTP статус: 409 Bad Request

Решение:

  • Используйте собственную систему подтверждения телефонов
  • Обратитесь к менеджеру ресторана для включения шлюза

mobile_confirmation_code_is_incorrect

Описание: Неверный код подтверждения телефона.

HTTP статус: 409 Bad Request

Решение:

  • Попросите пользователя ввести код заново
  • Проверьте, что пользователь вводит последний полученный код
  • При необходимости отправьте код повторно

mobile_confirmation_code_is_not_expired

Описание: Код подтверждения телефона ещё не истёк, нельзя отправить новый.

HTTP статус: 409 Bad Request

Решение:

  • Подождите истечения срока действия текущего кода (обычно 5 минут)
  • Используйте текущий код для подтверждения

Ошибки аутентификации

401 Unauthorized

Описание: Неверные учётные данные или истёк срок действия токена.

Причины:

  • Неверный client_id или client_secret
  • Токен доступа истёк
  • Токен доступа недействителен

Решение:

  • Проверьте правильность client_id и client_secret
  • Получите новый токен доступа
  • Убедитесь, что используете актуальный токен

Ошибки сервера

500 Internal Server Error

Описание: Внутренняя ошибка сервера.

Решение:

  • Повторите запрос через несколько секунд
  • Если ошибка повторяется, обратитесь в техподдержку

503 Service Unavailable

Описание: Сервис временно недоступен.

Причины:

  • Плановое техническое обслуживание
  • Перегрузка сервера

Решение:

  • Повторите запрос через несколько минут
  • Реализуйте exponential backoff для повторных запросов
  • Подпишитесь на уведомления о техническом обслуживании

Таблица ошибок

КодHTTPОписаниеДействие
booking_incorrect_date400Некорректная дата резерваВыбрать корректную дату
booking_incompatible_state409Неподходящий статус для отменыПроверить статус
guest_have_not_closed_booking409Уже есть активный резервЗакрыть старый резерв
restaurant_guest_acquisition_is_disabled409Онлайн-бронирование отключеноВыбрать другой ресторан
restaurant_code_confirmation_is_disabled409Подтверждение по SMS отключеноИспользовать свою систему
mobile_confirmation_code_is_incorrect409Неверный код подтвержденияВвести код заново
mobile_confirmation_code_is_not_expired409Код ещё действителенИспользовать текущий код
unauthorized401Ошибка аутентификацииОбновить токен
forbidden403Недостаточно правПроверить scope
internal_server_error500Ошибка сервераПовторить запрос
service_unavailable503Сервис недоступенПовторить позже

Нужна помощь? Написать в поддержку