CenResService

<back to all web services

HotelRate

The following routes are available for this service:
POST/hotelrate/{SubscriptionId}/{CendynPropertyId}
import Foundation
import ServiceStack

public class HotelRate : Codable
{
    public var rateContainer:RateContainer?
    public var subscriptionId:String?
    public var cendynPropertyId:String?

    required public init(){}
}

public class RateContainer : Codable
{
    public var echoToken:String?
    public var rateType:RateType?
    public var changeAction:String?
    public var rates:[Rate] = []

    required public init(){}
}

public class RateType : Codable
{
    public var hotelCode:String?
    public var rateCode:String?
    public var rateCategory:String?
    public var rateName:String?
    public var startDate:Date?
    public var endDate:Date?
    public var rateStatus:String?
    public var baseRateCode:String?
    public var marketCode:String?
    public var confidential:Bool?
    public var mealsIncluded:Bool?
    public var taxIncludedIndicator:String?
    public var rateCategoryDescription:String?
    public var displayText:String?
    public var shortDescription:String?
    public var longDescription:String?
    public var minLOS:Int?
    public var sourceName:String?
    public var sourceID:String?
    public var rateAdjustDirection:String?
    public var rateAdjustAmount:Double?
    public var rateAdjustPercent:Double?
    public var currencyCode:String?
    public var isDaily:Bool?
    public var isActive:Bool?
    public var inactiveDate:Date?

    required public init(){}
}

public class Rate : Codable
{
    public var hotelCode:String?
    public var rateCode:String?
    public var roomCode:String?
    public var startDate:Date?
    public var endDate:Date?
    public var rate1:Double?
    public var rate2:Double?
    public var rate3:Double?
    public var rate4:Double?
    public var extraAdult:Double?
    public var extraChild:Double?
    public var extraBed:Double?
    public var currencyCode:String?
    public var freeChildLimit:Int?
    public var includeMonday:Bool?
    public var includeTuesday:Bool?
    public var includeWednesday:Bool?
    public var includeThursday:Bool?
    public var includeFriday:Bool?
    public var includeSaturday:Bool?
    public var includeSunday:Bool?
    public var customerSegment:String?
    public var sourceName:String?
    public var sourceID:String?
    public var isActive:Bool?
    public var inactiveDate:Date?
    public var rateSetID:String?
    public var rateChargeDetails:[RateChargeDetail] = []
    public var rateGuestCountDetails:[RateGuestCountDetail] = []

    required public init(){}
}

public class RateChargeDetail : Codable
{
    public var chargeCode:String?
    public var isBaseRate:Bool?
    public var rateBeforeTax:Double?
    public var rateAfterTax:Double?
    public var unitCount:Int?
    public var taxAmount:Double?

    required public init(){}
}

public class RateGuestCountDetail : Codable
{
    public var guestCount:Int?
    public var minRate:Double?
    public var maxRate:Double?

    required public init(){}
}

public class Response : Codable
{
    public var statusCode:String?
    public var recordCount:Int?
    public var errorCount:Int?

    required public init(){}
}


Swift HotelRate DTOs

To override the Content-type in your clients, use the HTTP Accept Header, append the .xml suffix or ?format=xml

HTTP + XML

The following are sample HTTP requests and responses. The placeholders shown need to be replaced with actual values.

POST /hotelrate/{SubscriptionId}/{CendynPropertyId} HTTP/1.1 
Host: cert.cendyn.com 
Accept: application/xml
Content-Type: application/xml
Content-Length: length

<HotelRate xmlns:i="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://schemas.datacontract.org/2004/07/CenResSS.ServiceModel">
  <CendynPropertyId>String</CendynPropertyId>
  <RateContainer>
    <ChangeAction>String</ChangeAction>
    <EchoToken>String</EchoToken>
    <RateType>
      <BaseRateCode>String</BaseRateCode>
      <Confidential>false</Confidential>
      <CurrencyCode>String</CurrencyCode>
      <DisplayText>String</DisplayText>
      <EndDate>0001-01-01T00:00:00</EndDate>
      <HotelCode>String</HotelCode>
      <InactiveDate>0001-01-01T00:00:00</InactiveDate>
      <IsActive>false</IsActive>
      <IsDaily>false</IsDaily>
      <LongDescription>String</LongDescription>
      <MarketCode>String</MarketCode>
      <MealsIncluded>false</MealsIncluded>
      <MinLOS>0</MinLOS>
      <RateAdjustAmount>0</RateAdjustAmount>
      <RateAdjustDirection>String</RateAdjustDirection>
      <RateAdjustPercent>0</RateAdjustPercent>
      <RateCategory>String</RateCategory>
      <RateCategoryDescription>String</RateCategoryDescription>
      <RateCode>String</RateCode>
      <RateName>String</RateName>
      <RateStatus>String</RateStatus>
      <ShortDescription>String</ShortDescription>
      <SourceID>String</SourceID>
      <SourceName>String</SourceName>
      <StartDate>0001-01-01T00:00:00</StartDate>
      <TaxIncludedIndicator>String</TaxIncludedIndicator>
    </RateType>
    <Rates>
      <Rate>
        <CurrencyCode>String</CurrencyCode>
        <CustomerSegment>String</CustomerSegment>
        <EndDate>0001-01-01T00:00:00</EndDate>
        <ExtraAdult>0</ExtraAdult>
        <ExtraBed>0</ExtraBed>
        <ExtraChild>0</ExtraChild>
        <FreeChildLimit>0</FreeChildLimit>
        <HotelCode>String</HotelCode>
        <InactiveDate>0001-01-01T00:00:00</InactiveDate>
        <IncludeFriday>false</IncludeFriday>
        <IncludeMonday>false</IncludeMonday>
        <IncludeSaturday>false</IncludeSaturday>
        <IncludeSunday>false</IncludeSunday>
        <IncludeThursday>false</IncludeThursday>
        <IncludeTuesday>false</IncludeTuesday>
        <IncludeWednesday>false</IncludeWednesday>
        <IsActive>false</IsActive>
        <Rate1>0</Rate1>
        <Rate2>0</Rate2>
        <Rate3>0</Rate3>
        <Rate4>0</Rate4>
        <RateChargeDetails>
          <RateChargeDetail>
            <ChargeCode>String</ChargeCode>
            <IsBaseRate>false</IsBaseRate>
            <RateAfterTax>0</RateAfterTax>
            <RateBeforeTax>0</RateBeforeTax>
            <TaxAmount>0</TaxAmount>
            <UnitCount>0</UnitCount>
          </RateChargeDetail>
        </RateChargeDetails>
        <RateCode>String</RateCode>
        <RateGuestCountDetails>
          <RateGuestCountDetail>
            <GuestCount>0</GuestCount>
            <MaxRate>0</MaxRate>
            <MinRate>0</MinRate>
          </RateGuestCountDetail>
        </RateGuestCountDetails>
        <RateSetID>String</RateSetID>
        <RoomCode>String</RoomCode>
        <SourceID>String</SourceID>
        <SourceName>String</SourceName>
        <StartDate>0001-01-01T00:00:00</StartDate>
      </Rate>
    </Rates>
  </RateContainer>
  <SubscriptionId>String</SubscriptionId>
</HotelRate>
HTTP/1.1 200 OK
Content-Type: application/xml
Content-Length: length

<Response xmlns:i="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://schemas.datacontract.org/2004/07/CenResSS.ServiceModel">
  <ErrorCount>0</ErrorCount>
  <RecordCount>0</RecordCount>
  <StatusCode>String</StatusCode>
</Response>