Documentation for import feed 2.0.0

In the following document we describe the XML structure that can be used to synchronize property listings from external sources in Indomio.portals.

This document has been structured to break down the information by topics to make it more streamlined and easy to consult.

Important Icons

We have introduced some conventions for the benefit of summary.

IconMeaningPosition on page
ListingOn the left side
AuctionOn the left side
Property up for auctionOn the left side
MandatoryNext to the XPath
DeprecatedOn the left side of a note
Direct link to section of the pageNext to the title
In-depth linkOn the right side of the paragraph
Link to section of the pageOn the right side of the paragraph
Back to main pageOn the right side of the paragraph
Downloadable resourceOn the right side of the paragraph
External pageOn the right side of the paragraph

XML format

Indomio allows agencies' listings to be imported automatically, subject to commercial agreement, from management systems or franchises.

How to submit information is discussed in more detail on a dedicated page.

The following sections describe the information with which you can integrate listings, we recommend validating the resulting feed with the XSD schema available to you for development. Validation is applied on every incoming listing, if it fails this step the listing is discarded. It is therefore advisable to validate the feed after each change.

Each piece of information, complete with compatible values, is contained in the XSD schema. This documentation can therefore be considered a readable translation of the schema itself.

Standard formats

Whenever it has been necessary to use a specific unit of magnitude, we have used universal and well-known standards, possibly applying ISO specifications or W3C guidelines on XML format.

With this in mind, to confidently identify the position each element should occupy within the feed we use the notation known as XPath:

//property/building/@IDType

In general

XML node and attribute names should be written as they are given, respecting upper and lower case letters. Over time we have tried to group information into logical groups, for example geographic attributes are organized within a //location container.

XML header

Each XML call or feed must have indicated the version of the standard itself (1.0), and by the document encoding UTF-8.

<?xml version="1.0" encoding="UTF-8"?>

Numbers

Whole numbers or decimals are expressed without thousand separators. According to the XML standard the dot . should be used as a decimal separator.The sign is needed only for negative numbers

-41.8968348

Flag

Several nodes and attributes can only take the values True or False (fields of type boolean). For them, the allowed values are

true
false

it is important that they all occur in lower case, it is not necessary to use CDATA and it is not recommended to insert spaces or carriage returns before or after these values, ideally:

<price currency="EUR" reserved="false">1000000</price>
...
<workshop>false</workshop>

The treatment of boolean fields conforms to the W3C-defined XML standard.

w3c

Date and time

Date and time (fields of type dateTime) are expressed according to ISO 8601 format:

2013-01-30T12:01:07

In other words: specify year in 4 digits, hyphen, 2-digit month, hyphen, 2-digit day, capital T, 2 digits for hour (00-23), colon, 2 digits for minutes (00-59), colon, 2 digits for seconds (00-59).

Note the T character as separator between date and time. It is not necessary to specify the Timezone. As a quick reference we refer you to the Wikipedia page.

Currency

Although Indomio provides only Euro as a permitted currency, you are always required to specify the currency according to the ISO 4217 standard, consisting of three capital characters.

EUR

Specific fields

Going into the specific details of a property you will find information peculiar to certain property categories. In other words you will find fields that make sense only for certain types of properties and not for others. These nodes are marked with the following icons:

CategoryExpectedUnscheduled
Residential
Buildings / buildings
Garages / parking spaces
Lands
Offices / coworking
Warehouses
Sheds
Stores / commercial premises
Construction sites / new construction

Batch streams (obsolete)

Follow these instruction but add a /feed/properties XML node container. All XPath notations are valid in both modes.

Property insertion or update

The following are specifications of the xml nodes to be sent to describe the characteristics of a property listing. Where not explicitly stated the absence of an element or attribute in a feed is interpreted to mean that the relevant information is to be removed.

//property

Container node of the property to be posted or updated.

AttributeDescriptionStatus
@operationType of operation required
@IDid listing on IndomioOptional

possible values for @operation:

The write value updates the property information. If the property is not found a new listing will be created. The archive value updates the property information and archives it.

For Real Time REST calls this node has root function, so each REST call can contain one and only one listing:

<property ID="12345" operation="write">
  ...
</property>

In Batch mode it is necessary to send the entire set of listings, so we will have a variable number of property nodes structured like this:

<feed>
    <properties>
        <property ID="12345" operation="write">
            ....      
        </property>
        <property ID="54321" operation="write">
            ....      
        </property>
        ...
    </properties>
</feed>

//property/unique-id

id of the property in the management, is used to identify the listing. When paired with the agency email, under the responsibility of the sender, it must be unique.

//property/published-on

date of first publication of the property.

//property/date-updated

date the property was last updated, must always be updated after each change to the listing.

//property/agent

agency requesting publication of the listing

//property/location

Node container of the geographic data of the property.

//property/pictures

Container of images of the property.

//property/videos

Container of videos of the property.

//property/estates

Container of housing units for sale.

//property/reference-code

Agency reference code (max 255 characters), this is a free text field at the client's discretion. There is no need to guarantee its uniqueness

//property/publish

Visibility status, within the Real Estate portal.

To guarantee visibility on Real Estate, submit the Publish node. If the status equals true, the listing is published and therefore visible on the Real Estate portal. If the status equals false, it remains visible on the management, but not on the Real Estate portal.

<publish>
    <portal id="immobiliare.it" status="true" />
</publish>

//property/publish/portal

container of extra-visibility information (the agency must be enabled to submit). In the absence of the known publish the visibility of the listing remains unchanged.

AttributeDescriptionStatus
@idthe id of the portal for which you want to set the extra-visibilities
@statusspecifies whether the listing should be published (true) or should only be available on the management (false)

possible values for @id:

Example xml:

<publish>
    <portal id="immobiliare.it" status="true">
      <visibilities>
        <visibility op="active">premium</visibility>
        <visibility op="active">top</visibility>
        <visibility op="remove">showcase</visibility>
      </visibilities>
    </portal>
  </publish>

//property/publish/portal/visibilities

container of portal-specific extra-visibilities (they are scaled, if diponible, from the agency's ceiling).

//property/publish/portal/visibilities/visibility

specifies a single extra-visibility to be added or removed

AttributeDescriptionStatus
@opspecifies the type of operation required for a specific extra-visibility (default: active)

possible values for @op:

possible values for the node:

//property/transactions

container of information about price and type of contract (sale or rent)

Below is an example:

<transactions>
    <transaction type="S">
      <price currency="EUR" reserved="false">140000</price>
    </transaction>
</transactions>

//property/transactions/transaction

AttributeDescriptionStatus
@typespecifies the contract (rent or sale) under which the property is offered
@on-redeemlease with redemption
@ownershipcontract model
@ownership-quotaownership share

possible values for @type:

possible values for @ownership:

@ownership-quota represents the ownership share and is a free text field.

//property/transactions/transaction/price

property price

AttributeDescriptionStatus
@currencycurrency (pass 'EUR')
@reservedspecifies whether price is confidential, if true price will be hidden

//property/building

container of information about the type of the property

AttributeDescriptionStatus
@IDTypeid of the type of the property.

The list of possible values, and explanation of each, is available here

<building IDType="14" />

//property/building/status

status of the property.

Possible values:

//property/building/class

class of the property.

Possible values:

//property/features

This container is intended for the main descriptive features of the property.

//property/extra-features

Container intended for more specific features of the property.

//property/extended

Extension of features of the property.

//property/documents

Container of the property's documents.

//property/blueprints

Container of the property's floor plans.

//property/raw-360s

Node containers of the listing's spherical images.

//property/registrar-data/section

cadastral data: section

//property/registrar-data/sheet

cadastral data: sheet

//property/registrar-data/parcel

cadastral data: parcel

//property/registrar-data/sub-parcel

cadastral data: subparticle

//property/registrar-data/sub

cadastral data: subaltern

//property/registrar-data/sub-2nd

cadastral data: subaltern 2

//property/registrar-data/attached

cadastral data: stapled

//property/registrar-data/revenue

cadastral data: cadastral rent. Decimal value expressed in Euros.


2025 Indomio.com