mirror of
https://git.datalinker.icu/ltdrdata/ComfyUI-Manager
synced 2025-12-09 22:24:23 +08:00
382 lines
11 KiB
YAML
382 lines
11 KiB
YAML
openapi: 3.0.3
|
|
info:
|
|
title: ComfyUI-Manager API
|
|
description: API for managing ComfyUI extensions, custom nodes, and models
|
|
version: 1.0.0
|
|
contact:
|
|
name: ComfyUI Community
|
|
url: https://github.com/comfyanonymous/ComfyUI
|
|
|
|
servers:
|
|
- url: http://localhost:8188
|
|
description: Local ComfyUI server
|
|
|
|
paths:
|
|
/customnode/getlist:
|
|
get:
|
|
summary: Get the list of custom nodes
|
|
description: Returns the list of custom nodes from all configured channels
|
|
parameters:
|
|
- name: mode
|
|
in: query
|
|
description: "The mode to retrieve (local=installed nodes, remote=available nodes)"
|
|
schema:
|
|
type: string
|
|
enum: [local, remote]
|
|
default: remote
|
|
responses:
|
|
'200':
|
|
description: List of custom nodes
|
|
content:
|
|
application/json:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
nodes:
|
|
type: array
|
|
items:
|
|
$ref: '#/components/schemas/CustomNode'
|
|
'500':
|
|
description: Server error
|
|
|
|
/customnode/get_node_mappings:
|
|
get:
|
|
summary: Get mappings between node class names and their custom nodes
|
|
description: Returns mappings that help identify which custom node package provides specific node classes
|
|
parameters:
|
|
- name: mode
|
|
in: query
|
|
description: "The mode for mappings (local=installed nodes, nickname=node nicknames)"
|
|
schema:
|
|
type: string
|
|
enum: [local, nickname]
|
|
default: local
|
|
required: true
|
|
responses:
|
|
'200':
|
|
description: Node mappings
|
|
content:
|
|
application/json:
|
|
schema:
|
|
type: object
|
|
additionalProperties:
|
|
type: string
|
|
'500':
|
|
description: Server error
|
|
|
|
/customnode/get_node_alternatives:
|
|
get:
|
|
summary: Get alternative nodes for specific node classes
|
|
description: Returns alternative implementations of node classes from different custom node packages
|
|
parameters:
|
|
- name: mode
|
|
in: query
|
|
description: "The mode to retrieve alternatives (local=installed nodes, remote=all available nodes)"
|
|
schema:
|
|
type: string
|
|
enum: [local, remote]
|
|
default: remote
|
|
responses:
|
|
'200':
|
|
description: Node alternatives
|
|
content:
|
|
application/json:
|
|
schema:
|
|
type: object
|
|
additionalProperties:
|
|
type: array
|
|
items:
|
|
type: string
|
|
'500':
|
|
description: Server error
|
|
|
|
/externalmodel/getlist:
|
|
get:
|
|
summary: Get the list of external models
|
|
description: Returns the list of models from all configured channels
|
|
parameters:
|
|
- name: mode
|
|
in: query
|
|
description: "The mode to retrieve (local=installed models, remote=available models)"
|
|
schema:
|
|
type: string
|
|
enum: [local, remote]
|
|
default: remote
|
|
responses:
|
|
'200':
|
|
description: List of external models
|
|
content:
|
|
application/json:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
models:
|
|
type: array
|
|
items:
|
|
$ref: '#/components/schemas/ExternalModel'
|
|
'500':
|
|
description: Server error
|
|
|
|
/manager/get_config:
|
|
get:
|
|
summary: Get manager configuration
|
|
description: Returns the current configuration of ComfyUI-Manager
|
|
parameters:
|
|
- name: key
|
|
in: query
|
|
description: "The configuration key to retrieve"
|
|
schema:
|
|
type: string
|
|
required: true
|
|
responses:
|
|
'200':
|
|
description: Configuration value
|
|
content:
|
|
application/json:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
value:
|
|
type: string
|
|
'400':
|
|
description: Invalid key or missing parameter
|
|
'500':
|
|
description: Server error
|
|
|
|
/manager/set_config:
|
|
post:
|
|
summary: Set manager configuration
|
|
description: Updates the configuration of ComfyUI-Manager
|
|
requestBody:
|
|
required: true
|
|
content:
|
|
application/json:
|
|
schema:
|
|
type: object
|
|
required:
|
|
- key
|
|
- value
|
|
properties:
|
|
key:
|
|
type: string
|
|
description: "The configuration key to update"
|
|
value:
|
|
type: string
|
|
description: "The new value for the configuration key"
|
|
responses:
|
|
'200':
|
|
description: Configuration updated successfully
|
|
content:
|
|
application/json:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
success:
|
|
type: boolean
|
|
'400':
|
|
description: Invalid key or value
|
|
'500':
|
|
description: Server error
|
|
|
|
/snapshot/getlist:
|
|
get:
|
|
summary: Get the list of snapshots
|
|
description: Returns the list of saved snapshots
|
|
responses:
|
|
'200':
|
|
description: List of snapshots
|
|
content:
|
|
application/json:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
snapshots:
|
|
type: array
|
|
items:
|
|
$ref: '#/components/schemas/Snapshot'
|
|
'500':
|
|
description: Server error
|
|
|
|
/comfyui_manager/queue/status:
|
|
get:
|
|
summary: Get queue status
|
|
description: Returns the current status of the operation queue
|
|
responses:
|
|
'200':
|
|
description: Queue status
|
|
content:
|
|
application/json:
|
|
schema:
|
|
$ref: '#/components/schemas/QueueStatus'
|
|
'500':
|
|
description: Server error
|
|
|
|
components:
|
|
schemas:
|
|
CustomNode:
|
|
type: object
|
|
required:
|
|
- name
|
|
- title
|
|
- reference
|
|
properties:
|
|
name:
|
|
type: string
|
|
description: "Internal name/ID of the custom node"
|
|
title:
|
|
type: string
|
|
description: "Display title of the custom node"
|
|
reference:
|
|
type: string
|
|
description: "Reference URL (usually GitHub repository URL)"
|
|
description:
|
|
type: string
|
|
description: "Description of what the custom node does"
|
|
install_type:
|
|
type: string
|
|
enum: [git, pip, copy]
|
|
description: "Installation method for the custom node"
|
|
files:
|
|
type: array
|
|
items:
|
|
type: string
|
|
description: "List of files provided by this custom node"
|
|
node_class_names:
|
|
type: array
|
|
items:
|
|
type: string
|
|
description: "List of node class names provided by this custom node"
|
|
installed:
|
|
type: boolean
|
|
description: "Whether the custom node is installed"
|
|
version:
|
|
type: string
|
|
description: "Version of the custom node"
|
|
tags:
|
|
type: array
|
|
items:
|
|
type: string
|
|
description: "Tags associated with the custom node"
|
|
|
|
ExternalModel:
|
|
type: object
|
|
required:
|
|
- name
|
|
- type
|
|
- url
|
|
properties:
|
|
name:
|
|
type: string
|
|
description: "Name of the model"
|
|
type:
|
|
type: string
|
|
description: "Type of the model (checkpoint, lora, embedding, etc.)"
|
|
url:
|
|
type: string
|
|
description: "Download URL for the model"
|
|
description:
|
|
type: string
|
|
description: "Description of the model"
|
|
size:
|
|
type: integer
|
|
description: "Size of the model in bytes"
|
|
installed:
|
|
type: boolean
|
|
description: "Whether the model is installed"
|
|
version:
|
|
type: string
|
|
description: "Version of the model"
|
|
tags:
|
|
type: array
|
|
items:
|
|
type: string
|
|
description: "Tags associated with the model"
|
|
|
|
Snapshot:
|
|
type: object
|
|
required:
|
|
- name
|
|
- date
|
|
properties:
|
|
name:
|
|
type: string
|
|
description: "Name of the snapshot"
|
|
date:
|
|
type: string
|
|
format: date-time
|
|
description: "Date when the snapshot was created"
|
|
description:
|
|
type: string
|
|
description: "Description of the snapshot"
|
|
nodes:
|
|
type: array
|
|
items:
|
|
type: string
|
|
description: "List of custom nodes in the snapshot"
|
|
models:
|
|
type: array
|
|
items:
|
|
type: string
|
|
description: "List of models in the snapshot"
|
|
|
|
QueueStatus:
|
|
type: object
|
|
properties:
|
|
pending:
|
|
type: array
|
|
items:
|
|
$ref: '#/components/schemas/QueueItem'
|
|
description: "List of pending operations in the queue"
|
|
completed:
|
|
type: array
|
|
items:
|
|
$ref: '#/components/schemas/QueueItem'
|
|
description: "List of completed operations in the queue"
|
|
failed:
|
|
type: array
|
|
items:
|
|
$ref: '#/components/schemas/QueueItem'
|
|
description: "List of failed operations in the queue"
|
|
running:
|
|
type: boolean
|
|
description: "Whether the queue is currently running"
|
|
|
|
QueueItem:
|
|
type: object
|
|
required:
|
|
- id
|
|
- type
|
|
- target
|
|
properties:
|
|
id:
|
|
type: string
|
|
description: "Unique ID of the queue item"
|
|
type:
|
|
type: string
|
|
enum: [install, update, uninstall]
|
|
description: "Type of operation"
|
|
target:
|
|
type: string
|
|
description: "Target of the operation (e.g., custom node name, model name)"
|
|
status:
|
|
type: string
|
|
enum: [pending, processing, completed, failed]
|
|
description: "Current status of the operation"
|
|
error:
|
|
type: string
|
|
description: "Error message if the operation failed"
|
|
created_at:
|
|
type: string
|
|
format: date-time
|
|
description: "Time when the operation was added to the queue"
|
|
completed_at:
|
|
type: string
|
|
format: date-time
|
|
description: "Time when the operation was completed"
|
|
|
|
securitySchemes:
|
|
ApiKeyAuth:
|
|
type: apiKey
|
|
in: header
|
|
name: X-API-Key
|
|
description: "API key for authentication" |