Ce să publicați în feed și cum citește importul câmpurile.
Cheie API, POST /start, POST /latest-log, limite și callback opțional.
agency_uid la source id-ul pe care Realistimo l-a dat agenției dvs. și valorile broker_id la agent source id-uri deja legate în Realistimo.offer_uid stabil, category/subcategory, locație (internal_id), images, price, description, currency=eur.Fișiere geo lookup: CSV · PostgreSQL dump
Explanation<updated> este versiunea feed-ului. Dacă este neschimbată de la ultimul sync reușit, importul este omis.<updated> este parsat ca o dată mai veche de 30 de zile, procesarea se oprește.<last_update> este prezent și nu este mai nou decât ultima modificare importată, majoritatea câmpurilor sunt omise (prețul, asignarea agentului și descrierea se actualizează totuși). <last_update> gol/lipsă nu declanșează acel skip.<feed>, brokers în <Brokers>, oferte în <offers>.internal_id al orașului, satului sau cartierului din fișierele geo. Fără el, locația este căutată în descriere; dacă nu este găsită, oferta rămâne nepublicată.eur.<updated> al feed-ului și <last_update> pe ofertele afectate.Copiați acest skeleton, înlocuiți placeholder-ele și setați timestamp-uri curente (YYYY-MM-DD HH:MM:SS, nu mai vechi de 30 de zile).
<?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>
Descărcați eșantionul XML mai complet (referință de formă — înlocuiți în continuare id-urile, timestamp-urile și conținutul cu ale dvs.).
| Tag | Descriere | Note |
|---|---|---|
<updated> | Versiunea / data feed-ului | Obligatoriu Trebuie să se schimbe când se schimbă conținutul; max. 30 de zile vechime |
<agency_uid> | Source id agenție | Obligatoriu Trebuie să coincidă cu id-ul configurat pentru agenția dvs. |
<agency_name>, <agency_phone>, <agency_email> | Metadata | Opțional Neutilizat de import; sigur pentru compatibilitate |
<result_url> | Callback după import | Opțional Realistimo trimite prin POST un corp JSON în formă latest-log; vezi REST |
<Brokers>/<Broker> oferă datele de contact ale brokerului pentru feed. broker_id al ofertei trebuie să coincidă cu un agent source id deja legat de agenția dvs. în Realistimo (configurat la integrare). Valorile XML BrokerID ar trebui să folosească aceleași id-uri. O ofertă al cărei broker_id nu coincide cu un agent legat nu este importată, cu excepția cazului în care agenția are configurat un agent de rezervă.
| Tag | Note |
|---|---|
<BrokerID> | Obligatoriu Agent source id (preferabil ≠ agency_uid) |
<BrokerName> | Obligatoriu Nume (+ prenume) |
<BrokerPhone>, <BrokerEmail>, <BrokerPhoto> | Opțional |
| Tag | Descriere | Note |
|---|---|---|
<last_update> | Ora modificării ofertei | Recomandat Dată/oră sau unix timestamp. Când este prezent și nu este mai nou decât ultima modificare importată, majoritatea câmpurilor sunt omise la ofertele publicate |
<offer_uid> | Id stabil | Obligatoriu Nu schimbați la editări |
<offer_code> | Cod de referință | Opțional |
<title> | Fragment de titlu | Opțional Separat de descriere |
<description> | Descriere | Recomandat Puternic dorit pentru publicare |
<images> | URL-uri | Obligatoriu Separator ; |
<price> | Preț | Obligatoriu Doar cifre, fără separator de mii: tot ce urmează după prima virgulă sau punct este eliminat (100,000 se importă ca 100). Spațiile nu contează. 0 sau 1 = „Preț negociabil”. Zero pentru parent clădire/complex |
<surface> | Suprafață m² | Obligatoriu Obligatoriu pentru majoritatea tipurilor. Garaj și loc de parcare fără suprafață primesc implicit 18 m². Pentru teren vedeți teren și parcelă |
<surface_parcel> | Curte/parcelă | Opțional Suprafața curții în m². Folosită și ca suprafață a proprietății când surface lipsește |
<currency> | Monedă | Obligatoriu eur. Dacă lipsește, prețul apare aproape la jumătate. |
<category> | продажби / наеми | Obligatoriu |
<subcategory> | Tip proprietate | Obligatoriu Trebuie să fie o valoare suportată exactă (vezi mai jos) |
<internal_id> | Geo internal id | Obligatoriu Id-ul orașului, satului sau cartierului din fișierele geo. Dacă lipsește sau este greșit, locația este căutată în descriere; dacă nu este găsită, oferta rămâne nepublicată |
<subregion_id> | Id locație mapat | Opțional Folosit doar de unele integrări mai vechi. Nu vă bazați pe el — trimiteți internal_id |
<construction_type> | епк / панел / тухла / гредоред | Opțional Doar litere mici, vedeți valorile |
<floor>, <floorAll> | Etaj / etaje | Opțional Valoarea floor 0 este ignorată |
<building_condition> | Stadiul construcției | Opțional Vedeți valorile |
<build_year> | YYYY-MM-DD / YYYY | Opțional Dată completă sau doar anul (2005). Anul singur este acceptat de la 1800 până la 10 ani în viitor; altfel este ignorat. Clădirile mai vechi sunt afișate ca perioadă („Înainte de 1989” sau „Între 1990 și 2004”) |
<furnished> | 0 / 14 / 23 / 65 | Opțional 14 = mobilat, 65 = parțial mobilat, 0 și 23 = nemobilat. O valoare lipsă sau alta este înregistrată ca „Nu sunt sigur”, chiar dacă descrierea spune „mobilat” — de aceea trimiteți întotdeauna acest tag |
<heating_ids> | ID-uri prin , | Opțional 4, 6 și 18 = combustibil solid, 35 = aer condiționat, 44 = curent, 46 = centrală proprie, 80 = gaz. Celelalte id-uri sunt ignorate |
<parking_ids> | 52, 93 | Opțional 52 = garaj, 93 = loc de parcare. Celelalte id-uri sunt ignorate |
<rooms_count>, <bedroom_count>, <bath_count> | Numărători | Opțional Vedeți valorile implicite |
<exterior_ids> | ID-uri prin , | Opțional 42 = lift, 10 = drum asfaltat. Celelalte id-uri sunt ignorate |
<broker_id> | Agent source id | Obligatoriu Trebuie să coincidă cu un agent legat în Realistimo |
<construction_id> | Parent offer_uid | Opțional Vedeți how-to clădire/complex |
<youtube_link> / <youTube_link> | YouTube | Opțional |
<virtual_panorama_link> | Tur virtual | Opțional Sunt recunoscute linkuri de la Matterport, Giraffe360, CloudPano, Panoee, imot360, Zelanos, Renderimo, Webobook și Kuula (link scurt bit.ly). Celelalte linkuri sunt ignorate, fără să blocheze publicarea |
<Exclusive> | 0/1 | Opțional |
АТЕЛИЕ, ТАВАН · ТАВАН · ЕТАЖ ОТ КЪЩА · КЪЩА · ВИЛАconstruction_id)Trimiteți valorile exact ca în listă, cu majuscule. O valoare necunoscută oprește importul ofertei.
Completed (sau bds-completed) — Cu act 16SemiCompleted (sau semi_completed) — Cu act 15NotCompleted (sau not_completed) — Cu act 14UnderConstruction — În construcție/cu permis de construcțiePreConstruction (sau pre_construction) — Pe verde (proiect conceptual)Majusculele și minusculele contează.
епк — Cofraj retractabilпанел — Panouтухла — Cărămidă (pe placă)гредоред — Cărămidă (pe grinda)Doar litere mici: Тухла nu este recunoscut.
Când un tag lipsește sau este gol, importul înregistrează:
| Tag | Valoare implicită |
|---|---|
<heating_ids> | Curent |
<rooms_count> | La apartament — în funcție de subcategory (2-СТАЕН = 2), altfel 1 |
<bedroom_count> | Numărul de camere minus 1, dar cel puțin 1 |
<bath_count> | 1, dar nu mai mult decât numărul de camere |
<building_condition> | Cu act 16 |
<construction_type> | Nu sunt sigur (doar la vânzare) |
<furnished> | Nu sunt sigur (la toate tipurile) |
<surface> | Suprafața din descriere, dacă este menționată acolo; garaj și loc de parcare — implicit 18 m² |
Încălzirea, camerele, dormitoarele, băile, stadiul și tipul de construcție nu se completează pentru parcelă, teren agricol, garaj, loc de parcare și clădire nouă.
balcony_count, land_category, parcel_in_regulation, new_construction.subcategory este unul dintre НОВА СГРАДА, СГРАДА НОВО СТРОИТЕЛСТВО, ЗАТВОРЕН КОМПЛЕКС.<construction_id>PARENT_OFFER_UID</construction_id>.Pentru o parcelă nu există tag-uri separate — se trimite ca o ofertă obișnuită:
<subcategory>ПАРЦЕЛ</subcategory> pentru un teren de construcție sau ЗЕМЕДЕЛСКА ЗЕМЯ pentru teren agricol. Pădure, vie, pășune și livadă nu pot fi trimise deocamdată.<surface> este suprafața proprietății în m². O valoare între 0 și 1 este citită ca decare: 0.8 = 800 m² (cu punct, nu cu virgulă). Dacă surface lipsește, se folosește surface_parcel, apoi suprafața din descriere.<internal_id> al orașului sau satului este suficient — cartierul nu este obligatoriu.<exterior_ids>10</exterior_ids>. Pentru curent și apă nu există tag-uri — scrieți în descriere (în bulgară) exact „ток и вода на граница” (sau doar „ток на граница” / „вода на граница”). Alte formulări pot să nu fie recunoscute.ПАРЦЕЛ se înregistrează atât „Construcţie rezidențială” cât și „Construcţie industrială”, iar pentru ЗЕМЕДЕЛСКА ЗЕМЯ câmpul rămâne gol.land_category și parcel_in_regulation sunt ignorate.<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
Lasă Realistimo să urmărească în locul tău
😃 Instalează aplicația și te vom anunța primii când apare o anunț potrivit.
Astfel vei fi la curent cu noutățile imobiliare, statistici și știri de la Realistimo, fără spam: