API Video Summarization

March 16, 2026

API Video Summarization

Soumettez une vidéo de n'importe quelle durée et recevez une vue d'ensemble structurée, des hashtags et des temps forts générés par IA. L'API prend en charge tous les types de contenus, des clips courts aux vidéos de plusieurs heures, depuis les principales plateformes et les fichiers téléversés localement, avec des paramètres de langue.

Sources Vidéo Prises en Charge

L'API accepte les URLs des plateformes suivantes : YouTube, Vimeo, Dailymotion, Kick, Twitch, TikTok, Facebook, Zoom, Rumble et plus encore.

Vous pouvez également résumer des fichiers vidéo ou audio locaux que vous téléversez — le téléversement local nécessite un abonnement Standard ou supérieur.

Flux de Travail

  1. Soumettez une tâche de résumé depuis une URL de vidéo
  2. Interrogez les résultats jusqu'à ce que le statut soit SUCCEEDED

Soumettre une Tâche de Résumé

Soumettez une nouvelle tâche de résumé. C'est le point d'entrée pour toutes les fonctionnalités de résumé.

POST https://wayinvideo-api.wayin.ai/api/v2/summaries

Corps de la Requête

ParamètreTypeObligatoireDéfautDescription
video_urlstringOuiL'URL de la vidéo source ou l'identifiant du fichier téléversé
source_langstringNonnullLangue source de la vidéo (voir Langues prises en charge). Si null, le système détecte automatiquement la langue d'origine.
target_langstringNonnullLangue cible pour le contenu de sortie, y compris le résumé, les descriptions et les temps forts (voir Langues prises en charge). Si null, la langue de sortie correspond à source_lang.

Exemple de Requête

curl -X POST https://wayinvideo-api.wayin.ai/api/v2/summaries \
  -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_lang": "en"
  }'
import requests

requests.post(
    "https://wayinvideo-api.wayin.ai/api/v2/summaries",
    headers={
        "Authorization": "Bearer YOUR_API_KEY",
        "x-wayinvideo-api-version": "v2",
    },
    json={
        "video_url": "https://www.youtube.com/watch?v=example",
        "target_lang": "en",
    },
)
await fetch("https://wayinvideo-api.wayin.ai/api/v2/summaries", {
  method: "POST",
  headers: {
    Authorization: "Bearer YOUR_API_KEY",
    "x-wayinvideo-api-version": "v2",
    "Content-Type": "application/json",
  },
  body: JSON.stringify({
    video_url: "https://www.youtube.com/watch?v=example",
    target_lang: "en",
  }),
});

Réponse

{
  "data": {
    "id": "sum_proj_001",
    "name": "sample project name",
    "status": "CREATED"
  }
}
ChampTypeDescription
idstringIdentifiant de la tâche (utilisé dans les requêtes suivantes)
namestringNom de la tâche
statusstringCREATED, QUEUED, ONGOING, SUCCEEDED, FAILED

Exemples

Scénarios courants de résumé. Remplacez YOUR_API_KEY par une clé issue du Tableau de bord API.

Résumer une vidéo YouTube

curl -X POST https://wayinvideo-api.wayin.ai/api/v2/summaries \
  -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"}'

Résumer un long épisode de podcast

Les podcasts de plusieurs heures fonctionnent de la même manière — soumettez et interrogez. La réponse inclut des temps forts de la timeline pour parcourir rapidement des heures d'audio.

curl -X POST https://wayinvideo-api.wayin.ai/api/v2/summaries \
  -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"}'

Résumer un webinaire dans une autre langue

Définissez target_lang pour traduire le résumé, les temps forts et les descriptions dans la langue cible même lorsque la vidéo source est dans une langue différente.

curl -X POST https://wayinvideo-api.wayin.ai/api/v2/summaries \
  -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",
    "source_lang": "en",
    "target_lang": "ja"
  }'

Récupérer les Résultats du Résumé

Récupérez le résumé, les temps forts et les tags. Interrogez jusqu'à ce que status soit SUCCEEDED.

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

Paramètres de Chemin

ParamètreTypeObligatoireDescription
idstringOuiL'ID de tâche retourné par l'endpoint de soumission

Exemple de Requête

curl -X GET https://wayinvideo-api.wayin.ai/api/v2/summaries/results/sum_proj_001 \
  -H "Content-Type: application/json" \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -H "x-wayinvideo-api-version: v2"

Réponse

{
  "data": {
    "status": "SUCCEEDED",
    "title": "sample title",
    "video_thumbnail": "https://cdn.example.com/thumb/video_001.jpg",
    "summary": "sample summary text",
    "tags": ["#topic1", "#topic2", "#topic3"],
    "highlights": [
      {
        "start": 0,
        "end": 196000,
        "desc": "sample section title",
        "events": [
          {
            "timestamp": 160,
            "desc": "sample event description"
          },
          {
            "timestamp": 17920,
            "desc": "sample event description"
          }
        ]
      }
    ],
    "cost_usage": 54.0
  }
}

Champs de la Réponse de Résumé

ChampTypeDescription
statusstringCREATED, QUEUED, ONGOING, SUCCEEDED, FAILED
error_messagestringRaison de l'erreur (présent uniquement quand status est FAILED)
titlestringTitre généré par IA
video_thumbnailstringURL de la miniature de la vidéo
summarystringAperçu textuel complet
tagsstring[]Hashtags générés par IA
highlightsarraySegments de temps forts de la timeline (voir ci-dessous)
cost_usagenumberCrédits API consommés pour cette requête

Objet Highlight

ChampTypeDescription
startnumberTemps de début en millisecondes
endnumberTemps de fin en millisecondes
descstringTitre / description de la section
eventsarrayÉvénements clés au sein du temps fort

Objet Event

ChampTypeDescription
timestampnumberHorodatage de l'événement en millisecondes
descstringDescription de l'événement

FAQ

Quelle est la durée maximale d'une vidéo ?

Il n'y a pas de limite stricte. L'API prend en charge les clips courts comme les vidéos longues, notamment les épisodes de podcast, les webinaires complets, les enregistrements de cours et les rediffusions de livestreams.

Que contient la réponse du résumé ?

Une vue d'ensemble structurée, des hashtags et une timeline de segments de temps forts avec horodatages de début/fin et descriptions. Les temps forts facilitent le rendu d'une interface timeline ou la génération automatique de marqueurs de chapitres.

Puis-je obtenir un résumé dans une langue différente de la source ?

Oui — passez target_lang pour traduire la vue d'ensemble, les descriptions et les temps forts dans la langue cible même lorsque la vidéo source est dans une langue différente.

Quelles sources vidéo sont prises en charge ?

Les URLs de YouTube, Vimeo, Dailymotion, Kick, Twitch, TikTok, Facebook, Zoom, Rumble et plus encore, ainsi que les téléversements de fichiers locaux via l'API Upload.