Koppelen met een externe API
TommyBookingSupport biedt de mogelijkheid om reserveringsgegevens naar een door de gebruiker gedefinieerd API-eindpunt te pushen of op te halen. Dit kan handig zijn voor data-analyse, e-mailcampagnes, geautomatiseerde park- / accommodatie-toegangscontrole, etc.
Telkens wanneer een reservering wordt gemaakt of gewijzigd, worden de reserveringsgegevens naar een door de gebruiker gedefinieerde URL gepost. Als de gastgegevens veranderen, worden alle toekomstige reserveringen gepost. Dit biedt het mechanisme waarmee externe systemen kunnen worden gevuld met TommyBookingSupport-reserveringsgegevens.
Houd er rekening mee dat! Hoewel TommyBookingSupport een HTTP POST-verzoek zal doen met JSON-gecodeerde gegevens, sturen we GEEN ‘Accept: application / json’ -header met het verzoek. Als een dergelijke header vereist is, moet deze worden toegevoegd aan het aangepaste API-eindpunt.
Zodra het aangepaste API-eindpunt is gedefinieerd, resulteert elke nieuwe of bijgewerkte reservering in een HTTP POST-verzoek op de gedefinieerde API-eindpunt-URL. De gemaakte headers worden aan elk verzoek toegevoegd. Er kan een kleine vertraging zijn tussen het maken / wijzigen van een reservering en het maken van een HTTP-verzoek.
De gegevens
De volgende JSON-gegevens zijn een voorbeeld van de gegevens die TommyBookingSupport met elk HTTP-verzoek verzendt:
{
"id": 23234233,
"number": "191001757",
"arrival": "2019-07-14",
"vertrek": "2019-07-18",
"date": "2019-07-06",
"stay_days": 4,
"total": "1073.80",
"sales_channel": "Bungalowspecials",
"persoon":{
"id": 5881015,
"first_name": "Willem",
"last_name": "Gausepohl",
"last_name_prefix": null,
"email": "customer@email.com",
"taal": "nl",
"company_name": null,
"birthday": "1973-01-22",
"gender": "m",
"license_plate": null,
"phone_number": "555-4949",
"cell_phone_number": null,
"nieuwsbrief": false,
"street": "Pennsylvania Avenue",
"house_number": "1600",
"house_number_prefix": null,
"zip_code": "1234 AB",
"city": "Berlin",
"country": "de"
},
"gasten": [],
"booking_rules": [
{
"id": 95513,
"location": "CM03",
"accommodatie": "6 persoons Luxe Bungalow (4 volw. en 2 kinderen)",
"arrangement": "summer, kids",
"totaal": 5,
"person_categorie_19_64": 2,
"person_categorie_3_12": 3
}
],
"kenteken plaat":[
"10-TKZ-4",
"RK-325-G",
],
"Status: Bevestigd",
"cost_of_stay": "855.60",
"cost_of_discount": "0.00",
"cost_of_items": "218,20"
}
Het persoonsobject bevat de gegevens van de persoon die de reservering heeft gemaakt. De gastenreeks bevat dezelfde informatie, maar voor de extra gasten op de reservering. Meestal zijn deze gegevens niet bekend en worden ze niet verstrekt. Het person-object bevat ook eventuele aangepaste velden die zijn gedefinieerd in de TommyBookingSupport-applicatie.
De booking_rules array bevat de accommodaties / locaties die in de reservering zijn opgenomen, en het aantal personen per categorie en totaal. De arrangementssleutel bevat een door komma's gescheiden lijst met arrangementen die in de reservering zijn opgenomen.
De status kan worden bevestigd of geannuleerd. Opties (onbevestigde reserveringen) worden niet naar aangepaste API-eindpunten gestuurd.
Technische details
Voor elk gedefinieerd aangepast API-eindpunt wordt een HTTP POST-verzoek gedaan naar de URL, precies zoals gedefinieerd in het aangepaste API-eindpunt. Alleen de gedefinieerde headers worden aan de oproep toegevoegd en de gegevens zelf worden JSON-gecodeerd en worden als RAW-gegevens verzonden, dus er worden geen POST-velden ingevuld.
Naast het pushen van gegevens biedt TommyBookingSupport ook de mogelijkheid om reserveringen uit ons systeem op te halen. Om dit te doen, moet een GET-verzoek worden gedaan. Deze aanroep moet een "Authentication"-header bevatten. De waarde moet een geldige gebruikersnaam zijn, het wachtwoord voor die gebruiker en de API-sleutel van het account, gescheiden door een dubbele punt. (bijv. <gebruikersnaam>: <wachtwoord>: <sleutel>).
Het verzoek vereist 2 queryparameters; van en tot. Beide moeten een datum bevatten in de indeling JJJJ-MM-DD. De parameter tot kan maximaal 62 dagen later zijn dan de vanaf-datum.
Als beide parameters en de authenticatieheader correct zijn, zal het verzoek reageren met een JSON-gegevensstructuur met 2 eigenschappen: succes, die waar zou moeten zijn, en gegevens die een reeks reserveringen zullen bevatten die zijn gemaakt of gewijzigd tussen de van en tot datums, in hetzelfde formaat als hierboven beschreven.
Om reserveringen te exporteren die een aankomstdatum of vertrekdatum hebben tussen de van en tot datum, kan een parametertype worden opgegeven. De waarde kan een tijdstempel, aankomst of vertrek zijn om te filteren op de aanmaak- / wijzigingsdatum, de aankomstdatum of de vertrekdatum.
Als er een fout is opgetreden of als de parameters niet correct zijn opgegeven, bevat het antwoord deze 2 eigenschappen: succes, wat onwaar is, en bericht dat de reden geeft waarom het verzoek niet met succes is voltooid.
Investering
De kosten van de BookingsAPI module bedragen € 60,- per maand (exclusief BTW).
Tevens is voorwaarde dat er een verwerkersovereenkomst beschikbaar dient te zijn.
Stuur een bericht naar onze servicedesk, en wij helpen u graag verder om de mogelijkheden met u te bespreken!
Opmerkingen
0 opmerkingen
Artikel is gesloten voor opmerkingen.