- Модуль gateway - часть приложения, с которой непосредственно работают пользователи, он отвечает за валидацию запросов
- Модуль server - в него передается запрос после валидации из gateway, он реализует бизнес-логику, отвечает за запросы к БД.
POST /items - добавление новой вещи
PATCH /items/{itemId} - редактирование вещи
GET /items/{itemId} - просмотр инфо о конкретной вещи по id
GET /items - получение списка всех вещей владельцем
GET /items/search?text={text} - поиск вещи потенциальным арендатором
POST /bookings - добавление нового запроса на бронирование
PATCH /bookings/{bookingId}?approved={approved} - подтверждение или отклонение запроса на бронирование
GET /bookings/{bookingId} - получение данных о конкретном бронировании
GET /bookings?state={state} - получение списка всех бронирований текущего пользователя
GET /bookings/owner?state={state} - получение списка бронирований для всех вещей текущего пользователя
POST /requests - добавление нового запроса на вещи
GET /requests - получение списка своих запросов вместе с данными об ответах
GET /requests/all?from={from}&size={size} - получение списка запросов, созданных другими пользователями
GET /requests/{requestId} - получение данных об одном конкретном запросе вместе с данными об ответах
GET /users/{id} - получение пользователя по идентификатору
GET /users/ - получение всех пользователей
POST /users/ - добавление пользователя в базу данных
PATCH /users/{id} - обновление пользователя по id
DELETE /users/{id} - удаление пользователя по id