For the complete documentation index, see llms.txt. This page is also available as Markdown.

MacroCRM: Процедуры для настройки сценариев



Контакты

Контакт — верхнеуровневая сущность CRM, к которой привязываются заявки на покупку, звонки, заметки и сделки

Процедуры для работы с контактами в MacroCRM:

Создание контакта

Создаёт контакт (клиента — ФЛ или ЮЛ). Работает как upsert: если контакт с таким телефоном/email уже существует в текущей или партнёрской компании, возвращается его id с флагом created: false, новой записи не появляется. Иначе создаётся новый контакт с created: true

Параметры процедуры:
  • phone_number* (str) - номер телефона в международном формате. Может быть как с символом +, так и без него

  • name* (str) - краткое имя контакта

  • _type* (int) - тип субъекта. Допустимые значения:

    • 0 - физическое лицо

    • 1 - юридическое лицо

  • first_name (str) - имя

  • last_name (str) - фамилия

  • middle_name (str) - отчество

  • email (str) - почта

  • birthdate (datetime) - дата рождения

  • gender (int) - пол. Допустимые значения:

    • 0 - не указан

    • 1 - мужской

    • 2 - женский

  • fl_inn (str) - ИНН физического лица

  • snils (str) - СНИЛС контакта

  • description (str) - личная информация о клиенте

  • passport_type (str) - тип документа удостоверяющего личность. Допустимые значения:

    • пустое значение (пустые кавычки "") - паспорт РФ

    • birth - свидетельство о рождении

    • foreign - иностранный паспорт

    • residency - вид на жительство

    • idcard - ID-карта

  • passport_number (str) - номер паспорта

  • passport_date (datetime) - дата выдачи паспорта

  • passport_organ (str) - орган, выдавший паспорт

  • passport_organ_code (str) - код подразделения, выдавшего паспорт

  • passport_birthplace (str) - место рождения по паспорту

  • passport_address (str) - адрес регистрации по паспорту

Пример ответа:

Поиск контакта

Ищет контакт в текущей и партнёрских компаниях. Возвращает первый найденный контакт

Параметры процедуры:
  • phone_number* (str) - номер телефона в международном формате. Может быть как с символом +, так и без него

Пример ответа:

Редактирование контакта

Обновляет поля существующего контакта по id, полученного при создании или поиске контакта. Передавайте только те поля, которые нужно изменить — остальные остаются как есть.

Параметры процедуры:
  • uid* (int) - идентификатор контакта для обновления

  • name (str) - краткое имя контакта

  • first_name (str) - имя

  • last_name (str) - фамилия

  • middle_name (str) - отчество

  • birthdate (datetime) - дата рождения

  • gender (int) - пол. Допустимые значения:

    • 0 - не указан

    • 1 - мужской

    • 2 - женский

  • email (str) - email клиента

  • fl_inn (str) - ИНН физического лица

  • snils (str) - СНИЛС контакта

  • description (str) - личная информация о клиенте

  • passport_type (str) - тип документа удостоверяющего личность. Допустимые значения:

    • пустое значение (пустые кавычки "") - паспорт РФ

    • birth - свидетельство о рождении

    • foreign - иностранный паспорт

    • residency - вид на жительство

    • idcard - ID-карта

  • passport_number (str) - номер паспорта

  • passport_date (datetime) - дата выдачи паспорта

  • passport_organ (str) - орган, выдавший паспорт

  • passport_organ_code (str) - код подразделения, выдавшего паспорт

  • passport_birthplace (str) - место рождения по паспорту

  • passport_address (str) - адрес регистрации по паспорту

Пример ответа:


Заявки на покупку недвижимости

Создание заявки

Создаёт лид (заявку) на покупку недвижимости. Контакт клиента ищется по phone_number/email; если не найден — создаётся новый (отдельное создание контакта перед этим вызовом не нужно). Если у контакта уже есть активная заявка — вернётся её id без создания новой, кроме случая is_force: true.

Новая заявка попадает в воронку в статус «Неразобранное» и далее движется по этапам (Проверка → Подбор → Резерв → Сделка в работе → Сделка завершена; либо Отказ/Отложено/Нецелевое). Смена статуса происходит с помощью процедуры изменения статуса заявки

