Flow Enhancements for Salesforce Admins

Flow Enhancements for Admins | Learn MOAR Spring ’23


Follow and complete a Learn MOAR Spring ’23 trailmix for admins or developers by March 31, 2023, 11:59 p.m. PT to earn a special community badge and be automatically entered for a chance to win one of five $200 USD Salesforce Certification vouchers. Restrictions apply. Learn how to participate and review the Official Rules by visiting the Trailhead Quests page.

Flow enhancements are here!

#AwesomeAdmins love to automate, and I’m so excited to share updates in Spring ’23 that will give admins even MOAR ways to automate with Flow Builder.

Element iteration limit—gone!

I am so happy to announce that the dreaded ITERATION_LIMIT_EXCEEDED error is now gone! This was a Flow-specific limit that triggered when your flow hit 2,000 elements across the Flow interview—typically seen with larger loops. 

For a long time, the limit existed to protect orgs from runaway flows, but over time we built in more governor limit awareness into the Flow engine. We now feel confident that it’s no longer needed, which is great news for you loopers! 

Note: For your existing flows to take advantage of this, you’ll need to ensure you’ve updated the Flow’s API version.

Easy HTTP callout builder (Beta)

You can now create actions that make calls to external web services from within Flow Builder without any need for code! 

Create HTTP callouts from this new button:

Create HTTP Callout Button

Add a named credential to handle the authentication:

HTTP Callout External Service Creation

In Spring ‘23, only GET calls are supported. Set up any needed query parameters:

HTTP Callout Query Parameter Setup

After you provide a sample JSON response, Flow will generate a matching data structure that can be accessed in Flow Builder without code.

HTTP Callout JSON Response Parsing

The actions you create with the new HTTP callout feature become permanent, reusable actions you can add to any flow. You can view and manage these permanent actions from the updated External Services page:

New External Services List View

Feature Overview

  • Create your external service directly from the action by specifying a named credential.
  • Paste a sample JSON response and get a real-time preview of the data structure.
  • Map data types from the JSON response to flow variables.

Description bubbles now surfaced in the canvas

New Flow Description Bubbles

Documentation sticklers (like me) rejoice! You can now easily see an element’s description by hovering over the new documentation bubble next to an element. This will allow builders to easily see the notes others have left for each individual element. Note that the new documentation bubble icon will display only for elements with a description.

Element descriptions are now easier to see

Easier to read element descriptions from Add Element menu

Before this release it wasn’t possible to see an element’s entire description. You can now hover over the information bubble to see what an element does—a great addition for newer Flow builders.

Screen flow improvements

Data Table now Generally Available (GA)

In Winter ‘23 we released the Beta version of our Data Table component and we’re taking it across the finish line in Spring ‘23! Some of the notable new features include:

  • Ability to preview the data table and its columns in the screen builder
  • Improvements to configuration accessibility
  • Updated configuration panel in Flow Builder to make things easier to understand and set up
  • Support for composite fields like Name and Address—no need to add each one individually now!

Two new lookup options arrive in Spring ‘23

We’re introducing two new ways for Flow builders to create record lookup experiences in screen flows: lookup supported in record fields through Dynamic Forms for Flow, and Choice Lookup (Beta).

Lookup supported in record fields (Dynamic Forms for Flow)

Drag your object’s lookup fields directly onto your flow screen, which saves you oodles of time. Aside from the simple configuration, it also lets your users create records from within the flow—a hotly requested feature now made possible. Once the user creates the record, the lookup will automatically be populated with the new record.

Dynamic Forms for Flow Lookup Example

Choice Lookup (Beta)

In addition to Radio Buttons, Checklist Groups, and Picklist choice components, you can now represent your Flow choice options in a lookup format using the new Choice Lookup component. Flow builders have long asked for the ability to filter down a collection of records in a lookup based on the actions a user takes in their flow. Using a filtered collection choice set, you can now do something like show contacts only from a previously selected account in your flow.  

Choice Lookup Selection Example

Because this new component is powered by choices, you can also represent your object picklist fields in this new format with picklist choice sets, like the standard Account Type Picklist field:

Choice Lookup Picklist Example

The goodies don’t end there! One awesome behavior of Choice Lookup is that when a user clicks into the field, they’ll see all the available choices. This addresses a 23,000-point IdeaExchange post related to lookup fields on the platform.

Lastly, you’ll notice something different about the way you reference the selected value from a Choice Lookup compared to other choices like a Radio Group or Checkbox Group component. We’ve added the ability for users to explicitly choose between the selected choice’s label(s) or value(s).

Choice Lookup Value vs Label Selection

Many builders have encountered a key issue when they’ve referenced a choice in a formula—it would always return the choice’s label when it needed to return the choice’s value. Now you’ll have a choice between the two.

Which lookup experience do I choose?

With three different record lookup options, we’ll admit that choosing between the three could get confusing. Over time it’s our goal to converge functionality between Dynamic Forms lookup fields and Choice Lookup, but for now, here’s a helpful chart comparing the feature sets. 

Flow Lookup Comparison Matrix

Dynamic Forms for Flow—multi-select picklist support

We’ve now added multi-select picklist field type support to take full advantage of the record type awareness feature we built last release in Winter ‘23. Before this release you would’ve needed to set up a Checkbox Group component with a configured picklist choice set. Now all you need to do is drag over the multi-select fields from the Fields tab in your screen editor. 

You’ll also notice the multi-select experience differs quite a bit from a multi-select choice. Record field-based multi-selects mirror the multi-select experience found in record pages.

Record field multi-select experience

Record field multi-select experience

Multi-select picklist choice experience

Multi-select picklist choice experience

Make screen components react to each other with reactive screen components (Beta)

