Zum Hauptinhalt springen
POST
/
v1
/
videos
/
generations
curl --request POST \
  --url https://api.apimart.ai/v1/videos/generations \
  --header 'Authorization: Bearer <token>' \
  --header 'Content-Type: application/json' \
  --data '{
    "model": "kling-v3-omni",
    "prompt": "Make the person in <<<image_1>>> wave at the camera",
    "image_urls": ["https://upload.apimart.ai/f/models/9998230426123070-e9d6af04-cb5e-4731-8ae7-abf144cb0d29-9998230586368386-29641169-f698-4ab9-9b6d-380899e6521e-9998230593110693-c1741a3a-.webp"],
    "mode": "std",
    "duration": 5,
    "aspect_ratio": "16:9"
  }'
{
  "code": 200,
  "data": [
    {
      "status": "submitted",
      "task_id": "task_xxxxxxxxxx"
    }
  ]
}

Documentation Index

Fetch the complete documentation index at: https://docs.apimart.ai/llms.txt

Use this file to discover all available pages before exploring further.

curl --request POST \
  --url https://api.apimart.ai/v1/videos/generations \
  --header 'Authorization: Bearer <token>' \
  --header 'Content-Type: application/json' \
  --data '{
    "model": "kling-v3-omni",
    "prompt": "Make the person in <<<image_1>>> wave at the camera",
    "image_urls": ["https://upload.apimart.ai/f/models/9998230426123070-e9d6af04-cb5e-4731-8ae7-abf144cb0d29-9998230586368386-29641169-f698-4ab9-9b6d-380899e6521e-9998230593110693-c1741a3a-.webp"],
    "mode": "std",
    "duration": 5,
    "aspect_ratio": "16:9"
  }'
{
  "code": 200,
  "data": [
    {
      "status": "submitted",
      "task_id": "task_xxxxxxxxxx"
    }
  ]
}

Autorisierung

Authorization
string
erforderlich
Alle API-Endpunkte erfordern eine Authentifizierung per Bearer TokenAPI-Schlüssel abrufen:Besuchen Sie die Seite zur API-Schlüsselverwaltung, um Ihren API-Schlüssel zu erhaltenFügen Sie ihn dem Anfrage-Header hinzu:
Authorization: Bearer YOUR_API_KEY

Anfrageparameter

model
string
erforderlich
Name des VideogenerierungsmodellsUnterstützte Modelle:
  • kling-v3-omni — Kling v3 Omni (einheitliche Schnittstelle)
prompt
string
erforderlich
Positiver TextpromptUnterstützt das Referenzieren von Bildern aus image_urls mit der Syntax <<<image_N>>>, wobei N bei 1 beginnt.Beispiel: "Make the person in <<<image_1>>> wave at the camera"
Wenn Bilder bereitgestellt werden, der Prompt aber keine <<<image_N>>>-Referenz enthält, fügt das System automatisch <<<image_1>>> an den Anfang des Prompts an.
negative_prompt
string
Negativer Prompt zum Ausschluss unerwünschter Inhalte. Maximale Länge: 2500 Zeichen.
mode
string
Standard:"std"
GenerierungsmodusOptionen:
  • std — Standardmodus (720P)
  • pro — Profimodus (1080P)
  • 4k — 4K Ultra-HD-Modus
Standard: std
duration
integer
Standard:"5"
Standard: 5 Videodauer (Sekunden)Bereich: 3–15 (mindestens 3 Sekunden, maximal 15 Sekunden)⚠️ Hinweis: Muss eine einfache Zahl sein (z. B. 6), keine Anführungszeichen, sonst tritt ein Fehler auf
aspect_ratio
string
Standard:"16:9"
Seitenverhältnis des VideosOptionen:
  • 16:9 — Querformat
  • 9:16 — Hochformat
  • 1:1 — Quadrat
