fal image model list vs the Sume catalog: how to check by query
fal.ai lists Seedream 5.0, GPT Image 2.5, Flux 2, Nano Banana 2, Ideogram 4 and Krea 2. How to see which ones a Sume key can call, with a short Python script.

To find out whether a model from fal's gallery is callable through Sume, do not compare web pages: query the catalog. GET /v1/images/models returns every image model your key can use, with the parameters each one accepts, so a name search takes seconds.
What fal's gallery lists
On October 3, 2026, the fal.ai model gallery lists, among others, Seedream 5.0, GPT Image 2.5, Flux 2, Nano Banana 2, Ideogram 4 and Krea 2 for images. It also describes Seedance 2.5 as producing a native 30-second clip at up to 720p, which matters if you compare video options as well.
| Model on the gallery | What to search for in a catalog |
|---|---|
| Seedream 5.0 | seedream |
| GPT Image 2.5 | gpt-image |
| Flux 2 | flux |
| Nano Banana 2 | banana, or the Gemini image name |
| Ideogram 4 | ideogram |
| Krea 2 | krea |
Query the Sume catalog
The Sume Image API publishes model ids in an org/slug form, for example openai/gpt-image-2.5 and ideogram/ideogram-v4.5, and also accepts bare legacy ids such as nano-banana-2 as aliases. Because names differ between catalogs, search the id and the display name together, and treat a miss as a prompt to read the list by eye rather than proof that a model is absent.
import os
import requests
KEYWORDS = ["seedream", "gpt-image", "flux", "banana", "ideogram", "krea"]
def main() -> None:
r = requests.get(
"https://api.sume.com/v1/images/models",
headers={"Authorization": f"Bearer {os.environ['SUME_API_KEY']}"},
timeout=30,
)
r.raise_for_status()
models = r.json()["data"]
for key in KEYWORDS:
hits = [m["id"] for m in models if key in (m["id"] + " " + m.get("name", "")).lower()]
print(f"{key:10s} -> {hits or 'no match; read the list by eye'}")
if __name__ == "__main__":
main()What to compare once you find a match
Names are the start of the comparison, not the end. For each match, read the endpoint record at GET /v1/images/models/{model_id}/endpoints. It lists the supported parameters, such as how many input_references the model takes and which aspect ratios it accepts, and a pricing line that is the amount charged. A request that sets a parameter the model does not list returns 400 unsupported_parameter, so a catalog check up front saves a failed run later.
- Reference images: read the
input_referencesrange, since some models are text-to-image only. - Aspect ratios: read the
aspect_ratioenum before you pin one. - Price: read
pricing[].cost_usdand multiply byn. - Streaming: every catalog row currently reports
supports_streaming: false.
A note on video
The gallery's Seedance 2.5 description is a vendor claim about clip length and resolution. For video, check a catalog the same way and read the stated limits for your target model before you plan a 30-second clip.
Sources
Related posts
More in Comparisons
- fal retry budgets and 1-hour grace vs Sume job error categories
fal's changelog lists per-condition retry budgets and termination grace of up to one hour. Sume job errors carry a category, a next action and retry-after.
- fal's Usage API vs Sume's per-job, per-run cost reads
fal's changelog lists a Usage API for cost attribution. Sume's GET /v1/usage filters by job_id, run_id or thread_id and returns a summary. How to attribute.
- FLUX.2 [klein] needs about 13 GB VRAM: local run or API?
Recraft cites about 13 GB of VRAM for FLUX.2 [klein] under Apache 2.0. A checklist for deciding between a local GPU and a hosted image API.
- Gemini API webhooks for batch jobs: keep a poll backup, as on Sume
Gemini API release notes say webhooks replace polling for Batch and long-running operations. What changes in a client, and why Sume keeps a polling backup.
Written by Sume