# idealista properties integration - v6.00 ## Introduction This document describes how to export properties from an external source to idealista website. ## Business requirements + Properties must be associated to a specific customer. + Customer needs an active subscription in order to import its properties and advertise them on idealista. + Customer needs an active new development service in order to import its new development properties and advertise them on idealista. + Important: You must contact us for a change of the file version. It is not an automatic process. + To publish their Virtual Tours the customers must contact with their idealista account manager first in order to activate the service. The Virtual Tour providers allowed in idealista are: + 3D: Matterport and VistaPlayer3d + Other: Immoviewer, Spectando, Floorplanner, Realisti_co, Goldmark, Floorfy, Fastout, Panotour, Everpano, Toursvirtuales360, KeepEyeOnBall, Inmovilla, Abitarepn, Pano2VR, Plushglobalmedia, Vizor.io, Nodalview, Gothru, Guru360, Creotour, Habiteo, Vitrio, Plug-in.studio, Ppgstudios, 360forcurious, Roundme ## Data format and validation A JSON file for every customer has to be sent. Its fields are described in and can be validated against the following JSON schemas: + [customer.json](../schemas/properties/customer.json) - the main schema to validate the data. + [address.json](../schemas/properties/address.json) + [building.json](../schemas/properties/building.json) + [contact.json](../schemas/properties/contact.json) + [description.json](../schemas/properties/description.json) + [features.json](../schemas/properties/features.json) + [garage.json](../schemas/properties/garage.json) + [homes.json](../schemas/properties/homes.json) + [images.json](../schemas/properties/images.json) + [virtualtours.json](../schemas/properties/virtualtours.json) + [land.json](../schemas/properties/land.json) + [offices.json](../schemas/properties/offices.json) + [operation.json](../schemas/properties/operation.json) + [premises.json](../schemas/properties/premises.json) + [property.json](../schemas/properties/property.json) + [newDevelopment.json](../schemas/properties/newDevelopment.json) + [promo.json](../schemas/properties/promo.json) + [typology.json](../schemas/properties/typology.json) + [storage.json](../schemas/properties/storage.json) + [rules.json](../schemas/rules.json) ## Example You can find a file example [here](../examples/ilc1234567890123456789012345678901234567890.json). You can find a file example for newDevelopment [here](../examples/ilc1234567890123456789012345678901234567899.json). ## Data delivery and process The file has to be sent to an FTP account encoded with UTF-8 charset, usually we create one, but you can use your own FTP account. File's name must contain the idealista identification code of the customer (a 43 characters code that begins with 'ilc'), but you can add your own customer reference. You can send as many files as you wish and they will be processed in arrival order. We check the FTP account every 15 minutes, import the files, do a backup in our servers and delete them from the original FTP account. Please, be certain to use FTP binary transfer mode and do not send image files or any other data to the FTP folder. The file has to contain every property that the customer would like to publish on our website. We will identify all the changes and process the information. The properties not sent in the file will be deactivated. If we do not receive any file or if the file received does not contain any property, we will not execute any change (the properties status will be maintained). You must send files only if any of your properties have been modified or you are creating new ones. Do not send files without any change continuosly, otherwise we could block the automatic load. If you prefer that we download your file at a concrete hour instead of every 15 minutes lets us know to set it. If the same property is going to be listed as both sale and rent, you must send the same information twice (including the propertyCode), only changing the operation type and the price. This will generate two ads but it will only consume one publication slot. If you are going to start using this service and you have properties previously created on idealista, you will have to send it using the same reference, the same operation type and the same typology that they currently have in order to integrate it in our mass loading process. Otherwise the system won't detect it and they will be deleted and created again, losing its statistics. ## Data quality The more and accurate information you send, the more effectively we can present it to our users and generate qualified traffic to our customers. Moreover, in order to guarantee the quality and the effectiveness of the services provided to our users, keep in mind that the following fields are mandatory: + Price + Constructed area or plot area + Bedrooms value (Spain and Portugal), rooms value (Italy). The only exception to this is that the property is a studio, or the conservation state is "toRestore" + Bathrooms value for housing typologies + It is mandatory at least one of these three combinations in the address fields: + street name and postal code / locality + coordinates (latitude and longitude) + Only for Portugal: postal code with 7 digits + Only for coodinates positioning: if the number of the address is not sent the visibility will never be complete and show only street visibility without number. If the property has been geocoded without number and the number wants to be also displayed it must be sent in file and also be notified to our team so we can force the update of the visibility. Properties that do not respect these points are filtered out for quality reasons. ## Coherence adjustments We can make small changes in order to improve the quality of the ad, based on the data sent. Here are a summary of the most relevant changes: + If a property doesn't have bathrooms + if constructedArea <= 75, we set bathroom number to 1 + if constructedArea > 75, we set bathroom number to 2 + If a property doesn't have bedrooms + if constructedArea <= 70, we set bedroom number to 2 + if constructedArea > 70, we set bedroom number to 3 + If a property doesn't have lift + if there is addressFloor and it is >= 6, we set lift to true + If a property doesn't have constructedArea, we calculate it as usable area + 20% for Spain and Italy or usable area + 15% for Portugal + If a property doesn't have propertyVisibility, we set it to "idealista" by default + If a property doesn't have addressVisibility, we set it to "street" by default ## Process feedback We have two kinds of feedback available: + We can send you an email after every customer import process. This email contains the number of the ads received, processed and deactivated. If you would like to receive this kind of feedback, don't forget to ask for it and specify the email addresses where we should send it. + You can use our properties status service. Please, click [here](status.html) for more information. ## Contact If you would like to activate the export or if you have any question, don't hesitate to let us know: datafeed@idealista.com. ## Change Log All notable changes to this project will be documented in this file. ##### 24/04/2020 ##### Added - Virtual Tour service publication ##### 07/06/2019 ##### Added - new language available: danish. ##### 13/05/2019 ##### Added - data quality section. ##### 26/04/2019 ##### Added - new languages available: finnish, dutch, polish, romanian and swedish. ##### 11/12/2018 ##### Added - new image tags available. ##### 17/09/2018 ##### Added - [featuresAccessType](../schemas/properties/features.json) to specify the access type for lands. ##### 29/08/2018 ##### Added - [featuresHeatingType](../schemas/properties/features.json) to specify the type of heating for homes. ##### 04/12/2017 - Inital version properties integration