REST API: Сложные фильтры контактов

Материал из Planfix
Перейти к: навигация, поиск

Сложные фильтры в REST API ПланФикса применяются в методе «/contact/list» при получении списка контактов. Фильтры контактов задаются следующим набором параметров:

  • type — числовой идентификатор фильтра.
  • operator — оператор фильтра, одно из значений списка (equal, notequal, gt, lt). У разных фильтров могут быть разные допустимые операторы.
  • value — значение фильтра, в зависимости от типа фильтра может быть строкой, числом или сложным объектом.
  • field — идентификатор пользовательского поля, используется для фильтров по пользовательским полям.
{
    "type": 12,
    "operator": "equal",
    "value": {
        "dateType": "otherDate",
        "dateValue": "01-07-2022"
    }
}


Пример запроса получения списка контактов с передачей нескольких фильтров (используется логика И):

{
  "fields": "name",
  "filters": [{
        "type": 4223,
        "operator": "equal",
        "value": {
"dateType": "otherDate",
"dateValue": "01-12-1990"
}
     },
     {
        "type": 1,
        "operator": "equal",
        "value": "user:5"
     }
  ]
}


Тип Название Операторы Формат value
12 Дата создания
  • equal
  • notequal
  • gt
  • lt

Объект :

 
"value": {
    "dateType": string,
    "dateValue": string,
    "dateFrom": string,
    "dateTo": string
}

dateType принимает следующие значения:

  • today - сегодня
  • yesterday - вчера
  • tomorrow - завтра
  • thisWeek - текущая неделя
  • lastWeek
  • nextWeek
  • thisMonth
  • lastMonth
  • nextMonth
  • last - последние n дней, n передается в dateValue
  • next - следующие n дней, n передается в dateValue
  • in - через n дней, n передается в dateValue
  • otherDate - точная дата, дата передается в формате дд-мм-гггг в dateFrom
  • otherRange - точный период, даты передаются в формате дд-мм-гггг в dateFrom и dateTo
  • otherDate_withTime - точная дата-время, дата передается в формате "дд-мм-гггг чч:мм" в dateFrom
  • otherRange_withTime - точный период с заданным временем, даты передаются в формате "дд-мм-гггг чч:мм" в dateFrom и dateTo

Даты считаются переданными в часовом поясе сотрудника, от имени которого сделан запрос.

Примеры:

"value": {
    "dateType": "thisWeek"
}
"value": {
    "dateType": "otherRange",
    "dateFrom": "02-07-2022",
    "dateTo": "06-07-2022"
}
"value": {
    "dateType": "otherDate_withTime",
    "dateFrom": "30-06-2022 12:00",
}
4223 Дата рождения (с учетом года)
4011 Дата рождения (без учета года)
4213 Контрагент в задачах с последней активностью
4219 Контрагент без задач с последней активностью
4214 Участвует в задачах с последней активностью
4220 Не участвует в задачах с последней активностью
103 Пользовательское поле типа Дата
1 Добавил
  • equal
  • notequal
string - номер сотрудника/контакта/группы с префиксом.

Например: “user:1”, “contact:5”, “group:3”

2 Ответственный
47 Доступен пользователю
48 Может редактироваться пользователем
4108 Пользовательское поле типа Контакт
4109 Пользовательское поле типа Сотрудник
4112 Пользовательское поле типа Группа, сотрудник, контакт
4113 Пользовательское поле типа Список сотрудников
4006 Является компанией
  • equal
int - 1

boolean - true

4007 Является контактом

4010 || С доступом в ПланФикс

4012 Может быть участником задач
4017 Не может быть участником задач
4013 Может быть контрагентом задач
4018 Не может быть контрагентом задач
4201 Контрагент без активных задач
4202 Не участвует в активных задачах
4203 Контрагент с активными задачами
4204 Участвует в активных задачах
4205 Контрагент в просроченных задачах
4206 Участвует в просроченных задачах
70 Участник - контакт
8 Название задачи
  • equal
  • notequal
string - осуществляется фильтр содержит / не содержит
101 Пользовательское поле типа Строка
102 Пользовательское поле типа Число
  • equal
  • notequal
  • gt
  • lt
int
105 Пользовательское поле типа Чек-бокс
  • equal
  • notequal
int - 1 / 0

boolean

106 Пользовательское поле типа Список
  • equal
  • notequal
string
107 Пользовательское поле типа Справочник
  • equal
  • notequal
int - идентификатор записи
114 Пользовательское поле типа Набор записей справочника
  • equal
  • notequal
int - идентификатор записи, для условия по нескольким записям — идентификаторы через ; (точку с запятой)
152 Содержит значение в пользовательском поле
  • equal
int - идентификатор поля
153 Не содержит значение в пользовательском поле
  • equal
int - идентификатор поля
11 Содержит аналитику
  • equal
int - идентификатор аналитики
18 Не содержит аналитику
  • equal
int - идентификатор аналитики
73 Непосредственная надзадача
  • equal
  • notequal
int - номер надзадачи
51 Шаблон
  • equal
  • notequal
int - номер шаблона
10 Статус
  • equal
  • notequal
int - идентификатор статуса
7 Контрагент
  • equal
  • notequal
int - номер контрагента

string - номер контрагента с префиксом, пример: “contact:1”

24 Процесс
  • equal
  • notequal
int - идентификатор процесса


Перейти