# API вебхуков

Чтобы получать подобные уведомления передайте в техническую поддержку url Вашего вебхука, который будет принимать запросы-уведомления.

Любое вебхук-уведомление от системы MACRO имеет следующую базовую структуру

`{<br></br> "time": 1611112517,<br></br> "data": {<br></br> ... <br></br> }<br></br>}`\
где

* **time** — timestamp времени отправки уведомления
* **data** - полезная нагрузка уведомления

При изменении статусов объектов cистема будет отправлять POST-запросы со следующим содержимым

`{<br></br> "time": 1611112517,<br></br> "data": {<br></br> "estate": {<br></br> "category": "flat",<br></br> "complex_id": null,<br></br> "contacts_agency_id": null,<br></br> "id": 44901,<br></br> "parent_id": 1233,<br></br> "previous_status": 0,<br></br> "previous_status_name": "Запись удалена",<br></br> "previous_status_custom": null,<br></br> "previous_status_custom_name": null,<br></br> "status": 100,<br></br> "status_name": "Сделка проведена",<br></br> "status_custom": null,<br></br> "status_custom_name": null<br></br> }<br></br> }<br></br>}`

## Поля в объекте **estate**

* **category** — (string) категория недвижимости. Список возможных вариантов категорий недвижимости см. [ниже](#spisok-vozmozhnykh-kategorii-nedvizhimosti)
* **complex\_id** — (int|null) ID родительского комплекса недвижимости
* **contacts\_agency\_id** — (int|null) ID агентства
* **id** — (int) ID объекта недвижимости
* **parent\_id** — (int|null) ID родительского объекта недвижимости
* **previous\_status** — (int) ID предыдущего системного статуса объекта
* **previous\_status\_name** — (string) название предыдущего системного статуса объекта
* **previous\_status\_custom** — (null|int) ID предыдущего пользовательского статуса объекта, если компания использует произвольные статусы
* **previous\_status\_custom\_name** — (null|string) название предыдущего пользовательского статуса объекта, если компания использует произвольные статус
* **status** — (int) ID текущего/нового системного статуса объекта
* **status\_name** — (null|string) название текущего/нового системного статуса объекта
* **status\_custom** — (null|int) ID текущего/нового пользовательского статуса объекта, если компания использует произвольные статусы
* **status\_custom\_name** — (null|string) название текущего/нового пользовательского статуса объекта, если компания использует произвольные статус

### Список возможных категорий недвижимости

* **comm** — коммерческая недвижимость
* **flat** — квартира
* **garage** — машино-место
* **house** — строение малоэтажной недвижимости (коттедж, таунхаус и т.п.)
* **land** — земельный участок
* **storageroom** — кладовая
* **apphouse** — многоквартирный дом (группа квартир, кладовых, машино-мест, коммерческих объектов)
* **building** — коммерческая недвижимость (группа коммерческих объектов)
* **cottages** — малоэтажная недвижимость (группа строений)
* **parking** — паркинг (группа машино-мест)
* **landgroup** — земельные участки (группа земельных участков)

### Список возможных системных статусов объектов недвижимости

* 0 — Запись удалена
* 3 — Неактив
* 4 — Отказ
* 5 — Неразобранное
* 7 — Оценка
* 8 — Обзвон
* 10 — Проверка
* 15 — Отложено
* 20 — Подбор
* 30 — Бронь
* 32 — Маркетинговый резерв
* 40 — Сделка расторгнута
* 50 — Сделка в работе
* 52 — Сделка проведена (маркетинговая)
* 53 — Сделка в работе (маркетинговая)
* 100 — Cделка проведена
* 120 — В архиве

## Контроль получения запроса принимающим сервером и повторная отправка

На данный момент система MACRO не контролирует ответ от вашего сервера при отправке вебхука и не производит повторную отправку уведомлений при получении статуса отличного от 200 Ok.
