Booking specification

A Booking is an appointment for an inventory slot. It contains the information needed to identify and make the appointment.

Booking Definition

// 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;

  // Information about the Offer applied to this booking.
  //
  // Required in CreateBookingResponse if an offer_id was set on the
  // CreateBookingRequest that created the Booking.
  OfferInfo offer_info = 7;
}

OfferInfo Definition

// Information about an Offer applied to a booking.
message OfferInfo {
  // The ID of the Offer.
  string offer_id = 1;
}