AGTCloud API Docs
GuidesRéférence APIIntégrations et ressourcesMises à jour et aide
Génération de vidéosPlatform Video Generations

Récupérer une vidéo

Consultez une tâche vidéo via l’interface Video Generations de la plateforme.

Utilisez l’ID de tâche renvoyé par l’interface de création pour consulter l’état, le résultat vidéo et les métadonnées. Arrêtez les consultations périodiques lorsque la tâche passe à l’état succeeded ou failed.

GET/v1/video/generations/{task_id}

Utilisez le Task ID renvoyé par l’API de création pour consulter l’état et le résultat actuels de la tâche vidéo. Arrêtez les consultations périodiques lorsque la tâche atteint l’état succeeded ou failed.

Cette API utilise les chemins et la structure d’état des tâches Platform Video Generations. Elle n’est pas équivalente à l’API OpenAI Videos de récupération par Video ID.

Authentification

bearerAuth
AuthentificationBearer <token>

Utilisez Bearer your-api-key dans le Header Authorization.

Emplacement: header

Paramètres de chemin

task_id*string

Task ID renvoyé lors de la création d’une tâche vidéo sur la plateforme.

Longueur1 <= length

Corps de réponse

application/json

application/json

application/json

application/json

application/json

application/json

Consultations périodiques de l’état de la tâche

La génération vidéo est asynchrone. Après avoir soumis une tâche, vous pouvez utiliser les intervalles suivants pour concilier rapidité d’accès au résultat et fréquence des requêtes :

  1. Attendez d’abord 2 à 3 secondes après la soumission de la tâche.
  2. Pendant les 30 premières secondes, effectuez une consultation toutes les 5 secondes.
  3. Entre 30 secondes et 2 minutes, effectuez une consultation toutes les 10 secondes.
  4. Après 2 minutes, effectuez une consultation toutes les 30 secondes.
  5. Définissez un délai d’attente total de 5 à 10 minutes. Arrêtez immédiatement lorsque la tâche passe à l’état succeeded ou failed.

Exemple de consultations périodiques en JavaScript

async function pollVideoStatus(taskId, maxAttempts = 30) {
  const apiOrigin = 'https://api.agtcloud.cn';
  const headers = {
    Authorization: 'Bearer your-api-key',
  };

  await new Promise((resolve) => setTimeout(resolve, 3000));

  for (let attempt = 0; attempt < maxAttempts; attempt += 1) {
    const response = await fetch(
      `${apiOrigin}/v1/video/generations/${encodeURIComponent(taskId)}`,
      { headers },
    );

    if (!response.ok) {
      throw new Error(`Échec de la consultation avec HTTP ${response.status}`);
    }

    const result = await response.json();

    if (result.status === 'succeeded') {
      return result;
    }

    if (result.status === 'failed') {
      throw new Error(result.error?.message ?? 'Échec de la génération vidéo');
    }

    const delay = attempt < 6 ? 5000 : attempt < 12 ? 10000 : 30000;
    await new Promise((resolve) => setTimeout(resolve, delay));
  }

  throw new Error('Délai d’attente dépassé lors des consultations de la tâche vidéo');
}

pollVideoStatus('TASK_ID').then(console.log).catch(console.error);