Search code examples
odatapower-automate

How to handle special characters in ODATA query


I have data which has the parameter "{IsFolder}" with curly brackets. I need to filter based on that parameter with ODATA. How can I achieve that?

"IsFolder" does not exist and passing {} fails as well. I could not find a simple table of conversion anywhere.

EDIT: Data source is a power automate flow where it lists all entities in sharepoint (properties only). I need to filter out evertyhing that is not a folder in order to get only the files for processing. Part of the data (i've removed most of the values due to data privacy):

"@odata.etag": "\"11\"",
"ItemInternalId": "60",
"ID": 60,
"Modified": "2023-11-22T13:20:30Z",
"Editor": 
"OData__DisplayName": 
"{Identifier}": 
"{IsFolder}": false,
"{Thumbnail}": 

My goal is to improve processing time. I already have a "filter array" action that does the trick when it comes to filtering out the folders, I just wanted to have it filtered out at the origin so that I can focus on other filtering needed for the processing.

New EDIT: ODATA doesn't enjoy special characters. Blank spaces in column names must be replaced by _x0020_ for example. I need this same type of conversion for {}


Solution

  • It seems {IsFolder} is not allowed in the filter query. There isn't any offical documentation on this apart from maybe SharePoint -Delegation notes stating that it is not delegable. This is just an assumption on my part.

    See if this alternative filter does the trick: FSObjType eq 0