Deserialize JSON (Not Json Array) and pass str as input and take jobj as output
For loop on Jobj("members")
Inside loop you can get each item you need currentJToken("name").ToString ..for powers as there are multiple you can use string.Join(",", currentJToken("powers"))
Note: CurentJToken name might differ based on your loop variable name
Build Data Table → columns: Name, Age, SecretIdentity, Powers (all String, except Age can be Int32 or String)
Use For Each row in DirectCast(jsonObj("members"), Newtonsoft.Json.Linq.JArray) and the TypeArgument is JObject
Use Add Data Row inside the loop, with array { row("name").ToString(), row("age").ToString(), row("secretIdentity").ToString(), String.Join(", ", row("powers").Select(Function(p) p.ToString())) }
Use Write Range and write the DataTable to your target sheet.
Use this workflow directly, this performs the exact flow which is defined above. Main.xaml (12.7 KB)