Sneak Preview: Flow in Summer ’23

Here’s a preview of what’s coming for Flow in Summer ’23!

HTTP Callout Actions Now Support POST as well as GET

A beta implementation of POST is available, and the GET functionality is now GA. As you can see below on the left, with POST you provide a sample request along with a sample response. The image on the right shows how Flow Builder attempts to guess the appropriate types but also lets you apply overrides.

Saving a new HTTP Callout generates an External Service and creates a new Apex Type for both your input data structure and your output data structure. For the most part, all you need to know about that is that it means that your callout will be reusable and will show up in the Action picker.

To make POST work in Summer ’23 you have to prepare the data that gets handed to your POST action. You start by manually creating a record variable of the appropriate type:

You then populate this with data using Assign elements and pass it into the single Body input of the resulting Action:

In future releases, this will get smoothed out. The action will automatically present the inputs it allows and you won’t have to create a variable.

Reactive Screens gain Reactive Formulas

Reactive screens picks up an important new feature: you can incorporate formulas into your reactive calculations. This flow screen is detecting inputs from a variety of screen components and reactively recalculating the monthly payment:

Here you can see how the information flows:

Here’s some overall detail:

Keep in mind these considerations:

Reactive Formula Considerations

General Considerations

and also keep in mind that you need to activate the Beta in Process Automation Settings:

Finally keep in mind that your existing flows will NOT SHOW REACTIVE BEHAVIOR unless you save them with the API version set to 58 or higher.

Choice Lookup is GA: Use your Choice Sets with a new Searchable Choice Lookup Component

You can add the new Choice Lookup component to a Flow screen and provide it with any of the available choice sets.

That means:

  • Pair it with a Record Choice Set to provide a searchable lookup of any filtered set of records
  • Pair it with a set of manual Choice resources for maximum control
  • Pair it with a Picklist Choice Set to provide a searchable picklist lookup
  • Pair it with a Collection Choice Set to provide a searchable interface to any collection of records you compile in your flow.

The existing Lookup component remains available for use in exposing Lookup record fields in Flow screens. In addition, you can directly access Lookup fields via the Dynamic Forms for Flow feature in the Screen Element that lets you select a record variable and then drag fields onto the canvas from it. For advanced use cases beyond these, such as displaying choices as rich text tiles, consider the unofficial Quick Choice component.

Note that Choice Lookup with a Record Choice Set has some characteristics missing from the standard page layout Lookup control experience. Choice Lookup offers the entire set of objects, as opposed to the normal Lookup control, which only shows a few at a time.

Traditional Lookup Experience

Choice Lookup with a Record Choice Set

Enhancements to Data Tables

Data Table loading and scrolling has been enhanced to support large data sets with high performance. This has three aspects:

  1. There’s an absolute limit of 1500 rows shown in a table at one time, up from 200.
  2. Additionally, you can pass a datatable a larger set of data. if you do, the first 1500 will be shown along with the total count
  3. To facilitate viewing of larger sets of data, there’s a new search bar that can be used to filter down a large set so that everything specified by the filter is visible.

The search bar is toggle-enabled:

Long Awaited Email Enhancement 1: Track Email Sends in Activity History

Emails can be automatically logged to a record’s Activity Timeline when using the Send Email action. You can log an email to a person record, including leads, contacts, and person accounts. You can also log the email to a related record of your choice, like an account or opportunity.

Note: Logging emails with the Send Email action causes the send to use a different internal process, which causes a different daily email-sending limit to be used. More details to follow.

This feature retires an 82,000 point Idea Exchange item:

Long Awaited Email Enhancement 2: Use Lightning Email Templates

You can now provide the ID of a Lightning Email Template to your Send Email action. If you do, the Body and Subject fields on the Send Email action will be ignored in favor of the template. Email Templates are based on a context record referred to as a Related Entity Type:

When configuring your Send Email action, in addition to setting the ID of the chosen template, make sure to provide at least one value for the new Recipient ID and Related Record ID. These will be used to fill the template’s merge fields.

In the example below, to send an email to a contact using an email template with Contact and Account object merge fields, set Email Template ID to the ID of the email template to use (1). Then, set Recipient ID to the contact record’s ID (2) and Related Record ID to the related account record’s ID (3).

Note: Using email templates in the Send Email action changes the API called by the action, which can impact your daily email-sending limits.

Draft Mode Rollout Begins

