Merge branch 'master' into cursor/emit-hash-on-asset-responses-a601
Some checks are pending
Python Linting / Run Ruff (push) Waiting to run
Python Linting / Run Pylint (push) Waiting to run

This commit is contained in:
Matt Miller 2026-05-08 20:03:10 -07:00 committed by GitHub
commit a67c8a1d3b
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194

View File

@ -74,6 +74,8 @@ tags:
description: Cloud workflow management and versioning (cloud-only) description: Cloud workflow management and versioning (cloud-only)
- name: task - name: task
description: Background task management (cloud-only) description: Background task management (cloud-only)
- name: runtime-only
description: Operations served exclusively by the cloud runtime with no local equivalent
paths: paths:
# --------------------------------------------------------------------------- # ---------------------------------------------------------------------------
@ -2573,35 +2575,38 @@ paths:
# --------------------------------------------------------------------------- # ---------------------------------------------------------------------------
/api/experiment/nodes: /api/experiment/nodes:
get: get:
operationId: listCloudNodes operationId: getNodeInfoSchema
tags: [node] tags: [runtime-only]
summary: List installed custom nodes summary: Get pre-rendered node info schema
description: "[cloud-only] Returns the list of custom node packages installed in the cloud runtime." description: "[cloud-only] Returns the static ComfyUI object_info schema, identical for every caller, rendered once at startup with empty model/user-file context. Served by a raw HTTP handler that writes pre-rendered bytes with ETag + Cache-Control validators for RFC 7232 conditional GETs."
x-runtime: [cloud] x-runtime: [cloud]
parameters: parameters:
- name: limit - name: If-None-Match
in: query in: header
required: false
schema: schema:
type: integer type: string
description: Maximum number of results description: Entity tag previously returned by this endpoint. When present and matching, the server returns 304 Not Modified.
- name: offset
in: query
schema:
type: integer
description: Pagination offset
responses: responses:
"200": "200":
description: Custom node list description: Node info schema
headers:
ETag:
schema:
type: string
description: Entity tag for conditional request validation
Cache-Control:
schema:
type: string
description: Cache directives for the response
content: content:
application/json: application/json:
schema: schema:
$ref: "#/components/schemas/CloudNodeList" type: object
"401": additionalProperties:
description: Unauthorized $ref: "#/components/schemas/NodeInfo"
content: "304":
application/json: description: Not Modified — returned when the client sends a matching If-None-Match header
schema:
$ref: "#/components/schemas/CloudError"
post: post:
operationId: installCloudNode operationId: installCloudNode
tags: [node] tags: [node]
@ -2651,10 +2656,10 @@ paths:
/api/experiment/nodes/{id}: /api/experiment/nodes/{id}:
get: get:
operationId: getCloudNode operationId: getNodeByID
tags: [node] tags: [runtime-only]
summary: Get details of an installed custom node summary: Get a single node definition by ID
description: "[cloud-only] Returns details about a specific installed custom node package." description: "[cloud-only] Returns one node's definition from the pre-indexed object_info schema. Served by a raw HTTP handler that writes pre-rendered bytes with ETag + Cache-Control validators for RFC 7232 conditional GETs."
x-runtime: [cloud] x-runtime: [cloud]
parameters: parameters:
- name: id - name: id
@ -2662,26 +2667,33 @@ paths:
required: true required: true
schema: schema:
type: string type: string
description: Custom node package ID description: Node class identifier
- name: If-None-Match
in: header
required: false
schema:
type: string
description: Entity tag previously returned by this endpoint. When present and matching, the server returns 304 Not Modified.
responses: responses:
"200": "200":
description: Node detail description: Single node definition
headers:
ETag:
schema:
type: string
description: Entity tag for conditional request validation
Cache-Control:
schema:
type: string
description: Cache directives for the response
content: content:
application/json: application/json:
schema: schema:
$ref: "#/components/schemas/CloudNode" $ref: "#/components/schemas/NodeInfo"
"401": "304":
description: Unauthorized description: Not Modified — returned when the client sends a matching If-None-Match header
content:
application/json:
schema:
$ref: "#/components/schemas/CloudError"
"404": "404":
description: Not found description: Node not found
content:
application/json:
schema:
$ref: "#/components/schemas/CloudError"
delete: delete:
operationId: uninstallCloudNode operationId: uninstallCloudNode
tags: [node] tags: [node]
@ -7100,22 +7112,6 @@ components:
enabled: enabled:
type: boolean type: boolean
CloudNodeList:
type: object
x-runtime: [cloud]
description: "[cloud-only] Paginated list of installed custom node packages."
required:
- nodes
properties:
nodes:
type: array
items:
$ref: "#/components/schemas/CloudNode"
total:
type: integer
has_more:
type: boolean
HubLabel: HubLabel:
type: object type: object
x-runtime: [cloud] x-runtime: [cloud]