Tavus Video Generation is the same async, file-output product described in Video overview: you call the Video API and poll until a downloadable video is ready. It is not the Conversational Video Interface (CVI)—there is no live room, Daily room, or persona-driven real-time session here.Documentation Index
Fetch the complete documentation index at: https://docs.tavus.io/llms.txt
Use this file to discover all available pages before exploring further.
Prerequisites
Before starting, ensure you have:- A
replica_idfor the video. Fastest path: pick a stock replica ID from Stock replicas (each card lists the UUID). For your own likeness, see Replica overview and training docs. - Script in text form, or audio as
.mp3or.wav(hosted at a URL you can pass for the audio path).
- Create:
POST https://tavusapi.com/v2/videoswithreplica_idplus eitherscript(text) oraudio_url(and optionalcallback_url). - Status:
GET https://tavusapi.com/v2/videos/{video_id}— Get Video. - While generating:
statusisgenerating; whenready,download_url/hosted_urlpopulate.
Generate a video
Step 1: Generate Your Video
Use the following request to generate a video:
You can also customize the video background to suit your needs. See the Background Customizations article for more details.
Step 2: Check Video Generation Status
You can monitor generation using the Get Video endpoint:If the video is still being generated, the response will include a Once the video is fully generated, the response will return a
Replace
<api_key> with your actual API key (see Step 1). Replace <video_id> with the ID returned when you created the video.status field set to generating.status field set to ready.Step 3: Accessing Your Video
Once generated, videos can be:
- Streamed or Downloaded: Generated video is hosted on a shareable URL. If a callback is set, a download link is returned when the video generated.
- Embedded or Shared: Use the provided links to distribute your videos across social media, internal tools, or customer platforms.

