API
Introducing Backboard’s Image Tool: Streaming-native Image Generation for Your Agents
Today we are launching Image Tool, a built‑in image generation capability for Backboard threads. It lets your agents create and edit images inside normal conversations, with streaming support and first‑class document IDs for follow‑ups.
If you are already using Backboard for text agents, you do not need a new API. You just turn image generation on per message, choose an image model, and let the thread LLM decide when to call the built‑in generate_image tool.
How it works
Image Tool is enabled per message through three new fields:
image_generation="auto"image_model_providerimage_model_name
You send a normal conversation message. The thread LLM chooses when to call the tool and Backboard handles the image generation and media events for you.
This gives you:
Text‑to‑image inside any agent conversation
Image‑to‑image edits within the same thread
Streaming image URLs and
document_ids viamedia_generatedeventsA simple upgrade path from text‑only agents to multimodal experiences
Python SDK: text‑to‑image in one call
The Python SDK exposes the image fields directly on send_message().
You keep your usual text workflow. By adding the image fields, you unlock image generation without managing a separate media pipeline.
Streaming: capture images as they are generated
Most image experiences feel better when they stream. Backboard surfaces images through media_generated events on the same stream you already use for content.
Key behavior:
content_streamingdelivers partial text as usualmedia_generatedgives you the image URL and a stabledocument_idyou can store for later edits or display in your app
Image‑to‑image: edit by document_id
Because images are treated as first‑class documents, you can perform follow‑up edits by referencing the prior document_id inside the same thread.
This pattern lets you build iterative design flows. Your users can ask an agent to refine an existing image, and your app only needs to keep track of thread_id and document_id.
JavaScript and TypeScript
The current JavaScript SDK helper does not yet expose image fields, so you call the HTTP API directly with the standard /threads/messages request.
This uses the same fields and behavior as the Python SDK. When streaming is enabled, you receive media_generated events in the response stream.
Parameters at a glance
Field | Description |
| Set to |
| Provider for the image model, such as |
| Image‑capable model name |
| Reuse the same thread for follow‑up edits |
| Enables |
Recommended setup
To get the best experience:
Use a normal thread LLM such as
gpt-4.1for conversationConfigure an image model with
image_model_providerandimage_model_nameTurn on streaming so you can react to
media_generatedeventsStore
document_idvalues for any images you want to edit or redisplay later
What you can build with Image Tool
Some examples that work out of the box:
UI and marketing agents that generate hero images and iterate on them with user feedback
Product customization flows that let users start from a base template and refine by prompt
Design review bots that annotate or modify existing images based on natural language instructions
Any place you already rely on Backboard threads, you can now add images without standing up a separate media service.
ON THIS PAGE
CATEGORY
API
PUBLISHED
SHARE