PixVerse C1 Image-to-Video
curl --request POST \
--url https://api.highwayapi.ai/v3/async/pixverse-c1-image-to-video \
--header 'Authorization: <authorization>' \
--header 'Content-Type: <content-type>' \
--data '
{
"image": "<string>",
"prompt": "<string>",
"duration": 123,
"resolution": "<string>",
"generate_audio_switch": true
}
'import requests
url = "https://api.highwayapi.ai/v3/async/pixverse-c1-image-to-video"
payload = {
"image": "<string>",
"prompt": "<string>",
"duration": 123,
"resolution": "<string>",
"generate_audio_switch": True
}
headers = {
"Content-Type": "<content-type>",
"Authorization": "<authorization>"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {'Content-Type': '<content-type>', Authorization: '<authorization>'},
body: JSON.stringify({
image: '<string>',
prompt: '<string>',
duration: 123,
resolution: '<string>',
generate_audio_switch: true
})
};
fetch('https://api.highwayapi.ai/v3/async/pixverse-c1-image-to-video', 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.highwayapi.ai/v3/async/pixverse-c1-image-to-video",
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([
'image' => '<string>',
'prompt' => '<string>',
'duration' => 123,
'resolution' => '<string>',
'generate_audio_switch' => true
]),
CURLOPT_HTTPHEADER => [
"Authorization: <authorization>",
"Content-Type: <content-type>"
],
]);
$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.highwayapi.ai/v3/async/pixverse-c1-image-to-video"
payload := strings.NewReader("{\n \"image\": \"<string>\",\n \"prompt\": \"<string>\",\n \"duration\": 123,\n \"resolution\": \"<string>\",\n \"generate_audio_switch\": true\n}")
req, _ := http.NewRequest("POST", url, payload)
req.Header.Add("Content-Type", "<content-type>")
req.Header.Add("Authorization", "<authorization>")
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.highwayapi.ai/v3/async/pixverse-c1-image-to-video")
.header("Content-Type", "<content-type>")
.header("Authorization", "<authorization>")
.body("{\n \"image\": \"<string>\",\n \"prompt\": \"<string>\",\n \"duration\": 123,\n \"resolution\": \"<string>\",\n \"generate_audio_switch\": true\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.highwayapi.ai/v3/async/pixverse-c1-image-to-video")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["Content-Type"] = '<content-type>'
request["Authorization"] = '<authorization>'
request.body = "{\n \"image\": \"<string>\",\n \"prompt\": \"<string>\",\n \"duration\": 123,\n \"resolution\": \"<string>\",\n \"generate_audio_switch\": true\n}"
response = http.request(request)
puts response.read_body{
"task_id": "<string>"
}PixVerse C1 Image-to-Video
POST
/
v3
/
async
/
pixverse-c1-image-to-video
PixVerse C1 Image-to-Video
curl --request POST \
--url https://api.highwayapi.ai/v3/async/pixverse-c1-image-to-video \
--header 'Authorization: <authorization>' \
--header 'Content-Type: <content-type>' \
--data '
{
"image": "<string>",
"prompt": "<string>",
"duration": 123,
"resolution": "<string>",
"generate_audio_switch": true
}
'import requests
url = "https://api.highwayapi.ai/v3/async/pixverse-c1-image-to-video"
payload = {
"image": "<string>",
"prompt": "<string>",
"duration": 123,
"resolution": "<string>",
"generate_audio_switch": True
}
headers = {
"Content-Type": "<content-type>",
"Authorization": "<authorization>"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {'Content-Type': '<content-type>', Authorization: '<authorization>'},
body: JSON.stringify({
image: '<string>',
prompt: '<string>',
duration: 123,
resolution: '<string>',
generate_audio_switch: true
})
};
fetch('https://api.highwayapi.ai/v3/async/pixverse-c1-image-to-video', 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.highwayapi.ai/v3/async/pixverse-c1-image-to-video",
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([
'image' => '<string>',
'prompt' => '<string>',
'duration' => 123,
'resolution' => '<string>',
'generate_audio_switch' => true
]),
CURLOPT_HTTPHEADER => [
"Authorization: <authorization>",
"Content-Type: <content-type>"
],
]);
$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.highwayapi.ai/v3/async/pixverse-c1-image-to-video"
payload := strings.NewReader("{\n \"image\": \"<string>\",\n \"prompt\": \"<string>\",\n \"duration\": 123,\n \"resolution\": \"<string>\",\n \"generate_audio_switch\": true\n}")
req, _ := http.NewRequest("POST", url, payload)
req.Header.Add("Content-Type", "<content-type>")
req.Header.Add("Authorization", "<authorization>")
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.highwayapi.ai/v3/async/pixverse-c1-image-to-video")
.header("Content-Type", "<content-type>")
.header("Authorization", "<authorization>")
.body("{\n \"image\": \"<string>\",\n \"prompt\": \"<string>\",\n \"duration\": 123,\n \"resolution\": \"<string>\",\n \"generate_audio_switch\": true\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.highwayapi.ai/v3/async/pixverse-c1-image-to-video")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["Content-Type"] = '<content-type>'
request["Authorization"] = '<authorization>'
request.body = "{\n \"image\": \"<string>\",\n \"prompt\": \"<string>\",\n \"duration\": 123,\n \"resolution\": \"<string>\",\n \"generate_audio_switch\": true\n}"
response = http.request(request)
puts response.read_body{
"task_id": "<string>"
}The PixVerse C1 image-to-video model converts static images into cinematic dynamic videos, supporting durations of 1–15 seconds, up to 1080p resolution, and optional native audio generation.
This is an asynchronous API and will only return the task_id of the asynchronous task. You should use this task_id to request the Get Task Result API to retrieve the generated result.
Request Headers
string
必填
Enum value:
application/jsonstring
必填
Bearer authentication format: Bearer {{API Key}}.
Request Body
string
必填
URL of the reference image for the first frame of the video; supports .jpg, .jpeg, and .png formats.
string
必填
A text prompt describing the desired motion effect, camera style, and atmosphere, up to 2048 characters.Length limit: 0 - 2048
integer
默认值:5
Duration of the generated video in seconds, ranging from 1 to 15.Value range: [1, 15]
string
默认值:"720p"
Resolution of the output video.Available values:
360p, 540p, 720p, 1080pboolean
默认值:false
Whether to generate native audio while generating the video.
Response Information
string
必填
Use the task_id to request the Get Task Result API to retrieve the generated output.
最后修改于 2026年6月10日