Skip to main content
POST
/
v1
/
ai
/
video
/
kling-v3-std
Kling 3 Standard - Generate video
curl --request POST \
  --url https://api.freepik.com/v1/ai/video/kling-v3-std \
  --header 'Content-Type: application/json' \
  --header 'x-freepik-api-key: <api-key>' \
  --data '
{
  "webhook_url": "<string>",
  "prompt": "<string>",
  "multi_prompt": [
    {
      "prompt": "<string>",
      "duration": "3"
    }
  ],
  "start_image_url": "<string>",
  "end_image_url": "<string>",
  "elements": [
    {
      "reference_image_urls": [
        "<string>"
      ],
      "frontal_image_url": "<string>"
    }
  ],
  "generate_audio": true,
  "voice_ids": [
    "<string>"
  ],
  "shot_type": "customize",
  "aspect_ratio": "16:9",
  "duration": "5",
  "negative_prompt": "blur, distort, and low quality",
  "cfg_scale": 0.5
}
'
"<unknown>"

Authorizations

x-freepik-api-key
string
header
required

Your Freepik API key. Required for authentication. Learn how to obtain an API key

Body

application/json
webhook_url
string<uri>

Optional callback URL that receives asynchronous notifications when the task changes status. The payload includes the task status and result URL when completed.

prompt
string

Text prompt describing the desired video content. Maximum 2500 characters. Required for text-to-video mode or when not using multi_prompt.

Tips for better results:

  • Be specific about motion, camera angles, and actions
  • Describe the scene, characters, and atmosphere
  • Reference elements in your prompt as @Element1, @Element2
  • Reference voices with <<<voice_1>>> and <<<voice_2>>>
Maximum string length: 2500
multi_prompt
object[]

Multi-shot prompts with durations for sequential video generation. Each item specifies a prompt and duration for that shot. Maximum 6 shots, total duration cannot exceed 15 seconds.

Maximum array length: 6
start_image_url
string

URL of the image to use as the first frame of the video. Required for image-to-video mode.

Image requirements:

  • Minimum: 300x300 pixels
  • Maximum: 10MB file size
  • Aspect ratio: 1:2.5 to 2.5:1
  • Formats: JPG, JPEG, PNG
end_image_url
string

URL of the image to use as the final frame of the video. Optional for image-to-video mode.

Image requirements:

  • Same as start_image_url
elements
object[]

Custom characters/objects with reference images for consistent identity across the video. Reference in your prompt as @Element1, @Element2, etc.

generate_audio
boolean
default:true

Whether to generate native audio for the video.

voice_ids
string[]

Custom voice identifiers for video generation. Maximum 2 voices per task. Reference voices in your prompt with <<<voice_1>>> and <<<voice_2>>>.

shot_type
enum<string>
default:customize

Multi-shot generation type:

  • customize: Define each shot manually with multi_prompt
  • intelligent: AI-assisted shot generation
Available options:
customize,
intelligent
aspect_ratio
enum<string>
default:16:9

Aspect ratio for the generated video:

  • 16:9: Landscape (widescreen) - ideal for YouTube, presentations
  • 9:16: Portrait (vertical) - ideal for TikTok, Instagram Stories, Reels
  • 1:1: Square - ideal for Instagram posts, social media
Available options:
16:9,
9:16,
1:1
duration
enum<string>
default:5

Duration of the generated video in seconds.

Range: 3-15 seconds Note: When using multi-shot mode, total duration across all shots cannot exceed 15 seconds.

Available options:
3,
4,
5,
6,
7,
8,
9,
10,
11,
12,
13,
14,
15
negative_prompt
string
default:blur, distort, and low quality

Undesired elements to avoid in the generated video. Maximum 2500 characters.

Maximum string length: 2500
cfg_scale
number<float>
default:0.5

Guidance scale for prompt adherence. Higher values mean stronger adherence to the prompt.

  • 0: Maximum flexibility, more creative interpretation
  • 0.5 (default): Balanced between prompt adherence and creativity
  • 2: Strict adherence to prompt, less creative variation
Required range: 0 <= x <= 2

Response

OK - Task created successfully

OK - The task exists and the status is returned