Skip to main content
Partially update a workflow. Only the fields you provide are changed.

Overview

The Update Workflow endpoint performs a partial update (PATCH) on a workflow. Omit fields you don’t want to change. Use it to toggle the enabled flag, promote a draft from DRAFT to PUBLISHED, or replace the workflow definition.
To modify the workflow definition as a draft without touching the live version, use Upsert Workflow Draft instead.

Authentication

Requires a valid API key. No special permission scope is needed beyond a valid key.

Key Features

  • Partial Updates: Only the fields you provide are changed
  • Enable/Disable: Toggle whether the workflow runs
  • Status Transitions: Promote from DRAFT to PUBLISHED
  • No Credit Cost: This endpoint is free to use
# Enable a workflow
curl -X PATCH "https://api.trigify.io/v1/workflows/wf_abc123" \
  -H "x-api-key: YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{ "enabled": true }'

# Publish a draft
curl -X PATCH "https://api.trigify.io/v1/workflows/wf_abc123" \
  -H "x-api-key: YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{ "status": "PUBLISHED" }'

Path Parameters

ParameterTypeDescription
idstringThe unique workflow ID

Request Body

All fields are optional. Omit any field you don’t want to change.
FieldTypeDescription
namestringWorkflow name (1-255 characters)
descriptionstringFree-form workflow description
workflowobjectWorkflow definition (JSON) with trigger, actions, and edges. See Create Workflow for the full shape
enabledbooleanWhether the workflow is active
statusstringWorkflow status. One of DRAFT or PUBLISHED
The linked saved search (social_saved_search_id) cannot be changed via this endpoint. To replace the link, delete and recreate the workflow with a different search_id.

Example Response

{
  "message": "Workflow updated successfully",
  "success": true,
  "data": {
    "id": "wf_abc123",
    "name": "Enrich and notify (v2)",
    "description": "Enrich profiles and post them to Slack",
    "workflow": {
      "trigger": { "kind": "workflows/new-post", "inputs": {} },
      "actions": [
        { "id": "agent-1", "kind": "generic_agent", "name": "Summarise Post" },
        { "id": "slack-1", "kind": "slack_send_channel_message", "name": "Send Summary" }
      ],
      "edges": [
        { "from": "$source", "to": "agent-1" },
        { "from": "agent-1", "to": "slack-1" }
      ]
    },
    "enabled": true,
    "status": "PUBLISHED",
    "social_saved_search_id": "ss_xyz456",
    "created": "2026-04-01T10:00:00.000Z",
    "updated": "2026-04-14T11:30:00.000Z"
  }
}

Response Fields

The response matches the shape of Get Workflow:
FieldTypeDescription
messagestringHuman-readable status message
successbooleantrue on success
dataobjectThe updated workflow

Credit Usage

This endpoint is free and does not consume credits.