Tool-page

OData Filter Builder (SharePoint and Dataverse)

Build OData $filter expressions for SharePoint (Get items) and Dataverse (List rows, Web API) from your JSON sample.

The tool reads the columns and their types from the output of Get items or List rows, also when they sit inside value. It then writes every value in the right format: in SharePoint dates in quotes and yes/no as 1 or 0, in Dataverse dates, booleans, null and GUIDs without quotes. Lookups are _name_value in Dataverse, people in SharePoint are filtered via Owner/EMail (tip 95). When you mix and and or, the tool adds visible brackets.

Open OData Filter Builder

Free. You enter your email address once, then all tools are unlocked. Your data is processed locally in your browser.

How it works

  1. Pick the target (SharePoint or Dataverse) and paste the JSON from Get items or List rows.
  2. Add conditions with field, operator and value.
  3. Copy the expression into Filter Query or use the HTTP call.

Example SharePoint (Get items)

substringof('Contoso',Title) and Done eq 1 and Created ge '2026-01-01T00:00:00Z'

// person and lookup
Owner/EMail eq 'user@contoso.com' and Ref/Id eq 1

Example Dataverse (List rows)

contains(name,'Contoso') and createdon ge 2026-01-01T00:00:00Z and donotemail eq false

// lookup
_primarycontactid_value eq 00000000-0000-0000-0000-000000000001

Frequently asked questions

Is the filter builder free?

Yes.

Is data uploaded?

No, the expression is built locally in your browser.

Is this for SharePoint or Dataverse?

Both. You pick the target, and the tool uses substringof() for SharePoint and contains() plus endswith for Dataverse.

Why is a date sometimes in quotes and sometimes not?

SharePoint Get items needs dates in quotes, without them the query fails (tip 95). Dataverse expects dates, booleans and GUIDs without quotes.

How do I filter yes/no in SharePoint?

With 1 and 0, for example Done eq 1. Done eq true returns the wrong rows (tip 95).

How do I filter a person?

Via Owner/EMail (capital M), Owner/Id or Owner/Title. Owner eq '...' silently returns 0 rows.

Related tips

All tips in the archive

Microsoft and the Power Platform product names (for example Power Apps, Power Automate, Copilot Studio) are trademarks of the Microsoft group of companies. This is an independent website. It is not operated, sponsored or endorsed by Microsoft.