Skip to main content
The resources (image, video, voice) generated by our API are valid for 7 days. Please save the relevant resources as soon as possible to prevent expiration.

Endpoint

POST https://openapi.akool.com/api/open/v4/image2Video/createBySourcePrompt/batch

Request Headers

ParameterValueDescription
x-api-keyAPI KeyYour API Key used for request authorization. If both Authorization and x-api-key have values, Authorization will be used first and x-api-key will be discarded.
AuthorizationBearer {token}Your API Key used for request authorization.Get Token

Body Attributes

ParameterTypeRequiredDescription
image_urlStringtrueImage URL to be animated
promptStringtruePrompt text describing how to animate the image
model_nameStringfalseAI model name (get available models from Get AI Model List)
negative_promptStringfalsePrompt text describing what to avoid in the animation
extend_promptBooleanfalseWhether to use algorithm default extended prompts
resolutionStringtrueResolution value (e.g., 720p, 1080p, 4k). Available options are retrieved from the resolutionList field of the selected model in Get AI Model List
video_lengthIntegertrueVideo duration in seconds. Available durations are retrieved from the durationList field of the selected model in Get AI Model List
last_image_urlStringfalseURL of the image to use as the last frame of the video
generate_audioBooleanfalseWhether to generate AI audio alongside the video. Only applicable to models that support audio generation — check the generate_audio field in Get AI Model List (non-null means supported). Default: false. Enabling this on supported models may increase credit consumption
countIntegerfalseNumber of videos to create simultaneously (1-10), default: 1
webhookurlStringfalseCallback URL for POST requests

Response Attributes

ParameterTypeDescription
codeIntegerInterface returns business status code (1000:success)
msgStringInterface returns status information
dataObjectResponse data object
- successListArrayArray of successfully created video tasks
- errorListArrayArray of failed tasks with error information

successList Item Attributes

ParameterTypeDescription
_idStringDocument ID
create_timeLongCreation timestamp
uidIntegerUser ID
team_idStringTeam ID
statusIntegerTask status: 1=queueing, 2=processing, 3=completed, 4=failed
webhookUrlStringCallback URL
resolutionStringVideo resolution
file_nameStringOutput file name
effect_nameStringEffect name
image_urlStringInput image URL
promptStringAnimation prompt
negative_promptStringNegative prompt
extend_promptBooleanWhether extended prompts were used
last_image_urlStringLast frame image URL
deduction_creditIntegerCredits deducted
model_nameStringAI model name used
batch_idStringBatch ID for grouping videos created in the same request
batch_countIntegerTotal number of videos in this batch

Example

Request Body

{
  "image_url": "https://drz0f01yeq1cx.cloudfront.net/1753772478686-9524-b6e4169bb1b44d5d8361936b3f6eddb8.png",
  "prompt": "Animate this image with smooth camera movement and subtle object motion.",
  "model_name": "seedance-1-0-lite-i2v-250428",
  "negative_prompt": "blurry, distorted, low quality",
  "extend_prompt": true,
  "resolution": "720p",
  "video_length": 5,
  "last_image_url": "https://drz0f01yeq1cx.cloudfront.net/1753772478686-9524-last-frame.png",
  "count": 3
}

Request Body - With Audio Generation

Use generate_audio when the selected model supports audio generation (e.g., AkoolImage2VideoFastV1, AkoolImage2VideoHDV1):
{
  "image_url": "https://drz0f01yeq1cx.cloudfront.net/1753772478686-9524-b6e4169bb1b44d5d8361936b3f6eddb8.png",
  "prompt": "Animate this image with smooth camera movement and ambient background sound.",
  "model_name": "AkoolImage2VideoFastV1",
  "resolution": "720p",
  "video_length": 5,
  "generate_audio": true,
  "count": 1
}

Request

