Luma Video Generation
Generate AI videos through AceDataCloud's Luma Dream Machine API.
Setup: See authentication for token setup.
Quick Start
curl -X POST https://api.acedata.cloud/luma/videos \
-H "Authorization: Bearer $ACEDATACLOUD_API_TOKEN" \
-H "Content-Type: application/json" \
-d '{"prompt": "a drone flying over a mountain lake at sunrise", "action": "generate", "callback_url": "https://api.acedata.cloud/health"}'
Async: See async task polling. Poll via
POST /luma/taskswith{"id": "..."}.
Workflows
1. Text-to-Video
Generate video purely from a text description.
POST /luma/videos
{
"prompt": "a timelapse of flowers blooming in a garden",
"action": "generate",
"aspect_ratio": "16:9",
"loop": false,
"enhancement": true
}
2. Image-to-Video
Use start and/or end reference images to guide generation.
POST /luma/videos
{
"prompt": "the scene comes alive with gentle wind",
"action": "generate",
"start_image_url": "https://example.com/scene.jpg",
"end_image_url": "https://example.com/scene-end.jpg",
"aspect_ratio": "16:9"
}
3. Extend a Video
Continue an existing video with a new prompt.
POST /luma/videos
{
"action": "extend",
"video_id": "existing-video-id",
"prompt": "the camera continues forward through the forest"
}
Aspect Ratios
| Ratio | Use Case |
|---|---|
16:9 |
Landscape (default) — YouTube, TV |
9:16 |
Portrait — TikTok, Instagram Stories |
1:1 |
Square — Social media |
4:3 |
Classic — Presentations |
21:9 |
Ultra-wide — Cinematic |
Parameters
| Parameter | Type | Default | Description |
|---|---|---|---|
prompt |
string | — | Text description of the video (required) |
action |
string | "generate" |
"generate" or "extend" |
aspect_ratio |
string | "16:9" |
Video aspect ratio |
loop |
bool | false |
Create seamless loop |
enhancement |
bool | true |
Enhance prompt for better results |
start_image_url |
string | — | Reference image for first frame |
end_image_url |
string | — | Reference image for last frame |
video_id |
string | — | ID of video to extend (alternative to video_url) |
video_url |
string | — | URL of video to extend (alternative to video_id) |
timeout |
number | — | Timeout in seconds for the API to return data |
callback_url |
string | — | Webhook URL for async notifications |
Gotchas
enhancement: true(default) improves prompt quality but may alter your intent — set tofalsefor literal prompts- Start/end image URLs must be publicly accessible
loop: truecreates seamless looping video — good for backgrounds and social media- Extend requires either
video_idorvideo_urlfrom a previously completed generation - Video generation takes 1–5 minutes depending on complexity
- Both start and end images are optional — you can use just one for partial guidance
MCP:
pip install mcp-luma| Hosted:https://luma.mcp.acedata.cloud/mcp| See all MCP servers