homeaway.com custom integration xml specs ( constructing xml feed from your site rentals to feed to...
DESCRIPTION
Home-away custom integration specs. Explains how to construct your xml feed so homeaway.com can pull in the data to be displayed on their site.TRANSCRIPT
Global Client Integration Services
HomeAway Standard XML Feed The most efficient way to export your property information and calendar data into the HomeAway system is to provide an XML document with all the information. This document details the XML structure that HomeAway uses to import your properties into the system. Section 1 is an overview of the document structure. Section 2 provides a sample implementation that can be used as a reference. Section 3 describes how to validate that your XML is correct. Section 4 lists all elements that can be included in the XML document and how they are used. For general questions of concerns, you can contact your Account Manager, email us at [email protected], or call the Property Managers group at 1-888-581-1849.
1. XML structure
The root of the XML document is the units element, composed of several unit
elements. Each unit element represents one property to be imported and consists of four main sections:
source – Source id and url from the owner’s website
unit_details – Details about the property’s location and amenities
availability – Details for the property’s availability calendar
rates – Details about the property’s rates
All four sections are required for new properties. After your properties are initially imported into the HomeAway system, the source section must stay the same if you choose to have your rates and calendar automatically updated.
2. Example document Below is a sample document that may be provided by an owner. A more detailed example is also provided as the document sample_xml_feed.xml.
<?xml version="1.0" encoding="UTF-8" ?>
<units>
<unit brand="" id="" sub_unit="">
<source>
<id>Bluebonn1</id>
<uri>http://www.example.com/property/Bluebonn1.html</uri>
</source>
<unit_details>
<kind>house</kind>
<changeover_day>flexible</changeover_day>
<min_los>3</min_los>
<floor_area units='ftsq'>1150</floor_area>
<title>Bluebonnet Villa</title>
<headline>Historic Home on Lake Travis</headline>
<description>
<paragraph>Bluebonnet Villa is a historic house
with classic architecture near the fun and beautiful Lake Travis.
The large master bedroom has its own en suite bathroom with a spa
tub. The kid's room has sports equipment and board games to keep
any child happy.</paragraph>
<paragraph> Just a ten-minute walk from the shore
of beautiful Lake Travis—one of the most desired locations in the
region for outdoor recreation, including fishing, boating,
swimming, scuba diving, picnicking.</paragraph>
</description>
<max_occupancy>5</max_occupancy>
<bedrooms number='2' />
<bathrooms number='2' />
<images>
<image>
<title>Kitchen</title>
<uri>http://www.example.com/images/s3B_89hqe.jpg</uri>
</image>
<image>
<title>Pool</title>
<uri>http://www.example.com/images/Awx9_sd3l.jpg</uri>
</image>
</images>
<latitude>52.13837000718</latitude>
<longitude>11.946440080859</longitude>
<country>US</country>
<state>TX</state>
<city>Austin</city>
<street>123 Bluebonnet St</street>
<postcode>12345</postcode>
<locale>
<description>
<paragraph></paragraph>
</description>
<nearest>
<place>major airport</place>
<distance units='miles'>10</distance>
<title>Austin-Bergstrom International
Airport</title>
</nearest>
</locale>
<unit_attributes>
<attribute>lake</attribute>
<attribute>air-conditioning</attribute>
<attribute>children welcome</attribute>
<attribute>4 ring stove</attribute>
</unit_attributes>
</unit_details>
<availability available='false'>
<range starts_at='2011-07-24' ends_at='2011-08-14' />
<range starts_at='2011-08-20' ends_at='2011-09-03' />
<range starts_at='2011-09-04' ends_at='2011-09-30' />
</availability>
<rates>
<description></description>
<currency>USD</currency>
<rate>
<starts_at>2011-06-01</starts_at>
<ends_at>2011-09-30</ends_at>
<title>Summer rate</title>
<min_los>3</min_los>
<night>160</night>
<week>1050</week>
</rate>
<rate>
<starts_at>2011-09-30</starts_at>
<ends_at>2011-11-15</ends_at>
<title>Autumn rate</title>
<min_los>3</min_los>
<night>150</night>
<week>1000</week>
</rate>
</rates>
</unit>
</units>
2a. Itemizing bedrooms & bathrooms To include more details about bathroom amenities, remove the bathrooms element that has just the number of bathrooms:
<bedrooms number='2' />
and replace it with itemized bathroom elements similar to the following: <bathrooms>
<bathroom>
<kind>Full</kind>
<attribute>Bath with Shower</attribute>
<attribute>Toilet</attribute>
</bathroom>
<bathroom>
<kind>Full</kind>
<attribute>Jacuzzi</attribute>
<attribute>Toilet</attribute>
</bathroom>
</bathrooms>
Bedrooms can be detailed in the same manner: <bedrooms>
<bedroom>
<title>Master bedroom</title>
<notes>Cozy reading nook</notes>
<bed>
<size>queen</size>
</bed>
</bedroom>
<bedroom>
<title>Children’s bedroom</title>
</bedroom>
</bedrooms>
3. Validation Providing a properly formed XML document is necessary to prevent delays in listing your properties. There are many methods you can use to check your XML against the provided schema.xml.
For Ruby programmers, we provide the file relax_ng_validator.rb and as a validation program. By default, the program uses schema.xml to validate the sample xml document provided. Change the file location in the program to check your XML document. If the XML is correct, the output of the program will be "No errors". Please note that while validation ensures the XML is properly formed, it does not judge the quality of the data. Include a full description and as many amenities as possible for the best performance of your listing.
4. Details for individual elements This section lists all elements that can be included in your XML document along with their descriptions. Req describes whether or not the element is required. Number describes the number of times the element can occur.
Element Req Number Description
units Y 1 Container for all units
unit Y 1+ Container for information about a single unit. The attributes brand, id, and unit will be set by HomeAway and may be omitted
source Y 1 Container for unit information from owner‟s website
id Y 1 Unique identifier to refer to this property, preferably as used on owner's public-facing website
uri N 1 Full (absolute) url of property on owner's website
unit_details Y 1 Container for details about unit. Can skip if just updating availability or rates for an exisiting property
kind Y 1 Type of unit. Values are „apartment‟, „barn‟, „boat‟, „bungalow‟, „cabin‟, „castle‟, „chalet‟, „chateau/ country house‟, „condo‟, „cottage‟, „farmhouse‟, „house‟, „house boat‟, „mobile home‟, „villa‟, „yacht‟
disposition N 1 Values are „detached‟, „semi-detached‟, „terraced‟
changeover_day Y 1 One of: „flexible‟ or negotiable‟, „Monday‟, „Tuesday‟, „Wednesday‟, „Thursday‟, „Friday‟, „Saturday‟, „Sunday‟
min_los Y 1 Minimum length of stay (in days)
floor_area N 1 Amount of floor area. The attribute units should be specified as either „mtsq‟ (square meters) or „ftsq‟ (square feet)
title Y 1 Name of the property
headline Y 1 Headline to be shown at top of listing
description Y 1 There is a 1000 character limit for main description. We'll truncate descriptions at the nearest sentence to the 1000 character limit. Please make best use of bedroom, bathroom and amenity descriptions
paragraph Y 1+ Single paragraph of description
max_occupancy Y 1 Maximum occupancy of the property
bedrooms Y 1 Container for details about bedrooms. The attribute number should be included only if not including itemized bedroom elements
notes N 1 Description of bedrooms
bedroom N 1+ Container for details about bedroom
title N 1 Title to identify the bedroom
notes N 1 Additional description of individual bedroom
bed N 1 Container for details about beds
size N 1 Size of bed. Values are „king‟, „queen‟, „double‟, „single‟, „child‟, „cot‟, „futon‟
bathrooms Y 1 Container for details about bathrooms. The attribute number should be included only if not including itemized bathroom elements
notes N 1 Description of bathrooms, used if bathrooms are not described individually
bathroom N 1+ Container for details about bathroom.
kind Y 1 Type of bathroom. Values are „Full‟, „Separate WC‟, „Shower room‟
attribute N 1+ Attribute of bathroom. Values are „Toilet‟, „Bath with Shower‟, „Bath (no shower)‟, „Shower Enclosure‟, „Jacuzzi‟, „Bidet‟, „Outdoor Shower‟
notes N 1 Additional description of individual bathroom
garden_chairs N 1 Number of garden chairs
beach_chairs N 1 Number of beach chairs
lounge_seating_for N 1 Number of people who can be seated in lounge area
dining_seating_for N 1 Number of people who can be seated in dining rom
images Y 1 Container for images of the property
image Y 1+ Container for details about an individual image
title N 1 Title of the image
uri Y 1 Full (absolute) url of the image
latitude Y 1 Latitude of the property‟s location
longitude Y 1 Longitude of the property‟s location
country Y 1 Two-character code for country where property is located
state N 1 Two-character postal code for state property is located
city Y 1 Name of city where property is located
street N 1 Street address of property
postcode N 1 Post code of property
gbs_node N 1 Container for location details to be provided by HomeAway
brand Y 1 Identifier for branded HomeAway site
id Y 1 Unique identifier for location node
string Y 1 Text description of location node
locale Y 1 Container for location details provided by property manager
description Y 1 Container for text description of location
paragraph N 1+ Single paragraph of description
nearest N 1+ Container for data about a nearest attraction
place Y 1 Type of attraction. Values are „major airport‟, „beach airport‟, „ferry port airport‟, „railway station airport‟, „motorway junction airport‟, „bar/pub airport‟, „ski airport‟, „golf airport‟, „restaurant‟
distance Y 1 Distance from attraction. The attribute units should be specified as 'kilometer', 'miles', or 'meter'
title Y 1 Name of attraction
unit_attributes Y 1 Container for attributes of the property
attribute Y 1+
One of the specified attributes in “Unit Attributes” list in section 4a
availability Y 1 Container for all availability data for unit. The attribute available should be true if available on all days, false otherwise
range N 1+ Details for a particular range when property is not available. The first and last days in the range are specified by the attributes starts_at and ends_at (yyyy-mm-dd format)
rates Y 1 Container for information about rates
description N 1 Container for up to 3 paragraphs describing rate policies and supplements
paragraph N 1 - 3 Single paragraph with 1000 character limit. We truncate paragraphs at the nearest sentence to the 1000 character limit.
currency Y 1 Currency code for type of currency used (e.g. EUR, USD)
rate N 1+ Container for details about a specific rate
starts_at N 1 First day rate is available (yyyy-mm-dd format). Required if ends_at is specified
ends_at N 1 Last day rate is available (yyyy-mm-dd format). Required if starts_at is specified
title N 1 Title for this rate
min_los N 1 Minimum length of stay for which rate is applicable
night N 1 Rate per night
week N 1 Rate per week. Required if per night rate not set
weekend_night N 1 Rate for a weekend night
weekend N 1 Rate for a single weekend
month N 1 Rate per month
season N 1 Rate per season
note N 1 Notes to be included with rate details
5. Unit Attributes HomeAway itemizes many different attributes that a property may have. If an attribute is provided that is not in this list, it may be automatically matched to one of these attributes or it may be left out if no match is found. Use the specific attributes mentioned in this list to ensure they are properly advertised. Attributes here are listed by category.
Location beach city centre mountain near the sea resort rural town village waterfront lake river Entertainment TV satellite or cable video player radio stereo system CD audio tape player DVD books books - fiction/non-fiction books - kids table football game room games - all ages games - kids music library piano ping pong table pool table toys video library videogame console videogames Accomodation Type self-catering catered bed & breakfast guest house
General telephone air-conditioning central heating linen provided daily maid service fax towels provided safe sunbed fitness room staff jacuzzi sauna hot tub massage chauffeur private chef concierge activities guide alarm clock bottled water ceiling fans water cooler filtered water firewood hair dryer laundry soap local activities guide local maps mosquito magnet paper towels local restaurant guide security system shampoo soap toilet paper whirlpool events allowed Kitchen dish washer fridge freezer
hob oven microwave washing machine clothes dryer grill 4 ring stove 2 ring stove kitchenette cooking utensils coffee maker toaster iron & board blender coffee grinder ice maker lobster pot mini-fridge spices stove top burners Living Room fireplace sofabed tiled stove woodstove Outside garden terrace balcony barbecue parking garage tennis court child's swing sand pit motorboat car sailboat kayak canoe bike boat outdoor grill
wooden decking boat dock gated community outdoor grill charcoal outdoor grill electric outdoor grill gas parking off street parking on street patio porch conservatory veranda walkway to water Outdoor Shower Pool / Spa indoor pool outdoor pool heated pool private pool communal pool indoor hot tub outdoor hot tub spa/whirlpool steam shower whirlpool Suitability not suitable for children not suitable for elderly or infirm pets considered pets not allowed wheelchair accessible wheelchair inaccessible suitable for elderly or infirm children welcome children elderly or infirm wheelchairs pets non smoking only low allergen environment long term rentals available
Local Activities swimming tennis walking sailing cycling fishing horse riding ski golf wind-surfing water skiing mountain biking mountaineering paragliding roller blading diving surfing hunting antique hunting Property Type estate lodge townhome Forms of Payment accepts credit card Theme romantic family away from it all historic budget activity tourist attractions luxury farm holidays holiday complex spa adventure
Communication / Internet internet access dialup access broadband access wireless broadband computer available ISDN access mobile phone computer macintosh computer PC Meals booking possible included in price breakfast breakfast/lunch breakfast/lunch/dinner Onsite Services housekeeper optional housekeeper housekeeper included Nearby Services babysitting massage therapist medical services Attractions arboretum ATM/bank autumn foliage babysitting bay botanical garden caves churches cinemas duty free shops eco tourism equestrian events fitness centre forests
groceries hospital laundrette - serviced library marina museums naturist beach playground pond rain forests recreation centre theme parks water parks Leisure Activities beachcombing bird watching deepsea fishing fly fishing freshwater fishing gambling casinos hiking hunting big game hunting small game ice skating jet skiing live theatre luaus mountain climbing outlet shopping paddle boating pier fishing rafting sight seeing sledding snorkelling bay fishing caving surf fishing water tubing whale watching whitewater rafting Nearby Activities
golf pass optional ski lift pass ski pass optional Nearby Attraction / Facility laundrette - not serviced reefs restaurants ruins scenic drives synagogues volcano waterfalls winery tours zoo Onsite Equipment car included car optional backpack deck chairs beach towels binoculars boat+paddles cooler large cooler small crows nest fish cleaning table golf cart golf clubs inflatable boat pedal boat raft telescope thermos flask water skis highchair