curl --location 'https://openapi.akool.com/api/open/v4/image2Video/createBySourcePrompt/batch' \
--header 'x-api-key: {{API Key}}' \
--header 'Content-Type: application/json' \
--data '{
  "image_url": "https://drz0f01yeq1cx.cloudfront.net/1753772478686-9524-b6e4169bb1b44d5d8361936b3f6eddb8.png",
  "prompt": "Animate this image with smooth camera movement and subtle object motion.",
  "model_name": "seedance-1-0-lite-i2v-250428",
  "negative_prompt": "blurry, distorted, low quality",
  "extend_prompt": true,
  "resolution": "720p",
  "video_length": 5,
  "last_image_url": "https://drz0f01yeq1cx.cloudfront.net/1753772478686-9524-last-frame.png",
  "count": 3
}'

Response

{
  "code": 1000,
  "msg": "OK",
  "data": {
    "successList": [
      {
        "_id": "689174694b4dbdd4ab3d28c9",
        "create_time": 1754362985482,
        "uid": 101400,
        "team_id": "6805fb69e92d9edc7ca0b409",
        "status": 1,
        "webhookUrl": "",
        "resolution": "720p",
        "file_name": "Image2Video_Animate this image with .mp4",
        "image_url": "https://drz0f01yeq1cx.cloudfront.net/1753772478686-9524-b6e4169bb1b44d5d8361936b3f6eddb8.png",
        "prompt": "Animate this image with smooth camera movement and subtle object motion.",
        "negative_prompt": "blurry, distorted, low quality",
        "extend_prompt": true,
        "deduction_credit": 5,
        "model_name": "seedance-1-0-lite-i2v-250428",
        "batch_id": "1754362985482_101400",
        "batch_count": 3
      },
      {
        "_id": "689174694b4dbdd4ab3d28ca",
        "create_time": 1754362985483,
        "uid": 101400,
        "team_id": "6805fb69e92d9edc7ca0b409",
        "status": 1,
        "webhookUrl": "",
        "resolution": "720p",
        "file_name": "Image2Video_Animate this image with .mp4",
        "image_url": "https://drz0f01yeq1cx.cloudfront.net/1753772478686-9524-b6e4169bb1b44d5d8361936b3f6eddb8.png",
        "prompt": "Animate this image with smooth camera movement and subtle object motion.",
        "negative_prompt": "blurry, distorted, low quality",
        "extend_prompt": true,
        "deduction_credit": 5,
        "model_name": "seedance-1-0-lite-i2v-250428",
        "batch_id": "1754362985482_101400",
        "batch_count": 3
      },
      {
        "_id": "689174694b4dbdd4ab3d28cb",
        "create_time": 1754362985484,
        "uid": 101400,
        "team_id": "6805fb69e92d9edc7ca0b409",
        "status": 1,
        "webhookUrl": "",
        "resolution": "720p",
        "file_name": "Image2Video_Animate this image with .mp4",
        "image_url": "https://drz0f01yeq1cx.cloudfront.net/1753772478686-9524-b6e4169bb1b44d5d8361936b3f6eddb8.png",
        "prompt": "Animate this image with smooth camera movement and subtle object motion.",
        "negative_prompt": "blurry, distorted, low quality",
        "extend_prompt": true,
        "deduction_credit": 5,
        "model_name": "seedance-1-0-lite-i2v-250428",
        "batch_id": "1754362985482_101400",
        "batch_count": 3
      }
    ],
    "errorList": []
  }
}

Important Notes

  • Batch Size: You can create 1-10 videos simultaneously in a single request
  • Model Selection: Use the Get AI Model List API to get available models and their supported resolutions/durations
  • Resolution: Available options depend on the selected model; check the model’s resolutionList field
  • Video Length: Available durations depend on the selected model; check the model’s durationList field
  • Last Frame: Use last_image_url to specify what the video’s last frame should look like
  • Audio Generation: Set generate_audio to true to add AI-generated audio to the output video. This parameter is only effective for models where the generate_audio field is not null in the Get AI Model List response. If the selected model does not support audio generation, this parameter is ignored
  • Credits: Each video in the batch is charged individually based on resolution and duration. Enabling generate_audio on supported models may increase credit consumption
  • Resource Expiration: Generated videos are valid for 7 days, save them promptly
  • Webhook: Use webhookUrl to receive notifications when each video generation is complete
  • Save the _id values from the response to check video status using the Get Image to Video Results API