# Luma | Ray 3.2 | Text to Video Luma Ray 3.2 Text-to-Video creates cinematic videos from text prompts, with control over resolution, duration, and seamless looping for short-form creative content. ## API Information - **Model Slug:** luma-ray-v3-2-text-to-video - **Branded URL:** https://www.eachlabs.ai/luma/luma-ray/luma-ray-v3-2-text-to-video - **Provider:** Luma - **Category:** Text to Video - **Output Type:** video - **Status:** active - **Base Cost:** $0.50–$4.00 per execution, depending on duration and resolution - **Estimated Processing Time:** 60 seconds - **Interactive Demo:** https://www.eachlabs.ai/ai-models/luma-ray-v3-2-text-to-video ## Pricing - **Charge Type:** dynamic - **Estimate:** $0.50–$4.00 per execution, depending on duration and resolution - **Pricing Details:** 540p/540, duration 5s/duration 5: $0.5 - **Pricing Details:** 720p/720, duration 5s/duration 5: $1.00 - **Pricing Details:** 1080p/1080, duration 5s/duration 5: $2.00 - **Pricing Details:** 540p/540, duration 10s/duration 10: $1.00 - **Pricing Details:** 720p/720, duration 10s/duration 10: $2.00 - **Pricing Details:** 1080p/1080, duration 10s/duration 10: $4.00 - **Pricing Details:** default: $0.5 ## Input Schema | Parameter | Type | Required | Default | Constraints | Description | |-----------|------|----------|---------|-------------|-------------| | prompt | string | Yes | - | - | Text prompt describing the video to generate. | | aspect_ratio | string | No | 16:9 | 3:1, 2:1, 21:9, 16:9, 4:3, 3:2, 1:1, 3:4, 2:3, 9:16, 1:2, 1:3 | Aspect ratio of the generated video. Default: 16:9. | | resolution | string | No | 540p | 540p, 720p, 1080p | Resolution of the generated video. 720p costs 2x, 1080p costs 4x. Default: 540p. | | duration | string | No | 5s | 5s, 10s | Duration of the generated video. 10s costs 2x. Default: 5s. | | loop | boolean | No | false | - | Whether the video should loop seamlessly. Not supported for 10s videos. Default: false. | | reference_image_urls | array | No | - | - | Optional reference images used to guide generation. | ## Example Request ```bash curl -X POST https://api.eachlabs.ai/v1/prediction/ \ -H "Authorization: Bearer YOUR_API_KEY" \ -H "Content-Type: application/json" \ -d '{ "model": "luma-ray-v3-2-text-to-video", "input": { "prompt": "Slow cinematic 1960s-style shot of a convertible cruising smoothly along a coastal road at golden hour, the deep blue sea and rocky cliffs drifting gently past in the background. The shot begins as a slow side wide shot showing the whole convertible gliding along the cliffside road from a distance, then the camera glides in slowly and gracefully, transitioning into a soft close-up of the driver's face. The driver is an elegant woman with black hair, wearing a vintage 1960s silk headscarf, retro sunglasses and a chic burgundy outfit, one hand resting on the wheel, driving calmly with a faint serene smile, the ends of her headscarf and a few loose strands of hair softly floating in the gentle breeze. Warm golden sunlight flaring softly across the windshield, dreamy lens flares, retro 1960s film look with grain and rich vintage color grade, a calm and elegant sense of freedom. Shallow depth of field, smooth slow camera motion, gentle slow-motion feel. Ambient sound of soft wind, a low humming engine and distant waves, no music." } }' ``` ## Output Schema Response returned by `GET /v1/prediction/{id}` when the job completes: ```json { "status": "success", "predictionID": "string", "output": "string (URL of generated video)", "metrics": { "predict_time": "number (seconds)" } } ``` ## Polling ```bash curl https://api.eachlabs.ai/v1/prediction/{PREDICTION_ID} \ -H "Authorization: Bearer YOUR_API_KEY" ``` | Status | Meaning | |--------|---------| | `processing` | Still running — poll again | | `success` | Done — read `output` | | `error` | Failed — read `message` / `details` | ## Webhook (alternative to polling) Pass `"webhook_url": "https://your.host/path"` in the create request. Eachlabs POSTs this payload when the job ends: ```json { "exec_id": "prediction-uuid", "status": "succeeded", "output": "https://...", "error": "" } ``` `status` is `"succeeded"` or `"failed"`. `exec_id` equals the `predictionID` from create. Return 2xx within 30 seconds. ## Errors Error body: `{ "status": "error", "message": "...", "details": "..." }` | Code | Meaning | |------|---------| | `400` | Invalid input | | `401` | Missing / invalid `Authorization` bearer token | | `404` | Unknown model or prediction id | | `429` | Rate limit — 100 creates / min, 10 concurrent per key | | `5xx` | Retry with backoff | ## Overview **Luma | Ray 3.2 | Text to Video Overview** Luma | Ray 3.2 | Text to Video is a generative video model from Luma that turns natural language prompts into short, cinematic clips tailored for modern short-form formats. Designed for creators and developers, it focuses on smooth motion, coherent scenes, and visually rich composition for social content, ads, and concept visuals. Within the Luma text-to-video family, Ray 3.2 emphasizes fine control over resolution, clip duration, and seamless looping, making it especially useful for repeatable background motions, product loops, and eye-catching visual hooks. Integrated via the Luma | Ray 3.2 | Text to Video API on each::labs, it lets teams add advanced video generation to their pipelines without managing GPU infrastructure. ## Usage Notes - API Base URL: `https://api.eachlabs.ai/v1` - Authentication: send `Authorization: Bearer YOUR_API_KEY`. Generate a key from the Eachlabs dashboard at https://www.eachlabs.ai/dashboard/api-keys. - File-typed parameters (`*_url`, `image_url`, `video_url`, `audio_url`, etc.) accept publicly-reachable HTTPS URLs only. Upload your asset first (GCS / S3 / your CDN) and pass the resulting URL. Data-URIs and localhost URLs are rejected. - For structured parameters (arrays / objects) send real JSON values, not stringified payloads. - Monetary values are reported in USD; per-token / per-megapixel rates may be billed in micro-cents internally. - Prefer `webhook_url` over polling for long-running predictions — see the Webhook Callback section.