Аутентификация и идемпотентность
Ключи API, права, идентификаторы запросов и безопасные повторы
Аутентификация по bearer-токену
Создавайте и отзывайте ключи в разделе Настройки → Ключи API. Секрет показывается только один раз. Передавайте его в стандартном заголовке:
Authorization: Bearer sd_YOUR_KEYПринимается только заголовок Authorization. Передача учётных данных в строке
запроса и заголовок X-API-Key не поддерживаются. Отсутствующий, неверный,
просроченный или отозванный ключ даёт 401 UNAUTHORIZED. Действующий ключ без
нужного права для эндпоинта даёт 403 FORBIDDEN.
Права
| Право | Что разрешает |
|---|---|
images:generate | создавать задачи генерации |
images:edit | создавать задачи редактирования |
images:convert | создавать задачи конвертации |
jobs:read | читать задачи того же аккаунта |
credits:read | читать текущий баланс |
Используйте отдельные ключи с урезанными правами для каждого приложения и окружения. Отзыв одного ключа не влияет на задачи, созданные для аккаунта ранее.
Идемпотентность
Все три эндпоинта POST требуют Idempotency-Key длиной от 8 до 255 символов.
Повторный вызов того же эндпоинта с тем же ключом и тем же каноническим запросом
вернёт исходную задачу без повторного резервирования кредитов. Повторное
использование ключа с другим содержимым даёт 409 IDEMPOTENCY_CONFLICT.
Для multipart-запросов байты исходного изображения тоже входят в идентичность. Поэтому замена загружаемого изображения при том же ключе считается конфликтом.
Идентификаторы запросов
Каждый ответ содержит X-Request-Id. В теле ошибки он повторяется как
error.request_id. Эти идентификаторы можно безопасно сохранять в логах
приложения.

Документация API