[Feature available from version 1.4.8]
To filter results returned via the API you will need to use the following syntax: filter = [Field Name] [Operator] [Field Value]. Filtering is only available on GET ALL requests.
The following operators are valid:
- Equal = eq
- Not Equal = ne or not([field_name] eq [field value])
- Greater than = gt
- Greater than or equal to = ge
- Less than = lt
- Less than or equal to = le
You can filter on multiple fields using 'and' or 'or' operators. Brackets can be used to group conditions together. Below are some examples:
- filter=field_name eq ‘field value’
- filter=field_name ne ‘field value’
- filter=field_name lt 100
- filter=field_name ge 10
- filter=field_name eq true
- filter=field_name eq null
- filter=not(field_name eq null)
- filter=field_name gt 10 and field_name lt 100
- filter=(field_name eq field name or field_name eq field name) or (field_name ge 50 and field_name le 100)
- If the field value is a string then the filter criteria must be in single quotes.
- The specified filter field name must match the field name exactly in Fundipedia (not the display name).
- The field name, operator and field value are not case sensitive.
- An invalid filter error will return if there is a problem filtering results.
- Less than, less than and equals to, greater than and greater than and equals to will only evaluate numeric field values and dates.
- To filter on date use the following format: yyyy-MM-ddThh:mm:ssZ (e.g. LaunchDate lt 2007-03-01T13:00:00Z).
- Boolean (true/false) field values can only be filtered using equals, not equals and not operators. For example: IsPricing eq true, alternatively NOT(IsPricing eq false). True/False should not be in quotes.
- You can filter on null field values by specifying null in the filter string, e.g. Domicile eq null. Null should not be in quotes.
- You can not apply a filter to multi lookup and delimiter fields.
- Single lookup fields can be filtering using the display value of the lookup item, e.g. Status_DisplayValue eq 'Active'
- Filtering is only applied to the base field value; display templates are ignored.