Skip to content
ITS INCOM AI

API reference

ComfyUI

ComfyUI with ITS INCOM AI: the editor in the browser, the add-on that runs your ComfyUI Desktop jobs on our GPUs, and ComfyUI's own API with your key.

Last updated: 2026-11-10

ITS INCOM AI runs ComfyUI on its own GPUs. You build the workflow, our machines do the computing, and you pay for the seconds a machine works on your job. There are three ways in, with the same account, the same models and the same price:

Way in Where the editor lives What you install
Editor in the browser https://my.ai.itsincom.org/comfy/ nothing
ComfyUI Desktop with the add-on your computer ComfyUI Desktop and the add-on
ComfyUI's API your script nothing

The page https://ai.itsincom.org/comfyui has the examples, the models with their licences and the price per second.

The editor in the browser

Sign in to the dashboard and open ComfyUI. Workflows are saved in your account and results stay in the cloud for 30 days. The models are already installed: the template browser's "missing models" notice does not apply.

ComfyUI Desktop with the add-on

The add-on puts a button next to Run. It decides where Run runs the workflow: on this computer or on our GPUs. In cloud mode the whole graph is sent, progress and previews come back while the machine works, and the results are saved in this computer's output folder.

Install it once per computer.

macOS and Linux:

bash
curl -fsSL https://ai.itsincom.org/comfyui/install.sh | sh

Windows (PowerShell):

powershell
irm https://ai.itsincom.org/comfyui/install.ps1 | iex

The installer looks for ComfyUI's folder, downloads the add-on and unpacks it into custom_nodes/comfyui-cloud-gpu. Where it does not find the folder, pass it: curl -fsSL https://ai.itsincom.org/comfyui/install.sh | sh -s -- /path/to/ComfyUI. By hand, download the zip and unpack it into custom_nodes. Then restart ComfyUI, press the button next to Run, paste an API key and choose ITS INCOM AI.

Setting Where
Key and chosen mode user/cloud_gpu.json in ComfyUI's folder, readable only by you
Key from the environment CLOUD_GPU_KEY, for a shared or scripted install
Server from the environment CLOUD_GPU_SERVER

What to expect in cloud mode:

  • The node search and the model lists show what our machines have. A workflow that uses a node we do not have is stopped before it starts, with the node's name, and nothing is charged.
  • Files the workflow loads from the input folder are uploaded before the job, once per content.
  • Cancel stops the job on the GPU.
  • When the job is done a notice says the seconds, the machine and the cost.

The add-on is at version 0.1 and was tested with ComfyUI 0.44 on Linux. Tell us what you see on Windows and macOS at segreteria@itsincom.it.

ComfyUI's API

The service speaks ComfyUI's API under https://my.ai.itsincom.org/comfy/api, with your key as a bearer token. In the editor, Workflow → Export (API) gives the graph in the form the API takes.

Queue a job:

bash
curl https://my.ai.itsincom.org/comfy/api/prompt \
  -H "Authorization: Bearer $KEY" \
  -H "Content-Type: application/json" \
  -d '{"prompt": { ... }}'

The answer carries a prompt_id. Read the job with it:

bash
curl https://my.ai.itsincom.org/comfy/api/jobs/PROMPT_ID -H "Authorization: Bearer $KEY"

status goes from pending to in_progress and ends as completed, failed or cancelled. A completed job lists its files under outputs; download each one with its filename, subfolder and type:

bash
curl "https://my.ai.itsincom.org/comfy/api/view?filename=FILE&subfolder=cloud&type=output" \
  -H "Authorization: Bearer $KEY" -o result.png
Call What it does
POST /api/prompt queues a workflow
GET /api/jobs, GET /api/jobs/{id} your jobs, one job
POST /api/jobs/cancel, POST /api/interrupt cancels queued or running jobs
GET /api/queue, GET /api/history the queue and the history, as ComfyUI gives them
GET /api/view downloads a result or an uploaded file
POST /api/upload/image, POST /api/upload/mask uploads an input file
GET /api/object_info the nodes and the models installed
GET /api/siati/macchine the machines you can use, with price per second and queue
/ws ComfyUI's WebSocket: progress and previews of your own jobs

Each user sees only their own queue, files and history.

Choosing the machine. Without a choice the job goes to the machine with the shortest queue. To pick one, send its nome from /api/siati/macchine in the X-Siati-Macchina header of POST /api/prompt.

What the job cost. GET /api/jobs/{id} has a siati object with the machine, its price per second and the seconds it worked. The cost is their product, booked when the job completes.

Limits

  • 3 jobs at a time per user, queued or running.
  • Input files up to 50 MB each.
  • Results stay in the cloud for 30 days.
  • ComfyUI's stock nodes only: no third-party node packs and no models of your own for now.

Content checks

The texts of a workflow are checked before it is queued, and every result is checked before it is delivered. A workflow whose texts are refused is not run and costs nothing. A result that is withheld is not delivered: the job's siati object says how many files were withheld and why. The job did run, so its seconds are counted.

Errors

Errors have ComfyUI's shape, {"error": {"type": "...", "message": "..."}}.

Status type When
400 prompt_refused the workflow's texts did not pass the content check
400 invalid_input_file the workflow names an input file that was not uploaded
400 ComfyUI's own types the graph is not valid: the message and node_errors say where
401 unauthorized the key is missing or wrong
402 insufficient_credits the credit has run out
403 forbidden ComfyUI is not available for this account
413 upload_too_large the file is over the size limit
429 too_many_jobs you already have 3 jobs queued or running
502 engine_unreachable the machine does not answer: try again in a minute
503 no_engine, unavailable, check_unavailable no machine is free of faults right now, or a check could not be made: nothing was run

Search the docs

Type to search…