Veo by Ace Data Cloud
Veo generation, editing, task lookup, and native video loading through Ace Data Cloud
Nodes (11)
Add or erase something, if you can host the mask
Two models, one job — make the clip longer
The fix for 'why is my clip only 720p?'
Your image has to be on the internet first
Three references, and a model you can't change
Turning a CDN link into a file ComfyUI can use
15 camera moves, no prompt, another full render
The one node here that doesn't spend money
Check twenty renders in one free pass
A paid cloud call wearing a sampler's clothes
1080p, 4K, or a GIF of all things
Veo for ComfyUI by Ace Data Cloud
Generate and edit Veo videos with your Ace Data Cloud account, retrieve the same task ID, and load completed results as ComfyUI's native VIDEO type. These nodes call a hosted API; no local model or GPU is needed. Paid actions consume Credits at the current Veo price.
简体中文 · Ace Data Cloud · Issues
| Nodes | Dify API action |
| --- | --- |
| Text to Video / Image to Video / Ingredients to Video / Get 1080p | /veo/videos actions text2video, image2video, ingredients2video, get1080p |
| Extend Video | /veo/extend |
| Edit Objects | /veo/objects, insert or remove |
| Reshoot Video | /veo/reshoot, 15 camera motion choices |
| Upsample Video | /veo/upsample, 1080p, 4k, or GIF |
| Retrieve Task / Retrieve Tasks / Load Video | Read existing IDs and decode an Ace media URL to VIDEO |
These nodes cover all five model IDs and seven tool definitions in the current VeoDify package. veo3, veo3-fast, veo31, and veo31-fast are available for text or first/last-frame image input. veo31-fast-ingredients requires 1–3 reference images. Extend accepts only veo31-fast and veo31. Availability, quality, resolution, and price vary by model.
Current version and install source
This source version is 0.1.1. Check GitHub Releases for its versioned ZIP. The Registry section below retains the last verified Active 0.1.0 on 2026-10-19; that older ZIP does not contain this release's updated guide, examples or fixes. To use this version, install its GitHub Release ZIP, or select the exact 0.1.1 Registry release once it becomes Active. Do not substitute the initial nightly selection for a verified stable release.
To install the GitHub ZIP, stop ComfyUI and back up any existing node directory. Extract the ZIP contents into ComfyUI/custom_nodes/veo/ without adding an extra nested directory, run python -m pip install -r requirements.txt there, then restart and refresh. Keep the API Token in the actual launch-process environment. A GitHub ZIP install is separate from a verified Registry/Manager stable installation.
Install
Open the official Veo by Ace Data Cloud Registry page, or search Veo in Manager → Custom Nodes Manager. Verify the exact Ace publisher/repository below; use Ace Data Cloud as a fallback if the service spelling does not return it. Select Veo by Ace Data Cloud, confirm publisher acedatacloud and source repository AceDataCloud/VeoComfyUI, then click Install. In Select Version, explicitly select the approved Registry stable release 0.1.0. The normal dialog may initially highlight nightly; do not accept it for this stable-release tutorial. Keep dependency installation enabled. After Restart Required, restart ComfyUI and refresh the browser. Registry ID: veo.


These are real 2026-10-16 Linux ComfyUI0.41.0 brand-search/installed-state screenshots, not a new service-term search or a paid request. See sources and limits.
This Registry stable installation was verified on 2026-10-16 with original ComfyUI 0.41.0 on Linux CPU. That test did not submit a generation or chat request. Newer host versions and each paid action require their own checks; model availability and price remain subject to the current service rules.
For optional local source testing:
cd /path/to/ComfyUI/custom_nodes
git clone https://github.com/AceDataCloud/VeoComfyUI.git
cd VeoComfyUI
python -m pip install -r requirements.txt
This package targets ComfyUI 0.39.0 or newer because Load Video uses its native VIDEO type. Restart and search for Veo.
Set your Ace Data Cloud key
Copy or create your API Token
Sign in/register and initialize Applications → General application if needed. Copy an existing permitted API Token, or use Manage Keys → Create for a dedicated ComfyUI key. Check service access, expiry/Allowed APIs, Credits balance and current price first.


