Skip to Content

API ключи

Эндпоинты для управления API ключами в системе.

Получение списка API ключей

Получение полного списка API ключей.

Запрос

GET /api/api-keys

Заголовки

НазваниеТипОписание
X-API-KeystringОбязательный. API ключ

Ответ

{ "api_keys": [ { "id": 1, "name": "Admin API Key", "key": "api_key_************", "active": true, "created_at": "2023-01-01T00:00:00Z" }, { "id": 2, "name": "User API Key", "key": "api_key_************", "active": true, "created_at": "2023-01-02T00:00:00Z" } ] }

Поля ответа

ПолеТипОписание
api_keysarrayМассив API ключей
idintegerID API ключа
namestringИмя API ключа
keystringЧастично скрытый API ключ
activebooleanСтатус активности
created_atstringДата создания

Коды ответов

КодОписание
200Успешный запрос
401Неверный API ключ или отсутствует
403Недостаточно прав для выполнения запроса

Получение данных API ключа

Получение детальной информации о конкретном API ключе.

Запрос

GET /api/api-keys/{id}

Параметры пути

НазваниеТипОписание
idintegerID API ключа

Заголовки

НазваниеТипОписание
X-API-KeystringОбязательный. API ключ

Ответ

{ "api_key": { "id": 1, "name": "Admin API Key", "key": "api_key_************", "active": true, "created_at": "2023-01-01T00:00:00Z", "permissions": [ { "id": 1, "name": "admin.users", "description": "Управление пользователями" }, { "id": 2, "name": "admin.roles", "description": "Управление ролями" } ] } }

Поля ответа

ПолеТипОписание
api_keyobjectОбъект API ключа
idintegerID API ключа
namestringИмя API ключа
keystringЧастично скрытый API ключ
activebooleanСтатус активности
created_atstringДата создания
permissionsarrayМассив разрешений ключа

Коды ответов

КодОписание
200Успешный запрос
401Неверный API ключ или отсутствует
403Недостаточно прав для выполнения запроса
404API ключ не найден

Создание API ключа

Создание нового API ключа в системе.

Запрос

POST /api/api-keys

Заголовки

НазваниеТипОписание
X-API-KeystringОбязательный. API ключ
Content-TypestringОбязательный. application/json

Тело запроса

{ "name": "New API Key", "active": true }

Параметры тела запроса

НазваниеТипОписание
namestringОбязательный. Имя API ключа
activebooleanНеобязательный. Статус активности

Ответ

{ "message": "API Key создан успешно", "api_key": { "id": 3, "name": "New API Key", "key": "api_key_xxxxxxxxxxxxxxxxxxxx", "active": true, "created_at": "2023-03-15T12:00:00Z" } }

Коды ответов

КодОписание
201API ключ успешно создан
401Неверный API ключ или отсутствует
403Недостаточно прав для выполнения запроса
422Неверные параметры запроса

Обновление API ключа

Обновление данных существующего API ключа.

Запрос

PUT /api/api-keys/{id}

Параметры пути

НазваниеТипОписание
idintegerID API ключа

Заголовки

НазваниеТипОписание
X-API-KeystringОбязательный. API ключ
Content-TypestringОбязательный. application/json

Тело запроса

{ "name": "Updated API Key", "active": false }

Параметры тела запроса

НазваниеТипОписание
namestringНеобязательный. Имя API ключа
activebooleanНеобязательный. Статус активности

Ответ

{ "message": "API Key обновлен успешно", "api_key": { "id": 3, "name": "Updated API Key", "key": "api_key_************", "active": false, "created_at": "2023-03-15T12:00:00Z" } }

Коды ответов

КодОписание
200API ключ успешно обновлен
401Неверный API ключ или отсутствует
403Недостаточно прав для выполнения запроса
404API ключ не найден
422Неверные параметры запроса

Удаление API ключа

Удаление API ключа из системы.

Запрос

DELETE /api/api-keys/{id}

Параметры пути

НазваниеТипОписание
idintegerID API ключа

Заголовки

НазваниеТипОписание
X-API-KeystringОбязательный. API ключ

Ответ

{ "message": "API Key удален успешно" }

Коды ответов

КодОписание
200API ключ успешно удален
401Неверный API ключ или отсутствует
403Недостаточно прав для выполнения запроса
404API ключ не найден

Перегенерация API ключа

Создание нового значения для существующего API ключа.

Запрос

POST /api/api-keys/{id}/regenerate

Параметры пути

НазваниеТипОписание
idintegerID API ключа

Заголовки

НазваниеТипОписание
X-API-KeystringОбязательный. API ключ

Ответ

{ "message": "API Key перегенерирован успешно", "api_key": { "id": 3, "name": "Updated API Key", "key": "api_key_xxxxxxxxxxxxxxxxxxxx", "active": true, "created_at": "2023-03-15T12:00:00Z" } }

Коды ответов

КодОписание
200API ключ успешно перегенерирован
401Неверный API ключ или отсутствует
403Недостаточно прав для выполнения запроса
404API ключ не найден

Управление разрешениями API ключа

Изменение списка разрешений для API ключа.

Запрос

PUT /api/api-keys/{id}/permissions

Параметры пути

НазваниеТипОписание
idintegerID API ключа

Заголовки

НазваниеТипОписание
X-API-KeystringОбязательный. API ключ
Content-TypestringОбязательный. application/json

Тело запроса

{ "permission_ids": [1, 2, 3] }

Параметры тела запроса

НазваниеТипОписание
permission_idsarrayОбязательный. Массив ID разрешений

Ответ

{ "message": "Разрешения API Key обновлены успешно", "api_key": { "id": 3, "name": "Updated API Key", "key": "api_key_************", "active": true, "created_at": "2023-03-15T12:00:00Z", "permissions": [ { "id": 1, "name": "admin.users", "description": "Управление пользователями" }, { "id": 2, "name": "admin.roles", "description": "Управление ролями" }, { "id": 3, "name": "admin.pages", "description": "Управление страницами" } ] } }

Коды ответов

КодОписание
200Разрешения API ключа успешно обновлены
401Неверный API ключ или отсутствует
403Недостаточно прав для выполнения запроса
404API ключ не найден
422Неверные параметры запроса