Skip to main content
PUT
Update a workflow

Authorizations

Authorization
string
header
required

User session JWT (Bearer ). Must be paired with the X-Team-ID request header on team-scoped endpoints so the server knows which team's resources to operate on.

Headers

X-Team-ID
string<uuid>

UUID of the team to scope the request to. Used by dual-auth endpoints (runtime + scoped management):

  • JWT callers MUST send it — a user may belong to multiple teams and the runtime cannot otherwise know which one to operate on. Missing header → 400.
  • Credential callers (sk-, dk-) can omit it because the team is derived from the credential row itself. Any value sent is ignored.
Example:

"019abc12-4567-7890-abcd-ef1234567891"

Path Parameters

workflowId
string<uuid>
required

UUID of the workflow.

Example:

"019abc12-8901-7890-abcd-ef1234567895"

Body

application/json

All fields are optional. Only provided fields are updated.

workflow_slug
string

Updated globally unique slug.

Required string length: 2 - 100
Pattern: ^[a-z0-9]+(?:-[a-z0-9]+)*$
display_name
string

Updated workflow name.

Required string length: 1 - 255
description
string

Updated description.

Maximum string length: 2000
workflow_json
object

Updated tool-specific workflow definition. If provided, parameters are re-validated for the workflow's tool_type.

parameters
object[]

Updated parameter definitions (replaces the entire array).

tool_type
enum<string>

Tool runtime used by this workflow:

  • comfyui: ComfyUI API workflow JSON (default, backward compatible).
  • nerfstudio: Nerfstudio 3DGS pipeline spec.
Available options:
comfyui,
nerfstudio
Example:

"comfyui"

required_labels
string[]

Updated labels required for agent matching.

task_timeout
integer

Updated maximum execution time in seconds. 0 means no timeout.

Required range: x >= 0
max_retries
integer

Updated maximum number of automatic retries. 0 means no retry.

Required range: x >= 0
workflow_status
enum<string>

Set to disabled to prevent new task submissions for this workflow.

Available options:
active,
disabled
Example:

"active"

preferred_gpu
string

Preferred GPU type for agent matching. If empty, clears the preference.

Maximum string length: 100
Example:

"RTX_4090"

default_dispatch_target
enum<string>

Default compute source for tasks. If empty, clears the default (falls back to agent).

Available options:
agent,
comfy_cloud
Example:

"agent"

min_vram_gb
integer

Updated minimum GPU VRAM required. Set to 0 to clear the requirement.

Required range: 0 <= x <= 2048
required_models
string[]

Updated required models list. Send an empty array to clear the requirement; otherwise the new list fully replaces the previous set.

Maximum string length: 512

Response

Workflow updated

id
string<uuid>
required

UUID of the created or updated resource.

Example:

"019abc12-3456-7890-abcd-ef1234567890"