Skip to main content
POST
/
v1
/
ai
/
image-to-video
/
kling-o1-std
Image to video using Kling O1 Standard (first frame to last frame)
curl --request POST \
  --url https://api.freepik.com/v1/ai/image-to-video/kling-o1-std \
  --header 'Content-Type: application/json' \
  --header 'x-freepik-api-key: <api-key>' \
  --data '
{
  "webhook_url": "https://www.example.com/webhook",
  "prompt": "<string>",
  "first_frame": "https://example.com/start-image.jpg",
  "last_frame": "https://example.com/end-image.jpg",
  "aspect_ratio": "16:9",
  "duration": 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

Generate video using Kling O1 with first frame to last frame interpolation.

Best for:

  • Creating smooth transitions between two images
  • Animating static images with controlled start/end points
  • Creating cinematic video sequences

Tips:

  • Provide at least one frame (first_frame or last_frame)
  • For best results, provide both frames with similar compositions
  • Add a descriptive prompt to guide the motion
webhook_url
string<uri>

Optional callback URL that will receive asynchronous notifications whenever the task changes status. The payload sent to this URL is the same as the corresponding GET endpoint response, but without the data field.

Example:

"https://www.example.com/webhook"

prompt
string

Text prompt describing the desired motion in the video.

Examples:

  • "Camera slowly pans across the landscape"
  • "Person walks toward the camera with soft wind blowing"
  • "Gentle zoom into the subject with bokeh effect"
Maximum string length: 2500
first_frame
string

First frame image (starting point of the video).

Supported formats:

  • URL (must be publicly accessible)
  • Base64 encoded image

Requirements:

  • Minimum resolution: 300x300px
  • Maximum file size: 10MB
Example:

"https://example.com/start-image.jpg"

last_frame
string

Last frame image (ending point of the video).

Supported formats:

  • URL (must be publicly accessible)
  • Base64 encoded image
Example:

"https://example.com/end-image.jpg"

aspect_ratio
enum<string>
default:16:9

Video aspect ratio:

  • 16:9: Widescreen
  • 9:16: Vertical
  • 1:1: Square
Available options:
16:9,
9:16,
1:1
duration
enum<integer>
default:5

Video duration in seconds.

  • 5: 5-second video
  • 10: 10-second video
Available options:
5,
10

Response

OK

OK - The task exists and the status is returned