Nodes/ComfyUI Beeble AI/Beeble List Jobs
ComfyUI Node

Beeble List Jobs

Your cancelled ComfyUI run is still billing you — this node finds it

By am-pipeline-prod·Created 4 months ago·Updated 4 months ago· 3
Beeble List Jobs
    • summary
    • latest_job_id
    • next_cursor
    • raw_json
    limit20
    trigger
    cursor

    The most expensive thing you can do with this pack is hit "Cancel" on a SwitchX job. ComfyUI stops watching, but the job keeps running on Beeble's servers - and it keeps billing. That's the exact scenario Beeble List Jobs exists for: a read-only window into everything the API is doing on your account, so you can find the orphaned job id, check status, and stop guessing at concurrency.

    It wraps GET /v1/switchx/generations and renders the response as a compact, fixed-width table: job id, status (in_queueprocessingcompleted/failed), generation type, progress percentage, and created-at timestamp. It's a pure read - no generation credits spent, though it does share the account's 5 RPM read limit with everything else in the pack.

    The inputs

    Three, and two of them are boring:

    • limit (INT, default 20, max 100) - how many jobs to fetch per page.
    • trigger (STRING) - edit it to force a re-fetch. As with the Account Info node, the author overrides change-detection so it re-runs fresh each queue.
    • cursor (STRING, optional) - the pagination cursor. Leave blank for the first page, then feed the previous run's next_cursor in to page further back.

    What comes out

    • summary (STRING) - the formatted job table, shown in the node's UI panel.
    • latest_job_id (STRING) - handy. This is the id you want after a cancelled workflow: copy it, and you can re-fetch the render from the API later (remember, render_url from the SwitchX node expires after 72 hours).
    • next_cursor (STRING) - pagination, for when 20 rows isn't enough history.
    • raw_json (STRING) - the full job list payload.

    When you actually reach for it

    The README is refreshingly direct about the two use cases. First, confirming headroom before a batch: the account allows 10 concurrent SwitchX generations, and this node shows you what's currently in flight - cheaper and more accurate than betting that everything from the last session finished. Second, recovering after a cancelled workflow: since cancelling in ComfyUI doesn't stop the API job, this is how you find the swx_... id that's still burning money, check whether it's close to done, and decide whether to let it ride.

    Setup and gotchas

    Same pack, same install: search comfyui-beeble-ai in ComfyUI Manager, or clone into ComfyUI/custom_nodes and pip install -r requirements.txt, restart, and set your BEEBLE_API_KEY (env var) or a config.toml at ~/.config/comfyui-beeble-ai/config.toml. No model files - the jobs live on Beeble's side.

    The 5 RPM read limit is the one thing to respect. If you're listing jobs while a SwitchX node is polling every 15 seconds, that's already 4 reads per minute from one node; a List Jobs call or two on top is fine, but building a workflow that re-fetches the list every frame is how you get RATE_LIMIT_EXCEEDED wall-to-wall. One fetch per queue, read the table, act on latest_job_id.

    And keep the maintenance caveat in mind: this is a self-serve, MIT-licensed wrapper by am-pipeline-prod, not officially maintained and not affiliated with Beeble. The API can change out from under it; if you run a lot of paid jobs through this, plan to maintain your own fork.

    CategoryBeeble AI

    Inputs (3)

    NameTypeDefaultDescription
    limitINT201–100Maximum number of jobs to return (per page).
    triggerSTRINGEdit this value to force a re-fetch. ComfyUI caches results based on inputs.
    cursoroptSTRINGPagination cursor (from the previous response's next_cursor). Leave empty for the first page.

    Outputs (4)

    NameTypeDescription
    summarySTRING
    latest_job_idSTRING
    next_cursorSTRING
    raw_jsonSTRING