Need-to-Know
Before uploading any attendance files, confirm that the following values align exactly with your OneRoster data:
Student Numbers — Must exactly match the student identifiers in your OneRoster data (typically the OneRoster
sourcedId).Period Numbers — Must match the period values in your OneRoster class data.
Section IDs — Use the OneRoster class
sourcedId. This is critical for matching attendance to the correct class.Attendance Codes — Must exactly match the codes defined in your
attendance_codes.csvfile. Codes are case-sensitive ("A" and "a" are treated as different codes).
Required Files
You will need to provide the following CSV files:
attendance_codes.csv— Upload once at setup; re-upload whenever codes change.attendance.csv— Upload on your regular attendance schedule (see SFTP Attendance CSV Setup).attendance_taken.csv— Optional but recommended; tracks which sections have had attendance taken.
File 1: Attendance Codes
Filename: attendance_codes.csv
This file defines all attendance codes used in your district and maps each code to a Present or Absent status. Upload this file once during setup and re-upload any time your codes change.
Column | Description |
| The short code used in attendance records (e.g., P, A, T, E, U) |
| Whether this code means Present or Absent (not case-sensitive) |
| Human-readable label (e.g., "Sick", "Tardy", "Doctor's Appointment") |
Important:
Codes must match exactly in your attendance data.
Re-upload this file whenever attendance codes are added or changed.
File 2: Attendance Data
Filename: attendance.csv
This file contains your attendance records. Upload on your regular schedule (mid-day, end-of-day, or nightly—see SFTP Attendance CSV Setup).
Required Columns
Column | Description |
| Date attendance was taken — format MM/DD/YYYY |
| Local student ID; must match OneRoster student ID |
| Period or block number; must match OneRoster periods |
| OneRoster class/section identifier ( |
| Attendance code; must match a code from |
Optional Column
Column | Description |
| Additional notes about the attendance record (e.g., "Parent called ahead") |
File 3: Attendance Taken (Optional)
Filename: attendance_taken.csv
Tracks which class sections have had attendance officially recorded. Uploading this file alongside attendance.csv enables faster family notifications by signaling that attendance is complete for a given section.
Required Columns
Column | Description |
| Unique identifier for each record (e.g., ATT001) |
| Date attendance was taken — format MM/DD/YYYY |
| OneRoster class/section identifier ( |
| Period number; must match |
Important:
Each
attend_idmust be unique.Upload this file at the same time as your
attendance.csv.
Optional: Parent / Guardian Contacts
Edia will obtain parent/guardian contact information from your OneRoster API when available. If that data does not include sufficient contact details, you can provide contact information via CSV upload instead.
Please provide only one contact per student.
Filename: contacts.csv
Column | Description |
| Unique identifier for the contact |
| Must match the OneRoster student ID |
| Contact's first name |
| Contact's last name |
| Contact's relationship to the student |
Filename: contact_phone.csv
Column | Description |
| Must match the |
| Contact's phone number |
| Phone number ranking (used to determine outreach order) |
Tips & Troubleshooting
✔ Attendance codes aren't matching Double-check that codes in attendance.csv exactly match those in attendance_codes.csv, including capitalization. "A" and "a" are treated as different codes.
✔ Attendance isn't linking to the right class Confirm that section_id values in your attendance file use the OneRoster class sourcedId, not a local section number or name.
✔ My codes or contacts have changed Re-upload attendance_codes.csv or your contacts files whenever changes occur. Nightly uploads will keep everything current automatically.
