Skip to main content

Wan 2.7 - Text to Video

Generate cinematic video directly from a text prompt using Alibaba Cloud's Wan 2.7 model, with optional custom soundtrack, aspect-ratio control, and multi-shot narrative support (describe timestamped shots directly in the prompt).

Note: To attach a custom soundtrack, the audio file must first be uploaded using the Asset API before processing. The audioUrl parameter should contain the path returned from the Asset API upload.

Endpoint​

Request Headers​

FieldValue
API-KEY<api-key>
Content-Typeapplication/json

Request Parameters​

Field NameTypeExampleDescriptionRequired
typestringTEXT_TO_VIDEOFeature identifier✔️
modelstringwan2.7-t2vAI model to use✔️
conversationIdstringTEXT_TO_VIDEOConversation context✔️
promptObject.promptstringA river flowing gently through a deep canyon at middayText description of the video to generate. Max 5000 characters✔️
promptObject.resolutionstring1080POutput resolution: 720P or 1080P. Higher resolution costs more credits✔️
promptObject.ratiostring16:9Aspect ratio of the output video: 16:9, 9:16, 1:1, 4:3, 3:4❌
promptObject.durationnumber5Video duration in seconds. Integer from 2 to 15. Credits are charged per second at the selected resolution✔️
promptObject.prompt_extendbooleantrueEnables prompt rewriting. When enabled, an LLM rewrites the input prompt to improve generation quality. Best for short prompts, but adds latency❌
promptObject.negativePromptstringblurry, low qualityText describing what to avoid in the video. Max 500 characters❌
promptObject.seednumber123Random seed for reproducible generation. Integer from 0 to 2147483647. Omit for a random result❌
promptObject.audioUrlstringaudio/2026_07_20_soundtrack.mp3S3 path to a custom soundtrack, from Asset API upload. WAV or MP3, 2-30 seconds, up to 15MB. If the audio is longer than duration, only the first duration seconds are used; if shorter, the remaining video is silent❌
promptObject.watermarkbooleanfalseWhether to add an AI-generated watermark to the output video❌

Code Examples​

curl --location 'https://api.1min.ai/api/features' \
--header 'API-KEY: <api-key>' \
--header 'Content-Type: application/json' \
--data '{
"type": "TEXT_TO_VIDEO",
"model": "wan2.7-t2v",
"conversationId": "TEXT_TO_VIDEO",
"promptObject": {
"prompt": "A river flowing gently through a deep canyon at midday",
"resolution": "1080P",
"ratio": "16:9",
"duration": 5,
"prompt_extend": true,
"negativePrompt": "blurry, low quality"
}
}'

Example with Custom Soundtrack​

curl --location 'https://api.1min.ai/api/features' \
--header 'API-KEY: <api-key>' \
--header 'Content-Type: application/json' \
--data '{
"type": "TEXT_TO_VIDEO",
"model": "wan2.7-t2v",
"conversationId": "TEXT_TO_VIDEO",
"promptObject": {
"prompt": "A forest with sunlight streaming through tall trees",
"resolution": "1080P",
"ratio": "1:1",
"duration": 15,
"prompt_extend": true,
"seed": 555,
"negativePrompt": "blurry, artifacts",
"audioUrl": "audio/2026_07_20_soundtrack.mp3"
}
}'

Interactive Playground​

API Playground

https://api.1min.ai/api/features
Video duration in seconds (2-15)
Rewrite the prompt with an LLM to improve generation quality
Fixed seed for reproducible generation. Leave empty for random
Path to a custom soundtrack uploaded via Asset API (WAV/MP3, 2-30s, up to 15MB)
Add an AI-generated watermark to the output video

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": "wan2.7-t2v",
"conversationId": "TEXT_TO_VIDEO",
"promptObject": {
"prompt": "A river flowing gently through a deep canyon at midday",
"resolution": "1080P",
"ratio": "16:9",
"duration": 5,
"prompt_extend": true,
"negativePrompt": "blurry, low quality"
}
}'

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": "wan2.7-t2v",
"type": "TEXT_TO_VIDEO",
"metadata": {
"credit": 1500000,
"duration": 5,
"resolution": "720P",
"executionTime": 102.554
},
"rating": null,
"feedback": null,
"conversationId": null,
"status": "SUCCESS",
"createdAt": "2026-07-20T16:47:28.018Z",
"aiRecordDetail": {
"promptObject": {
"seed": 123,
"ratio": "16:9",
"prompt": "A river flowing gently through a deep canyon at midday",
"duration": 5,
"resolution": "720P",
"prompt_extend": true,
"negativePrompt": "water"
},
"resultObject": [
"development/videos/2026_07_20_23_48_59_722_158922.mp4"
],
"responseObject": {}
},
"additionalData": null,
"temporaryUrl": "https://s3.us-east-1.amazonaws.com/asset.1min.ai/development/videos/2026_07_20_23_48_59_722_158922.mp4?X-Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz-Credential=..."
}
}