> ## 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.

# Video to Replica

> Create a Phoenix replica from a training video using the Create Replica and Get Replica APIs.

<Note>
  This guide is for **training a replica through the API** with video URLs. If you prefer a guided flow with upload checks and inline validation, use the [Tavus Developer Portal](https://platform.tavus.io/dev/replicas/create).
</Note>

## Outcome

You will `POST /v2/replicas` with `train_video_url` then poll `GET /v2/replicas/{replica_id}` until training finishes.

## Prerequisites

* Publicly downloadable URLs for each asset you send (for example presigned S3 GET URLs). Keep them valid for at least **24 hours** after submission.

## 1. Create the replica

Default model is **`phoenix-4`**. To request **`phoenix-3`**, include `"model_name": "phoenix-3"` in the JSON body.

**Personal replica (training video):**

```bash theme={null}
curl --request POST \
  --url https://tavusapi.com/v2/replicas \
  --header 'Content-Type: application/json' \
  --header "x-api-key: $TAVUS_API_KEY" \
  --data '{
    "callback_url": "",
    "replica_name": "my_replica",
    "train_video_url": "https://example.com/training-video.mp4",
  }'
```

**Synthetic / non-human:** send `train_video_url`

```bash theme={null}
curl --request POST \
  --url https://tavusapi.com/v2/replicas \
  --header 'Content-Type: application/json' \
  --header "x-api-key: $TAVUS_API_KEY" \
  --data '{
    "callback_url": "",
    "replica_name": "synthetic_replica",
    "train_video_url": "https://example.com/training-video.mp4"
  }'
```

## 2. Poll replica status

Use [Get Replica](/api-reference/phoenix-replica-model/get-replica):

```bash theme={null}
curl --request GET \
  --url "https://tavusapi.com/v2/replicas/$REPLICA_ID" \
  --header "x-api-key: $TAVUS_API_KEY"
```

<Note>
  Training usually takes **3–4 hours**. Optional: set `callback_url` to receive status webhooks.
</Note>

## 3. Start a conversation

Generate a conversation with your replica using [Create Conversation](https://docs.tavus.io/api-reference/conversations/create-conversation)

```bash theme={null}
curl --request POST \
  --url https://tavusapi.com/v2/conversations \
  --header 'Content-Type: application/json' \
  --header 'x-api-key: $TAVUS_API_KEY" \
  --data '
{
  "replica_id": $REPLICA_ID" 
}
'
```

## Related

* [Create Replica](/api-reference/phoenix-replica-model/create-replica) (full parameter reference)
* [Image to Replica](/sections/replica/image-to-replica-quickstart) if you switch to headshot-based training
