Domain Bulk Upload Information
Last Updated: 25 June 2010
Important
This documentation is for the information of companies uploading to domain.com.au.
If you wish to upload to domain.com.au you may be able to do so through an intermediary who already offers this facility.
Contact us for further information if required.
For companies wishing to bulk upload to Domain directly, please write to webmaster@domain.com.au
Please note that this service attracts a monthly fee.
Information for Uploaders
Completed files are transferred from the FTP host to Domain every 20 minutes, 24x7. The parser will run hourly, on the hour. The listings should be visible on the site once the job has run.
Technical information
Upload package structure
The BU uses XML and image files which are zipped and uploaded via FTP. Valid image formats are JPG and GIF.
Only one Zip file per uploader is required. Each zip file contains:
one
XML file per Domain agency
all
images pertaining to the ads in the XML file(s)
Zip and XML files are processed in chronological order oldest first.
Please do not use folders within your zip files.
File names should be kept simple, spaces and 'unusual' characters should be
avoided.
Distinct filenames should be used (perhaps with an embedded date/timestamp e.g.
"MyUploadFile_2002_11_04_1330.ZIP"). You may reuse the same filename but
only the last uploaded will be kept making it difficult for us to resolve feed
problems.
Upload transport
The transport medium is FTP. Uploaders are assigned an FTP point and user credentials.
XML structure
The XML format is validated against a DTD (Document Type Definition). The latest DTD can be found here.
XML parse errors
The parser will fail a file if it doesn't conform to the rules specified in the DTD file. The error email will have the error message returned by the parser complete with the line number and line position of the error.
The parser will also fail if exotic ASCII characters (ie those with a character value of greater than 127) are not coded (sometimes referred to as escaping).
On the MS platform a method such as Server.HTMLEncode(string) will do this.
An alternative is to leave the characters as they are and specify an 8 bit
encoding scheme e.g.
<?xml version="1.0" encoding= "iso-8859-1" ?>
For more information seehttp://www.w3.org/TR/html401/sgml/entities.html also MSDN article Q238833.
Images
Images that do not satisfy these specifications, or appear pixelated or distorted, may be rejected.
- - Images of the property must be in JPG format
- - Floor plans must be in GIF format
- - All images must be 800 x 600 pixels
- - All images must be a resolution of 72dpi
- - Size ratio should be 4:3. Other size ratios may appear distorted
- - The first image you submit will be the main image and used as the thumbnail on the search results page
- - Portrait images are acceptable but cannot be the main image
- - Up to 27 images are permitted
Price ranges and searching
A property can be searched for by price range. The price ranges where a listing is searchable are determined by the SearchFrom and SearchTo attributes of the Price tag.
Price ranges and searching - backward compatibility
Search price can be set using the Price tag in it's original format, or using the PriceHidden tag. For example:
<Price>800000</Price> sets the search price to $800,000.<PriceHidden Low="200000" High="300000" Show="No" /> sets the search price range to $200,000 to $300,000. Note that the Price and PriceHidden tags should be used as alternatives. If both are specified, the Price tag will take precedence and values in the PriceHidden tag will be ignored.
Refer to details of these tags at the foot of this page.
Suburb Validation
The BU will attempt to validate Suburb/State/Postcode combinations at upload time. If a suburb is not found in our location table the region and area cannot be set (postcode may be used to attempt a region/area match however searches that include suburbs will not find the property). Region and Area categorization is required due to the structure of the Domain search.
Domain uses the Australia Post postcode locality database (www.auspost.com.au) as a starting point. All spellings need to concur with this list e.g. "Mount Pleasant" not "Mt Pleasant".
Reporting
An email will be sent to the address specified in the XML file detailing the results of processing that file.
Data dictionary
This should be read in conjunction with the Domain Bulk Uploader XML DTD.
| Header Information | |
| Field | Description |
| ListingProvider | A string identifying the data provider i.e. you - this will be assigned to you. |
| DomainAgencyID | The Domain agency ID number, a list of Agency ID's can be supplied. |
| AgencyName | No longer used. Full agency name derived from DomainAgencyID.Included for backward compatibility. |
| Report | Email address for feed report. As this is a technical report
it's
better that this isn't the agencies email address rather the
technical contact
for the feed process. N.B. The attribute ReportFormat (see DTD) is ignored. Emails are sent for all XML files unless an email address is not supplied. |
| Property Information | |
| Field | Description |
| AdType | Type of ad. Must be either "Sale" or "Rent".
Example: <AdType Type="Sale" /> |
| RentalMethod attr: Type | Type of rental. Must be either "Standard" or "Holiday". Currently optional. If missing Rental Method defaults to "Standard". |
| AgencyContact | Domain ID of the contact person at the agency. Must be the ID as used by Domain in the Agent Admin section of the site. A list of ID's can be supplied on request. |
| Property attr: ProviderAdID | Your ad ID up to 30 characters will be stored. This
value is
used to identify your ad for updates.
Example: <Property ProviderAdID="Test1234" /> |
| DataAction | Action must be either "Insert" or "Delete". If an
"Insert"
record is received with the same ProviderAdID as an exisitng record
then the
transaction will be run as an update of that record.
Example: <DataAction Action="Insert" /> |
| PublicationDate | No longer used - all ads assumed to go live immediately |
| UnitNumber | String max 10 characters. Can be used in conjunction with Address DisplayOption when hiding address from users. |
| PropertyNumber | String max 10 characters. Can be used in conjunction with Address DisplayOption when hiding address from users. |
| Street | Max. 100 characters |
| Suburb | Max. 25 characters |
| Postcode | 4 character Australia Post postcode |
| State | 3 character abbrevation e.g. ACT NSW NT QLD SA TAS VIC WA |
| Address attribute: DisplayOption |
"FullAddress", "StreetAndSuburb" or "SuburbOnly" defaults to "FullAddress" |
| PropertyType | Must be one of the types specified in the PropertyType ATTLIST. Valid Property Types are: "House", "Semi-Detached", "Terrace", "Apartment", "Studio", "Townhouse", "Villa", "Warehouse", " Land", "Retirement", "Rural", "Commercial". |
| PropertyDescription |
3000 characters max. "Well behaved" HTML permitted.
HTML must be
well-formed e.g. use <BR /> not <BR>. |
| PropertySummary | 'Headline' Any HTML stripped out. If the Summary is less than 80 characters long then the description is concatenated to it and the total trimmed to 250 characters. |
| Bedrooms | Integer value only. Optional |
| Bathrooms | Integer value only. Optional |
| Carspaces | Integer value only |
| ConjunctionAgency | Text string. Optional |
| Area |
Building area in square metres, Optional |
| Land Area Attributes: Value Unit |
"Value" must be an integer. "Unit" must be one of "Square Metres",
"Acres", "Hectares", "Square Feet", "Square Yards", "Square Miles", "Square Km", "Squares". Optional e.g. <LandArea Value="200" Unit="Square Metres"></LandArea> |
|
Auction Attributes: Date Time |
Optional, ignored for rental properties. Date attribute format: dd/mm/yyyy Must be in day month year order and use numeric values. It is highly recommended that 4 digit years are used. e.g. "03/03/2009" for the third of March 2009. Time attribute format: hh:mmAM|PM e.g. <Auction Date="4/04/2009" Time="1:30pm" /> If these guidelines are not followed the results may be unpredictable. |
| AuctionLocation | Optional. Venue for the Auction. String max 100 characters |
| Bond | Optional. Ignored for sale properties. |
|
Price |
Used to specifiy the price range for searching and set the display
price. For residential Rentals set the price as Weekly. For Commercial Leases set the price as ANNUAL Use the lowest and highest prices the property is expected to sell/rent for to set search price. e.g. <Price SearchFrom="400000" SearchTo="500000" DisplayText="Offers over $450K considered"></Price> "SearchFrom" and "SearchTo" must be integers. "DisplayText" takes a text string. |
|
Inspection Attributes: Date Time |
Optional. Date attribute format: dd/mm/yyyy Must be in day month year order and use numeric values. It is highly recommended that 4 digit years are used. e.g. "03/04/2009" for the third of April 2009. Time attribute format: hh:mmAM|PM e.g. <Inspection Date="14/03/2009" Time="1:30pm" /> e.g. <Inspections> <Inspection Date="12/03/2009" TimeFrom="1:30pm" TimeTo="2:30pm" /> <Inspection Date="13/03/2009" TimeFrom="2:30pm" TimeTo="3:30pm" /> <Inspection Date="14/03/2009" TimeFrom="3:30pm" TimeTo="4:30pm" /> </Inspections> |
| VirtualTourURL | Optional. URL of the virtual tour for the property. |
| Features | Comma-separated list of features. Features are searchable but must be spelt correctly. Searchable Features and spelling - Swimming Pool, Secure Parking, Pets allowed, Internal Laundry, Gas, Floorboards, Ensuite, Cable, Built in wardrobes, Air conditioning |
| VideoURL | Optional. URL of the video for the property. |
| SustainabilityDeclarationURL | Optional. URL to access the Sustainability Declaration form for the property. Required only for QLD Sale Listings from 1 January 2010. e.g. <SustainabilityDeclarationURL>www.sdform.com.au</SustainabilityDeclarationURL>. Note: If the Sustainability Declaration form is not available to be uploaded online, please provide information in the listing description text regarding where potential buyers can get a copy of the sustainability declaration. |
| UnderOfferOrContract | Optional. Must be either "True" or "False". Set for Sale listings only and must follow the "AdType" tag. |
| EnergyEfficiencyRating | Optional. Valid values range from 0 to 6 inclusive, in increments of 0.5. |
| IsNew | Optional. Takes no value. Include this tag to upload a
Listing as a New Development e.g. <IsNew /> |
| Files | Format attribute must be either "Photograph" or
"FloorPlan" File name in ZIP file of image e.g. "XYZ108.jpg" No '&' or space characters in filenames Example: <Files> <File Format="Photograph">1.jpg</File> <File Format="Photograph">2.jpg</File> <File Format="Photograph">3.jpg</File> <File Format="Photograph">4.jpg</File> <File Format="Floorplan">5.jpg</File> </Files> |
| Contacts attributes: Firstname Lastname Phone Mobile Fax |
Up to 3 contacts for the listing. Minimum required
attibutes: Firstname
and Lastname |
| Sold Details | |
| Field | Description |
| SoldDate |
The date of the sold contract. Date attribute format: dd/mm/yyyy Must be in day month year order and use numeric values. It is highly recommended that 4 digit years are used. e.g. "14/08/2008" for the fourteenth of August 2008. Example: <SoldDate>14/08/2008 </SoldDate> |
|
SoldPrice Attributes: display |
The price the property was sold for. The "display" attribute indicates how the price will be displayed for free to the general public, including on Domain.com.au and in newspaper publications. The value can be: "yes" or "true": will display the price as provided. "no" or "false": The price will be stored but will not be displayed. "range": the exact price will be stored but will be displayed as a range. example: <SoldPrice display="range">500000</SoldPrice> |
|
SoldType Attributes: type |
The type of the sale. The attribute "type" can have the value "Auction", "PrivateTreaty" or "PriorToAuction" Example: <SoldType type="PrivateTreaty" /> |
| Code Example |
<SoldDetails> <SoldDate>09/11/2008</SoldDate> <SoldPrice display="range">525000</SoldPrice> <SoldType type="PrivateTreaty"></SoldType> </SoldDetails> |
| Leased Details | |
| Field | Description |
| LeasedDate |
Optional. The lease start date. Date attribute format: dd/mm/yyyy Must be in day month year order and use numeric values. It is highly recommended that 4 digit years are used. e.g. "14/08/2008" for the fourteenth of August 2008. Example: <LeasedDate>14/08/2008 </LeasedDate> |
| LeasedPrice |
Optional. The weekly rental price. The weekly rental price is displayed when provided. Example: <LeasedPrice>500</LeasedPrice> |
| LeasedDuration |
The duration of the lease in weeks. Example: <LeasedDuration>26</LeasedDuration> |
| Code Example |
<LeasedDetails> <LeasedDate>23/11/2008</LeasedDate> <LeasedPrice>950</LeasedPrice> <LeasedDuration>26</LeasedDuration> </LeasedDetails> |
| Withdrawn Details | |
| Field | Description |
|
Withdrawn Attributes: status |
Optional. Indicate if the listing is withdrawn. The "status" attribute indicates if the listing is withdrawn or not. The value can be: "yes" or "true": will mark the listing as withdrawn. "no" or "false": will mark the listing as not withdrawn. <Withdrawn status="yes" /> |
Backward Compatibility
The previous format for the Price tag, PricePrefix and PriceHidden tags, and LandArea and InspctionDetails tags, are still supported. Details are as follows:
| Price Upload - Backward Compatibility | |
| Field | Description |
| Price | Optional. Sale price for sale properties, weekly rental price for residential rental properties. ANNUAL rental for Commercial rental properties. If a Price is provided for sale properties, the property will be treated as a "Sale", and the searchable price range will be based on this Price. Consequently, any details entered in Price Prefix, PriceHidden or Auction Date, will be ignored. |
| Price Prefix | String max 30 characters. Appears before the displayed price e.g. "Offers from", "Price guide", where the price is set using the "PriceHidden" tag and the "Display" attribute is set to "Yes". |
|
PriceHidden |
Optional. Used to specifiy the price range for searching and
enabling
hidden price range to be shown on ad display page. Use the lowest and highest prices the property is expected to sell for. e.g. <PriceHidden Low="310000" High= "370000" Show="Yes" /> N.B. "Show" attribute default = "No" |
| LandArea | String max 20 characters. Specify units. If no units specified defaults to sqm. Optional |
| InspectionDetails | Max. 500 characters. Free text setting out the Open for Inspection dates and times. |