# KI-Clipping API

> Senden Sie ein langes Video und erhalten Sie KI-generierte virale Clips mit Zeitstempeln, Titeln, Beschreibungen und Hashtags.

## KI-Clipping API

Senden Sie ein Video beliebiger Länge und erhalten Sie alle nach Viralpotenzial geordneten Clips. Jeder Clip enthält automatisch erkannte Start-/Endzeiten, KI-generierte Titel, Beschreibungen und Hashtags. Optional werden gerenderte Clip-Videos mit KI-Reframing und animierten Untertiteln exportiert.

Sie können Clips aus KI-Clipping direkt in verbundenen Social-Media-Konten veröffentlichen. Weitere Informationen finden Sie in der [Social Media Publishing API](https://wayin.ai/de/api-docs/social-media-publishing/), um Konten zu verbinden und Veröffentlichungsaufgaben zu erstellen.

## Unterstützte Videoquellen

YouTube, Vimeo, Dailymotion, Kick, Twitch, TikTok, Facebook, Zoom, Rumble und weitere.

Sie können auch [lokale Videodateien, die Sie hochladen](https://wayin.ai/de/api-docs/upload/), clippen — der lokale Upload erfordert ein [**Starter**-Abonnement oder höher](https://wayin.ai/pricing/).

---

## Clipping-Aufgabe einreichen

```
POST https://wayinvideo-api.wayin.ai/api/v2/clips
```

### Anfragekörper

| Parameter | Typ | Erforderlich | Standard | Beschreibung |
|-----------|-----|--------------|----------|--------------|
| `video_url` | string | Ja | — | Quellvideo-URL oder Dateikennung von der [Upload-API](https://wayin.ai/de/api-docs/upload/). |
| `project_name` | string | Nein | `""` | Benutzerdefinierter Aufgabenname |
| `source_lang` | string | Nein | `null` | Quellsprache des Videos. Wenn `null`, automatische Erkennung. |
| `target_lang` | string | Nein | `null` | Zielsprache für Titel, Beschreibungen und Untertitel. |
| `target_duration` | string | Nein | `DURATION_0_90` | Erwartete Clip-Dauer: `DURATION_0_30`, `DURATION_0_90`, `DURATION_30_60`, `DURATION_60_90`, `DURATION_90_180`, `DURATION_180_300`. |
| `limit` | number | Nein | `null` | Maximale Anzahl zurückzugebender Clips. |
| `enable_export` | boolean | Nein | `false` | `false`: nur Metadaten; `true`: sofortiges Rendern mit Download-Link. |
| `resolution` | string | Nein | `SD_480` | Auflösung: `SD_480`, `HD_720`, `FHD_1080`, `QHD_2K`, `UHD_4K`. |
| `enable_caption` | boolean | Nein | `false` | Animierte Untertitel beim Rendern hinzufügen. |
| `caption_display` | string | Nein | `original` | Untertitelmodus: `both`, `original`, `translation`. |
| `cc_style_tpl` | string | Nein | `temp-7` | Untertitelstil-Vorlagen-ID (siehe [Untertitelstile](https://wayin.ai/de/api-docs/subtitles-style/)). |
| `enable_ai_hook` | boolean | Nein | `false` | KI-generierten Aufmerksamkeitstext am Anfang oder Ende hinzufügen. |
| `ai_hook_script_style` | string | Nein | `serious` | Hook-Textstil: `serious`, `casual`, `informative`, `conversational`, `humorous`, `parody`, `inspirational`, `dramatic`, `empathetic`, `persuasive`, `neutral`, `excited`, `calm`. |
| `ai_hook_position` | string | Nein | `beginning` | Position: `beginning`, `end`. |
| `enable_ai_reframe` | boolean | Nein | `false` | KI-Reframing aktivieren. Wenn `true`, ist `ratio` erforderlich. |
| `ratio` | string | Erforderlich wenn `enable_ai_reframe` `true` | — | Seitenverhältnis: `RATIO_9_16`, `RATIO_1_1`, `RATIO_4_5`, `RATIO_16_9`. |
| `reframe_layout` | string | Nein | `Auto` | KI-Reframing-Layout. Siehe den Abschnitt Layout-Werte. |
| `enable_more_results` | boolean | Nein | `false` | Mehr Clips generieren. Nur mit **Enterprise**-Abonnement. |
| `enable_express_mode` | boolean | Nein | `false` | **Express-Modus**: halber API-Einheitenverbrauch. Nur mit **Enterprise**-Abonnement. |

### Reframing-Layout-Werte

| `ratio` | Erlaubte `reframe_layout`-Werte |
|---------|----------------------------------|
| `RATIO_16_9` | `Auto`, `Full`, `Fit`, `Grid 4`, `Split 2`, `Trio`, `PiP`, `OTS`, `Screen First` |
| `RATIO_9_16` | `Auto`, `Full`, `Fit`, `Grid 4`, `Split 2`, `Trio`, `PiP`, `Screen First`, `Gameplay A`, `Gameplay B` |
| `RATIO_1_1` | `Auto`, `Full`, `Fit`, `Grid 4`, `Trio` |
| `RATIO_4_5` | `Auto`, `Full`, `Fit`, `Grid 4`, `Split 2`, `Trio`, `PiP`, `Screen First`, `Gameplay A`, `Gameplay B` |

<div class="tabs" data-labels="Mit Export|Ohne Export" data-group="export-mode"></div>

`enable_export` auf `true` gesetzt. Clips werden gerendert, jeder enthält `export_link`.

```bash
curl -X POST https://wayinvideo-api.wayin.ai/api/v2/clips \
  -H "Content-Type: application/json" \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -H "x-wayinvideo-api-version: v2" \
  -d '{"video_url": "https://www.youtube.com/watch?v=example", "target_duration": "DURATION_30_60", "enable_export": true, "resolution": "HD_720", "enable_caption": true, "enable_ai_reframe": true, "ratio": "RATIO_9_16"}'
```

```json
{"data": {"id": "proj_xyz789", "name": "sample project name", "status": "CREATED"}}
```

<div class="tab-divider"></div>

`enable_export` weggelassen oder `false`. Nur Metadaten, kein Rendering.

```bash
curl -X POST https://wayinvideo-api.wayin.ai/api/v2/clips \
  -H "Content-Type: application/json" \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -H "x-wayinvideo-api-version: v2" \
  -d '{"video_url": "https://www.youtube.com/watch?v=example", "target_duration": "DURATION_30_60"}'
```

```json
{"data": {"id": "proj_abc123", "name": "sample project name", "status": "CREATED"}}
```

<div class="tabs-end"></div>

---

## Beispiele

Gängige KI-Clipping-Szenarien. Ersetzen Sie `YOUR_API_KEY` durch einen Schlüssel aus dem [API-Dashboard](https://wayin.ai/wayinvideo/api-dashboard).

### Ein YouTube-Video in virale Clips schneiden

```bash
curl -X POST https://wayinvideo-api.wayin.ai/api/v2/clips \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -H "x-wayinvideo-api-version: v2" \
  -H "Content-Type: application/json" \
  -d '{"video_url": "https://www.youtube.com/watch?v=EXAMPLE"}'
```

### Eine Webinar-Aufzeichnung in vertikale 9:16-Shorts mit Untertiteln schneiden

```bash
curl -X POST https://wayinvideo-api.wayin.ai/api/v2/clips \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -H "x-wayinvideo-api-version: v2" \
  -H "Content-Type: application/json" \
  -d '{
    "video_url": "https://www.youtube.com/watch?v=EXAMPLE",
    "target_duration": "DURATION_30_60",
    "enable_export": true,
    "resolution": "HD_720",
    "enable_caption": true,
    "enable_ai_reframe": true,
    "ratio": "RATIO_9_16"
  }'
```

### Einen Podcast in die bestplatzierten Shorts schneiden

Nützlich für langformatige Inhalte, bei denen Sie nur die Clips mit den höchsten Bewertungen behalten möchten.

```bash
curl -X POST https://wayinvideo-api.wayin.ai/api/v2/clips \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -H "x-wayinvideo-api-version: v2" \
  -H "Content-Type: application/json" \
  -d '{
    "video_url": "https://www.youtube.com/watch?v=EXAMPLE",
    "limit": 5,
    "target_duration": "DURATION_60_90",
    "enable_export": true,
    "resolution": "HD_720",
    "enable_caption": true,
    "enable_ai_reframe": true,
    "ratio": "RATIO_9_16"
  }'
```

---

## Clipping-Ergebnisse abrufen

```
GET https://wayinvideo-api.wayin.ai/api/v2/clips/results/{id}
```

> **Inkrementelle Ergebnisse:** Wenn `status` `ONGOING` ist, gibt jeder Aufruf die bisher generierten Clips zurück.

<div class="tabs" data-labels="Mit Export|Ohne Export" data-group="export-mode"></div>

```json
{
  "data": {"id": "proj_xyz789", "status": "SUCCEEDED", "expire_at": 1741824000000, "cost_usage": 120.0,
           "clips": [{"idx": 0, "title": "sample title", "begin_ms": 15000, "end_ms": 75000,
                      "tags": ["insight"], "desc": "sample description", "score": 81,
                      "export_link": "https://cdn.example.com/export/clip_001.mp4"}]}
}
```

<div class="tab-divider"></div>

```json
{
  "data": {"id": "proj_abc123", "status": "SUCCEEDED", "expire_at": 1741824000000, "cost_usage": 120.0,
           "clips": [{"idx": 0, "title": "sample title", "begin_ms": 15000, "end_ms": 75000,
                      "tags": ["insight"], "desc": "sample description", "score": 81}]}
}
```

<div class="tabs-end"></div>

### Antwortfelder

| Feld | Typ | Beschreibung |
|------|-----|--------------|
| `id` | string | Eindeutige Aufgaben-ID |
| `name` | string | Aufgabenname |
| `status` | string | `CREATED`, `QUEUED`, `ONGOING`, `SUCCEEDED`, `FAILED` |
| `error_message` | string | Fehlerursache (nur wenn `FAILED`) |
| `expire_at` | integer | Ablauf-Zeitstempel in Millisekunden. `-1` bedeutet, dass das Ergebnis nicht abläuft, solange ein kostenpflichtiges Abonnement aktiv ist. Nach Ende des Abonnements wird das Ergebnis noch einen Monat aufbewahrt und läuft dann ab. |
| `cost_usage` | number | Verbrauchte API-Einheiten |
| `clips` | array | Liste der Clip-Objekte |

### Clip-Objekt

| Feld | Typ | Beschreibung |
|------|-----|--------------|
| `idx` | integer | Clip-Index (ab 0, nach Viralpotenzial sortiert) |
| `title` | string | KI-generierter Titel |
| `begin_ms` | number | Startzeit in Millisekunden |
| `end_ms` | number | Endzeit in Millisekunden |
| `thumbnail` | string | Miniaturansicht-URL |
| `tags` | string[] | KI-generierte Hashtags |
| `desc` | string | KI-generierte Beschreibung |
| `score` | number | Viralpotenzial-Score (0–100) |
| `export_link` | string | Download-URL des gerenderten Videos. Läuft nach 24 Stunden ab. |

---

## Bestehende Clips erneut exportieren

Verwenden Sie die [Clips-Export-API](https://wayin.ai/de/api-docs/clips-export/) zum späteren Rendern oder Neuexportieren mit anderen Einstellungen.


---

## FAQ

### Wie lang darf das Video maximal sein?

Es gibt keine feste Längenbegrenzung — die API ist auf stundenlange Inhalte wie Podcasts, Gaming-Livestreams und Webinare ausgelegt. Dateigrößenbeschränkungen gelten nur für [lokale Uploads](https://wayin.ai/de/api-docs/upload/); URL-basierte Quellen sind nicht begrenzt.

### Wie werden Clips eingestuft?

Jeder Clip wird nach seinem Viralpotenzial bewertet — narrative Vollständigkeit, Hook-Stärke, emotionale Höhepunkte und Engagement-Signale. Verwenden Sie den `limit`-Parameter, um nur die Top-N-Clips mit der höchsten Bewertung zu behalten.

### Kann ich Clips erhalten, ohne sie zu rendern?

Ja. Lassen Sie `enable_export` weg (oder setzen Sie es auf `false`), um nur Zeitstempel, Titel, Beschreibungen und Tags zu erhalten. Rendern Sie ausgewählte Clips später mit der [Clips-Export-API](https://wayin.ai/de/api-docs/clips-export/).

### Welche Seitenverhältnisse unterstützt AI Reframe?

`RATIO_9_16` (TikTok / Reels / Shorts), `RATIO_1_1` (Instagram-Feed), `RATIO_4_5` (Instagram-Portrait) und `RATIO_16_9` (Querformat). Siehe die Reframe-Layout-Werte für Layout-Optionen pro Seitenverhältnis.

### Von welchen Plattformen kann ich clippen?

YouTube, Vimeo, Dailymotion, Kick, Twitch, TikTok, Facebook, Zoom, Rumble und mehr, plus lokal hochgeladene Dateien (`mp4`, `mov`, `webm`, `avi`).
