An LTI 1.3 Integration for Canvas, Brightspace, and Moodle

LMS Data Exchange & Security

A complete inventory of every data element passed between the learning management system — D2L Brightspace, Instructure Canvas, or Moodle — and You-Attend, and how that data is secured and handled.

PRODUCT You-Attend  ·  INTEGRATION LTI 1.3 Advantage  ·  VERSION 1.1 · October 2026


01   Summary

You-Attend is an attendance and student-engagement tool that runs inside your LMS. It connects using LTI 1.3 Advantage, the IMS Global standard that D2L Brightspace, Instructure Canvas, and Moodle all implement for third-party tools. Because the exchange is defined and limited by that standard, it is the same on every supported LMS — the platform names differ, the data flow does not.

Three facts frame everything below:

  1. By default, You-Attend holds no LMS API token and no administrator credentials. It cannot query the LMS on its own initiative, browse courses, or reach any data outside the course a user has just launched it from. A Brightspace institution may choose to enable an optional API connection, described in section 02; it is off unless the institution turns it on.
  2. Data moves only in response to a user action — an instructor or student clicking the You-Attend link inside a specific course.
  3. The exchange is limited to identity, course context, and attendance scores. No coursework, no content, no messages, no files.

02   How the connection works

Launch token (LMS → You-Attend)
When a user clicks the You-Attend link, the LMS issues a cryptographically signed token identifying that user and that course. It is delivered through the user’s browser and verified against the LMS’s public keys.
Course roster (LMS → You-Attend)
You-Attend requests the enrolled student list for that one course, so the instructor has a roster to mark attendance against. Scope is limited to the launched course.
Attendance score (You-Attend → LMS)
If the instructor chooses to grade attendance, You-Attend writes a numeric score to a single gradebook column it created for that purpose.
Nothing else
No other write path exists. You-Attend cannot modify enrollments, course content, other gradebook columns, or user profiles.
Optional Brightspace API connection (off by default)
A Brightspace institution may choose to connect You-Attend through the Brightspace API as well as LTI, for example to work with course groups. It is not enabled by default, and an institution that has enabled it can turn it off at any time. When it is enabled, the institution’s Brightspace administrator issues an application ID and key for You-Attend, which You-Attend stores. That key reaches no data by itself: each call also needs the launching user to be signed in to Brightspace, and runs with that user’s own permissions. You-Attend uses the connection only for the course the user launched from: to read its roster, roles, enrollments and groups, to find or create its own attendance grade item among the course’s grade items, and to write attendance scores to that item. It takes the place of the roster and grade services described in sections 05 and 06.

03   LMS → You-Attend: user identity at launch

Sent once per launch, describing only the person who clicked the link. The claim names below are LTI 1.3 standard and identical across Brightspace, Canvas, and Moodle.

Data element LTI claim Purpose
User identifier sub An opaque, LMS-generated ID — the key You-Attend uses to match a person to their attendance record. Not an SSN, state ID, or inmate number.
First name given_name Displayed on the roster so the instructor can identify students.
Last name family_name Displayed on the roster; used for alphabetical sorting.
Email address (optional) email Display label and to disambiguate students with identical names. If the LMS is configured not to release it, You-Attend falls back to name or user ID.
Institutional student ID (optional) lis.person_sourcedid The institution’s own student number, only if the LMS releases it. Used to align records with institutional reporting.
Role in course roles Whether the person is an instructor, TA, or student — this governs what they can see and do. Students cannot view other students’ records.
Language preference launch_presentation.locale Displays the interface in the user’s chosen language.

04   LMS → You-Attend: course context at launch

Identifies which course the user launched from, so records are filed correctly.

Data element LTI claim Purpose
Course identifier context.id Opaque course ID; the key attendance records are filed under.
Course title context.title Shown in the interface and on reports.
Course code context.label Short course code, shown alongside the title.
Institution identifier iss / deployment_id Identifies which LMS instance the launch came from — how You-Attend keeps each institution’s data separated from every other institution’s.
Service endpoints ags.endpoint / namesroleservice The LMS URLs You-Attend may call back for the roster and gradebook column. The LMS supplies these; You-Attend cannot invent or alter them.

05   LMS → You-Attend: course roster

You-Attend calls the LMS Names and Role Provisioning Service (NRPS) to retrieve the student list for the launched course. The permission granted is read-only and scoped to that single course.

Data element Purpose
User identifier Matches each roster entry to the correct attendance record.
First nameRoster display.
Last nameRoster display and sorting.
Email address Display label where provided by the LMS; omitted where the LMS withholds it.
Role Used to filter the list to enrolled students only. Non-student roles are discarded.

Scope limitation. The access token for this call carries a single permission — contextmembership.readonly. It cannot list courses, read other courses’ rosters, retrieve user profiles, or reach anything beyond the membership of the launched course.


06   You-Attend → LMS: attendance score

The only data You-Attend sends back into the LMS, and only when an instructor has chosen to grade attendance.

Data element Example Purpose
Student identifier (user ID) Identifies whose grade to update.
Score earned 18.5 The attendance points the student has earned.
Maximum score 20 Points available, so the LMS can calculate a percentage.
Timestamp 2026-08-18T14:22:07Z When the score was calculated.
Status flags Completed / FullyGraded Tells the LMS the score is final rather than provisional.
Column label "Attendance" Names the single gradebook column You-Attend creates and maintains.

