Сервис управления слайдами
Общая информация
Сервис "Слайды", который отвечает за управление слайдами на сайте, включая их получение, создание, обновление и удаление.
Слайды
GET /
Описание: Получение всех слайдов.
Теги: Слайды
Summary: Возвращает список всех слайдов.
Ответ:
- 200 OK:
[ { "id": 1, "path": "/uploads/slides/some_slide.png", "isMobile": false, "link": null, "sort": 1 }, { "id": 2, "path": "/uploads/slides/some_slide2.png", "isMobile": true, "link": "some_link_2", "sort": 2 } ]id: (integer) - ID слайда.path: (string) - Путь к изображению слайда.isMobile: (boolean, optional) - Флаг, указывающий, что слайд предназначен для мобильных устройств.link: (string, optional) - Ссылка для перехода по слайду.sort: (integer) - Порядок сортировки слайда.
- 500 Internal Server Error:
{ "error": "Internal Server Error" }- Внутренняя ошибка сервера.
GET /type/:type
Описание: Получение списка слайдов определенного типа.
Теги: Слайды
Параметры запроса (path):
type: (string, required) - Тип слайда (slide,promo).
Ответ:
- 200 OK:
[ { "id": 1, "path": "/uploads/slides/some_slide.png", "isMobile": false, "link": null, "sort": 1 }, { "id": 2, "path": "/uploads/slides/some_slide2.png", "isMobile": true, "link": "some_link_2", "sort": 2 } ]id: (integer) - ID слайда.path: (string) - Путь к изображению слайда.isMobile: (boolean) - Флаг, указывающий, что слайд предназначен для мобильных устройств.link: (string) - Ссылка для перехода по слайду.sort: (integer) - Порядок сортировки слайда.
- 500 Internal Server Error:
{ "error": "Internal Server Error" }- Внутренняя ошибка сервера.
POST /
Описание: Создание нового слайда.
Теги: Слайды
Summary: Создает новый слайд.
Предварительная проверка: Требуется аутентификация пользователя (admin role).
Тело запроса (body):
{
"fileId": 1,
"type": "slide",
"link": "some_link",
"sort": 2,
"isMobile": true
}
fileId: (integer, required) - ID файла (связь с файлом в БД).type: (string, required) - Тип слайда (slide,promo).link: (string, optional) - Ссылка для перехода.sort: (integer, optional) - Порядок сортировки слайда.isMobile: (boolean, optional) - Флаг для мобильного слайда.
Ответ:
- 201 Created:
{ "id": 1, "path": "/uploads/slides/some_slide.png", "isMobile": false, "link": null, "sort": 1 } id: (integer) - ID слайда.path: (string) - Путь к изображению слайда.isMobile: (boolean, optional) - Флаг, указывающий, что слайд предназначен для мобильных устройств.link: (string, optional) - Ссылка для перехода по слайду.sort: (integer) - Порядок сортировки слайда.- 500 Internal Server Error:
{ "error": "Internal Server Error" } - Внутренняя ошибка сервера.
PATCH /
Описание: Обновление нескольких слайдов.
Теги: Слайды
Summary: Обновляет слайды.
Предварительная проверка: Требуется аутентификация пользователя (admin role).
Тело запроса (body):
[
{
"id": 1,
"sort": 2
},
{
"id": 2,
"sort": 1,
"link": "some_new_link"
}
]
id: (integer, required) - ID слайда.sort: (integer, optional) - Порядок сортировки слайда.link: (string, optional) - Ссылка для перехода по слайду.
Ответ:
- 200 OK:
- 500 Internal Server Error:
{ "error": "Internal Server Error" } - Внутренняя ошибка сервера.
DELETE /:id
Описание: Удаление слайда по ID.
Теги: Слайды
Summary: Удаляет слайд по указанному ID.
Предварительная проверка: Требуется аутентификация пользователя (admin role).
Параметры запроса (path):
id: (integer, required) - ID слайда.
Ответ:
- 200 OK:
{ "statusCode": 200, "message": "Слайд успешно удален" } statusCode: (integer) - Код ответа.message: (string) - Сообщение об успешном удалении.- 500 Internal Server Error:
{ "error": "Что-то пошло не так" } - Внутренняя ошибка сервера.
PATCH /:id/link
Описание: Обновление ссылки слайда.
Теги: Слайды
Предварительная проверка: Требуется аутентификация пользователя (admin role).
Параметры запроса (path):
id: (integer, required) - ID слайда.
Тело запроса (body):
{
"link": "new_link"
}
link: (string, optional) - Ссылка для перехода по слайду.
Ответ:
- 200 OK:
- 500 Internal Server Error:
{ "error": "Что-то пошло не так" } - Внутренняя ошибка сервера. Примечания:
- Все запросы, кроме
GET /иGET /type/:typeтребуют авторизации с рольюadmin. - Все запросы возвращают
500 Internal Server Errorв случае внутренней ошибки на сервере.