Skip to main content
POST
/
api
/
v1
/
task
/
submit
curl --request POST \
  --url https://api.maxapi.io/api/v1/task/submit \
  --header 'Authorization: Bearer <token>' \
  --header 'Content-Type: application/json' \
  --data '{
  "model": "veo3",
  "callBackUrl": "https://example.com/webhook",
  "input": {
    "prompt": "The waves gently move and the sun slowly sets",
    "ratio": "16:9",
    "imageUrls": ["https://example.com/beach.jpg"]
  }
}'
{
  "code": 0,
  "msg": "ok",
  "data": {
    "taskId": "b2c3d4e5-f6a7-8901-bcde-f12345678901"
  }
}
Use Google Veo 3.1 to create videos from images. Supports three modes based on the number of input images.

Available Models

veo3 · veo3_fast

Generation Modes

Animate a single image as the first frame. The video starts from this image and extends the motion.
Create a smooth transition video between a start frame and an end frame.
Generate a video using 1-3 reference images for style transfer or creative inspiration.
Mode Selection:
  • Auto-inference (default): System infers mode from image count (0→t2v, 1→i2v, 2→i2v-fl, 3→r2v)
  • Explicit mode: Add mode field to override auto-inference (e.g., use mode: "r2v" with 1 image for style reference instead of first-frame control)
I2V vs R2V difference:
  • I2V: Image becomes the video’s first frame (strict frame control)
  • R2V: Image serves as style/content reference (flexible creative generation)
model
string
required
Model name, e.g. veo3, veo3_fast.
callBackUrl
string
Webhook callback URL.
input
object
required
curl --request POST \
  --url https://api.maxapi.io/api/v1/task/submit \
  --header 'Authorization: Bearer <token>' \
  --header 'Content-Type: application/json' \
  --data '{
  "model": "veo3",
  "callBackUrl": "https://example.com/webhook",
  "input": {
    "prompt": "The waves gently move and the sun slowly sets",
    "ratio": "16:9",
    "imageUrls": ["https://example.com/beach.jpg"]
  }
}'
{
  "code": 0,
  "msg": "ok",
  "data": {
    "taskId": "b2c3d4e5-f6a7-8901-bcde-f12345678901"
  }
}

Query Result

{
  "code": 0,
  "msg": "ok",
  "data": {
    "taskId": "b2c3d4e5-f6a7-8901-bcde-f12345678901",
    "status": "SUCCESS",
    "input": {
      "model": "veo3",
      "prompt": "The waves gently move and the sun slowly sets",
      "ratio": "16:9",
      "imageUrls": ["https://example.com/beach.jpg"]
    },
    "result": {
      "type": "video",
      "urls": [
        "https://example.com/output/video-b2c3d4e5.mp4"
      ]
    },
    "created_at": "2026-02-12T11:00:00.000000Z",
    "updated_at": "2026-02-12T11:02:45.000000Z"
  }
}
Image Requirements:
  • Formats: JPEG, PNG, WebP
  • Must be publicly accessible HTTPS URLs
  • Recommended size: < 10MB per image
  • Aspect ratio should match the ratio parameter
Speed Mode Limitations:
  • R2V mode (3 images): Does not support Quality mode. If you use veo3 model, it will automatically fall back to Fast mode. We recommend explicitly using veo3_fast for R2V.