Book Appointment

Books a new appointment in a calendar.

This endpoint requires the Appointments Manager role.

URL

POST: https://[base-url]/{applicationId}/calendars/{serviceId}/{date}/{cuIndex}/appointments

Headers

Authorization: Bearer <accessToken>

Route Params

  • serviceId: GUID, required.

  • date: date in YYYY-MM-dd format; required.

  • cuIndex: the calendar's unique identifier

Input Params

  • serviceTypeId: (GUID) is the service type for which to book an appointment.

  • startTime: appointment start time is the number of minutes that have elapsed since midnight. This value must correspond to a vacant time slot.

  • language (optional): the preferred communication language. It must be one of the languages supported by the organization. Leave empty to use the default language.

  • cusotmerRecordId (optional): the customer this appointment is booked for. Required if the service was configured to require customer ID.

  • contactPhoneNumber (optional): the phone number used to communicate with the customer regarding this case. Required if the service was configured to require a phone number. The value must be a valid ISO-formatted 10-digit phone number.

  • contactEmail (optional): the email used to communicate with the customer in this case. Required if the service was configured to require an email.

  • channel: FaceToFace | Video | Phone - the communication channel for customer service. The service type must support the selected channel.

  • bypassTimeslotCheck: Boolean; When set to True, an appointment will be created on the specified time, regardless of available timeslots. Note that working hours and other restrictions are still enforced.

  • preventSelfCheckIn: Boolean; When set to true, the customer cannot check in to the appointment using the kiosk.

  • fields (optional): A dictionary of fieldTypeId and fieldValue pairs. 🆕

  • tagIds (optional): An array of tag Ids. 🆕

Response

Appointment created -> 201

Sample response:

{
  "caseId":"<GUID>",
  "status": "Planned",
  "referenceDate": "YYYY-MM-ddTHH:mm:ssZ",
  "inboxId": "<GUID>",
  "channel": "FaceToFace|Video|Phone|...",
  "language": "en-US",
  "ticket": {
    "prefix": "A",
    "suffix": null,
    "number": 400
  },
  "appointment": {
    "serviceId": "<GUID>",
    "date": "YYYY-MM-dd", // the calendar date
    "cuIndex": 1,
    "start": 480, // number of minutes elapsed since midnight
    "timeUtc": "", // The appointment's start date and time in UTC
    "duration": 10, // appointment duration in minutes
    "noShowProbability": 0.0, 
    "reservationToken: "<GUID>", // for future use
    "reservationExpiryDate": "<UTC-DATE>", // for future use
  },
  "position": 0,
  "queueTimeStamp": "<UTC-DATE>",
}

Last updated