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=..."
}
}