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 we explain below how to convert between the two.

Negative Attendance

We store attendance information in two key scenarios:

  1. Person was not present: These are instances when a person is marked absent.
  2. Records with flags: If a record has an Attendance Flag, for instance, an excused absense. 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
aeries✅
blackbaud✅
blackboard✅
edfi✅
powerschool✅
skyward✅