Create a video job (asynchronous)
Asynchronous. This endpoint submits a job and returns immediately; it does not block
until the video is rendered. Poll GET /v1/videos/{id} for status, then fetch the result
from GET /v1/videos/{id}/content.
Billing happens when the job completes successfully. Failed jobs are not billed.
Authorization
bearerAuth Authorization: Bearer <your RouteMux API key>.
Create keys at https://routemux.com/console/keys. New keys use the sk- prefix;
the legacy rmx_live_ prefix is still accepted.
The Anthropic SDK's x-api-key and the Google SDK's x-goog-api-key are accepted too.
Sending several key headers with different values returns 400 AMBIGUOUS_API_KEY.
In: header
Request Body
application/json
TypeScript Definitions
Use the request body type in TypeScript.
Request and response bodies match the upstream provider's official format verbatim —
RouteMux passes them through untouched. See the provider's own docs for field definitions;
the gateway itself only reads model and stream.
Response Body
application/json
application/json
application/json
curl -X POST "https://example.com/v1/videos" \ -H "Content-Type: application/json" \ -d '{ "model": "openai/sora-2", "prompt": "A drone shot over a coastline" }'{ "model": "string", "stream": true}