Upload to Isekai
The node that only makes sense if you run the Isekai platform
- image
- IMAGE
IsekaiUpload (displayed as "Upload to Isekai") pushes your generated image to the Isekai platform with a title and tags, straight from the graph. Here's the honest framing before anything else: this node talks to a specific, self-hostable platform - api.isekai.sh by default - that almost nobody in the ComfyUI community runs or talks about. If you don't already have an Isekai Core deployment, this node does nothing for you. If you do, it's a tidy integration: generate, upload, done, no manual file shuffling.
How it works. You feed it an image and a title; optionally tags, a format (JPEG or PNG, default JPEG), and a quality (1–100, default 90). It encodes the image to bytes, and POSTs it to the Isekai API with your title and comma-separated tags. The API base URL resolves with this priority: the node's api_url field first, then the ISEKAI_API_URL environment variable, then the default https://api.isekai.sh. The api_key works the same way - ISEKAI_API_KEY env var wins, node field is the fallback, and the code prints the same warning the whole pack prints: keys typed into node inputs get saved in workflow JSON, so use the env var.
It's an output node, so the image output triggers a preview, and the image passes through unchanged - the wiring is VAE Decode → Upload to Isekai → Preview, which is the same "upload when you'd otherwise save" shape as the pack's S3 node. On validation failure (missing key, over-long title) it raises an error rather than silently passing, so a misconfigured upload is loud.
Inputs that matter. The ones you'll actually set:
title- required, defaults to "ComfyUI Upload". This is what the image is called on the platform, so make it meaningful for a batch, or you'll end up with forty images named "ComfyUI Upload."tags- optional comma-separated, e.g.portrait, 4k, test.api_url/api_key- only if you're self-hosting (custom URL) or skipping the env var.format/quality- JPEG/PNG, quality 90 default. JPEG at 90 is the sensible default; PNG if you need lossless.
Output is a single image pass-through. There's no URL output here (unlike the S3 node) - it's upload-and-forget.
Install. Same pack install: ComfyUI Manager → search "isekai" → install → restart. Or:
cd ComfyUI/custom_nodes
git clone https://github.com/isekai-sh/isekai-comfy-node
cd isekai-comfy-node
pip install -r requirements.txt
Restart; it's under Isekai → Upload. Then set ISEKAI_API_KEY (and ISEKAI_API_URL if self-hosted) in the environment that launches ComfyUI.
Common issues. The #1 failure is "no API key found" - the node raises a clear error telling you to set the env var or fill the field, so that one's easy to diagnose. The subtle one: title is truncated past 200 characters, so long generated titles get silently cut. And because the platform itself is obscure, there's no community troubleshooting to fall back on - if the upload fails with a server error, the [Isekai] console lines plus your own Isekai instance's logs are the entire debugging surface. My honest take: install this pack for the PIL image nodes and the S3 upload; treat this node as a feature you enable only if you're actually running Isekai Core. If you're not, it's not a bug in the node - it's just not for you.
Inputs (7)
| Name | Type | Default | Description |
|---|---|---|---|
| image | IMAGE | — | |
| title | STRING | ComfyUI Upload | — |
| api_keyopt | STRING | — | |
| api_urlopt | STRING | — | |
| tagsopt | STRING | — | |
| formatopt | COMBO | JPEG | 2 options: JPEG, PNG |
| qualityopt | INT | 901–100 | — |
Outputs (1)
| Name | Type | Description |
|---|---|---|
| IMAGE | IMAGE | — |