Nodes/Comfyui-Kling-Wrapper/Comfyui-Kling-Wrapper Custom Voice Query
ComfyUI Node

Comfyui-Kling-Wrapper Custom Voice Query

Poll your voice clone until it's ready

By magicwang1111·Created 5 months ago·Updated 18 days ago· 1
Comfyui-Kling-Wrapper Custom Voice Query
    • voice_id
    • voice_name
    • trial_url
    • task_id
    • voice_json
    task_id_or_external_task_id

    Custom Voice Create submits a voice-cloning task to Kling. That task takes time - the API processes your source audio and registers a voice on its side, not instantly. Custom Voice Query is the node that asks "is it done yet?" and, when it is, hands you the finished voice_id.

    It's a small node, but it's the difference between guess-and-check and a workflow that actually resolves. Create submits, Query polls, and once the voice exists you can safely wire its ID into Image2Video. Without it you're either sleeping on the job or re-running Create and hoping.

    How it works

    One required input: task_id_or_external_task_id. Paste the task_id from Custom Voice Create (or your own external task ID if you supplied one at creation). Run the node and it queries Kling's status.

    The outputs are identical to Create's, which is deliberate:

    • voice_id - the registered voice ID, once the task completes
    • voice_name - the label
    • trial_url - the audition preview URL; wire it into Preview Audio to hear the clone
    • task_id - echoes the task
    • voice_json - the raw response

    So the typical pattern is Create → Query → wire voice_id into Image2Video. You can even chain a couple of nodes to poll: run Query, and if the voice still isn't ready you'll get an incomplete response rather than a crash.

    Install and gotchas

    Standard pack install: ComfyUI Manager (search "Comfyui-Kling-Wrapper") or clone into custom_nodes + pip install -r requirements.txt + restart, Kling API key in config.local.json. API node, metered like the rest.

    Two things to keep in mind. First, this node only reports state - it doesn't trigger the clone. If you query a task ID that was never submitted, or that failed Create's input rules (remember: 5–30 seconds, single clean speaker), Query comes back empty. Second, don't confuse a completed voice with a usable one: per the README, cloned voices work through Image2Video's custom_voice_id on kling-v2-6, but Kling's TTS endpoint rejects custom voice IDs with "Voice id not found." So the voice_id you get here has a specific set of doors it can open. If it's not working in one node, it's not the query's fault - it's the API's voice-routing rules.

    Housekeeping node, but an honest one. When you're cloning several voices for a project, Query is how you know which ones are ready to record.

    CategoryComfyui-Kling-Wrapper

    Inputs (1)

    NameTypeDefaultDescription
    task_id_or_external_task_idSTRING

    Outputs (5)

    NameTypeDescription
    voice_idSTRING
    voice_nameSTRING
    trial_urlSTRING
    task_idSTRING
    voice_jsonSTRING