Download OpenAPI specification:
Admin API для системы заказа кофе с доставкой. Позволяет управлять сотрудниками, меню, принимать заказы и отслеживать их статус.
Авторизует пользователя по логину и паролю и возвращает JWT токены доступа и обновления.
login required | string Логин пользователя (может быть email или имя пользователя) |
password required | string <password> (password) >= 8 characters Пароль (минимум 8 символов, должен содержать цифры и спецсимволы) |
{- "login": "user@example.com",
- "password": "Str0ngP@ss!"
}
{- "token": "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9...",
- "refreshToken": "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9..."
}
Принимает refresh-токен в заголовке Authorization и возвращает новую пару access и refresh токенов.
Заголовок должен иметь вид: Authorization: Bearer <refresh_token>
Authorization required | string Example: Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9... Refresh-токен в формате Bearer |
{- "token": "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9...",
- "refreshToken": "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9..."
}
Возвращает список пользователей с пагинацией. Требует прав администратора.
page | integer >= 0 Default: 0 Example: page=0 Номер страницы для пагинации (начинается с 0).
Используется вместе с параметром |
size | integer [ 1 .. 100 ] Default: 20 Example: size=10 Количество элементов на странице. |
sort | string Example: sort=name Поле для сортировки. |
sortDir | string Default: "asc" Enum: "asc" "desc" Example: sortDir=desc Направление сортировки |
search | string Example: search=Den Поле поиска (фильтрация по имени, email и т.д.) |
roles | Array of strings (user-role) Items Enum: "SUPER_ADMIN" "ADMIN" "EMPLOYEE" Example: roles=ADMIN Роли для фильтрации (можно указать несколько) |
{- "content": [
- {
- "id": 1,
- "fullName": "Админ Системы",
- "email": "admin@example.com",
- "role": "ADMIN"
}, - {
- "id": 2,
- "fullName": "Менеджер",
- "email": "manager@example.com",
- "role": "EMPLOYEE"
}
], - "pageNumber": 0,
- "pageSize": 2,
- "totalElements": 3,
- "totalPages": 2
}
Создает нового пользователя в системе. Требует прав администратора.
fullName required | string [ 2 .. 100 ] characters Полное имя пользователя |
email required | string <email> Email адрес (должен быть уникальным) |
password required | string <password> (password) >= 8 characters Пароль (минимум 8 символов, должен содержать цифры и спецсимволы) |
role required | string (user-role) Enum: "SUPER_ADMIN" "ADMIN" "EMPLOYEE" Роли пользователей:
|
{- "fullName": "Админ",
- "email": "admin@example.com",
- "password": "AdminP@ss123",
- "role": "ADMIN"
}
{- "id": 123,
- "fullName": "Иван Петров",
- "email": "user@example.com",
- "role": "ADMIN"
}
Возвращает информацию о пользователе по его идентификатору. Требует прав администратора.
id required | integer <int64> (user-id) Example: 123 Уникальный ID (long) |
{- "id": 123,
- "fullName": "Иван Петров",
- "email": "user@example.com",
- "role": "ADMIN"
}
Обновляет информацию о пользователе (имя, email, пароль или роль). Требует прав администратора. Пароль изменяется только если передан в запросе.
id required | integer <int64> (user-id) Example: 123 Уникальный ID (long) |
Данные для обновления
fullName required | string [ 2 .. 100 ] characters Полное имя пользователя |
email required | string <email> Email адрес (должен быть уникальным) |
password | string or null <password> >= 8 characters Пароль (опционально, минимум 8 символов, должен содержать цифры и спецсимволы). Если поле передано, пароль будет изменен. |
role required | string (user-role) Enum: "SUPER_ADMIN" "ADMIN" "EMPLOYEE" Роли пользователей:
|
{- "fullName": "Анна Ковалева",
- "email": "a.kovaleva@example.com",
- "role": "EMPLOYEE"
}
{- "id": 123,
- "fullName": "Иван Петров",
- "email": "user@example.com",
- "role": "ADMIN"
}
Удаляет пользователя из системы по его идентификатору. Требует прав администратора. Внимание: Операция необратима!
id required | integer <int64> (user-id) Example: 123 Уникальный ID (long) |
{- "title": "Ошибка авторизации",
- "message": "Требуется вход в систему",
- "code": 401,
- "fields": null
}
Обновляет информацию о текущем пользователе (имя, email, пароль). Пароль изменяется только если передан в запросе.
Данные для обновления
fullName required | string [ 2 .. 100 ] characters Полное имя пользователя |
email required | string <email> Email адрес (должен быть уникальным) |
password | string or null <password> >= 8 characters Пароль (опционально, минимум 8 символов, должен содержать цифры и спецсимволы). Если поле передано, пароль будет изменен. |
{- "fullName": "Анна Ковалева",
- "email": "a.kovaleva@example.com"
}
{- "id": 123,
- "fullName": "Иван Петров",
- "email": "user@example.com",
- "role": "ADMIN"
}