Para completar la tarea de hito CreateBooking Ready, debes compilar y entregar correctamente el método CreateBooking. Se llama a este método cuando un usuario intenta crear una reserva. Si se crea una reserva correcta, la respuesta incluye un booking_id único para hacer referencia a la reserva en solicitudes o actualizaciones futuras.
Requisitos de la tarea CreateBooking
- 10 solicitudes
CreateBookingen el entorno de pruebas con una tasa de éxito del 90% o más - 3 solicitudes
CreateBookingen producción con una tasa de éxito del 90% o más
Conceptos básicos de CreateBooking
Cuando un usuario inicia una reserva, se envía una solicitud CreateBooking al servidor de reservas del socio. La respuesta a la solicitud indica si la reserva se realizó correctamente o si falló. Si falla la reserva, la respuesta debe incluir el error de lógica empresarial correspondiente. Por ejemplo, el espacio dejó de estar disponible o ya lo reservó el mismo usuario.
Cuando un usuario crea una reserva, Google te envía el nombre, el apellido, el número de teléfono y el correo electrónico de dicho usuario. Para obtener más información, consulta la política de creación y vinculación de cuentas .
Idempotencia
La comunicación a través de la red no siempre es confiable, y Google puede reintentar las solicitudes HTTP si no se recibe ninguna respuesta. Por este motivo, todos los métodos que mutan el estado deben ser idempotentes:
CreateBookingUpdateBooking
Para todos los mensajes de solicitud, excepto UpdateBooking, se incluyen tokens de idempotencia para identificar exclusivamente la solicitud. Esto te permite distinguir entre una llamada de REST que se reintentó, con la intención de crear una sola solicitud, y dos solicitudes separadas. Los IDs de entrada de reserva respectivos de UpdateBooking ayudan a identificarlos de forma exclusiva, por lo que no se incluye ningún token de idempotencia en sus solicitudes.
Los siguientes son algunos ejemplos de cómo manejan la idempotencia los servidores de reservas:
Una respuesta HTTP correcta a
CreateBookingdebe incluir la reserva creada. En algunos casos, el pago se procesa como parte del flujo de reserva. Si se recibe la mismaCreateBookingRequestpor segunda vez con el mismoidempotency_token, se debe mostrar la misma respuestaCreateBookingResponse. No se crea una segunda reserva y se le cobra al usuario exactamente una vez, si corresponde.CreateBooking
El requisito de idempotencia se aplica a todos los métodos que mutan el estado.