FlowSettings
In the package manifest, all organization settings metadata types are accessed using the Settings name. See Settings for 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’s 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 |
---|---|---|
canDebugFlowAsAnotherUser | boolean | Indicates whether a flow can be debugged as another user (true) or not (false). Corresponds to the Let admins debug flows as other users field on the Process Automation Settings page in Setup. Available in API version 50.0 and later. |
doesEnforceApexCpuTimeLimit | boolean | Indicates whether Salesforce accurately measures the CPU time that flows and
processes consume (true) or not (false). Corresponds to the Accurately Measure the CPU Time Consumption of Flows and Processes release update. Available in API version 51.0 and later. |
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 | Indicates whether flow formula functions that generate HTML, such as BR(), IMAGE(), and HYPERLINK(), include encoded markers (__BR_ENCODED__) (true) or not (false). Available in API version 48.0 and later. |
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. |
enableFlowCustomPropertyEditor | boolean | Indicates whether an org has custom property editors enabled for actions and
screen fields in Flow Builder (true) or not
(false). This field is available in API version 48.0 to 50.0. The field is deprecated in API version 50.0 and later. All orgs that have Flow Builder support custom property editors for actions and screen fields. |
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 the 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. |
enableFlowReactiveScreens | boolean | Indicates whether supported screen components in flows running on API version
57.0 and 58.0 can react to changes in other components on the same screen. This
setting isn’t applicable to flows running on API version 59.0 and later. By default,
the value is false. To make a component
reactive, reference the output of another component on the same screen in the
configuration pane. Corresponds to the Enable Reactive Components for Specific Flow Versions field on the Process Automation Settings page in Setup. |
enableFlowUseApexExceptionEmail | boolean | Indicates whether process and flow error emails are sent to:
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. |
enableFlowViaRestUsesUserCtxt | boolean | Indicates whether a flow that runs via REST API uses the running user’s profile
and permission sets to determine the object permissions and field-level access of
the flow. Corresponds to the Run Flows in User Context via REST API critical update. Available in API version 54.0 and later. |
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 aren’t 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. This field is available in API versions 47.0 to 58.0. The field is deprecated in API version 59.0 and later. |
isApexPluginAccessModifierRespected | boolean | Indicates whether flows respect the public access modifiers for legacy Apex
actions. When the value is true:
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. |
isFlowApexContextRetired | boolean | Indicates whether the rules for enforcing explicit access to Apex classes are
disabled (true) or not (false). For most Salesforce orgs the default value is
true. Corresponds to the Disable Rules for Enforcing Explicit Access to Apex Classes release update. This field is available in API versions 49.0 to 58.0. The field is deprecated in API version 59.0 and later. |
isFlowBlockAccessToSessionIDEnabled | boolean | Indicates whether a valid session ID is returned in API.SessionID (false) or not (true). The default value is false. When the value is true, flows that access the session ID variable receive a placeholder string instead of a valid session ID. |
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. |
isTimeResumedInSameRunContext | boolean | Indicates whether paused autolaunched flows always resume in the same context
and retain the user access that they had before being paused (true) or not (false). Corresponds to the Make Paused Flow Interviews Resume in the Same Context with the Same User Access release update. This field is available in API version 57.0 and later. |
Declarative Metadata Sample Definition
Here’s an example of the Flow.settings file.
<?xml version="1.0" encoding="UTF-8"?>
<FlowSettings xmlns="http://soap.sforce.com/2006/04/metadata">
<doesFormulaEnforceDataAccess>true</doesFormulaEnforceDataAccess>
<enableFlowBREncodedFixEnabled>true</enableFlowBREncodedFixEnabled>
<enableFlowDeployAsActiveEnabled>false</enableFlowDeployAsActiveEnabled>
<enableFlowFieldFilterEnabled>false</enableFlowFieldFilterEnabled>
<enableFlowFormulasFixEnabled>true</enableFlowFormulasFixEnabled>
<enableFlowInterviewSharingEnabled>true</enableFlowInterviewSharingEnabled>
<enableFlowNullPreviousValueFix>true</enableFlowNullPreviousValueFix>
<enableFlowPauseEnabled>true</enableFlowPauseEnabled>
<enableFlowUseApexExceptionEmail>false</enableFlowUseApexExceptionEmail>
<enableLightningRuntimeEnabled>true</enableLightningRuntimeEnabled>
<isApexPluginAccessModifierRespected>true</isApexPluginAccessModifierRespected>
<isEnhancedFlowListViewVisible>true</isEnhancedFlowListViewVisible>
<isManageFlowRequiredForAutomationCharts>false</isManageFlowRequiredForAutomationCharts>
</FlowSettings>
Example Package Manifest
Here’s an example package.xml that references the previous definition.
<?xml version="1.0" encoding="UTF-8"?>
<Package xmlns="http://soap.sforce.com/2006/04/metadata">
<types>
<members>Flow</members>
<name>Settings</name>
</types>
<version>47.0</version>
</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.