---
title: &quot;Use Luma in OpenClaw via RunAPI — Video Modification API&quot;
url: &quot;https://runapi.ai/openclaw-luma.md&quot;
canonical: &quot;https://runapi.ai/openclaw-luma&quot;
locale: &quot;en&quot;
model: &quot;luma&quot;
---

# Use Luma in OpenClaw.

Luma Ray 3.2 modifies existing video with prompt-driven transformations that preserve spatial coherence and 3D scene structure. Send a source video URL and a text prompt describing the transformation — Luma re-renders the footage with atmospheric lighting, environmental detail, and physically consistent camera motion. OpenClaw agents call it through the same RunAPI key used for chat.

## API example

```bash
curl -X POST https://runapi.ai/api/v1/luma/modify_video \
  -H &quot;Authorization: Bearer $RUNAPI_API_KEY&quot; \
  -H &quot;Content-Type: application/json&quot; \
  -d &#39;{
    &quot;model&quot;: &quot;luma-modify-video&quot;,
    &quot;prompt&quot;: &quot;Transform the scene into a foggy autumn morning with golden light filtering through trees&quot;,
    &quot;source_video_url&quot;: &quot;https://example.com/park-walk.mp4&quot;
  }&#39;

```

### Response

```json
{
  &quot;task_id&quot;: &quot;tsk_abc123&quot;,
  &quot;status&quot;: &quot;pending&quot;,
  &quot;model&quot;: &quot;luma-modify-video&quot;
}

```

## How it works

1. **Configure RunAPI** — Set RUNAPI_API_KEY in your environment. If you already configured RunAPI for chat in OpenClaw, the same key works for Luma video modification — no extra provider setup needed.
2. **Call Luma modify_video** — Send a POST request to the modify_video endpoint with model set to luma-modify-video, the source_video_url pointing to your input footage, and a prompt describing the transformation. Luma preserves the original scene geometry while applying the requested changes.
3. **Poll for the result** — The endpoint returns a task_id immediately. Poll the task status endpoint until the status is completed, then read the output video URL from the response. Video modification typically takes 30-120 seconds depending on complexity.

## Parameters

| Parameter | Type | Description |
|-----------|------|-------------|
| `model` | `string` | Required. Use luma-modify-video. |
| `prompt` | `string` | Required. Text description of the desired video transformation — style changes, lighting, atmosphere, or scene edits. |
| `source_video_url` | `string` | Required. URL of the source video to modify. Must be a publicly accessible MP4 or MOV file. |
| `watermark` | `boolean` | Optional. Whether to add a watermark to the output video. |
| `callback_url` | `string` | Optional. Webhook URL that receives a POST when the task completes. |

## FAQ

### What kind of transformations can Luma modify_video do?

Luma modify_video re-renders existing footage with prompt-driven changes — atmospheric shifts (fog, rain, golden hour), style transfers (cinematic, anime, noir), lighting overhauls, and environmental transformations. It preserves the original camera motion and spatial layout of the scene.

### How is Luma different from other video models on RunAPI?

Luma specializes in modifying existing video rather than generating from scratch. Its Ray 3.2 model maintains 3D spatial coherence during transformations, so objects keep their depth relationships and camera motion stays physically consistent. Models like Kling or Hailuo generate new video from text or images.

### Is Luma modify_video synchronous or asynchronous?

Asynchronous. The create endpoint returns a task_id immediately. Poll the task status endpoint or provide a callback_url to receive a webhook when the modified video is ready. Typical processing time is 30-120 seconds.

### What does Luma video modification cost on RunAPI?

Luma uses flat per-task billing — each modify_video call costs a fixed amount regardless of video length. Check the RunAPI pricing page for current rates. Failed generations are not charged.

### Can I chain Luma with other RunAPI video models in one agent workflow?

Yes. An OpenClaw agent can generate a video with Kling or Hailuo, then pass the output URL as source_video_url to Luma modify_video for post-processing — all through the same RUNAPI_API_KEY. Each step uses the same async polling pattern.


## Links

- [OpenClaw setup guide →](https://runapi.ai/openclaw)
- [Luma on RunAPI →](https://runapi.ai/models/luma)
- [Model catalog](https://runapi.ai/models)
- [API docs](https://runapi.ai/docs)
