# GateAI Core API Documentation > Unified AI API for image, video and 3D generation. ## General **Base URL:** `https://core.claude.gg` ## Authentication All requests (except `/docs.txt` and `/v1/models`) require an API key: ``` Authorization: Bearer sk-your-api-key-here ``` ## Daily Budget Each API key gets **$100/day** credit. Budget resets daily at **03:00 Turkey time** (midnight UTC). **Example costs:** - GPT Image 2 (1024×1024, LOW): ~$0.003 - GPT Image 2 (1024×1024, HIGH): ~$0.11 - Ideogram 3.0 (TURBO): ~$0.01 - Seedance 2.0 (720p, 4s): ~$0.49 - Seedance 2.0 (720p, 15s): ~$1.85 - Seedance 2.0 (1080p, 12s): ~$3.33 - Hailuo (720p, 6s): ~$0.04 --- ## Endpoints ### Generate Content ``` POST https://core.claude.gg/api/generate Authorization: Bearer sk-your-api-key Content-Type: application/json ``` **Request body:** ```json { "model": "model-name", "type": "text-to-image", "params": { "prompt": "A serene mountain lake at sunrise", "width": 1024, "height": 1024 } } ``` **Image/video references:** You can pass references directly in `params` as URLs or base64 strings (no pre-upload needed): ```json { "model": "seedance-2.0", "params": { "prompt": "The cat stretches and walks away", "image": "https://example.com/cat.jpg", "mode": "RESOLUTION_720" } } ``` Supported inline reference fields: `image`, `input_image`, `first_frame`, `last_frame`, `start_image_url`, `end_image_url`, `reference_images` (array), `image_url`, `image_urls` (array), `video_url`, `reference_video_url`, `audio_url`, `reference_audio_url`. Both HTTPS URLs and `data:` base64 URIs are accepted. Alternatively, you can pre-upload via `POST /api/upload` and send file IDs in the `images`/`videos` arrays. **Response:** ```json { "task_id": "f578692c-6475-4d85-b4c2-32a97af506ff", "url": "/get/f578692c-6475-4d85-b4c2-32a97af506ff", "status": "PROCESSING", "cost": 0.05, "remaining": 99.95 } ``` If the requested parameters exceed your daily budget, the server automatically downgrades resolution or shortens duration to fit. The `adjustments` field in the response shows what was changed. Use `/api/estimate` to preview cost before generating. ## Request Limits - **Prompt length:** max 1500 characters (`PROMPT_TOO_LONG`) - **Quantity per request:** max 8 images (`QUANTITY_TOO_HIGH`) - **Concurrent requests:** max 5 in-flight per key (`RATE_LIMITED`) - **Rate limit:** max 5 requests per 30s sliding window (`RATE_LIMITED`) ### Check Status ``` GET /get/{task_id} ``` **Response:** ```json { "status": "FINISHED", "result": ["https://cdn.example.com/output.jpg"], "model": "gpt_image_2_0", "cost": 0.11 } ``` | Status | Meaning | |---|---| | PROCESSING | Generation in progress | | FINISHED | Done, result URLs available | | FAILED | Generation failed | ### Estimate Cost ``` POST https://core.claude.gg/api/estimate Authorization: Bearer sk-your-api-key Content-Type: application/json ``` Same request body as `/api/generate`. Returns cost in dollars without generating. If over budget, suggests adjusted parameters. **Response:** ```json { "cost": 0.11, "daily_remaining": 100.00, "fits_in_budget": true } ``` ### Model Discovery Three endpoints for exploring available models and their parameters: #### List All Models ``` GET /v1/models ``` Returns every available model with type (`image` / `video` / `3d`), cost summary, and parameter names. No auth required. **Response:** ```json [ { "id": "gpt-image-2", "type": "image", "cost": "~$0.003/image (LOW)", "params": ["prompt", "width", "height", "quality", "quantity"] }, { "id": "seedance-2.0", "type": "video", "cost": "~$0.49/720p 4s", "params": ["prompt", "mode", "duration", "motion_has_audio"] } ] ``` #### Full Schema (All Models) ``` GET /v1/models/schema ``` Returns the complete JSON schema for every model — parameter types, defaults, enums, min/max, descriptions. Useful for building dynamic UIs or validating requests client-side. #### Single Model Schema ``` GET /v1/models/:modelId ``` Returns a single model's full schema + an example request body ready to copy-paste. **Example:** `GET /v1/models/seedance-2.0` **Response:** ```json { "id": "seedance-2.0", "type": "video", "cost": "~$0.49/720p 4s, ~$1.85/720p 15s", "params": { "prompt": { "type": "string", "required": true, "description": "..." }, "mode": { "type": "string", "enum": ["RESOLUTION_720", "RESOLUTION_1080"], "default": "RESOLUTION_720" }, "duration": { "type": "integer", "min": 4, "max": 15, "default": 4 } }, "example": { "model": "seedance-2.0", "params": { "prompt": "A cat walking", "mode": "RESOLUTION_720", "duration": 5 } } } ``` **Fuzzy matching:** If the exact model ID is not found, the API suggests close matches. For example, `GET /v1/models/seedance` returns: ```json { "error": "Model not found", "suggestions": ["seedance-2.0"] } ``` ### Check Credits ``` GET /credits Authorization: Bearer sk-your-api-key ``` Returns your daily budget status and pool health. **Response:** ```json { "your_budget": { "daily_limit": 100, "used": 5.22, "remaining": 94.78, }, "pool": { "total_accounts": 12, "locked": 1 } } ``` ### Personal Dashboard ``` GET /api/me?key=sk-your-api-key ``` Returns a full overview of your account: budget, active generations, concurrency slots, and spending breakdown. No `Authorization` header needed — pass your key as `?key=` query parameter. **Response:** ```json { "budget": { "daily_limit": 100, "used": 5.22, "remaining": 94.78 }, "concurrency": { "used": 2, "max": 5, "available": 3, "active_slots": [ { "taskId": "abc-123", "model": "gpt-image-2", "elapsed": 12 }, { "taskId": "def-456", "model": "seedance-2.0", "elapsed": 45 } ] }, "active_tasks": [ { "task_id": "abc-123", "model": "gpt-image-2", "status": "PROCESSING", "cost": 0.003, "elapsed": "12s" } ], "recent_tasks": [ { "task_id": "old-789", "model": "gpt-image-2", "status": "FINISHED", "cost": 0.003, "result_count": 4 } ], "today_spending": { "gpt-image-2": { "requests": 15, "cost": 0.05 }, "seedance-2.0": { "requests": 2, "cost": 3.70 } } } ``` | Field | Description | |---|---| | `budget` | Daily limit, used, and remaining balance | | `concurrency` | Active slots out of max 5 concurrent requests per key | | `active_tasks` | Currently PROCESSING or QUEUED generations | | `recent_tasks` | Last 20 completed generations (FINISHED/FAILED) | | `today_spending` | Per-model cost breakdown for today | **Rate limit:** Each API key can have up to **5 concurrent** generation requests. The 6th request returns `429 RATE_LIMITED` until a slot frees up. Concurrency slots auto-release after **10 minutes** even if the generation is still running — this only frees the slot, the generation itself continues. **Generation timeouts:** | Threshold | What happens | |---|---| | **20 minutes** | If the generation has not completed, your balance is **automatically refunded**. The generation keeps running — if it finishes after 20 min, you keep the result for free. | | **40 minutes** | Hard deadline. The task is force-terminated with status `FAILED` and error `Generation timed out (40 min hard limit)`. | These timeouts cover edge cases like slow video renders or upstream delays. Most generations complete well within 5 minutes (images: ~10-30s, videos: ~1-5 min). --- ## Cost Calculation All costs are shown in **US dollars ($)**. Examples: | Model | Parameters | Cost | |---|---|---| | GPT Image 2 | 1024×1024, LOW | ~$0.003 | | GPT Image 2 | 1024×1024, HIGH | ~$0.11 | | Ideogram 3.0 | TURBO | ~$0.01 | | Seedance 2.0 | 720p, 4s | ~$0.49 | | Seedance 2.0 | 720p, 15s | ~$1.85 | | Seedance 2.0 | 1080p, 12s | ~$3.33 | | Seedance 2.0 | 1080p, 15s | ~$11.25 | | Hailuo | 720p, 6s | ~$0.04 | Each API key has a **$100/day** budget that resets at **03:00 Turkey time** (midnight UTC) every day. If a generation would exceed your remaining budget, parameters are automatically downgraded (lower resolution or shorter duration). Use `/api/estimate` to preview cost. --- ## Image Generation Models ### Auto Image `model: auto-image` Cost: ~$0.02 per generation | Parameter | Type | Required | Default | Constraints | Description | |---|---|---|---|---|---| | width | integer | no | 1024 | - | - | | height | integer | no | 1024 | - | - | | prompt | ? | YES | - | - | - | | quantity | integer | no | 1 | max: 8 | - | **Supported Resolutions:** | Label | Width × Height | |---|---| | 1:1 | 1024×1024 | | 2:3 | 832×1248 | | 3:2 | 1248×832 | | 3:4 | 864×1184 | | Twitter / X (4:3) | 1184×864 | | Instagram (4:5) | 896×1152 | | 5:4 | 1152×896 | | 16:9 | 1344×768 | | TikTok (9:16) | 768×1344 | Invalid width/height combinations are automatically snapped to the nearest valid pair by aspect ratio and pixel count. **Example:** ```json { "model": "auto-image", "type": "image", "params": { "prompt": "A beautiful scene", "width": 1024, "height": 1024 } } ``` --- ### Flux Dev `model: flux-dev` Cost: ~$0.00 per 1024×1024 image | Parameter | Type | Required | Default | Constraints | Description | |---|---|---|---|---|---| | mode | FAST / ULTRA | no | FAST | - | - | | seed | integer | no | - | min: 0, max: 2147483637 | - | | loras | array | no | - | - | LoRA models to apply during generation | | width | integer | no | 1024 | min: 16, max: 2496, step: 8 | - | | height | integer | no | 1024 | min: 16, max: 2496, step: 8 | - | | prompt | string | YES | - | minLen: 1, maxLen: 2000 | The prompt to use for the generation | | quantity | integer | no | 1 | min: 1, max: 8 | - | | guidance_scale | number | no | 3.5 | min: 1, max: 10 | How closely the model follows the prompt | | image_guidances | array | no | - | - | Image guidance configurations for StyleTransfer and LoraDepthMidas | | num_inference_steps | integer | no | 28 | min: 1, max: 40 | Number of denoising steps | **Dimension Range:** - Width: 480–2048 (step: 8) - Height: 480–2048 (step: 8) - Invalid values are auto-snapped to the nearest valid step. **Example:** ```json { "model": "flux-dev", "type": "image", "params": { "prompt": "A beautiful scene", "mode": "FAST", "width": 1024, "height": 1024, "guidance_scale": 3.5, "num_inference_steps": 28 } } ``` --- ### Flux Kontext Max `model: flux-kontext-max` Cost: ~$0.04 per generation | Parameter | Type | Required | Default | Constraints | Description | |---|---|---|---|---|---| | seed | integer | no | - | min: 0, max: 4294967295 | - | | width | integer | no | 1024 | min: 32, max: 2048 | - | | height | integer | no | 1024 | min: 32, max: 2048 | - | | prompt | ? | YES | - | - | - | | quantity | integer | no | 4 | max: 8 | - | | prompt_enhance | ? | no | - | - | - | **Dimension Range:** - Width: 32–2048 (step: 1) - Height: 32–2048 (step: 1) - Invalid values are auto-snapped to the nearest valid step. **Example:** ```json { "model": "flux-kontext-max", "type": "image", "params": { "prompt": "A beautiful scene", "width": 1024, "height": 1024 } } ``` --- ### Flux Kontext Pro `model: flux-kontext-pro` Cost: ~$0.02 per generation | Parameter | Type | Required | Default | Constraints | Description | |---|---|---|---|---|---| | seed | integer | no | - | min: 0, max: 2147483637 | - | | width | integer | no | 1024 | min: 32, max: 2048 | - | | height | integer | no | 1024 | min: 32, max: 2048 | - | | prompt | ? | YES | - | - | - | | quantity | integer | no | 4 | max: 8 | - | | prompt_enhance | ? | no | - | - | - | **Dimension Range:** - Width: 32–2048 (step: 1) - Height: 32–2048 (step: 1) - Invalid values are auto-snapped to the nearest valid step. **Example:** ```json { "model": "flux-kontext-pro", "type": "image", "params": { "prompt": "A beautiful scene", "width": 1024, "height": 1024 } } ``` --- ### Flux Pro 2.0 `model: flux-pro-2.0` Cost: ~$0.01 per 1024×1024 image | Parameter | Type | Required | Default | Constraints | Description | |---|---|---|---|---|---| | seed | integer | no | - | min: 0, max: 4294967295 | - | | width | integer | no | 1440 | min: 64, max: 14142 | - | | height | integer | no | 1440 | min: 64, max: 14142 | - | | prompt | ? | YES | - | - | - | | quantity | integer | no | 4 | max: 8 | - | | prompt_enhance | ? | no | - | - | - | **Dimension Range:** - Width: 64–14142 (step: 1) - Height: 64–14142 (step: 1) - Invalid values are auto-snapped to the nearest valid step. **Example:** ```json { "model": "flux-pro-2.0", "type": "image", "params": { "prompt": "A beautiful scene", "width": 1440, "height": 1440 } } ``` --- ### Flux Schnell (1) `model: flux-schnell` Cost: ~$0.00 per 1024×1024 image | Parameter | Type | Required | Default | Constraints | Description | |---|---|---|---|---|---| | seed | integer | no | - | min: 0, max: 2147483637 | - | | width | integer | no | 1024 | min: 32, max: 2048, step: 8 | - | | height | integer | no | 1024 | min: 32, max: 2048, step: 8 | - | | prompt | ? | YES | - | - | - | | quantity | integer | no | 4 | max: 8 | - | | prompt_enhance | ? | no | - | - | - | **Dimension Range:** - Width: 32–2048 (step: 8) - Height: 32–2048 (step: 8) - Invalid values are auto-snapped to the nearest valid step. **Example:** ```json { "model": "flux-schnell", "type": "image", "params": { "prompt": "A beautiful scene", "width": 1024, "height": 1024 } } ``` --- ### Gemini 2.5 Flash (Nano Banana) Image `model: gemini-2.5-flash-image` Cost: ~$0.02 per generation | Parameter | Type | Required | Default | Constraints | Description | |---|---|---|---|---|---| | seed | integer | no | - | min: 0, max: 2147483638 | - | | width | 0 / 768 / 832 / 864 / 896 / 1024 / 1152 / 1184 / 1248 / 1344 / 1536 | no | 1024 | - | - | | height | 0 / 672 / 768 / 832 / 864 / 896 / 1024 / 1152 / 1184 / 1248 / 1344 | no | 1024 | - | - | | prompt | ? | YES | - | - | - | | quantity | integer | no | 1 | max: 8 | - | | prompt_enhance | ? | no | - | - | - | **Supported Resolutions:** | Label | Width × Height | |---|---| | 1:1 | 1024×1024 | | 2:3 | 832×1248 | | 16:9 | 1344×768 | | Twitter (4:3) | 1184×864 | | Mobile (9:16) | 768×1344 | | Instagram (4:5) | 896×1152 | | 3:2 | 1248×832 | | 3:4 | 864×1184 | | 5:4 | 1152×896 | | Ultrawide (21:9) | 1536×672 | Invalid width/height combinations are automatically snapped to the nearest valid pair by aspect ratio and pixel count. **Example:** ```json { "model": "gemini-2.5-flash-image", "type": "image", "params": { "prompt": "A beautiful scene", "width": 1024, "height": 1024 } } ``` --- ### Gemini Image 2 `model: gemini-image-2` Cost: ~$0.06 per generation | Parameter | Type | Required | Default | Constraints | Description | |---|---|---|---|---|---| | seed | integer | no | - | min: 0, max: 2147483638 | Seed for reproducible image generation | | top_p | number | no | - | min: 0, max: 1 | Nucleus sampling parameter (lower=more focused, higher=more diverse) | | width | 768 / 848 / 896 / 928 / 1024 / 1152 / 1200 / 1264 / 1376 / 1536 / 1584 / 1696 / 1792 / 1856 / 2048 / 2304 / 2400 / 2528 / 2752 / 3072 / 3168 / 3392 / 3584 / 3712 / 4096 / 4608 / 4800 / 5056 / 5504 / 6336 | no | - | - | Width of the generated image | | height | 672 / 768 / 848 / 896 / 928 / 1024 / 1152 / 1200 / 1264 / 1344 / 1376 / 1536 / 1696 / 1792 / 1856 / 2048 / 2304 / 2400 / 2528 / 2688 / 2752 / 3072 / 3392 / 3584 / 3712 / 4096 / 4608 / 4800 / 5056 / 5504 | no | - | - | Height of the generated image | | prompt | string | YES | - | - | Text prompt for image generation | | quantity | integer | no | 1 | min: 1, max: 8 | Number of images to generate | | image_urls | ? | no | - | - | - | | temperature | number | no | - | min: 0, max: 2 | Controls randomness in generation (0.0=deterministic, 2.0=very creative) | | output_format | jpeg / png | no | png | - | Output image format | | response_modalities | array | no | IMAGE | - | What types of content to generate | | use_auto_dimensions | boolean | no | - | - | Internal flag indicating dimensions should not be sent to provider | **Supported Resolutions (aspect ratio × size tier):** | Aspect Ratio | Small | Medium | Large | |---|---|---|---| | 1:1 | 1024×1024 | 2048×2048 | 4096×4096 | | 2:3 | 848×1264 | 1696×2528 | 3392×5056 | | 16:9 | 1376×768 | 2752×1536 | 5504×3072 | | Twitter (4:3) | 1200×896 | 2400×1792 | 4800×3584 | | Mobile (9:16) | 768×1376 | 1536×2752 | 3072×5504 | | Instagram (4:5) | 928×1152 | 1856×2304 | 3712×4608 | | 3:2 | 1264×848 | 2528×1696 | 5056×3392 | | 3:4 | 896×1200 | 1792×2400 | 3584×4800 | | 5:4 | 1152×928 | 2304×1856 | 4608×3712 | | Ultrawide (21:9) | 1584×672 | 3168×1344 | 6336×2688 | Invalid width/height combinations are automatically snapped to the nearest valid pair by aspect ratio and pixel count. **Example:** ```json { "model": "gemini-image-2", "type": "image", "params": { "prompt": "A beautiful scene", "output_format": "png", "response_modalities": [ "IMAGE" ] } } ``` --- ### GPT Image 1 `model: gpt-image-1` Cost: ~$0.01 per 1024×1024 image | Parameter | Type | Required | Default | Constraints | Description | |---|---|---|---|---|---| | width | integer | no | 1024 | min: 1024, max: 1536, step: 8 | - | | height | integer | no | 1024 | min: 1024, max: 1536, step: 8 | - | | prompt | ? | YES | - | - | - | | quality | high / medium / low | no | medium | - | The quality of the generated images. | | quantity | integer | no | 1 | min: 1, max: 8 | - | | transparency | boolean | no | - | - | - | | output_format | jpeg / png / webp | no | jpeg | - | The format in which the generated images are returned. | | image_guidances | array | no | - | - | - | **Dimension Range:** - Width: 32–2048 (step: 1) - Height: 32–2048 (step: 1) - Invalid values are auto-snapped to the nearest valid step. **Example:** ```json { "model": "gpt-image-1", "type": "image", "params": { "prompt": "A beautiful scene", "width": 1024, "height": 1024, "quality": "medium", "output_format": "jpeg" } } ``` --- ### GPT Image 1.5 `model: gpt-image-1.5` Cost: ~$0.01 per 1024×1024 image | Parameter | Type | Required | Default | Constraints | Description | |---|---|---|---|---|---| | width | integer | no | 1024 | min: 1024, max: 1536, step: 8 | - | | height | integer | no | 1024 | min: 1024, max: 1536, step: 8 | - | | prompt | ? | YES | - | - | - | | quality | high / medium / low | no | medium | - | The quality of the generated images. | | quantity | integer | no | 1 | min: 1, max: 8 | - | | output_format | jpeg / png / webp | no | jpeg | - | The format in which the generated images are returned. | | image_guidances | array | no | - | - | - | **Dimension Range:** - Width: 1024–1536 (step: 8) - Height: 1024–1536 (step: 8) - Invalid values are auto-snapped to the nearest valid step. **Example:** ```json { "model": "gpt-image-1.5", "type": "image", "params": { "prompt": "A beautiful scene", "width": 1024, "height": 1024, "quality": "medium", "output_format": "jpeg" } } ``` --- ### GPT Image 2 `model: gpt-image-2` Cost: ~$0.00 per 1024×1024 image | Parameter | Type | Required | Default | Constraints | Description | |---|---|---|---|---|---| | width | integer | no | 1024 | min: 256, max: 3840, step: 16 | Image width in pixels. Must be a multiple of 16. Each edge must be between 256 and 3840 px inclusive. Total pixels (widt | | height | integer | no | 1024 | min: 256, max: 3840, step: 16 | Image height in pixels. Must be a multiple of 16. Each edge must be between 256 and 3840 px inclusive. Total pixels (wid | | prompt | ? | YES | - | - | - | | quality | high / medium / low | no | low | - | The quality of the generated images. | | quantity | integer | no | 1 | min: 1, max: 8 | - | | output_format | jpeg / png | no | jpeg | - | The format in which the generated images are returned. | | image_guidances | array | no | - | - | - | **Supported Resolutions (aspect ratio × size tier):** | Aspect Ratio | Small | Medium | Large | |---|---|---|---| | 1:1 | 1024×1024 | 2048×2048 | 2880×2880 | | 2:3 | 848×1264 | 1376×2048 | 2336×3504 | | 16:9 | 1376×768 | 2048×1136 | 3584×2016 | | Twitter (4:3) | 1200×896 | 2048×1536 | 3264×2448 | | Mobile (9:16) | 768×1376 | 1136×2048 | 2016×3584 | | Instagram (4:5) | 928×1152 | 1648×2048 | 2560×3200 | | 3:2 | 1264×848 | 2048×1376 | 3504×2336 | | 3:4 | 896×1200 | 1536×2048 | 2448×3264 | | 5:4 | 1152×928 | 2048×1648 | 3200×2560 | | Ultrawide (21:9) | 1584×672 | 2048×864 | 3808×1632 | Invalid width/height combinations are automatically snapped to the nearest valid pair by aspect ratio and pixel count. **Example:** ```json { "model": "gpt-image-2", "type": "image", "params": { "prompt": "A beautiful scene", "width": 1024, "height": 1024, "quality": "low", "output_format": "jpeg" } } ``` --- ### Ideogram V3 `model: ideogram-v3.0` Cost: ~$0.01 per generation | Parameter | Type | Required | Default | Constraints | Description | |---|---|---|---|---|---| | mode | TURBO / BALANCED / QUALITY | no | BALANCED | - | - | | seed | integer | no | - | min: 0, max: 2147483637 | - | | style | ? | no | - | - | - | | width | integer | no | 1024 | min: 512, max: 1536, step: 8 | - | | height | integer | no | 1024 | min: 512, max: 1536, step: 8 | - | | prompt | string | YES | - | - | - | | quantity | integer | no | 1 | min: 1, max: 8 | - | | image_urls | ? | no | - | - | - | | prompt_enhance | boolean | no | false | - | - | | negative_prompt | string | no | | - | - | **Dimension Range:** - Width: 32–2048 (step: 1) - Height: 32–2048 (step: 1) - Invalid values are auto-snapped to the nearest valid step. **Example:** ```json { "model": "ideogram-v3.0", "type": "image", "params": { "prompt": "A beautiful scene", "mode": "BALANCED", "width": 1024, "height": 1024, "prompt_enhance": false, "negative_prompt": "" } } ``` --- ### 'Cinematic Kino' (Kino XL) `model: kino-xl` Cost: ~$0.00 per 1024×1024 image **Example:** ```json { "model": "kino-xl", "type": "image", "params": {} } ``` --- ### Cortex 1.0 `model: cortex_1.0` Cost: ~$0.01 per generation | Parameter | Type | Required | Default | Constraints | Description | |---|---|---|---|---|---| | quantity | number | no | 1 | min: 1, max: 1 | - | | motion_strength | ? | no | - | - | - | **Example:** ```json { "model": "cortex_1.0", "type": "image", "params": {} } ``` --- ### Nano Banana 2 `model: nano-banana-2` Cost: ~$0.03 per generation | Parameter | Type | Required | Default | Constraints | Description | |---|---|---|---|---|---| | seed | integer | no | - | min: 0, max: 2147483638 | Seed for reproducible image generation | | top_p | number | no | - | min: 0, max: 1 | Nucleus sampling parameter (lower=more focused, higher=more diverse) | | width | 768 / 848 / 896 / 928 / 1024 / 1152 / 1200 / 1264 / 1376 / 1536 / 1584 / 1696 / 1792 / 1856 / 2048 / 2304 / 2400 / 2528 / 2752 / 3072 / 3168 / 3392 / 3584 / 3712 / 4096 / 4608 / 4800 / 5056 / 5504 / 6336 | no | - | - | Width of the generated image | | height | 672 / 768 / 848 / 896 / 928 / 1024 / 1152 / 1200 / 1264 / 1344 / 1376 / 1536 / 1696 / 1792 / 1856 / 2048 / 2304 / 2400 / 2528 / 2688 / 2752 / 3072 / 3392 / 3584 / 3712 / 4096 / 4608 / 4800 / 5056 / 5504 | no | - | - | Height of the generated image | | prompt | string | YES | - | - | Text prompt for image generation | | quantity | integer | no | 1 | min: 1, max: 8 | Number of images to generate | | image_urls | ? | no | - | - | - | | temperature | number | no | - | min: 0, max: 2 | Controls randomness in generation (0.0=deterministic, 2.0=very creative) | | output_format | jpeg / png | no | png | - | Output image format | | response_modalities | array | no | IMAGE | - | What types of content to generate | | use_auto_dimensions | boolean | no | - | - | Internal flag indicating dimensions should not be sent to provider | **Supported Resolutions (aspect ratio × size tier):** | Aspect Ratio | Small | Medium | Large | |---|---|---|---| | 1:1 | 1024×1024 | 2048×2048 | 4096×4096 | | 2:3 | 848×1264 | 1696×2528 | 3392×5056 | | 16:9 | 1376×768 | 2752×1536 | 5504×3072 | | Twitter (4:3) | 1200×896 | 2400×1792 | 4800×3584 | | Mobile (9:16) | 768×1376 | 1536×2752 | 3072×5504 | | Instagram (4:5) | 928×1152 | 1856×2304 | 3712×4608 | | 3:2 | 1264×848 | 2528×1696 | 5056×3392 | | 3:4 | 896×1200 | 1792×2400 | 3584×4800 | | 5:4 | 1152×928 | 2304×1856 | 4608×3712 | | Ultrawide (21:9) | 1584×672 | 3168×1344 | 6336×2688 | Invalid width/height combinations are automatically snapped to the nearest valid pair by aspect ratio and pixel count. **Example:** ```json { "model": "nano-banana-2", "type": "image", "params": { "prompt": "A beautiful scene", "output_format": "png", "response_modalities": [ "IMAGE" ] } } ``` --- ### Recraft V4 `model: recraft-v4` Cost: ~$0.02 per generation | Parameter | Type | Required | Default | Constraints | Description | |---|---|---|---|---|---| | width | 768 / 832 / 896 / 1024 / 1152 / 1216 / 1280 / 1344 / 1536 | no | 1024 | - | - | | height | 768 / 832 / 896 / 1024 / 1152 / 1216 / 1280 / 1344 / 1536 | no | 1024 | - | - | | prompt | ? | YES | - | - | - | | quantity | integer | no | 4 | max: 8 | - | | prompt_enhance | ? | no | - | - | - | **Supported Resolutions:** | Label | Width × Height | |---|---| | 1:1 | 1024×1024 | | 2:3 | 832×1280 | | 16:9 | 1344×768 | | Twitter (4:3) | 1216×896 | | Mobile (9:16) | 768×1344 | | Instagram (4:5) | 896×1152 | | 1:2 | 768×1536 | | 2:1 | 1536×768 | | 3:2 | 1280×832 | | 3:4 | 896×1216 | | 5:4 | 1152×896 | | 6:10 | 832×1344 | | 10:14 | 896×1280 | | 14:10 | 1280×896 | Invalid width/height combinations are automatically snapped to the nearest valid pair by aspect ratio and pixel count. **Example:** ```json { "model": "recraft-v4", "type": "image", "params": { "prompt": "A beautiful scene", "width": 1024, "height": 1024 } } ``` --- ### Recraft V4 Pro `model: recraft-v4-pro` Cost: ~$0.10 per generation | Parameter | Type | Required | Default | Constraints | Description | |---|---|---|---|---|---| | width | 1536 / 1664 / 1792 / 2048 / 2304 / 2432 / 2560 / 2688 / 3072 | no | 2048 | - | - | | height | 1536 / 1664 / 1792 / 2048 / 2304 / 2432 / 2560 / 2688 / 3072 | no | 2048 | - | - | | prompt | ? | YES | - | - | - | | quantity | integer | no | 4 | max: 8 | - | | prompt_enhance | ? | no | - | - | - | **Supported Resolutions:** | Label | Width × Height | |---|---| | 1:1 | 2048×2048 | | 2:3 | 1664×2560 | | 16:9 | 2688×1536 | | Twitter (4:3) | 2432×1792 | | Mobile (9:16) | 1536×2688 | | Instagram (4:5) | 1792×2304 | | 1:2 | 1536×3072 | | 2:1 | 3072×1536 | | 3:2 | 2560×1664 | | 3:4 | 1792×2432 | | 5:4 | 2304×1792 | | 6:10 | 1664×2688 | | 10:14 | 1792×2560 | | 14:10 | 2560×1792 | Invalid width/height combinations are automatically snapped to the nearest valid pair by aspect ratio and pixel count. **Example:** ```json { "model": "recraft-v4-pro", "type": "image", "params": { "prompt": "A beautiful scene", "width": 2048, "height": 2048 } } ``` --- ### Seedream 4.0 Image `model: seedream-4.0` Cost: ~$0.01 per generation | Parameter | Type | Required | Default | Constraints | Description | |---|---|---|---|---|---| | seed | integer | no | - | min: 0, max: 2147483638 | - | | width | integer | no | 1024 | min: 32, max: 14142 | - | | height | integer | no | 1024 | min: 32, max: 14142 | - | | prompt | ? | YES | - | - | - | | quantity | integer | no | 1 | max: 8 | - | | prompt_enhance | ? | no | - | - | - | **Dimension Range:** - Width: 32–14142 (step: 1) - Height: 32–14142 (step: 1) - Invalid values are auto-snapped to the nearest valid step. **Example:** ```json { "model": "seedream-4.0", "type": "image", "params": { "prompt": "A beautiful scene", "width": 1024, "height": 1024 } } ``` --- ### Seedream 4.5 Image `model: seedream-4.5` Cost: ~$0.01 per generation | Parameter | Type | Required | Default | Constraints | Description | |---|---|---|---|---|---| | seed | integer | no | - | min: 0, max: 2147483638 | - | | width | integer | no | 2048 | min: 32, max: 14142 | - | | height | integer | no | 2048 | min: 32, max: 14142 | - | | prompt | ? | YES | - | - | - | | quantity | integer | no | 1 | max: 8 | - | | prompt_enhance | ? | no | - | - | - | **Dimension Range:** - Width: 32–14142 (step: 1) - Height: 32–14142 (step: 1) - Invalid values are auto-snapped to the nearest valid step. **Example:** ```json { "model": "seedream-4.5", "type": "image", "params": { "prompt": "A beautiful scene", "width": 2048, "height": 2048 } } ``` --- ## Video Generation Models ### Auto Video `model: auto-video` Cost: ~$0.13 per generation | Parameter | Type | Required | Default | Constraints | Description | |---|---|---|---|---|---| | width | integer | no | 1280 | - | - | | height | integer | no | 720 | - | - | | prompt | ? | YES | - | - | - | | duration | 6 / 8 | no | 8 | - | - | | quantity | integer | no | 1 | max: 1 | - | **Supported Resolutions:** | Label | Width × Height | |---|---| | 16:9 | 1280×720 | | 9:16 | 720×1280 | Invalid width/height combinations are automatically snapped to the nearest valid pair by aspect ratio and pixel count. **Example:** ```json { "model": "auto-video", "type": "video", "params": { "prompt": "A beautiful scene", "width": 1280, "height": 720, "duration": 8 } } ``` --- ### Hailuo-2.3 Video Gen `model: hailuo-2_3` Cost: ~$0.04 per generation | Parameter | Type | Required | Default | Constraints | Description | |---|---|---|---|---|---| | prompt | ? | YES | - | - | Text description for video generation | | quantity | integer | no | 1 | min: 1, max: 1 | Number of videos to generate | | resolution | 768p / 1080p | no | 1080p | - | Video resolution | | start_frame | ? | no | - | - | First frame image for image-to-video generation | | durationSeconds | 6 / 10 | no | 6 | - | Video duration in seconds. 1080P supports only 6 seconds | | prompt_optimizer | boolean | no | true | - | Auto-optimize prompt for better video quality | | fast_pretreatment | boolean | no | false | - | Reduce processing time during prompt optimization | **Valid Widths:** 768, 1376, 1080, 1920 **Valid Heights:** 768, 1376, 1080, 1920 **Example:** ```json { "model": "hailuo-2_3", "type": "video", "params": { "prompt": "A beautiful scene", "resolution": "1080p", "durationSeconds": 6, "prompt_optimizer": true, "fast_pretreatment": false } } ``` --- ### Hailuo-2.3-fast Video Gen `model: hailuo-2_3-fast` Cost: ~$0.03 per generation | Parameter | Type | Required | Default | Constraints | Description | |---|---|---|---|---|---| | prompt | ? | YES | - | - | Text description for video generation | | quantity | integer | no | 1 | min: 1, max: 1 | Number of videos to generate | | resolution | 768p / 1080p | no | 1080p | - | Video resolution | | start_frame | ? | YES | - | - | First frame image for image-to-video generation (required for fast variant) | | durationSeconds | 6 / 10 | no | 6 | - | Video duration in seconds. 1080P supports only 6 seconds | | prompt_optimizer | boolean | no | true | - | Auto-optimize prompt for better video quality | | fast_pretreatment | boolean | no | false | - | Reduce processing time during prompt optimization | **Valid Widths:** 768, 1376, 1080, 1920 **Valid Heights:** 768, 1376, 1080, 1920 **Example:** ```json { "model": "hailuo-2_3-fast", "type": "video", "params": { "prompt": "A beautiful scene", "resolution": "1080p", "durationSeconds": 6, "prompt_optimizer": true, "fast_pretreatment": false } } ``` --- ### Happy Horse Video Gen `model: happy-horse` Cost: ~$0.06 per generation | Parameter | Type | Required | Default | Constraints | Description | |---|---|---|---|---|---| | seed | integer | no | - | min: 0, max: 2147483647 | Random seed for reproducibility | | width | integer | no | 1920 | - | Video width in pixels | | height | integer | no | 1080 | - | Video height in pixels | | prompt | ? | no | - | maxLen: 2500 | Text prompt describing the desired video | | duration | 3 / 4 / 5 / 6 / 7 / 8 / 9 / 10 / 11 / 12 / 13 / 14 / 15 | no | 5 | - | Output video duration in seconds. Not applicable for video-edit (inherits from source video). | | quantity | integer | no | 1 | min: 1, max: 1 | Number of videos to generate | | start_frame | ? | no | - | - | Image to use as first frame for image-to-video generation | | audio_setting | auto / origin | no | auto | - | Audio handling for video-edit: auto (model decides) or origin (preserve input audio). | | image_guidance | array | no | - | - | Reference images for reference-to-video (1-9, referenced as character1-character9) or video-edit (0-5, referenced as @Im | | video_guidance | array | no | - | - | Source video for video-edit mode. Maximum 1 item. | | enable_safety_checker | boolean | no | false | - | Enable content moderation for input and output | **Supported Resolutions:** | Label | Width × Height | |---|---| | 1:1 | 1080×1080 | | 3:4 | 1080×1440 | | 4:3 | 1440×1080 | | 16:9 | 1920×1080 | | 9:16 | 1080×1920 | Invalid width/height combinations are automatically snapped to the nearest valid pair by aspect ratio and pixel count. **Example:** ```json { "model": "happy-horse", "type": "video", "params": { "prompt": "A beautiful scene", "width": 1920, "height": 1080, "duration": 5, "audio_setting": "auto", "enable_safety_checker": false } } ``` --- ### Kling 2.1 Pro `model: kling-2.1-pro` Cost: ~$0.04 per generation | Parameter | Type | Required | Default | Constraints | Description | |---|---|---|---|---|---| | width | integer | no | 1920 | - | - | | height | integer | no | 1080 | - | - | | prompt | ? | YES | - | - | - | | duration | 5 / 10 | no | 5 | - | - | | quantity | number | no | 1 | max: 1 | - | | prompt_enhance | ? | no | - | - | - | **Supported Resolutions:** | Label | Width × Height | |---|---| | 1:1 | 1440×1440 | | 16:9 | 1920×1080 | | 9:16 | 1080×1920 | Invalid width/height combinations are automatically snapped to the nearest valid pair by aspect ratio and pixel count. **Example:** ```json { "model": "kling-2.1-pro", "type": "video", "params": { "prompt": "A beautiful scene", "width": 1920, "height": 1080, "duration": 5 } } ``` --- ### Kling 2.5 Turbo `model: kling-2.5` Cost: ~$0.03 per generation | Parameter | Type | Required | Default | Constraints | Description | |---|---|---|---|---|---| | mode | RESOLUTION_720 / RESOLUTION_1080 | no | RESOLUTION_1080 | - | - | | width | integer | no | 1920 | - | - | | height | integer | no | 1080 | - | - | | prompt | ? | YES | - | - | - | | duration | 5 / 10 | no | 5 | - | - | | quantity | number | no | 1 | max: 1 | - | | prompt_enhance | ? | no | - | - | - | **Supported Resolutions:** | Label | Width × Height | |---|---| | 1:1 | 1440×1440 | | 16:9 | 1920×1080 | | 9:16 | 1080×1920 | Invalid width/height combinations are automatically snapped to the nearest valid pair by aspect ratio and pixel count. **Example:** ```json { "model": "kling-2.5", "type": "video", "params": { "prompt": "A beautiful scene", "mode": "RESOLUTION_1080", "width": 1920, "height": 1080, "duration": 5 } } ``` --- ### Kling 2.5 Turbo Standard Video Gen `model: kling-2.5-turbo-standard` Cost: ~$0.02 per generation | Parameter | Type | Required | Default | Constraints | Description | |---|---|---|---|---|---| | width | 1280 / 720 / 960 | no | 1280 | - | Video width in pixels | | height | 720 / 1280 / 960 | no | 720 | - | Video height in pixels | | prompt | ? | YES | - | maxLen: 2500 | Text description for video generation | | quantity | integer | no | 1 | min: 1, max: 1 | Number of videos to generate | | cfg_scale | number | no | 0.5 | min: 0, max: 1 | Guidance scale for generation strength | | start_frame | ? | YES | - | - | Start frame image for video generation | | durationSeconds | 5 / 10 | no | 5 | - | Video duration in seconds | | negative_prompt | string | no | blur, distort, and low quality | maxLen: 1000 | Elements to exclude from generation | **Supported Resolutions:** | Label | Width × Height | |---|---| | 1:1 | 960×960 | | 16:9 | 1280×720 | | 9:16 | 720×1280 | Invalid width/height combinations are automatically snapped to the nearest valid pair by aspect ratio and pixel count. **Example:** ```json { "model": "kling-2.5-turbo-standard", "type": "video", "params": { "prompt": "A beautiful scene", "width": 1280, "height": 720, "cfg_scale": 0.5, "durationSeconds": 5, "negative_prompt": "blur, distort, and low quality" } } ``` --- ### Kling 2.6 `model: kling-2.6` Cost: ~$0.06 per generation | Parameter | Type | Required | Default | Constraints | Description | |---|---|---|---|---|---| | audio | ? | no | - | - | - | | width | 1920 / 1080 / 1440 / 0 | no | - | - | - | | height | 1080 / 1920 / 1440 / 0 | no | - | - | - | | prompt | ? | YES | - | - | - | | duration | 5 / 10 | no | 5 | - | - | | quantity | number | no | 1 | max: 1 | - | | start_frame | ? | no | - | - | - | | motion_has_audio | ? | no | true | - | - | **Supported Resolutions:** | Label | Width × Height | |---|---| | 1:1 | 1440×1440 | | 16:9 | 1920×1080 | | 9:16 | 1080×1920 | Invalid width/height combinations are automatically snapped to the nearest valid pair by aspect ratio and pixel count. **Example:** ```json { "model": "kling-2.6", "type": "video", "params": { "prompt": "A beautiful scene", "duration": 5, "motion_has_audio": true } } ``` --- ### Kling 3.0 Video Gen `model: kling-3.0` Cost: ~$0.03 per generation | Parameter | Type | Required | Default | Constraints | Description | |---|---|---|---|---|---| | mode | RESOLUTION_720 / RESOLUTION_1080 / RESOLUTION_2160 | no | RESOLUTION_1080 | - | Video resolution mode. RESOLUTION_1080 uses pro endpoints (1080p), RESOLUTION_720 uses standard endpoints (720p), RESOLU | | width | 1920 / 1080 / 1440 / 1280 / 720 / 960 / 0 / 3840 / 2160 / 2880 | no | 1920 | - | Video width in pixels | | height | 1080 / 1920 / 1440 / 720 / 1280 / 960 / 0 / 2160 / 3840 / 2880 | no | 1080 | - | Video height in pixels | | prompt | ? | YES | - | - | Text description for video generation. Can include dialogue, narration, sound effects, and ambient audio descriptions. | | elements | array | no | - | - | Elements (characters/objects) to include. Reference in prompt as @Element1, @Element2. Supports element consistency for | | quantity | integer | no | 1 | min: 1, max: 1 | Number of videos to generate | | end_frame | ? | no | - | - | End frame image for frame interpolation. Cannot be used when more than 2 images are used (start_frame + reference images | | voice_ids | array | no | - | - | Voice IDs for voice control. Reference in prompt using <<>>, <<>> | | image_urls | array | no | - | - | Reference images for style/appearance. Reference in prompt as @Image1, @Image2, etc. Maximum 7 total (elements + referen | | start_frame | ? | no | - | - | Start frame image for image-to-video mode. Accepted formats: jpg, jpeg, png, webp, gif, avif. Max size: 10MB. Min dimens | | generate_audio | boolean | no | true | - | Whether to generate native audio for the video. Supports multiple audio types: speech, dialogue, singing/rap, ambient, s | | durationSeconds | 3 / 4 / 5 / 6 / 7 / 8 / 9 / 10 / 11 / 12 / 13 / 14 / 15 | no | 5 | - | Video duration in seconds (3-15s) | **Supported Resolutions:** | Label | Width × Height | |---|---| | 1:1 | 1440×1440 | | 16:9 | 1920×1080 | | 9:16 | 1080×1920 | Invalid width/height combinations are automatically snapped to the nearest valid pair by aspect ratio and pixel count. **Example:** ```json { "model": "kling-3.0", "type": "video", "params": { "prompt": "A beautiful scene", "mode": "RESOLUTION_1080", "width": 1920, "height": 1080, "generate_audio": true, "durationSeconds": 5 } } ``` --- ### Kling Video O 1 Gen `model: kling-video-o-1` Cost: ~$0.04 per generation | Parameter | Type | Required | Default | Constraints | Description | |---|---|---|---|---|---| | width | integer | no | - | min: 0, max: 2160 | Video width in pixels (0 for auto) | | height | integer | no | - | min: 0, max: 2160 | Video height in pixels (0 for auto) | | prompt | ? | YES | - | - | Text description for video generation | | quantity | integer | no | 1 | min: 1, max: 1 | Number of videos to generate | | cfg_scale | number | no | 0.5 | min: 0, max: 1 | Guidance scale for generation strength | | end_frame | ? | no | - | - | - | | keep_audio | boolean | no | false | - | Whether to keep the original audio from the video. Defaults to false (matches Fal API default). Can be set to true to pr | | start_frame | ? | no | - | - | - | | image_guidance | array | no | - | - | Additional reference images for guidance. Up to 6 guidance images allowed (7 max allowed without videos, but start frame | | video_guidance | array | no | - | - | Video guidance for video-to-video editing. Maximum 1 video allowed. When using BASE type, routes to video-to-video edit | | durationSeconds | 3 / 4 / 5 / 6 / 7 / 8 / 9 / 10 | no | 5 | - | Video duration in seconds | **Dimension Range:** - Width: 0–2160 (step: 1) - Height: 0–2160 (step: 1) - Invalid values are auto-snapped to the nearest valid step. **Example:** ```json { "model": "kling-video-o-1", "type": "video", "params": { "prompt": "A beautiful scene", "cfg_scale": 0.5, "keep_audio": false, "durationSeconds": 5 } } ``` --- ### Kling Video O 3 Gen `model: kling-video-o-3` Cost: ~$0.07 per generation | Parameter | Type | Required | Default | Constraints | Description | |---|---|---|---|---|---| | mode | RESOLUTION_720 / RESOLUTION_1080 / RESOLUTION_2160 | no | RESOLUTION_1080 | - | Video resolution mode. RESOLUTION_1080 uses pro endpoints (1080p), RESOLUTION_720 uses standard endpoints (720p), RESOLU | | width | integer | no | - | min: 0, max: 3840 | Video width in pixels (0 for auto) | | height | integer | no | - | min: 0, max: 3840 | Video height in pixels (0 for auto) | | prompt | ? | YES | - | - | Text description for video generation | | quantity | integer | no | 1 | min: 1, max: 1 | Number of videos to generate | | end_frame | ? | no | - | - | End frame image for image-to-video generation | | keep_audio | boolean | no | false | - | Whether to preserve audio from the reference video (video-to-video only) | | start_frame | ? | no | - | - | Start frame image for image-to-video generation | | generate_audio | boolean | no | false | - | Whether to generate native audio for the video | | image_guidance | array | no | - | - | Reference images for style/appearance. Reference in prompt as @Image1, @Image2, etc. | | video_guidance | array | no | - | - | Video guidance for video-to-video transformations. BASE type routes to edit endpoint, FEATURE type routes to reference e | | durationSeconds | 3 / 4 / 5 / 6 / 7 / 8 / 9 / 10 / 11 / 12 / 13 / 14 / 15 | no | 5 | - | Video duration in seconds (3-15s) | **Dimension Range:** - Width: 0–3840 (step: 1) - Height: 0–3840 (step: 1) - Invalid values are auto-snapped to the nearest valid step. **Example:** ```json { "model": "kling-video-o-3", "type": "video", "params": { "prompt": "A beautiful scene", "mode": "RESOLUTION_1080", "keep_audio": false, "generate_audio": false, "durationSeconds": 5 } } ``` --- ### LTXV 2 Fast Video Gen `model: ltxv-2.0-fast` Cost: ~$0.02 per generation | Parameter | Type | Required | Default | Constraints | Description | |---|---|---|---|---|---| | fps | 25 / 50 | no | 50 | - | Frames per second | | width | integer | no | - | - | Video width in pixels | | height | integer | no | - | - | Video height in pixels | | prompt | ? | YES | - | - | Text description for video generation | | quantity | integer | no | 1 | min: 1, max: 1 | Number of videos to generate | | resolution | 1080p / 1440p / 2160p | no | 1080p | - | Video resolution | | start_frame | ? | no | - | - | Start frame image for image-to-video generation | | aspect_ratio | 16:9 / 9:16 | no | 16:9 | - | Video aspect ratio | | durationSeconds | 6 / 8 | no | 6 | - | Video duration in seconds | | enable_prompt_expansion | boolean | no | true | - | Enable automatic prompt expansion | **Supported Resolutions:** | Label | Width × Height | |---|---| | 16:9 | 1920×1080 | Invalid width/height combinations are automatically snapped to the nearest valid pair by aspect ratio and pixel count. **Example:** ```json { "model": "ltxv-2.0-fast", "type": "video", "params": { "prompt": "A beautiful scene", "fps": 50, "resolution": "1080p", "aspect_ratio": "16:9", "durationSeconds": 6, "enable_prompt_expansion": true } } ``` --- ### LTXV 2 Pro Video Gen `model: ltxv-2.0-pro` Cost: ~$0.02 per generation | Parameter | Type | Required | Default | Constraints | Description | |---|---|---|---|---|---| | fps | 24 / 30 / 50 | no | 50 | - | Frames per second | | width | integer | no | - | - | Video width in pixels | | height | integer | no | - | - | Video height in pixels | | prompt | ? | YES | - | - | Text description for video generation | | quantity | integer | no | 1 | min: 1, max: 1 | Number of videos to generate | | resolution | 1080p / 1440p / 2160p | no | 1080p | - | Video resolution | | start_frame | ? | no | - | - | Start frame image for image-to-video generation | | aspect_ratio | 16:9 / 9:16 | no | 16:9 | - | Video aspect ratio | | durationSeconds | 6 / 8 | no | 6 | - | Video duration in seconds | | enable_prompt_expansion | boolean | no | true | - | Enable automatic prompt expansion | **Supported Resolutions:** | Label | Width × Height | |---|---| | 16:9 | 1920×1080 | Invalid width/height combinations are automatically snapped to the nearest valid pair by aspect ratio and pixel count. **Example:** ```json { "model": "ltxv-2.0-pro", "type": "video", "params": { "prompt": "A beautiful scene", "fps": 50, "resolution": "1080p", "aspect_ratio": "16:9", "durationSeconds": 6, "enable_prompt_expansion": true } } ``` --- ### LTX 2.0 Ultra `model: ltxv-2.0-ultra` Cost: ~$0.02 per generation | Parameter | Type | Required | Default | Constraints | Description | |---|---|---|---|---|---| | mode | RESOLUTION_1080 / RESOLUTION_1440 / RESOLUTION_2160 | no | RESOLUTION_1080 | - | - | | width | integer | YES | 1920 | - | - | | height | integer | YES | 1080 | - | - | | prompt | ? | YES | - | - | - | | duration | 6 / 8 | no | 8 | - | - | | quantity | integer | YES | 1 | max: 1 | - | | prompt_enhance | ? | no | - | - | - | **Supported Resolutions:** | Label | Width × Height | |---|---| | 16:9 | 1920×1080 | | 9:16 | 1080×1920 | Invalid width/height combinations are automatically snapped to the nearest valid pair by aspect ratio and pixel count. **Example:** ```json { "model": "ltxv-2.0-ultra", "type": "video", "params": { "prompt": "A beautiful scene", "mode": "RESOLUTION_1080", "width": 1920, "height": 1080, "duration": 8 } } ``` --- ### LTXV 2.3 Fast Video Gen `model: ltxv-2.3-fast` Cost: ~$0.02 per generation | Parameter | Type | Required | Default | Constraints | Description | |---|---|---|---|---|---| | fps | 24 / 25 / 48 / 50 | no | 25 | - | Frames per second | | width | integer | no | - | - | Video width in pixels | | height | integer | no | - | - | Video height in pixels | | prompt | ? | YES | - | - | Text description for video generation | | quantity | integer | no | 1 | min: 1, max: 1 | Number of videos to generate | | end_frame | ? | no | - | - | End frame image for transition video generation. Requires start_frame. | | resolution | 1080p / 1440p / 2160p | no | 1080p | - | Video resolution | | start_frame | ? | no | - | - | Start frame image for image-to-video generation | | aspect_ratio | 16:9 / 9:16 | no | - | - | Video aspect ratio. Defaults to 16:9 for T2V, or auto-detected from start_frame for I2V. | | generate_audio | boolean | no | true | - | Whether to generate audio for the video | | durationSeconds | 6 / 8 / 10 / 12 / 14 / 16 / 18 / 20 | no | 6 | - | Video duration in seconds. Durations over 10s require 25fps and 1080p resolution. | **Supported Resolutions:** | Label | Width × Height | |---|---| | 16:9 | 1920×1080 | | 9:16 | 1080×1920 | Invalid width/height combinations are automatically snapped to the nearest valid pair by aspect ratio and pixel count. **Example:** ```json { "model": "ltxv-2.3-fast", "type": "video", "params": { "prompt": "A beautiful scene", "fps": 25, "resolution": "1080p", "generate_audio": true, "durationSeconds": 6 } } ``` --- ### LTXV 2.3 Pro Video Gen `model: ltxv-2.3-pro` Cost: ~$0.02 per generation | Parameter | Type | Required | Default | Constraints | Description | |---|---|---|---|---|---| | fps | 24 / 25 / 48 / 50 | no | 25 | - | Frames per second | | width | integer | no | - | - | Video width in pixels | | height | integer | no | - | - | Video height in pixels | | prompt | ? | YES | - | - | Text description for video generation | | quantity | integer | no | 1 | min: 1, max: 1 | Number of videos to generate | | end_frame | ? | no | - | - | End frame image for transition video generation. Requires start_frame. | | resolution | 1080p / 1440p / 2160p | no | 1080p | - | Video resolution | | start_frame | ? | no | - | - | Start frame image for image-to-video generation | | aspect_ratio | 16:9 / 9:16 | no | - | - | Video aspect ratio. Defaults to 16:9 for T2V, or auto-detected from start_frame for I2V. | | generate_audio | boolean | no | true | - | Whether to generate audio for the video | | durationSeconds | 6 / 8 / 10 | no | 6 | - | Video duration in seconds | **Supported Resolutions:** | Label | Width × Height | |---|---| | 16:9 | 1920×1080 | | 9:16 | 1080×1920 | Invalid width/height combinations are automatically snapped to the nearest valid pair by aspect ratio and pixel count. **Example:** ```json { "model": "ltxv-2.3-pro", "type": "video", "params": { "prompt": "A beautiful scene", "fps": 25, "resolution": "1080p", "generate_audio": true, "durationSeconds": 6 } } ``` --- ### Cortex 1.5 `model: lucid-origin` Cost: ~$0.00 per 1024×1024 image | Parameter | Type | Required | Default | Constraints | Description | |---|---|---|---|---|---| | mode | FAST / ULTRA | no | FAST | - | - | | seed | integer | no | - | min: 0, max: 2147483637 | - | | width | integer | no | 1024 | min: 16, max: 3000, step: 8 | - | | height | integer | no | 1024 | min: 16, max: 3000, step: 8 | - | | prompt | string | YES | - | minLen: 1, maxLen: 2000 | The prompt to use for the generation | | quantity | integer | no | 1 | min: 1, max: 8 | - | | guidance_scale | number | no | 0 | min: 0, max: 20 | How closely the model follows the prompt | | image_guidances | array | no | - | - | Image guidance configurations for StyleTransfer and LoraDepthMidas | | num_inference_steps | integer | no | 15 | min: 1, max: 150 | Number of denoising steps | **Dimension Range:** - Width: 16–3840 (step: 8) - Height: 16–3616 (step: 8) - Invalid values are auto-snapped to the nearest valid step. **Example:** ```json { "model": "lucid-origin", "type": "video", "params": { "prompt": "A beautiful scene", "mode": "FAST", "width": 1024, "height": 1024, "guidance_scale": 0, "num_inference_steps": 15 } } ``` --- ### Lucid Realism `model: lucid-realism` Cost: ~$0.00 per 1024×1024 image | Parameter | Type | Required | Default | Constraints | Description | |---|---|---|---|---|---| | mode | FAST / ULTRA | no | FAST | - | - | | seed | integer | no | - | min: 0, max: 2147483647 | - | | width | integer | no | 1024 | min: 16, max: 2496, step: 8 | - | | height | integer | no | 1024 | min: 16, max: 2496, step: 8 | - | | prompt | ? | YES | - | - | - | | quantity | integer | no | 4 | max: 8 | - | | prompt_enhance | ? | no | - | - | - | **Dimension Range:** - Width: 16–2496 (step: 8) - Height: 16–2496 (step: 8) - Invalid values are auto-snapped to the nearest valid step. **Example:** ```json { "model": "lucid-realism", "type": "video", "params": { "prompt": "A beautiful scene", "mode": "FAST", "width": 1024, "height": 1024 } } ``` --- ### Cortex 2.0 `model: cortex_2.0` Cost: ~$0.08 per generation | Parameter | Type | Required | Default | Constraints | Description | |---|---|---|---|---|---| | mode | RESOLUTION_480 / RESOLUTION_720 | no | RESOLUTION_480 | - | - | | seed | number | no | - | min: 0, max: 2147483637 | - | | width | ? | no | - | - | - | | height | ? | no | - | - | - | | prompt | ? | YES | - | - | - | | controls | ? | no | - | - | - | | elements | ? | no | - | - | - | | quantity | number | no | 1 | min: 1, max: 1 | - | | prompt_enhance | ? | no | - | - | - | | negative_prompt | ? | no | - | - | - | | frame_interpolation | ? | no | - | - | - | **Supported Resolutions:** | Label | Width × Height | |---|---| | 2:3 | 512×768 | | 4:5 | 576×720 | | 16:9 | 832×480 | | 9:16 | 480×832 | Invalid width/height combinations are automatically snapped to the nearest valid pair by aspect ratio and pixel count. **Example:** ```json { "model": "cortex_2.0", "type": "video", "params": { "prompt": "A beautiful scene", "mode": "RESOLUTION_480" } } ``` --- ### Cortex 2.0 Fast `model: cortex_2.0-fast` Cost: ~$0.03 per generation | Parameter | Type | Required | Default | Constraints | Description | |---|---|---|---|---|---| | mode | RESOLUTION_480 / RESOLUTION_720 | no | RESOLUTION_480 | - | - | | seed | number | no | - | min: 0, max: 4294967295 | - | | width | ? | no | - | - | - | | height | ? | no | - | - | - | | prompt | ? | YES | - | - | - | | controls | ? | no | - | - | - | | elements | ? | no | - | - | - | | quantity | number | no | 1 | min: 1, max: 1 | - | | start_frame | ? | no | - | - | - | | prompt_enhance | ? | no | - | - | - | | negative_prompt | ? | no | - | - | - | | frame_interpolation | ? | no | - | - | - | **Supported Resolutions:** | Label | Width × Height | |---|---| | 2:3 | 512×768 | | 4:5 | 576×720 | | 16:9 | 832×480 | | 9:16 | 480×832 | Invalid width/height combinations are automatically snapped to the nearest valid pair by aspect ratio and pixel count. **Example:** ```json { "model": "cortex_2.0-fast", "type": "video", "params": { "prompt": "A beautiful scene", "mode": "RESOLUTION_480" } } ``` --- ### Cortex v0.9 `model: cortex-v0.9` Cost: ~$0.00 per 1024×1024 image (min $0.00) | Parameter | Type | Required | Default | Constraints | Description | |---|---|---|---|---|---| | mode | FAST / QUALITY / ULTRA | no | FAST | - | - | | seed | integer | no | - | min: 0 | - | | width | integer | no | 1024 | min: 32, max: 2048, step: 8 | - | | height | integer | no | 1024 | min: 32, max: 2048, step: 8 | - | | prompt | ? | YES | - | - | - | | tiling | ? | no | - | - | - | | contrast | ? | no | - | - | - | | quantity | integer | no | 4 | max: 8 | - | | prompt_enhance | ? | no | - | - | - | | negative_prompt | ? | no | - | - | - | **Dimension Range:** - Width: 32–2048 (step: 8) - Height: 32–2048 (step: 8) - Invalid values are auto-snapped to the nearest valid step. **Example:** ```json { "model": "cortex-v0.9", "type": "video", "params": { "prompt": "A beautiful scene", "mode": "FAST", "width": 1024, "height": 1024 } } ``` --- ### Cortex v1.0 `model: cortex-v1.0` Cost: ~$0.00 per 1024×1024 image (min $0.00) | Parameter | Type | Required | Default | Constraints | Description | |---|---|---|---|---|---| | mode | FAST / QUALITY / ULTRA | no | FAST | - | - | | seed | integer | no | - | min: 0 | - | | width | integer | no | 1024 | min: 32, max: 2048, step: 8 | - | | height | integer | no | 1024 | min: 32, max: 2048, step: 8 | - | | prompt | ? | YES | - | - | - | | tiling | ? | no | - | - | - | | contrast | ? | no | - | - | - | | quantity | integer | no | 4 | max: 8 | - | | prompt_enhance | ? | no | - | - | - | | negative_prompt | ? | no | - | - | - | **Dimension Range:** - Width: 32–2048 (step: 8) - Height: 32–2048 (step: 8) - Invalid values are auto-snapped to the nearest valid step. **Example:** ```json { "model": "cortex-v1.0", "type": "video", "params": { "prompt": "A beautiful scene", "mode": "FAST", "width": 1024, "height": 1024 } } ``` --- ### Seedance 1.0 Pro Video Gen `model: seedance-1.0-pro` Cost: ~$0.09/720p 4s, ~$0.33/720p 15s (pixel×duration based) | Parameter | Type | Required | Default | Constraints | Description | |---|---|---|---|---|---| | seed | integer | no | -1 | min: -1, max: 4294967295 | Random seed to control video generation (use -1 for random) | | width | integer | YES | 1920 | - | Video width in pixels. Use 0 for auto aspect ratio detection (I2V only) | | height | integer | YES | 1088 | - | Video height in pixels. Use 0 for auto aspect ratio detection (I2V only) | | prompt | ? | YES | - | maxLen: 5000 | Text description for video generation | | duration | 2 / 3 / 4 / 5 / 6 / 7 / 8 / 9 / 10 / 11 / 12 | no | 5 | - | Video duration in seconds (2-12 seconds) | | quantity | integer | no | 1 | min: 1, max: 1 | Number of videos to generate | | end_frame | ? | no | - | - | Optional final frame for image-to-video generation | | start_frame | ? | no | - | - | Image to use as first frame for image-to-video generation | | camera_fixed | boolean | no | false | - | Whether to fix the camera position | | enable_safety_checker | boolean | no | false | - | Enable content safety filtering | **Example:** ```json { "model": "seedance-1.0-pro", "type": "video", "params": { "prompt": "A beautiful scene", "seed": -1, "width": 1920, "height": 1088, "duration": 5, "camera_fixed": false, "enable_safety_checker": false } } ``` --- ### Seedance 1.0 Pro Fast Video Gen `model: seedance-1.0-pro-fast` Cost: ~$0.04/720p 4s, ~$0.13/720p 15s (pixel×duration based) | Parameter | Type | Required | Default | Constraints | Description | |---|---|---|---|---|---| | seed | integer | no | -1 | min: -1, max: 4294967295 | Random seed to control video generation (use -1 for random) | | width | integer | YES | 1920 | - | Video width in pixels. Use 0 for auto aspect ratio detection (I2V only) | | height | integer | YES | 1088 | - | Video height in pixels. Use 0 for auto aspect ratio detection (I2V only) | | prompt | ? | YES | - | maxLen: 5000 | Text description for video generation | | duration | 2 / 3 / 4 / 5 / 6 / 7 / 8 / 9 / 10 / 11 / 12 | no | 5 | - | Video duration in seconds (2-12 seconds) | | quantity | integer | no | 1 | min: 1, max: 1 | Number of videos to generate | | start_frame | ? | no | - | - | Image to use as first frame for image-to-video generation | | camera_fixed | boolean | no | false | - | Whether to fix the camera position | | enable_safety_checker | boolean | no | false | - | Enable content safety filtering | **Example:** ```json { "model": "seedance-1.0-pro-fast", "type": "video", "params": { "prompt": "A beautiful scene", "seed": -1, "width": 1920, "height": 1088, "duration": 5, "camera_fixed": false, "enable_safety_checker": false } } ``` --- ### Seedance 2.0 Video Gen `model: seedance-2.0` Cost: ~$0.49/720p 4s, ~$1.85/720p 15s (pixel×duration based) | Parameter | Type | Required | Default | Constraints | Description | |---|---|---|---|---|---| | seed | integer | no | -1 | min: -1, max: 4294967295 | Random seed to control video generation (use -1 for random) | | width | integer | no | 1280 | - | Video width in pixels. | | height | integer | no | 720 | - | Video height in pixels. | | prompt | ? | YES | - | maxLen: 5000 | Text description for video generation | | duration | 4 / 5 / 6 / 7 / 8 / 9 / 10 / 11 / 12 / 13 / 14 / 15 | no | 8 | - | Video duration in seconds (4-15 seconds) | | quantity | integer | no | 1 | min: 1, max: 1 | Number of videos to generate | | end_frame | ? | no | - | - | Optional final frame for image-to-video generation | | start_frame | ? | no | - | - | Image to use as first frame for image-to-video generation | | generate_audio | boolean | no | true | - | Whether to generate audio with the video | | reference_audio_urls | array | no | - | - | Reference audio files for R2V generation (1-3 files, combined ≤15s). Refer to them as @Audio1, @Audio2, etc. Requires at | | reference_image_urls | array | no | - | - | Reference images for reference-guided video generation (1-9 images) | | reference_video_urls | array | no | - | - | Reference videos for video-guided generation (1-3 videos) | | enable_safety_checker | boolean | no | false | - | Enable content safety filtering | **Example:** ```json { "model": "seedance-2.0", "type": "video", "params": { "prompt": "A beautiful scene", "seed": -1, "width": 1280, "height": 720, "duration": 8, "generate_audio": true, "enable_safety_checker": false } } ``` --- ### Seedance 2.0 Fast Video Gen `model: seedance-2.0-fast` Cost: ~$0.40/720p 4s, ~$1.48/720p 15s (pixel×duration based) | Parameter | Type | Required | Default | Constraints | Description | |---|---|---|---|---|---| | seed | integer | no | -1 | min: -1, max: 4294967295 | Random seed to control video generation (use -1 for random) | | width | integer | no | 1280 | - | Video width in pixels. | | height | integer | no | 720 | - | Video height in pixels. | | prompt | ? | YES | - | maxLen: 5000 | Text description for video generation | | duration | 4 / 5 / 6 / 7 / 8 / 9 / 10 / 11 / 12 / 13 / 14 / 15 | no | 8 | - | Video duration in seconds (4-15 seconds) | | quantity | integer | no | 1 | min: 1, max: 1 | Number of videos to generate | | end_frame | ? | no | - | - | Optional final frame for image-to-video generation | | start_frame | ? | no | - | - | Image to use as first frame for image-to-video generation | | generate_audio | boolean | no | true | - | Whether to generate audio with the video | | reference_audio_urls | array | no | - | - | Reference audio files for R2V generation (1-3 files, combined ≤15s). Refer to them as @Audio1, @Audio2, etc. Requires at | | reference_image_urls | array | no | - | - | Reference images for reference-guided video generation (1-9 images) | | reference_video_urls | array | no | - | - | Reference videos for video-guided generation (1-3 videos) | | enable_safety_checker | boolean | no | false | - | Enable content safety filtering | **Example:** ```json { "model": "seedance-2.0-fast", "type": "video", "params": { "prompt": "A beautiful scene", "seed": -1, "width": 1280, "height": 720, "duration": 8, "generate_audio": true, "enable_safety_checker": false } } ``` --- ### Sora 2 `model: sora-2` Cost: ~$0.04 per generation | Parameter | Type | Required | Default | Constraints | Description | |---|---|---|---|---|---| | width | 1280 / 720 | no | 1280 | - | - | | height | 720 / 1280 | no | 720 | - | - | | prompt | ? | YES | - | - | - | | duration | 4 / 8 / 12 | no | 4 | - | - | | quantity | integer | YES | 1 | max: 1 | - | | start_frame | ? | no | - | - | - | **Supported Resolutions:** | Label | Width × Height | |---|---| | 16:9 | 1280×720 | | 9:16 | 720×1280 | Invalid width/height combinations are automatically snapped to the nearest valid pair by aspect ratio and pixel count. **Example:** ```json { "model": "sora-2", "type": "video", "params": { "prompt": "A beautiful scene", "width": 1280, "height": 720, "duration": 4 } } ``` --- ### Sora 2 Pro `model: sora-2-pro` Cost: ~$0.12 per generation | Parameter | Type | Required | Default | Constraints | Description | |---|---|---|---|---|---| | mode | RESOLUTION_720 / RESOLUTION_1080 | no | RESOLUTION_720 | - | - | | width | 1280 / 720 / 1024 / 1792 | YES | 1280 | - | - | | height | 720 / 1280 / 1024 / 1792 | YES | 720 | - | - | | prompt | ? | YES | - | - | - | | duration | 4 / 8 / 12 | no | 4 | - | - | | quantity | integer | YES | 1 | max: 1 | - | | start_frame | ? | no | - | - | - | **Supported Resolutions:** | Label | Width × Height | |---|---| | 16:9 | 1280×720 | | 9:16 | 720×1280 | Invalid width/height combinations are automatically snapped to the nearest valid pair by aspect ratio and pixel count. **Example:** ```json { "model": "sora-2-pro", "type": "video", "params": { "prompt": "A beautiful scene", "mode": "RESOLUTION_720", "width": 1280, "height": 720, "duration": 4 } } ``` --- ### Veo 3 Fast `model: veo-3.0-fast-generate-001` Cost: ~$0.06 per generation | Parameter | Type | Required | Default | Constraints | Description | |---|---|---|---|---|---| | mode | RESOLUTION_720 / RESOLUTION_1080 | no | RESOLUTION_720 | - | - | | seed | number | no | - | min: 0, max: 4294967295 | - | | width | 1280 / 720 / 1920 / 1080 | no | 1280 | - | - | | height | 720 / 1280 / 1080 / 1920 | no | 720 | - | - | | prompt | ? | YES | - | - | - | | duration | 4 / 6 / 8 | no | 8 | - | - | | quantity | integer | no | 1 | max: 1 | - | | start_frame | ? | no | - | - | - | | negative_prompt | ? | no | - | - | - | **Supported Resolutions:** | Label | Width × Height | |---|---| | 16:9 | 1280×720 | | 9:16 | 720×1280 | Invalid width/height combinations are automatically snapped to the nearest valid pair by aspect ratio and pixel count. **Example:** ```json { "model": "veo-3.0-fast-generate-001", "type": "video", "params": { "prompt": "A beautiful scene", "mode": "RESOLUTION_720", "width": 1280, "height": 720, "duration": 8 } } ``` --- ### Veo 3 `model: veo-3.0-generate-001` Cost: ~$0.13 per generation | Parameter | Type | Required | Default | Constraints | Description | |---|---|---|---|---|---| | mode | RESOLUTION_720 / RESOLUTION_1080 | no | RESOLUTION_720 | - | - | | seed | number | no | - | min: 10, max: 4294967295 | - | | width | 720 / 1080 / 1280 / 1920 | no | 1280 | - | - | | height | 720 / 1080 / 1280 / 1920 | no | 720 | - | - | | prompt | ? | YES | - | - | - | | duration | 4 / 6 / 8 | no | 8 | - | - | | quantity | integer | YES | 1 | max: 1 | - | | start_frame | ? | no | - | - | - | | negative_prompt | ? | no | - | - | - | **Supported Resolutions:** | Label | Width × Height | |---|---| | 16:9 | 1280×720 | | 9:16 | 720×1280 | Invalid width/height combinations are automatically snapped to the nearest valid pair by aspect ratio and pixel count. **Example:** ```json { "model": "veo-3.0-generate-001", "type": "video", "params": { "prompt": "A beautiful scene", "mode": "RESOLUTION_720", "width": 1280, "height": 720, "duration": 8 } } ``` --- ### Veo 3.1 Fast `model: veo-3.1-fast-generate-001` Cost: ~$0.04 per generation | Parameter | Type | Required | Default | Constraints | Description | |---|---|---|---|---|---| | mode | RESOLUTION_720 / RESOLUTION_1080 / RESOLUTION_2160 | no | RESOLUTION_720 | - | - | | seed | number | no | - | min: 0, max: 4294967295 | - | | audio | ? | no | - | - | - | | width | 720 / 1080 / 1280 / 1920 / 2160 / 3840 | no | 1280 | - | - | | height | 720 / 1080 / 1280 / 1920 / 2160 / 3840 | no | 720 | - | - | | prompt | ? | YES | - | - | - | | duration | 4 / 6 / 8 | no | 8 | - | - | | quantity | integer | YES | 1 | max: 1 | - | | end_frame | ? | no | - | - | - | | start_frame | ? | no | - | - | - | | negative_prompt | ? | no | - | - | - | | motion_has_audio | ? | no | true | - | - | **Supported Resolutions:** | Label | Width × Height | |---|---| | 16:9 | 1280×720 | | 9:16 | 720×1280 | Invalid width/height combinations are automatically snapped to the nearest valid pair by aspect ratio and pixel count. **Example:** ```json { "model": "veo-3.1-fast-generate-001", "type": "video", "params": { "prompt": "A beautiful scene", "mode": "RESOLUTION_720", "width": 1280, "height": 720, "duration": 8, "motion_has_audio": true } } ``` --- ### Veo 3.1 `model: veo-3.1-generate-001` Cost: ~$0.08 per generation | Parameter | Type | Required | Default | Constraints | Description | |---|---|---|---|---|---| | mode | RESOLUTION_720 / RESOLUTION_1080 / RESOLUTION_2160 | no | RESOLUTION_720 | - | - | | seed | number | no | - | min: 0, max: 4294967295 | - | | audio | ? | no | - | - | - | | width | 720 / 1080 / 1280 / 1920 / 2160 / 3840 | no | 1280 | - | - | | height | 720 / 1080 / 1280 / 1920 / 2160 / 3840 | no | 720 | - | - | | prompt | ? | YES | - | - | - | | duration | 4 / 6 / 8 | no | 8 | - | - | | quantity | integer | YES | 1 | max: 1 | - | | end_frame | ? | no | - | - | - | | start_frame | ? | no | - | - | - | | negative_prompt | ? | no | - | - | - | | motion_has_audio | ? | no | true | - | - | **Supported Resolutions:** | Label | Width × Height | |---|---| | 16:9 | 1280×720 | | 9:16 | 720×1280 | Invalid width/height combinations are automatically snapped to the nearest valid pair by aspect ratio and pixel count. **Example:** ```json { "model": "veo-3.1-generate-001", "type": "video", "params": { "prompt": "A beautiful scene", "mode": "RESOLUTION_720", "width": 1280, "height": 720, "duration": 8, "motion_has_audio": true } } ``` --- ### Veo 3.1 Lite `model: veo-3.1-lite` Cost: ~$0.02 per generation | Parameter | Type | Required | Default | Constraints | Description | |---|---|---|---|---|---| | mode | RESOLUTION_720 / RESOLUTION_1080 | no | RESOLUTION_720 | - | - | | seed | number | no | - | min: 0, max: 4294967295 | - | | audio | ? | no | - | - | - | | width | 720 / 1080 / 1280 / 1920 | no | 1280 | - | - | | height | 720 / 1080 / 1280 / 1920 | no | 720 | - | - | | prompt | ? | YES | - | - | - | | duration | 4 / 6 / 8 | no | 8 | - | - | | quantity | integer | YES | 1 | max: 1 | - | | end_frame | ? | no | - | - | - | | start_frame | ? | no | - | - | - | | negative_prompt | ? | no | - | - | - | | motion_has_audio | ? | no | true | - | - | **Supported Resolutions:** | Label | Width × Height | |---|---| | 16:9 | 1280×720 | | 9:16 | 720×1280 | Invalid width/height combinations are automatically snapped to the nearest valid pair by aspect ratio and pixel count. **Example:** ```json { "model": "veo-3.1-lite", "type": "video", "params": { "prompt": "A beautiful scene", "mode": "RESOLUTION_720", "width": 1280, "height": 720, "duration": 8, "motion_has_audio": true } } ``` --- ## 3D Models ### Rodin V2 `model: rodin-v2` Cost: ~$0.16 per generation | Parameter | Type | Required | Default | Constraints | Description | |---|---|---|---|---|---| | seed | integer | no | - | min: 0, max: 65535 | Seed for reproducible generation | | quality | extra_low / low / medium / high | no | high | - | Generation quality level. Polygon counts depend on mesh_mode: Triangle (extra_low: 2k, low: 20k, medium: 150k, high: 500 | | ta_pose | boolean | no | false | - | Apply T/A-pose constraint for human character meshes (easier to rig and animate) | | material | PBR / Shaded / All | no | All | - | Material mode for the generated mesh | | mesh_mode | Quad / Triangle | no | Triangle | - | Type of faces in the generated mesh. Quad produces quadrilateral faces (smoother surfaces), Triangle produces triangular | | bounding_box | array | no | - | - | Bounding box dimensions as [width, height, length] integers to constrain the generated model size | | use_original_alpha | boolean | no | false | - | Preserve original alpha channel from input images | **3D Output Format:** The response includes two fields: - `result` — JPG thumbnail/preview URLs - `glb_urls` — Downloadable `.glb` 3D model files (same URL with `.jpg` → `.glb`) Example: ``` result: https://.../{genId}/rodin-v2_-0.jpg ← preview image glb_urls: https://.../{genId}/rodin-v2_-0.glb ← 3D model download ``` **Example:** ```json { "model": "rodin-v2", "type": "3d", "params": { "quality": "high", "ta_pose": false, "material": "All", "mesh_mode": "Triangle", "use_original_alpha": false } } ``` ---