Custom Ideogram API Node
Ideogram's text-in-image trick, without leaving the graph
- b64_url
For years, Ideogram's one superpower was text rendering. Logos, signs, posters - the stuff where every other model spells "coffee" as "coffe" - that was Ideogram's lane, and it was API-only. This node is a thin, friendly wrapper around that API: you give it a prompt, and it hands back an image with words that are actually spelled right. It also exposes Ideogram's characterful extras, like the style_type presets and magic_prompt_option, which are the settings that make Ideogram results look like Ideogram.
One distinction worth making up front, because it trips people: this calls the hosted API. Ideogram 4 later shipped open weights you can run locally - that's a different thing, a big local download, and not what this node is. This node is for pointing at a key and getting an image back.
How it works
It POSTs to api_url (default https://api.hyprlab.io/v1/images/generations - a third-party OpenAI-style endpoint; change it to your Ideogram-compatible provider) with a Bearer key. The request carries the full Ideogram parameter set: prompt, negative prompt, aspect ratio, seed, style_type, and magic_prompt_option, plus response_format: b64_json. The response is expected as data[0].b64_json, which it wraps in a data:image/webp;base64, URL.
That output - b64_url - is a STRING, not an image. Run it through the pack's Load Image from URL (BillBum) node to get a tensor you can actually preview.
The inputs that matter
- prompt and negative_prompt - yes, Ideogram's API takes a real negative prompt, which is rare among the hosted image APIs and genuinely useful for keeping "no people" or "no text other than X" out of the frame.
- model -
ideogram-v2by default. Free-form, so point it at whatever model your endpoint supports. - aspect_ratio - eleven options from 1:1 to 3:1; Ideogram is unusually good at nailing requested compositions, so this setting does real work.
- style_type -
Auto,General,Realistic,Design,Render 3D,Anime. This is Ideogram's vibe dial;RealisticvsDesignchanges more than you'd expect. - magic_prompt_option -
Auto/On/Off. Magic Prompt has the model expand and polish your prompt before generating. Leave it onAutountil you have a reason not to;Offgives you deterministic-ish control over exactly what's sent. - api_url / api_key - the defaults point at HyprLab, so swap them for your actual provider.
The single output is b64_url (STRING).
Installing it
Same pack as all the other BillBum API nodes. ComfyUI Manager → search "billbum" → install "Customizable API Call Nodes by BillBum", or:
cd ComfyUI/custom_nodes
git clone https://github.com/AhBumm/ComfyUI_BillBum_APIset_Nodes.git
cd ComfyUI_BillBum_APIset_Nodes
pip install -r requirements.txt
Restart ComfyUI. Light dependencies (requests, pillow, tenacity); no model files.
Common issues
- Silently ignored settings. The node sends
negative_prompt,style_type, andmagic_prompt_optionunconditionally - but only endpoints that actually speak Ideogram's schema will honor them. Against a generic OpenAI-compatible image endpoint, those fields may be ignored (or rejected). If your output isn't picking up the style, check that you're pointed at a real Ideogram API provider. - Text still comes out wrong. Magic Prompt off + no typography guidance means you get whatever the base model does. The trick is the prompt and the
Designstyle; the node can't fix a bad prompt for you. - b64 vs URL endpoints. If your provider returns a URL instead of
b64_json, this node errors on the missingdata[0].b64_jsonkey. Use the pack's generic Image API Call Node for URL-returning endpoints.
If accurate text-in-image matters to your workflow, this is the node that gets you there - just remember the API key goes in, the spelling comes out.
Inputs (9)
| Name | Type | Default | Description |
|---|---|---|---|
| prompt | STRING | — | |
| negative_prompt | STRING | — | |
| model | STRING | ideogram-v2 | — |
| aspect_ratio | COMBO | 11 options: 1:1, 16:9, 4:3, 2:3, 3:2, 16:10, +5 | |
| seed | INT | 00–4294967294 | — |
| api_url | STRING | https://api.hyprlab.io/v1/images/generations | — |
| api_key | STRING | YOUR_API_KEY_HERE | — |
| style_type | COMBO | 6 options: Auto, General, Realistic, Design, Render 3D, Anime | |
| magic_prompt_option | COMBO | 3 options: Auto, On, Off |
Outputs (1)
| Name | Type | Description |
|---|---|---|
| b64_url | STRING | — |