Skip to Content
APIVideogenerierungÜbersicht

Video API

Eine einheitliche API zur Videogenerierung, kompatibel mit dem Standard OpenRouter Video Generation. Ein Schema deckt Text-zu-Video, Bild-zu-Video, ersten/letzten Frame und referenzgestützte Generierung ab. Senden Sie eine Aufgabe asynchron ab und fragen Sie sie anschließend per Polling ab oder erhalten Sie einen Webhook, sobald sie abgeschlossen ist.

FunktionDetail
Base URLhttps://api.ofox.ai
ProtokollstilOpenRouter-kompatibel (asynchron absenden → Polling / Webhook)
GenerierungsmodusImplizit abgeleitet: keine Bilder = Text-zu-Video · frame_images = Bild / erster-letzter Frame · input_references = referenzgestützt
ErgebniszustellungPolling per GET (ratenbegrenzt) oder callback_url-Webhook (HMAC-signiert, mit Wiederholungen)
VideospeicherungUrsprüngliche Upstream-URL (temporär) + optionaler CDN-Spiegel (persistente signierte URL)

Authentifizierung

Jede Anfrage überträgt Ihren ofox API Key (Format sk-xxx…) im HTTP-Header:

Authorization: Bearer $OFOX_API_KEY

callback_url muss HTTPS verwenden. Webhook-Ziele werden gegen SSRF geprüft — private, Loopback- und Cloud-Metadata-Adressen werden abgelehnt. Eine Nicht-HTTPS- oder interne Adresse schlägt beim Erstellen mit 400 invalid_callback_url fehl.

Schnellstart

1. Aufgabe absenden

Terminal
curl -X POST https://api.ofox.ai/v1/videos \ -H "Authorization: Bearer $OFOX_API_KEY" \ -H "Content-Type: application/json" \ -d '{ "model": "google/veo-3.1", "prompt": "A golden retriever running on the beach at sunset", "duration": 5, "resolution": "1080p", "aspect_ratio": "16:9", "generate_audio": true }'

Der Aufruf gibt sofort 202 mit einer Polling-URL zurück:

{ "id": "9bcf3c60-7db2-4e1a-a1b2-c3d4e5f60718", "status": "pending", "polling_url": "https://api.ofox.ai/v1/videos/9bcf3c60-7db2-4e1a-a1b2-c3d4e5f60718" }

2. Bis zum Abschluss abfragen

Terminal
curl https://api.ofox.ai/v1/videos/9bcf3c60-7db2-4e1a-a1b2-c3d4e5f60718 \ -H "Authorization: Bearer $OFOX_API_KEY"

Fragen Sie weiter ab, bis status einen terminalen Zustand erreicht — completed, failed, cancelled oder expired. Fragen Sie höchstens einmal pro Sekunde ab, oder übergeben Sie beim Erstellen der Aufgabe eine callback_url, um statt Polling einen Webhook zu erhalten. Siehe Videostatus abrufen und Webhooks.

Endpunkte

MethodeEndpunktBeschreibung
POST/v1/videosVideoaufgabe erstellen
GET/v1/videos/{id}Aufgabenstatus und Ergebnis abrufen
DELETE/v1/videos/{id}Aufgabe abbrechen

Sekundengenaue Abrechnung

Videomodelle werden nach Zeit und nicht nach Tokens abgerechnet. Der passende Eintrag in pricing.video_pricing.tiers legt den USD-Preis pro Sekunde anhand von Auflösung, Eingabetyp und Audiooptionen fest. pricing.output_video_per_second ist lediglich der niedrigste Startpreis des Modells. Die Schätzung lautet Tier-Preis × angeforderte Dauer; nach Abschluss gelten usage.video_seconds und usage.video_cost aus der Antwort als endgültige Abrechnungsdauer und tatsächliche Kosten. Bei Video-zu-Video-Aufgaben können die Eingabevideosekunden mitberechnet werden.

Weiter

Last updated on