← К заметкам

Заметки

Как найти сделки, где контакт указан не первым

У сделки может быть несколько контактов. Если искать только по полю основного контакта, сделки с нужным человеком на втором или третьем месте легко потерять.

Для этой задачи у crm.item.list есть фильтр contactIds. Запрос для контакта с ID 17:

{
  "entityTypeId": 2,
  "filter": { "contactIds": 17 },
  "select": ["id", "title", "contactIds"],
  "order": { "id": "ASC" }
}

Передайте JSON в crm.item.list. entityTypeId: 2 выбирает сделки; значение contactIds в фильтре задаёт искомого участника связи. В select это же поле позволяет увидеть весь набор контактов найденной сделки.

contactId и contactIds — разные поля. А CONTACT_IDS из примеров старого API нельзя механически переносить в параметры универсального метода.

Поддержка такого фильтра отмечена в журнале REST-документации 20 марта 2025 года. На старой коробке учитывайте установленную версию CRM. Если найденных сделок много, обойдите все страницы результата.

Документация: crm.item.list; Поля объектов CRM; Журнал REST-документации.