Skip to main content
POST
https://api.apimart.ai
/
v1
/
videos
/
generations
curl --request POST \
  --url https://api.apimart.ai/v1/videos/generations \
  --header 'Authorization: Bearer <token>' \
  --header 'Content-Type: application/json' \
  --data '{
    "model": "kling-v2-6",
    "prompt": "A golden cat running on a sunlit meadow, slow motion, cinematic quality",
    "mode": "std",
    "duration": 5,
    "aspect_ratio": "16:9"
  }'
{
  "code": 200,
  "data": [
    {
      "status": "submitted",
      "task_id": "task_xxxxxxxxxx"
    }
  ]
}
curl --request POST \
  --url https://api.apimart.ai/v1/videos/generations \
  --header 'Authorization: Bearer <token>' \
  --header 'Content-Type: application/json' \
  --data '{
    "model": "kling-v2-6",
    "prompt": "A golden cat running on a sunlit meadow, slow motion, cinematic quality",
    "mode": "std",
    "duration": 5,
    "aspect_ratio": "16:9"
  }'
{
  "code": 200,
  "data": [
    {
      "status": "submitted",
      "task_id": "task_xxxxxxxxxx"
    }
  ]
}

Authorization

Authorization
string
required
All API endpoints require Bearer Token authenticationGet your API Key:Visit the API Key Management Page to get your API KeyAdd it to the request header:
Authorization: Bearer YOUR_API_KEY

Request Parameters

model
string
required
Video generation model nameSupported models:
  • kling-v2-6 - Kling v2.6 (recommended)
prompt
string
required
Text prompt, maximum 2500 charactersDescribe scenes, actions, styles in detail for better generation resultsExample: "A golden cat running on a sunlit meadow, slow motion, cinematic quality"
mode
string
default:"std"
Generation modeOptions:
  • std - Standard mode (720P, silent video only)
  • pro - Professional mode (1080P, supports automatic audio generation)
Default: std
Standard mode limitation: std mode only supports silent video. audio parameter requires pro mode.
duration
integer
default:"5"
Video duration (seconds)Options: 5 or 10Default: 5
aspect_ratio
string
default:"16:9"
Video aspect ratioOptions:
  • 16:9 - Landscape
  • 9:16 - Portrait
  • 1:1 - Square
Default: 16:9
negative_prompt
string
Negative prompt to exclude unwanted contentExample: "blurry, low quality, distorted"
image_urls
array<url>
Image URL array for image-to-video generation
  • Pass 1 image: used as first frame
  • Pass 2 images: automatically assigned as first frame + last frame (requires mode: "pro")
Maximum 2 images supportedExample: ["https://example.com/first.jpg"]
  • Maximum 2 images supported
  • Last frame (2 images) requires pro mode only; std mode only supports first frame (1 image)
  • Last frame and audio are mutually exclusive: In pro mode, last frame (2 images) and audio (audio: true) cannot be used together
  • In image-to-video mode, aspect_ratio may be overridden by the actual image ratio
audio
boolean
default:"false"
Whether to automatically generate audioDefault: false
  • Only available in mode: "pro"
  • Mutually exclusive with last frame: Audio cannot be used together with last frame (2 images)
watermark
boolean
Whether to add watermark

Feature Support Matrix

TypeFeaturestd 5sstd 10spro 5spro 10s
Text-to-VideoGeneration✅ (silent only)✅ (silent only)
Text-to-VideoAuto Audio--
Image-to-VideoGeneration✅ (silent only)✅ (silent only)
Image-to-VideoFirst Frame
Image-to-VideoLast Frame--
Image-to-VideoAuto Audio--
Note: In pro mode, last frame and audio control are mutually exclusive and cannot be used together.

Text-to-Video vs Image-to-Video

The system automatically determines the mode based on whether image_urls is provided: no images means text-to-video, with images means image-to-video.
ParameterText-to-VideoImage-to-Video
prompt✅ Required✅ Required
image_urls❌ Not used✅ Required (1-2 images, last frame needs pro)
negative_prompt✅ Optional✅ Optional
mode✅ Optional✅ Optional
duration✅ Optional✅ Optional
aspect_ratio✅ Optional⚠️ May be overridden by image ratio
audio✅ Optional (needs pro)✅ Optional (needs pro)
watermark✅ Optional✅ Optional

Response

code
integer
Response status code, 200 on success
data
array
Response data array

Use Cases

Case 1: Text-to-Video (Standard Mode)

{
  "model": "kling-v2-6",
  "prompt": "A golden cat running on a sunlit meadow, slow motion, cinematic quality",
  "mode": "std",
  "duration": 5,
  "aspect_ratio": "16:9"
}

Case 2: Text-to-Video (Pro Mode + Negative Prompt)

{
  "model": "kling-v2-6",
  "prompt": "Tokyo Shibuya crossing at night, neon lights reflected on wet ground, people walking with umbrellas",
  "negative_prompt": "blurry, low quality, distorted",
  "mode": "pro",
  "duration": 10,
  "aspect_ratio": "16:9"
}

Case 3: Image-to-Video (First Frame)

{
  "model": "kling-v2-6",
  "prompt": "The person in the frame turns and smiles",
  "image_urls": ["https://example.com/portrait.jpg"],
  "mode": "std",
  "duration": 5,
  "aspect_ratio": "16:9"
}

Case 4: Image-to-Video (First + Last Frame Control)

{
  "model": "kling-v2-6",
  "prompt": "City timelapse transitioning from day to night",
  "image_urls": ["https://example.com/day-city.jpg", "https://example.com/night-city.jpg"],
  "mode": "pro",
  "duration": 5
}

Case 5: Pro Mode + Auto Audio

{
  "model": "kling-v2-6",
  "prompt": "Waves crashing against rocks, seagulls circling in the sky, lighthouse in the distance",
  "mode": "pro",
  "duration": 10,
  "audio": true,
  "aspect_ratio": "16:9"
}
Query Task ResultsVideo generation is an async task that returns a task_id upon submission. Use the Get Task Status endpoint to query generation progress and results.