Parcours complet

Cette page décrit le parcours de bout en bout : recherche → vérification de prix → réservation → statut → annulation. Les exemples sont en JSON ; ajoutez -H "Accept: application/xml" pour obtenir du XML (voir Format XML).

1. Rechercher les disponibilités

Recherchez par ville ou par liste d'hôtels (200 maximum). Chaque offre renvoie un rateKey signé qui servira aux étapes suivantes.

cURL

curl -s -X POST "https://partners.bravebooking.net/v1/1000/availability" \
  -H "X-Api-Key: $API_KEY" -H "X-Timestamp: $TIMESTAMP" -H "X-Signature: $SIGNATURE" \
  -H "Content-Type: application/json" -H "Accept: application/json" \
  -d '{
    "city": 146070,
    "checkIn": "2027-01-15",
    "checkOut": "2027-01-20",
    "rooms": [{ "adults": 2, "children": [8] }],
    "currency": "TND",
    "language": "fr"
  }'

Gardez le rateKey de l'offre choisie, par exemple rk_x9F2kQ8example. Détail : Disponibilités.

2. Vérifier le prix (checkrate)

Le rateKey rejoué dans checkrate vérifie que l'offre est toujours vendable et garantit le prix pendant 10 minutes.

cURL

curl -s -X POST "https://partners.bravebooking.net/v1/1000/checkrate" \
  -H "X-Api-Key: $API_KEY" -H "X-Timestamp: $TIMESTAMP" -H "X-Signature: $SIGNATURE" \
  -H "Content-Type: application/json" -H "Accept: application/json" \
  -d '{ "rateKey": "rk_x9F2kQ8example" }'

La réponse contient expiresAt : passé ce délai, relancez une recherche. Détail : Vérification de prix.

3. Réserver

Envoyez le rateKey vérifié, vos voyageurs et surtout votre clientReference : obligatoire et unique, elle rend l'appel idempotent (un doublon renvoie la même réservation, sans double débit).

cURL

curl -s -X POST "https://partners.bravebooking.net/v1/1000/bookings" \
  -H "X-Api-Key: $API_KEY" -H "X-Timestamp: $TIMESTAMP" -H "X-Signature: $SIGNATURE" \
  -H "Content-Type: application/json" -H "Accept: application/json" \
  -d '{
    "clientReference": "PARTNER-2026-000481",
    "rateKey": "rk_x9F2kQ8example",
    "customer": {
      "civility": "Mr", "firstName": "TEST-A", "lastName": "TEST-B",
      "email": "test@example.com", "phone": "+21620000000"
    },
    "rooms": [{
      "roomId": "18", "boardingId": 16,
      "adults": [{ "civility": "Mr", "firstName": "TEST-A", "lastName": "TEST-B" }],
      "children": [{ "firstName": "TEST-C", "lastName": "TEST-B", "age": 8 }]
    }]
  }'

La réponse (201) contient la référence passerelle, ex. BPG-2026-000123. Détail : Créer une réservation.

4. Suivre le statut

cURL

curl -s "https://partners.bravebooking.net/v1/1000/bookings/BPG-2026-000123" \
  -H "X-Api-Key: $API_KEY" -H "X-Timestamp: $TIMESTAMP" -H "X-Signature: $SIGNATURE" \
  -H "Accept: application/json"

Pour synchroniser vos dossiers, listez les réservations par période :

cURL

curl -s "https://partners.bravebooking.net/v1/1000/bookings?from=2026-11-01&to=2026-11-30" \
  -H "X-Api-Key: $API_KEY" -H "X-Timestamp: $TIMESTAMP" -H "X-Signature: $SIGNATURE" \
  -H "Accept: application/json"

Le voucher (confirmé de réservation) se télécharge via Voucher. Détail : Détail de réservation, Liste des réservations.

5. Annuler

Simulez d'abord pour connaître les frais, puis annulez réellement :

cURL — simulation

curl -s -X POST "https://partners.bravebooking.net/v1/1000/bookings/BPG-2026-000123/cancel?simulate=true" \
  -H "X-Api-Key: $API_KEY" -H "X-Timestamp: $TIMESTAMP" -H "X-Signature: $SIGNATURE" \
  -H "Accept: application/json"

cURL — annulation

curl -s -X POST "https://partners.bravebooking.net/v1/1000/bookings/BPG-2026-000123/cancel" \
  -H "X-Api-Key: $API_KEY" -H "X-Timestamp: $TIMESTAMP" -H "X-Signature: $SIGNATURE" \
  -H "Accept: application/json"

Détail : Annulation.

Ordre des opérations, en résumé

ÉtapeAppelClé transmise
1POST /v1/{code}/availability—
2POST /v1/{code}/checkraterateKey reçu en 1
3POST /v1/{code}/bookingsrateKey vérifié + clientReference unique
4GET /v1/{code}/bookings/{ref}référence reçue en 3
5POST /v1/{code}/bookings/{ref}/cancelréférence reçue en 3

Cette page vous a-t-elle été utile ?