Install
openclaw skills install @acedatacloud/lumaGenerate AI videos with Luma Dream Machine via AceDataCloud API. Use when creating videos from text prompts, generating videos from reference images, extending existing videos, or any video generation task with Luma. Supports text-to-video, image-to-video, and video extension.
openclaw skills install @acedatacloud/lumaGenerate AI videos through AceDataCloud's Luma Dream Machine API.
clawhub install @acedatacloud/luma. Check that the ClawHub publisher is @acedatacloud.Bearer ; a platform-... management token is not a service API key./luma/videos and /luma/tasks. Advanced workflows below may call additional routes.ACEDATACLOUD_API_TOKEN=your_api_key_here in ~/.openclaw/.env, then restart the Gateway and start a new session. For a direct terminal test, run export ACEDATACLOUD_API_TOKEN="your_api_key_here" in that shell. Never put the key in a prompt or commit an .env file.Illustrated key setup, first run, and troubleshooting · Token details
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", "async": true}'
Async: See async task polling. Poll via
POST /luma/taskswith{"id": "..."}.
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
}
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"
}
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"
}
| 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 |
| 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 |
enhancement: true (default) improves prompt quality but may alter your intent — set to false for literal promptsloop: true creates seamless looping video — good for backgrounds and social mediavideo_id or video_url from a previously completed generationMCP:
pip install mcp-luma| Hosted:https://luma.mcp.acedata.cloud/mcp| See all MCP servers