Standard: 16:9
image_urls
array<url>
Array mit Bild-URLs für BildreferenzenReferenzieren Sie die entsprechenden Bilder im Prompt mit der Syntax <<<image_N>>> (N beginnt bei 1)Beispiel: ["https://example.com/photo.jpg"]
  • Bild-URLs müssen öffentlich zugänglich sein, ohne Hotlink-Schutz
  • Im Image-to-Video-Modus kann aspect_ratio durch das tatsächliche Seitenverhältnis des Bildes überschrieben werden
image_with_roles
array<object>
Rollenbasiertes Bild-Array, empfohlen für Image-to-Video.Format jedes Elements: { "url": "...", "role": "..." }
  • first_frame: erstes Bild
  • last_frame: letztes Bild
  • reference: Referenzbild
image_urls und image_with_roles schließen sich gegenseitig aus. Verwenden Sie nur eines davon.
video_list
array
Liste der Referenzvideos (URL-basiert), bis zu 1 Video.Verwenden Sie refer_type, um Typen zu unterscheiden:
  • base: zu bearbeitendes Video (Standard)
  • feature: Feature-Referenzvideo
Verwenden Sie keep_original_sound, um den Originalton zu steuern:
  • no: nicht behalten (Standard)
  • yes: Originalton behalten
Anfrageformat:
"video_list":[
  { "video_url": "video_url", "refer_type": "base", "keep_original_sound": "no" }
]
  • video_url darf nicht leer sein, und die Video-URL muss zugänglich sein
  • Bei refer_type=base:
    • Erste/letzte Bilder können nicht definiert werden
    • Das Referenzvideo muss 3–10 Sekunden lang sein
    • Die Dauer des erzeugten Videos richtet sich nach dem hochgeladenen Video
  • Bei refer_type=feature und nicht leerer video_url:
    • image_urls darf nur ein Bild für das erste Bild enthalten
  • Video-Anforderungen: Nur MP4/MOV; mindestens 3 Sekunden Dauer; Auflösung 720–2160 px; Bildrate 24–60 fps (Ausgabe ist 24 fps); maximal 200 MB Größe
multi_shot
boolean
Standard:"false"
Ob der Multi-Shot-Modus aktiviert werden soll.
shot_type
string
Methode zur Shot-Aufteilung: customize / intelligence.Erforderlich, wenn multi_shot=true.
multi_prompt
array<object>
Multi-Shot-Liste, jedes Element ist { index, prompt, duration }.
  • Mindestens 1 Shot, maximal 6 Shots
  • Jede Shot-duration muss eine ganze Zahl und >= 1 sein
  • Die Summe aller Shot-Dauern muss der duration auf oberster Ebene entsprechen
  • index muss bei 1 beginnen und fortlaufend ansteigen
  • Erforderlich, wenn multi_shot=true und shot_type=customize
Beispiel:
[
  { "index": 1, "prompt": "a happy dog in running@element_cat", "duration": 3 },
  { "index": 2, "prompt": "a happy dog play with a cat@element_dog", "duration": 3 }
]
element_list
array<object>
Liste der Referenzsubjekte, bis zu 3 Subjekte. Unterstützt:
  • Subjekte direkt mit name, description, element_input_urls erstellen
Allgemeines Format:
[
  {
    "name": "element_dog",
    "description": "a golden retriever, fluffy fur, friendly expression",
    "element_input_urls": [
      "https://example.com/image1.png",
      "https://example.com/image2.png"
    ]
  },
  {
    "name": "element_cat",
    "description": "an orange tabby cat, round face, bright eyes",
    "element_input_urls": [
      "https://example.com/image1.png",
      "https://example.com/image2.png"
    ]
  }
]
Hinweise:
  • Für die direkte Erstellung sind name, description, element_input_urls erforderlich
  • element_input_urls: 2 bis 4 Bilder pro Subjekt (erstes als Frontalansicht, andere als Referenzen)
  • Verwenden Sie im prompt @name, z. B. "@element_dog and @element_cat are playing on the grass"
watermark
boolean
Ob ein Wasserzeichen hinzugefügt werden soll
audio
boolean
Standard:"false"
Ob das Video mit Audio generiert werden soll
Dieser Parameter schließt video_list aus.Wenn video_list einen Wert hat, ist der Parameter audio nicht erforderlich.

