Nodes/ComfyUI API Toolkit/ElevenLabs - Voice Create
ComfyUI Node

ElevenLabs - Voice Create

Save what you just heard

By IxMxAMAR·Created 5 months ago·Updated 2 months ago· 1
ElevenLabs - Voice Create
    • voice_id
    api_key
    generated_voice_id
    voice_nameMy Designed Voice
    voice_description

    AIS_EL_VoiceDesign invents a voice from a description and hands you a temporary generated_voice_id. This node is the follow-up: it takes that ID and makes the voice permanent in your ElevenLabs library, returning a real voice_id you can use in every TTS node from now on. If Design is the audition, this is the contract signing.

    Three required inputs:

    • api_key.
    • generated_voice_id - the temporary ID straight out of VoiceDesign's output. Wire it, don't type it; it's an opaque token.
    • voice_name - what to call it in your library, so you can find it again. Defaults to "My Designed Voice," which is a fine name for one voice and chaos for ten.

    One optional input: voice_description - freeform notes saved alongside the voice, useful when you later forget why you designed it.

    One output: voice_id - the permanent ID. That's the wire that goes into AIS_EL_TTS, AIS_EL_TTSTimestamps, AIS_EL_STS, or the Dialogue node's voice_id fields. From this point on the voice behaves exactly like a premade one: it shows up in your library, and AIS_EL_FetchVoices with force_refresh can list it.

    The intended flow

    Design → Create → TTS is the canonical chain: describe a voice, preview it, save it, then use it forever. The reason these are separate nodes instead of one "make and save" button is deliberate - you don't want every half-baked sketch clogging your library, so you audition first and only save the winners. If you're iterating, run Design until you like the preview, and only then wire in Create.

    Installing it

    Part of the ComfyUI API Toolkit pack. Manager: search "API Toolkit". Manual:

    cd ComfyUI/custom_nodes
    git clone https://github.com/IxMxAMAR/ComfyUI-API-Toolkit
    cd ComfyUI-API-Toolkit
    pip install -r requirements.txt
    

    Restart. Needs requests and soundfile.

    Gotchas

    • Saving a voice is a write to your account, so don't re-run it with IS_CHANGED firing on every queue unless you actually want duplicates - the pack re-executes API nodes each run. Once you've saved a voice you like, that part of the workflow is done; don't leave the create step live in a workflow you re-queue often, or you'll accumulate "My Designed Voice (2), (3), (4)…".
    • The generated_voice_id is temporary, so a stale ID from an old session may no longer be valid - if Create fails with a not-found error, re-run the Design node first.
    • Voice creation is gated by your subscription tier; if your plan doesn't include voice design, the API will tell you.
    CategoryAPI Toolkit/ElevenLabs/Voice

    Inputs (4)

    NameTypeDefaultDescription
    api_keySTRING
    generated_voice_idSTRINGThe generated_voice_id from Voice Design node.
    voice_nameSTRINGMy Designed VoiceName to save the voice as.
    voice_descriptionoptSTRINGOptional description for the saved voice.

    Outputs (1)

    NameTypeDescription
    voice_idSTRING