Nodes/SunoComfyUI/Suno Get Wav (Ace Data Cloud)
ComfyUI Node

Suno Get Wav (Ace Data Cloud)

The lossless option, with the download size to match

By AceDataCloud·Created 3 days ago·Updated 2 days ago· 0
Suno Get Wav (Ace Data Cloud)
    • status
    • task_id
    • media_urls_json
    • first_media_url
    • result_json
    • trace_id
    ◄parameters_json{}►
    ◄audio_id►
    ◄callback_url►

    If you're going to run a generated track through anything else - a master, a stem splitter, a video render - get the uncompressed version. Suno Get Wav (Ace Data Cloud) asks the service for a WAV of an existing track, and it's the same node as its MP3 sibling with a different endpoint underneath. Same inputs, same outputs, different container.

    Whether it matters is a judgement call, honestly. A generated song has already been through the model's own rendering; a WAV doesn't add detail that was never there. Where a WAV earns its keep is downstream: no further lossy generation in a chain of edits, no transcoding artefacts stacking up when you split stems and rebuild them. If you're doing one thing with the file and deleting it, MP3 is fine and lighter.

    Inputs

    • audio_id - required by the contract, and it's the ID of an existing track (from a generation response's result_json), not a URL or a task ID.
    • callback_url - optional completion webhook. Leave it blank; polling with a retrieve node is what this pack is built around.
    • parameters_json - default {}, the catch-all for anything the contract allows that the widgets don't expose - including the async flag, which the client sets to true for this call whether or not you ask. A WAV conversion is a job.

    And the pack's constants: non-empty named fields override the same key in parameters_json, empty ones are dropped entirely, and the merged payload is validated against the copied API contract before the request is sent. Validation failures are local, instant, and free - which is the best thing you can say about strict schemas.

    Outputs

    The six standard strings: status, task_id, media_urls_json, first_media_url, result_json, trace_id.

    Because the call is async, expect a task_id and a pending status, then a retrieve node to resolve it into a media link. Pun not intended, but there it is.

    Here's the gotcha that costs people ten minutes every time: Suno Load Audio will not load a WAV task ID. That node wants an https:// link on Ace's CDN and decodes it as audio; handing it a bare ID produces a host-check rejection, not a helpful message about the mistake. Retrieve first, then feed the resolved URL in.

    The other one is size. A long WAV is much larger than the equivalent MP3, and while the pack's audio loader caps downloads at 64 MiB, a full-length uncompressed track can get uncomfortably close to anything you then move around by hand. Check what you're actually saving before you assume the pipeline is slow.

    Install

    Ships with the pack. Manager → Custom Nodes → search Suno → publisher acedatacloud, package Suno by Ace Data Cloud (Registry ID ace-suno) → install → restart. From source:

    cd /path/to/ComfyUI/custom_nodes
    git clone https://github.com/AceDataCloud/SunoComfyUI.git
    cd SunoComfyUI
    python -m pip install -r requirements.txt
    

    requests and jsonschema. Nothing to download, nothing to compile. Key in the ComfyUI process environment - the process, not your terminal, which matters on Desktop:

    export ACEDATACLOUD_API_KEY='paste-your-key-here'
    python main.py
    

    The path here is /suno/wav; if your Ace application restricts endpoints, add it.

    When it goes wrong

    pending forever. WAV conversion jobs queue like everything else. Re-query the task; don't resubmit the conversion.

    A rejected request with the words "does not meet the API's additionalProperties constraint". One of the numbered named fields holds a value this call has no room for. Empty the leftovers - it's a local validation error and it didn't cost you a credit.

    HTTP 401/403. Key, path restriction, or Suno service access on your Ace application. A WAV request can't fix any of those.

    Audio file exceeds the 64 MiB limit. Only reachable if you point the pack's loader at a really long file. There is no override in the node; the cap is hard-coded in the client, along with the CDN host allowlist.

    You want a preview, not a file. Skip this node. The generation path already gives you something Preview Audio can play, and this is the "I intend to do something serious with it" step.

    CategoryAce Data Cloud/Suno

    Inputs (3)

    NameTypeDefaultDescription
    parameters_jsonSTRING{}—
    audio_idSTRING—
    callback_urlSTRING—

    Outputs (6)

    NameTypeDescription
    statusSTRING—
    task_idSTRING—
    media_urls_jsonSTRING—
    first_media_urlSTRING—
    result_jsonSTRING—
    trace_idSTRING—