Make Flows Respect Access Modifiers for Legacy Apex Actions (Critical Update)

With this critical update enabled, developers can trust that their legacy Apex actions are properly protected and available only to other components in their managed packages. This update makes a flow fail if it contains a public legacy Apex action.

Where: This change applies to Lightning Experience and Salesforce Classic in Essentials, Professional, Enterprise, Performance, Unlimited, and Developer editions.

Why: This update resolves an issue where flows don’t respect the public access modifiers for legacy Apex actions. The issue affects only legacy Apex actions that reference Apex classes installed from managed packages.

Legacy Apex actions were formerly known as Apex plug-ins. When you define an Apex class that implements the Process.Plugin interface in your org, it's available in Flow Builder as a legacy Apex action.

Note

Note

For new Apex integrations, we recommend using the InvocableMethod annotation instead of the Process.Plugin interface. This update doesn't affect invocable Apex methods.

With this update enabled:
  • Flows fail when they execute public legacy Apex actions.
  • Public legacy Apex actions aren't available in Flow Builder.
  • Global legacy Apex actions with public describe or invoke methods are unavailable to flows in a different namespace.

Without this update, 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.

When: This critical update begins auto-activating on August 15, 2020.

How: We recommend that you test this update in a sandbox or developer org before activating the update in production. If you must work in your production org, do so during off-peak hours. Test all paths that contain legacy Apex action elements and make sure your flows work correctly. If a legacy Apex action is important for a business process but isn’t supported with this update, contact the package developer. The developer can consider making a legacy Apex action global, or rebuilding the functionality in a new Apex class.

To activate this update, from Setup, enter Critical Updates in the Quick Find box, and select Critical Updates. For Make Flows Respect Access Modifiers for Legacy Apex Actions, click Activate.