Privacy Policy
Effective: May 6, 2026 · Last updated: July 27, 2026
IDK Can You? (“the Service”) is operated by Elisha Lucero (“we,” “our”). It provides hall-pass and device-checkout tools for K–12 classrooms at idkcanu.com, through the Android app distributed on Google Play, and through the iOS app distributed on Apple’s App Store under the name “IDK Can You?”. This policy explains what information the Service handles, how it’s protected, and the choices schools, teachers, parents, and eligible students have over it.
The Service is designed to be set up and managed by school staff. A school may use the FERPA “school official” exception only after the school determines that the Service meets the exception’s requirements, including the school’s direct control over the use and maintenance of education records. When a school authorizes the Service on that basis, we process student data under the school’s direction and only for the educational purpose the school authorizes.
1. Information we handle
Teacher account information
When a teacher signs in with Google, we receive their email address, name, and Google profile picture from Google’s OAuth service. We use this to identify the teacher, secure their account, and display their profile in the app.
Authorized platform operators may separately view the minimum identified staff-account, organization, claim, configuration, and support information needed to operate, secure, and administer the Service. This can include a staff member’s name, email address, account-created date, school or district memberships and roles, organization settings, claim decisions, and support requests. This operational directory does not include student rosters, named classroom-use analytics, or student and device details.
Student information (entered by the teacher)
Teachers add their roster manually or by uploading a CSV. Roster fields include each student’s name, school-issued ID or barcode, and optional grade and class period. This information may be part of an education record under FERPA when a school maintains it through the Service.
- Student names are encrypted at rest with Fernet encryption. We do not intentionally add student names to application logs. Backend Sentry request-body capture is disabled and captured request bodies are removed; backend error events also strip stack-frame local variables before they are sent. The hosting providers described in section 3 process Service traffic and stored records so the Service can operate.
- For each student ID or barcode, we store an encrypted copy for authorized display and export and a separate deterministic, account-scoped SHA-256 lookup value. Hall-pass session and queue records use the lookup value, not the raw barcode. Because school identifiers can come from a small set of possible values, this lookup value is pseudonymous rather than anonymous.
- Teachers can edit or remove individual roster entries. Separate controls clear the active shared roster, all Hall Pass sessions (including active passes), or all device data. Each control explains what it removes before the teacher confirms it.
- If a kiosk loses its connection after a badge scan, its Offline Scan Queue can keep the raw badge value on that kiosk device or browser until the scan is replayed or discarded. The queued value is encrypted at rest using platform-protected storage on native devices or WebCrypto-encrypted IndexedDB on the web. It contains no student name, is bound to the kiosk that captured it, and is not eligible for replay after 60 minutes. A resolved replay removes it immediately; an expired entry is removed the next time the queue is opened or a sync is attempted. If the kiosk is closed and never returns, the encrypted entry can remain in device or browser storage until that kiosk queue is accessed again or the storage is cleared.
Standing accommodations (set by the teacher)
A teacher can give an individual student a standing accommodation — not auto-flagging them as overdue, giving them a longer custom time limit, or exempting them from automatic banning. We store only the on/off state of each accommodation and, for a custom time limit, a number of minutes. We never record or store a reason, condition, justification, or any medical or disability information — these accommodations are reasonless by design. They are visible only to the teacher on their own dashboard and login-protected classroom kiosk, and are never shown on the public hallway display, which treats every student by the same room-wide time limit.
Service usage records
To operate the Service we record:
- Hall pass start and end times, destination chosen, and total duration
- Device assignments and check-in / check-out timestamps
- An audit log of administrative actions (who scanned whom, when, with what device)
These records are linked to the hashed/encrypted student record described above. The audit log is visible only to the teacher who owns the account.
We may derive aggregate, de-identified statistics from account and Service usage records to operate, secure, evaluate, and improve this same educational Service. These statistics are calculated on demand, grouped into fixed signup cohorts, and protected by minimum-group and small-cell suppression. The platform-owner view provides no account-, teacher-, student-, class-, school-, district-, or organization-level drill-down. We do not keep a separate account-level analytics profile. We do not attempt to re-identify these statistics or use them to contact, target, rank, score, advertise to, change access for, or change pricing for a particular person, school, district, or organization. We do not extend source-record retention to preserve a statistic or provide these statistics to a third-party analytics service.
A signed school or district agreement controls wherever its terms are stricter. If it prohibits this aggregate use, records it covers must be excluded before calculation or the aggregate use must remain disabled. This public policy does not override a signed agreement.
Device condition notes
When a device is reassigned, returned, or reported damaged, teachers can add short free-text notes (e.g., “cracked screen,” “keyboard sticking”). These notes describe the device, not the student, and are intended for inventory tracking. Like student names, these free-text fields are encrypted at rest. We still ask teachers not to enter student-identifying information in them.
Technical and diagnostic information
We collect minimal technical information required to keep the Service running and secure:
- Routine application request logs record a timestamp, request method, sanitized URL path, status, and duration. Selected security warnings and audit records can also include an IP address. These records are used for service reliability and misuse prevention. Hosting and network providers also process ordinary request metadata before traffic reaches the application; their retention settings are managed outside this repository.
- Crash reports and unhandled errors captured by Sentry.
Diagnostic events can include a stack trace, app version, browser or device details, and
route context. Before a backend error or transaction event is sent, request bodies are
removed and kiosk/display credential path segments and
token=query values in serialized event text are replaced with<token>. The frontend adds a custom route tag that removes those credential path segments. We keep automatic default-PII collection off, disable backend request-body capture, and do not enable Sentry Session Replay. - Problem reports that a signed-in staff member chooses to send. A report contains the staff-entered message (up to 2,000 characters), the reporting account, platform, and route context. The message is encrypted at rest and can be read by the platform owner for support. The form asks staff not to include student names, IDs, or other student details. Resolved reports are deleted after 90 days; unresolved reports remain until they are resolved.
- Session cookies on the web and bearer tokens in platform secure storage on mobile devices. These keep staff signed in and are not advertising or analytics cookies.
2. What we do not do
- We do not sell or rent personal information — ever — to anyone, including to advertisers or data brokers.
- We do not use student data for behavioral advertising or marketing purposes.
- We do not use student data to build any kind of advertising or marketing profile.
- We do not attempt to re-identify aggregate Service statistics or use them to contact, rank, score, advertise to, change access for, or change pricing for a particular person, school, district, or organization.
- We do not use student data to train large language models or other AI systems, build commercial profiles, or develop products unrelated to delivering the Service to the school.
- We do not profile students, predict behavior, or score risk. Staff can configure rule-based classroom controls: an overdue flag or automatic ban based on a chosen time limit; a school pair/group rule that holds a normal pass while a linked student is out, subject to teacher override; and optional waitlist auto-promotion when a pass spot opens. These controls do not infer traits or rank students. Staff choose the settings and can intervene. A hall pass or device check-out is otherwise recorded as it happens, not fed to a model.
- We do not record or store a reason, condition, or any medical or disability information for a student accommodation, and we do not reveal a student’s accommodations on the public hallway display.
- We do not track students or teachers across other websites, apps, or services, and we do not use third-party advertising cookies, advertising SDKs, or cross-site analytics for IDK Can You?’s own measurement or advertising. We do not deliver targeted or behavioral advertising or build audience segments. Sentry is the Service telemetry described in section 1. A device owner may separately choose to share platform diagnostics with Apple or Google under that platform’s settings and policy.
- The web application downloads functional fonts and Flutter rendering files from Google. Google receives ordinary request metadata, such as the requesting IP address, browser details, and requested asset. We do not use those requests to follow users across services or build advertising profiles. The public legal pages use only same-origin assets.
- The public landing page walkthrough video is served from our first-party media subdomain through Cloudflare’s content-delivery network. Playing it sets no third-party cookies and sends no student roster or authenticated classroom data.
- Browser privacy signals. We do not sell or share personal information for cross-context behavioral advertising, so there is no sale, sharing, or cross-site tracking for a browser “Do Not Track” signal or Global Privacy Control to stop. Those signals do not change how the Service processes the operational request and diagnostic information described in section 1.
- We do not collect device location data, address-book contacts, photo-library contents, or microphone input. The Google profile-picture URL used for a teacher account is described above. Camera permission is used to scan barcodes. Camera images stay on the device; the decoded barcode value is sent to the Service to complete the requested pass or device action.
3. Service providers and visitor-initiated external content
We use the following service providers to operate and distribute the Service. Their handling of information is governed by their terms, privacy commitments, and any agreement we have with them.
- Render Services, Inc. — web hosting and PostgreSQL database hosting (account-selected region managed outside this repository)
- Cloudflare, Inc. — DNS, content delivery, and DDoS protection (Global edge network)
- Google LLC — OAuth 2.0 sign-in for staff, functional web fonts and Flutter rendering files, and Android app distribution through Google Play (Global; information may be processed outside the visitor’s country)
- Functional Software, Inc. (Sentry) — application crash and error monitoring (project-selected region; the frontend configuration points to the US region, while the backend project region is managed outside this repository)
- Apple Inc. — iOS app distribution through the App Store and pre-release testing through TestFlight (Global; information may be processed outside the user’s country)
Google’s OAuth endpoints receive staff sign-in information (email, name, and profile picture), not student roster information. Google also receives ordinary request metadata when the web application downloads its functional assets. Render hosts the application runtime and database; Cloudflare carries Service traffic at its network edge; and Sentry receives the limited diagnostic information described in section 1. Student-identifying database fields are encrypted by the application, and the application runtime uses the key when authorized users need the information. If a school and we sign a Data Privacy Agreement, that signed agreement controls any additional sub-processor notice and data-protection terms for that school.
We disclose information outside these service providers only in narrow circumstances: when required by valid legal process, when necessary to protect the safety of students or others, or in connection with a merger or acquisition — in which case the successor remains bound by the commitments in this policy.
4. Security
- All traffic between your browser or app and our servers is encrypted with TLS 1.2+ (HTTPS).
- Student names and the display/export copy of each student ID are encrypted at rest. Student IDs also have a deterministic, account-scoped lookup value.
- Authentication uses Google OAuth 2.0. We never see or store your password.
- Staff accounts can enroll a time-based one-time passcode and receive one-time backup codes from Settings › Security. The authenticator secret is encrypted at rest, and backup codes are stored as one-way hashes. An enrolled factor is required during sign-in only when Service-wide MFA enforcement or the staff member’s school-level “Require MFA” setting is enabled. Enrollment by itself does not add a sign-in challenge while both settings are off.
- iOS app authentication uses bearer tokens stored in the device’s Keychain with the “first unlock this device” protection class.
- Ordinary teacher roster lookups use account-scoped student-ID hashes. If a school enables its organization live and Pairs features, the Service also derives an organization-scoped pseudonymous key from the school-issued ID so pair rules can compare open-pass state across active member teachers. That key is used for the school-wide comparison; it does not resolve a teacher-private roster name. School administrators’ source-based named views are described under “School organizations” below.
- The at-rest encryption key is configured in the hosting environment and is not stored in the database. A database-only copy shows ciphertext and deterministic, account-scoped lookup values instead of directly storing student names and school-issued IDs in those fields. School-issued IDs drawn from a small set of possible values may still be discoverable by checking candidates against a lookup value. Routine application logging uses internal row IDs or derived lookup values and is designed not to include student names or raw school-issued IDs.
- Web sessions expire after an 8-hour absolute lifetime or a 4-hour idle period. Signing out clears the current browser session. Mobile bearer tokens have a fixed 90-day maximum lifetime and can be revoked. State-changing requests are protected against cross-site request forgery (CSRF) or, for the narrow kiosk exceptions, same-origin checks.
- Sensitive administrative actions (student bans, data resets, roster uploads, token rotations) are recorded in a tamper-evident audit log secured with a SHA-256 hash chain; audit entries are designed not to contain student names or raw school-issued IDs.
School organizations. A school can operate idkcanu as an organization with designated school administrators. Administrators see aggregate, school-wide counts and audit metadata. If the school itself uploads its student roster and enables the live dashboard (both are deliberate, per-school switches), administrators additionally see — by name — the students the school itself provided: who is out right now, pairing rules the school created, and a capped recent record of teacher overrides of those rules, including the teacher’s optional note. This name visibility is source-based: it covers only students on the school’s own upload. An open pass for a student a teacher added privately can appear as a generic “Student” row with live operational details, but the organization does not resolve that student’s name from the teacher’s roster. The live view provides no hall-pass history or export, and the dashboard provides no per-student analytics.
The base organization scope does not move teacher-owned data. When school roster mode is separately enabled, however, a school administrator can preview and apply the school’s upload. That audited synchronization can create, update, reactivate, or archive school-sourced roster records inside member teachers’ accounts; teacher-added local records that are not school-sourced remain outside the school’s named directory.
Breach notification. If we confirm a breach of student data, we will notify the affected school without undue delay — within the timeline agreed with the school (commonly within 72 hours after confirmation) — including, to the extent known, the nature of the breach, the categories and approximate number of records affected, the likely consequences, and the steps we are taking in response.
5. Children’s privacy (COPPA & FERPA)
Accounts are for school staff, but students may use a staff-configured kiosk to scan a school-issued barcode. Students cannot create accounts. Before entering student information or asking a student under 13 to use a kiosk, the staff member represents that their school or district has authorized the Service. Federal Trade Commission COPPA guidance allows a school to consent on a parent’s behalf when an online service is used for the school’s benefit and for no other commercial purpose. If that school authorization does not apply, the Service must not be used to collect personal information from a child under 13 without verifiable parental consent.
We commit to handling student records consistent with FERPA. We do not disclose personally identifiable information from education records to any third party except as needed to provide the Service, with parental consent, or as required by law. An authorized school representative may request a review, export, or scoped deletion of data tied to its teachers’ accounts by emailing the address below.
We support schools’ compliance with applicable state student-privacy laws, including California’s SOPIPA, Illinois’ SOPPA, and New York Education Law § 2-d. A school that requires a state-specific addendum must contact us and complete that agreement before using the Service where the addendum is required. Student data is collected only as reasonably necessary for the educational service, used only for the school’s educational purpose, and never sold, rented, or used for targeted advertising.
6. Your rights and choices
- Access & correction. Teachers can view and edit their roster and view their pass and device records through the dashboard.
- Deletion. Teachers can remove individual students from the active roster and use separate dashboard controls to clear all Hall Pass sessions, including active passes, or reset Device Manager data. Roster removal archives the encrypted student profile so authorized historical views can continue to render; it is not an immediate hard deletion of that profile.
- Account and data requests. An authorized school representative may email us for a verified review of data tied to an account. We will identify the available product controls, applicable retention rules, and a written scope and timeline. The current Service does not provide one operation that hard-deletes the staff account and every related record.
- Export. The dashboard provides CSV exports of the roster and hall-pass history. An authorized school representative can request a broader export.
- Parents and eligible students. Under FERPA, the rights to inspect, review, correct, export, and delete a student’s education records run through the school. Parents and eligible students should direct access, correction, export, and deletion requests to their school. If a parent contacts us directly, we will route the request to the school and verify authority before disclosing or changing an education record. We will provide the authorized school a written scope and timeline for any broader request.
7. Retention
Active account and roster data remain until an available product control changes them or an authorized request is reviewed and completed. Backend and frontend Sentry diagnostic events are retained according to IDK Can You?’s Sentry subscription and account configuration; those controls are managed outside this repository. Hosting and network request logs follow the applicable provider and service retention settings, which are also managed outside this repository.
Transactional usage records — hall-pass sessions, device scan and administrative logs, returned device checkouts, resolved damage reports, and the security audit log — are automatically purged after 365 days by default. That automatic window is configured for the deployment as a whole; the shared Service does not currently support a different automatic window for each school. Active device checkouts, unresolved damage reports, student rosters, and device assignments do not auto-expire because deleting them could erase current classroom state. Teachers should use the dashboard’s reset tools between terms. After deletion from the active database, limited copies may remain temporarily in encrypted provider backups until those backups roll off under the provider’s retention cycle. They are not used except to restore the Service. Current product controls do not remove the staff User row. SecurityAuditLog entries are linked to that row, are hash-chained, and follow the same deployment-level 365-day default retention window. For broader requests, we verify authority and provide a written scope, retention explanation, and timeline before claiming completion.
8. International users
The Service is intended for schools in the United States and is not currently targeted to users outside the United States. Hosting and telemetry regions are selected in provider accounts rather than fixed by this repository, and providers may process information in the account-selected or global locations described in section 3.
9. Changes to this policy
We may update this policy from time to time. We will post revisions here and update the “Last updated” date above. When applicable law or a signed agreement requires advance notice, we will use available account contact information or an in-product notice before the change takes effect.
10. Contact
Questions, requests, or concerns about this policy or your data? Email elisha@idkcanu.com. We aim to respond within 5 business days.