Перейти к основному содержанию
POST
/
v1
/
midjourney
/
generations
/
modal
curl --request POST \
  --url https://api.apimart.ai/v1/midjourney/generations/modal \
  --header 'Authorization: Bearer <token>' \
  --header 'Content-Type: application/json' \
  --data '{
    "task_id": "task_01KQW1N9T6E3AHW6QZFDEK8M5C",
    "prompt": "replace the selected area with a red leather sofa",
    "mask_url": "https://example.com/mask.png",
    "speed": "fast"
  }'
{
  "code": 200,
  "data": [
    {
      "status": "submitted",
      "task_id": "task_01KV52C0TEJSYZMCG0NCS4YWKK"
    }
  ]
}
curl --request POST \
  --url https://api.apimart.ai/v1/midjourney/generations/modal \
  --header 'Authorization: Bearer <token>' \
  --header 'Content-Type: application/json' \
  --data '{
    "task_id": "task_01KQW1N9T6E3AHW6QZFDEK8M5C",
    "prompt": "replace the selected area with a red leather sofa",
    "mask_url": "https://example.com/mask.png",
    "speed": "fast"
  }'
{
  "code": 200,
  "data": [
    {
      "status": "submitted",
      "task_id": "task_01KV52C0TEJSYZMCG0NCS4YWKK"
    }
  ]
}
Завершает задачу inpaint в состоянии MODAL, передавая маску + промпт. Система автоматически определяет режим по наличию mask_url: есть mask_url → inpaint (локальная перерисовка); нет → outpaint (расширение).
ItemЗначение
actionMODAL
Тарификацияmidjourney@modal[-speed]
Обязательноtask_id
Опциональноprompt, mask_url, speed, metadata

Параметры

ПолеОписание
task_idЛокальный task id, возвращённый шагом inpaint (должен быть в состоянии MODAL)
promptInpaint-промпт; если пусто, наследует промпт родительской задачи
mask_urlURL маски или base64; обязателен для inpaint (локальная перерисовка). Белый = область перерисовки, прозрачный = сохранить оригинал
speedrelax / fast / turbo
metadataОпциональные метаданные

Требования к маске

ItemРекомендация
ФорматPNG с прозрачным фоном (также принимает data:image/png;base64,...)
РазрешениеЖелательно как у родительского изображения (система также авто-ресайзит)
Белая областьОбласть перерисовки; прозрачные области сохраняют оригинал
Размер≤ 12 MiB на изображение
URLДолжен быть публично доступен (приватные адреса блокируются SSRF)

Пример запроса

{
  "task_id": "task_01KQW1N9T6E3AHW6QZFDEK8M5C",
  "prompt": "replace the selected area with a red leather sofa",
  "mask_url": "https://example.com/mask.png",
  "speed": "fast"
}

Response

task_id не меняется (та же задача); его статус переходит из MODALSUBMITTED. Опрашивайте GET /v1/tasks/{task_id}; при SUCCESS image_urls содержит 4 кандидата inpaint. Тарификация рассчитывается при SUCCESS этого endpoint и не списывается дважды с шагом inpaint. Для тарификации по speed настройте midjourney@modal-fast / midjourney@modal-turbo.