AcuWeb API: Property Command

Another post about the AcuWeb API, since I missed posting one yesterday there will be two today. The first command I’m going to focus on today is the Property Command, more details about the request/response can be found within the AcuWeb API, but I hope to give a general overview as to how this command can be used. For more details on AcuWeb API and the search message see my previous post.

As with all AcuWeb commands input can be achieved by either XML input via HTTP POST or via the querystring. The property command accepts one parameter, which is mandatory. The PropertyCode parameter controls which property to retrieve details for. The REST URL for this page is:

Property.aspx?PropertyCode=LC5

The equivalent post XML is shown below, this XML should be sent via HTTP POST to the URL Property.aspx.

   1: <Property>

   2:   <PropertyCode>LC5PropertyCode>

   3: Property>

A list of valid property codes can be obtained using the AcuWeb API command: PropertyList.  I’ll be covering this command soon in a future blog post.

Shown below is an example response, the response in some regards is quite similar to the search command, and the two commands have many shared nodes.

   1: <Property>

   2:   <PricingLink>Price.aspx?PropertyCode=LC5&Date=$Date$&Nights=$Nights$PricingLink>

   3:   <PropertyCode>LC5PropertyCode>

   4:   <PropertyName>The PenthousePropertyName>

   5:   <Overview>Nice Cottage overlooking the sea.Overview>

   6:   <RegionCode>BRIRegionCode>

   7:   <SiteCode>CBHSiteCode>

   8:   <PropertyType>HPropertyType>

   9:   <Attributes>

  10:     <Attribute>

  11:       <Name>BeachName>

  12:       <Operation>=Operation>

  13:       <Value>YValue>

  14:     Attribute>

  15:     <Attribute>

  16:       <Name>AirconName>

  17:       <Operation>=Operation>

  18:       <Value>YValue>

  19:     Attribute>

  20:   Attributes>

  21:   <Notifications>

  22:     <Notification>Please request  the sofa bed for parties greater than 4Notification>

  23:   Notifications>

  24:   <StartDates>

  25:     <StartDate date="2009-05-05" nights="3" />

  26:     <StartDate date="2009-05-06" nights="3" />

  27:     <StartDate date="2009-05-16" nights="3,7" />

  28:     <StartDate date="2009-05-17" nights="3" />

  29:     <StartDate date="2009-05-18" nights="3" />

  30:     <StartDate date="2009-05-19" nights="3" />

  31:     <StartDate date="2009-05-20" nights="3" />

  32:     <StartDate date="2009-05-30" nights="3,7" />

  33:     <StartDate date="2009-05-31" nights="3,7" />

  34:     <StartDate date="2009-06-01" nights="3,7" />

  35:     <StartDate date="2009-06-02" nights="3,7" />

  36:     <StartDate date="2009-06-03" nights="3,7" />

  37:     <StartDate date="2009-06-04" nights="3,7" />

  38:     <StartDate date="2009-06-05" nights="3,7" />

  39:     <StartDate date="2009-06-20" nights="3,7" />

  40:     <StartDate date="2010-01-01" minNights="3" maxNights="14" />

  41:     <StartDate date="2010-01-04" minNights="3" maxNights="14" />

  42:     <StartDate date="2010-01-08" minNights="3" maxNights="14" />

  43:     <StartDate date="2010-01-11" minNights="3" maxNights="14" />

  44:     <StartDate date="2010-01-15" minNights="3" maxNights="14" />

  45:     <StartDate date="2010-01-18" minNights="3" maxNights="14" />

  46:     <StartDate date="2010-01-22" minNights="3" maxNights="14" />

  47:   StartDates>

  48: Property>

The key difference between the two command responses is the “…” section. This contains a list of valid start dates, and the durations which are valid for these dates. If a date/night combination does not appear then it is not a valid stay. As you can see there are two ways of identifying which nights are available, the “nights” attribute gives the specific durations which are available, for example, in the response above on the 16th May 2009, a stay of 3 or 7 nights would be valid, however on the 17th only a stay of 3 nights is valid. Alternatively valid durations can be specified by a combination of the “minNights” and “maxNights” attributes. These identify the range of the nights which are valid for that day. Therefore on the 1st Jan 2010 you could book a stay for anywhere between 3 and 14 nights.

The results retrieved from AcoWin to display these results are filtered to provide only the valid stays, cutting down on the complexity of the results for websites consuming the AcuWeb API. There are some configuration values which will control these, such as the Maximum Nights, if a property has not rules set, then the maximum nights value will default to this configuration value. For more details on the configuration values for the Property Message you should refer to the