ft_intra — Privacy Policy

Last updated: 2026-06-18

ft_intra is an unofficial mobile client for École 42 students. It shows your 42 intra data (profile, projects, evaluations, campus presence) and delivers push notifications. This policy explains what data the app handles, where it lives, and how the design stays within the 42 API General Terms of Use.

Who we are

ft_intra is built and operated by the Guild42 community for 42 students. It is not affiliated with or endorsed by École 42 / the 42 Network.

Contact: ka-kun@actraise.org

Where your data lives (at a glance)

The single most important point: your 42 credentials never reach our server. Your 42 login token stays on your phone. Our server only ever holds a push token, your notification preferences, and a list of mutually-agreed friend ids — none of which is 42 account data.

📱 Your device

☁️ Our server

🟦 42 official API

Evaluation notifications: the server cannot read your 42 data, so it sends a content-less "wake" ping → your phone uses its own token to read your evaluations from the 42 API → your phone shows the notification locally. No 42 data passes through our server.

Friend-login notifications: we only watch a friend's public campus presence, and only after both of you agreed (friend request → accept). Either side can revoke at any time.

Legend: stays here never leaves the device · stored kept on our server · never we never receive or store it.

How we comply with the 42 API Terms of Use

The app is deliberately designed so that it does not store 42 credentials on a third-party server, does not scrape the intranet, and does not process other students' personal data without their consent. Concretely:

Requirement (42 General Terms of Use)What ft_intra does
Your 42 token/session must not be handed to third partiesThe OAuth token lives in your device Keychain and is never stored on our server. It is transmitted only once, in memory, to verify your identity via the official /v2/me endpoint (so nobody can register as someone else), then discarded — never written to disk or database.
No bulk extraction / scraping of the intranetWe removed all cookie-based scraping. Data comes only from the official 42 API.
Another person's data needs that person's consentFriend-login alerts require a mutual friend request → accept. We watch only public campus presence, and only of users who agreed.
Data minimisationThe server stores only a push token, preferences and friend ids — no names, grades, messages, or profile data.
Right to deletionYou can delete your server-side data anytime in the app; logging out removes the token from your device.

What data we handle

The app works against the official 42 API and a self-hosted backend. Depending on the features you enable, the following data is processed:

DataWhenWhy
FCM push tokenWhen notifications are onTo deliver push notifications to your device
42 user id / loginWhen using the appTo identify you for presence, check-in and notifications
Friend watch list (42 user ids only)When you enable per-friend login alertsTo notify you when a watched friend logs in

Your 42 OAuth token stays on your device (iOS Keychain) and is never stored on the server. For evaluation notifications the server only sends a content-less "wake" signal; your device then reads your own data from the 42 API and shows the notification locally. The server holds no 42 session cookie and does no scraping.

We do not collect contacts, photos, advertising identifiers, browsing history, or any data for advertising/tracking.

How it is used and stored

Third parties

We do not sell or share your data with anyone else.

Your choices and deletion

Children

The app is intended for École 42 students and is not directed at children under 13.

Changes

We may update this policy; the "Last updated" date will change accordingly.