Midjourney Video Generator API documentation
Generate videos with Midjourney Video Generator (Midjourney).
Endpoints
| Contract item | Value |
|---|---|
| Capability | midjourney-video-generator |
| Submit | POST https://vidmage.ai/api/v1/midjourney-video-generator/submit |
| Query | POST https://vidmage.ai/api/v1/midjourney-video-generator/query |
| Task identifier | taskId |
| Result field | videoUrl |
Authenticate with Authorization: Bearer YOUR_API_KEY. Save the task identifier and query the same capability. Use a stable Idempotency-Key for submission retries.
Product guide: Midjourney Video API
Parameters and input rules
| Field | Type | Required | Default | Meaning and limits |
|---|---|---|---|---|
prompt | string | Yes | Not specified | Text prompt describing the video to generate (max 8192 chars). Minimum characters: 1Maximum characters: 8192 |
imageUrl | string | Yes | Not specified | Input image URL (required, http/https). |
lastFrameUrl | string | No | Not specified | Optional public URL for the final frame in image-to-video mode. |
resolution | string | No | "720p" | Output resolution tier. Values: "480p", "720p" |
motion | string | No | "low" | Choose subtle or stronger scene motion. Values: "low", "high" |
raw | boolean | No | false | Reduce automatic styling for more literal motion control. |
loop | boolean | No | false | Make the first and last frames visually identical for looping playback. |
image to video
These are public VidMage field names. The server maps them to provider fields. Input media selects the mode; use its limits together with the parameter table.
| Control | Mode-specific rule |
|---|---|
prompt | Required; 1–8192 characters. |
duration | JSON string. Values: . Default: . |
aspectRatio | Not used in this mode. |
resolution | Values: "480p", "720p". Default: 720p. |
imageUrl | Formats: jpg, png, webp. |
lastFrameUrl | Optional final-frame image. |
motion | Choose subtle or stronger scene motion. Values: "low", "high"Default: "low" |
raw | Reduce automatic styling for more literal motion control. Default: false |
loop | Make the first and last frames visually identical for looping playback. Default: false |
Example request
{
"imageUrl": "https://vidmage.ai/assets/images/samples/blue-eyed-woman-sunlight.webp",
"prompt": "The portrait subject slowly turns toward the window as soft light shifts across the face",
"resolution": "720p",
"motion": "low",
"raw": false,
"loop": false
}# Set VIDMAGE_IDEMPOTENCY_KEY to a unique value for this task; preserve it for transport retries.
curl -X POST "https://vidmage.ai/api/v1/midjourney-video-generator/submit" \
-H "Authorization: Bearer YOUR_API_KEY" \
-H "Idempotency-Key: ${VIDMAGE_IDEMPOTENCY_KEY}" \
-H "Content-Type: application/json" \
-d '{"imageUrl":"https://vidmage.ai/assets/images/samples/blue-eyed-woman-sunlight.webp","prompt":"The portrait subject slowly turns toward the window as soft light shifts across the face","resolution":"720p","motion":"low","raw":false,"loop":false}'
# -> { "success": true, "taskId": "...", "creditsConsumed": ... }Task results and recovery
URL of the generated video. Read videoUrl from the completed query response. Preserve taskId while the task is running.
curl -X POST "https://vidmage.ai/api/v1/midjourney-video-generator/query" \
-H "Authorization: Bearer YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{ "taskId": "TASK_ID_FROM_SUBMIT" }'
# -> { "success": true, "data": { "status": "...", "videoUrl": "https://..." } }Submission and task queries report the available task and usage information. A timeout is not a confirmed failure. Recover the existing task instead of resubmitting.
For face selection and error recovery, follow Task lifecycle. MCP uses the normalized taskId argument in get_task_result, including capabilities whose REST identifier is requestId.
Credits
| Component / option | Rate | Minimum |
|---|---|---|
| 480p | 15 credits / generation | — |
| 720p | 40 credits / generation | — |
Base charge is per generation at the selected resolution.
Use the Playground or the MCP credit estimator for your exact inputs. Credits and billing.
