Назад

Фид помещений: описание формата Базис.Недвижимость

11.06.2021
#Фиды #Интеграции #Загрузка данных

Фид  - файл в формате XML или JSON, который можно использовать для загрузки данных по объектам недвижимости из внешних систем, например, из 1С или CRM системы.

Системой поддерживается два основных формата для загрузки:

  • JSON - рекомендуется, принимается полный набор данных
  • XML  - ограниченный формат на основе формата Яндекс.Недвижимости

Фид можно загружать файлом вручную, по ссылке на файл, или передавать POST-запросом по API.

Формат JSON

Подготовьте JSON-файл с массивом всех объектов недвижимости, которые необходимо загрузить.

Поиск уже существующих данных происходит по вашим ID объекта, содержащимся в файле: если такого объекта еще нет в системе, он будет создан, если уже есть - обновлен.

В фиде передается массив помещений, где в каждом помещении указана информация о ЖК, Доме, Секции, Этаже. При этом вся сруктура, от ЖК до Этажа будет создана автоматически по данным из фида.

Описание всех сущностей и их полей можно увидеть нашем Swagger по ссылке: https://iflat.io/api/documentation (требуется авторизация)

Пример структуры для передачи:

[
  {
    "id": 123123,  // <-- ID из Вашей системы 
    "tech_number": null,
    "number": "1",
    "room_type_id": 1,
    "room_count": 2,
    "is_studio": 0,
    "name": "Пентхаус",
    "decoration_id": null,
    "bathroom_id": null,
    "bathroom": null,
    "view_id": null,
    "view": null,
    "balcony_id": 0,
    "balcony": "Нет",
    "private": false,
    "price": 0,
    "area": 57.7,
    "area_fact": 0,
    "area_rooms": 0,
    "area_rooms_fact": 0,
    "area_living": 26.4,
    "area_living_fact": 0,
    "area_balcony_w_ratio": 0,
    "area_balcony_w_ratio_fact": 0,
    "area_balcony": 0,
    "area_balcony_fact": 0,
    "area_overall": 59.4,
    "area_overall_fact": 0,
    "area_additional": 0,
    "area_additional_fact": 0,
    "area_kitchen": 0,
    "area_kitchen_fact": 0,
    "cadastral_number": null,
    "take_date_from": "2021-03-09T00:00:00.000000Z",
    "take_date_to": "2021-03-10T00:00:00.000000Z",
    "sale_type_id": null,
    "staff_comment": null,
    "description": null,
    "area_lot": null,
    "area_lot_fact": null,
    "combined_bathrooms_count": null,
    "separate_bathrooms_count": null,
    "status_id": 4,
    "house": {
      "id": 33123,  // <-- ID из Вашей системы 
      "name": "Новый дом 1",
      "city": "Зеленоград",
      "street": "ул. Зеленогорская",
      "area": null,
      "house": "12Б",
      "address": "ул. Зеленогорская, 12Б",
      "address_mail": null,
      "address_construction": null,
      "position": 0,
      "development_start_quarter": 1,
      "development_start_year": 2018,
      "development_end_quarter": 2,
      "development_end_year": 2025,
      "house_state_id": 1,
      "coordinates": "56.807171,60.715208",
      "elevator": 1,
      "floors_count": 17,
      "commissioning_permit_date": null,
      "commissioning_permit_number": null,
      "warranty_start": null,
      "warranty_end": null,
      "district": {
        "id": 523,  // <-- ID из Вашей системы 
        "name": "ЖК Лес",
        "type_id": 1,
        "description": null,
        "city": null,
        "area": null,
        "region": null,
        "direction": null,
        "distance": null,
        "coordinates": null,
        "video_url": null,
        "main_url": "https://site.ru/"
      },
      "metro": [
        {
          "name": "Беговая",
          "distance_type": "foot",
          "distance_time": 5,
          "color": "#B30F0F"
        }
      ]
    },
    "section": {
      "name": "Подъезд 1",
      "position": 0,
      "floor_count": null
    },
    "floor": {
      "number": 3
    },
    "plan": {
      "type_id": 1,
      "name": "К002Е",
      "image": "https://dev.iflat.io/storage/a5/3/607a262e-20a8-405c-a3a8-e1634754e3c1.png"
    },
    "custom_fields": {
      "field_1": 123,
      "field_2": "Значение поля 2"
    }
  }
]


Формат XML

