Sora 2 + Estable + Pro
Elija el modelo de cadena que se ajuste a sus necesidades de calidad y costo: sora-2, sora-2-stable o sora-2-pro.
Crea una tarea desde una imagen, sigue su estado y descarga el vídeo terminado.
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")El ejemplo usa los endpoints reales de Tikdek y gestiona todos los estados finales.
Elija el modelo de cadena que se ajuste a sus necesidades de calidad y costo: sora-2, sora-2-stable o sora-2-pro.
Cree una tarea y luego sondee el punto final de verificación de resultados para mantener el estado y el progreso sincronizados sin SSE.
Procese hasta 20 tareas de generación de video simultáneamente. Contáctenos para límites más altos.
Prepara la integración para producción
Guarda las claves en el servidor, limita los reintentos, registra los ID y conserva pronto los resultados.
Envíe la solicitud de Tikdek con su mensaje y luego almacene el taskId devuelto.
Llame al punto final de verificación de resultados hasta que el estado sea exitoso o fallido.
Utilice las URL respaldadas por almacenamiento en result_url/result_urls para publicar o descargar el video generado.
Cree una clave API en la consola y luego inclúyala como Autorización: Portador YOUR_API_KEY. Las claves se pueden girar en cualquier momento.
Después de llamar a crear, almacene el taskId. Llame a /api/video-generations/check-result cada 3-5 segundos hasta que el estado sea exitoso o fallido, luego use result_url/result_urls.
Reembolsamos créditos automáticamente cuando falla una tarea y devolvemos refund_trans_no más credits_refunded=true en la carga útil de resultados de verificación para pistas de auditoría.
Crea una clave, ejecuta el ejemplo y añade un webhook cuando aumente la carga.