For Developers

Attendance Overview

An Attendance object represents a Person's attendance of a Meeting.

When storing attendance data storage can become a significant consideration. Attendance records can be 100 times greater than the number of enrollments. For that reason, we provide and recommend storing only negative attendance records and those records with flags. If you do require positive attendance you can follow the following procedure to convert between the two.

We store attendance information in two key scenarios:

  1. Negative Attendance Records: These are instances when a person is marked absent.
  2. Attendance Records with Flags: If a record has an Attendance Flag, for instance, a person may have a valid reason for missing a class or a unique circumstance that needs to be noted. In these cases, a flag is added to the record. Edlink stores these flagged attendance records

Converting Between Negative And Positive Attendance

If you need to convert from negative to positive attendance. You can use the following procedure.

Daily Attendance

  1. Get the meetings for the days you are interested in tracking
  2. Pull all negative attendance records for the meeting
  3. Get all people that you want to track attendance for
  4. Get enrollments for the person and get the earliest start date of all the enrollments
  5. Loop through the attendance records and create a positive attendance record for each enrollment where:
    • An existing attendance record doesn't already exist.
    • The meeting day is on or after the person's earliest enrollment start date

Class Attendance

  1. Get the meetings for the days and classes you are interested in tracking
  2. Pull all negative attendance records for the meeting
  3. Get the class record and enrollments for the meeting
  4. Loop through the attendance records and create a positive attendance record for each person's enrollment where:
    • An existing attendance record doesn't already exist.
    • The meeting day is on or after the person's enrollment date

Properties

PropertyTypeDescription
idstringThe UUID for the object.
$filter operators: equals in not in
created_dateDateWhen the object was first seen by Edlink.
updated_dateDateWhen the object was last changed in Edlink.
$filter operators: equals gt lt gte lte
stateAttendanceStateThe state of the attendance record.
flagsAttendanceFlag[]The flags for the attendance record. All, some, or none of the possible flags may be included.
person_idstringThe UUID of the associated Person.
commentstringAdditional comments on the attedance object
identifiersIdentifier[]Additional IDs associated with the object.
person_idstringThe UUID of the associated Person.
meeting_idstringThe UUID of the associated Meeting.

JSON Example

{
    "id": "00000000-0000-0000-0000-000000000000",
    "created_date": "2021-07-05T20:32:40.454Z",
    "updated_date": "2021-07-12T21:44:23.126Z",
    "state": "present",
    "flags": [],
    "comment": "This is a comment",
    "properties": {},
    "person_id": "00000000-0000-0000-0000-000000000000",
    "meeting_id": "00000000-0000-0000-0000-000000000000"
}

Supported Providers

ProviderSupport