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.
Créez une tâche depuis une image, suivez son état et téléchargez la vidéo terminée.
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")L'exemple utilise les endpoints Tikdek réels et traite tous les états finaux.
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.
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.
Traitez jusqu'à 20 tâches de génération vidéo simultanément. Contactez-nous pour des limites plus élevées.
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.
Envoyez la requête Tikdek avec votre invite, puis stockez le taskId renvoyé.
Appelez le point de terminaison du résultat de la vérification jusqu'à ce que l'état devienne réussi ou échoué.
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.
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.
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.
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.
Créez une clé, lancez l'exemple puis ajoutez un webhook lorsque la charge augmente.