VNTANA
ComfyUI custom nodes for VNTANA 3D content management platform
Nodes (9)
Every VNTANA workflow starts here — get this node right first
Grab a GLB, USDZ, FBX, OBJ, or STEP straight out of your VNTANA catalog
Pull a product render out of VNTANA and into ComfyUI as a real IMAGE tensor
Find the optimization pipeline UUID your model upload can't live without
Browse the optimization presets your VNTANA workspace actually offers
See every workspace your VNTANA account can actually touch
Find the product in your VNTANA workspace without hunting through the dashboard
Push a 3D model into VNTANA and let its pipeline do the optimization
Send your generated image back to VNTANA as a product render
VNTANA ComfyUI Custom Nodes
ComfyUI custom nodes for integrating with the VNTANA 3D content management platform.
Features
- Authentication: Secure credential management with token caching
- Product Search: Search and browse products in VNTANA workspaces
- Render Download/Upload: Download renders as ComfyUI images and upload generated images
- 3D Model Download/Upload: Download and upload 3D models with optimization presets
- Workspace & Pipeline Management: List available workspaces and optimization pipelines
New to VNTANA nodes? Check out the User Guide for step-by-step tutorials.
Installation
Method 1: ComfyUI Custom Nodes (Recommended)
-
Clone or copy this repository to your ComfyUI custom nodes directory:
cd ComfyUI/custom_nodes/ git clone https://github.com/VNTANA-3D/VNTANA-comfyui-node.git -
Install dependencies:
cd VNTANA-comfyui-node pip install -e . -
Restart ComfyUI
Method 2: Manual Installation
- Copy the entire
VNTANA-comfyui-nodefolder toComfyUI/custom_nodes/ - Install requirements:
pip install -r requirements.txt - Restart ComfyUI
Available Nodes
VNTANACredentials
Configure and validate VNTANA authentication credentials.
Inputs:
email(STRING, required): VNTANA account emailpassword(STRING, required): VNTANA account passwordorganization_uuid(STRING, required): Organization UUIDdefault_workspace_uuid(STRING, optional): Default workspace for operationsbase_url(STRING, optional): API base URL (default: https://api-platform.vntana.com)
Outputs:
credentials(VNTANA_CREDENTIALS): Credential object for other nodes
VNTANASearchProducts
Search for products in a VNTANA workspace.
Inputs:
credentials(VNTANA_CREDENTIALS, required)workspace_uuid(STRING, optional): Override default workspacesearch_term(STRING, optional): Search querystatus(COMBO: ALL/DRAFT/LIVE_PUBLIC/LIVE_INTERNAL/APPROVED)limit(INT, default: 10, range: 1-100)
Outputs:
product_uuids(STRING list): UUIDs of matching productsproduct_names(STRING list): Names of matching productscount(INT): Total count of matches
VNTANADownloadRender
Download product renders as ComfyUI images.
Inputs:
credentials(VNTANA_CREDENTIALS, required)product_uuid(STRING, required): Product to download render fromworkspace_uuid(STRING, optional)
Outputs:
image(IMAGE): ComfyUI image tensor [B,H,W,C]
VNTANAUploadRender
Upload a ComfyUI-generated image as a product render.
Inputs:
credentials(VNTANA_CREDENTIALS, required)product_uuid(STRING, required): Target productimage(IMAGE, required): ComfyUI image to uploadworkspace_uuid(STRING, optional)filename(STRING, default: "render")format(COMBO: PNG/JPEG/WEBP)
Outputs:
success(BOOLEAN)blob_id(STRING): ID of the uploaded blob
VNTANADownloadModel
Download a 3D model file from VNTANA.
Inputs:
credentials(VNTANA_CREDENTIALS, required)product_uuid(STRING, required)format(COMBO: GLB/USDZ/FBX/OBJ/STEP)workspace_uuid(STRING, optional)output_directory(STRING, optional): Save location
Outputs:
file_path(STRING): Path to downloaded filefilename(STRING): Name of the filefile_size(INT): Size in bytes
VNTANAUpload3DModel
Upload a 3D model to VNTANA with optimization.
Inputs:
credentials(VNTANA_CREDENTIALS, required)file_path(STRING, required): Path to 3D model filename(STRING, required): Product namepipeline_uuid(STRING, required): Optimization pipelineworkspace_uuid(STRING, optional)optimization_preset(COMBO: webOptimized/highQuality/mobile/preserveOriginal)description(STRING, optional)status(COMBO: DRAFT/LIVE_INTERNAL/LIVE_PUBLIC)
Outputs:
success(BOOLEAN)product_uuid(STRING): Created product UUIDconversion_status(STRING): Processing status
Optimization Presets:
- webOptimized: Draco compression, 50K polygons, 2K textures
- highQuality: No compression, 100K polygons, 4K textures
- mobile: Aggressive compression, 25K polygons, 1K textures
- preserveOriginal: Minimal processing
VNTANAListWorkspaces
List available workspaces in the organization.
Inputs:
credentials(VNTANA_CREDENTIALS, required)
Outputs:
workspace_uuids(STRING list)workspace_names(STRING list)
VNTANAListPipelines
List available optimization pipelines.
Inputs:
credentials(VNTANA_CREDENTIALS, required)workspace_uuid(STRING, optional)
Outputs:
pipeline_uuids(STRING list)pipeline_names(STRING list)
Example Workflows
1. Download and Preview a Render
VNTANACredentials → VNTANASearchProducts → VNTANADownloadRender → PreviewImage
2. Generate and Upload a Render
VNTANACredentials ─┬→ VNTANASearchProducts → product_uuid ─┐
│ │
LoadImage → KSampler → VNTANAUploadRender ←────────────────┘
3. Upload a 3D Model
VNTANACredentials ─┬→ VNTANAListPipelines → pipeline_uuid ─┐
│ │
└→ VNTANAUpload3DModel ←────────────────┘
Configuration
Getting Your Credentials
- Log in to your VNTANA account at https://platform.vntana.com
- Navigate to Organization Settings to find your Organization UUID
- Navigate to Workspace Settings to find Workspace UUIDs
- Use your account email and password for authentication
Security Notes
- Credentials are validated on first use
- Authentication tokens are cached for 5 minutes
- File uploads are validated for size (max 30GB) and type
- Filenames are sanitized to prevent path traversal attacks
Development
Running Tests
pip install pytest
pytest tests/
Linting
pip install ruff
ruff check .
Requirements
- Python 3.10+
- ComfyUI
- requests >= 2.28.0
- Pillow >= 9.0.0
License
MIT License - see LICENSE file for details.
Support
For issues and feature requests, please visit: https://github.com/VNTANA-3D/VNTANA-comfyui-node/issues
For VNTANA platform documentation: https://docs.vntana.com