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

API для ресторанов

Методы API, доступные для роли "restaurateur".

Аутентификация

Authorization: Bearer <your-token>

Управление рестораном

Создать ресторан

POST /restaurants

Пример запроса:

{
"name": "Горная Вершина",
"address": "ул. Центральная, 15, Архыз",
"cuisine_type": "кавказская",
"description": "Аутентичная кавказская кухня с видом на горы",
"phone": "+7900123456",
"email": "info@gornavershina.ru",
"website": "https://gornavershina.ru",
"opening_hours": {
"mon": "09:00-22:00",
"tue": "09:00-22:00",
"wed": "09:00-22:00",
"thu": "09:00-22:00",
"fri": "09:00-23:00",
"sat": "09:00-23:00",
"sun": "09:00-22:00"
},
"average_check": 1500,
"capacity": 80
}

Обновить ресторан

PUT /restaurants/{id}

Получить мой ресторан

GET /restaurants/my

Управление столиками

Добавить столик

POST /restaurant-tables

Пример запроса:

{
"table_number": "5",
"capacity": 4,
"location": "терраса",
"features": ["вид на горы", "тихая зона"],
"is_smoking_allowed": false,
"status": "available"
}

Обновить столик

PUT /restaurant-tables/{id}

Получить столики

GET /restaurant-tables/my

Управление меню

Добавить блюдо в меню

POST /menu-items

Пример запроса:

{
"name": "Хачапури по-аджарски",
"category": "основные блюда",
"description": "Традиционная лодочка из теста с сыром и яйцом",
"price": 450,
"cooking_time_minutes": 25,
"ingredients": ["сыр сулугуни", "мука", "яйцо", "масло"],
"allergens": ["глютен", "молочные продукты"],
"is_vegetarian": true,
"is_spicy": false,
"image_url": "https://example.com/hachapuri.jpg",
"available": true
}

Обновить блюдо

PUT /menu-items/{id}

Получить меню

GET /menu-items/my

Управление бронированиями столиков

Просмотр бронирований

GET /restaurant-bookings/my

Подтвердить бронирование

PUT /restaurant-bookings/{id}/confirm

Генерируется QR-код для подтверждения брони.

Отменить бронирование

PUT /restaurant-bookings/{id}/cancel

Отметить прибытие гостей

PUT /restaurant-bookings/{id}/check-in

Управление доступностью

Установить доступность столиков

POST /restaurant-availability

Пример запроса:

{
"date": "2024-07-15",
"time_slots": [
{
"time": "12:00",
"available_tables": [1, 2, 3, 5]
},
{
"time": "19:00",
"available_tables": [1, 4, 6, 7, 8]
}
]
}

Блокировать время

POST /restaurant-blocks

Управление персоналом

Добавить сотрудника

POST /restaurant-staff

Расписание работы

GET /restaurant-schedule
PUT /restaurant-schedule

Аналитика ресторана

Статистика бронирований

GET /analytics/restaurant

Ответ включает:

  • Количество бронирований
  • Средняя загруженность
  • Популярные время слоты
  • Доходность
  • Рейтинг ресторана

Анализ меню

  • Популярные блюда
  • Время приготовления
  • Рентабельность позиций

Отзывы и рейтинг

Просмотр отзывов

GET /restaurant-reviews/my

Ответить на отзыв

POST /restaurant-reviews/{id}/reply

Акции и предложения

Создать специальное предложение

POST /restaurant-offers

Пример запроса:

{
"title": "Обед выходного дня",
"description": "Скидка 20% на комплексные обеды по выходным",
"discount_percent": 20,
"valid_from": "2024-07-01",
"valid_to": "2024-07-31",
"applicable_days": ["saturday", "sunday"],
"applicable_times": ["12:00-16:00"],
"conditions": "Только для комплексных обедов"
}

Управление акциями

GET /restaurant-offers/my
PUT /restaurant-offers/{id}
DELETE /restaurant-offers/{id}

Интеграции

Доставка

Интеграция с сервисами доставки.

Онлайн-заказы

API для онлайн-заказов через сайт ресторана.

Программа лояльности

Система скидок для постоянных клиентов.

Уведомления

Получить уведомления

GET /notifications

Отметить уведомление как прочитанное

PUT /notifications/{id}/read

Профиль

Получить профиль

GET /auth/me

Обновить профиль ресторана

PUT /restaurant-profile

Финансы

Отчет по доходам

GET /reports/restaurant-revenue

Комиссионные платежи

GET /restaurant-commissions

Коды ответов

  • 200 - Успешно
  • 201 - Создано
  • 400 - Неверный запрос
  • 401 - Не авторизован
  • 403 - Доступ запрещен
  • 404 - Не найдено
  • 500 - Ошибка сервера

Полная документация: https://stage.arkhyz-club.ru/docs#/