PROVIDER

Luma AI Models

Luma Dream Machine — retransform video style and content via text prompts while preserving motion.

1 models · from $0.500
OVERVIEW

Luma AI ships the Dream Machine model for video modification. The modify-video endpoint retransforms existing footage's visual style and content based on text prompts while preserving the original motion and camera dynamics.

  • Single API key shared across all providers
  • No separate %{provider} account required
  • Model skills carry docs, schemas, and setup steps into your workspace
  • Per-call billing in USD, no subscription or minimum spend
  • Failed generations are never charged
  • Switch models by changing one parameter
  • Billing consolidated into one monthly invoice
FEATURES

What stands out

MODELS

All Luma models available through RunAPI

QUICKSTART

Install a Luma model skill for your app.

Pick a model and add its skill so your coding tool has docs, schemas, pricing notes, and setup steps. Skills work with Claude Code, Codex, Gemini CLI, Cursor, and VS Code. Install once, then switch models by changing one parameter.

runapi.ai
curl -X POST https://runapi.ai/api/v1/luma/modify_video \
  -H "Authorization: Bearer $RUNAPI_KEY" \
  -H "Content-Type: application/json" \
  -d '{
  "model": "luma-modify-video",
  "video_url": "https://cdn.runapi.ai/public/samples/video.mp4",
  "prompt": "Transform this office walkthrough video into a cyberpunk aesthetic with neon lighting, keeping the original camera movement."
}'
import { LumaClient } from "@runapi.ai/luma";

const client = new LumaClient();
const result = await client.modifyVideo.run({
    model: "luma-modify-video",
    video_url: "https://cdn.runapi.ai/public/samples/video.mp4",
    prompt: "Transform this office walkthrough video into a cyberpunk aesthetic with neon lighting, keeping the original camera movement.",
});
<?php

require __DIR__ . "/vendor/autoload.php";

use RunApi\Luma\LumaClient;

$client = new LumaClient();
$result = $client->modifyVideo->run([
        'model' => 'luma-modify-video',
        'video_url' => 'https://cdn.runapi.ai/public/samples/video.mp4',
        'prompt' => 'Transform this office walkthrough video into a cyberpunk aesthetic with neon lighting, keeping the original camera movement.',
]);
require "runapi/luma"

client = RunApi::Luma::Client.new
result = client.modify_video.run(
    model: "luma-modify-video",
    video_url: "https://cdn.runapi.ai/public/samples/video.mp4",
    prompt: "Transform this office walkthrough video into a cyberpunk aesthetic with neon lighting, keeping the original camera movement."
)
npx skills add runapi-ai/luma -g
# Claude Code
claude mcp add runapi -s user -- npx -y @runapi.ai/mcp

# Codex
codex plugin install runapi-mcp@agents

# Cursor / Windsurf / VS Code
npx @runapi.ai/mcp init cursor
@runapi.ai/luma v1
FAQ

Frequently asked questions about Luma

Is this an official Luma integration?

RunAPI exposes a managed API surface with transparent per-call pricing, fully documented capability and parameters, and clear error behavior. You get the same model output quality without managing a direct provider relationship or provider-side account.

Do I need a Luma account?

No. Your RunAPI API key is enough for managed access to all Luma models. You do not need to create a separate account, manage provider-specific credentials, or handle provider-side billing.

What's the latency overhead from proxying through RunAPI?

Typically under 20 ms. RunAPI keeps the proxy layer close to model execution regions to minimize added latency. Media generation time is dominated by the model itself, not the proxy.

Are images / videos cached?

Generated outputs are stored and retrievable by task ID. You can fetch completed results at any time using the task status endpoint or the RunAPI dashboard. Output URLs remain accessible for the retention period shown in the API docs. Inputs are not cached or stored.

Can I bring my own key?

Not currently. Calls use RunAPI-managed access, which simplifies authentication and lets RunAPI handle rate limiting, retries, and billing consolidation on your behalf.

How is billing consolidated?

All API calls across all providers appear on a single monthly USD invoice. There is no per-provider billing, no subscription, and no minimum spend. Failed generations are never charged.

What SDKs can I use with Luma models?

Official SDKs are available for Python, Node.js, PHP, Java, Ruby, and Go. Each SDK handles authentication, async task polling, and typed responses. For LLM models, the OpenAI and Anthropic SDKs also work by pointing the base URL to RunAPI.

What are model skills and how do they work?

Model skills are installable packages that load a model's docs, typed schemas, pricing notes, and setup steps directly into your coding workspace. Install a skill with one command and your agent has the right context before you write integration code. Skills work with Claude Code, Codex, Gemini CLI, Cursor, and VS Code.

How do I switch between Luma models?

Change the model parameter in your API request. All Luma models share the same API key, the same request shape, and the same billing. No code changes, no re-authentication, and no separate billing setup are required when switching between models or between variants of the same model. You can also switch to models from other providers by changing the same parameter — the API surface is unified across the entire catalog.

START NOW

Start building with Luma models.