Parameter-Einschränkungen und -Grenzen

  • image_urls und image_with_roles schließen sich gegenseitig aus
  • mode=4k ist für kling-v3-omni verfügbar
  • Eingabe nur des letzten Bildes (last_frame ohne erstes Bild) ist ungültig
  • Erste/letzte Bilder und Videobearbeitung schließen sich gegenseitig aus: Bei video_list.refer_type=base (oder weggelassen) sind erste/letzte Bilder nicht zulässig
  • Wenn video_list vorhanden ist, wird audio ignoriert
  • video_list unterstützt maximal 1 Video
  • multi_prompt unterstützt bis zu 6 Shots, wobei index bei 1 beginnt und fortlaufend ansteigt

Bildreferenz-Syntax

Das Omni-Modell verwendet die Syntax <<<image_N>>>, um Bilder in Prompts zu referenzieren, und bietet so ein einheitliches Text-to-Video- / Image-to-Video-Erlebnis:
SyntaxBeschreibung
<<<image_1>>>Verweist auf das 1. Bild im Array image_urls
<<<image_2>>>Verweist auf das 2. Bild im Array image_urls
Automatische Referenz: Wenn image_urls bereitgestellt wird, der Prompt aber keine <<<image_N>>>-Referenz enthält, fügt das System automatisch <<<image_1>>> an den Anfang des Prompts an.

Antwort

code
integer
Statuscode der Antwort, 200 bei Erfolg
data
array
Datenarray der Antwort

Anwendungsfälle

Fall 1: Text-zu-Video (Standardmodus)

{
  "model": "kling-v3-omni",
  "prompt": "A golden retriever running on the beach, sunset, cinematic",
  "mode": "std",
  "duration": 5,
  "aspect_ratio": "16:9"
}

Fall 2: Bildreferenz (einzelnes Bild)

{
  "model": "kling-v3-omni",
  "prompt": "Make the person in <<<image_1>>> wave at the camera",
  "image_urls": ["https://upload.apimart.ai/f/models/9998230426123070-e9d6af04-cb5e-4731-8ae7-abf144cb0d29-9998230586368386-29641169-f698-4ab9-9b6d-380899e6521e-9998230593110693-c1741a3a-.webp"],
  "mode": "pro",
  "duration": 5
}

Fall 3: Mehrere Bildreferenzen

{
  "model": "kling-v3-omni",
  "prompt": "The character in <<<image_1>>> walks toward the scene in <<<image_2>>>",
  "image_urls": [
    "https://example.com/character.jpg",
    "https://example.com/scene.jpg"
  ],
  "mode": "pro",
  "duration": 5
}

Fall 4: Bild ohne explizite Referenz bereitgestellt (automatisch hinzugefügt)

{
  "model": "kling-v3-omni",
  "prompt": "The person slowly turns and smiles",
  "image_urls": ["https://upload.apimart.ai/f/models/9998230426123070-e9d6af04-cb5e-4731-8ae7-abf144cb0d29-9998230586368386-29641169-f698-4ab9-9b6d-380899e6521e-9998230593110693-c1741a3a-.webp"],
  "mode": "std",
  "duration": 5
}
Das System fügt <<<image_1>>> automatisch am Anfang des Prompts hinzu, was "<<<image_1>>>The person slowly turns and smiles" entspricht.

Fall 5: Video mit Audio generieren

{
  "model": "kling-v3-omni",
  "prompt": "A yellow canary singing on a branch",
  "audio": true,
  "mode": "std",
  "duration": 5
}
Hinweis: audio schließt video_list aus. Wenn video_list einen Wert hat, ist der Parameter audio nicht erforderlich.
Aufgabenergebnisse abfragenDie Videogenerierung ist eine asynchrone Aufgabe, die bei der Einreichung eine task_id zurückgibt. Verwenden Sie den Endpunkt Aufgabenstatus abrufen, um Fortschritt und Ergebnis abzufragen.