L'inventaire dans votre système fluctue tout au long de la journée en raison de nouvelles réservations. les annulations et les modifications d'horaires de vos marchands. La mise à jour en temps réel L'API permet d'informer Google de ces changements d'inventaire la disponibilité. Vous pouvez également utiliser les mises à jour en temps réel de l'API pour informer Google les modifications apportées aux réservations existantes.
Flux et mises à jour de l'API en temps réel
Les mises à jour en temps réel de l'API permettent d'informer Google des modifications incrémentielles apportées à la disponibilité de l'inventaire et les réservations à mesure qu'elles sont effectuées en temps réel. De plus, aux mises à jour de l'API en temps réel, envoyez chaque jour des flux de disponibilité complets pour vous assurer que Google dispose des informations les plus précises et actuelles sur la disponibilité elle existe dans votre système. Les flux complets constituent un instantané de l'état actuel l'état de la disponibilité de l'inventaire dans votre système.
Les mises à jour de l'API peuvent être utilisées pour mettre à jour des informations fournies par les flux, telles que des informations sur les marchands et les services, sont généralement utilisés uniquement pour mettre à jour les informations de disponibilité.
API de mise à jour en temps réel requises
API de mise à jour en temps réel | ||
---|---|---|
BookingNotification | Obligatoire | Envoyer des mises à jour en temps réel BookingNotification Modification de la réservation (par exemple, une modification ou une annulation). |
Availability Replace – Mises à jour en temps réel | Obligatoire sous certaines conditions[1] | Envoyez l'un ou l'autre batch replace ou remplacement unique pour envoyer des mises à jour de la disponibilité de l'inventaire. La propagation et la prise en compte des modifications peuvent prendre plusieurs minutes. |
Merchant – Mises à jour en temps réel | Facultatif | Envoyez des mises à jour en temps réel à un marchand si vous souhaitez apporter des modifications au marchand. des informations en temps réel. L'application des modifications peut prendre plusieurs heures et réfléchir. |
Service – Mises à jour en temps réel | Facultatif | Envoyez des mises à jour en temps réel au service si vous souhaitez modifier le service. des informations en temps réel. C'est par exemple le cas lorsque les tarifs des services fluctuent considérablement au cours de la journée, l'implémentation des mises à jour en temps réel des services recommandé pour éviter tout échec de commande dû à une différence de prix. Les modifications peuvent prendre plusieurs heures pour se propager et prendre en compte. |
API Availability Replace – Mises à jour en temps réel
Utilisez l'API Availability Replace pour fournir des mises à jour de disponibilité dans le les cas d'utilisation suivants:
- Un utilisateur réserve une réservation sur votre système. Le créneau de disponibilité n'est donc pas n'est plus disponible.
- Un marchand modifie sa disponibilité dans votre système.
- Un utilisateur effectue une réservation via Google. Le créneau de disponibilité n'est donc pas n'est plus disponible.
- Une réservation effectuée via Google est annulée de votre côté (par exemple, directement par le marchand. Vous devez mettre à jour la réservation ainsi que le car le créneau d'origine est à nouveau disponible.
- Un appel
BatchAvailabilityLookup
au serveur de réservation renvoie qui ne correspond pas à l'inventaire réel.
Pour en savoir plus, consultez les ressources suivantes :
- Tutoriel : Structurer les mises à jour en temps réel
- Exemple de client Java pour des mises à jour en temps réel à l'aide d'appels RESTful
- Page de référence associée à l'API Inventory Update
API Booking Notification – Mises à jour en temps réel
L'API Booking Notification informe Google
des réservations existantes. Lorsque vous envoyez une mise à jour
sur une annulation,
n'envoyez que les informations essentielles de la demande
Paramètre de requête updateMask
. Voici un exemple :
Request: PATCH https://mapsbooking.googleapis.com/v1alpha/notification/partners/<PARTNER_ID>/bookings/<BOOKING_ID>?updateMask=status Body: {"name":"partners/<PARTNER_ID>/bookings/<BOOKING_ID>", "status":"CANCELED"}
Accéder à l'API
Créer un compte de service
Utilisez l'onglet Identifiants de la console Google APIs pour : créez un compte de service. Stockez la clé privée au format JSON dans un emplacement sécurisé à un emplacement. Lorsque vous créez le compte, vous avez la possibilité de définir le rôle sur « Propriétaire ».
Authentifier les API Maps Booking
Après avoir créé un compte de service, authentifiez les API suivantes :
- API Google Maps Booking
- API Google Maps Booking (développeurs)
Pour obtenir des instructions détaillées sur la façon de procéder, consultez la S'authentifier avec l'API Maps Booking.
Utiliser des appels RESTful ou télécharger la bibliothèque cliente
Nous vous recommandons d'effectuer des appels RESTful directement à l'API Maps Booking. avec des charges utiles JSON. Pour en savoir plus, consultez les Documentation de l'API REST
Vous pouvez également utiliser des bibliothèques clientes pour vous connecter à l'API.
Langue | Télécharger le lien |
---|---|
Java | Bibliothèque client Java. Pour en savoir plus, consultez les Instructions pour le client Java |
Autres bibliothèques d'aide téléchargeables gérer l'autorisation et d'autres aspects des appels aux API Google. Si nécessaire, jetez un œil à ces exemples.
Récupérer le document de découverte
Pour certaines bibliothèques clientes, telles que Ruby, il est nécessaire d'extraire Document de découverte de l'API, qui décrit ses méthodes et paramètres.
Utilisez la commande suivante pour récupérer le document de découverte:
curl -s -o 'mapsbooking_rest' 'https://mapsbooking.googleapis.com/$discovery/rest?version=v1alpha'
Pour en savoir plus sur l'accès à l'API à partir de Ruby, suivez ces liens: client API Ruby et Bibliothèque d'authentification Ruby.
Effectuer des appels autorisés à l'API
Lorsque vous appelez l'API, consultez
Préparer un appel d'API autorisé pour autoriser votre service
avec votre clé privée et le champ d'application OAuth suivant:
https://www.googleapis.com/auth/mapsbooking
Quotas d'API
Le quota de mises à jour de l'API est de 1 500 requêtes toutes les 60 secondes, soit 25 requêtes. par seconde en moyenne. En cas de dépassement de quota (ce qui peut se produire lorsque vous n'avez pas ajouté le bon numéro de projet Google Cloud dans le portail des partenaires), Google répond avec le code message d'erreur suivant:
{ "error": { "code": 429, "message": "Insufficient tokens for quota ...", "status": "RESOURCE_EXHAUSTED", "details": [...] } }
Pour gérer cela, relancez l'appel à des intervalles exponentiellement plus grands jusqu'à
elle réussit. Si vous épuisez régulièrement le quota
ReplaceServiceAvailability
, passer à
BatchReplaceServiceAvailabily
pour réduire le nombre d'API
appels. Cette méthode vous permet de mettre à jour plusieurs services dans une seule API
.
Points de terminaison bac à sable et production
Vous pouvez appeler les environnements de bac à sable et de production via l'API. Assurez-vous d'avoir activé les deux API dans votre projet Google Cloud. Ces deux API utilisent le même champ d'application, mais ont des points de terminaison différents.
Point de terminaison production : https://mapsbooking.googleapis.com/
Point de terminaison bac à sable : https://partnerdev-mapsbooking.googleapis.com/
Voici un exemple de modification du point de terminaison en Java :
// This block of code is for OAuth and is the same for prod and sandbox. GoogleCredential .fromStream(new FileInputStream(...)) .createScoped(Collections.singleton("https://www.googleapis.com/auth/mapsbooking")) // This block of code sets the endpoint. This is what you'd change to connect to the sandbox. new GoogleMapsBookingAPI.Builder(...) .setApplicationName(...) .setRootUrl("https://partnerdev-mapsbooking.googleapis.com/") // you add this to change the endpoint to use partnerdev. .build()