Sora 2 + Stabil + Pro
Wählen Sie die Modellsaite, die Ihren Qualitäts- und Kostenanforderungen entspricht: sora-2, sora-2-stable oder sora-2-pro.
Starten Sie aus einem Bild einen Job, verfolgen Sie ihn sicher und laden Sie das Video herunter.
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")Das Beispiel nutzt echte Tikdek-Endpunkte und behandelt alle Endzustände.
Wählen Sie die Modellsaite, die Ihren Qualitäts- und Kostenanforderungen entspricht: sora-2, sora-2-stable oder sora-2-pro.
Erstellen Sie eine Aufgabe und fragen Sie dann den Prüfergebnis-Endpunkt ab, um Status und Fortschritt ohne SSE synchron zu halten.
Verarbeiten Sie bis zu 20 Videogenerierungsaufgaben gleichzeitig. Kontaktieren Sie uns für höhere Limits.
Produktionsreif integrieren
Schlüssel serverseitig halten, Wiederholungen begrenzen, Task-IDs protokollieren und Ergebnisse sichern.
Senden Sie die Tikdek-Anfrage mit Ihrer Eingabeaufforderung und speichern Sie dann die zurückgegebene Task-ID.
Rufen Sie den Prüfergebnis-Endpunkt auf, bis der Status „Erfolgreich“ oder „Fehlgeschlagen“ lautet.
Verwenden Sie die speichergestützten URLs in result_url/result_urls, um das generierte Video bereitzustellen oder herunterzuladen.
Erstellen Sie einen API-Schlüssel in der Konsole und fügen Sie ihn dann als Autorisierung ein: Bearer YOUR_API_KEY. Schlüssel können jederzeit gedreht werden.
Speichern Sie nach dem Aufruf von create die Task-ID. Rufen Sie /api/video-generations/check-result alle 3–5 Sekunden auf, bis der Status erfolgreich oder fehlgeschlagen ist, und verwenden Sie dann result_url/result_urls.
Wir erstatten Credits automatisch zurück, wenn eine Aufgabe fehlschlägt, und geben „refund_trans_no“ plus „credits_refunded=true“ in der Prüfergebnis-Nutzlast für Prüfprotokolle zurück.
API-Schlüssel erstellen, Beispiel ausführen und bei höherer Last einen Webhook ergänzen.