Фид создан на основе формата Яндекс.Недвижимость https://yandex.ru/support/realty/requirements/requirements-sale-new.html

Описание тегов:

Ниже приведен список принимаемых данных.

Синим отмечены дополнительные теги, добавленные для Базис.Недвижимость, которых нет в стандартном яндекс-фиде. Если у вас уже есть выгрузка в Яндекс.Недвижимость, вам достаточно добавить эти дополнительные поля в свой фид и использовать его для загрузки и обновления помещений в Базис.Недвижимость.

Жирным отмечены обязательные поля.

  • object-type-id - ID типа помещения в БН (список типов можно посмотреть здесь)
  • status-id - ID статуса помещения в БН (список статусов можно посмотреть здесь)
  • house-id - ID дома во внешней системе, из которой выгружен фид
  • district-name - Название жилого комплекса
  • district-id - ID жилого комплекса во внешней системе
  • apartment - Номер помещения
  • price - блок с ценой помещения
  • rooms - кол-во комнат
  • studio - является студией (1/0)
  • floor - номер этажа
  • areas - блок с площадями помещения
    -- area - Общая площадь проектная
    -- area-fact - Общая площадь фактическая
    -- area-overall - Площадь с учетом лоджий и понижающим коэф-том проектная
    -- area-overall-fact - Площадь с учетом лоджий и понижающим коэф-том фактическая
  • tech-number - технический (строительный) номер помещения
  • section - название/номер секции (подъезда)
  • plan - блок с планировкой
    -- name - название планировки (по этому полю будет проверяться уникальность планировки внутри дома)
    -- image - ссылка на изображение с планировкой
  • custom-fields - блок с дополнительными полями помещений (можно добавить в настройках аккаунта)

Пример структуры для передачи:

<realty-feed xmlns="http://webmaster.yandex.ru/schemas/feed/realty/2010-06">
<generation-date>2021-05-19T07:31:02+00:00</generation-date>
<offer internal-id="1338">
<object-type-id>1</object-type-id>
<status-id>1</status-id>
<cadastral-number>11-22-33-44-55</cadastral-number>
<location>
<city>Санкт-Петербург</city>
<street>ул. Зеленогорская</street>
<house>12Б</house>
<house-id>1345</house-id>
<apartment>1</apartment>
<district-name>ЖК Таежный бор</district-name>
<district-id>1342</district-id>
<latitude>55.89915372060286</latitude>
<longitude>37.461244049228924</longitude>
<metro>
<name>Ховрино</name>
<time-on-transport>8</time-on-transport>
<time-on-foot>8</time-on-foot>
</metro>
<metro>
<name>Ленинская</name>
<time-on-transport>45</time-on-transport>
</metro>
</location>
<price>
<value>4850000</value>
</price>
<areas>
<area>69</area>
<area-overall>69</area-overall>
<area-fact>69</area-fact>
<area-overall-fact>69</area-overall-fact>
</areas>
<rooms>2</rooms>
<is-studio>1</is-studio>
<tech-number>А211</tech-number>
<section>1</section>
<floor>1</floor>
<plan>
<name>DAS_321</name>
<img>https://site.ru/storage/887a8.jpg
</plan>
<custom-fields>
<customfieldcode1 name="Название поля 1">Значение собственного поля 1</customfieldcode1>
<customfieldcode2 name="Название поля 2">Значение собственного поля 2</customfieldcode2>
</custom-fields>

</offer>
</realty-feed>


Как загрузить фид в Базис Недвижимость

Существует два варианта загрузки данных:

  • Передача фида по API
  • Загрузка файлом (с компьютера или ссылкой на файл)


Передача фида по API

Используется POST-метод /import

Данные передаются в виде JSON внутри поля data_raw (есть также альтернативный способ с передачей бинарного файла, если невозможно передать JSON)



Загрузка файлом

В меню "Объекты" кнопка "Загрузить"

Выберите тип фида "Фид Базис Недвижимость JSON" (или XML), прикрепите файл (или вставьте ссылку на свой фид), в процессе загрузки будет создана полная структура, дома/подъезды/этажи/помещения, согласно данным из фида. 

При повторной загрузке того же фида, данные обновляются, таким образом можно поддерживать актуальность данных между системами.



Похожие статьи
Обновление 04.04.2024 Смотреть полностью
Установка кабинета покупателя на свой сайт Смотреть полностью
Триггеры и автоматизация Смотреть полностью
Связь виджета с внешними скриптами Смотреть полностью