Flows / Update flow
Update flow
PATCH/v1/flows/{id}
Partially update a flow. You can also change status here (draft, published, or archived), though publishing through the publish endpoint runs the same readiness checks.
Path parameters
id
string · required
The flow id.
Body parameters
name
string
New name.
description
string
New description.
status
string
draft, published, or archived.
trigger_config
object
Replace the trigger.
actions_config
array
Replace the actions. Send every action you want to keep, including its valueSource.
Response fields
id
string
Prefixed identifier, e.g. flow_0Dzj….
site_id
string
The site this flow belongs to.
name
string
Up to 255 characters.
status
string
draft (not delivering), published (live), or archived.
trigger_config
object | null
What fires the flow, e.g. { integrationId, pageFilter }.
trigger_name
string | null
Resolved display name of the trigger, e.g. Gravity Forms.
actions_config
array | null
The destinations that receive the conversion, each with the conversion to record and the value to send.
published_at
timestamp | null
When it was last published. null while in draft.
Add, change or remove a dynamic value
actions_config replaces the whole list of actions, so send each action in full, with its id, and set valueSource on the one you're changing. Converly only checks a value source that is new or different, so saving other edits never fails because of a value source the flow already has.
PATCH/v1/flows/{id}
curl -X PATCH https://app.converly.io/api/v1/flows/flow_0Dzj… \
-H "Authorization: Bearer sk_live_…" \
-d '{
"actions_config": [
{ "id": "action-1787442641531",
"integrationId": "meta",
"config": {
"conversion": {
"event_name": "Schedule",
"value": 300,
"currency": "USD",
"valueSource": {
"triggerId": "acuity-appointment-scheduled",
"sourceId": "acuity.booking_price"
}
}
} }
]
}'To go back to a fixed amount, send "valueSource": null on that action. The action then sends its value to every conversion. A published flow keeps sending the old value until you publish it again.
PATCH/v1/flows/{id}
curl -X PATCH https://app.converly.io/api/v1/flows/flow_0Dzj… \
-H "Authorization: Bearer sk_live_…" \
-d '{ "name": "Demo bookings (v2)" }'200 OK
{
"id": "flow_0Dzj…",
"name": "Demo bookings (v2)",
"status": "published"
}