List video models
curl --request GET \
--url https://api.wondercraft.ai/v1/video/models \
--header 'X-API-KEY: <api-key>'import requests
url = "https://api.wondercraft.ai/v1/video/models"
headers = {"X-API-KEY": "<api-key>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {'X-API-KEY': '<api-key>'}};
fetch('https://api.wondercraft.ai/v1/video/models', 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.wondercraft.ai/v1/video/models",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
CURLOPT_HTTPHEADER => [
"X-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"
"net/http"
"io"
)
func main() {
url := "https://api.wondercraft.ai/v1/video/models"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("X-API-KEY", "<api-key>")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.get("https://api.wondercraft.ai/v1/video/models")
.header("X-API-KEY", "<api-key>")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.wondercraft.ai/v1/video/models")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
request["X-API-KEY"] = '<api-key>'
response = http.request(request)
puts response.read_body{
"models": [
{
"id": "<string>",
"title": "<string>",
"description": "<string>",
"modes": [
"text"
],
"resolutions": [
{
"resolution": "480p",
"label": "<string>",
"credits_per_second": 123
}
],
"default_resolution": "480p",
"durations": [
123
],
"default_duration": 123,
"aspect_ratios": [
"16:9"
],
"supports_audio": true,
"output_duration_follows_source": true,
"max_reference_images": 123,
"max_reference_videos": 123
}
]
}Video Generation
List video models
Lists the video models available through the API, with the modes, resolutions (and credits per
second at each), durations and aspect ratios each one supports. Requires a valid X-API-KEY header.
GET
/
video
/
models
List video models
curl --request GET \
--url https://api.wondercraft.ai/v1/video/models \
--header 'X-API-KEY: <api-key>'import requests
url = "https://api.wondercraft.ai/v1/video/models"
headers = {"X-API-KEY": "<api-key>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {'X-API-KEY': '<api-key>'}};
fetch('https://api.wondercraft.ai/v1/video/models', 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.wondercraft.ai/v1/video/models",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
CURLOPT_HTTPHEADER => [
"X-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"
"net/http"
"io"
)
func main() {
url := "https://api.wondercraft.ai/v1/video/models"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("X-API-KEY", "<api-key>")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.get("https://api.wondercraft.ai/v1/video/models")
.header("X-API-KEY", "<api-key>")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.wondercraft.ai/v1/video/models")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
request["X-API-KEY"] = '<api-key>'
response = http.request(request)
puts response.read_body{
"models": [
{
"id": "<string>",
"title": "<string>",
"description": "<string>",
"modes": [
"text"
],
"resolutions": [
{
"resolution": "480p",
"label": "<string>",
"credits_per_second": 123
}
],
"default_resolution": "480p",
"durations": [
123
],
"default_duration": 123,
"aspect_ratios": [
"16:9"
],
"supports_audio": true,
"output_duration_follows_source": true,
"max_reference_images": 123,
"max_reference_videos": 123
}
]
}