Is Ideogram 4.5 edit a separate id on Sume? No, references decide
No. ideogram/ideogram-v4.5 is the only id: no input_references generates, 1 to 5 edits the first image. Size and aspect rules change with the call type.

There is no separate edit id on Sume. ideogram/ideogram-v4.5 is one model: send no input_references and it generates from text, send one to five and it edits the first image and uses the others as references. Fal and Ideogram publish edit as its own endpoint, so this is the main thing to know when you move code over.
One id, two behaviours
The Image API docs say that without references Ideogram 4.5 generates from text, and with references it edits the first image and uses up to four more (Image API docs). On fal the edit is a separate model page with its own image_url and reference_image_urls fields (fal, read 2026-10-05), and Ideogram's own API has a dedicated Precise Edit route (Ideogram API reference, read 2026-10-05).
| Item | Text only | With input_references |
|---|---|---|
| Model id | ideogram/ideogram-v4.5 | ideogram/ideogram-v4.5 |
| References | 0 | 1 to 5 (first one is edited) |
| No aspect_ratio given | 1K 1:1 size, 1024x1024 | source shape kept |
| 16:9 at 1K | 1280x720 | 1536x864 |
| resolution 2K alone | 2048x2048 | ignored |
| Quality | low, medium (default), high | same |
Porting a call
If your code on another host has two endpoints, merge them into one with a switch on whether there is a source image. Everything else is the same field set, and the price is by quality, $0.03, $0.06 or $0.22 on the fal list with Sume billing list x 1.25.
def body(prompt, source=None, refs=()):
b = {"model": "ideogram/ideogram-v4.5", "prompt": prompt}
urls = ([source] if source else []) + list(refs)
if urls:
b["input_references"] = [{"image_url": {"url": u}} for u in urls]
return b
print(body("A tea tin on marble"))
print(body("Make the lid gold", source="https://example.com/tin.jpg"))What Sume does not carry over
Ideogram's edit API takes an optional mask, and fal's edit page lists a mask and an edit_precision option (read 2026-10-05). The Sume route sends only the prompt, the image size, the quality, the image count and the image URLs, and a mask_url is a 400 on this model. If you rely on a mask, the GPT Image 2.5 models are the ones on Sume that advertise mask_url.
Common slip
The most common mistake is sending a source image as the last reference. Order matters: the first entry is edited. Put the photo first and the style references after it, and send no shape field unless you want the shape to change.
Why Sume merges them
One id keeps the catalog short and makes a client simpler: a single model entry in GET /v1/images/models covers both calls, and its input_references descriptor tells you the maximum, which is 5 for this model.
The trade-off is that the same field set behaves differently by call type, as the table shows. Test both call types when you integrate, and do not copy size assumptions from one to the other.
Sources
Related posts
More in Models
- Is the Seedance 2.5 API live? What Sume can call for 30-second video
ByteDance's Seedance 2.5 post said its API was coming soon via BytePlus ModelArk. On Sume, seedance-2.5 (4-30 s) and wan-3.0 (2-30 s) are in the Video Router.
- Japanese and Tagalog TTS: not on MAI-Voice-2.1, tagged on Sume
MAI-Voice-2.1's 23 languages exclude Japanese and Tagalog; Sume's voice library tags ja and tl. How to set language and audition for 1 cent.
- Kling 3.0 native 4K at 60 fps: what Sume's kling-3 lets you order
Kling 3.0 is marketed with native 4K. The fal page lists up to 1080p, and Sume's kling-3 accepts 720p or 1080p, 4 to 15 s. Here is what to plan around.
- kling-3 has no reference_video_urls; motion_video_url is another route
Sume's kling-3 id rejects reference_*_urls. A clip that should drive a character's motion goes to the separate Kling motion control route as motion_video_url.
Written by Sume