Draft Mode is now available in a handful of elements that have implemented the new panel-based property editor. In Summer ’23, this includes:

  • Interactive Step in Flow Orchestration
  • Background Step in Flow Orchestration
  • Mulesoft Step in Flow Orchestration
  • Start Element for the Scheduled, Segment-Based Trigger Type (Starter Edition only)
  • Send Email Message (This is the new Data Cloud version found in Starter Edition only)

Draft-mode enabled property editors slide open from the side of the screen as opposed to popping up as a modal dialog box. Unlike dialog boxes, they do not need to be complete (passing all validation) in order for the flow to be saved. This means that elements can be added to a flow and left incomplete. At activation time, it will be necessary for all validation errors to be resolved.

In the example below, this flow can be worked on and saved without filling in the required Action field:

Work continues to rollout Draft Mode and panelized property editors to all remaining elements.

Try Out New Flow Features in the New Marketing Application in Starter Edition

The Flow team has been working with the Marketing Cloud team to enhance Marketing use cases with Flow-powered journeys. Some of that is beginning to roll out in the newly renamed Starter Edition of Salesforce in Summer ’23 (This is the edition that previously was named Salesforce Easy and before that Salesforce Essentials).

Check out the impressive range of new flow features in the new marketing application. Many of these will migrate quickly to the rest of Salesforce editions. These features include:

  • New simplified Wait Elements
  • ‘Citizen Builder’ mechanisms that let a non-Admin build flows under controlled circumstances
  • Enhanced Status values for tracking long-duration flows
  • A new schedule-driven trigger that works with Data Cloud segments
  • A new email action that consumes Data Cloud segments and provides AI-based send-time optimization

Flows available outside of Setup

Marketing Email Send Action with Einstein

New Flow List View with Progress Status

Batch Processing of Data Cloud Segment Members

Flow-Based Marketing Journeys

New Simple Wait Elements

Learn more here.

Flow Builder Canvas is More Compact & Less Crowded

Icons have less white space between them in Autolayout mode. In addition, Add Element buttons now normally appear as a tiny circle and only expand to their full size upon hover:

A third change to the canvas: icon colors are updated to have higher contrast to make it easier for sight-impaired trailblazers to use Flow.  This is per WCAG 2.1 standard.

Screen Flows that Run in Slack Now Support Multi-Select Picklists

If you create a screen flow with a Multi-Select Picklist field :

…it will function properly when executed in Slack:

Process Builder Migration Supports Scheduled Actions

The Migrate to Flow tool will now migrate Scheduled Actions inside of Process Builder to Scheduled Paths inside of Flow.

Migrate to Flow tool will migrate the scheduled action as long as only one row of criteria is selected. This allows for the PB decision element to be migrated to an entry condition which will ensure the Scheduled Path runs correctly. If multiple rows are selected, only the immediate paths will be migrated, and a user will receive a warning to that effect.

Best Practices

We’ve heard from many admins that putting Scheduled Actions/Paths in their own Flow is a best practice, since that allows for better administration and naming, and to keep it running independently. It’s not required but it is encouraged when migrating to Flow.

Creation of new Process Builder Processes Has Been Disabled

The Next Step on the Path to End of Life for Workflow Rules and Process Builder

We successfully disabled the Create New Workflow Rules button last year and are now applying the same treatment to Process Builder. This is to encourage customers to make their investments in our most supported, most strategic technology: Flow.

What Will and Won’t Work

The “New” button is removed from the UI so an admin creating a new process will be impacted. The “clone as a new process” is also removed.

Existing processes can be edited, activated, deactivated, and have new versions created, so admins can still manage all their existing automation.

The API has not been touched, so admins doing CI/CD or migrating between orgs or sandboxes will also not be impacted.

Developer Edition orgs will not be impacted.

Flow Orchestration gets Automatic Resource Refresh

Orchestrations are based on frequent pause and resume, reflecting their usage as a process coordinator over periods of time. Previously, when an orchestration resumed it would use any resource values that it had stored from the last time it ran. But this raises the possibility of using an obsolete value. Now, every time the orchestration resumes, all variables including $record will be fully in sync with your Salesforce DB (with the exception of $Record_Prior, which remains untouched).

Add Mulesoft Steps to Flow Orchestrations

This powerful new step let you call a MuleSoft API and process the response in a later step.

All Mulesoft assets in Anypoint & RPA are accessible.

Mulesoft Composer will be added later this year.

Enhanced Mulesoft Integration into Flow

We’ve made it easier to connect to, authenticate and import Mulesoft API endpoints from within Salesforce

Mulesoft shows up as a 1st class Setup service:

…and you can directly log into Mulesoft….

…and select the API’s that you want to use in Flow Builder: