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, полученного при создании или поиске контакта. Передавайте только те поля, которые нужно изменить — остальные остаются как есть.
Телефон и email с помощью данной процедуры изменить нельзя
Параметры процедуры:
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_uidcall
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 задачи в рамках проекта
Интересы, брони и сделки
Получение списка интересов, броней и сделок
Возвращает плоский список записей жизненного цикла клиент ↔ объект: интересы, бесплатные/платные брони, сделки в работе и завершённые
Пример ответа:
Last updated