Opennan

Storyboard

Live

Describe a scene, optionally with its shots and pictures of your characters. Get one storyboard sheet, a panel per shot, and every panel as its own image, in reading order.

From $1.014 per sheetFailed runs are not charged.

Storyboard

Input

246 / 2,000
What happens, where and with whom. A script excerpt works.
4
For example: anime, film noir, warm 3D animation.
Panel shape
  • explorer-thumbnail-a45a7f1e.pngLeo

Pictures of characters the panels keep the same, up to 4.

From $1.014 per sheet, by panels and reference images.

These tools need an API key with the api:opennan scope: paste one under Use API key to run them.

4 panels

Output

Example
Example outputMade with these inputsStoryboard

4 panels

Full sheet
  1. Panel 11
  2. Panel 22
  3. Panel 33
  4. Panel 44

How it works

  1. 01Describe the sceneWhat happens, where and with whom, up to 2,000 characters, with a style and panel shape.
  2. 02We draw the sheetOne panel per shot, keeping your characters the same.
  3. 03Get the panelsThe full sheet and each panel as its own image.

Call Storyboard from your code

One endpoint and one key, on the same balance as the playground. The request below is the example's own.

POSThttps://api.opennan.com/v1/storyboards
  1. Get an API key

    Create a key in the console. It uses the same balance as the playground.

    Create a key
  2. Send your first request

    The same request the playground sends. Set OPENNAN_KEY to your key.

    curl https://api.opennan.com/v1/storyboards \
      -H "Authorization: Bearer $OPENNAN_KEY" \
      -H "Content-Type: application/json" \
      -d '{"description":"Leo, a cheerful young explorer in a green jacket with a big backpack, climbs a snowy mountain trail at dusk, spots a log cabin with warm glowing windows, steps inside and finds an old map pinned to the wall showing a hidden lake beyond the peaks.","panel_count":4,"style":"warm 3D animation, soft volumetric light","aspect_ratio":"16:9","references":[{"image_url":"https://cdn.opennan.com/examples/3d/explorer-thumbnail-a45a7f1e.png","kind":"character","name":"Leo"}]}'
    
    # Then poll until "status" is "succeeded" or "failed":
    curl https://api.opennan.com/v1/tasks/<task id> -H "Authorization: Bearer $OPENNAN_KEY"
  3. Poll the task

    The call answers right away with a task id. Ask for the task until it finishes:

    GEThttps://api.opennan.com/v1/tasks/{id}
    queued
    Waiting for a worker
    running
    Being made
    succeeded
    Done: outputs[].url holds the files
    failed
    Failed: you are not charged

Errors and how to fix them

  • 401Missing or wrong key

    Send the header Authorization: Bearer with a key from the console.

  • 402Balance too low

    Add credit in Billing, then send the same call again.

  • 400A value is not accepted

    Read error.message: it names the field. Use a value from the parameter table.

  • 429Too many requests

    Wait a few seconds and try again, waiting longer after each 429.

Add Opennan to your AI app

One install gives your AI every Opennan tool: video, images, chat, voice, music, sound effects, 3D, captions and dubbing. Pick your app and follow the steps.

MCP serverhttps://api.opennan.com/v1/mcp

Works in the Codex CLI, the Codex app and the Codex IDE extension: they share ~/.codex/config.toml. If the app or IDE does not see OPENNAN_KEY, use the config.toml option with your key in it. Codex asks before each tool call: approve it to go on.

  1. Get an API key

    Create a key in the console. It starts with sk- and uses the same balance as the website.

    Create a key
  2. Save your key as OPENNAN_KEY

    # macOS / Linux (zsh shown; bash: ~/.bashrc)
    echo 'export OPENNAN_KEY="sk-..."' >> ~/.zshrc
    source ~/.zshrc
    
    # Windows (PowerShell), then open a new terminal
    setx OPENNAN_KEY "sk-..."
  3. Install the Opennan plugin: the server plus a skill that teaches your AI to pick models, confirm prices and wait for results

    codex plugin marketplace add Opennan/opennan-ai-plugin
    codex plugin add opennan@opennan
  4. Or add only the server

    codex mcp add opennan --url https://api.opennan.com/v1/mcp --bearer-token-env-var OPENNAN_KEY
  5. Or add this to ~/.codex/config.toml

    [mcp_servers.opennan]
    url = "https://api.opennan.com/v1/mcp"
    http_headers = { Authorization = "Bearer sk-..." }
  6. Check that opennan is listed

    codex mcp list
  7. Restart Codex, then ask for anything

    “Make a 5 second video of rain on a neon street, a song to go with it and a poster image.”

Replace sk-... with your own key and keep it private: anyone who has it can spend your balance. Your app can list the tools before you add a key; making anything needs one.

This tool from your AI

Once Opennan is added, your AI calls this tool with arguments like these.

Tool
generate_storyboard_sheet
Example arguments
{
  "description": "Leo, a cheerful young explorer in a green jacket with a big backpack, climbs a snowy mountain trail at dusk, spots a log cabin with warm glowing windows, steps inside and finds an old map pinned to the wall showing a hidden lake beyond the peaks.",
  "panel_count": 4,
  "style": "warm 3D animation, soft volumetric light",
  "aspect_ratio": "16:9",
  "references": [
    {
      "image_url": "https://cdn.opennan.com/examples/3d/explorer-thumbnail-a45a7f1e.png",
      "kind": "character",
      "name": "Leo"
    }
  ]
}

Storyboard: questions

How much does Storyboard cost?

From $1.014 per sheet. The Run button shows the exact price for your input before you start.

How do I call it from my code?

Send POST https://api.opennan.com/v1/storyboards with your API key. It answers with a task id: ask https://api.opennan.com/v1/tasks/{id} until the task succeeds or fails.

Can my AI agent use it?

Yes. Add the MCP server https://api.opennan.com/v1/mcp and call the generate_storyboard_sheet tool, or point your agent at https://api.opennan.com/llms.txt.

What happens if a run fails?

A failed run is not charged. You pay only for results.

Which API key do I need?

A key with the api:opennan scope. A full api key does not include it: create one with that scope in the console, then use it here under Use API key or in your code.

We only use the cookies the site needs, such as your language and a referral code. No ads. We count page visits with cookie-free analytics. See our Cookie Policy for details.