Skip to main content
Version: main

Appointment Booking API overview

The Appointment Booking API books and manages service appointments: check availability windows, create appointments, and read booking configuration.

Basic usage

This module hangs directly off the client root:

booking := client.AppointmentBooking()

// Check availability
availabilityRequest := appointmentbookingapi.NewAvailabilityRequest()
if err := availabilityRequest.SetCatalogID(&catalogID); err != nil {
log.Fatal(err)
}
if err := availabilityRequest.SetStartDate(&startDate); err != nil {
log.Fatal(err)
}
if err := availabilityRequest.SetEndDate(&endDate); err != nil {
log.Fatal(err)
}
availability, err := booking.Availability().Post(context.Background(), availabilityRequest, nil)
if err != nil {
log.Fatal(err)
}

// Book an appointment
appointmentRequest := appointmentbookingapi.NewAppointmentRequest()
if err := appointmentRequest.SetCatalogID(&catalogID); err != nil {
log.Fatal(err)
}
appointment, err := booking.Appointment().Post(context.Background(), appointmentRequest, nil)
if err != nil {
log.Fatal(err)
}

Available operations

  • Book appointmentAppointment().Post(ctx, body, config).
  • Check availabilityAvailability().Post(ctx, body, config).
  • CalendarCalendar().Get(ctx, config) reads calendar data.
  • ConfigurationConfiguration().Get(ctx, config) reads booking configuration.
  • Rule conditionsExecuteRuleConditions().Post(ctx, body, config) evaluates booking rules.
  • User windowUserWindow() reads the user's booking window.
Was this page helpful?