Skip to content

ComfyNodePRs/PR-comfy-portal-endpoint-31f3c6a2

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

14 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

ComfyUI Portal Endpoint Extension

This is a ComfyUI extension that provides additional API endpoints functionality, primarily designed to support Comfy Portal - a modern iOS client application for ComfyUI. These endpoints enable seamless integration between the mobile app and ComfyUI server, providing features like workflow conversion, listing, and saving capabilities.

Installation

  1. Navigate to ComfyUI's custom_nodes directory:
cd custom_nodes
  1. Clone this repository:
git clone https://github.com/ShunL12324/comfy-portal-endpoint
  1. Restart the ComfyUI server

API Endpoints

Workflow Conversion

  • Endpoint: /api/cpe/workflow/convert
  • Method: POST
  • Description: Converts a ComfyUI workflow JSON format to API-compatible JSON format for programmatic API calls
  • Request Body: ComfyUI workflow JSON data (the format you get when you save a workflow in the UI)

Example Call

curl -X POST "http://localhost:8188/api/cpe/workflow/convert" \
  -H "Content-Type: application/json" \
  -d '{
    "workflow": "<workflow_json_string>"
  }'

List Workflows

  • Endpoint: /api/cpe/workflow/list
  • Method: GET
  • Description: Lists all available workflows in the user's workflows directory
  • Response: List of workflow files with their metadata (filename, size, modified time)

Example Call

curl "http://localhost:8188/api/cpe/workflow/list"

Save Workflow

  • Endpoint: /api/cpe/workflow/save
  • Method: POST
  • Description: Saves a workflow JSON to the workflows directory
  • Request Body:
    • workflow: Workflow JSON string (required)
    • name: Filename to save as (optional, will generate timestamp-based name if not provided)
    • Note: .json extension will be automatically added if not present in the name

Example Call

curl -X POST "http://localhost:8188/api/cpe/workflow/save" \
  -H "Content-Type: application/json" \
  -d '{
    "workflow": "<workflow_json_string>",
    "name": "my_workflow"
  }'

Development Notes

  • This extension focuses on providing API endpoints, no custom nodes included
  • All API endpoints are prefixed with /api/cpe/
  • Uses aiohttp framework for handling API requests
  • Implements a task queue system for workflow processing
  • Includes error handling and timeout mechanisms

License

MIT

About

No description, website, or topics provided.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Python 61.9%
  • JavaScript 38.1%