web
You’re offline. This is a read only version of the page.
close
Skip to main content

Notifications

Announcements

Community site session details

Community site session details

Session Id :
Power Platform Community / Forums / Power Automate / Format into proper JSO...
Power Automate
Unanswered

Format into proper JSON structure

(0) ShareShare
ReportReport
Posted on by 240

Hi Folks,

 

I have a bit complicated array structure, I need to format that into a proper JSON Structure,

"elements": [
{
"formResponse": {
"answers": [
{
"question": "urn:li:adFormQuestion:(urn:li:adForm:6384623,6)",
"question~": {
"name": "Work email"
},
"answerDetails": {
"com.linkedin.ads.TextQuestionAnswer": {
"answer": "ar1975@gmail.com"
}
}
},
{
"question": "urn:li:adFormQuestion:(urn:li:adForm:6384623,1)",
"question~": {
"name": "First name"
},
"answerDetails": {
"com.linkedin.ads.TextQuestionAnswer": {
"answer": "Ghoghe"
}
}
},
{
"question": "urn:li:adFormQuestion:(urn:li:adForm:6384623,2)",
"question~": {
"name": "Last name"
},
"answerDetails": {
"com.linkedin.ads.TextQuestionAnswer": {
"answer": "Manta"
}
}
},
{
"question": "urn:li:adFormQuestion:(urn:li:adForm:6384623,3)",
"question~": {
"name": "Country/Region"
},
"answerDetails": {
"com.linkedin.ads.TextQuestionAnswer": {
"answer": "Romania"
}
}
},
{
"question": "urn:li:adFormQuestion:(urn:li:adForm:6384623,4)",
"question~": {
"name": "Job title"
},
"answerDetails": {
"com.linkedin.ads.TextQuestionAnswer": {
"answer": "Taxi Driver"
}
}
},
{
"question": "urn:li:adFormQuestion:(urn:li:adForm:6384623,5)",
"question~": {
"name": "Company name"
},
"answerDetails": {
"com.linkedin.ads.TextQuestionAnswer": {
"answer": "TAXI SPEED"
}
}
}
],
"consentResponses": [
{
"accepted": false,
"consent": "urn:li:adFormConsent:(urn:li:adForm:6384623,0)"
}
]
}
},
{
"formResponse": {
"answers": [
{
"question": "urn:li:adFormQuestion:(urn:li:adForm:6384623,6)",
"question~": {
"name": "Work email"
},
"answerDetails": {
"com.linkedin.ads.TextQuestionAnswer": {
"answer": "perr@gmail.com"
}
}
},
{
"question": "urn:li:adFormQuestion:(urn:li:adForm:6384623,1)",
"question~": {
"name": "First name"
},
"answerDetails": {
"com.linkedin.ads.TextQuestionAnswer": {
"answer": "alxandra"
}
}
},
{
"question": "urn:li:adFormQuestion:(urn:li:adForm:6384623,2)",
"question~": {
"name": "Last name"
},
"answerDetails": {
"com.linkedin.ads.TextQuestionAnswer": {
"answer": "petror"
}
}
},
{
"question": "urn:li:adFormQuestion:(urn:li:adForm:6384623,3)",
"question~": {
"name": "Country/Region"
},
"answerDetails": {
"com.linkedin.ads.TextQuestionAnswer": {
"answer": "Romania"
}
}
},
{
"question": "urn:li:adFormQuestion:(urn:li:adForm:6384623,4)",
"question~": {
"name": "Job title"
},
"answerDetails": {
"com.linkedin.ads.TextQuestionAnswer": {
"answer": "Sales Consultant"
}
}
},
{
"question": "urn:li:adFormQuestion:(urn:li:adForm:6384623,5)",
"question~": {
"name": "Company name"
},
"answerDetails": {
"com.linkedin.ads.TextQuestionAnswer": {
"answer": "opica"
}
}
}
],
"consentResponses": [
{
"accepted": false,
"consent": "urn:li:adFormConsent:(urn:li:adForm:6384623,0)"
}
]
}
},
{
"formResponse": {
"answers": [
{
"question": "urn:li:adFormQuestion:(urn:li:adForm:6384623,6)",
"question~": {
"name": "Work email"
},
"answerDetails": {
"com.linkedin.ads.TextQuestionAnswer": {
"answer": "andreamsu@gmail.com"
}
}
},
{
"question": "urn:li:adFormQuestion:(urn:li:adForm:6384623,1)",
"question~": {
"name": "First name"
},
"answerDetails": {
"com.linkedin.ads.TextQuestionAnswer": {
"answer": "Anda"
}
}
},
{
"question": "urn:li:adFormQuestion:(urn:li:adForm:6384623,2)",
"question~": {
"name": "Last name"
},
"answerDetails": {
"com.linkedin.ads.TextQuestionAnswer": {
"answer": "Ros"
}
}
},
{
"question": "urn:li:adFormQuestion:(urn:li:adForm:6384623,3)",
"question~": {
"name": "Country/Region"
},
"answerDetails": {
"com.linkedin.ads.TextQuestionAnswer": {
"answer": "Romania"
}
}
},
{
"question": "urn:li:adFormQuestion:(urn:li:adForm:6384623,4)",
"question~": {
"name": "Job title"
},
"answerDetails": {
"com.linkedin.ads.TextQuestionAnswer": {
"answer": "SEO Project Manager"
}
}
},
{
"question": "urn:li:adFormQuestion:(urn:li:adForm:6384623,5)",
"question~": {
"name": "Company name"
},
"answerDetails": {
"com.linkedin.ads.TextQuestionAnswer": {
"answer": "DWF - Genuine SEO Agency"
}
}
}
],
"consentResponses": [
{
"accepted": false,
"consent": "urn:li:adFormConsent:(urn:li:adForm:6384623,0)"
}
]
}
},
{
"formResponse": {
"answers": [
{
"question": "urn:li:adFormQuestion:(urn:li:adForm:6384623,1)",
"question~": {
"name": "First name"
},
"answerDetails": {
"com.linkedin.ads.TextQuestionAnswer": {
"answer": "Gabriel"
}
}
},
{
"question": "urn:li:adFormQuestion:(urn:li:adForm:6384623,2)",
"question~": {
"name": "Last name"
},
"answerDetails": {
"com.linkedin.ads.TextQuestionAnswer": {
"answer": "Pastrav"
}
}
},
{
"question": "urn:li:adFormQuestion:(urn:li:adForm:6384623,3)",
"question~": {
"name": "Country/Region"
},
"answerDetails": {
"com.linkedin.ads.TextQuestionAnswer": {
"answer": "Romania"
}
}
},
{
"question": "urn:li:adFormQuestion:(urn:li:adForm:6384623,4)",
"question~": {
"name": "Job title"
},
"answerDetails": {
"com.linkedin.ads.TextQuestionAnswer": {
"answer": "Owner"
}
}
},
{
"question": "urn:li:adFormQuestion:(urn:li:adForm:6384623,5)",
"question~": {
"name": "Company name"
},
"answerDetails": {
"com.linkedin.ads.TextQuestionAnswer": {
"answer": "goldenfishromania"
}
}
},
{
"question": "urn:li:adFormQuestion:(urn:li:adForm:6384623,6)",
"question~": {
"name": "Work email"
},
"answerDetails": {
"com.linkedin.ads.TextQuestionAnswer": {
"answer": "gabrielv@gmail.com"
}
}
}
],
"consentResponses": [
{
"accepted": false,
"consent": "urn:li:adFormConsent:(urn:li:adForm:6384623,0)"
}
]
}
},
{
"formResponse": {
"answers": [
{
"question": "urn:li:adFormQuestion:(urn:li:adForm:6384623,6)",
"question~": {
"name": "Work email"
},
"answerDetails": {
"com.linkedin.ads.TextQuestionAnswer": {
"answer": "cbn@outlook.com"
}
}
},
{
"question": "urn:li:adFormQuestion:(urn:li:adForm:6384623,1)",
"question~": {
"name": "First name"
},
"answerDetails": {
"com.linkedin.ads.TextQuestionAnswer": {
"answer": "Catalin"
}
}
},
{
"question": "urn:li:adFormQuestion:(urn:li:adForm:6384623,2)",
"question~": {
"name": "Last name"
},
"answerDetails": {
"com.linkedin.ads.TextQuestionAnswer": {
"answer": "Bejan"
}
}
},
{
"question": "urn:li:adFormQuestion:(urn:li:adForm:6384623,3)",
"question~": {
"name": "Country/Region"
},
"answerDetails": {
"com.linkedin.ads.TextQuestionAnswer": {
"answer": "Romania"
}
}
},
{
"question": "urn:li:adFormQuestion:(urn:li:adForm:6384623,4)",
"question~": {
"name": "Job title"
},
"answerDetails": {
"com.linkedin.ads.TextQuestionAnswer": {
"answer": "Business Development Manager"
}
}
},
{
"question": "urn:li:adFormQuestion:(urn:li:adForm:6384623,5)",
"question~": {
"name": "Company name"
},
"answerDetails": {
"com.linkedin.ads.TextQuestionAnswer": {
"answer": "Forston Development"
}
}
}
],
"consentResponses": [
{
"accepted": true,
"consent": "urn:li:adFormConsent:(urn:li:adForm:6384623,0)"
}
]
}
},
{
"formResponse": {
"answers": [
{
"question": "urn:li:adFormQuestion:(urn:li:adForm:6384623,1)",
"question~": {
"name": "First name"
},
"answerDetails": {
"com.linkedin.ads.TextQuestionAnswer": {
"answer": "Cristina"
}
}
},
{
"question": "urn:li:adFormQuestion:(urn:li:adForm:6384623,2)",
"question~": {
"name": "Last name"
},
"answerDetails": {
"com.linkedin.ads.TextQuestionAnswer": {
"answer": "Cristescu"
}
}
},
{
"question": "urn:li:adFormQuestion:(urn:li:adForm:6384623,3)",
"question~": {
"name": "Country/Region"
},
"answerDetails": {
"com.linkedin.ads.TextQuestionAnswer": {
"answer": "Romania"
}
}
},
{
"question": "urn:li:adFormQuestion:(urn:li:adForm:6384623,4)",
"question~": {
"name": "Job title"
},
"answerDetails": {
"com.linkedin.ads.TextQuestionAnswer": {
"answer": "Executive Coach"
}
}
},
{
"question": "urn:li:adFormQuestion:(urn:li:adForm:6384623,5)",
"question~": {
"name": "Company name"
},
"answerDetails": {
"com.linkedin.ads.TextQuestionAnswer": {
"answer": "Witfuse Solutions"
}
}
},
{
"question": "urn:li:adFormQuestion:(urn:li:adForm:6384623,6)",
"question~": {
"name": "Work email"
},
"answerDetails": {
"com.linkedin.ads.TextQuestionAnswer": {
"answer": "cristin@yahoo.com"
}
}
}
],
"consentResponses": [
{
"accepted": false,
"consent": "urn:li:adFormConsent:(urn:li:adForm:6384623,0)"
}
]
}
}

 

@abm you helped me on the previous structure, can you help me with this?

Categories:
I have the same question (0)
  • PowerUser0 Profile Picture
    240 on at

    "name " should be the heading of the CSV table, and "answer" would be the value under the respected question

    e.g. First Name , Last Name , Email, Company Name , Job title,, these should be the headers of csv table and all the answers will be the values under those header

  • Ellis Karim Profile Picture
    11,681 Super User 2025 Season 2 on at

    Hi @PowerUser0 ,

     

    Here is one possible solution. I've put the data from the elements array in an array variable:

    Snag_b808df8.png

    The varArray will be used to store the extracted data, and will be used to create the CSV or HTML table:

    Snag_b80dce3.png

     

    Loop trough each data item, and "reformat" the data:

    Snag_b812527.png

    The expressions used are:

    1: items('Apply_to_each')?['formResponse']?['answers']

    2: item()?['question~']?['name']

    3: item()?['answerDetails']?['com.linkedin.ads.TextQuestionAnswer']?['answer']

    4: json(slice(replace(string(body('Select')), '},{',','),1,-1))

     

    Create a CSV table:

    Snag_b81895f.png

    Create a HTML table:

    ekarim2020_0-1658408220278.png

     

    The runtime output:

    ekarim2020_1-1658408258620.png

    The runtime output showing the HTML table:

    ekarim2020_2-1658408280508.png

     

    Hope this helps.


    Ellis
    ____________________________________
    If I have answered your question, please mark the post as Solved.
    If you like my response, please give it a Thumbs Up.

     

     

  • PowerUser0 Profile Picture
    240 on at

    Hi @ekarim2020 

    Thanks for your quick response, all the expressions are working fine, but the last one is not working for me,

    here is the error screenshot

    PowerUser0_0-1658415356669.png

     

  • PowerUser0 Profile Picture
    240 on at

    @ekarim2020  Also, the order should be : 

    First NameLast NameEmail AddressCompany NameCountryLanguagePromotional Communication PreferencesProgram StatusPhone NumberJob Title

     

    How I can custom columns like phone number, Language if they are coming from other sources?

  • Ellis Karim Profile Picture
    11,681 Super User 2025 Season 2 on at

    Please check that you are using the Append to Array variable action:

    Snag_bf72901.png

     

    Ellis

  • Verified answer
    Ellis Karim Profile Picture
    11,681 Super User 2025 Season 2 on at

    The ordering of the data shouldn't matter as the data will be in CSV format and the CSV data has a header describing the column:

    Snag_c068f05.png

    If you really need  to order the data, the simplest way will be to add another Select action after the apply to each loop. Add your column names in the order you require them along with their expressions

    Snag_c0771a5.png

    >>How I can custom columns like phone number, Language if they are coming from other sources?

    I dont think there is going to be an easy way for you to merge multiple data sources into a single data source. Perhaps the best option could be to save each person record into a SharePoint list, then update each person record with data from the other sources.  The list would contain all the columns (fields) you need to populate and  update. You will need a way to identify each person in all your data sources, perhaps using the email address as the identifier?

     

    Ellis

  • Verified answer
    Ellis Karim Profile Picture
    11,681 Super User 2025 Season 2 on at

    Updated:  I realised I missed the Accepted property from the source data.

    I have added this below as expression (4):

    Snag_1029ab39.png

    The expressions used are:

    1: items('Apply_to_each')?['formResponse']?['answers']

    2: item()?['question~']?['name']

    3: item()?['answerDetails']?['com.linkedin.ads.TextQuestionAnswer']?['answer']

    4: items('Apply_to_each')?['formResponse']?['consentResponses']?[0]?['accepted']

     

    ekarim2020_0-1658486312551.png

     

    Snag_102dc611.png

    Ellis

  • PowerUser0 Profile Picture
    240 on at

    @ekarim2020  Thanks again for your help, I was able to get what I was trying to do.

    Thanks to this community where people like you are there who are explaining each step properly.

  • Verified answer
    Ellis Karim Profile Picture
    11,681 Super User 2025 Season 2 on at

    Here is a visual explanation of what is happening to the data, in the Select and Append to Array action:

    ekarim2020_0-1658570982038.png

     

    The replace function in the Append to array vaiable action:

     

     json(slice(replace(string(body('Select')), '},{',','),1,-1))

     

    achieves the following:

    ekarim2020_1-1658572112985.png

     

    Although the "Accepted" property is duplicated, there can only be one Accept property value in the JSON object for each person. This property will only appear once after the string is converted to a JSON object in step 4.

     

    Snag_1535dd59.png

    Snag_15361fa2.png

    This is the resulting string after the slice operation:

    ekarim2020_2-1658572569717.png

     

     

    This is the resulting JSON object:

    ekarim2020_3-1658572637689.png

     

    Ellis

  • PowerUser0 Profile Picture
    240 on at

    Thanks @ekarim2020  for explaining this in detail, 

Under review

Thank you for your reply! To ensure a great experience for everyone, your content is awaiting approval by our Community Managers. Please check back later.

Helpful resources

Quick Links

Forum hierarchy changes are complete!

In our never-ending quest to improve we are simplifying the forum hierarchy…

Ajay Kumar Gannamaneni – Community Spotlight

We are honored to recognize Ajay Kumar Gannamaneni as our Community Spotlight for December…

Leaderboard > Power Automate

#1
Michael E. Gernaey Profile Picture

Michael E. Gernaey 538 Super User 2025 Season 2

#2
Tomac Profile Picture

Tomac 405 Moderator

#3
abm abm Profile Picture

abm abm 252 Most Valuable Professional

Last 30 days Overall leaderboard