Requêtes et réponses

Cette page décrit les formats de corps de requête, l’enveloppe de réponse, la pagination, les formats de date et de montant, ainsi que l’interprétation des codes de statut HTTP.

Corps de requête#

Les endpoints utilisent l’un des deux formats de corps suivants. La page de référence de chaque endpoint indique lequel s’applique.

FormatContent-TypeUtilisé par
Champs de formulaireapplication/x-www-form-urlencoded ou multipart/form-dataConnexion, liste des chambres, validation de coupon, pays
JSONapplication/jsonTransmission de la réservation (BookingPushRQ), lancement du paiement
Chaîne de requêteTous les endpoints GET

Dans les corps de formulaire, les champs de type tableau sont répétés avec des crochets : childAges[]=7&childAges[]=12. Les corps JSON doivent être encodés en UTF-8.

Enveloppe de réponse#

Les réponses sont en JSON. La plupart contiennent un champ success ; les listes sont renvoyées avec count et items :

Réponse de liste (tronquée)
{
    "success": true,
    "count": 3,
    "items": [
        {
            "id": 1,
            "titleCode": "TRY",
            "symbol": "₺",
            "price": 1
        },
        {
            "id": 2,
            "titleCode": "EUR",
            "symbol": "€",
            "price": 47.85000000000000142108547152020037174224853515625
        }
    ]
}

En cas d’échec d’une règle métier, la réponse contient success: false et une description de l’erreur, sous l’une des deux formes suivantes :

Forme message
{
    "success": false,
    "message": "online_cupon_is_not_found"
}
Forme errorCode (liste des chambres)
{
    "success": false,
    "errorMessage": "Invalid parameters.",
    "errorCode": 10022
}

Exceptions : l’endpoint des coordonnées renvoie un objet brut sans enveloppe, et la transmission de la réservation renvoie un objet BookingPushRS. Les deux sont présentés dans la référence.

Codes de statut HTTP#

CodeQuandQue faire
200Requête traitée (succès ou erreur métier)Examinez success, message / errorCode.
401Jeton absent, mal formé ou inconnuReconnectez-vous ; voir Authentification.
404Un paramètre de chemin ne correspond à aucun enregistrement (p. ex. /hotel/{hotelID}/…, /payment/type/{paymentType})Vérifiez l’identifiant.
405Méthode HTTP incorrecteUtilisez la méthode indiquée dans la référence (pays et liste des chambres sont en POST).
500Erreur serveur inattendueRéessayez après un court délai ; si le problème persiste, ouvrez un ticket de support en joignant la requête.

Pagination#

Les endpoints de liste (/external/currencies, /external/languages, /external/online/social/media, /external/stock/packages) sont paginés par numéro de page :

ParamètreDescriptionValeur par défaut
limitNombre d’enregistrements par page.20
pageNuméro de page, à partir de 1.1
offsetNombre d’enregistrements à ignorer. S’il est fourni, page est ignoré.
orderChamp de tri ; préfixez par - pour un ordre décroissant (-id). Les champs autorisés sont indiqués pour chaque endpoint.

count est le nombre total d’enregistrements ; la liste est épuisée lorsque page × limit ≥ count.

Dates, heures et montants#

TypeFormatExemple
Date de requêteYYYY-MM-DD2026-08-18
Date de disponibilitéYYYY-MM-DD ou YYYY-MM-DDTHH:MM:SS2026-08-18T12:00:00
Date du tarif par nuit (réponse)DD.MM.YYYY (champ tarih)18.08.2026
Plage journalière de disponibilité (réponse)YYYY-MM-DD HH:MM:SS, de 12:00 à 12:00 le lendemain2026-08-18 12:00:00
MontantChaîne à deux décimales, point comme séparateur"965.00"
DeviseISO 4217 ; issue des paramètres du canal en ligne de l’hôtelTRY
Fuseau horaireFuseau horaire de l’hôtelEurope/Istanbul

La date de départ ne fait pas partie du séjour : du 18 au 20 août, cela fait deux nuits. N’additionnez pas les montants en float ; utilisez une bibliothèque décimale ou des entiers en centimes.

Langue#

La liste des chambres accepte un champ language (ISO 639-1 : tr, en, de…) et renvoie dans cette langue les noms des chambres, les libellés des équipements et les messages d’erreur. La liste des forfaits attend un languageID ; les identifiants proviennent de l’endpoint Langues.

Dernière mise à jour: 21 septembre 2026Vous avez repéré une erreur ? Signalez-la-nous