# Luma | Uni-1 | Text to Image Luma Uni-1 Text-to-Image generates high-fidelity images from text prompts, with control over aspect ratio, visual style, and optional reference guidance for creative work on each::labs. ## API Information - **Model Slug:** luma-uni-1-text-to-image - **Branded URL:** https://www.eachlabs.ai/luma/luma-uni/luma-uni-1-text-to-image - **Provider:** Luma - **Category:** Text to Image - **Output Type:** image - **Status:** active - **Version:** 0.0.1 - **Base Cost:** Fixed pricing: $0.042 per generated image - **Estimated Processing Time:** 60 seconds - **Last Updated:** 2026-06-09 - **Interactive Demo:** https://www.eachlabs.ai/ai-models/luma-uni-1-text-to-image ## Pricing - **Charge Type:** dynamic - **Estimated Price (default example):** $0.0420 - **Pricing Details:** Fixed pricing: $0.042 per generated image ### Pricing Rules | Condition | Pricing | | --- | --- | | Rule 1 | Fixed pricing: $0.042 per generated image | ## Input Schema No input parameters documented. ## Example Request ```bash curl -X POST https://api.eachlabs.ai/v1/prediction/ \ -H "X-API-Key: YOUR_API_KEY" \ -H "Content-Type: application/json" \ -d '{ "model": "luma-uni-1-text-to-image", "input": {} }' ``` ## Output Schema Response returned by `GET /v1/prediction/{id}` when the job completes: ```json { "status": "success", "predictionID": "string", "output": "string (URL of generated image)", "metrics": { "predict_time": "number (seconds)" } } ``` ## Polling ```bash curl https://api.eachlabs.ai/v1/prediction/{PREDICTION_ID} \ -H "X-API-Key: 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 `X-API-Key` | | `404` | Unknown model or prediction id | | `429` | Rate limit — 100 creates / min, 10 concurrent per key | | `5xx` | Retry with backoff | ## Overview **Luma | Uni-1 | Text to Image Overview** Luma | Uni-1 | Text to Image is a next‑generation generative model from Luma designed to turn natural language prompts into high‑fidelity images with fine control over composition, aspect ratio, and visual style. Built as part of the Luma Uni‑1 family, it focuses on photorealism, coherent scene layout, and strong adherence to textual instructions. On each::labs, this model helps creators and developers produce production‑ready visuals without needing advanced design skills. A key differentiator of Luma | Uni-1 | Text to Image is its strong prompt alignment and detailed rendering, which makes it suitable for concept art, marketing visuals, product shots, and illustrative content directly from text. Integrated into each::labs, it can be combined with other models in a pipeline for rapid creative experimentation. ## Usage Notes - API Base URL: `https://api.eachlabs.ai/v1` - Authentication: send `X-API-Key: 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.