Zum Inhalt

OTA_HotelRoomListRQ

Methode zum Abrufen von Zimmerdaten und Angebotsdaten von Kurzurlaub.de.

OTA_HotelRoomListRQ - Anfrage per GET - REST-API

jede Methode kann per REST-API mittels GET aufgerufen werden.

Verwendete Parameter:

  • AgentDutyCode (optional, sofern IP WhiteList oder HTTP Basic Auth verwendet wird)
  • HotelCode (mandatory)

Beispiel:

GET /ota/api/HotelRoomList?AgentDutyCode=1&HotelCode=4

OTA_HotelRoomListRQ - Anfrage per POST

HotelRoomList Request (RQ) und Response (RS) am Beispiel des Testhotels

  • @AgentDutyCode (Agent-ID): 1
  • @HotelCode (Hotel-ID): 4

Beispiel OTA_HotelRoomListRQ (Request)

<?xml version="1.0" encoding="UTF-8"?>
<OTA_HotelRoomListRQ xmlns="http://www.opentravel.org/OTA/2003/05" 
    AvailRatesOnly="true" EchoToken="938a6a32-c526-485b-b641-f69d635cda41" 
    TimeStamp="2021-10-18T10:00:00+01:00" Version="1.0">
    <POS>
        <Source AgentDutyCode="1">
            <RequestorID ID="4" Type="4"/>
        </Source>
    </POS>
    <HotelRoomLists>
        <HotelRoomList HotelCode="4"/>
    </HotelRoomLists>
</OTA_HotelRoomListRQ>

Versionen der Response

Diese Methode wird in der Version OTA-V1 nicht angeboten

Neue Version OTA-V2 der OTA_HotelRoomListRS liefert Zimmerdaten und Angebotsdaten

Hier wird eine RoomType / RatePlan Kombination geliefert d.h. alle Zimmer und die dazugehörigen verfügbaren Angebote (RatePlan) mit Attributen.

Für die Zimmer (RoomType) werden folgende Attribute verwendet

  • @RoomID
  • @RoomTypeCode (wie RoomID)
  • @RoomCategory (Zimmertyp bspw. Einzelzimmer, Doppelzimmer, Appartement ...)
  • @NumberOfUnits (Zimmeranzahl 1-n)
  • RoomDescription@Name (Zimmername, Größe und max. Belegung)

Beispiel RoomType:

<RoomType IsRoom="true" RoomID="9143" RoomTypeCode="9143" 
    RoomCategory="Doppelzimmer" NumberOfUnits="2">
    <RoomDescription Name="Doppelzimmer Seeseite (29m², ID:9143, 2E/2K)"/>
</RoomType>

Für die Angebote (RatePlan) werden folgende Attribute verwendet

  • @RatePlanID
  • @RatePlanCode
  • @RatePlanName
  • @RatePlanType
  • Angebotszeitraum (@EffectiveDate - @ExpireDate)

Die RatePlanID und RatePlanCode (bspw. BEST-RATE oder BAR - Best Available Rate) sind in der Regel unterschiedlich. Sofern kein RatePlanCode angegeben ist, wird hier auch die ID gesendet.

Beispiel RatePlan:

<RatePlan RatePlanID="20540" RatePlanCode="20540" RatePlanName="Testarrangement schönes Schwerin">
    <RatePlanDescription Name="Testarrangement schönes Schwerin">
        <text>Kurzurlaub Angebot 2 ÜN gültig bis 31.12.2021</text>
    </RatePlanDescription>
</RatePlan>

Beispiel OTA_HotelRoomListRS (Response)

<?xml version="1.0" encoding="UTF-8"?>
<OTA_HotelRoomListRS xmlns="http://www.opentravel.org/OTA/2003/05" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
                     EchoToken="a79fbdd898f09112c7480a9eabc3f6be" PrimaryLangID="de"
                     TimeStamp="2021-11-04T15:09:28+01:00" Target="Production" Version="1.000">
    <Success/>
    <HotelRoomLists>
        <HotelRoomList HotelCode="4" HotelName="Hotel Superurlaub Schwerin">
            <RoomStays>
                <RoomStay>
                    <RoomTypes>
                        <RoomType IsRoom="true" RoomID="9143" RoomTypeCode="9143" RoomCategory="Doppelzimmer"
                                  NumberOfUnits="2">
                            <RoomDescription Name="Doppelzimmer Seeseite (29m², ID:9143, 2E/2K)"/>
                        </RoomType>
                    </RoomTypes>
                    <RatePlans>
                        <RatePlan RatePlanID="20540" RatePlanCode="20540"
                                  RatePlanName="Testarrangement schönes Schwerin - bitte nicht buchen">
                            <RatePlanDescription Name="Testarrangement schönes Schwerin - bitte nicht buchen">
                                <text>Kurzurlaub Angebot 2 ÜN gültig bis 31.12.2021</text>
                            </RatePlanDescription>
                        </RatePlan>
                        <RatePlan RatePlanID="190772" RatePlanCode="BAR-190772"
                                  RatePlanName="Testarrangement schönes Schwerin - am Wochenende">
                            <RatePlanDescription Name="Testarrangement schönes Schwerin - am Wochenende">
                                <text>Kurzurlaub Angebot 3 ÜN gültig bis 31.12.2021</text>
                            </RatePlanDescription>
                        </RatePlan>
                    </RatePlans>
                </RoomStay>
                <RoomStay>
                    <RoomTypes>
                        <RoomType IsRoom="true" RoomID="9148" RoomTypeCode="9148" RoomCategory="Einzelzimmer"
                                  NumberOfUnits="1">
                            <RoomDescription Name="Einzelzimmer Deluxe (18m², ID:9148, 1E/1K)"/>
                        </RoomType>
                    </RoomTypes>
                    <RatePlans>
                        <RatePlan RatePlanID="20540" RatePlanCode="20540"
                                  RatePlanName="Testarrangement schönes Schwerin - bitte nicht buchen">
                            <RatePlanDescription Name="Testarrangement schönes Schwerin - bitte nicht buchen">
                                <text>Kurzurlaub Angebot 2 ÜN gültig bis 31.12.2021</text>
                            </RatePlanDescription>
                        </RatePlan>
                        <RatePlan RatePlanID="190772" RatePlanCode="BAR-190772"
                                  RatePlanName="Testarrangement schönes Schwerin - am Wochenende">
                            <RatePlanDescription Name="Testarrangement schönes Schwerin - am Wochenende">
                                <text>Kurzurlaub Angebot 3 ÜN gültig bis 31.12.2021</text>
                            </RatePlanDescription>
                        </RatePlan>
                    </RatePlans>
                </RoomStay>
            </RoomStays>
        </HotelRoomList>
    </HotelRoomLists>
</OTA_HotelRoomListRS>