Приложение ShareIt позволяет обмениваться с друзьями вещами на время: инструментами, гаджетами, книгами и так далее. Как каршеринг, только для вещей.
- ShareIt-gateway - сервис по валидации входящих данных;
- ShareIt-server - основной сервис с бизнес-логикой.
Запуск настроен через Docker. Приложения shareIt-server, shareIt-gateway и база данных PostgreSQL запускаются в отдельном Docker-контейнере каждый и их общение происходит через REST.
- POST /users - добавление пользователя;
- PATCH /users/{userId} - обновление данных пользователя;
- GET /users/{userId} - получение данных пользователя;
- GET /users - получение списка пользователей;
- DELETE /users/{userId} - удаление пользователя.
- POST /items - добавление вещи;
- PATCH /items/{itemId} - обновление данных вещи;
- GET /items/{itemId} - получение данных вещи;
- GET /items - получение списка вещей;
- DELETE /items/{itemId} - удаление вещи;
- GET /items/search - поиск вещей по тексту в параметре text;
- POST /items/{itemId}/comment - добавление отзыва к вещи после завершенного бронирования.
- POST /requests - добавление запроса на бронирование;
- GET /requests/{requestId} - получение бронирования;
- GET /requests/all - получение списка бронирований;
- GET /requests - получение списка бронирований по id пользователя в заголовке запроса.
- POST /bookings - добавление бронирования;
- PATCH /bookings/{bookingId} - одобрение или отклонение бронирования по параметру approved;
- GET /bookings/{bookingId} - получение данных о бронировании;
- GET /bookings - получение бронирований текущего пользователя;
- GET /bookings/owner - получение списка бронирований для всех вещей текущего пользователя.
