求助:Salesforce Flow报错「可能超出限制或0个收件人」,求排查方案
Salesforce Flow 报错「Probably limit exceeded or 0 Recipients」排查与解决
一、排查「0 Recipients」(无有效收件人)原因
- 检查邮件收件人赋值逻辑
- 确认Flow是否通过特定对象记录的关联字段(如Lookup到Contact/User)正确获取到用户邮箱。验证该关联字段是否为空,若为空则需调整社区注册流程,确保特定对象记录创建时已完成用户关联。
- 检查获取到的邮箱字段是否有有效值,格式是否合规(包含@符号、无非法字符)。可在Flow中添加「决策」节点,提前判断邮箱为空或格式无效的情况,分支处理避免触发发送。
- 检查用户接收权限设置
- 查看目标用户/Contact的「Email Opt Out」(用户对象)或「Do Not Email」(Contact对象)是否勾选,这类设置会导致Salesforce拒绝发送邮件。
- 确认用户状态为「Active」,非激活用户无法接收系统触发的邮件。
二、排查「Limit Exceeded」(资源超限)原因
- 查看每日邮件发送配额
- 在「设置」→「公司信息」→「组织详情」中查看「每日电子邮件限额」的剩余额度,若配额耗尽会触发该错误。
- 检查Flow并发执行限制
- 短时间内大量用户注册可能触发平台并发限制,可在「设置」→「流程设置」→「Flow错误日志」中查看是否有并发相关的详细报错信息。
- 验证单邮件收件人数量
- 若Flow中邮件发送给多个收件人,确认是否超过Salesforce单邮件收件人上限(外部邮件通常限制更严格)。
三、修复与优化方案
- 添加错误处理:在Flow中配置「错误处理」元素,捕获该报错后创建自定义日志记录(如自定义对象「Flow错误日志」),避免Flow中断影响后续业务流程。
- 异步发送优化:针对高并发场景,改用Queueable Apex异步发送邮件,或使用「批量记录触发Flow」模式分散执行压力。
- 预校验逻辑:在邮件发送节点前添加决策校验,过滤掉无有效邮箱、拒收邮件的用户,从源头减少错误触发。
内容的提问来源于stack exchange,提问作者POOJA SHETYE
相关产品推荐
相关产品推荐

