Adventures with Logic Apps: Handling Optional Query Parameters

Logic Apps

Ran into an interesting issue challenge with Logic Apps.

My Logic App sometimes takes a query parameter called planId.

I use the value of planIdto determine whether I should Insert or Update a record in a database.

If planId is not provided the statement triggerBody()['queries]['planId'] generates an exception.

This was very frustrating to figure out how to get around this.

Thankfully, I stumbled across an article at https://social.msdn.microsoft.com/Forums/en-US/6ef38571-9fac-482a-81c7-50289d14e959/how-to-access-query-parameter-in-logic-app which pointed me in the direction of the fix.

It was pretty simple.

I just needed to add a couple of ? to the expression, so my original expression,triggerBody()['queries]['planId'], should be changed to triggerBody()?['queries]?['planId'].

Those ? are the key.

This will allow the parameter string and parameter to be missing and the code to not generate an exception.

Hope that helps!


Discover more from Matt Ruma

Subscribe to get the latest posts sent to your email.

Leave a Reply

Your email address will not be published. Required fields are marked *