Guide Python

API image vers vidéo avec Python

Créez une tâche depuis une image, suivez son état et téléchargez la vidéo terminée.

Python : créer, suivre, télécharger
import os
import time
import requests

base_url = "https://sora2-api.com"
headers = {
    "Authorization": f"Bearer {os.environ['TIKDEK_API_KEY']}",
    "Content-Type": "application/json",
}

created = requests.post(
    f"{base_url}/api/v1/video/sora-video",
    headers=headers,
    json={
        "model": "sora-2-pro",
        "prompt": "Slow camera push-in, rain moving across the frame",
        "url": "https://example.com/reference-frame.jpg",
        "aspectRatio": "16:9",
        "webHook": "-1",
        "isPublic": False,
    },
    timeout=30,
)
created.raise_for_status()
task_id = created.json()["data"]["id"]

for _ in range(90):
    response = requests.post(
        f"{base_url}/api/video-generations/check-result",
        headers=headers,
        json={"taskId": task_id},
        timeout=30,
    )
    response.raise_for_status()
    task = response.json()["data"]

    if task["status"] == "succeeded":
        video = requests.get(task["result_url"], timeout=120)
        video.raise_for_status()
        open("result.mp4", "wb").write(video.content)
        break

    if task["status"] == "failed":
        raise RuntimeError(task.get("error_message") or "Generation failed")

    time.sleep(4)
else:
    raise TimeoutError(f"Task {task_id} did not finish in time")

Un cycle de requête Python complet

L'exemple utilise les endpoints Tikdek réels et traite tous les états finaux.

Sora 2 + Stable + Pro

Choisissez la chaîne de modèle qui correspond à vos besoins en matière de qualité et de coût : sora-2, sora-2-stable ou sora-2-pro.

Sondage prévisible

Créez une tâche, puis interrogez le point de terminaison du résultat de la vérification pour maintenir le statut et la progression synchronisés sans SSE.

20 demandes simultanées

Traitez jusqu'à 20 tâches de génération vidéo simultanément. Contactez-nous pour des limites plus élevées.

Flux d'intégration recommandé

Sécurisez l'intégration en production

Gardez les clés côté serveur, limitez les tentatives, journalisez les ID et stockez vite les résultats.

Créez la tâche

Envoyez la requête Tikdek avec votre invite, puis stockez le taskId renvoyé.

Suivez les progrès

Appelez le point de terminaison du résultat de la vérification jusqu'à ce que l'état devienne réussi ou échoué.

Livrez la vidéo

Utilisez les URL sauvegardées sur le stockage dans result_url/result_urls pour diffuser ou télécharger la vidéo générée.

Questions fréquemment posées

Comment authentifier mes demandes ?

Créez une clé API dans la console, puis incluez-la comme Autorisation : Bearer YOUR_API_KEY. Les clés peuvent être tournées à tout moment.

Comment dois-je interroger les résultats ?

Après avoir appelé create, stockez le taskId. Appelez /api/video-generations/check-result toutes les 3 à 5 secondes jusqu'à ce que le statut soit réussi ou échoué, puis utilisez result_url/result_urls.

Comment sont gérés les crédits en cas d’échec ?

Nous remboursons automatiquement les crédits lorsqu'une tâche échoue et renvoyons remboursé_trans_no plus credits_refunded=true dans la charge utile du résultat de la vérification pour les pistes d'audit.

Passez du script à la production

Créez une clé, lancez l'exemple puis ajoutez un webhook lorsque la charge augmente.