Deep link microflow not found

Q: The microflow doesn’t show up in the deep link configuration, even after refresh list (meta data). What went wrong?

A: There are a number of reasons why a microflow might not show up in the list of microflows. Verify if

  1. the microflow is part of the deployed package (compare revision numbers)
  2. “refresh list” action runs without errors (check logs)
  3. the microflow only has string or an object as parameters

The documentation isn’t really clear about the last item. But upon inspecting the Java Action used to create the list of available microflows, I noticed it only accepts microflows which have string or object input parameters. Any microflow with a boolean or integer (or other parameter type) as input parameter will be skipped.

But, but… it worked in the test-environment but I can’t find in production? I’ve been there as well…an earlier version of the microflow was probably deployed for testing. The list of microflows was synched while the microflow only had string or object parameters. Which works. In a later revision other parameter(s) where probably added. A deep link microflow with a boolean as input parameter can work. For example, a deep link with a boolean parameter discount will be handled correctly in the deep link microflow https://www.myapp.com/link/buy?productid=123&discount=true. The microflow just doesn’t show up in the select microflow list if you refresh it. Change the parameter to a string and handle the conversion from string to microflow in the deep link microflow.

Note: the deep link module does not depend on MxModelReflection, so you don’t need to do a sync in MxModelReflection.