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

Действия с результатом

Увеличить, продлить, доработать готовый результат: поле actions задачи.

Что можно сделать

Готовый результат можно доработать: увеличить картинку из сетки Midjourney, продлить видео Veo, разделить песню Suno на дорожки, конвертировать 3D-модель Tripo и так далее. Что можно сделать с задачей прямо сейчас, перечислено в её поле actions: его отдаёт GET /v1/tasks/{id}, когда задача succeeded. В списке задач (GET /v1/tasks) этого поля нет, пустой список значит, что делать с задачей нечего.

Так выглядит сетка Midjourney в ответе GET /v1/tasks/{id} (часть полей и действий опущена):

JSON
{
  "id": "TASK_ID",
  "model_key": "midjourney",
  "status": "succeeded",
  "actions": [
    {
      "action": "upscale",
      "title": "Увеличить картинку из сетки",
      "artifact_index": 0,
      "request": {
        "model": "midjourney",
        "settings": {
          "version": "upscale",
          "source_task_id": "TASK_ID",
          "index": 0
        }
      },
      "data": null
    },
    {
      "action": "reroll",
      "title": "Повторить сетку",
      "artifact_index": null,
      "request": {
        "model": "midjourney",
        "settings": {
          "version": "reroll",
          "source_task_id": "TASK_ID"
        }
      },
      "data": null
    }
  ]
}
ПолеЧто в нём
actionРежим модели, который делает это действие, например upscale.
titleНазвание действия для человека, на языке запроса.
artifact_indexindex файла в result.artifacts, с которым работает действие. null: действие над всем результатом.
requestГотовое тело для POST /v1/price и POST /v1/tasks: ключ модели и settings режима.
dataЧто нужно форме действия: области картинки Grok, слои разбора Seedream, части песни Eleven Music, название, длина и слова версии песни Suno. null, когда ничего не нужно.

Запустить действие

Действие это режим той же модели, только работает он с прошлой задачей. В settings значение режима стоит в поле, которое переключает режимы модели (у Midjourney version, у Tripo task_type, у остальных mode), id готовой задачи в source_task_id, а index файла результата в index, если действие работает с одним файлом. В request такой запрос уже собран: отправьте его в POST /v1/price, чтобы узнать цену, и в POST /v1/tasks, чтобы запустить.

cURL
curl -X POST "https://api.cyhub.ai/v1/tasks" \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -H "Idempotency-Key: order-1042" \
  --data '{
  "model": "midjourney",
  "settings": {
    "version": "upscale",
    "source_task_id": "TASK_ID",
    "index": 0,
    "upscale_type": "creative"
  }
}'

Поля, которые выбирает человек (описание продления, области правки, части песни), в request не входят: их добавляют по описанию режима на странице модели. Там же значения по умолчанию, которые можно поменять. Результат действия это новая задача со своим id, статусом и файлами, а исходная задача не меняется.

Цена действия зависит от исходной задачи (скорость сетки Midjourney, качество ролика Veo, длина песни) и берётся так же, как у любой задачи: резерв при приёме, списание после успеха. Бывает и нулевая цена, например у сборки картинки из слоёв Seedream. Точную цену покажет POST /v1/price.

Действие работает только с задачами своего кабинета и той же модели, и только пока файлы результата хранятся (7 дней). Одноразовые действия Suno (например, разделение песни на дорожки или WAV) делаются один раз: повтор бесплатно вернёт уже готовый файл.

Действия моделей

МодельРежимыЧто делают
midjourneyupscale, vary, reroll, grid_editУвеличить картинку из сетки, вариации картинки, повторить сетку, правка картинки из сетки по маске.
veoextendПродлить видео.
flux3enhanceЧерновик в полном качестве.
seedanceupscale_draftПересобрать черновик в высоком качестве.
sunoextend_track, replace_section, separate_vocals, midi, wav, cover_image, music_video, timestamped_lyricsПродолжить песню, переписать фрагмент, разделить на дорожки, ноты MIDI, песня в WAV, обложка, видео для соцсетей, слова с таймкодами.
grok_image2edit_areaИзменить выбранные области картинки по описанию.
seedreamcompose_layersСобрать картинку из слоёв разбора в своём порядке.
elevenlabs_musiceditПравка песни по частям.
tripo3dconvert_model, texture_model, animateКонвертировать модель, новая текстура, анимация.

Поля, пределы и пример запроса каждого действия на странице модели, в разделе режима.

Все нейросети и их API

Ошибки

HTTPКодЧто делать
404source_not_foundЗадачи с таким id нет среди задач кабинета: возьмите id из GET /v1/tasks.
409source_not_readyИсходная задача ещё в работе: дождитесь succeeded.
409action_in_progressТо же одноразовое действие с задачей уже идёт: дождитесь его результата.
422source_wrong_modelИсходная задача сделана другой моделью: действие работает только с задачами своей модели.
422source_failedИсходная задача не удалась или отменена: работать не с чем.
422action_unavailableС этой задачей так сделать нельзя (файлы уже не хранятся, у результата нет такого действия): сверьтесь с полем actions.
422invalid_settingsНеподходящий index или поле режима: подробности в message.