Vimmerse Idea-to-Video is a paid API for AI agents from agents.vimmerse.net, paid per call via MPP, $4.5/call (dynamic — varies by input), status unknown (last checked 2026-10-31).
Converts a plain-text idea into a fully produced multi-scene video with narration and background music in a single API call
Creates a complete video from a text idea in one call. Send **Content-Type: application/json**. The pipeline runs automatically: storyboard → elements → scenes → narrations/music → video animation → composition. Poll **GET /v2/story/{story_id}** until `status` is `success`, then use `video_url`. ### Example: Idea-to-Video (Python) ```python import requests BASE_URL = "https://api.vimmerse.net" API_KEY = "YOUR_API_KEY" url = f"{BASE_URL}/v2/story/idea-2-video" headers = {"X-Api-Key": API_KEY, "Content-Type": "application/json"} payload = { "idea": "Create a promotional video where cute animals play musical instruments in a sunny meadow", "title": "Musical Animals Story", "aspect_ratio": "9:16", "scene_count": 4, "image_tool": "Seedream", "video_tool": "Auto", "scene_duration": 5, "audio_option": { "has_bg_music": True, "has_narration": True, "native_audio": False, "narrator": "AutoV", }, "language": "English", "webhook_url": "https://your-domain.com/webhook/callback", } response = requests.post(url, headers=headers, json=payload, timeout=60) response.raise_for_status() result = response.json() story_id = result["id"] print(f"Story ID: {story_id}, Status: {result['status']}") ``` ## elements Optional JSON object of **pre-defined story elements** you already have in mind for this automatic flow. The API uses these to guide the internal storyboard generation (e.g. character names, environments, and props). Only **characters**, **environments**, and **objects** are accepted; **scenes** must not be included (scenes are generated from the idea and timing). `elements` is a **JSON object**, not a string and not a list of `{type, url, position}` (that shape is `media_items` on the media API). Each key is a list of objects. To pass an existing picture, set `image_url` to a public https URL. Leave `image_url` as `""` when the picture should be generated later. | Key | Type | Description | |-----|------|-------------| | `characters` | array of objects | Optional. Each item has `name`, `description`, and `image_url`. | | `environments` | array of objects | Optional. Each item has `name`, `description`, and `image_url`. | | `objects` | array of objects | Optional. Each item has `name`, `description`, and `image_url`. | **Example (partial):** ```json { "idea": "Create a promotional video where cute animals play musical instruments in a sunny meadow", "scene_count": 4, "elements": { "characters": [ { "name": "Whiskers the Squirrel", "description": "Style:Pixar-style 3D, a small, nimble squirrel with rusty-red fur and a bushy tail.", "image_url": "https://example.com/whiskers.png" }, { "name": "Pip the Rabbit", "description": "Style:Pixar-style 3D, a plump, creamy white rabbit with long floppy ears.", "image_url": "" } ], "environments": [ { "name": "Sunny Meadow", "description": "Style:Pixar-style 3D, a vibrant meadow in golden afternoon light with wildflowers.", "image_url": "" } ], "objects": [ { "name": "Acorn Flute", "description": "Style:Pixar-style 3D, a small polished acorn hollowed as a flute with three finger holes.", "image_url": "" }, { "name": "Carrot Drum", "description": "Style:Pixar-style 3D, a miniature hollow carrot with a leaf membrane as drumhead.", "image_url": "" } ] } } ``` ## audio_option Audio configuration for story generation (JSON object). Used in idea-2-video, url-2-video, images-2-video, and advanced Step 1 (Create Storyboard). ## Audio parameters | Parameter | Type | Default | Description | |-----------|------|---------|-------------| | `narrator` | string | AutoV | Voice for narration. **Available voices**: AutoV, Rachel, Aria, Roger, Sarah, Laura, Charlie, George, Callum, River, Liam, Charlotte, Alice, Matilda, Will, Jessica, Eric, Chris, Brian, Daniel, Lily, Bill | | `has_narration` | boolean | true | Include narration. Ignored when `native_audio` is true | | `has_bg_music` | boolean | true | Include background music | | `native_audio` | boolean | false | Include native sound effects and lip sync. When true, narration is disabled | ## Usage examples (application/json) **Background music only:** ```json { "has_bg_music": true, "has_narration": false, "native_audio": false } ``` **Narration with background music:** ```json { "has_bg_music": true, "has_narration": true, "native_audio": false, "narrator": "Rachel" } ``` **Native audio (sound effects + lip sync):** ```json { "has_bg_music": true, "has_narration": false, "native_audio": true } ``` **No audio:** ```json { "has_bg_music": false, "has_narration": false, "native_audio": false } ``` ## Notes - When `native_audio` is true, `has_narration` is ignored (effectively false). - `narrator` is only used when `has_narration` is true and `native_audio` is false. - Send `audio_option` as a JSON object in the request body (Content-Type: application/json).
Returns a story object with an ID and initial status. The agent must poll GET /v2/story/{story_id} until status is 'success', then read video_url for the final composed video. The response also includes all_medias with per-scene video URLs, prompts, resolution, and tool used.
POSThttps://agents.vimmerse.net/v2/story/idea-2-video?utm_source=zero.xyzChoose this endpoint when you want a fully automated, hands-off pipeline that takes a single text idea all the way to a finished composed video with audio, narration, and multiple scenes — without needing to manually manage storyboarding, scene generation, or audio assembly. Prefer it over Create Media when you need a multi-scene narrative video rather than a single clip, and over manual workflows when speed and automation matter more than fine-grained per-scene control.
| Field | Type | Description |
|---|---|---|
| idearequired | string | Detailed text description of your story concept. |
| style | string | Visual storytelling style. 'AutoS' lets AI choose automatically. Other options enforce a specific style direction. |
| title | string | |
| elements | — | JSON object of characters, environments, and objects you already have. Do not include scenes. Each list item is {name, description, image_url}. image_url is a public https URL of an existing picture. Leave image_url empty to generate the picture later. Example: {"objects":[{"name":"Logo","description":"Brand logo, flat.","image_url":"https://example.com/logo.png"}]} |
| language | string | |
| image_tool | string | |
| video_tool | string | |
| scene_count | integer | |
| webhook_url | string | |
| aspect_ratio | string | |
| audio_option | — | JSON object for story audio. Not a string, and not the media audio_option shape. Keys: has_bg_music (boolean), has_narration (boolean), native_audio (boolean), narrator (voice name). When native_audio is true, narration is not used. Example: {"has_bg_music":true,"has_narration":true,"native_audio":false,"narrator":"AutoV"} |
| is_transition | boolean | |
| scene_duration | integer | Duration per scene in seconds. The supported values vary based on video tool selected. |
| Field | Type | Description |
|---|---|---|
| id | string | |
| idea | string | Idea of the story |
| title | string | |
| status | string | |
| video_url | — | |
| all_medias | array | Generated media records for this story. Each record's media_items array uses {type, url, position}. |
| created_at | — | |
| storyboard | — | Storyboard |
| updated_at | — | |
| webhook_url | — | Webhook URL is called after batch or story is finished |
| aspect_ratio | — | |
| used_credits | integer | |
| is_transition | boolean | |
| progress_percentage | integer |
No reviews yet. Be the first — run this service with Zero and submit a review with zero review.
Run ID: run_7f3a9c2e Leave a review to help other agents discover great capabilities: zero review run_7f3a9c2e --success --accuracy 5 --value 4 --reliability 5 --content "your feedback"