cancel
Showing results for 
Search instead for 
Did you mean: 
Reply
TomD
Frequent Visitor

Creating Nested (2D) Array for Graph API Call

Hello All,

 

I'm working on an automation where I'm trying to write some data back to an Excel sheet with Graph.

 

I initially collect my data and parse the json without issue:

TomD_0-1628003418625.png

The next bit is where it all falls are, my final graph POST; it accepts the following:
values Json A 2-dimensional array of unformatted values of the table rows (boolean or string or number).

something like:

 

 

{
  "values": [
    ["MyData1"],
    ["MyData2"]
  ]
}

 

 

 

My problem is building an object to match this post call. I have to iterate over each item returned from the initial API call to access 'displayName'

TomD_1-1628003777009.png

If I try to write this value to an array object I get the following error when saving:

 

 

Flow save failed with code 'WorkflowRunActionInputsInvalidProperty' and message 'The inputs of workflow run action 'Append_to_array_variable' of type 'AppendToArrayVariable' are not valid. The provided value of '[ "@{items('Apply_to_each')?['displayName']}" ]' of type 'Array' must be a primitive type, or a valid template language expression.'.

 

 

This proves difficult as when I make my call I was trying to pass this Nested array:

TomD_2-1628003991732.png

I tried to build a string variable as another alternative - which worked until I made the post call as once it was entered and sent it ended up escaping the quotation marks and failing the post:

TomD_3-1628004308032.png

Does anyone know how I can iterate over my values returned from my initial json parse in and build an object required by the API?

 

 

{
  "values": [
    ["MyData1"],
    ["MyData2"]
  ]
}​

 

 

 

Thank you everyone!

1 REPLY 1
JanWidmer
Regular Visitor

Hey @TomD

 

I've faced the same problem. I wanted to include an array into the API Call.

 

What I had to do, was to use a String instead of an array. So in your foreach loop you take the exact part that has to go into the API Call, and append it to a String. Don't forget to include all brackets and other characters.

 

In my case:

JanWidmer_0-1660738617452.png

 

And in the API Call you add the String into the Call:

JanWidmer_2-1660738873678.png

 

 

I hope this helps you or anyone else, who has a similar problem.

 

 

Helpful resources

Announcements
Microsoft 365 Conference – December 6-8, 2022

Microsoft 365 Conference – December 6-8, 2022

Join us in Las Vegas to experience community, incredible learning opportunities, and connections that will help grow skills, know-how, and more.

Difinity Conference 2022

Difinity Conference 2022

Register today for two amazing days of learning, featuring intensive learning sessions across multiple tracks, led by engaging and dynamic experts.

European SharePoint Conference

European SharePoint Conference

The European SharePoint Conference returns live and in-person November 28-December 1 with 4 Microsoft Keynotes, 9 Tutorials, and 120 Sessions.

Users online (3,557)