Параметры процедуры:
  • phone_number* (str) - номер телефона в международном формате. Может быть как с символом +, так и без него

  • full_name* (str) - имя контакта

  • action* (str) - тип действия. Допустимые значения:

    • buy - заявка на покупку (default)

    • sell - заявка на продажу

    • callback - запрос обратного звонка; если передан номер телефона, то будет осуществлена попытка связать клиента со случайным менеджером колл-центра, находящимся "онлайн"

    • question - подача вопроса от посетителя сайта; вопрос будет добавлен к заметкам заявки; обязательна передача вопроса в параметре message

    • reserve - заявка на бронь; обязателен параметр estate_sell_id, при этом создаваемый лид будет связан с указанным объектом недвижимости

    • askprice - запрос информации о цене; после получения лида клиенту будет выслано письмо с презентацией объекта; обязателен параметр estate_sell_id, при этом создаваемый лид будет связан с указанным объектом недвижимости

    • meet - запрос на встречу; добавление задачи с типом «Встреча в офисе»; если у клиента отсутствуют заявки, то будет создана в том числе и заявка; обязательны параметры manager_id и meet_date

    • lead - базовое действие для отправки заявки

    • rate - заявка на оценку

  • email (str) - email контакта

  • client_msg (str) - сообщение от клиента

  • is_force (boolean) - принудительно создать новую заявку, игнорируя существующие по этому клиенту

  • estate_uid (int) - ID объекта недвижимости, если заявка привязана к конкретному объекту

  • category (str) - категория недвижимости

  • manager_uid (str) - ID менеджера, если требуется назначить заявку конкретному менеджеру

  • meet_date (datetime) - дата встречи (требуется при action=meet)

  • tags (str) - Теги заявки. Можно передавать одной строкой через запятую

  • buy_interests_uids (list[str]) - ID дома или массив с ID домов. При передаче параметра заявке будет присвоен интерес к указанным домам

  • buy_source (str) -

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

    • 1 - Ипотека

    • 2 - Наличные

    • 3 - Продажа своего имущества

    • 4 - Мат.капитал

    • 5 - Обмен (Трейд-ин)

    • 6 - Другие субсидии (воен., многодет. и др.)

    • 7 - Зачет

    • 8 - Рассрочка

  • priority (str) -

  • reserve_sum (float) - сумма платной брони (при action=reserve и включенной настройке платной брони)

  • domain (str) - домен, с которого поступила заявка, для применения специфических настроек домена

  • is_allow_sms (boolean) - согласие на SMS уведомления

  • is_allow_email (boolean) - согласие на Email уведомления

  • is_allow_phone (boolean) - согласие на Звонки

  • is_allow_personal_data (boolean) - Согласие на обработку персональных данных

  • utm (dict[str, str]) - UTM-метки

Пример ответа:

Поиск заявок

Изменение статуса заявки

Для изменения статуса заявки сначала необходимо получить статусы заявок:

Пример ответа:

Теперь для смены статуса необходимо использовать следующую процедуру:

Параметры процедуры:
  • request_uid* (int) - ID заявки на покупку недвижимости

  • status_uid* (int) - ID базового статуса, в который нужно перевести заявку

Добавить заметку к заявке

Параметры процедуры:
  • request_uid* (int) - ID заявки на покупку недвижимости

  • note* (str) - текст заметки

Задачи

Создание задачи

Создаёт задачу для сотрудника от имени постановщика

Параметры процедуры:
  • manager_uid* (int) - ID менеджера, которому назначается задача

  • assigner_uid* (int) - ID постановщика задачи (может совпадать с manager_uid)

  • title* (str) - название задачи

  • description* (str) - описание задачи

  • date_finish* (datetime) - срок исполнения задачи (дата и время)

  • task_type* (str) - тип задачи. Игнорируется, если передан types_uid

    • call

    • other (default)

    • project

  • estate_uid (int) - ID заявки, к которой привязывается задача

  • categroy_uid (int) - ID категории задачи

  • types_uid (int) - ID кастомного типа задачи из каталога (используется для системных типов meeting, meeting_house). При передаче task_type игнорируется

  • priority (int) - Приоритет задачи

    • -1 - низкий

    • 0 (default) - обычный

    • 1 - высокий

    • 2 - высочайший

  • hours_plan (int) - плановое количество часов на задачу

  • project_uid (int) - ID проекта, связанного с задачей

  • project_task_uid (int) - ID задачи в рамках проекта

Интересы, брони и сделки

Получение списка интересов, броней и сделок

Возвращает плоский список записей жизненного цикла клиент ↔ объект: интересы, бесплатные/платные брони, сделки в работе и завершённые

Параметры процедуры:
  • contact_uid* (int) - ID клиента внутри CRM

Пример ответа:

Last updated