Приложение Realistimo Търси и следи имоти по-лесно. Изтегли от Google Play Google Play Приложение Realistimo Търси и следи имоти по-лесно. Изтегли от App Store App Store

XML feed за импорт на обяви

Как да подготвите XML feed за импорт на обяви в Realistimo. За ръчен sync вижте REST API.

Overview

Общ преглед

XML (тази страница)

Какво да публикувате във feed-а и как импортът чете полетата.

REST

API ключ, POST /start, POST /latest-log, ограничения и опционален callback.

Tutorial

Започнете тук

  1. Копирайте минималния пример по-долу или изтеглете по-пълния примерен XML.
  2. Попълнете agency_uid с source id на агенцията от Realistimo и broker_id със source id на вече свързани агенти.
  3. Добавете оферти със стабилен offer_uid, category/subcategory, локация (internal_id), images, price, description, currency=eur.
  4. Хостнете на публичен HTTPS URL → [email protected].
  5. За ръчен sync: REST tutorial.

Geo файлове: CSV · PostgreSQL dump

Explanation

Как работи синхронизацията

„Задължително“ по-долу означава: без стойност импортът/публикуването обикновено се чупи или офертата остава непубликувана. Много атрибути имат стойности по подразбиране.
How-to

Как да подготвите feed

  1. Root <feed>, брокери в <Brokers>, оферти в <offers>.
  2. Локация: internal_id на града, селото или квартала от geo файловете. Без него локацията се търси в описанието; ако не бъде открита, офертата остава непубликувана.
  3. Валута: изпращайте eur.
  4. При всяка реална промяна обновявайте <updated> и <last_update> на засегнатите оферти.
  5. URL-ът трябва да е достъпен за сървърни клиенти (без интерактивен Cloudflare challenge).
Reference

Минимален пример

Копирайте скелета, заменете placeholders и сложете текущи дати (YYYY-MM-DD HH:MM:SS, не по-стари от 30 дни).

<?xml version="1.0" encoding="UTF-8"?>
<feed>
  <updated>YYYY-MM-DD HH:MM:SS</updated>
  <agency_uid>YOUR_AGENCY_SOURCE_ID</agency_uid>
  <Brokers>
    <Broker>
      <BrokerID>YOUR_AGENT_SOURCE_ID</BrokerID>
      <BrokerName>Ivan Ivanov</BrokerName>
      <BrokerPhone>0888000000</BrokerPhone>
      <BrokerEmail>[email protected]</BrokerEmail>
    </Broker>
  </Brokers>
  <offers>
    <offer>
      <offer_uid>offer-1</offer_uid>
      <last_update>YYYY-MM-DD HH:MM:SS</last_update>
      <description>Test listing</description>
      <images>https://example.com/a.jpg</images>
      <price>100000</price>
      <surface>70</surface>
      <currency>eur</currency>
      <category>продажби</category>
      <subcategory>2-СТАЕН</subcategory>
      <internal_id>8545</internal_id>
      <broker_id>YOUR_AGENT_SOURCE_ID</broker_id>
    </offer>
  </offers>
</feed>

Изтеглете по-пълния примерен XML (само за форма — пак сменете ids, дати и съдържание).

Агенция

ТагОписаниеБележки
<updated>Версия / дата на feed-аЗадължително Трябва да се променя при промяна на съдържанието; max 30 дни назад
<agency_uid>Source id на агенциятаЗадължително Трябва да съвпада с конфигурирания id
<agency_name>, <agency_phone>, <agency_email>МетаданниПо избор Не се използват от импорта; безопасни за съвместимост
<result_url>Callback след импортПо избор Realistimo праща POST с JSON като latest-log; виж REST

Брокери

<Brokers>/<Broker> дава контактни данни. broker_id на офертата трябва да съвпада с source id на агент, вече свързан към агенцията в Realistimo. Стойностите на BrokerID в XML трябва да са същите ids. Оферта, чийто broker_id не съвпада със свързан агент, не се импортира, освен ако за агенцията не е настроен резервен агент.

ТагБележки
<BrokerID>Задължително Source id на агента (препоръчително ≠ agency_uid)
<BrokerName>Задължително Име (+ фамилия)
<BrokerPhone>, <BrokerEmail>, <BrokerPhoto>По избор

Оферти (поддържани полета)

ТагОписаниеБележки
<last_update>Промяна на офертатаПрепоръчително Дата/час или unix timestamp. Ако е попълнено и не е по-ново от последната импортирана промяна, повечето полета на публикувана оферта се пропускат
<offer_uid>Стабилен IDЗадължително Не променяйте при редакции
<offer_code>Референтен кодПо избор
<title>ЗаглавиеПо избор Отделно от описанието
<description>ОписаниеПрепоръчително Силно желателно за публикация
<images>URL-иЗадължително Разделител ;
<price>ЦенаЗадължително Само цифри, без разделител за хилядите: всичко след първата запетая или точка се отрязва (100,000 се импортира като 100). Интервалите не пречат. 0 или 1 = „Цена при запитване“. При parent construction/complex цената се нулира
<surface>Площ м²Задължително Изисква се за повечето типове. За гараж и паркомясто без площ се записват 18 м². За земя виж парцел и земя
<surface_parcel>Двор/парцелПо избор Площ на двора в м². Ако surface липсва, се ползва и като площ на имота
<currency>ВалутаЗадължително eur. Ако липсва, цената се показва почти двойно по-ниска.
<category>продажби / наемиЗадължително
<subcategory>Тип имотЗадължително Точна стойност от списъка по-долу
<internal_id>Geo internal idЗадължително id на града, селото или квартала от geo файловете. Ако липсва или е грешен, локацията се търси в описанието; ако не бъде открита, офертата остава непубликувана
<subregion_id>Mapped location idПо избор Ползва се само от някои по-стари интеграции. Не разчитайте на него — изпращайте internal_id
<construction_type>епк / панел / тухла / гредоредПо избор Само с малки букви, виж стойностите
<floor>, <floorAll>Етаж / етажиПо избор Стойност 0 за floor се игнорира
<building_condition>Етап на строителствоПо избор Виж стойностите
<build_year>YYYY-MM-DD / YYYYПо избор Пълна дата или само година (2005). Само година се приема от 1800 до 10 години напред, иначе се игнорира. По-старите сгради се показват като период („Преди 1989“ или „Между 1990 и 2004“)
<furnished>0 / 14 / 23 / 65По избор 14 = обзаведен, 65 = частично обзаведен, 0 и 23 = необзаведен. Липсваща или друга стойност се записва като „Не съм сигурен“, дори ако в описанието пише „обзаведен“ — затова изпращайте тага винаги
<heating_ids>IDs през ,По избор 4, 6 и 18 = твърдо гориво, 35 = климатик, 44 = електричество, 46 = централно парно, 80 = газ. Другите ids се игнорират
<parking_ids>52, 93По избор 52 = гараж, 93 = паркомясто. Другите ids се игнорират
<rooms_count>, <bedroom_count>, <bath_count>БроевеПо избор Виж стойности по подразбиране
<exterior_ids>IDs през ,По избор 42 = асансьор, 10 = асфалтов път. Другите ids се игнорират
<broker_id>Source id на агентЗадължително Трябва да съвпада със свързан агент в Realistimo
<construction_id>Parent offer_uidПо избор Виж сграда/комплекс
<youtube_link> / <youTube_link>YouTubeПо избор
<virtual_panorama_link>Виртуална разходкаПо избор Разпознават се линкове от Matterport, Giraffe360, CloudPano, Panoee, imot360, Zelanos, Renderimo, Webobook и Kuula (кратък линк bit.ly). Други линкове се пропускат, без да спират публикуването
<Exclusive>0/1По избор

Стойности

subcategory (поддържани стойности)

Изпращайте стойностите точно както са изписани, с главни букви. Непозната стойност спира импорта на офертата.

