Nodes/ComfyUI API Toolkit/Kling Effect Templates
ComfyUI Node

Kling Effect Templates

Stop guessing Kling effect names — ask the API what it actually supports

By IxMxAMAR·Created 5 months ago·Updated 2 months ago· 1
Kling Effect Templates
  • auth
  • templates_json

The Kling Video Effects node needs an effect_scene string - "hug", "kiss", "heart", stuff like that - and you will not remember the full list, because it changes as Kling adds templates. This node exists so you don't have to guess. You feed it your KLING_AUTH and it calls Kling's effect-template endpoint, then returns the whole catalog as pretty-printed JSON on a templates_json string output.

That's it. One input, one output. It's the only node in the pack that exists purely to tell you what another node's dropdown would contain if it were a dropdown.

Mechanically it's about as simple as a cloud node gets: it takes the auth object from the Kling AI Authentication node, fires one authenticated request at Kling's template endpoint, and dumps whatever comes back. The response also gets printed to your ComfyUI console (truncated to the first 500 characters), so even if you forget to look at the output, the list is sitting in your terminal. Because every API node here implements IS_CHANGED, it re-fetches every queue - which is the right behavior, since the template list is exactly the thing that goes stale.

Installing it

It's part of the ComfyUI-API-Toolkit pack - no separate install. Via ComfyUI Manager search "API Toolkit", or:

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

Restart ComfyUI after. Kling only really needs requests and PyJWT for this.

Gotchas

The one that bites people: this node requires an auth node, unlike the pack's pure utility nodes. Wire up Kling AI Authentication first with a valid access/secret key pair, or you'll get a JWT/auth error before the request even leaves your machine. And remember the output is a snapshot - "templates_json" is a document, not a live enum, so when you copy an effect_scene name out of it, double-check you're copying the scene key, not the display label. If the API returns an error like 1003 (authorization not active) or 1102 (balance not enough), the node's console message will tell you which - the pack maps Kling's error codes to readable hints.

If you just want to know whether a specific effect exists before wiring the whole thing, this is the honest way to find out rather than blind-guessing in the Video Effects node and burning a credit on a scene name Kling doesn't recognize.

CategoryAPI Toolkit/Kling AI/Effects

Inputs (1)

NameTypeDefaultDescription
authKLING_AUTH

Outputs (1)

NameTypeDescription
templates_jsonSTRING