The permissions granted for this path are lineitem and score, which let You-Attend create and write to its own gradebook column. Existing assignments and instructor-entered grades are untouched.


07   What You-Attend stores

Data received from the LMS, plus the attendance records instructors create, are held in You-Attend’s database. The complete inventory:

Record Contents
User LMS user ID, first name, last name, email or display name, institutional student ID where provided. No passwords — You-Attend never sees or stores an LMS credential.
Course LMS course ID and course title.
Attendance entry Student, course, date, status (present / absent / tardy / excused), the instructor who recorded it, and an optional instructor note visible to the student.
Activity record Where an instructor uses an in-class activity to take attendance (check-in code, quiz, poll, word game), the student’s responses and the time of submission.

Instructor notes are free text. Institutions should direct staff not to enter disciplinary, medical, or security-sensitive detail in that field.

Location is not in that inventory, by design. Where the optional location check is in use, a student’s position is compared against the boundary the instructor set and then discarded. No record of where a student was is kept against their attendance, their activity record, or anything else. Section 09 sets out what the check does and does not keep.


08   What is never shared or accessed

You-Attend does not request, read or store any of the following. In the standard LTI configuration it also has no technical means to reach them:

  • LMS passwords or login credentials
  • Assignment submissions or uploaded files
  • Course content, pages, or materials
  • Discussion posts, messages, or LMS inbox
  • Grades other than the attendance column it creates
  • Quiz banks or exam content
  • Any course the user has not launched it from
  • LMS admin functions or account settings
  • Social security numbers or government identifiers
  • Financial, payment, or billing data
  • Dates of birth, addresses, or phone numbers
  • Photographs or biometric data

You-Attend does not sell data, does not use it for advertising, and does not share it with third parties for any purpose unrelated to delivering the service.


09   Optional collection

Two features collect additional data. Both are off by default, configurable per institution, and can be disabled entirely.

Feature What it collects Control
IP address logging Records the network address of the device used to mark attendance, so instructors can spot check-ins from off campus. Off by default; enabled per institution.
Location check Where an instructor attaches a location boundary to a check-in activity, the student’s browser reports its coordinates once so the tool can confirm the student is in the classroom. The coordinates are compared against that boundary and discarded: they are not written to the student’s record and not written to our logs. Where a check is refused, the logs record how far the reported position fell from the center of the boundary — a distance, not a position — so a boundary drawn too tightly can be told apart from a student who is not there. Applies only to activities explicitly configured this way. Off by default; enabled per institution.

Additional control. The in-class activity tools (check-in codes, quizzes, polls, word games) can be enabled or disabled individually per instance. An institution that prefers a plain roster-marking tool with no student-facing activities can be configured that way.


10   Security and handling

Authentication
Every launch is a cryptographically signed LTI 1.3 token, verified against the LMS’s published public keys (JWKS) before You-Attend trusts it. Callbacks to the LMS for the roster and gradebook use short-lived OAuth 2.0 access tokens the LMS issues, each carrying only the narrow scope required.
No stored credentials
By default, You-Attend holds no LMS administrator credentials and no long-lived API token. It cannot authenticate to the LMS on its own — it acts only within the scope the LMS grants at the moment of launch. Where a Brightspace institution has enabled the optional API connection (section 02), You-Attend stores the application ID and key that institution issued; it still holds no administrator credentials and no user passwords.
Tenant separation
Each institution is identified by its LMS issuer and deployment identifier, and all data is keyed on that identity so one institution’s data is never reachable from another’s context.
Encryption
Data is encrypted in transit using TLS 1.2 or higher. Data at rest in Azure SQL Database is protected with transparent data encryption using service-managed keys, and automated backups are encrypted. Production credentials are held in Azure application settings; work to remove the remaining credentials from source control is in progress.
Hosting
You-Attend runs on Microsoft Azure cloud infrastructure in the Central US region (App Service and Azure SQL Database), and in the Canada Central region for institutions that require Canadian data residency. Microsoft Azure is the only subprocessor that processes institution data. Backups are geo-redundant within the same country.
Access control
Access to production systems and data is restricted to authorized You-Attend personnel on a least-privilege basis. Administrative access requires multi-factor authentication (a password plus a one-time code from an authenticator app), and access is reviewed at least annually.
Data retention and deletion
Institution data is retained for the term of the subscription and deleted or returned within 30 days of termination, except where retention is required by law. Backups expire on a seven-day rolling cycle, and a certificate of destruction is provided.
Incident response
In the event of a confirmed security incident affecting institution data, You-Attend will notify the affected institution within 72 hours of confirming the incident. If an institution’s agreement sets a shorter period, that period applies.
Change management
Every production change is approved by the founder, tested outside production, versioned and recorded, with rollback available. Microsoft patches the Azure platform. You-Attend reviews framework and dependency updates each quarter and addresses high-severity vulnerabilities within 48 hours. Microsoft Defender for Cloud monitors the database and the web application.

11   Contact

Questions about this document or You-Attend’s data handling:

You-Attend, LLC
2119 Douglas St., Charleston, IL 61920
support@you-attend.com

See also the Privacy Policy and Terms of Service.