Skip to main content
PUT
Update workflow

Authorizations

Authorization
string
header
required

The access token received from the authorization server in the OAuth 2.0 flow.

Path Parameters

workflow_id
string
required

Body

application/json

A full replacement of a workflow's editable state.

Editing a workflow changes what the NEXT activation would run, never what an already active schedule is running.

This is the read-modify-write half of the surface, so it takes a workflow exactly as a GET renders it, plus expected_revision: the fields a workflow reports but does not let you set — its id, owner, execution format, revision, active version, run steps and timestamps — are dropped rather than refused. Anything else it does not recognise is still a 422, so a misspelled field cannot silently skip part of the change.

status is the one field that is writable AND readable with a value the write half cannot mint, so it is accepted as an echo rather than dropped: see its description and update_workflow.

project_id
string
required

Project the workflow belongs to. You must have editor access to it.

Minimum string length: 1
title
string
required

Workflow name, shown wherever it is listed.

Required string length: 1 - 255
expected_revision
integer
required

The revision you last read. The update is applied only if the workflow is still at that revision; otherwise nothing changes and the request conflicts. This is what stops a stale client deleting another client's triggers.

Required range: x >= 0
description
string
default:""

Optional longer description.

Maximum string length: 2000
status
enum<string> | null

New workflow state. Omit to leave it unchanged. active is accepted only as an echo: an already active workflow can be handed back exactly as it reads, and the update leaves it active. It cannot be used to ACTIVATE a workflow — that is the activate operation, which freezes the version that runs — so asking for active on a workflow that is not already active is refused.

Available options:
draft,
active,
paused,
archived
output_folder
string
default:""

Project folder the workflow writes its outputs to, for example /Reports.

Maximum string length: 512
graph
Graph · object | null

Replacement graph document, in the same shape and with the same trigger and edge rules as on create: send the full desired document, since what you send replaces the stored graph rather than merging into it. Omit to leave the stored graph untouched. Serializes to at most 200000 characters.

triggers
WorkflowTriggerRequest · object[]

Schedules that start this workflow. Omit for a workflow that only runs on demand. These rows and the graph's trigger nodes must agree: a schedule here requires a summation.trigger.schedule/v1 node in the graph — it is the node the schedule's parameter values are bound to — and that node requires a schedule here, or nothing would fire it. A request where the two disagree is refused.

Maximum array length: 20

Response

Successful Response

data
Workflow · object
required