promote-flow
Snapshot a process flow as it stands now and record that snapshot as its next version, which becomes the live one. Needs the fabric:orchestrate.write grant and an admin role.
curl -sS -X POST https://fabric.wexa.ai/mcp/$FABRIC_PROJECT_ID \
-H "authorization: Bearer $FABRIC_API_KEY" \
-H "Mcp-Session-Id: $MCP_SESSION_ID" \
-H "content-type: application/json" -H "accept: application/json" \
-d '{"jsonrpc":"2.0","id":3,"method":"tools/call","params":{"name":"promote-flow","arguments":{"process_flow_id":"6ab1945e7566f41b5c28e308"}}}'{
"content": [
{
"type": "text",
"text": "{\"lifecycle_id\":\"qlc_000181\",\"result\":{\"id\":\"fver_9f3fc6a6-4f55-44d6-b7ba-c2329a8e0461\",\"agentflowId\":\"6ab1945e7566f41b5c28e308\",\"version\":2,\"status\":\"promoted\",\"agentCount\":1,\"parentVersion\":1}}"
}
],
"isError": false
}Parameters
| Parameter | Type | Required | Notes |
|---|---|---|---|
process_flow_id | string | Required | Process flow id. A process flow in this project. |
Errors
ValidationError: the credential's role is not owner, organization admin or project admin; promoting needs an admin role.
Show full response
A real response, captured from a live call to promote-flow:
snapshot came back populated and is shown as … here, because the real value runs to
thousands of characters. Read it from your own call rather than from this page.
{
"lifecycle_id": "qlc_000181",
"result": {
"id": "fver_9f3fc6a6-4f55-44d6-b7ba-c2329a8e0461",
"agentflowId": "6ab1945e7566f41b5c28e308",
"version": 2,
"status": "promoted",
"snapshot": "\u2026",
"agentCount": 1,
"promotedBy": "6a79a770b6c128ccc24bfca7",
"promotedAt": "2026-09-21T20:41:37.225918542Z",
"parentVersion": 1
}
}More details
Use this when a process flow's structure is where you want it. Editing a process flow records nothing on its own, so without a promote there is no history to return to. The previous live version becomes superseded, and version numbers only ever increase.
List the versions with flow-versions; change which one is live with rollback-flow-version.
Marked consequential: it is audited in full, and a policy rule may hold it for a person to approve. See Policy and approvals.
Every tool call works the same way: How every tool call works.