ComfyUI Node

Custom Ideogram API Node

Ideogram's text-in-image trick, without leaving the graph

By AhBumm·Created 2 years ago·Updated 3 months ago· 11
Custom Ideogram API Node
    • b64_url
    prompt
    negative_prompt
    modelideogram-v2
    aspect_ratio
    seed0
    api_urlhttps://api.hyprlab.io/v1/images/generations
    api_keyYOUR_API_KEY_HERE
    style_type
    magic_prompt_option

    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-v2 by 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; Realistic vs Design changes 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 on Auto until you have a reason not to; Off gives 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, and magic_prompt_option unconditionally - 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 Design style; 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 missing data[0].b64_json key. 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.

    CategoryBillBum_API

    Inputs (9)

    NameTypeDefaultDescription
    promptSTRING
    negative_promptSTRING
    modelSTRINGideogram-v2
    aspect_ratioCOMBO11 options: 1:1, 16:9, 4:3, 2:3, 3:2, 16:10, +5
    seedINT00–4294967294
    api_urlSTRINGhttps://api.hyprlab.io/v1/images/generations
    api_keySTRINGYOUR_API_KEY_HERE
    style_typeCOMBO6 options: Auto, General, Realistic, Design, Render 3D, Anime
    magic_prompt_optionCOMBO3 options: Auto, On, Off

    Outputs (1)

    NameTypeDescription
    b64_urlSTRING