Newer Version Available

This content describes an older version of this product. View Latest

FlowSettings

Represents the org’s settings for processes and flows, such as whether Lightning runtime for flows is enabled. This type extends the Metadata metadata type and inherits its fullName field.

In the package manifest, all organization settings metadata types are accessed using the “Settings” name. See Settings for more details.

File Suffix and Directory Location

FlowSettings values are stored in the Flow.settings file in the settings directory. The .settings files are different from other named components because there is only one settings file for each settings component.

Version

FlowSettings components are available in API version 47.0 and later.

Fields

Field Name Field Type Description
doesFormulaEnforceDataAccess boolean Indicates whether formula resources and formula fields in a flow enforce record-level security (true) or not (false).

Corresponds to the Enforce Data Access in Flow Formulas critical update. Available in API version 48.0 and later.

doesFormulaGenerateHtmlOutput boolean Reserved for future use.
enableFlowBREncodedFixEnabled boolean Indicates whether BR() functions in flow and process formulas result in a line break (true) or resolve to _BR_ENCODED_ as a literal value (false).

Corresponds to the Use the BR() Function in Flows and Processes critical update.

enableFlowDeployAsActiveEnabled boolean Indicates whether processes and flows can be deployed as active via change sets or Metadata API. When the value is false, all processes and flows are deployed as inactive. When the value is true, deploying an active process or flow in a production org causes your Apex tests to run. If Apex tests don’t launch your org’s required percentage of active processes and autolaunched flows, the deployment is rolled back.

The default value is false for production orgs and is true for non-production orgs such as scratch, sandbox, and developer orgs.

Corresponds to the Deploy processes and flows as active field on the Process Automation Settings page in Setup. The field appears in the user interface on production orgs only.

enableFlowFieldFilterEnabled boolean Indicates whether flows can successfully execute Create Records and Update Records elements that update fields to which the running doesn’t have edit access. By default (false), the Create Records or Update Records element fails and executes the fault path if it has one. When the value is true, the element sets only the fields that the running user can edit. No notification is sent when some fields aren’t updated.

Corresponds to the Filter inaccessible fields from flow requests field on the Process Automation Settings page in Setup.

enableFlowFormulasFixEnabled boolean Indicates whether process and flow formulas return null values when the calculations involve a null record variable or null lookup relationship field. When the value is true, those formulas return null values at run time. When the value is false, those formulas return unhandled exceptions at run time.

Corresponds to the Check for Null Record Variables or Null Values of Lookup Relationship Fields in Process and Flow Formulas critical update.

enableFlowInterviewSharingEnabled boolean Indicates whether users can resume the paused flow interviews that they have edit access to. By default (true), users can resume interviews that are shared with them, either directly or via the role hierarchy. When the value is false, each paused interview can be resumed only by the interview owner or a flow admin who has view access to the interview.

Corresponds to the Let users resume shared flow interviews field on the Process Automation Settings page in Setup.

enableFlowNullPreviousValueFix boolean Indicates whether each process evaluates criteria by always using the original record field values from when the process begins. When the value is true, each process with an Update Records action and multiple criteria nodes always evaluates criteria using the original field values of the record. When the value is false, processes evaluate the updated values of record fields that were null when the process began.

Corresponds to the Evaluate Criteria Based on Original Record Values in Process Builder critical update.

enableFlowPauseEnabled boolean Indicates whether screens can display the Pause button so that users can pause flow interviews. By default, the value is false.

Corresponds to the Let users pause flows field on the Process Automation Settings page in Setup.

enableFlowUseApexExceptionEmail boolean Indicates whether process and flow error emails are sent to:
  • The user who last modified the process or flow (false)
  • The addresses set on the Apex Exception Email page in Setup (true)

By default, the value is false. Corresponds to the Send Process or Flow Error Email to field on the Process Automation Settings page in Setup.

enableInvocableFlowFixEnabled boolean Removed in API version 50.0 and later.

Indicates whether all autolaunched flow interviews are executed when they’re invoked in bulk from a process or the Invocable Actions resource in REST API (true) or not (false). When the value is false, flow interviews that share identical input parameters are not executed.

