Position is one of the base type which we are using in Queue system. It includes dates, labels, language and more information that can be used. General (or walk in or A-type) tickets are first level of implementation, Bookings using the same interface but also have bookings property in body.

Schema:

Changelog 23-09-2021:

  1. Added servedBy property specification

  2. Added booking.appointment property specification

Changelog 21-04-2021:

  1. Added servedBy property specification

  2. Added booking.appointment property specification

Changelog 22-02-2021:

  1. Added station property specification

Changelog 28-01-2021:

  1. Added calledAt, completedAt, rejectedAt

Example:

  {
    "id": "_id_",
    "location": null,
    "type": "booking",
    "priority": 100,
    "locale": "en",
    "notification": {
        "type": "phoneNumber",
        "settings": {
            "from": "",
            "to": "+phoneNumber",
            "recipient": "test@email.com"
        },
    },
    "registrationData": {
      "phone": { value: "+48888888888" },
    },
    "booking": {
        "start": "yyyy-MM-dd HH:mm", // with respect to timezone
        "end": "yyyy-MM-dd HH:mm", // with respect to timezone
        "appointment": {
          displayName: "Alexey Khorev"
          eventId: "****"
          managerEmail: "manager@ombori.com"
          managerId: "f31c6a56-........"
        },
        "virtualAppointment": {
          eventId: "AAMkADExYWZmYjI4LTMxMjIt......="
          isEnabled: true
          managerEmail: "virtual-booking@some-domen.com"
          managerId: "9cd376b6-......."
          url: "https://teams.microsoft.com/l/meetup-join/19....."
        }
    },
    "servedBy": {
      id: "fc13d10c-.......",
      email: "manager@ombori.com",
      firstName: "",
      lastName: ""
    },
    "station": {
      "id": "1234_id",
      "label": "A"
    },
    "status": "draft",
    "label": "", // label will generated when time comes
    "queue": "_queue_id_",
    "createdAt": "2020-05-26T08:47:37.1700000Z",
    "calledAt": "2020-05-26T15:30:37.1700000Z",
    "fulfilledAt": "2020-05-26T17:15:59.6100000Z",
    "completedAt": "2020-05-26T17:16:59.6100000Z",
    "bookingReminderAt": null,
    "QRCodeCheckInPositionId": "{"type":"check-in-position","positionId":"ce4a66df-51ff-47af-bf5e-4e26f82d266b"}"
  }