I am planning to add a few Flows to my Managed Packages. E.g.:
Record Triggered Flow
Templates that detects certain conditionsScreen Flows
that defineUI for Slack
notifications sent out from 1.)
Especially the Slack part of Flow depends heavily on hardcoded and org specific information like app, channel, user ids.
That is a problem because:
- I need to harcode values for development and testing
- I cannot hardcode that into the packaged flow because it will not work in the subscriber org
- I don't want my customers to adjust 1001 little fields in my flows after installation
- I must assume that my subscriber don't have Slack setup when installing my package
I am now looking for a way to streamline and minimize manual post install steps and also secure my Flow IP a bit.
What are ways to do that? I thought about:
Tooling
orMetadata API
to update the flows- Variables in Flow populated via
Custom Metadata Types
that change from org to org - A Post Install Assistant that adjusts the flow from a nice custom UI
$Setup
expressions in flow formulae. Probably similar for CMT?{!$Setup.namespace__Settings_Name__c.namespace__Settings_Field__c}
to get a value. No fake values here. First class usage of custom setting fields in flow formulae.