In order to filter records via API you need to use X-Request-Filter header. 

As a value it accepts a JSON in format:

{
  "<filter_field_1>": {
                        "value": "<filtered_value>",
                        "comparison": "<comparator>"
                      },
  "<filter_field_2>": {
                        "value": "<filtered_value>",
                        "comparison": "<comparator>"
                      }
}

<filter_field_1> and <filter_field_2> are field names by which you want to filter.
Each entity type (candidate, client, recruitment etc.) has its own filter fields. Additionally you can add custom fields to the API

For each filter field you need to define value and comparator. Between filter fields there is OR conjunction.

If you filter by phrases with special characters - you need to send their unicode:
For example, instead of sending 'café' you need to send 'caf\u00e9'

Available comparators:

'=' comparator:
Equals comparator. When used, it searches for the records with given value.
Example:

{
   "value": "Test",
   "comparison": "="
}

'!=' comparator:
Not-equals comparator. When used, it searches for the records without given value.  (including empty values)
Example:

{
   "value": "Test",
   "comparison": "!="
}

'<=' comparator:
Less/equal than comparator. When used, it searches for the records with value less/equal than/to the given one

It's available for Date/Date and time/Number custom fields and system fields which have date or date and time.
Example:

{
   "value": "2020-02-29",
   "comparison": "<="
}

'>=' comparator:
Greater/equal than comparator. When used, it searches for the records with value greater/equal than/to the given one.

It's available for Date/Date and time/Number custom fields and system fields which have date or date and time. 

Example:

{
   "value": "2020-02-29",
   "comparison": ">="
}

'in' comparator:
In comparator. When used, it searches for the records with given value. It's available for Select multiple custom fields.  It works similar to '=' comparator, but for fields which can have multiple values.

Example:

{
   "value": "a",
   "comparison": "in"
}


'like' comparator:
Like comparator. When used, it searches for the records with occurrence of a value. It's available for text fields.

Example:

{
   "value": "developer",
   "comparison": "like"
}

It would return records with value 'Software developer' as also 'Developer with 2-year experience'

Example X-Request-Filter values :

This filter will return records with _available_form custom field value greater than 2020-03-01 :

{
  "_available_from": {
                        "value": "2020-03-01",
                        "comparison": ">="
                      }
}

This filter will return records with _available_form custom field value greater than 2020-03-01 OR records created before 2020-01-02

{
  "_available_from": {
                        "value": "2020-03-01",
                        "comparison": ">="
                      },
  "created_at": {
                        "value": "2020-01-02",
                        "comparison": "<="
                      }
}
Did this answer your question?