Nodes/Elevenlabs-ComfyUI/ElevenLabs Refresh Voices
ComfyUI Node

ElevenLabs Refresh Voices

The 'why is my dropdown empty' fix

By karthikg-09·Created 11 months ago·Updated 11 months ago· 1
ElevenLabs Refresh Voices
    • status
    api_key
    refresh_voicestrue
    refresh_modelstrue

    This is the maintenance node you'll reach for exactly when things look broken. The pack caches your voice list for an hour, and that cache is why a freshly cloned voice doesn't show up in the TTS dropdown, why switching accounts leaves stale voices behind, and why a brand-new install sometimes looks empty. Refresh Voices exists to punch that cache in the face on demand.

    How it works

    The pack stores the fetched voice and model lists in a shared in-process cache with a one-hour TTL. This node forces both caches invalid, then refetches from the API - refresh_voices and refresh_models are two independent toggles, each defaulting to on, so you can refresh just the list you care about. The result is a status STRING telling you how many voices and models were refreshed, echoed to the console.

    There's a quirk worth knowing: the "models" list isn't fetched from any live endpoint - ElevenLabs has no models list API, so the pack ships a hardcoded list of known model IDs (eleven_v3, the turbo/flash family, etc.). Refreshing models basically re-sets that static list. It's harmless, but it means refresh_models isn't going to reveal brand-new models until the pack itself updates.

    Inputs

    • api_key - your key (used for the voice fetch).
    • refresh_voices - boolean, default true.
    • refresh_models - boolean, default true.

    Output: a status STRING.

    When you actually need it

    Three cases, and all three are "you just changed something about your account":

    1. You cloned a voice - run this, then reload the TTS node's dropdown. The clone appears.
    2. You switched API keys or accounts - the TTS and Voice Changer nodes auto-refresh on key change, but if you're using a fresh key in a workflow that didn't trigger it, this is the manual override.
    3. The dropdown is empty or wrong on a fresh install - voices don't populate until something fetches them; this forces it.

    Install

    Same pack, same command:

    cd ComfyUI/custom_nodes
    git clone https://github.com/karthikg-09/Elevenlabs-ComfyUI.git
    cd ElevenLabs-ComfyUI && pip install -r requirements.txt
    

    or ComfyUI Manager → "Elevenlabs-ComfyUI" → restart. Add Node → ElevenLabs.

    One caveat about expectations: this node refreshes the cache, not the dropdown widgets already on your canvas. After it runs, you still need to right-click → Reload Node (or F5) on the TTS node to see the new list. Refresh the cache here, reload the node there, and the "empty dropdown" complaint dies for good.

    CategoryElevenLabs

    Inputs (3)

    NameTypeDefaultDescription
    api_keySTRING
    refresh_voicesBOOLEANtrue
    refresh_modelsBOOLEANtrue

    Outputs (1)

    NameTypeDescription
    statusSTRING