REST API: Сложные фильтры проектов
Материал из Planfix
Сложные фильтры в REST API ПланФикса применяются в методе «/project/list» при получении списка проектов. Фильтры проектов задаются следующим набором параметров:
- type — числовой идентификатор фильтра.
- operator — оператор фильтра, одно из значений списка (equal, notequal, gt, lt). У разных фильтров могут быть разные допустимые операторы.
- value — значение фильтра, в зависимости от типа фильтра может быть строкой, числом или сложным объектом.
- field — идентификатор пользовательского поля аналитики, по которому выполняется фильтр.
Пример запроса получения списка проектов с передачей нескольких фильтров, по пользовательскому полю типа «Дата» и пользовательскому полю типа «Сотрудник» (используется логика И):
{ "offset": 0, "pageSize": 100, "fields": "id,name,description,3,5", "filters": [ { "type": 5103, "field": 3, "operator": "equal", "value": { "dateType": "otherRange", "dateFrom": "15-12-2022", "dateTo": "17-12-2022" } }, { "type": 5109, "field": 5, "operator": "equal", "value": "user:50" } ] }
Тип | Название | Операторы | Формат value |
---|---|---|---|
5103 | Поле проекта типа «Дата» |
|
Объект : "value": { "dateType": string, "dateValue": string, "dateFrom": string, "dateTo": string } dateType принимает следующие значения:
Даты считаются переданными в часовом поясе сотрудника, от имени которого сделан запрос. Примеры: "value": { "dateType": "thisWeek" } "value": { "dateType": "otherRange", "dateFrom": "01-12-2022", "dateTo": "06-12-2022" } "value": { "dateType": "otherDate_withTime", "dateFrom": "30-12-2022 12:00", } |
5005 | Дата завершения | ||
5013 | Дата создания | ||
5004 | Автор |
|
string - номер сотрудника/контакта/группы с префиксом. Например: “user:1”, “contact:5”, “group:3” |
5008 | Клиент-менеджер | ||
5012 | Аудитор | ||
5011 | Исполнитель | ||
5108 | Поле проекта типа «Контакт» | ||
5109 | Поле проекта типа «Сотрудник» | ||
5110 | Поле проекта типа «Контрагент» | ||
5112 | Поле проекта типа «Группа, сотрудник, контакт» | ||
5113 | Поле проекта типа «Список сотрудников» | ||
5001 | Название проекта |
|
string - осуществляется фильтр содержит / не содержит |
5101 | Поле проекта типа «Строка» | ||
3109 | Пользовательское поле типа «Число» |
|
int |
3115 | Пользовательское поле типа «Чек-бокс» |
|
int - 1 / 0
boolean |
3105 | Пользовательское поле типа «Справочник» |
|
int - идентификатор записи |