Récupérer les réservations

Ce service web récupère la liste des réservations associées à la zone locative passée en paramètre

GET @api/partners/hotels/@hotel_id/rooms/@room_id/bookings
- from (date) : Récupération des réservations avec une date de début de séjour supérieure au paramètre
- to (date) : Récupération des réservations avec une date de début de séjour inférieure au paramètre
- checkin_min_date (date) : Récupération des réservations avec une date de début de séjour supérieure au paramètre
- checkin_max_date (date) : Récupération des réservations avec une date de début de séjour supérieure au paramètre
- checkout_min_date (date) : Récupération des réservations avec une date de fin de séjour supérieure au paramètre
- checkout_max_date (date) : Récupération des réservations avec une date de fin de séjour supérieure au paramètre

Réponse du service

Le service répond avec un code HTTP 200 OK en cas de réussite du traitement. Vous trouverez ci-dessous un exemple de réponse au format JSON.

Exemple de réponse JSON
{
"data": [{
/** @var int Identifiant unique d'une réservation */
"id": 269559,
/** @var string Référence unique du dossier */
"reference": "R200155753",
/** @var string Type de contrat (+ d'infos ci-dessous) */
"workflow": "system",
/** @var string Référence de la structure */
"hotel_id": "H88G000200",
/** @var string Référence de la zone locative */
"room_id": "H88G000200",
/** @var string Nature du séjour (+ d'infos ci-dessous) */
"nature": "par",
/** @var string Source du séjour (+ d'infos ci-dessous) */
"source": "system",
/** @var string Statut de la réservation (+ d'infos ci-dessous) */
"state": "confirmed",
/** @var bool La réservation est une vente de dernière minute ? */
"is_last_minute": false,
/** @var bool La réservation nécessite une confirmation propriétaire ? */
"is_owner_acknowledgment_required": true,
/** @var date Date d'entrée en location */
"checkin": "2020-09-11",
/** @var date Date de sortie de location */
"checkout": "2020-09-19",
/** @var int Nombre d'adultes */
"adults": 2,
/** @var int Nombre d'enfants */
"children": 0,
/** @var int Nombre de bébés */
"babies": 0,
/** @var int Nombre d'animaux */
"pets": 0,
/** @var bool Assurance souscrite ? */
"insurance": true,
/** @var array Liste des services additionnels de séjour */
"additionnal_services": [{
"name": "Ménage de fin de séjour",
"amount": 200
},
{
"name": "Location vélo",
"amount": 50
}
],
/** @var array Liste des promotions appliquées sur le séjour */
"discounts": [
{
/** @var int Identifiant unique de la promotion */
"id": 9,
/** @var string Référence unique de la promotion */
"reference": "D240000002",
/** @var string Nom de la promotion */
"name": "Promotion de test",
/** @var string|null Code de la promotion */
"code": null,
/** @var string Nature de promotion */
"type": "period",
/** @var string|null Qui supporte la promotion ? */
"distribution": "shared",
/** @var bool La promotion est-elle cumulable avec d'autres ? */
"is_cumulative": true
},
{
"id": 10,
"reference": "D240000003",
"name": "Promotion avec code",
"code": "E8X2WDPHGF",
"type": "markup",
"distribution": null,
"is_cumulative": false
}
],
/** @var float Montant total du séjour */
"trip_amount": 772.6,
/** @var float Montant des loyers avant remises/promotions */
"periods_amount": 550,
/** @var float Montant des services additionnels */
"options_amount": 250,
/** @var float Montant des remises/promotions */
"discounts_amount": 100,
/** @var float Montant de l'assurance annulation */
"insurance_amount": 45,
/** @var float Montant des frais de dossiers voyageurs */
"markup_amount": 10,
/** @var float Montant de la taxe de séjour collectée */
"tourist_tax_amount": 17.6,
/** @var float Montant des commissions sur le propriétaire */
"commission_amount": 45,
/** @var float Taux de TVA % sur les frais de dossiers/commissions */
"tva_rate": 20,
/** @var datetime Date de création de la réservation */
"created_at": "2020-11-15T16:46:09+0100",
/** @var datetime|null Date de dernière modification de la réservation */
"updated_at": null,
/** @var datetime|null Date d'annulation de la réservation */
"cancelled_at": null,
/** @var datetime|null Date de confirmation de la réservation */
"confirmed_at": "2020-11-15T16:46:26+0000",
"main_guest": {
/** @var string Référence unique du voyageur */
"reference": "C180116142",
/** @var string Adresse e-mail du voyageur */
"email": "guest@cloudspire.io",
/** @var string Nom d'affichage du voyageur */
"nicename": "Mr Benoit JACQUOT",
/** @var string|null Code postal du voyageur */
"zipcode": "88600",
/** @var string|null Pays du voyageur */
"country": "France"
},
"operator": {
/** @var string Identifiant unique de l'agent qui à réalisé la réservation */
"id": "4d6f00e7334949109611568d04ff10b6",
/** @var string Nom d'affichage de l'agent qui à réalisé la réservation*/
"display_name": "John Doe"
}
}],
"meta": {
/** @var int Nombre de réservations*/
"count": 1
}
}

Informations détaillées de la réponse

workflow (string)

Cet attribut représente le type de contrat concerné par la réservation.

ValeurDescription
systemContrat centrale
directContrat location directe
partnerContrat partenaire

state (string)

Cet attribut représente le statut courant de la réservation.

ValeurDescription
confirmedRéservation confirmée
cancelledRéservation annulée

nature (string)

Cet attribut représente la nature de la réservation.

ValeurDescription
proSéjour professionnel
parSéjour particulier

source (string)

Cet attribut représente la source de la réservation.

ValeurDescription
systemContrat en provenance de la centrale de réservation
ownerContrat en provenance du propriétaire
partnerContrat en provenance d'un partenaire
  • Dans le cadre d'une réservation partenaire (source = partner), l'opérateur spécifié est le partenaire qui à réalisé la réservation (Ex : Booking.com)
  • Dans le cadre d'une réservation système (source = system), l'opérateur spécifié est l'agent de réservation qui à réalisé la réservation
  • Dans le cadre d'une réservation propriétaire (source = owner), l'opérateur spécifié est le propriétaire lui-même

discounts.type (string)

Cet attribut représente la nature de la promotion sur le dossier.

ValeurDescription
periodPromotion sur les loyers du séjour
markupPromotion sur le markup
commissionPromotion sur les commissions
service_feePromotion sur les frais de dossier

discounts.distribution (string)

Cet attribut représente la stratégie de répartition de la promotion sur le dossier.

ValeurDescription
sharedPromotion partagée par le propriétaire et l'agence
ownerPromotion entièrement supportée par le propriétaire
srPromotion entièrement supportée par l'agence

Gestion des erreurs

Code HTTPRaison
400Erreur(s) de validation des données
403Identifiant/mot de passe incorrect
403Compte partenaire désactivé (voir avec Cloudspire)
500Erreur interne de traitement des données