Démarrage rapide

Sur cette page, vous allez obtenir un jeton avec vos identifiants partenaire, puis envoyer une requête de chambres et tarifs. Il vous faut une apiKey, un apiSecret et l’identifiant HMS de l’hôtel (hotelID) ; si vous ne les avez pas encore, contactez le support.

1. Obtenir un jeton#

L’endpoint de connexion attend des champs de formulaire et ne nécessite aucun en-tête d’authentification :

Terminal
curl "https://test.hms.gen.tr/external/public/login" \
  -d "apiKey=$HMS_API_KEY" \
  -d "apiSecret=$HMS_API_SECRET" \
  -d "hotelCode=1000"
Réponse · 200
{
    "success": true,
    "hotelCode": "1000",
    "token": "eyJlbmREYXRlIjp7ImRhdGUiOiIyMDI2LTA5LTE1IDEwOjI0OjMxLjAwMDAwMCIs…",
    "hotelSeoUrl": "demo-otel"
}

Conservez le token : il servira pendant 7 jours pour toutes les requêtes concernant cet hôtel.

Terminal
export HMS_TOKEN="eyJlbmREYXRlIjp7ImRhdGUiOiIyMDI2LTA5LTE1IDEwOjI0OjMxLjAwMDAwMCIs…"

2. Interroger les chambres et les tarifs#

Une recherche de deux nuits pour deux adultes :

Requête
curl "https://test.hms.gen.tr/external/online/roomType" \
  -H "Authorization: Bearer $HMS_TOKEN" \
  -d "hotelID=1000" \
  -d "startDate=2026-08-18" \
  -d "endDate=2026-08-20" \
  -d "adultCount=2" \
  -d "language=en"

3. Lire la réponse#

Chaque type de chambre contient ses types de pension (accommodationTypes), et chaque type de pension ses options de prix (prices). Voici un extrait :

Réponse · 200 (tronquée)
{
    "success": true,
    "items": [
        {
            "id": 2,
            "name": "Standard Room",
            "roomCount": 5,
            "currency": "TRY",
            "accommodationTypes": [
                {
                    "id": 2,
                    "title": "Bed & Breakfast",
                    "priceType": 0,
                    "prices": {
                        "2-1": {
                            "total": 2,
                            "price": "1930.00",
                            "currency": "TRY",
                            "nonRefundable": "",
                            "id": "2/2"
                        },
                        "2-0": {
                            "total": 2,
                            "price": "1737.00",
                            "currency": "TRY",
                            "nonRefundable": "[NR]",
                            "id": "2-0/2"
                        }
                    }
                }
            ]
        }
    ],
    "count": 1
}
  • 2-1 : 2 personnes, tarif standard (remboursable). 2-0 : 2 personnes, tarif non remboursable (nonRefundable: "[NR]").
  • price est le total du séjour ; total est le nombre de nuits. Les tarifs par nuit figurent dans le tableau prices[] de la réponse complète.
  • Dans la réservation, l’id du type de chambre est envoyé comme roomTypeID et l’id du type de pension comme ratePlanID.

Et ensuite#

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