building_condition

Главните и малките букви имат значение.

construction_type

Само с малки букви: Тухла не се разпознава.

Стойности по подразбиране

Когато таг липсва или е празен, импортът записва:

ТагСтойност по подразбиране
<heating_ids>Електричество
<rooms_count>При апартамент — според subcategory (2-СТАЕН = 2), иначе 1
<bedroom_count>Броят стаи минус 1, но поне 1
<bath_count>1, но не повече от броя стаи
<building_condition>С акт 16
<construction_type>Не съм сигурен (само при продажба)
<furnished>Не съм сигурен (при всички типове)
<surface>Площта от описанието, ако е посочена там; при гараж и паркомясто — 18 м²

Отопление, стаи, спални, бани, етап и вид строителство не се попълват за парцел, земеделска земя, гараж, паркомясто и нова сграда.

Игнорирани тагове

Тези тагове не се прилагат при импорт. Може да стоят във feed-а, но нямат ефект: balcony_count, land_category, parcel_in_regulation, new_construction.
How-to

Сграда / комплекс → апартаменти

  1. Parent: subcategory е едно от НОВА СГРАДА, СГРАДА НОВО СТРОИТЕЛСТВО, ЗАТВОРЕН КОМПЛЕКС.
  2. Child: <construction_id>PARENT_OFFER_UID</construction_id>.
  3. Редът в XML няма значение. Празен tag маха връзката. Self-ref / невалиден parent се игнорира.

Парцел и земя

За парцел няма отделни тагове — подава се като обикновена оферта:

  1. <subcategory>ПАРЦЕЛ</subcategory> за парцел за строителство или ЗЕМЕДЕЛСКА ЗЕМЯ. Гора, лозе, пасище и овощна градина засега не могат да се подават.
  2. <surface> е площта на имота в м². Стойност между 0 и 1 се чете като декари: 0.8 = 800 м² (с точка, не със запетая). Ако surface липсва, се взима surface_parcel, а после площта от описанието.
  3. Достатъчен е <internal_id> на града или селото — квартал не е задължителен.
  4. Стаи, етаж, вид строителство и обзавеждане не са нужни.
  5. Асфалтов път: <exterior_ids>10</exterior_ids>. За ток и вода няма тагове — напишете в описанието точно „ток и вода на граница“ (или само „ток на граница“ / „вода на граница“). Други формулировки може да не бъдат разпознати.
  6. Предназначението на имота също се чете от описанието. Ако там не е посочено, при ПАРЦЕЛ се записват „Жилищно строителство“ и „Промишлено строителство“, а при ЗЕМЕДЕЛСКА ЗЕМЯ полето остава празно.
  7. land_category и parcel_in_regulation се игнорират.
<offer>
  <offer_uid>parcel-1</offer_uid>
  <last_update>YYYY-MM-DD HH:MM:SS</last_update>
  <title>Парцел в село Лозен</title>
  <description>Равен парцел с лице към улица. Ток и вода на граница.</description>
  <images>https://example.com/p1.jpg;https://example.com/p2.jpg</images>
  <price>85000</price>
  <surface>1200</surface>
  <currency>eur</currency>
  <category>продажби</category>
  <subcategory>ПАРЦЕЛ</subcategory>
  <internal_id>9433</internal_id>
  <exterior_ids>10</exterior_ids>
  <broker_id>YOUR_AGENT_SOURCE_ID</broker_id>
</offer>
See also

REST API и помощ

Бюлетинът за недвижими имоти

Така ще си в час с новото при имотите, статистики и новини от Реалистимо, без спам:

Записахте се успешно.
Моля, въведете Имейл. Моля, въведете валиден Имейл. Моля, изберете Тип на профила. Моля, въведете град. Моля, изберете град от предложенията в падащия списък при попълването на полето. Излезе проблем. Моля, опитайте по-късно.
US AIzaSyBR3omDZNtlfDZ-DUvziDqXSz06vDg5mk4