How to use the "Save to Parameter" workflow activity

This how to explains what you can do with the Workflow Activity "Save to Parameter". We cover the following topics: 

  • How to store and evaluate JSON objects
  • Handling errors and outcomes
  • Parsing outputs within a MS Power Automate flow

Show Icon Legend

💡 = A hint to signal learnings, improvements or useful information in context. 🔍 = Info points out essential notes or related page in context.
☝ = Notifies you about fallacies and tricky parts that help avoid problems. 🤔 = Asks and answers common questions and troubleshooting points.
❌ = Warns you of actions with irreversible / data-destructive consequence. ✅ = Intructs you to perform a certain (prerequired) action to complete a related step.
 
 

Examples on what to store using Save to Parameter activity in the workflow

Description
Workflow

The simplest way of using the element is simply adding a string value to it's contents.

You can also use JSON object notation within "Save to Parameter",for example to store more information about your caller:

{
 "DisplayName": "Eva Example",
 "IVR_LanguageChoice": "EN",
 "IVR_CustomerNo": "123456",
 "IVR_Choice": "Helpdesk Service"
}

You can also use your custom Parameters or Nimbus own System Fields like $(Customer.DisplayName) and include their values as well. This approach can be combined with the JSON object to create powerful dynamic structures:

{
 "DisplayName": $(Customer.DisplayName),
 "IVR_LanguageChoice": "EN",
 "IVR_CustomerNo": "123456",
 "IVR_Choice": "Helpdesk Service"
}

 

Using arrays you can create entire sets of data within a single parameter. After a completed IVR path, store each IVR question together with the customer's response for example.

[
{
 "question": "Please rate our service from 1 to 5 stars.",
"response": "$(CustomContextParameters.CustomerSatisfaction)"
},
{
"question": "Are you happy with the service?",
"response": "Yes"
}
]

With this approach you can - for example - catch different user choices and catch error outcomes to handle within your workflow.

You can also use Array object notation within "Save to Parameter". This is useful, if you need to announce its values to a caller using the Announcement workflow activity. with text to speech.

The announcement will read all entries of the array. In this example it will say: We call you back in the "Morning, between seven and twelve o'clock".

☝ The Announcement doesn't work on JSON entries, it would simply say "Empty".

 

Parsing parameters in Power Automate

🔍 The next steps continue in our Microsoft Power Automate Connector. Refer to the chapters Flow Actions and Trigger Events for more details.

Description
Power Automate

Certain Workflow Activities such "Save to Parameter" cause a "ParameterUpdated" Trigger Event.

  • By adding the the GetOnUpdatedTasks Trigger in your flow you can react to this ParameterUpdated event.

While listening to the ParameterUpdated event, always start by a verification that the parameter was the one you expected.

  • Use a Condition element and check on UpdatedParameterName is equal to "<YourParameterName>".

Expecting the correct parameter, the condition is TRUE:

  • Add a " Parse JSON " element to the flow IF TRUE branch and click on "Generate by example data".
  • You can copy the values from the Save to Parameter activity of the workflow. → Flow will now know which JSON Payload to expect.

☝ Be aware that you need to have string values for each entry in your payload.

  • If you have been using the Parameters like $(Parameter.Parameter), fill the space with an empty string "".
  • Repeat this for all parameters in your JSTON payload so only "" remains.
  • Then click on "Done".

💡 Power Automate has done the job of creating a simple JSON schema for you.

Now you can comfortably use the parsed object further in your flow, accessing its single values through the Dynamic content viewer.

The steps above are just mark the starting point for your flows. From here on out you can realize your own ideas. Here are some pages to get you started:

 

Table of Contents