> ## Documentation Index
> Fetch the complete documentation index at: https://docs.creatify.ai/llms.txt
> Use this file to discover all available pages before exploring further.

# Overview

> Upload your own videos to create custom avatars with Creatify Custom Avatar API.

## 🚀 Introduction

With **Custom Avatar**, you can upload your own consent and lipsync videos to create a personalized speaking avatar within the Creatify platform.

This feature is designed for users who want to go beyond default personas and introduce custom characters for more control and brand alignment.

***

## 🧾 Step 1: Submit a Custom Avatar Request

### ➡️ **Option A – Upload Files Directly**

Use the `POST /api/personas_v2/` endpoint to upload your custom avatar assets as **files**.\
This must be a `multipart/form-data` request.

#### ✅ Required Fields

* `lipsync_input` – MP4 file used for lipsync training (e.g., a person speaking plain text)
* `creator_name` – Name for the avatar (e.g., "James")
* `gender` – Gender identifier (e.g., "m", "f")
* `video_scene` – Context or background category (e.g., "office")

#### 📤 Example Curl Request

```bash theme={null}
curl -X POST https://api.creatify.ai/api/personas_v2/ \
  -H "X-API-ID: <api-id>" \
  -H "X-API-KEY: <api-key>" \
  -F "lipsync_input=@./lipsync_input.mp4" \
  -F "creator_name=James" \
  -F "gender=m" \
  -F "video_scene=office"
```

> 🎬 Ensure both video files are valid formats: `video/mp4` or `video/quicktime`

***

### ➡️ **Option B – Provide File URLs**

Use the `POST /api/personas/` endpoint to submit **URLs** to your consent and lipsync videos instead of uploading files.

#### ✅ Required Fields

* `lipsync_input` – Publicly accessible URL to the lipsync MP4 file
* `creator_name` – Name for the avatar (e.g., "James")
* `gender` – Gender identifier (e.g., "m", "f")
* `video_scene` – Context or background category (e.g., "office")

#### 📤 Example Curl Request

```bash theme={null}
curl -X POST 'https://api.creatify.ai/api/personas/' \
    --header 'Content-Type: application/json' 
    --header 'X-API-ID: <api-id>' \
    --header 'X-API-KEY: <api-key>' \
    -data '{
    "lipsync_input": "https://d35ghwdno3nak3.cloudfront.net/creators/79ca02c3-2c72-44c9-b3f8-5e95937cec19/18fccce8-86e7-5f31-abc8-18915cb872be.mp4",
    "creator_name": "James",
    "gender": "m",
    "video_scene": "office"
  }'
```

> 🌐 The URLs must be **publicly accessible** so Creatify can retrieve the video files.

***

### Endpoint Summary

| Endpoint                 | Upload Type                             | Key Difference                             |
| ------------------------ | --------------------------------------- | ------------------------------------------ |
| `POST /api/personas_v2/` | **File Upload** (`multipart/form-data`) | Send actual MP4 files directly.            |
| `POST /api/personas/`    | **URL Upload** (`application/json`)     | Provide direct URLs to existing MP4 files. |

***

## 🔍 Step 2: Check Custom Avatar Status

After submission, use `GET /api/personas/{id}/` to check the approval status of your avatar.

### Example Request

```bash theme={null}
curl --request GET \
  --url https://api.creatify.ai/api/personas/{id}/ \
  --header 'X-API-ID: <your-api-id>' \
  --header 'X-API-KEY: <your-api-key>'
```

### What to Look For

* `"is_active": false` – Avatar is still under review by Creatify
* `"is_active": true` – Avatar has been approved and is ready for use

> ⏱️ Reviews are typically completed within 24 hours

***

## 📌 Notes

* You can retrieve your avatars using [`GET /api/personas_v2/`](/api-reference/personas/get-apipersonas-v2)
* Your approved Custom Avatar avatar can then be used in any compatible API such as **AI Avatar**, **AI Avatar V2**, or **Create Video from URL**

***

## 🤝 Need Help?

If you have any issues or need assistance, please contact [api@creatify.ai](mailto:api@creatify.ai)
