ComfyUI Node

πŸ€– Leon Hypr Upload

Get a hosted URL for any ComfyUI image β€” the upload node that feeds the API wrappers

By l3ony2kΒ·Created about a year agoΒ·Updated 2 months agoΒ· 3
πŸ€– Leon Hypr Upload
  • image
  • hypr_url
β—„api_keyβ–Ί
β—„file_pathβ–Ί
β—„urlβ–Ί
β—„base64_dataβ–Ί
β—„output_formatβ–Ί

Leon Hypr Upload is the pack's plumbing node, and it solves a real problem: a bunch of the API nodes in this pack want a hosted URL for your input image, not a tensor. This node takes a ComfyUI image - or a local file path, or a remote URL, or a base64 string - and uploads it to HyprLab, handing you back a public hypr_url you can paste anywhere. Think of it as the bridge between "image in my graph" and "image addressable on the internet".

Why would you want that? Because the image_url inputs scattered through the pack (FLUX image guidance, Luma references, Midjourney describe, and so on) all accept hosted URLs, and some providers are happier with a URL than with a giant base64 blob riding in the JSON payload. Upload once, get a URL, wire the string where it's needed.

How it works

The node posts to https://api.hyprlab.io/v1/uploads with a Bearer token and picks its upload method by what you gave it, in priority order:

  1. image - a tensor becomes a PNG upload via multipart. This is the common case; wire an IMAGE output in and out comes a URL.
  2. file_path - a local image or video file, uploaded as multipart with its mime type guessed from the extension.
  3. url - a hosted URL you already have, sent in a JSON body. Simple extension sniffing decides whether it's treated as image or video (.png/.jpg/.jpeg/.webp/.gif count as images, everything else as video).
  4. base64_data - raw base64 or a data URL string, in a JSON body; data:video prefixed strings are treated as video, otherwise image.

output_format (png, jpg, webp) is optional and only applies to image uploads - leave it empty to keep the original. The one required input is api_key, your HyprLab key (the tooltip reminds you it's a Bearer token).

There's a single output: hypr_url (STRING).

Installing it

Pack-wide install, same as every node in comfyui-leon-nodes:

cd ComfyUI/custom_nodes
git clone https://github.com/l3ony2k/comfyui-leon-nodes
pip install -r requirements.txt

Restart ComfyUI, or install via ComfyUI Manager (search "Leon"). Minimal dependencies, no models.

Where people get burned

The node is picky in a helpful way: if you leave all four input paths empty it raises "No valid input provided", and a missing key raises immediately rather than failing downstream. The subtle gotchas: the URL-vs-tensor split means if you pass a URL string AND an image tensor to other nodes in the pack, those nodes will refuse ("provide either... not both") - so pick one path. And remember this only produces a URL; the URL is stored in HyprLab's cloud, so it's not private, and it won't outlive the service. For feeding hosted URLs into the pack's API nodes, it's exactly the tool.

CategoryLeon_Utils

Inputs (6)

NameTypeDefaultDescription
api_keySTRINGYour HyprLab API key (Bearer token)
imageoptIMAGEβ€”
file_pathoptSTRINGPath to a local image/video file
urloptSTRINGRemote URL of an image/video to upload
base64_dataoptSTRINGRaw/base64 or data URL string of the asset
output_formatoptSTRINGOptional output format for images: png, jpg, webp

Outputs (1)

NameTypeDescription
hypr_urlSTRINGβ€”