Especificación de reserva

Una reserva es una cita para utilizar un espacio disponible en el inventario. Contiene la información necesaria para identificar y programar la cita.

// A booking for an inventory slot
message Booking {
  // ID of this booking (required)
  string booking_id = 1;

  // The appointment slot of this booking (required for CreateBooking and
  // UpdateBooking:modify, but not UpdateBooking:cancel)
  Slot slot = 2;

  // Personal information of the user making the appointment (required for
  // CreateBooking)
  UserInformation user_information = 3;

  // Status of the booking (required for CreateBooking and UpdateBooking:cancel,
  // but not UpdateBooking:modify)
  BookingStatus status = 4;

  // Information about payment transactions that relate to the booking.
  // (optional)
  PaymentInformation payment_information = 5;

  // Information about virtual session related to this booking. (optional)
  VirtualSessionInfo virtual_session_info = 6;
}

Cómo crear una reserva

Existen dos formas de crear una reserva:

  • Una reserva se puede crear directamente desde un horario disponible.
  • Con compatibilidad opcional con las asignaciones. Primero se crea una asignación para el horario disponible y, luego, se convierte en una reserva.

Consulta CreateBooking para obtener más información.

Cómo actualizar una reserva

Una reserva se puede actualizar, es decir, reprogramar o cancelar.
Consulta UpdateBooking para obtener más información.

Cómo conocer el estado de una reserva

El estado de la reserva (consulta BookingStatus) y el estado del prepago (consulta PrepaymentStatus) de una reserva se pueden leer a través de GetBookingStatus y ListBookings.