Nodes/HappyHorseComfyUI/Happy Horse Retrieve Task (Ace Data Cloud)
ComfyUI Node

Happy Horse Retrieve Task (Ace Data Cloud)

The node you press twice, and it costs you nothing

By AceDataCloud·Created 3 days ago·Updated 2 days ago· 0
Happy Horse Retrieve Task (Ace Data Cloud)
    • status
    • task_id
    • video_url
    • trace_id
    ◄task_id►
    ◄wait_seconds240►

    Every paid API node pack lives or dies on this distinction: submitting is expensive, asking is free. This node is the asking half. It takes a task ID you already own and looks it up - nothing is generated, nothing is created, nothing is billed. Queue it as many times as you like.

    How the lookup works

    It posts your ID to the read-only task endpoint and reads the state back. Two behaviours worth knowing because they're deliberate rather than incidental:

    • It polls for you. wait_seconds sets how long the node is willing to sit there, defaulting to 240 (the maximum; minimum 0, steps of 5). It queries, and if the task is still pending it sleeps a few seconds and queries again, until the clip finishes or the clock runs out. Set it to 0 and you get exactly one check and an immediate answer.
    • It retries reads, never writes. Network hiccoughs on the lookup are retried with backoff. Paid submissions in this pack are explicitly not retried - a nice bit of design, since a retried submit is a double charge. That asymmetry is the whole reason submission and retrieval are separate nodes.

    The two inputs

    task_id is a string. Paste the ID your submit node printed in its status panel, or wire the task_id output straight across from Text to Video, Image to Video, Reference to Video, or Video Edit. wait_seconds is the polling budget described above - leave it at 240 unless you're chaining this into a bigger graph and don't want to stall it.

    Wire the two together and you get the pattern the pack's own second example workflow uses: submit → retrieve → load → save.

    The four outputs

    status, task_id, video_url, trace_id - the same four strings the submit nodes return, which is what makes the wiring trivial. status comes back as succeeded when there's a video, or pending when there isn't; video_url carries the CDN link once the job lands, and is empty otherwise.

    A genuinely useful quirk: task_id is echoed back to you, so you can feed this node's own task_id output onward or into a batch lookup without a separate text node. And trace_id is the identifier you take to the Ace Data Cloud console when something looks wrong - request history is browsable by task or trace ID there.

    One behaviour that surprises people: a task that has failed doesn't come back as the string "failed". The node raises an error instead, so you get a red node with a message telling you to inspect the task or trace ID. That's a real design choice (as opposed to quiet failure), but it means you can't branch on it inside the graph - failure is visible to you, not to a downstream node.

    Wiring it up

    video_url goes into Happy Horse Load Video, which downloads the clip into ComfyUI's native VIDEO type. From there it's Save Video or any other core video node. Nothing about this step touches a model or a GPU, so it runs happily on a --cpu install.

    Because it only needs an ID, this node doubles as a re-download tool: clips you generated last week, in a different session, on a different machine, still resolve. If you lost the file, you don't need to regenerate it - you need the ID from your Ace console history.

    Install

    Same pack, same three steps - Manager → search Happy Horse → publisher acedatacloud → install → restart; or git clone https://github.com/AceDataCloud/HappyHorseComfyUI into ComfyUI/custom_nodes and python -m pip install -r requirements.txt. The only Python dependency is requests. Set ACEDATACLOUD_API_KEY (or ACEDATACLOUD_API_TOKEN) in the environment of the ComfyUI process and restart it. Yes, retrieval needs the key too - it's an authenticated read.

    The mistake this node exists to prevent

    If a task is pending, the temptation is to go back to the submit node and run it again. Don't. That node bills you. This one exists precisely so you have something harmless to press while you wait: re-run this graph, keep wait_seconds at 240, and re-query the same ID. The pack's README says it directly - "Pending: query the same task ID again; do not rerun a paid submit node."

    The other one: a typo'd or truncated ID. You'll get an error rather than an empty result, and no amount of waiting will fix it. Copy from the status panel rather than retyping from a screenshot.

    CategoryAce Data Cloud/Happy Horse

    Inputs (2)

    NameTypeDefaultDescription
    task_idSTRING—
    wait_secondsINT2400–240—

    Outputs (4)

    NameTypeDescription
    statusSTRING—
    task_idSTRING—
    video_urlSTRING—
    trace_idSTRING—