Skip to main content
PUT
https://api.comfycontrol.app
/
v1
/
runner
/
{id}
Update Runner
curl --request PUT \
  --url https://api.comfycontrol.app/v1/runner/{id} \
  --header 'Authorization: Bearer <token>' \
  --header 'Content-Type: application/json' \
  --data '
{
  "name": "<string>",
  "endpoint": "<string>",
  "headers": {},
  "tags": [
    "<string>"
  ],
  "status": "<string>"
}
'
{
  "400": {},
  "401": {},
  "404": {},
  "id": "<string>",
  "user_id": "<string>",
  "name": "<string>",
  "status": "<string>",
  "endpoint": "<string>",
  "tags": [
    "<string>"
  ],
  "headers": {},
  "created_at": "<string>",
  "updated_at": "<string>"
}

Overview

Update the configuration of an existing runner. You can modify the name, endpoint URL, headers, tags, or status.

Path Parameters

id
string
required
The unique identifier (UUID) of the runner to update.

Request Body

name
string
A descriptive name for your runner (1-100 characters).
endpoint
string
The URL where your ComfyUI instance is accessible. Must be a valid HTTP or HTTPS URL.Example: https://my-comfy.example.com or http://192.168.1.100:8188
headers
object
Custom HTTP headers to include when communicating with your runner.Example: {"Authorization": "Bearer token123", "X-Custom-Header": "value"}
tags
string[]
Array of tags for organizing and selecting runners (maximum 10 tags).Example: ["production", "gpu-a100", "image-generation"]
status
string
Status of the runner. Values: active, disabledUse disabled to temporarily prevent workflows from using this runner.

Response

id
string
required
Unique identifier (UUID) for the runner.
user_id
string
required
UUID of the user who owns this runner.
name
string
required
The runner’s name.
status
string
required
Current status of the runner. Values: active, disabled
endpoint
string
required
The URL where the runner is accessible.
tags
string[]
required
Array of tags associated with the runner.
headers
object
required
The custom headers configured for this runner.
created_at
string
required
ISO 8601 timestamp when the runner was created.
updated_at
string
required
ISO 8601 timestamp when the runner was last updated.

Example Response

{
  "id": "550e8400-e29b-41d4-a716-446655440000",
  "user_id": "7c9e6679-7425-40de-944b-e07fc1f90ae7",
  "name": "Production GPU Runner - Updated",
  "status": "active",
  "endpoint": "https://new-endpoint.example.com",
  "tags": ["production", "gpu-a100", "video-generation"],
  "headers": {
    "Authorization": "Bearer new_token"
  },
  "created_at": "2024-01-15T10:30:00Z",
  "updated_at": "2024-01-16T14:20:00Z"
}

Error Responses

400
error
Bad request - validation error in the request body.Common causes:
  • Name is empty or too long
  • Invalid endpoint URL format
  • Too many tags (max 10)
  • Invalid headers format
  • Invalid status value
401
error
Unauthorized - invalid or missing authentication token.
404
error
Not Found - runner with the specified ID does not exist or does not belong to your account.

Notes

  • All fields in the request body are optional - only include fields you want to update
  • Omitted fields will retain their current values
  • Setting status to disabled prevents workflows from using this runner
  • Tags are completely replaced, not merged - send all tags you want to keep