Corresponds to the Execute All Flow Interviews When Invoked in Bulk critical update.

enableLightningRuntimeEnabled boolean Indicates whether flows that are launched from a URL or from Setup use the Lightning runtime experience (true) or the Classic runtime experience (false). By default, the value is true.

Corresponds to the Enable Lightning runtime for flows field on the Process Automation Settings page in Setup.

isAccessToInvokedApexRequired boolean Indicates whether flows can invoke Apex classes only when the running users’ profiles or permission sets include access to those Apex classes. When the value is false, Apex class security doesn’t apply to flows.

Corresponds to the Require User Access to Apex Classes Invoked by Flow critical update.

isApexPluginAccessModifierRespected boolean Indicates whether flows respect the public access modifiers for legacy Apex actions. When the value is true:
  • Flows fail when they execute public legacy Apex actions from a different namespace.
  • Public legacy Apex actions from a different namespace aren't available in Flow Builder.
  • Global legacy Apex actions with public describe or invoke methods are unavailable to flows in a different namespace.
When the value is false, you can add public legacy Apex actions to flows even though they’re not supported. Also, global legacy Apex actions with public describe or invoke methods are available to flows in a different namespace.

Corresponds to the Make Flows Respect Access Modifiers for Legacy Apex Actions critical update. Available in API version 48.0 and later.

isEnhancedFlowListViewVisible boolean Indicates whether the enhanced Flows list view in Lightning Experience replaces the Classic Flows list view (true) or not (false). The default value is true. If the field is set to false, the Classic Flows list view replaces the enhanced list view.
isManageFlowRequiredForAutomationCharts boolean Indicates whether the Manage Flow permission is required to view all charts in Automation Home (Beta) (true) or not (false). The default value is false. All users with the View Setup and Configuration permission can view all charts in Automation Home. If the field is set to true, then users with the View Setup and Configuration permission can view only the Total Started Automations by Process Type chart. The Manage Flow permission is required to view all charts.

Declarative Metadata Sample Definition

The following is an example of the Flow.settings file.

1<?xml version="1.0" encoding="UTF-8"?>
2<FlowSettings xmlns="http://soap.sforce.com/2006/04/metadata">
3    <doesFormulaEnforceDataAccess>true</doesFormulaEnforceDataAccess>
4    <enableFlowBREncodedFixEnabled>true</enableFlowBREncodedFixEnabled>
5    <enableFlowDeployAsActiveEnabled>false</enableFlowDeployAsActiveEnabled>
6    <enableFlowFieldFilterEnabled>false</enableFlowFieldFilterEnabled>
7    <enableFlowFormulasFixEnabled>true</enableFlowFormulasFixEnabled>
8    <enableFlowInterviewSharingEnabled>true</enableFlowInterviewSharingEnabled>
9    <enableFlowNullPreviousValueFix>true</enableFlowNullPreviousValueFix>
10    <enableFlowPauseEnabled>true</enableFlowPauseEnabled>
11    <enableFlowUseApexExceptionEmail>false</enableFlowUseApexExceptionEmail>
12    <enableLightningRuntimeEnabled>true</enableLightningRuntimeEnabled>
13    <isAccessToInvokedApexRequired>true</isAccessToInvokedApexRequired>
14    <isApexPluginAccessModifierRespected>true</isApexPluginAccessModifierRespected>
15    <isEnhancedFlowListViewVisible>true</isEnhancedFlowListViewVisible>
16    <isManageFlowRequiredForAutomationCharts>false</isManageFlowRequiredForAutomationCharts>
17</FlowSettings>

Example Package Manifest

The following is an example package.xml that references the previous definition.

1<?xml version="1.0" encoding="UTF-8"?>
2<Package xmlns="http://soap.sforce.com/2006/04/metadata">
3	<types>
4		<members>Flow</members>
5		<name>Settings</name>
6	</types>
7	<version>47.0</version>
8</Package>

Wildcard Support in the Manifest File

The wildcard character * (asterisk) in the package.xml manifest file doesn’t apply to metadata types for feature settings. The wildcard applies only when retrieving all settings, not for an individual setting. For details, see Settings. For information about using the manifest file, see Deploying and Retrieving Metadata with the Zip File.