Hailuo AI - Text to Video
Generate high-quality videos from text descriptions using Hailuo AI's advanced video generation models. Supports both v1 and v2 models with customizable duration, resolution, and director mode for camera control.
Endpoint
Request Headers
| Field | Value |
|---|---|
| API-KEY | <api-key> |
| Content-Type | application/json |
Request Parameters
| Field Name | Type | Example | Description | Required |
|---|---|---|---|---|
| type | string | TEXT_TO_VIDEO | Feature identifier | ✔️ |
| model | string | hailuo | AI model to use | ✔️ |
| conversationId | string | TEXT_TO_VIDEO | Conversation context | ✔️ |
| promptObject.prompt | string | a peaceful garden scene | Text description of the video | ✔️ |
| promptObject.taskType | string | t2v-02 | Model variant to use (see available models below) | ✔️ |
| promptObject.duration | number | 6 | Video duration in seconds (required for v2 models: 6 or 10) | ⚠️ |
| promptObject.resolution | number | 768 | Video resolution (required for v2 models: 768 or 1080) | ⚠️ |
| promptObject.expand_prompt | boolean | false | Automatically expand the prompt for better results | ❌ |
Available Model Variants
V2 Models (Recommended - Default):
t2v-02- Text to Video v2 (default, supports duration and resolution customization)
V1 Models:
t2v-01- Text to Video v1 (standard quality)t2v-01-director- Text to Video v1 with director mode (camera control)
Note: The combination of 1080p + 10s is not supported. Use 1080p + 6s or 768p + 10s instead.
Model Requirements
Text-to-Video (t2v-01, t2v-01-director):
- Required fields:
prompt - Optional fields:
expand_prompt imageUrlshould not be provided
Text-to-Video (t2v-02):
- Required fields:
prompt - Optional fields:
expand_prompt,duration,resolution imageUrlshould not be provided
Text Prompt Requirements
Maximum length:
- 2000 characters
Required for:
t2v-01- Standard Text to Videot2v-01-director- Director Modet2v-02- Text to Video v2
Code Examples
- cURL
- JavaScript
- Python
curl --location 'https://api.1min.ai/api/features' \
--header 'API-KEY: <api-key>' \
--header 'Content-Type: application/json' \
--data '{
"type": "TEXT_TO_VIDEO",
"model": "hailuo",
"conversationId": "TEXT_TO_VIDEO",
"promptObject": {
"prompt": "a peaceful garden scene with cherry blossoms falling",
"taskType": "t2v-02",
"duration": 6,
"resolution": 768,
"expand_prompt": false
}
}'
fetch('https://api.1min.ai/api/features', {
method: 'POST',
headers: {
'Content-Type': 'application/json',
'API-KEY': 'YOUR_API_KEY'
},
body: JSON.stringify({
type: 'TEXT_TO_VIDEO',
model: 'hailuo',
conversationId: 'TEXT_TO_VIDEO',
promptObject: {
prompt: 'a peaceful garden scene with cherry blossoms falling',
taskType: 't2v-02',
duration: 6,
resolution: 768,
expand_prompt: false
}
})
})
import requests
url = "https://api.1min.ai/api/features"
headers = {
"Content-Type": "application/json",
"API-KEY": "YOUR_API_KEY"
}
data = {
"type": "TEXT_TO_VIDEO",
"model": "hailuo",
"conversationId": "TEXT_TO_VIDEO",
"promptObject": {
"prompt": "a peaceful garden scene with cherry blossoms falling",
"taskType": "t2v-02",
"duration": 6,
"resolution": 768,
"expand_prompt": False
}
}
response = requests.post(url, headers=headers, json=data)
Interactive Playground
API Playground
https://api.1min.ai/api/featuresText description of the video to generate. Max 2000 characters.
Optional for v2 models (t2v-02). Default: 6
Optional for v2 models (t2v-02). Default: 768. Note: 1080p + 10s is not supported
Automatically expand the prompt for better results
Generated cURL Command:
curl -X POST "https://api.1min.ai/api/features" \
-H "API-KEY: <your-api-key>" \
-H "Content-Type: application/json" \
-d '{
"type": "TEXT_TO_VIDEO",
"model": "hailuo",
"conversationId": "TEXT_TO_VIDEO",
"promptObject": {
"prompt": "a peaceful garden scene with cherry blossoms falling",
"taskType": "t2v-02",
"duration": 6,
"resolution": 768,
"expand_prompt": false
}
}'
Response
{
"aiRecord": {
"uuid": "b574969b-4992-4173-9e62-7ebd4782103e",
"userId": "2f57c2a4-1fff-48e7-972f-3c1d6c59bced",
"teamId": "eb48d89f-1bb7-4d82-9b25-481971a0e97a",
"teamUser": {
"teamId": "eb48d89f-1bb7-4d82-9b25-481971a0e97a",
"userId": "2f57c2a4-1fff-48e7-972f-3c1d6c59bced",
"userName": "John",
"userAvatar": "https://lh3.googleusercontent.com/a/ACg8ocLqgsNsHRfmWF9d-E1RvJetVsEzxNOsOg-NXWNTpMxLDPJbwELI=s96-c",
"status": "ACTIVE",
"role": "ADMIN",
"creditLimit": 100000000,
"usedCredit": 17872338,
"createdAt": "2025-11-25T11:04:08.620Z",
"createdBy": "SYSTEM",
"updatedAt": "2025-11-26T09:20:02.221Z",
"updatedBy": "SYSTEM"
},
"model": "hailuo",
"type": "TEXT_TO_VIDEO",
"metadata": null,
"rating": null,
"feedback": null,
"conversationId": null,
"status": "SUCCESS",
"createdAt": "2025-12-08T11:17:44.499Z",
"aiRecordDetail": {
"promptObject": {
"prompt": "a peaceful garden scene with cherry blossoms falling",
"taskType": "t2v-02",
"duration": 6,
"resolution": 768,
"expand_prompt": false
},
"resultObject": [
"development/videos/2025_12_08_19_17_44_499_123456.mp4"
],
"responseObject": {}
},
"additionalData": null,
"temporaryUrl": "https://s3.us-east-1.amazonaws.com/asset.1min.ai/development/videos/2025_12_08_19_17_44_499_123456.mp4?X-Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz-Credential=..."
}
}