Zum Inhalt

OTA_HotelResRQ

Alternative Methode zum Abrufen von Buchungen vom Buchungskanal Kurzurlaub.de.

Siehe auch allgemeinen Informationen zur Reservation API im Entwickler Guide und die Standard Message OTA_HotelResNotifRQ , um Buchungen zu lesen.

Buchungen werden mit Status gesendet

Status Beschreibung
Book Neue Buchungen, diese Status wird nur einmal beim ersten Senden verwendet, danach werden alle weitere Response zu einer Buchungs-ID immer mit Status Modify gesendet
Modify Buchungsänderungen oder erneuter Abruf einer schon gesendeten Buchung per ResID_Value oder Datumsbereich von/bis
Cancel Stornierungen

OTA_HotelResRQ - Anfrage per GET - REST-API

jede Methode kann per REST-API mittels GET aufgerufen werden. Aber dies sollte bei Buchungen nur zu Entwicklungs- oder Testzwecken erfolgen

Verwendete allgemeine Parameter:

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

Lesen von Buchungen mit ReservationsId

Verwendete Parameter:

  • HotelReservationId (mandatory) eine ReservationsId oder kommagetrennte IDs
  • Id (alternativ zu HotelReservationId)

GET /ota/api/HotelRes?AgentDutyCode=1&HotelCode=4&HotelReservationId=2129149

