Список, цена, модели
GET/v1/tasks
Свои задачи, по новым: { "data": [задача, …], "next_cursor": "…" }. Следующая страница по next_cursor в параметре cursor; на последней странице next_cursor нет. Неизвестный параметр или параметр дважды: 400.
- kindstring
- Точный, например
image/generate, или группаimage/* - statusstring
queued,in_progress,completedилиfailed- created_aftercreated_beforestring
- Границы по времени создания, RFC 3339 от 2020 года до завтра;
+в смещении пишите как%2Bили беритеZ. Обе исключающие и сравниваются с точностью до микросекунд, аatв событиях до секунды:created_after, равныйatзадачи, её не исключит - metadata[ключ]string
- Значение из
metadataзадачи. Несколько таких параметров: должны совпасть все - limitinteger
- Размер страницы, от 1 до 100, по умолчанию 20
- cursorstring
next_cursorпрошлой страницы
POST/v1/tasks/quote
Цена и проверка запроса без создания задачи. Тело то же, что у создания; id и wait не нужны, но проверяется их форма; занят ли id, не проверяется. Ответ: { "cost": {…}, "balance": {…}, "sufficient": true }. Запрос с ошибкой даёт тот же 400 или 404 с param, что дало бы создание. Задачу не создаёт, денег не трогает, 402 не возвращает. sufficient сравнивает цену только со свободным балансом аккаунта: лимит трат ключа, лимиты частоты и доступность модели он не проверяет, поэтому при sufficient: true создание всё равно может ответить 402 key_limit_reached, 429 rate_limited или 503 capacity_exceeded. Сама оценка, в отличие от чтения, расходует лимит запросов ключа в минуту: она тоже может ответить 429 rate_limited или 503 upstream_unavailable. Цена справочная, не обещание: задача списывается по каталогу на момент создания.
GET/v1/tasks/models
Модели задач: { "data": [модель, …] }, фильтр kind как в списке. Провайдеры и маршруты не показываются.
- idnamekindstring
- Имя для поля
model, название, вид задачи - inputobject
- Поля, которые принимает эта модель, с допустимыми значениями:
type,values(уformatиquality),max_length,min,max,max_items,max_bytes,media_types, иdefaultтам, где он есть - variantsarray
- Допустимые сочетания кадра: у каждого варианта есть
aspect_ratio,resolutionиsize. В запросе присылайте либо пару, либоsize. У варианта по умолчанию"default": true - priceobject
- Цена за одно изображение:
currency,per(пока толькоimage),depends_onиrows.depends_onперечисляет, от чего зависит цена:resolution,quality,variant(значение вида1:1/2K),references(число референсов строкой,"0","1"…). Пустой: одна строка на всё. Каждая строка: эти значения иamount. Строк цены может быть меньше, чем вариантов кадра. Цена конкретной задачи:quote