Video to Video
POST /api/v1/video-to-video/submit
prompt is required.
Required inputs
promptstring- Text instruction describing the desired result.
Edit the sample inputs for your own task before submitting.
# Set VIDMAGE_IDEMPOTENCY_KEY to a unique value for this task; preserve it for transport retries.
curl -X POST "https://vidmage.ai/api/v1/video-to-video/submit" \
-H "Authorization: Bearer YOUR_API_KEY" \
-H "Idempotency-Key: ${VIDMAGE_IDEMPOTENCY_KEY}" \
-H "Content-Type: application/json" \
-d '{"prompt":"Restyle the footage as a cinematic hand-painted animation while preserving the original motion and timing","duration":"5","ratio":"adaptive","resolution":"720p"}'
# -> { "success": true, "taskId": "...", "creditsConsumed": ... }Parameters and input rules7 fields
| Field | Type | Required | Default | Meaning and limits |
|---|---|---|---|---|
prompt | string | Yes | Not specified | Text instruction describing the desired result. No additional field constraint listed. |
videoUrl | string | No | Not specified | URL of the source video. No additional field constraint listed. |
imageUrls | string[] | No | Not specified | Up to 3 reference image URLs. Maximum items: 3 |
audioUrl | string | No | Not specified | Optional reference audio URL. No additional field constraint listed. |
duration | string | No | "5" | Video duration in seconds. Values: "4", "5", "6", "7", "8", "9", "10", "11", "12", "13", "14", "15" · Default: "5" |
ratio | string | No | "adaptive" | Aspect ratio. Values: "adaptive", "16:9", "4:3", "1:1", "3:4", "9:16", "21:9" · Default: "adaptive" |
resolution | string | No | "720p" | Output resolution. Values: "480p", "720p", "1080p", "2k", "4k" · Default: "720p" |
Retrieve the result
Save taskId from the accepted submission and send it to this endpoint:
POST /api/v1/video-to-video/query
Use the same Bearer API key. On completion, read the videoUrl result field.
curl -X POST "https://vidmage.ai/api/v1/video-to-video/query" \
-H "Authorization: Bearer YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{ "taskId": "TASK_ID_FROM_SUBMIT" }'
# -> { "success": true, "data": { "status": "...", "videoUrl": "https://..." } }