oder kommagetrennte ReservationsId`s

GET /ota/api/HotelRes?AgentDutyCode=1&HotelCode=4&HotelReservationId=2129149,2129150,2129151

alternativ auch mit Angabe der gesamten ResID_Value (R12345678-A123456-1234 bspw. R2129149-A20540-4) möglich.

Lesen von Buchungen mit Datumsbereich (Datum von/bis)

Verwendete Parameter:

  • DateFrom
  • DateTo

Erwartet wird ein DateFormat (YYYY-MM-DD) oder DateTimeFormat (YYYY-MM-DD(T)HH:MM:SS)

liefert alle Buchungen in Datumsbereich von/bis (00:00:00 - 23:59:29) oder mit konkretem Uhrzeitbereich

Beispiel

GET /ota/api/HotelRes?AgentDutyCode=1&HotelCode=4&DateFrom=2022-01-01&DateTo=2022-02-01

oder im DateTimeFormat

GET /ota/api/HotelRes?AgentDutyCode=1&HotelCode=4&DateFrom=2022-02-01T15:30:00&DateTo=2022-02-01T16:45:00

Lesen von Buchungen mit Datum ab (PurgeDate)

Verwendeter Parameter:

  • PurgeDate Erwartet wird ein DateFormat (YYYY-MM-DD)

liefert alle Buchungen ab dem angefragten Datum

Beispiel

GET /ota/api/HotelRes?AgentDutyCode=1&HotelCode=4&PurgeDate=2022-02-01

OTA_HotelResRQ - Anfrage per POST

Verwendete allgemeine Parameter:

  • @AgentDutyCode (Agent-ID): (optional)
  • RequestorID@ID (Hotel-ID): (mandatory)

Lesen von Buchungen mit ReservationsId

Verwendeter Parameter:

  • UniqueID@ID (mandatory) eine ReservationsId
<?xml version="1.0" encoding="UTF-8"?>
<OTA_HotelResRQ xmlns="http://www.opentravel.org/OTA/2003/05" Target="Production" Version="2.0">
    <POS>
        <Source AgentDutyCode="1">
            <RequestorID ID="4" Type="4"/>
        </Source>
    </POS>
    <!-- send booking for this ReservationId -->
    <UniqueID Type="RES" ID="12345678" />
    <HotelReservations>
        <HotelReservation />
    </HotelReservations>
</OTA_HotelResRQ>

Lesen von Buchungen mit Datum ab (PurgeDate)

Verwendeter Parameter:

  • HotelReservation@PurgeDate Erwartet wird ein DateFormat (YYYY-MM-DD)
<?xml version="1.0" encoding="UTF-8"?>
<OTA_HotelResRQ xmlns="http://www.opentravel.org/OTA/2003/05" Target="Production" Version="2.0">
    <POS>
        <Source AgentDutyCode="1">
            <RequestorID ID="4" Type="4"/>
        </Source>
    </POS>
    <HotelReservations>
        <!-- send all bookings after PurgeDate -->
       <HotelReservation PurgeDate="2022-01-01" />
    </HotelReservations>
</OTA_HotelResRQ>

Lesen von neuen Buchungen

wenn keine Parameter angegeben werden, liefern wir alle neuen Buchungen, welche noch nie gesendet wurden. Achtung: dies passiert nur genau ein mal!

Verwendete Parameter:

  • keine
<?xml version="1.0" encoding="UTF-8"?>
<OTA_HotelResRQ xmlns="http://www.opentravel.org/OTA/2003/05" Target="Production" Version="2.0">
    <POS>
        <Source AgentDutyCode="1">
            <RequestorID ID="4" Type="4"/>
        </Source>
    </POS>
    <!-- no params so send all unsubmitted bookings -->
    <HotelReservations>
        <HotelReservation />
    </HotelReservations>
</OTA_HotelResRQ>

oder einfacher

<?xml version="1.0" encoding="UTF-8"?>
<OTA_HotelResRQ xmlns="http://www.opentravel.org/OTA/2003/05" Target="Production" Version="2.0">
    <POS>
        <Source AgentDutyCode="1">
            <RequestorID ID="4" Type="4"/>
        </Source>
    </POS>
</OTA_HotelResRQ>

OTA_HotelResRS - Versionen der Response

Die Ausgabe der Reservierungsdaten erfolgt fast identisch zum Format der Standard Message

Hinweis:

Sollten keine Reservierungen für die abgefragten Parameter vorliegen, erhalten sie eine Antwort mit einem <Success/> (es sind also keine Fehler in den gesendet Parametern aufgetreten) und einem leeren <HotelReservations/> Block.

Beispiel: keine Reservierungen vorhanden

<?xml version="1.0" encoding="UTF-8"?>
<OTA_HotelResRS xmlns="http://www.opentravel.org/OTA/2003/05" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" EchoToken="9c3561c0d9c534d355dd902ebae420d0" PrimaryLangID="de" TimeStamp="2022-02-04T12:13:13+01:00" Target="Production" Version="1.000">
  <Success/>
  <HotelReservations/>
</OTA_HotelResRS>

Fehlermeldungen

Wenn schwere Fehler bspw. in der Authentifizierung auftreten, senden wird diese in einer OTA_ErrorRS Response mit @ErrorCode und @ErrorMessage

Eine Liste gängiger Fehler finden Sie in der Dokumentation der Standard Message OTA_HotelResNotifRQ

Besonderer Hinweis zu Formatfehlern:

Eine besondere Fehlermeldung bezieht sich auf das fehlerhafte Format bei den Parametern DateFrom, DateTo oder bei PurgeDate

Erwartet wird ein DateFormat (YYYY-MM-DD) oder DateTimeFormat (YYYY-MM-DD(T)HH:MM:SS)

Beispiel: ErrorMessage

<?xml version="1.0" encoding="UTF-8"?>
<OTA_ErrorRS xmlns="http://www.opentravel.org/OTA/2003/05" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" EchoToken="f3de3733d5095b49a5c774b99f467e57" PrimaryLangID="de" TimeStamp="2022-02-04T12:15:46+01:00" Target="Production" Version="1.000" 
    ErrorCode="500" 
    ErrorMessage="InternalError - Internal OTA Error: wrong format for param DateFrom (2022-02-01T15:30:00) or param DateTo (2022-02-01T16:45:0) in GET method ErrorRS (allowed format: YYYY-MM-DD or YYYY-MM-DD HH:MM:SS)"
/>