Input and Output Parameters for Child Flows in Power Automate

In this post, I will look at the input and output parameter types for child flows. Recently I hit a couple of small issues with the various data types that are worth sharing.

Various Input and Output Parameter Types

For both the Manually trigger a flow trigger and its input parameters, and the Respond to a Power App or flow action and its output parameters, we will find that we have 6 different input and output parameter types.

  • Text
  • Yes/No
  • File Content
  • Email
  • Number
  • Date
The 6 types of Input Parameters for the Manually trigger a flow action
The 6 types of Input Parameters for the Manually trigger a flow action

This now means that we can call this child flow with the parameters configured in our child flow. Below is an example.

Input parameters set in a parent flow
Input parameters set in a parent flow

You will notice that there is now option to push an object or an array into the child flow. But this limitation is easily resolved by using either the File Content or Text input type.

This can help a lot if you want to query data from your parent flow inside your child flow. Using json queries is a lot easier than passing in lots of parameters. Alternatively you can also get your child flow to re-query your datasources.

Did you know that if you pass the output from a SharePoint Get Items into a Text or File Content parameter, that the object remains an object inside the child flow?

Input and output parameters in Power Automate's child flow
Input and output parameters in Power Automate’s child flow

However the output parameters of the Respond to Power App or flow action are less user friendly. As shown in the below screenshot, the text output parameter has turned into text.

Output Parameter showing json as text
Output Parameter showing json as text

And once we take the data from the text output parameter in our parent from, we will still have text. This of course is quite easily resolved using the json function in the parent flow.

Convert text back to json
Convert text back to json

Handling null values in input and output Parameters

When I run my parent flow and I’m feeding every property with a null expression, then I will find that all six properties happily accept the null values. My flow runs and it looks like all is good.

Null values in the input parameters
Null values in the input parameters

If however I look at the output of my child flow some of the properties kept the null values whereas other output parameters. It look like only the yes/no and number parameters keep the null values as null. Now this is not immediately a major issue however when you use Child flows and you test the values equals(data, null) may not give you the expected result on test, file, email and date output parameters.

null values turned into empty strings
null values turned into empty strings

Data type validation

When we enter data into our input parameters there is some validation on the data types. However not for all data types. As you can see below, at run time there is no validation at all. An invalid date was accepted and also a text value was happily accepted within the number field.

Data validation in input and output parameters
Data validation in input and output parameters

Additionally the number entered in the text field was turned into a text. All these issues aren’t really a problem as we can handle them, however it is important to be aware of these issues if you want to avoid unexpected results in your flows.

Make fields optional

The Make the field optional option can be useful if you don’t want to be forced by the flow to add any data. This can be useful, however we have seen earlier that null values would also work.

Screenshot showing input fields for a flow with options for Text, Yes/No, File Content, and Email, including options to make fields optional and to add a multi-select or drop-down list.
Input and Output Parameters for Child Flows in Power Automate 1

The option to make a field optional is available for all input parameters on the trigger however the output on the respond action does not support this. To make the output optional you might need to either use the premium response action or the earlier mention option to use JSON in a text field.

Like the following two options these additional settings on parameters can also be useful if you have users starting a flow manually. With the introduction of the Child flows you would almost forget that manually started flows is a thing.

Add a multi-select list of options

The Multi select gives users a number of options available to select. The Multi-select allows the user to select multiple of the offered options.

Add a drop-down list of options

The drop down list works the same as the multi-select, however you can only select one option from the dropdown.


Discover more from SharePains

Subscribe to get the latest posts sent to your email.

Related Posts

2 thoughts on “Input and Output Parameters for Child Flows in Power Automate

  1. I’ve got an “issue” as well with the Date setting. I was using it with a date and time, and while testing my flow, I setted the date/time value I wanted for my test. Nothing goes wrong, the flow runs as expected.
    This was a child flow, and when I tried to call him from my parent flow with date/time value, It failed. That’s because a date parameter is not a date/time parameter. In my tests, I never noticed but the time part was simply removed at run time whithout any warning so when I thought I was testing with date/time parameter I was just testing with date part of the setting….
    I had to use a text setting and transforming into datetime whith formulas

    1. As a datetime value is often represented as text anyway, I would expect that you could use the Text Input property type.

      I did some further investigation and the date input accepted any date formats. Of course if you don’t use the standard date formats the rest of your flow may struggle to process the data and time. I’m happy to have a look at your issue in more detail if that helps. Please feel free to open a chat.

Leave a Reply

This site uses Akismet to reduce spam. Learn how your comment data is processed.