AI Clipping
List AI Clipping
Returns a cursor-paginated list of AI clip jobs in the authenticated user’s workspace, newest first.
GET
/
v3
/
ai-clipping
List AI Clipping
curl --request GET \
--url https://api.heygen.com/v3/ai-clipping \
--header 'x-api-key: <api-key>'import requests
url = "https://api.heygen.com/v3/ai-clipping"
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.heygen.com/v3/ai-clipping', 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.heygen.com/v3/ai-clipping",
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.heygen.com/v3/ai-clipping"
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.heygen.com/v3/ai-clipping")
.header("x-api-key", "<api-key>")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.heygen.com/v3/ai-clipping")
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{
"data": [
{
"id": "<string>",
"title": "<string>",
"input_language": "<string>",
"source_duration": 123,
"output_settings": {
"duration_types": [],
"aspect_ratio": "portrait",
"captions": true,
"caption_style": "<string>",
"prompt": "<string>"
},
"clips": [
{
"id": "<string>",
"duration_seconds": 123,
"title": "<string>",
"virality_score": 50,
"thumbnail_url": "<string>",
"video_url": "<string>",
"failure_message": "<string>"
}
],
"progress": 0,
"callback_id": "<string>",
"created_at": 123,
"failure_message": "<string>"
}
],
"has_more": true,
"next_token": "<string>"
}{
"error": {
"code": "invalid_parameter",
"message": "'limit' must be between 1 and 100.",
"param": "limit",
"doc_url": null
}
}{
"error": {
"code": "authentication_failed",
"message": "Invalid or expired API key. Verify your x-api-key header.",
"param": null,
"doc_url": null
}
}{
"error": {
"code": "rate_limit_exceeded",
"message": "Too many requests. Retry after the duration specified in the Retry-After header.",
"param": null,
"doc_url": null
}
}Authorizations
ApiKeyAuthBearerAuth
HeyGen API key. Obtain from your HeyGen dashboard.
Query Parameters
Maximum number of items per page. Defaults to 10 (lower than other v3 lists) because each item embeds its full clips array.
Required range:
1 <= x <= 100Opaque cursor token for the next page.
Previous
Create ai clippingSubmit a source video and return a job id immediately. The job runs asynchronously and produces one or more short clips per the requested output_settings. Poll GET /v3/ai-clipping/{id} or subscribe to ai_clipping.success / ai_clipping.fail webhooks.
Next
⌘I
List AI Clipping
curl --request GET \
--url https://api.heygen.com/v3/ai-clipping \
--header 'x-api-key: <api-key>'import requests
url = "https://api.heygen.com/v3/ai-clipping"
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.heygen.com/v3/ai-clipping', 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.heygen.com/v3/ai-clipping",
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.heygen.com/v3/ai-clipping"
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.heygen.com/v3/ai-clipping")
.header("x-api-key", "<api-key>")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.heygen.com/v3/ai-clipping")
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{
"data": [
{
"id": "<string>",
"title": "<string>",
"input_language": "<string>",
"source_duration": 123,
"output_settings": {
"duration_types": [],
"aspect_ratio": "portrait",
"captions": true,
"caption_style": "<string>",
"prompt": "<string>"
},
"clips": [
{
"id": "<string>",
"duration_seconds": 123,
"title": "<string>",
"virality_score": 50,
"thumbnail_url": "<string>",
"video_url": "<string>",
"failure_message": "<string>"
}
],
"progress": 0,
"callback_id": "<string>",
"created_at": 123,
"failure_message": "<string>"
}
],
"has_more": true,
"next_token": "<string>"
}{
"error": {
"code": "invalid_parameter",
"message": "'limit' must be between 1 and 100.",
"param": "limit",
"doc_url": null
}
}{
"error": {
"code": "authentication_failed",
"message": "Invalid or expired API key. Verify your x-api-key header.",
"param": null,
"doc_url": null
}
}{
"error": {
"code": "rate_limit_exceeded",
"message": "Too many requests. Retry after the duration specified in the Retry-After header.",
"param": null,
"doc_url": null
}
}
