Getting the field values out of SharePoint with Power Automate requires knowledge of both Microsoft technologies.

Variables or Compose

When using Power Automate to trigger on SharePoint list items I often use the Initialize variable or preferably Compose actions to get the Field values of my list items. You could of course use Dynamic content at any stage of your flow, but when you play around with the initialize variables you will find some maybe unexpected behaviours.

First of all I created a SharePoint list with one field for each field type.

A SharePoint list with Multiple Lines of Text, Number, Yes/No and Person field

Then I created a flow with a that initializes multiple variables.

A Flow that initializes 3 variables

Yes/No Field Values

Then the first field that I looked at Yes/No shows quite nicely the way the Dynamic content behaves:

YesNo field

As you will have noticed my Yes/No field from my trigger is available as are all the other Boolean type fields from my trigger. This depends on the Type selected in my initialize action.

Number Field Values

Then I tried the Number field and I found that the expected Integer type didn’t offer me the Number field that I created on the list. I had to select Float as my type before I could set a variable to my number value.

Number field

Person Field Values

Then the next field. A Person field gives you an even more unexpected behaviour. When you select the String type you get multiple parts of the Person field presented as data:

Person or people field

The following data is available to use:

  • Person Claims
  • Person Department
  • Person DisplayName
  • Person Email
  • Person JobTitle
  • Person Picture

But don’t forget that you have ore options. When you select the Object type you will get also a Person object:

Person Object variable

Note: The object dynamic content only displays the above ones you have selected String as a type and the inputs have been loaded. This seems to be a minor bug where selecting Object initially doesn’t load the data properly.

When running the flow you will find that the same data is returned in an object format as Dynamic contents already offers you:

Person returned by Flow

Did you notice the value-key-item-output Dynamic content earlier? This is probably the right place to have a look at that one as well. When loading this into an Object variable you will find a complete json representation of you trigger item. So once you understand how to query json in flow you can create your Expression based conditions quite quickly.

  "@odata.etag": "\"2\"",
  "ItemInternalId": "1",
  "ID": 1,
  "Title": "Title",
  "MultipleLinesOfText": "
 B81BCC989\">This is some gb(180, 85, 0);\">formatted textms-rterangecursor-start\">rangecursor-end\">

  "Number": 1234,
  "YesNo": true,
  "Person": {
    "@odata.type": "#Microsoft.Azure.Connectors.SharePoint.SPListExpandedUser",
    "Claims": "i:0#.f|membership|",
    "DisplayName": "Pieter Veenstra",
    "Email": "",
    "Picture": "https:/ /",
    "Department": null,
    "JobTitle": null
  "Person#Claims": "i:0#.f|membership|",
  "Modified": "2018-04-20T10:34:04Z",
  "Created": "2018-04-20T10:34:01Z",
  "Author": {
    "@odata.type": "#Microsoft.Azure.Connectors.SharePoint.SPListExpandedUser",
    "Claims": "i:0#.f|membership|",
    "DisplayName": "Pieter Veenstra",
    "Email": "",
    "Picture": "https:/ /",
    "Department": null,
    "JobTitle": null
  "Author#Claims": "i:0#.f|membership|",
  "Editor": {
    "@odata.type": "#Microsoft.Azure.Connectors.SharePoint.SPListExpandedUser",
    "Claims": "i:0#.f|membership|",
    "DisplayName": "Pieter Veenstra",
    "Email": "",
    "Picture": "",
    "Department": null,
    "JobTitle": null
  "Editor#Claims": "i:0#.f|membership|",
  "{Identifier}": "Lists%252fAllSorts%252f1_.000",
  "{Link}": "https:/ /",
  "{Name}": "Title",
  "{FilenameWithExtension}": "Title",
  "{Path}": "Lists/AllSorts/",
  "{HasAttachments}": true

Date Field Values

Then now the next type of field. The Date field is another strange one. The Initialize Variable only offers Boolean, Integer, Float, String, Object or Array. What do I do with my Date?

The String type offers me the Date.

Date Field

Choice Field Values

The choice field is another one where the Dynamic content help you getting to the actual data.

Choice field Field Values

Lookup Field Values

The lookup fields are always causing problems when coding SharePoint fields. Time to put flow to the test

In my example I’m creating a lookup to the list that I’m testing all the fields with. Additionally I’m making multiple fields available within my views on the list.

We could just go for the techy option here using a string variable and set it to the following Expression:


But there is an easy way just select the Dynamic content again after you selected the String as the variable Type

Lookup field


The different type of fields in SharePoint can all be handled. I found a few times that as I added list columns that Flow didn’t pick up the changes until I closed and opened my flow again.

This can be a real pain. Also when you can’t find the data that you are looking for the json queries can help you find the data that you want.

Worst case switch over to the Object variable type just to help you understand the data structure that is returned.

Avatar for Pieter Veenstra

By Pieter Veenstra

Business Applications Microsoft MVP working as a Principal Architect at HybrIT Services Ltd. You can contact me using

7 thoughts on “Getting SharePoint field values in Power Automate”
  1. Hi Pieter, how would this work for a number within a for each container? I am getting my input from a form… Thanks

  2. I have a strange phenomenon: I have two SharePoint lists, Issues and Contacts. I have a multiple values lookup field in the Issues list which I use to link entries from the Contacts list.
    When I use that field in Flow, the array is empty []
    But when I have a field with only one lookup value allowed, it works fine and I can get the Contact in a Get Items function, no problem.
    How can I get the IDs of the Contacts entries linked in the Issues list in Flow?

      1. Thanks for your reply! I’ve sent you the screenshots as requested.

Leave a Reply

This site uses Akismet to reduce spam. Learn how your comment data is processed.

Discover more from SharePains by Microsoft MVP Pieter Veenstra

Subscribe now to keep reading and get access to the full archive.

Continue Reading

%d bloggers like this: