Skip to main content

Real Estate — Single Office

Use this format when one office publishes its listings. The feed has an <agents> section and an <adverts> section; each <advert> points at its agent by reference.

Read first

Getting Started covers the shared rules — fetch schedule, the JamesEdition Feed Crawler 1.0 User-Agent, image rules, and supported video / virtual-tour sources.

Example

<?xml version="1.0" encoding="UTF-8"?>
<jamesedition_feed version="3.9">
<agents>
<agent reference="ag123">
<first_name>Steve</first_name>
<last_name>Smith</last_name>
<email>steve.smith@example.com</email>
<phone1>+1234567890</phone1>
<phone2>+1234567891</phone2>
<fax>+1234567892</fax>
<agent_license_id>636289</agent_license_id>
<profile_picture_url>https://example.com/steve.jpg</profile_picture_url>
<language_codes>eng,spa</language_codes>
<linkedin>https://linkedin.com/in/stevesmith</linkedin>
<instagram>https://instagram.com/stevesmith</instagram>
<facebook>https://facebook.com/stevesmith</facebook>
<tiktok>https://tiktok.com/@stevesmith</tiktok>
<biography>Luxury specialist; agent of the year 2022.</biography>
</agent>
</agents>

<adverts>
<advert reference="ls123" category="real estate">
<type>sale</type>
<price currency="USD" vat_included="yes">1607143</price>
<!-- rentals: send <rental_price_per_day currency="EUR">350</rental_price_per_day> instead of <price> -->
<price_on_request>no</price_on_request>
<vat>21</vat>
<property_type>Villa</property_type>
<title>Luxury Villa in Exclusive Area</title>
<description>A luxurious villa with formal rooms, a gourmet kitchen and a pool.</description>
<year>2014</year>
<preowned>yes</preowned>
<mls_number>mls124</mls_number>
<licence_id>VT-1234</licence_id>
<location>
<country>US</country>
<region>New York</region>
<city>Black River</city>
<address>123 Luxury St</address>
<zip>12345</zip>
<latitude>43.9732</latitude>
<longitude>-75.9108</longitude>
</location>
<hide_address>no</hide_address>
<bedrooms>5</bedrooms>
<bathrooms>4</bathrooms>
<floors>2</floors>
<living_area unit="sqm">217</living_area>
<land_area unit="sqm">361</land_area>
<emission_rating>A</emission_rating>
<consumption_rating>B</consumption_rating>
<amenities>
<pool>yes</pool>
<sea_view>yes</sea_view>
<air_conditioning>yes</air_conditioning>
<garden>yes</garden>
<garage>yes</garage>
</amenities>
<media>
<image>
<image_url>https://example.com/p1.jpg</image_url>
</image>
<image>
<image_url>https://example.com/p2.jpg</image_url>
</image>
<video>
<video_url>https://youtu.be/example</video_url>
</video>
<virtual_tour_link>https://my.matterport.com/show/?m=exampleID</virtual_tour_link>
</media>
<external_url>https://agency.com/listing/123</external_url>
<agent_reference>ag123</agent_reference>
</advert>
</adverts>
</jamesedition_feed>

Required fields

  • the reference and category attributes on <advert>
  • property_type
  • location/country and location/city
  • a price — price for sale / rental_price_per_day for rent (each with currency) or price_on_request=yes
  • at least 2 images
  • agent_reference matching an <agent>
FieldRequiredTypeExampleDescription
reference (attribute)Yesstringls123Unique advert ID, on the <advert> element.
category (attribute)Yesreal estatereal estateAsset category, on the <advert> element.
typeYessale | rentsaleSale or rent.
price (currency attribute)Yes¹int1607143 currency="USD"Sale price. currency = ISO 4217. For rentals use rental_price_per_day.
rental_price_per_day (currency attribute)Yes¹int350 currency="EUR"Per-day rental price, for type=rent. currency = ISO 4217.
price_on_requestNoyes/nonoWhen yes, price hidden on the public listing.
vatNonumber21VAT amount or rate on the price. The optional vat_included (yes/no) attribute on <price> states whether the quoted price already includes VAT.
vat_typeNoenumvat_includedAlternative to the vat_included attribute on <price>: vat_included / vat_excluded.
property_typeYesenumVillaSee Field reference.
titleNostringLuxury Villa…
descriptionNotextA luxurious villa…
yearNoint2014Year built.
preownedNoyes/noyesno for new-build.
completion_statusNoenumsecondaryAlternative to preowned: off_plan = new build, secondary / completed = pre-owned.
mls_numberNostringmls124
licence_idNostringVT-1234Rental / tourism licence ID, where regulators require one (e.g. Spain, Portugal).
trakheesi_permit_numberNostring7129834561Dubai (RERA) listing permit number, where required.
location/countryYesISO 3166-1 alpha-2US
location/regionNotext (name)New YorkState / region name (matched by name, not a code).
location/cityYesstringBlack River
location/addressNostring123 Luxury StHidden if hide_address=yes.
location/zipNostring12345
location/latitude · longitudeNofloat43.97Optional.
hide_addressNoyes/nonoHide the public address for this listing.
bedroomsNoint5Number of bedrooms.
bathroomsNoint4Number of bathrooms.
floorsNoint2Total floors in the property (how many storeys the building has) — not the floor the unit is on. A house is usually 1–2.
living_area (unit attribute)Noint217 unit="sqm"sqm/sqft.
land_area (unit attribute)Noint361 unit="sqm"sqm/sqft/ha/ac.
emission_rating · consumption_ratingNoenumAA–G, A+, B+, B-, A1–A4, X, NC, NI — see Field reference.
amenitiesNowrapper<pool>yes</pool>Amenities.
media/image/image_urlYes (≥2)urlhttps://…/p1.jpgJPEG/PNG/WEBP, ≤100, ≤20 MB each.
media/video/video_urlNourlhttps://youtu.be/…Supported video sources.
media/virtual_tour_linkNourlhttps://my.matterport.com/…Supported virtual-tour sources.
external_urlNourlhttps://agency.com/listing/123The listing's page on your own site — shown as "View on agency site".
agent_referenceYesstringag123Must match an <agent> reference.

¹ A price is required unless price_on_request=yesprice for type=sale, rental_price_per_day for type=rent.

Agent fields

FieldRequiredTypeExample
reference (attribute)Yesstringag123
first_name · last_nameYesstringSteve / Smith
emailYesstringsteve.smith@example.com
phone1Nostring+1234567890
phone2 · faxNostring
agent_license_idNostring636289
profile_picture_urlNourl
language_codesNostringeng,spa
linkedin / instagram / facebook / tiktokNourl
biographyNotext