Load Version From GenAsset
Load Version From GenAsset — time travel, one UUID at a time
- image
- asset_id
- version_id
- workflow_json
- metadata_json
- status_json
Load Version From GenAsset is the precision instrument of the load family. Where its cousin Load Asset From GenAsset will happily fetch "whatever's current" or "the latest thing in the workspace," this node demands exactly one thing: a version UUID. Give it that, and it returns that version's image and full recipe - nothing more, nothing guessed.
That narrowness is the feature. When a teammate says "load v3 of the hero shot," you don't want the node deciding to give you v7 because it's the latest. This node can't drift, because there's nothing for it to interpret. It is the "load this exact snapshot" guarantee, and in a versioning system that guarantee is the entire point.
How it works
The node does a GET to the api/v1/versions/{version_id}/load endpoint with your workspace token, gets back the version's record with its signed preview URL, downloads the image, and returns the stored workflow_json and metadata_json as pretty-printed JSON strings. The version_id you pass is a full UUID - the pack even checks that it looks like one before it bothers the server.
There's no asset resolution, no "latest" fallback, no second-guessing. If the UUID is valid, you get that version; if not, you get an error in status_json. That determinism is exactly why this node is the right one to wire into a branch or fork flow where the source version matters.
Inputs and outputs that matter
Three required inputs: base_url, token, and version_id. That's the whole input surface. version_id is marked required, and the tooltip is unambiguous: "Exact GenAsset version id (UUID)." Where do you get it? From the version_id output of a save node, from List Asset Versions In GenAsset, or from the GenAsset web UI.
Outputs are the standard load set:
image- the preview, ready for any downstream node.asset_idandversion_id- which asset and version you got (useful when you only had the version id to start).workflow_json/metadata_json- the stored recipe, the same format every load node in this pack uses. Feedworkflow_jsonintoLoad Recipe To Widgetsto get editable widget values back.
Installation
Part of the steliosot/ComfyUI-GenAsset pack. In ComfyUI Manager, search GenAsset and install, or:
cd ComfyUI/custom_nodes
git clone https://github.com/steliosot/ComfyUI-GenAsset.git
Restart after. No extra pip dependencies - the pack runs on what ComfyUI already provides. Set up a workspace token at genasset.xyz and put it in ComfyUI/user/genasset.json (or paste it in the token widget, or set GENASSET_WORKSPACE_TOKEN).
Common issues
- Errors mentioning the version id - double-check you copied the full UUID. A truncated or redacted id won't resolve; the node validates the shape up front.
- Version loads but the recipe is empty
{}- some older or manually-created versions were saved without workflow JSON. The image is fine; you just don't get a graph back. That's a data problem, not a node problem. - You don't have a version id handy - then this is the wrong node for the moment. Use
List Asset Versions In GenAssetto find the id first, or switch toLoad Asset From GenAssetif any recent version will do.
The rule of thumb: reach for this node when the answer to "which one?" is already decided. It's the difference between asking someone to describe the photo and asking them to hand you a specific print - one is a conversation, the other is a transaction, and this node only does transactions.
Inputs (3)
| Name | Type | Default | Description |
|---|---|---|---|
| base_url | STRING | https://genasset.xyz | — |
| token | STRING | ComfyUI/user/genasset.json | — |
| version_id | STRING | Required. Exact GenAsset version id (UUID). |
Outputs (6)
| Name | Type | Description |
|---|---|---|
| image | IMAGE | — |
| asset_id | STRING | — |
| version_id | STRING | — |
| workflow_json | STRING | — |
| metadata_json | STRING | — |
| status_json | STRING | — |