Tips for SIS export (CatapultCONNECT and CatapultEMS)

Need to export data from your Human Resources or Student Information System (SIS)?

If you use CatapultCONNECT and EMS, refer to the document below. If you use CatapultEMS only, see Tips for SIS export (CatapultEMS) for a limited export.

Key points for automation

  • File Transfer: via SFTP

  • Format: .csv

  • Headers: Include headers as the first line of each file. Match the exact order and spelling of the headers listed below.

  • Filename: Match filename exactly.

  • Send Staff / Student / StaffToStudent files daily. Recommended time: after your office staff leave for the day and before 11:00 pm PST.

  • Attendance file: Send 15 minutes before attendance alert goes out (CatapultCONNECT only).

  • SchoolExport: Export one time and share via Google Drive or SFTP folder.

 

* = Required for basic setup

 

Contents

StaffExport.csv*

Sample file: StaffExport.csv

  • id,school,nameFirst,nameLast,email,mobileNumber,title

    1. id*: Staff ID number from SIS. Can be numerical or alphabetical. *Required. To associate teachers with students, this ID must match the teacher ID listed in the StaffToStudentExport.csv. If your organization/district does not need student rosters, then this ID can be anything. 

    2. school* (or site): School/site code from the Student Information System (SIS) that the staff member works. *Required.

      If a staff member works at multiple sites, add separate lines for each site. For example:

      0000001,10,John,Smith,jsmith@example.com,555-555-5555,Teacher
      0000001,20,John,Smith,jsmith@example.com,555-555-5555,Teacher

      Note: If any of the data differs between lines (e.g. id, name, mobileNumber, or title), the import uses data from the first line. 

    3. nameFirst*: First name of staff. *Required.

    4. nameLast*: Last name of staff. *Required.

    5. email*: Work email for staff. *Required.

    6. mobileNumber: Staff mobile number. Optional. 10 digits. Flexible on parentheses, hyphens and spaces.

    7. title(*): Job title for staff (appears as Position/Title in EMS/CONNECT). *Optional, but highly recommended. 

      If the title of a new user includes "Teacher" or "Instructor", then that user initially appears in the "Staff" tab in CatapultEMS. All others initially appear in the "Other Staff" tab. A title change does not affect the access level for existing users. For full access control, use the emsAccess and emsUpdateAccess columns below. A user can only have one title across all site assignments.

    8. emsAccess: User access level in CatapultEMS. Optional. (Omit if your organization does not use CatapultEMS.) Valid values include:
      1. staff
      2. other staff
      3. site safety team
      4. district safety team
      5. traveling staff
      6. substitute (Note: The importer does not support dates ranges for substitute site assignments. That part is manual.)
      7. [blank] - matches default behavior (Any staff member with the title "Teacher" or "Instructor" initially appear in the "Staff" tab in CatapultEMS. All others initially appear in the "Other Staff" tab).
      In CatapultEMS, a user can only have one role across all site assignments.
    9. emsUpdateAccess: Whether to update access in CatapultEMS for existing users. Optional. (Omit if your organization does not use CatapultEMS.) Valid values include:
      1. true - Updates access level for existing users in EMS to match the value in the emsAccess column. Only recommended for users you know do not need other access. In the web interface, Edit User page, this value disables access options unless the user is set to "Manual".
      2. false - Only sets the access level for new users (based on the value in the emsUpdate column). Does not change the access level for existing users. 
      3. [blank] - same behavior as false

Catapult always adds new users and new user locations based on the StaffExport.csv. Catapult can optionally deactivate users and user locations that no appear in the StaffExport.csv. The latter is ideal if your organization has accurate data on which staff belong to each site/school.

StudentExport.csv*

Sample file: StudentExport.csv

CatapultCONNECT can now distinguish emergency contacts from general contacts when sending emergency messages. See primaryNotificationPreference and secondaryNotificationPreference, below.

