Zum Hauptinhalt springen
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"
    }
  ]
}
Bild-zu-Video (i2v). Fester FAST-Modus, keine Speed-Dimension; Text-zu-Video (t2v) wird nicht unterstützt — ein erster Frame ist erforderlich. Die Dauer ist auf ~5 Sekunden festgelegt.
ElementWert
actionVIDEO
Abrechnungmidjourney@video / midjourney@video-720p, berechnet = Stückpreis × batch_size
Pflichtimage_urls (erster Frame) oder task_id (ein SUCCESS-imagine wiederverwenden)

Parameter

FeldTypPflichtStandardBeschreibung
promptstringNein(erbt vom Parent)Video-Prompt; wenn leer, ist task_id erforderlich
image_urlsstring[]Erster Frame (1 Bild, ≤ 12 MiB); entweder image_urls / task_id
task_idstringEin SUCCESS-imagine wiederverwenden; entweder image_urls / task_id
indexintNeinWelche der 4 imagine-Kacheln der erste Frame ist (03, mit task_id)
video_typestringNeinvid_1.1_i2v_480Auflösungsstufe (siehe Tabelle); 720@video-720p-Abrechnung
animate_modestringNeinmanualmanual / auto; auto erfordert task_id + index
motionstringNeinhighlow / high; Bewegungsumfang, kein Abrechnungseinfluss
batch_sizeintNein1Muss 1 / 2 / 4 sein, andere Werte als 1 behandelt; berechnet × N
end_urlstringNeinEndframe; wenn gesetzt, wird video_type automatisch zu start_end_* hochgestuft

Gültige video_type-Werte

WertAuflösungModusAbrechnung
vid_1.1_i2v_480480pBasis-i2v (Standard)midjourney@video
vid_1.1_i2v_720720pBasis-i2vmidjourney@video-720p
vid_1.1_i2v_start_end_480480pStart-/Endframe (auto bei gesetztem end_url)midjourney@video
vid_1.1_i2v_start_end_720720pStart-/Endframe (auto bei gesetztem end_url)midjourney@video-720p
extend-artige Werte werden nicht akzeptiert; nur die oben aufgeführten video_type-Werte werden unterstützt.

Request-Beispiele

Einfaches i2v (eigener erster Frame, batch 4):
{
  "prompt": "the cat slowly turns its head to the camera",
  "image_urls": ["https://example.com/cat.png"],
  "motion": "high",
  "batch_size": 4
}
Start-/End-Übergang (end_url stuft automatisch auf start_end hoch):
{
  "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"
}

Response

Das Absenden gibt eine task_id zurück; pollen Sie GET /v1/tasks/{task_id}. Bei SUCCESS enthält es video_url (das erste) plus video_urls (length === batch_size; bei batch=1 hat es trotzdem 1 Element):
{
  "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"
  ]
}

Hinweise

  • Text-zu-Video (t2v) wird nicht unterstützt: Sie müssen image_urls oder task_id übergeben, sonst gibt es 400; beides zusammen geht nicht.
  • Fester FAST-Modus, keine Speed-Dimension (@video-fast / @video-turbo in der Abrechnungstabelle werden nie getroffen).
  • batch_size wird streng als 1 / 2 / 4 validiert; batch=4 berechnet das 4-Fache, bei knappem Budget batch=1 verwenden.
  • animate_mode=auto erfordert sowohl task_id + index.
  • Der erste / End-Frame muss jeweils ≤ 12 MiB sein.