At long last our reactive screen components effort enters Beta! With reactive screen components, you’ll be able to build bigger, more engaging screens by configuring your screen components so that they react to a user’s actions on the same screen. 

Previously, for a component to react to changes in another component, you had to put them into separate screens or create large, monolithic custom components. For example, you’ll now be able to connect a Text input and feed the changes in the Text input to a custom data table to search for knowledge articles as user types. 

Reactive Components Beta - Searching Knowledge Articles Custom Example

This release marks the beginning of a slew of screen flow enhancements focused on flow interactivity. While the Pilot enabled custom Lightning component reactivity, the Beta now includes additional components like Text, Date, Date Time, Checkbox, and Number. Components made reactive during the Pilot should continue to work as before assuming they adhere to Lightning Web Component (LWC) flow screen component best practices. 

No code example

In this example using all standard components, I created a “Contact Quick Edit” flow that lets the user select and edit a set of contacts from a data table. Whenever the user selects a row, the selected row’s details get passed into supported inputs on the same screen. Here we pass in the selected row’s details to a set of Address, Name, Date, and Text inputs.

Reactive Components Beta - Searching Knowledge Articles Out of the Box Example

Developers and admins will be able to use more modular, reusable components that can communicate with each other. In Addition, developers can offload simple UI elements to Flow while focusing on the complexity and value of their own custom components. 

Before, developers and admins would have needed to create giant screen components in order to achieve the same level of inter-component communication, which hindered reusability.  

Opt into the Beta

You can opt in to the Beta by enabling the permission in Process Automation Settings.

Reactive Components Beta - Opt In

Supported ‘reactive’ components in Spring ‘23

  • Text
  • Date
  • Date Time
  • Checkbox
  • Number
  • Password
  • Currency
  • Data Table
  • Email
  • Name
  • Address
  • Slider
  • Toggle
  • Custom LWCs**

**Component must be designed to track change events from Flow as outlined here.

Note that choices, formulas, display text, and record fields (Dynamic Forms for Flow) are not yet reactive, but are high on our list of things to support. 

Stay tuned for a more in-depth best practices guide for wiring up your custom LWCs to be reactive.

Join the Reactive Screen Components group in the Trailblazer Community to discuss use cases, check out reactive custom components, and get updates from the Product team.

Record-triggered flow improvements

Process Builder migration tool now available

You can now convert many of your Process Builder processes to Flow using the new migration tool. Check out these three easy steps to move your processes to Flow:

1. Select your process you want to convert.

Step 1 Convert Process Builder - Select a Process

2. Select the process’s criteria nodes that you want to move to Flow.

Step 2 Convert Process Builder - Select Nodes

3. Test and edit your flow.

Final Step in Converting a Process to Flow

We heavily recommend you make edits to the converted flows, such as changing element and resource names and descriptions to make the converted flow more human-readable.  

For example, the flow converted here uses auto-naming for a formula resource that sets a case description, but it could use a little human love: 

Converted Process Builder Formula Example

Orchestrator improvements

Record-triggered orchestrations added to the ‘New Flow’ modal

Creating a new orchestration is now far more discoverable. We’ve added record-triggered orchestrations to the ‘New Flow’ modal that appears when creating a new flow. If you need to access an autolaunched orchestration, you can still access that through the All + Templates tab.

New Record-Triggered Orchestration Option in New Flow Modal

Work Guide mobile support arrives

The Work Guide component is now viewable on phones and tablets, which ensures your users’ running orchestrations can now participate in an orchestration on the go.

Orchestrations as templates

Need to reuse an orchestration? You can now save orchestrations as a template so your users or customers don’t have to start from scratch.

Screen flows in Slack goes GA

The ability to run flows in Slack is now GA! Here’s a Getting Started guide.

MuleSoft integration

With the new MuleSoft Services page in Setup, you can now connect directly to the Anypoint Platform with a simple login, then use this connection to discover and register REST APIs from your Anypoint Platform as an External Service.

This makes the process of connecting to the Anypoint Platform significantly easier and faster, which saves you countless steps.

New Mulesoft Services Setup Page

Other improvements

Fuzzy search for an individual with the Search Individual action

Our friends in Service Cloud released an excellent action called Search Individual as part of their improvements to linking unknown callers to a case and a Salesforce contact or lead. This new action allows you to perform a fuzzy search for contact, lead, and individual records and then display those results in something like a data table. From there, you can use the record(s) the user selected to then relate them to a case, account, or an opportunity as an example. 

The action outputs a collection of IDs, so be sure to use that IN operator to convert it to a record collection before you throw the results into something like a data table.

Search Individual Action Example

See these new features in action!

Don’t forget to tune in to the Spring ’23 Release Readiness Live: Admin Preview on January 20, 2023, to see demos of a subset of these new, exciting features. Add the broadcast to your calendar today! And be sure to check out the Learn MOAR Spring ’23 for Admins Trailmix and follow along on the blog this week for more Learn MOAR!

More Learn MOAR

Flow Enhancements Summer '24.

Flow Enhancements | Summer ’24 Be Release Ready

Summer ’24 is almost here! Learn more about new Flow Builder enhancements like the Automation App, Action Button (beta), and more, and check out Be Release Ready to discover more resources to help you prepare for Summer ’24.  Want to see these enhancements in action? Salesforce product manager Sam Reynard and I will demo some […]

Be Release Ready Spring '24 | The Ultimate Guide to Prompt Builder.

The Ultimate Guide to Prompt Builder | Spring ’24

Artificial intelligence (AI) is not a new concept to Salesforce or to Salesforce Admins. Over the years, Salesforce has empowered admins with a user-friendly interface for the setup and configuration of predictive AI features such as Opportunity Scoring, Lead Scoring, Einstein Bots, and more. The introduction of generative AI in Salesforce brings even more possibilities […]