For Developers

Implementation Details

How the Integration Works

Edlink's integration with Toddle facilitates synchronization of key educational data. The integration leverages Toddle API endpoints to pull data and transform it into Edlink's unified data model. Toddle objects are mapped to Edlink objects through a standardized transformation process.

Assignments and submissions are handled live through the Toddle API (not via roster sync). See Supported Functionality for supported operations.

Data Mapping

Toddle ModelEdlink Model
Grade PeriodSession
SubjectSubject
SubjectDepartment
CourseClass
Student, StaffPerson
Course Student, Course StaffEnrollment
AssignmentAssignment
Student AssignmentSubmission

Limitations

  • Toddle sources must have a "curriculum". Curriculums are the parent entities to all others (i.e. courses, students, etc).
  • Grade passback and assignment create/update require a curriculum_program_id. If the org has exactly one curriculum, Edlink resolves it automatically; otherwise set curriculum_program_id (or curriculumProgramId) on the source configuration, or pass properties.toddle.curriculumProgramId when creating an assignment.
  • Creating an assignment requires a valid session_id (Toddle gradingPeriodId).
  • Assignments cannot be deleted via the Toddle API.
  • Submission IDs are synthesized as {assignmentId}-{studentId} because Toddle has no standalone submission ID.
  • Grade passback requires the submission to have been fetched from Toddle first (so properties.toddle.academicTermId is present).
  • Only grade_points and grade_comment can be written back. Other assessment tools (rubrics, checklists, grade scales, etc.) are read-only.
  • Student submission of attachments, reclaiming, returning, and file downloads are not supported by the Toddle API.

Custom Field Mapping

The following fields can be custom-mapped in our dashboard UI:

  • system roles
  • roles