CatapultEMS uses the first columns (1-12), and CatapultCONNECT uses all columns (1-24).

  • id,school,nameFirst,nameLast,mobileNumber,email,contactNamePrimary,contactPhonePrimary,contactEmailPrimary,contactNameSecondary,contactPhoneSecondary,contactEmailSecondary,zipCode,busRoute,grade,lunchBalance,primaryLanguage,primaryZip,primaryPrefferedContactMethod,primaryNotificationPreference,secondaryLanguage,secondaryZip,secondaryPreferredContactMethod,secondaryNotificationPreference 

    1. id*: student ID number from SIS and can be numerical or alphabetical. *Required.

    2. school* (or site): school code from SIS. *Required.

    3. nameFirst*: first name of student. *Required.

    4. nameLast*: last name of student. *Required.

    5. mobileNumber: mobile number of student. Important: Only include if students are receiving alerts in contract.

    6. email: email of the student. Important: Only include if students are receiving alerts in contract.

    7. contactNamePrimary (or contactName1): Name of primary contact. Optional. If the name includes a comma (e.g. "Smith, John" or "John Smith, Jr.") please add quotes around the name. (Some software does this automatically for CSV files).

    8. contactPhonePrimary (or contactPhone1): Phone number of primary contact. Optional

    9. contactEmailPrimary (or contactEmail1): Email of primary contact. Optional.
    10. contactNameSecondary (or contactName2): Name of secondary contact. Optional. If the name includes a comma (e.g. "Smith, John" or "John Smith, Jr.") please add quotes around the name. (Some software does this automatically for CSV files).
    11. contactPhoneSecondary (or contactPhone2); Phone number of secondary contact. Optional.
    12. contactEmailSecondary (or contactEmail2): Email of secondary contact. Optional.
    13. zipCode: Primary zip code of student. Optional.
    14. busRoute: bus route of student. Optional. If student has multiple bus routes, separate with semicolon. (e.g. "11;16" or "HC AM;HC PM").
    15. grade: Student grade level. Optional.
    16. lunchBalance: A positive or negative a number with two decimal places (e.g. 0.00, 20.75, -11.35). Omit any dollar signs. Optional. If not applicable, leave blank.
    17. primaryLanguage (or language1): Preferred language of the primary contact. Optional. See Supported languages. The "Written" section has the most comprehensive list of accepted language names.
    18. primaryZip (or zip1): Zip code of the primary contact. Optional.
    19. primaryPrefferedContactMethod (or preferredContactMethod1): Optional.
    20. primaryNotificationPreference (or notificationPreference1): The types of notifications the primary contact wants. Optional. Valid values include
      1. emergency - if the contact only wants emergency notifications only
      2. all - if the contact wants to receive all communication including non-emergency
      3. [blank] - interpreted the same as all
    21. secondaryLanguage (or language2): Preferred language of the secondary contact. Optional. See Supported languages. The "Written" section has the most comprehensive list of accepted language names.
    22. secondaryZip (or zip2): Zip code of the secondary contact. Optional.
    23. secondaryPreferredContactMethod (or preferredContactMethod2): Optional.
    24. secondaryNotificationPreference (or notificationPreference2): The types of notifications the primary contact wants. Optional. Valid values include
      1. emergency - if the contact only wants emergency notifications only
      2. all - if the contact wants to receive all communciation including non-emergency
      3. [blank] - interpreted the same as all

    If your contract includes more than two student contacts, the column names would be contactName3,contactPhone3,contactEmail3,language3,zip3,preferredContactMethod3,notificationPreference3, with the number increasing to 4, 5, etc.

    Alternatively, you can list only one contact per line (but repeat the student info).

    StaffToStudentExport.csv*

    Sample file: StaffToStudentExport.csv

    Remember to limit this to current classes only. Note: since uploads happen the night before, please include classes one day before the official start date. 

    PowerSchool users: create AutoSends at the site level (not District Office) or use the Data Export Manager plugin.

    • school,teacher,student,period,name,courseNumber,sectionNumber

      1. school* (or site):  school code from SIS. *Required.

      2. teacher* Must match the Staff ID from the StaffExport file. *Required.

      3. student* Must match the Student ID from the StudentExport file. *Required.

      4. period* Usually a number, but can also be 'homeroom' or '0'. *Required. If a teacher has multiple class rosters (e.g. secondary school) then each class needs a different period.

      5. name* Course name. *Required.

      6. courseNumber: Optional.

      7. sectionNumber: Optional.

    Wipe all student-teacher associations

    Import doesn't process empty files. This is usually the desired behavior. (For example, a practice drill between semesters still shows teacher's old classes so they can use the student accounting features.)

    In the rare circumstance that your school wants to turn off student accounting for a particular school, you can clear all associations for a school by listing that school code on it's own line.

    school,teacher,student,period,name,coursenumber,sectionnumber
    1
    This example clears all staff-to-student associations at school code 1.

    AttendanceExport.csv

    Only CatapultCONNECT uses AttendanceExport.csv. This feature is optional.

    • school,student,period,absenceCode,teacherName,date

      1. school*:  School code from SIS. *Required.

      2. student*: ID must match IDs in the ‘student’ column from the StudentExport file. *Required.

      3. period(*): Should match a designated period from the StaffToStudentExport file. *Required if you want to list periods in your message to parents/guardians (or might in the future).

      4. absenceCode*: Typical values include "Absent", "Tardy", or internal representations of these values. *Required. Client should designate which absence codes they would like.

      5. teacherName: Can be a full name (e.g. "Bob Smith") or partial name (e.g. "B. Smith"). Optional.

      6. date*: Date of absence code, e.g. mm/dd/yyyy. *Required for best experience. If this column is omitted then it assumes the absence is for the current date which can result in unexpected behavior. Include this column if at all possible.

        Filter to the relevant dates only. If your district sends alerts the same day, filter to today's attendance. If your district sends a mix of same-day and next-day alerts, filter to today's and yesterday's attendance.

        Upload 15 minutes before. The data must arrive before the scheduled alert. Uploading 15 minutes before the scheduled alert allows time on your end for the following steps:

        1. Initiate and complete the data pull.
        2. Initiate and complete the upload.

        Feel free to adjust the upload time if you have measured the maximum length these two steps might take on your systems.

        LunchBalanceExport.csv (alternative export)

        Usually you would use the lunchbalance column under StudentExport.csv instead of this file. If you need to export your lunch balance as a separate file (because it comes from a different system), CatapultCONNECT can optionally merge the data after you upload it.

        The lunch balance feature is optional.

        • student,school,lunchBalance
          1. student*: Must match the student ID from your student information system (SIS). *Required.
          2. school*: School code from SIS. *Required.
          3. lunchBalance*: A positive or negative a number with two decimal places (e.g. 0.00, 20.75, -11.35). Omit any dollar signs. *Required. 

        SchoolExport (Excel or CSV)

        • One-time export for internal reference by a human. (Nightly uploads of this file not required or needed.)

        • schoolCode,schoolSiteName,address,phoneNumber

          1. schoolCode: School code from SIS (can be multiple schoolCodes if merging into one physical site)

          2. schoolSiteName: Name of school or site

          3. address: Address of school or site

          4. phoneNumber: Phone number of school or site