These masked 2026-10-08 Ace Console images are reused from SunoDify. The sample name Dify tutorial should be ComfyUI here; no credential was created for this guide. Configure only the Token string in the actual process that launches ComfyUI (ACEDATACLOUD_API_KEY), then restart. There is no Key widget in these nodes; never paste it into a prompt, JSON parameter, workflow or screenshot. An export in another terminal does not configure an already-running Desktop process.
- Sign in to Ace Data Cloud → Applications. If your account has no General application, choose Initialize General Application.
- Open General application and check access to the service used by this package. A service-specific application key is limited to that service. Copy an existing API key, or choose Manage Keys → Create for a separate key named
ComfyUI. - Copy only the token string, without
Beareror quotation marks. A platform management token is not the API key these nodes use. If you enable Allowed APIs, include every submission and task-query path used by your workflow. Check current pricing and available Credits before a paid action.
Set a key with Veo access in the actual ComfyUI process environment, then restart:
export ACEDATACLOUD_API_KEY='paste-your-key-here'
python main.py --cpu
ACEDATACLOUD_API_TOKEN is also accepted. Keep the key out of workflows, screenshots, issues, and the repository. If you restrict API paths, allow /veo/videos, /veo/extend, /veo/objects, /veo/reshoot, /veo/upsample, and /veo/tasks.
Generate and retrieve
Import 01-submit-text-to-video.json with File → Open, choose a model and price, then run it once. Copy the task ID shown by Preview as Text. A submitted task is not a completed video. If submission times out without an ID, inspect Ace request history before paying again.
Image to Video accepts one public HTTPS URL for the first frame or two for first and last frames. Ingredients to Video accepts 1–3 public HTTPS URLs and only veo31-fast-ingredients. Enter a JSON array or one URL per line. The 4k choice is limited to Veo 3.1 models. aspect_ratio applies only to Image to Video. get1080p and Upsample take an existing video ID, not a URL.
Extend takes a supported original or extend result video ID. Edit Objects and Reshoot require an original Veo video ID; an extended result is not supported. Object removal requires a public HTTPS mask URL. The API also accepts base64 masks, but this UI keeps large mask data out of workflows. All paid nodes submit once and never retry automatically.
Import 02-retrieve-and-save.json, replace its placeholder task ID, and run. It connects Retrieve Task → Load Video → Save Video. Retrieve waits up to 240 seconds for the same task. If still pending, rerun only this retrieval workflow. The native VIDEO output also connects to other ComfyUI video nodes. Retrieve Tasks accepts a JSON array of 1–20 existing IDs and does not create a new video.
Check usage and troubleshoot
Find the submission by task or trace ID in the Ace Data Cloud Console. Read-only task queries and media downloads should not create another generation.
| Symptom | Action | | --- | --- | | Key missing or HTTP 401/403 | Check the key in the running ComfyUI process and Veo access. | | HTTP 429 | Wait for the service limit; keep any accepted task ID. | | Pending | Query the same task ID again; do not rerun a paid node. | | Submission timeout or HTTP 5xx | Inspect request history before resubmitting. | | Video download error | Confirm terminal success and an Ace CDN URL. |
Prompts and reference URLs are sent to api.acedata.cloud; completed videos are downloaded from Ace CDN. See privacy notes. Only submit content you have permission to process.
Same-task refresh and cancellation limits
Disable auto-queue/auto-run before importing paid submission workflows and submit once. This package version does not declare a task-cache freshness hook or an interruptible polling callback. If an unchanged retrieve graph returns an earlier pending result, change wait_seconds (for example240 to239) and run only retrieval for the same task ID to invalidate the cache. Do not rerun generation. Stop may wait for the local poll/HTTP timeout; it does not cancel or refund an accepted remote task. A single retrieve with wait_seconds=0 is useful for explicit status checks. The separate Top5 runtime fixes are not claimed for this package.
Troubleshooting
| Symptom | Action |
| --- | --- |
| Missing Key /401 | Configure the actual ComfyUI launch-process API Token and restart; a platform management Token is not an API Key. |
| 403 | Read the returned reason and check service entitlement, allowed paths, expiry or content restriction; do not blindly resubmit. |
| 429 | Wait for rate limits; keep any accepted task ID and avoid duplicate paid submissions. |
| Invalid JSON/model/input | Correct the named field according to the tool table; {}/example URLs are placeholders, not a complete paid request. |
| Submit timeout/5xx | Inspect request history/trace ID before another paid submission. |
| Unexpected result or media failure | Follow this service's synchronous/async section, confirm a completed real media URL where supported, and inspect Console. No result is fabricated from pending status. |
Development
python -m unittest discover -s tests -v
python -m py_compile __init__.py client.py nodes.py
pyproject.toml declares short Registry ID veo, publisher acedatacloud, and a 400×400 proportional resize of the canonical Ace logo.