OTA_ReadRQ
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_ReadRQ - 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 IDsId(alternativ zu HotelReservationId)
GET /ota/api/Read?AgentDutyCode=1&HotelCode=4&HotelReservationId=2129149
oder kommagetrennte ReservationsId`s
GET /ota/api/Read?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:
DateFromDateTo
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/Read?AgentDutyCode=1&HotelCode=4&DateFrom=2022-01-01&DateTo=2022-02-01
oder im DateTimeFormat
GET /ota/api/Read?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:
PurgeDateErwartet wird ein DateFormat (YYYY-MM-DD)
liefert alle Buchungen ab dem angefragten Datum
Beispiel
GET /ota/api/Read?AgentDutyCode=1&HotelCode=4&PurgeDate=2022-02-01
OTA_ReadRQ - 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_ReadRQ 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_ReadRQ>
Alternativ
<?xml version="1.0" encoding="UTF-8"?>
<OTA_ReadRQ xmlns="http://www.opentravel.org/OTA/2003/05" Target="Production" Version="2.0">
<POS>
<Source AgentDutyCode="1">
<RequestorID ID="4" Type="4"/>
</Source>
</POS>
<UniqueID Type="RES" ID="1513695" />
</OTA_ReadRQ>
Lesen von Buchungen mit Datumsbereich (Datum von/bis)
Erwartet wird von den Parametern
- eine gültige DatumsPeriode (
@Start-@End) - ein gültiges DatumsFormat (YYYY-MM-DD) oder DateTimeFormat (YYYY-MM-DD(T)HH:MM:SS)
Variante 1 - Verwendete Parameter:
SelectionCriteria@Start(mandatory)SelectionCriteria@End(mandatory)
Beispiel:
<?xml version="1.0" encoding="UTF-8"?>
<OTA_ReadRQ xmlns="http://www.opentravel.org/OTA/2003/05" Target="Production" Version="3.0">
<POS>
<Source AgentDutyCode="1">
<RequestorID ID="4" Type="4"/>
</Source>
</POS>
<ReadRequests>
<HotelReadRequest HotelCode="4">
<SelectionCriteria Start="2022-01-01" End="2022-01-30"/>
<!-- alternative DateTimeFormat
<SelectionCriteria Start="2022-01-27T11:30:00" End="2022-01-27T11:37:00"/>
-->
</HotelReadRequest>
</ReadRequests>
</OTA_ReadRQ>
Variante 2 - Verwendete Parameter:
GlobalReservationReadRequest@Start(mandatory)GlobalReservationReadRequest@End(mandatory)
Beispiel:
<?xml version="1.0" encoding="UTF-8"?>
<OTA_ReadRQ xmlns="http://www.opentravel.org/OTA/2003/05" Target="Production" Version="3.0">
<POS>
<Source AgentDutyCode="1">
<RequestorID ID="4" Type="4"/>
</Source>
</POS>
<ReadRequests>
<HotelReadRequest HotelCode="4"/>
<GlobalReservationReadRequest Start="2020-10-01" End="2020-11-30"/>
<!-- alternative DateTimeFormat
<GlobalReservationReadRequest Start="2022-01-27T11:30:00" End="2022-01-27T11:31:00"/>
-->
</ReadRequests>
</OTA_ReadRQ>
Lesen von Buchungen mit Datum ab (PurgeDate)
wird in der Message OTA_ReadRQ für POST Requests nicht angeboten, da es laut OTA Spezifikation nicht vorgesehen ist.
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_ReadRQ 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_ReadRQ>
OTA_HotelResNotifRS - Versionen der Response
Die Ausgabe der Reservierungsdaten erfolgt identisch zum Format und in Form der Standard Message
- OTA_HotelResNotifRQ - siehe weitere Informationen zum Ausgabeformat
- Reservation API - allgemeinen Informationen im Entwickler Guide
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_HotelResNotifRS xmlns="http://www.opentravel.org/OTA/2003/05" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" EchoToken="5915874940c61a0f496dd31928e85672" PrimaryLangID="de" TimeStamp="2022-02-04T15:48:17+01:00" Target="Production" Version="1.000">
<Success/>
<HotelReservations/>
</OTA_HotelResNotifRS>
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)"
/>