Saltar al contenido principal
POST
/
v1
/
midjourney
/
generations
/
video
curl --request POST \
  --url https://api.apimart.ai/v1/midjourney/generations/video \
  --header 'Authorization: Bearer <token>' \
  --header 'Content-Type: application/json' \
  --data '{
    "prompt": "the cat slowly turns its head to the camera",
    "image_urls": [
      "https://example.com/cat.png"
    ],
    "motion": "high",
    "batch_size": 4
  }'
{
  "code": 200,
  "data": [
    {
      "status": "submitted",
      "task_id": "task_01KV52C0TEJSYZMCG0NCS4YWKK"
    }
  ]
}
curl --request POST \
  --url https://api.apimart.ai/v1/midjourney/generations/video \
  --header 'Authorization: Bearer <token>' \
  --header 'Content-Type: application/json' \
  --data '{
    "prompt": "the cat slowly turns its head to the camera",
    "image_urls": [
      "https://example.com/cat.png"
    ],
    "motion": "high",
    "batch_size": 4
  }'
{
  "code": 200,
  "data": [
    {
      "status": "submitted",
      "task_id": "task_01KV52C0TEJSYZMCG0NCS4YWKK"
    }
  ]
}
Imagen a video (i2v). Modo FAST fijo, sin dimensión de speed; no se admite texto a video (t2v) — se requiere un primer fotograma. La duración es fija de ~5 segundos.
ItemValor
actionVIDEO
Facturaciónmidjourney@video / midjourney@video-720p, cobrado = precio unitario × batch_size
Requeridoimage_urls (primer fotograma) o task_id (reutilizar un imagine en SUCCESS)

Parámetros

CampoTipoRequeridoPredeterminadoDescripción
promptstringNo(hereda del padre)Prompt de video; si está vacío, se requiere task_id
image_urlsstring[]Primer fotograma (1 imagen, ≤ 12 MiB); uno de image_urls / task_id
task_idstringReutilizar un imagine en SUCCESS; uno de image_urls / task_id
indexintNoCuál de las 4 baldosas de imagine es el primer fotograma (03, con task_id)
video_typestringNovid_1.1_i2v_480Nivel de resolución (ver tabla); 720 → facturación @video-720p
animate_modestringNomanualmanual / auto; auto requiere task_id + index
motionstringNohighlow / high; cantidad de movimiento, sin impacto en facturación
batch_sizeintNo1Debe ser 1 / 2 / 4, otros valores se tratan como 1; facturado × N
end_urlstringNoFotograma final; cuando se define, video_type se actualiza automáticamente a start_end_*

Valores válidos de video_type

ValorResoluciónModoFacturación
vid_1.1_i2v_480480pi2v básico (predeterminado)midjourney@video
vid_1.1_i2v_720720pi2v básicomidjourney@video-720p
vid_1.1_i2v_start_end_480480pfotograma inicio/fin (auto cuando se define end_url)midjourney@video
vid_1.1_i2v_start_end_720720pfotograma inicio/fin (auto cuando se define end_url)midjourney@video-720p
No se aceptan valores tipo extend; solo se admiten los valores de video_type listados arriba.

Ejemplos de solicitud

i2v simple (primer fotograma propio, batch 4):
{
  "prompt": "the cat slowly turns its head to the camera",
  "image_urls": ["https://example.com/cat.png"],
  "motion": "high",
  "batch_size": 4
}
Transición inicio/fin (end_url actualiza automáticamente a start_end):
{
  "prompt": "transition smoothly from sunrise to sunset",
  "image_urls": ["https://example.com/sunrise.jpg"],
  "end_url": "https://example.com/sunset.jpg",
  "video_type": "vid_1.1_i2v_720"
}

Respuesta

El envío devuelve un task_id; sondee GET /v1/tasks/{task_id}. Al tener SUCCESS incluye video_url (el primero) más video_urls (length === batch_size; con batch=1 igual tiene 1 elemento):
{
  "id": "task_xxx",
  "status": "SUCCESS",
  "action": "VIDEO",
  "mode": "FAST",
  "video_url": "https://r2.example.com/video-0.mp4",
  "video_urls": [
    "https://r2.example.com/video-0.mp4",
    "https://r2.example.com/video-1.mp4"
  ]
}

Notas

  • No se admite texto a video (t2v): debe pasar image_urls o task_id, de lo contrario devuelve 400; no puede pasar ambos.
  • Modo FAST fijo, sin dimensión de speed (@video-fast / @video-turbo en la tabla de facturación nunca se alcanzan).
  • batch_size se valida estrictamente como 1 / 2 / 4; batch=4 cobra 4×, use batch=1 cuando el presupuesto sea sensible.
  • animate_mode=auto requiere tanto task_id + index.
  • El primer / último fotograma debe ser cada uno ≤ 12 MiB.