Kling O1 Standard - Create video with reference
curl --request POST \
--url https://api.magnific.com/v1/ai/image-to-video/kling-o1-std-video-reference \
--header 'Content-Type: application/json' \
--header 'x-magnific-api-key: <api-key>' \
--data '
{
"prompt": "<string>",
"webhook_url": "https://www.example.com/webhook",
"reference_images": [
"https://example.com/character-reference.jpg"
],
"aspect_ratio": "16:9",
"duration": "5"
}
'import requests
url = "https://api.magnific.com/v1/ai/image-to-video/kling-o1-std-video-reference"
payload = {
"prompt": "<string>",
"webhook_url": "https://www.example.com/webhook",
"reference_images": ["https://example.com/character-reference.jpg"],
"aspect_ratio": "16:9",
"duration": "5"
}
headers = {
"x-magnific-api-key": "<api-key>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {'x-magnific-api-key': '<api-key>', 'Content-Type': 'application/json'},
body: JSON.stringify({
prompt: '<string>',
webhook_url: 'https://www.example.com/webhook',
reference_images: ['https://example.com/character-reference.jpg'],
aspect_ratio: '16:9',
duration: '5'
})
};
fetch('https://api.magnific.com/v1/ai/image-to-video/kling-o1-std-video-reference', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://api.magnific.com/v1/ai/image-to-video/kling-o1-std-video-reference",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "POST",
CURLOPT_POSTFIELDS => json_encode([
'prompt' => '<string>',
'webhook_url' => 'https://www.example.com/webhook',
'reference_images' => [
'https://example.com/character-reference.jpg'
],
'aspect_ratio' => '16:9',
'duration' => '5'
]),
CURLOPT_HTTPHEADER => [
"Content-Type: application/json",
"x-magnific-api-key: <api-key>"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"strings"
"net/http"
"io"
)
func main() {
url := "https://api.magnific.com/v1/ai/image-to-video/kling-o1-std-video-reference"
payload := strings.NewReader("{\n \"prompt\": \"<string>\",\n \"webhook_url\": \"https://www.example.com/webhook\",\n \"reference_images\": [\n \"https://example.com/character-reference.jpg\"\n ],\n \"aspect_ratio\": \"16:9\",\n \"duration\": \"5\"\n}")
req, _ := http.NewRequest("POST", url, payload)
req.Header.Add("x-magnific-api-key", "<api-key>")
req.Header.Add("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.post("https://api.magnific.com/v1/ai/image-to-video/kling-o1-std-video-reference")
.header("x-magnific-api-key", "<api-key>")
.header("Content-Type", "application/json")
.body("{\n \"prompt\": \"<string>\",\n \"webhook_url\": \"https://www.example.com/webhook\",\n \"reference_images\": [\n \"https://example.com/character-reference.jpg\"\n ],\n \"aspect_ratio\": \"16:9\",\n \"duration\": \"5\"\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.magnific.com/v1/ai/image-to-video/kling-o1-std-video-reference")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["x-magnific-api-key"] = '<api-key>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"prompt\": \"<string>\",\n \"webhook_url\": \"https://www.example.com/webhook\",\n \"reference_images\": [\n \"https://example.com/character-reference.jpg\"\n ],\n \"aspect_ratio\": \"16:9\",\n \"duration\": \"5\"\n}"
response = http.request(request)
puts response.read_body"<unknown>"Kling O1
Kling O1 Standard - Create video with reference
POST
/
v1
/
ai
/
image-to-video
/
kling-o1-std-video-reference
Kling O1 Standard - Create video with reference
curl --request POST \
--url https://api.magnific.com/v1/ai/image-to-video/kling-o1-std-video-reference \
--header 'Content-Type: application/json' \
--header 'x-magnific-api-key: <api-key>' \
--data '
{
"prompt": "<string>",
"webhook_url": "https://www.example.com/webhook",
"reference_images": [
"https://example.com/character-reference.jpg"
],
"aspect_ratio": "16:9",
"duration": "5"
}
'import requests
url = "https://api.magnific.com/v1/ai/image-to-video/kling-o1-std-video-reference"
payload = {
"prompt": "<string>",
"webhook_url": "https://www.example.com/webhook",
"reference_images": ["https://example.com/character-reference.jpg"],
"aspect_ratio": "16:9",
"duration": "5"
}
headers = {
"x-magnific-api-key": "<api-key>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {'x-magnific-api-key': '<api-key>', 'Content-Type': 'application/json'},
body: JSON.stringify({
prompt: '<string>',
webhook_url: 'https://www.example.com/webhook',
reference_images: ['https://example.com/character-reference.jpg'],
aspect_ratio: '16:9',
duration: '5'
})
};
fetch('https://api.magnific.com/v1/ai/image-to-video/kling-o1-std-video-reference', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://api.magnific.com/v1/ai/image-to-video/kling-o1-std-video-reference",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "POST",
CURLOPT_POSTFIELDS => json_encode([
'prompt' => '<string>',
'webhook_url' => 'https://www.example.com/webhook',
'reference_images' => [
'https://example.com/character-reference.jpg'
],
'aspect_ratio' => '16:9',
'duration' => '5'
]),
CURLOPT_HTTPHEADER => [
"Content-Type: application/json",
"x-magnific-api-key: <api-key>"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"strings"
"net/http"
"io"
)
func main() {
url := "https://api.magnific.com/v1/ai/image-to-video/kling-o1-std-video-reference"
payload := strings.NewReader("{\n \"prompt\": \"<string>\",\n \"webhook_url\": \"https://www.example.com/webhook\",\n \"reference_images\": [\n \"https://example.com/character-reference.jpg\"\n ],\n \"aspect_ratio\": \"16:9\",\n \"duration\": \"5\"\n}")
req, _ := http.NewRequest("POST", url, payload)
req.Header.Add("x-magnific-api-key", "<api-key>")
req.Header.Add("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.post("https://api.magnific.com/v1/ai/image-to-video/kling-o1-std-video-reference")
.header("x-magnific-api-key", "<api-key>")
.header("Content-Type", "application/json")
.body("{\n \"prompt\": \"<string>\",\n \"webhook_url\": \"https://www.example.com/webhook\",\n \"reference_images\": [\n \"https://example.com/character-reference.jpg\"\n ],\n \"aspect_ratio\": \"16:9\",\n \"duration\": \"5\"\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.magnific.com/v1/ai/image-to-video/kling-o1-std-video-reference")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["x-magnific-api-key"] = '<api-key>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"prompt\": \"<string>\",\n \"webhook_url\": \"https://www.example.com/webhook\",\n \"reference_images\": [\n \"https://example.com/character-reference.jpg\"\n ],\n \"aspect_ratio\": \"16:9\",\n \"duration\": \"5\"\n}"
response = http.request(request)
puts response.read_body"<unknown>"Authorizations
Your Magnific API key. Required for authentication. Learn how to obtain an API key
Body
application/json
Generate video using Kling O1 with reference images for character/style consistency.
Best for:
- Maintaining character consistency across shots
- Creating videos with specific visual style
- Multi-shot storytelling with consistent subjects
Text prompt describing the video you want to generate. Be specific about actions, camera movements, and mood.
Maximum string length:
2500Optional 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"
List of reference images for maintaining visual consistency (up to 7). Each image can be a URL or Base64 encoded string.
Maximum array length:
7Example:
[
"https://example.com/character-reference.jpg"
]
Available options:
16:9, 9:16, 1:1 Available options:
5, 10 Response
OK
OK - The task exists and the status is returned
Was this page helpful?
⌘I