Generate video conditioned on multiple input images.
Authenticate with the X-API-Key request header.
resolution — pass resolution in your request. Credit cost per second:| resolution | credits / sec | vs base |
|---|---|---|
| 720p | 19 | 1× |
| 1080p | 30 | 1.6× |
List price. Volume / bulk customers get a discounted rate — contact us for account pricing.
| Name | Type | Required | Description | Default / options |
|---|---|---|---|---|
| prompt | string | required | Text prompt describing the desired output. | — |
| image_urls | string[] | required | One or more conditioning images. | — |
| duration | number | optional | Clip length in seconds (1-10). | default: 5 |
| aspect_ratio | string | optional | Output aspect ratio. | default: 16:9 |
| negative_prompt | string | optional | Text describing what to avoid in the video. | — |
| cfg_scale | number | optional | Prompt-adherence / freedom level, 0-1 (default 0.5). May be ignored by Kling 2.x/3.0. | — |
| external_task_id | string | optional | Caller-supplied correlation/idempotency id. | — |
| callback_url | string | optional | Webhook URL notified when the task completes. | — |
curl -X POST https://brahmand-api.bulletshorts.co/v1/video/kling-multi-image \
-H "X-API-Key: $TRINETRA_API_KEY" \
-H "Content-Type: application/json" \
-d '{"prompt":"Morph smoothly between these scenes","image_urls":["https://example.com/a.jpg","https://example.com/b.jpg"],"duration":5}'{
"prompt": "Morph smoothly between these scenes",
"image_urls": [
"https://example.com/a.jpg",
"https://example.com/b.jpg"
],
"duration": 5
}Submitting a job returns 202 Accepted with a job id. Poll GET /v1/jobs/{id} until the job reaches a terminal state, or register a webhook to be notified.
{
"job_id": "job_klingmultiimage_a1b2c3",
"status": "queued"
}{
"id": "job_klingmultiimage_a1b2c3",
"model": "kling-multi-image",
"status": "succeeded",
"output": {
"outputs": [
{
"url": "https://cdn.trinetra.ai/out/kling-multi-image/a1b2c3.mp4",
"type": "video"
}
]
},
"credits_charged": 10
}Webhook: set a webhook_url on your API key to receive a POST with the terminal job document instead of polling.