You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何通过Workbench API或Apex停用/删除Flow流程

Salesforce Flow 停用、删除实操方案(Apex + Workbench API)

网上可查的大部分方案存在API版本过时、操作对象错误的问题,以下是v58+版本生产环境验证可用的实现方式:

通用前置要求

执行操作的用户必须开启Modify Metadata Through Metadata API Functions权限,无该权限所有操作都会返回权限不足报错。
注意:已激活的Flow版本无法直接删除,必须先执行停用操作再删除。

Apex实现方式

不要尝试直接DML操作FlowDefinition、FlowVersionView系统视图,这两个对象从v44版本开始只读,DML操作会直接抛错,所有元数据操作必须通过官方Metadata API类实现。

停用指定Flow

// 替换为目标Flow的API名称
String targetFlowApiName = 'Your_Flow_API_Name';
Metadata.FlowDefinition flowDef = new Metadata.FlowDefinition();
flowDef.fullName = targetFlowApiName;
// 注意:不要将activeVersionNumber设为0,设为null即为停用状态
flowDef.activeVersionNumber = null;

Metadata.DeployContainer container = new Metadata.DeployContainer();
container.addMetadata(flowDef);
// 执行部署,可通过回调获取异步部署结果
Metadata.Operations.enqueueDeployment(container, new Metadata.DeployOptions());

删除指定Flow版本

如果需要删除整个Flow,先查询该Flow下所有版本号,逐个执行删除即可。

// 格式为<FlowAPI名称>-<版本号>,例:Test_Flow-2 代表删除Test_Flow的第2个版本
String targetFlowVersionFullName = 'Your_Flow_API_Name-2';
Metadata.DeleteResult delRes = Metadata.Operations.delete(
    Metadata.Flow.class,
    new List<String>{targetFlowVersionFullName}
);
// 可通过delRes.success判断是否成功,delRes.errors获取报错详情
System.debug(delRes);

Workbench API实现方式

不要用Workbench的REST数据接口(/services/data/vXX.0/sobjects/)操作Flow,数据接口不支持元数据修改,必须使用元数据接口操作。

停用指定Flow

  1. 登录Workbench后,右上角API版本选择v58及以上
  2. 依次进入 metadata -> Update 菜单
  3. 元数据类型选择FlowDefinition,提交以下XML内容(替换fullName为目标Flow的API名):
<?xml version="1.0" encoding="UTF-8"?>
<FlowDefinition xmlns="http://soap.sforce.com/2006/04/metadata">
    <fullName>Your_Flow_API_Name</fullName>
    <activeVersionNumber xsi:nil="true" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"/>
</FlowDefinition>
  1. 点击提交,返回success=true即为停用成功。

删除指定Flow版本

  1. 同样选择v58+API版本,依次进入metadata -> Delete菜单
  2. 元数据类型选择Flow,对象名称填写目标版本的全名(格式同Apex部分:<FlowAPI名>-<版本号>)
  3. 点击提交即可完成删除。

常见报错排查

  • 报参数无效:检查activeVersionNumber是否设为0、XML是否缺少xsi:nil属性、API版本是否低于v56
  • 报权限不足:检查执行用户是否开启元数据修改权限、是否被Flow的所属流程权限限制
  • 报依赖存在:检查该Flow是否被其他流程、验证规则、按钮引用,解除依赖后再操作

内容的提问来源于stack exchange,提问作者jose

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.30 07:15:40