Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.
Table of Contents

...

Use Case Description

Rescheduling an existing appointment is basically about creating a new reservation on a time slot, and re-basing the existing appointment with the new reservation. An existing appointment can never be updated with a new service since this should be treated as a different appointment.
The flow of rescheduling an appointment is similar to Book appointment but with some differences. The interactions to reschedule an appointment are:

  • List booked appointments for customer

  • Get booked appointment

  • Get branches for appointment’s service

  • Get time slots of appointment’s selected service and branch

  • Reserve time slot

  • Reschedule appointment with new reservation id

...

For a full reference of each endpoint interaction. Please consult the Qmatic Cloud Appointments API - API Reference.see API Reference.

API Endpoints

Search customer’s appointments

Allows to search all appointments related to the same customer (by Personal Identifier).

POST /appointments/search

Code Block
{
  "customer": {
    "personalIdentifier": "pN7aBhwu5lw4nI6yKCNGzLHdwKkY"
  }
}

Response schema

Code 200 - OK

Code Block
{
  "appointmentId": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
  "timeSlot": {
    "startTime": "2022-03-03T09:00:00+01:00",
    "endTime": "2022-03-03T09:00:00+01:00"
  },
  "customer": {
    "firstName": "i-H{ItDlywIrl'ItpLg}He{tI",
    "lastName": "CLLi{.bIcHy-Dsbll'c'nwLCtpiHep-{nsa{tIaseH' lIInHgbceC'I-Dtn}e.eaHlwLIepL",
    "phoneNumber": "pt pD-+DDtp{ggp-{g{iit+{ pg +++D}-t",
    "email": "string",
    "dateOfBirth": "2000-01-01"
  },
  "service": {
    "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
    "name": "string",
    "config": {
      "maxNumberOfReservations": 0
    }
  },
  "branch": {
    "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
    "name": "string"
  },
  "numberOfReservations": 0
}

Get an Appointment details

GET /appointments/AppointmentId

Response schema

Code 200 - OK

Code Block
{
  "appointmentId": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
  "timeSlot": {
    "startTime": "2022-03-03T09:00:00+01:00",
    "endTime": "2022-03-03T09:00:00+01:00"
  },
  "customer": {
    "firstName": "rgaenLni{ana.swp{igsLbwLpnrHaebHyCe-Ine}'pL}Lit{g{Is. sHCaiyg-prrLIccC nlD {cLnlewi-y.geLlsIwrr.Dyy",
    "lastName": "C'cpH'e .r{clstbr",
    "phoneNumber": "p{-}}p",
    "email": "string",
    "dateOfBirth": "2000-01-01"
  },
  "service": {
    "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
    "name": "string",
    "config": {
      "maxNumberOfReservations": 0
    }
  },
  "branch": {
    "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
    "name": "string"
  },
  "numberOfReservations": 0
}

Reschedule an appointment

PUT /appointments/appointmentId/reschedule

Code Block
{
  "reservationId": "3fa85f64-5717-4562-b3fc-2c963f66afa6"
}

Response Schema

Notes field is added on 10/08/2023

Code Block
{
  "appointmentId": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
  "timeSlot": {
    "startTime": "2022-03-03T09:00:00+01:00",
    "endTime": "2022-03-03T09:00:00+01:00"
  },
  "customer": {
    "firstName": " {tClab'cwIbybas'Lgalc'lrtLllb{DclbL}CCbH{g{ipbbHti}giICr i-biyH e'L}ta ",
    "lastName": "t-apaptalpiLtgIiIwccasps}gtctHIir ccc}L.}H'tab {iinibri{wHL.gDa}CgpI iIc}CaHtawc'Crcecypp}D{{e",
    "phoneNumber": "}}}D -D{}iDp-Di}+iit{D++Di- iDt+tp  i-ttpDp+pg+",
    "email": "string",
    "dateOfBirth": "2000-01-01"
  },
  "service": {
    "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
    "name": "string",
    "config": {
      "maxNumberOfReservations": 0
    }
  },
  "branch": {
    "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
    "name": "string"
  },
  "numberOfReservations": 0
}