| POST | /HotelPackage/{SubscriptionId}/{CendynPropertyId} |
|---|
import datetime
import decimal
from marshmallow.fields import *
from servicestack import *
from typing import *
from dataclasses import dataclass, field
from dataclasses_json import dataclass_json, LetterCase, Undefined, config
from enum import Enum, IntEnum
@dataclass_json(letter_case=LetterCase.CAMEL, undefined=Undefined.EXCLUDE)
@dataclass
class Response:
status_code: Optional[str] = None
record_count: Optional[int] = None
error_count: Optional[int] = None
@dataclass_json(letter_case=LetterCase.CAMEL, undefined=Undefined.EXCLUDE)
@dataclass
class PackageDetail:
start_date: Optional[datetime.datetime] = None
end_date: Optional[datetime.datetime] = None
price_amount: Optional[Decimal] = None
pos_allowance: Optional[Decimal] = None
points_total: Optional[int] = None
action: Optional[str] = None
amount_before_tax: Optional[Decimal] = None
amount_after_tax: Optional[Decimal] = None
item_name: Optional[str] = None
quantity: Optional[int] = None
code: Optional[str] = None
item_id: Optional[str] = None
show_in_reservation: Optional[bool] = None
use_in_c_r_s: Optional[bool] = None
add_to_rate: Optional[bool] = None
is_fixed_charge: Optional[bool] = None
recurrence: Optional[str] = None
relation: Optional[str] = None
monday: Optional[bool] = None
tuesday: Optional[bool] = None
wednesday: Optional[bool] = None
thursday: Optional[bool] = None
friday: Optional[bool] = None
saturday: Optional[bool] = None
sunday: Optional[bool] = None
@dataclass_json(letter_case=LetterCase.CAMEL, undefined=Undefined.EXCLUDE)
@dataclass
class PackageItem:
item_name: Optional[str] = None
quantity: Optional[int] = None
@dataclass_json(letter_case=LetterCase.CAMEL, undefined=Undefined.EXCLUDE)
@dataclass
class Package:
external_i_d: Optional[str] = None
cendyn_property_i_d: Optional[str] = None
hotel_code: Optional[str] = None
package_code: Optional[str] = None
package_description: Optional[str] = None
short_description: Optional[str] = None
forecast_group: Optional[str] = None
print_separately: Optional[bool] = None
add_to_rate: Optional[bool] = None
price_amount: Optional[Decimal] = None
tax_included: Optional[bool] = None
currency_code: Optional[str] = None
sell_separate: Optional[bool] = None
post_next_day: Optional[bool] = None
forecast_next_day: Optional[bool] = None
catering_package: Optional[bool] = None
redemption: Optional[bool] = None
override_fixed_rate: Optional[bool] = None
calculation_rule: Optional[str] = None
posting_rhythm: Optional[str] = None
package_element: Optional[str] = None
add_to_rate_mode: Optional[str] = None
is_active: Optional[bool] = None
inactive_date: Optional[datetime.datetime] = None
source_name: Optional[str] = None
source_i_d: Optional[str] = None
action: Optional[str] = None
package_details: Optional[List[PackageDetail]] = None
package_items: Optional[List[PackageItem]] = None
@dataclass_json(letter_case=LetterCase.CAMEL, undefined=Undefined.EXCLUDE)
@dataclass
class HotelPackage:
package: Optional[Package] = None
subscription_id: Optional[str] = None
cendyn_property_id: Optional[str] = None
To override the Content-type in your clients, use the HTTP Accept Header, append the .xml suffix or ?format=xml
The following are sample HTTP requests and responses. The placeholders shown need to be replaced with actual values.
POST /HotelPackage/{SubscriptionId}/{CendynPropertyId} HTTP/1.1
Host: cert.cendyn.com
Accept: application/xml
Content-Type: application/xml
Content-Length: length
<HotelPackage xmlns:i="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://schemas.datacontract.org/2004/07/CenResSS.ServiceModel">
<CendynPropertyId>String</CendynPropertyId>
<Package>
<Action>String</Action>
<AddToRate>false</AddToRate>
<AddToRateMode>String</AddToRateMode>
<CalculationRule>String</CalculationRule>
<CateringPackage>false</CateringPackage>
<CendynPropertyID>String</CendynPropertyID>
<CurrencyCode>String</CurrencyCode>
<ExternalID>String</ExternalID>
<ForecastGroup>String</ForecastGroup>
<ForecastNextDay>false</ForecastNextDay>
<HotelCode>String</HotelCode>
<InactiveDate>0001-01-01T00:00:00</InactiveDate>
<IsActive>false</IsActive>
<OverrideFixedRate>false</OverrideFixedRate>
<PackageCode>String</PackageCode>
<PackageDescription>String</PackageDescription>
<PackageDetails>
<PackageDetail>
<Action>String</Action>
<AddToRate>false</AddToRate>
<AmountAfterTax>0</AmountAfterTax>
<AmountBeforeTax>0</AmountBeforeTax>
<Code>String</Code>
<EndDate>0001-01-01T00:00:00</EndDate>
<Friday>false</Friday>
<IsFixedCharge>false</IsFixedCharge>
<ItemId>String</ItemId>
<ItemName>String</ItemName>
<Monday>false</Monday>
<POSAllowance>0</POSAllowance>
<PointsTotal>0</PointsTotal>
<PriceAmount>0</PriceAmount>
<Quantity>0</Quantity>
<Recurrence>String</Recurrence>
<Relation>String</Relation>
<Saturday>false</Saturday>
<ShowInReservation>false</ShowInReservation>
<StartDate>0001-01-01T00:00:00</StartDate>
<Sunday>false</Sunday>
<Thursday>false</Thursday>
<Tuesday>false</Tuesday>
<UseInCRS>false</UseInCRS>
<Wednesday>false</Wednesday>
</PackageDetail>
</PackageDetails>
<PackageElement>String</PackageElement>
<PackageItems>
<PackageItem>
<ItemName>String</ItemName>
<Quantity>0</Quantity>
</PackageItem>
</PackageItems>
<PostNextDay>false</PostNextDay>
<PostingRhythm>String</PostingRhythm>
<PriceAmount>0</PriceAmount>
<PrintSeparately>false</PrintSeparately>
<Redemption>false</Redemption>
<SellSeparate>false</SellSeparate>
<ShortDescription>String</ShortDescription>
<SourceID>String</SourceID>
<SourceName>String</SourceName>
<TaxIncluded>false</TaxIncluded>
</Package>
<SubscriptionId>String</SubscriptionId>
</HotelPackage>
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>