Parse additional info to get key value pair from alert record and store it in a variable

Ash34
Giga Contributor

Hello Folks,
I'm new to service now. I'm trying to create a flow where the trigger is from an alert. 

In the additional information of the alert, there is a key/value pair that I want to store as a variable and then use in an Action.

Additional info JSON: 

{

name: "ashutosh",

id: "1234"

}

I want to extract the id and store it in a variable. Then, use that variable in an API call (action). If someone can provide me detailed steps as I'm very new to this platform would be nice. 

1 ACCEPTED SOLUTION

Ash34
Giga Contributor

Here is how I achieved it:

  1. In the sub-flow added an input variable and label as id of type string.
  2. In the action of rest API, I also created input variable and named it the same as the above.
  3. From the flow designer, there was an option to add a script, the key was very hard for me to find. I have highlighted the green box.
    find_real_file.png
  4. After press that button, we need to add the below javascript code provided by @Ankur Bawiskar. But we had to get to our records which were hard to find in the first line. Note: if you are trying to parse some other variable than additional_info, change it accordingly. Try to use auto-completion.
    var str = fd_data.trigger.current.additional_info;
    var obj = JSON.parse(str);
    var id = obj.id;
    return id;​
  5. Finally test the flow. It works like a charm.

View solution in original post

21 REPLIES 21

Hi,

Glad to know that you followed the approach I shared.

So you can use output of the sub-flow in the REST Step

please share screenshots of the sub-flow and the REST step used in main flow

Regards
Ankur

Regards,
Ankur
✨ Certified Technical Architect  ||  ✨ 9x ServiceNow MVP  ||  ✨ ServiceNow Community Leader

I was able to create input in the rest API action and use that from the flow.

Ash34
Giga Contributor

Here is how I achieved it:

  1. In the sub-flow added an input variable and label as id of type string.
  2. In the action of rest API, I also created input variable and named it the same as the above.
  3. From the flow designer, there was an option to add a script, the key was very hard for me to find. I have highlighted the green box.
    find_real_file.png
  4. After press that button, we need to add the below javascript code provided by @Ankur Bawiskar. But we had to get to our records which were hard to find in the first line. Note: if you are trying to parse some other variable than additional_info, change it accordingly. Try to use auto-completion.
    var str = fd_data.trigger.current.additional_info;
    var obj = JSON.parse(str);
    var id = obj.id;
    return id;​
  5. Finally test the flow. It works like a charm.

@Ash 

Did you mistakenly marked your own response as correct?

Would you mind the response which helped/guided you in right direction as correct so that member gets credit and recognition.

Regards
Ankur

Regards,
Ankur
✨ Certified Technical Architect  ||  ✨ 9x ServiceNow MVP  ||  ✨ ServiceNow Community Leader

@Ankur Bawiskar Your response was helpful but was missing a key element which was 

var str = fd_data.trigger.current.additional_info;

A newbie like me would have completely missed it or could have never got it done. I saw this on another forum which helped me get the variable.

What we can do is, you can copy my detailed answer, I will mark that as complete this way you get your credit for helping me and other users get the exact answer. 🙂

Let me know what you think about this.