Writing a Filter
Query in Power Automate is often done in the "Get items"
or "List rows" actions when working with SharePoint, Dataverse,
or SQL. The syntax depends on the connector, but most commonly, it's OData
query format.
Filter Query Basics (OData)
Example: SharePoint Get items
- To filter
items where Status is Approved:
- Status eq
'Approved'
- To filter
where Created is after Jan 1, 2024:
- Created ge
2024-01-01T00:00:00Z
- To filter
where Title contains 'Report':
- OData does
not support contains directly in SharePoint.
Common Operators
Operator
|
Meaning
|
eq
|
Equals
|
ne
|
Not equal
|
gt
|
Greater
than
|
lt
|
Less than
|
ge
|
Greater or
equal
|
le
|
Less or
equal
|
and
|
Logical
AND
|
or
|
Logical OR
|
Example with AND operator
Status eq
'Approved' and Priority eq 'High'
Tips
- Use internal field/column names — not display names.
- Example: Status might be ApprovalStatus internally.
- Column name is case sensitive. - If Email is your column
internal name then email or EMAIL will give you error.

- Date format must be in ISO 8601 (e.g., 2025-04-21T00:00:00Z)
- Choice fields — use text value but confirm
exact internal representation.
- Person and Group field – This is how you use person and
group field.
- Lookups/User fields — To filter by
a "Person or Group" field in Power Automate, you need to use the
EMail (Please note here first 2 chars are in capital) or
Title property of the user object within the filter query. The
filter query should target the specific property you want to use, such as
the user's email address or their display name. :

o
Author/EMail eq '[email protected]'
o
Author/Title eq ‘User Display Name’
o
Other
Properties You Can Use:
- Department: The department the user
belongs to.
- JobTitle: The user's job title.
Dataverse Example
For a
Dataverse table (e.g., List rows action), same idea:
statuscode
eq 1 and createdon ge 2024-01-01T00:00:00Z