API
Jay Guard предоставляет API для обращения к функциям продукта по протоколу HTTP и интеграции его возможностей в сторонние приложения.
Доступ к API
Чтобы использовать возможности API, необходимо создать ключ доступа. В зависимости от задач, доступны два типа ключей:
-
Для API — если вы планируете использовать ключ для экспорта событий аудита или проксирования запросов к LLM.
предупреждениеВы можете использовать этот ключ также для фильтрации данных при отправке запросов в LLM. Если вы планируете это делать, выберите фильтры для ключа. Иначе запросы будут обрабатываться без фильтрации.
-
Для фильтрации — если вы планируете использовать ключ для остальных методов API, например маскирования. В этом случае вам нужно будет указать фильтры для ключа.
Чтобы создать ключ:
- Перейдите в раздел Ключи доступа в Jay Guard и нажмите Создать ключ.
- Введите название ключа и выберите его тип.
- Укажите срок окончания действия ключа, если нужно.
После создания ключа вы увидите его в списке. Скопируйте и сохраните ключ.
Методы API
Управление файлами в хранилище
| Метод | Назначение | Спецификация |
|---|---|---|
POST /api/dataguard/public/files | Загрузка файла в хранилище. | Перейти |
GET /api/dataguard/public/files/{fileId} | Скачивание файла из хранилища. | Перейти |
DELETE /api/dataguard/public/files/{fileId} | Удаление файла из хранилища. | Перейти |
Маскирование сущностей в файлах
| Метод | Назначение | Спецификация |
|---|---|---|
PUT /api/dataguard/public/user-masking/storage/mask | Маскирование сущностей в файлах, ранее загруженных в хранилище. | Перейти |
POST /api/dataguard/public/user-masking/files/mask | Загрузка файла в хранилище и запуск маскирования файла. | Перейти |
GET /api/dataguard/public/user-masking/files/result | Получение результата маскирования файла. | Перейти |
Маскирование и демаскирование сущностей в запросах
| Метод | Назначение | Спецификация |
|---|---|---|
POST /api/dataguard/public/user-masking/mask | Маскирование сущностей в тексте. | Перейти |
POST /api/dataguard/public/user-masking/{service}/mask | Маскирование сущностей в запросах к LLM. | Перейти |
POST /api/dataguard/public/user-masking/unmask | Демаскирование сущностей. | Перейти |
POST /api/dataguard/public/user-masking/{service}/unmask | Демаскирование сущностей в ответах от LLM. | Перейти |
Экспорт событий аудита
| Метод | Назначение | Спецификация |
|---|---|---|
POST /api/dataguard/public/audit/list | Экспорт событий аудита. | Перейти |
POST /api/dataguard/public/audit/details | Экспорт детальной информации по событиям аудита. | Перейти |
Проксирование
| Метод | Назначение | Документация |
|---|---|---|
POST /api/dataguard/public/{serviceName}/{proxyPath} | Проксирование запросов напрямую к языковым моделям. Можно отправлять запросы к моделям: OpenAI, GigaChat, YandexGPT, моделям, размещенным в Caila, например Claude. | Перейти |
Возможные ошибки
Ниже приведены возможные ошибки, которые могут прийти в ответ на API-запросы:
| Код ошибки | Описание |
|---|---|
dataguard.common.access_denied | Доступ к ресурсу запрещен. Обратитесь к вашему администратору или аккаунт-менеджеру. |
dataguard.common.common_error | Произошла неизвестная ошибка сервера. Попробуйте позже или обратитесь к администратору. |
dataguard.common.content_extractor_not_configured | Маскирование сущностей недоступно для файлов этого формата. Подробнее о поддерживаемых форматах |
dataguard.common.content_is_too_large | Размер содержимого запроса превышает лимит. Максимальный размер текстового содержимого — 20 тыс. символов, файла — 30 тыс. символов или 20 Мб. |
dataguard.common.file_not_found | Файл не найден. |
dataguard.common.file_storage_exception | Ошибка доступа к файловому хранилищу. Попробуйте позже или обратитесь к администратору. |
dataguard.common.invalid_access_token | Ключ доступа истек. |
dataguard.common.invalid_body | Некорректное тело запроса. С форматами запросов можно ознакомиться в спецификации API. |
dataguard.common.invalid_file_name | Недопустимое имя файла. Имя должно быть непустым и содержать расширение. |
dataguard.common.missing_access_token | Не передан ключ доступа в X-DATA-GUARD-API-KEY. |
dataguard.common.no_access_token_found | Переданный ключ доступа не найден. |
dataguard.common.personal_data_detected | В запросе обнаружены чувствительные данные, выполнение запрещено. |
dataguard.common.too_many_requests | Превышено допустимое количество запросов. |
dataguard.common.unauthorized | Пользователь не авторизован. |
dataguard.common.unsupported_destination | Указано неподдерживаемое назначение проксирования. Подробнее о параметрах запроса проксирования |
dataguard.license.invalid_license_key | Лицензионный ключ недействителен или отсутствует. Ошибка может возникнуть, если вы используете On-premise версию Jay Guard. |
dataguard.common.missing_masking_id | При вызове эндпоинта демаскирования не был передан maskingId. |
Полезные ссылки
Если у вас остались вопросы по работе с API:
- Часто задаваемые вопросы — ответы на распространенные вопросы о проксировании, маскировании данных и технических особенностях работы Jay Guard.