Juridique
Politique de confidentialité
Comment GrindUp collecte, utilise et protège vos données.
1. Qui sommes-nous
GrindUp est une application mobile sociale dédiée aux sports de force (force athlétique / powerlifting). Elle vous permet de créer un compte, de publier des vidéos de vos levées (squat, développé couché, soulevé de terre), de faire valider vos performances par la communauté, d'apparaître dans des classements internes à GrindUp, de suivre d'autres athlètes, de commenter, d'envoyer des messages privés et de signaler des contenus.
La présente politique explique quelles données personnelles nous traitons, pourquoi, pendant combien de temps, avec qui nous les partageons et quels sont vos droits, conformément au Règlement général sur la protection des données (RGPD) et à la loi Informatique et Libertés.
2. Date d'entrée en vigueur et version
- Version : identifiant technique de version
2026-09-29(aligné sur la version du consentement juridique enregistrée dans l'application). - Date d'entrée en vigueur : 29 septembre 2026.
- Versions précédentes : version
2026-09-28(publiée du 28 septembre 2026 au 29 septembre 2026) ; version2026-06-25(publiée du 3 juillet 2026 au 28 septembre 2026). Ces versions archivées sont disponibles en anglais uniquement. - Cette politique est accessible depuis l'application (inscription, paramètres) et à l'adresse https://grindup.app/privacy.
- Cette politique est publiée en français et en anglais (English version).
3. Responsable du traitement
Le responsable du traitement est :
- Maxime Scigala, entrepreneur individuel, exerçant sous le nom commercial GrindUp
- Siège : 21 rue du Tibet, 62300 Lens, France
- SIREN : 106 023 161
- E-mail de contact : support@grindup.app
Les informations complètes relatives à l'éditeur et à l'hébergeur figurent dans nos Mentions légales.
4. Données que nous collectons
4.1 Lors de la création de votre compte
Selon le mode de connexion que vous choisissez :
- E-mail et mot de passe : votre adresse e-mail et votre mot de passe. Le mot de passe est géré exclusivement par notre prestataire d'authentification (Firebase Authentication, Google) ; GrindUp n'y a jamais accès et ne le stocke jamais. La vérification de l'adresse e-mail par lien est obligatoire avant la création de votre profil. Un e-mail de réinitialisation peut vous être envoyé si vous oubliez votre mot de passe.
- Connexion avec Google : nous recevons de Google un jeton d'identité contenant votre adresse e-mail et votre nom d'affichage Google.
- Connexion avec Apple (Sign in with Apple, iOS) : nous demandons votre nom et votre adresse e-mail (qui peut être une adresse relais privée fournie par Apple). Lors de la suppression de votre compte, un code d'autorisation Apple à usage unique peut être utilisé pour révoquer le lien avec Apple ; il n'est jamais conservé.
4.2 Lorsque vous complétez votre profil (obligatoire)
- Nom d'utilisateur (un pseudonyme unique) ;
- Date de naissance — utilisée pour vérifier l'âge minimum (16 ans — voir §17) et calculer votre catégorie d'âge compétitive ;
- Sexe déclaré ou catégorie compétitive — détermine vos catégories et classements compétitifs (catégories hommes / femmes) ; voir §6.1 sur sa visibilité ;
- Pays (utilisé pour les classements nationaux) ;
- Unité de poids préférée (kg / lb) ;
- Preuve d'acceptation des documents juridiques : les versions acceptées des Conditions d'utilisation, de la Politique de confidentialité et des règles de contenu, un horodatage serveur, le contexte de l'acceptation (inscription ou nouvelle acceptation) et la langue de l'interface au moment de l'acceptation. Aucune adresse IP n'est enregistrée avec ce consentement.
Votre date de naissance exacte, votre sexe déclaré, votre unité de poids et la preuve de votre consentement sont stockés dans un espace privé de votre compte et ne sont pas nécessairement affichés comme des champs distincts sur votre profil public. Notez toutefois que votre sexe déclaré ou votre catégorie compétitive, ainsi que les attributs dérivés de votre date de naissance et de votre poids de corps, sont utilisés pour les catégories compétitives, les filtres, les classements, les cartes de performance et de record personnel (PR) et les surfaces de classement — ils peuvent donc être visibles, accessibles ou déductibles via ces surfaces (voir §6.1 et son tableau récapitulatif).
4.3 Contenus et données que vous fournissez ensuite
- Vidéos de performance et leurs métadonnées : mouvement, charge soulevée (et unité saisie), poids de corps déclaré, date de la levée, équipement utilisé (ceinture, bandes, etc.), salle associée (facultatif), nombre de répétitions, titre/description ;
- Pour les athlètes vérifiés qui soumettent une performance de compétition officielle (le parcours « PRO ») : le lien public vers le résultat de la compétition (openpowerlifting.org), le nom de la compétition et la fédération. Le statut d'« athlète vérifié » repose sur un code de vérification que vous nous transmettez par un canal indiqué dans l'application (par exemple le compte Instagram officiel de GrindUp) ;
- Photo de profil (avatar) — soumise à modération avant publication (voir §8) ;
- Biographie du profil, le cas échéant ;
- Commentaires, j'aime, abonnements, blocages ;
- Messages privés (voir §6.3) ;
- Votes de validation sur les performances d'autres personnes (voir §5.2) ;
- Signalements de contenus ou d'utilisateurs (un motif choisi dans une liste). Lorsqu'un commentaire est signalé, le signalement conserve une copie de ce commentaire tel qu'il se présentait au moment du signalement : son texte, l'identifiant de son auteur et sa date de publication. Cette copie est conservée côté serveur et lisible uniquement par notre équipe de modération, même si l'auteur modifie ou supprime ensuite son commentaire. Lorsqu'un signalement déjà traité est rouvert pour un nouveau motif, une nouvelle copie est prise et les précédentes sont conservées avec elle. Ces copies sont conservées aussi longtemps que le signalement (§14) et effacées lors de la purge du compte de l'auteur du commentaire (§15) ;
- Retours envoyés via le formulaire dédié : catégorie, texte libre, version de l'application, plateforme, marque et modèle de l'appareil, l'identifiant de votre compte et, lorsque le retour concerne une publication, les identifiants de cette publication et de son auteur. Le formulaire ne demande aucun moyen de contact (ni adresse e-mail, ni numéro de téléphone) ; pour obtenir une réponse, écrivez à support@grindup.app ;
- Salles que vous créez : nom, ville, pays, localisation géographique de la salle.
4.4 Données de l'appareil et autorisations
Selon l'usage que vous en faites, l'application peut demander l'accès à l'appareil photo et au microphone (pour filmer une levée), à la photothèque (pour choisir/enregistrer une vidéo ou une photo), aux notifications (voir §9) et à la localisation de l'appareil (uniquement pendant l'utilisation de l'application).
Localisation : lorsque vous accordez l'autorisation de localisation, votre position sert à afficher les salles à proximité et à centrer la carte des salles. GrindUp ne l'enregistre pas comme donnée de profil et ne la conserve pas dans ses bases de données ; seules les coordonnées de la salle que vous sélectionnez ou créez sont stockées. Les fournisseurs de cartes et votre système d'exploitation (Google Maps sur Android, Apple Plans sur iOS) peuvent traiter des informations techniques liées à l'affichage de la carte selon leurs propres règles.
5. Données créées par l'utilisation de l'application
5.1 Données techniques dérivées de votre profil
À chaque publication d'une vidéo de performance, l'application fige des attributs compétitifs calculés côté serveur à partir de votre profil au moment de la levée : âge au moment de la levée, catégorie d'âge, sexe/catégorie compétitive, catégorie de poids de corps, pays, équipement. Ces attributs « au moment de la levée » sont rattachés à la vidéo. Votre date de naissance exacte n'est jamais transmise aux autres utilisateurs — voir §6.1 pour la visibilité des attributs dérivés.
5.2 Validation communautaire, Classements vérifiés et score de confiance
- D'autres utilisateurs votent pour valider ou rejeter votre performance. Une performance est validée lorsqu'elle atteint un seuil de votes et un taux d'approbation pondéré (par défaut : au moins 10 votes et 70 % d'approbation).
- Une performance validée reçoit le statut « Vérifié » et rejoint les Classements vérifiés. Ces classements sont des indicateurs internes à GrindUp, vérifiés par la communauté : ils ne constituent ni un classement fédéral, ni une certification ou une homologation sportive, et n'ont aucune valeur sportive officielle en dehors de l'application. Le label « Officiel » est réservé aux performances de compétition officielle soumises via le parcours « PRO » (résultat openpowerlifting.org, approuvé par notre équipe).
- Chaque compte votant dispose d'un score de confiance interne (0–100), recalculé automatiquement plusieurs fois par jour selon la concordance de ses votes passés avec les décisions finales. Le score de confiance n'est pas affiché publiquement et ne révèle pas les votes individuels. Il sert à pondérer les votes et peut être accessible à l'utilisateur concerné (via ses propres statistiques de validation) ou aux administrateurs lorsque cela est nécessaire au fonctionnement, à la sécurité ou au support.
- Les votes individuels sont confidentiels : ils ne sont pas affichés publiquement et ne sont pas communiqués aux autres utilisateurs — ni l'auteur d'une vidéo ni les autres utilisateurs ne voient qui a voté quoi. Si une performance est rejetée, seul le motif dominant agrégé vous est indiqué. Les votes peuvent néanmoins être traités par GrindUp pour faire fonctionner le système de validation, à des fins de sécurité, d'audit, de prévention de la fraude ou de modération (voir §5.4).
- Si la communauté rejette une performance, son auteur peut demander une revalidation unique.
5.3 Mesure d'usage interne (analytique produit)
Nous enregistrons des événements d'usage internes, liés à l'identifiant de votre compte : impressions de vidéos et temps de visionnage dans les fils, votes/passages, écrans consultés, étapes du parcours d'inscription, événements d'achat intégré si un achat est effectué (résultat et code d'erreur technique uniquement), sessions d'utilisation (plateforme iOS/Android, version de l'application, début/fin, durée, volume d'activité). (L'horodatage de dernière activité, qui n'est pas un événement d'usage, est décrit au §5.5.) Ces événements respectent un contrat strict de « métadonnées sûres » : jamais d'e-mail, de date de naissance, de contenu de message, de jeton ni de reçu d'achat. Ils servent uniquement à mesurer et à améliorer le produit et ne sont pas partagés avec des tiers à des fins publicitaires. Aucun SDK publicitaire ni outil de suivi tiers (Google Analytics, etc.) n'est intégré.
5.4 Journaux techniques et lutte contre les abus
- Compteurs de limitation de débit par compte (envois, votes, commentaires, messages, etc.) et période probatoire renforcée pendant les 24 premières heures d'un compte ;
- Jetons d'attestation d'intégrité de l'appareil (Firebase App Check : Play Integrity sur Android, App Attest/DeviceCheck sur iOS) pour bloquer les clients non officiels ;
- Journaux d'infrastructure (Google Cloud) : comme pour tout service en ligne, les journaux techniques de la plateforme peuvent contenir l'adresse IP et les en-têtes des requêtes. Nous ne stockons pas votre adresse IP dans nos bases de données applicatives ; elle peut être utilisée de manière transitoire pour la limitation de débit et le diagnostic d'erreurs. Les identifiants techniques figurant dans ces journaux sont minimisés ou tronqués lorsque c'est possible. La conservation de Cloud Logging suit la configuration par défaut de Google Cloud (bucket
_Default: 30 jours ; bucket_Required: 400 jours, verrouillé). - Journal d'audit de validation : les votes et décisions de validation sont enregistrés dans un journal interne pour garantir l'intégrité du système de classement.
5.5 Langue de l'interface, fuseau horaire, dernière activité et niveau de compatibilité
Lorsque vous ouvrez l'application (au plus une fois toutes les 10 minutes), elle enregistre dans l'espace privé de votre compte :
- la langue de l'interface utilisée par l'application (par exemple l'anglais ou le français), afin que les notifications push soient rédigées dans votre langue (en anglais lorsqu'elle est absente) ;
- le fuseau horaire de votre appareil (un identifiant tel que
Europe/Paris), afin que le rappel de vote (§9) vous parvienne à 19 h, heure locale (heure de Paris lorsqu'il est absent) ; - un horodatage de dernière activité, également utilisé pour n'envoyer le rappel de vote qu'aux comptes ayant utilisé l'application récemment (par défaut, au cours des 14 derniers jours) ;
- le niveau de compatibilité de votre application, un nombre qui identifie sa version, afin que notre équipe de support et de modération sache si une fonctionnalité vous parvient.
Ces valeurs ne sont pas affichées aux autres utilisateurs. Chaque valeur enregistrée remplace la précédente (l'application ne conserve aucun historique ; lorsque l'appareil ne communique pas de fuseau horaire, le dernier enregistré est conservé), et elles sont conservées pendant toute la durée de vie du compte puis supprimées avec lui (§15).
6. Données publiques et données visibles par les autres utilisateurs
GrindUp est un réseau social sportif : la visibilité est au cœur du produit. Il n'existe actuellement pas de mode « compte privé ».
6.1 Visible par tous les utilisateurs connectés
- Votre profil public : nom d'utilisateur, avatar approuvé, biographie, pays, nombre d'abonnés et d'abonnements, records personnels (PR), badge « athlète vérifié » et bannière de profil ;
- Vos vidéos publiées et leurs métadonnées compétitives figées (charge soulevée, catégorie de poids de corps dérivée du poids de corps déclaré au moment de la levée, âge au moment de la levée et catégorie d'âge, sexe/catégorie compétitive, équipement, salle, date de la levée), y compris les vidéos en attente de validation ;
- Vos commentaires ;
- Votre présence dans les classements (surfaces « Open » et « Classements vérifiés » — monde, pays, salle) et dans les records de salle : nom d'utilisateur, avatar, pays, performance, catégories (sexe/catégorie compétitive, catégorie d'âge, catégorie de poids de corps, équipement) et badges de preuve (« Vérifié » pour une validation communautaire, « Officiel » pour une performance de compétition approuvée) ;
- Pour une performance « PRO » (compétition officielle) : le lien public openpowerlifting.org que vous avez fourni ;
- Les salles que vous créez (l'identifiant du créateur est techniquement lisible par les utilisateurs connectés).
Vos j'aime ne sont pas visibles par tous les utilisateurs connectés : ceux-ci voient combien de j'aime une vidéo ou un commentaire a reçus, mais pas qui les a donnés. Seul l'auteur d'une vidéo ou d'un commentaire peut savoir qui l'a aimé, par les notifications de j'aime (§9 : la dernière personne qui a aimé et le nombre d'autres) et, pour une vidéo, par la liste ci-dessous.
Le propriétaire d'une vidéo peut voir la liste des personnes qui l'ont aimée (pseudo et photo de profil) ; les comptes bloqués, désactivés ou supprimés n'y apparaissent pas.
Ce qui n'est pas affiché : votre date de naissance exacte, votre adresse e-mail et vos paramètres ne sont pas des champs de votre profil public et ne sont pas transmis aux autres utilisateurs. Votre poids de corps exact n'est pas affiché aux autres utilisateurs (seule la catégorie de poids de corps dérivée l'est — voir ci-dessous). Votre score de confiance n'est pas affiché publiquement (voir §5.2).
Ce qui est visible, accessible ou déductible via les catégories compétitives : votre sexe déclaré ou votre catégorie compétitive n'est pas nécessairement affiché comme un champ de profil distinct, mais il est utilisé pour les catégories compétitives, les filtres, les classements, les cartes de performance et de PR et les surfaces de classement — il peut donc être visible, accessible ou déductible via ces surfaces. Il en va de même pour votre catégorie d'âge, votre âge au moment de la levée et votre catégorie de poids de corps. Le poids de corps déclaré au moment de la levée sert à déterminer la catégorie de poids de corps et à classer les performances. Votre poids de corps exact n'est pas affiché aux autres utilisateurs : le Service a pour objet d'afficher la catégorie de poids de corps dérivée, et non le poids de corps exact, sur les surfaces visibles par les autres utilisateurs. Votre poids de corps exact ne figure pas sur les surfaces lisibles par les autres utilisateurs : il est retiré du document public de la vidéo et conservé dans un espace serveur privé (inaccessible aux clients en vertu de nos règles de sécurité) ; les réponses d'API, les documents lisibles par les clients et les surfaces de partage exposent la catégorie de poids de corps dérivée ou des données minimisées.
Récapitulatif — attributs compétitifs et visibilité :
| Donnée | Utilisation | Visibilité |
|---|---|---|
| Date de naissance exacte | Vérification de l'âge minimum, calcul de la catégorie d'âge | Non affichée publiquement ; jamais transmise aux autres utilisateurs |
| Âge au moment de la levée / catégorie d'âge | Classements, catégories compétitives | Visible ou déductible via les surfaces de classement et les cartes de performance |
| Sexe déclaré ou catégorie compétitive | Catégories compétitives, filtres, classements, cartes de performance | Visible, accessible ou déductible via ces surfaces |
| Poids de corps déclaré (au moment de la levée) | Collecté ; utilisé pour dériver la catégorie de poids de corps et classer la performance | Non affiché aux autres utilisateurs ; conservé dans un espace serveur privé inaccessible aux clients ; seule la catégorie de poids de corps dérivée est exposée |
| Catégorie de poids de corps (dérivée) | Classements, catégories compétitives, filtres, cartes de performance, cartes PR | Visible ou déductible via ces surfaces |
| Pays | Classements nationaux, filtres | Visible (profil et classements) |
| Salle associée à une levée | Cartes de performance, records et classements de salle | Visible si renseignée |
| Score de confiance | Pondération interne des votes de validation | Non public ; ne révèle pas les votes individuels ; accessible à l'utilisateur concerné (ses statistiques) et aux administrateurs lorsque cela est nécessaire |
6.2 Accessibilité technique des médias publiés
Les fichiers des vidéos approuvées (lecture, miniatures) et des avatars approuvés sont diffusés via un CDN public : toute personne disposant de l'URL d'un fichier peut techniquement y accéder, même sans compte. Ne publiez pas une vidéo que vous ne souhaitez pas rendre publique. L'accès en lecture aux médias passe exclusivement par le CDN, selon les règles de visibilité ; il n'existe pas de lecture « invité » par URL signée. Les URL signées sont réservées aux flux d'envoi.
6.3 Données privées entre utilisateurs
- Messages privés : visibles uniquement par les participants à la conversation ; ils ne sont pas chiffrés de bout en bout. Ils peuvent être traités par GrindUp lorsque cela est strictement nécessaire au fonctionnement technique, à la sécurité, à la modération ou au respect d'une obligation légale. Le contenu d'un message n'est jamais inclus dans les notifications push. Les messages ne peuvent plus être modifiés une fois envoyés.
- Blocages : visibles uniquement par les deux comptes concernés.
- Signalements : visibles uniquement par notre équipe de modération.
6.4 Données accessibles uniquement à notre équipe (administration/modération)
Nos administrateurs et modérateurs accèdent, via une console interne sécurisée, aux données nécessaires à leurs missions : fiche utilisateur (dont e-mail, date de naissance, sexe déclaré, statistiques de validation), signalements, files de modération des vidéos et des avatars (scores d'analyse, texte détecté par OCR, indices de doublon), retours, journaux d'audit. Chaque accès et chaque action administratifs sont journalisés (e-mail de l'administrateur, action, horodatage, adresse IP de l'administrateur).
7. Finalités, bases légales et durées de conservation
| Finalité | Principales données | Base légale | Conservation |
|---|---|---|---|
| Créer et gérer votre compte, vérifier l'e-mail, authentifier | e-mail, identifiants du fournisseur, mot de passe (via Firebase) | Exécution du contrat (art. 6.1.b) | Durée de vie du compte (§15) |
| Fournir le service : profil, publication de vidéos, fils, validation communautaire, Classements vérifiés, salles | profil, contenus, attributs compétitifs figés, votes | Exécution du contrat (art. 6.1.b) | Durée de vie du compte / des contenus (§14–§15) |
| Vérifier l'âge minimum et calculer les catégories compétitives (dont la catégorie de poids de corps) | date de naissance, sexe/catégorie compétitive déclaré, poids de corps déclaré au moment de la levée | Exécution du contrat (art. 6.1.b) ; intérêt légitime à protéger les mineurs et à assurer la sécurité du Service (art. 6.1.f) ; obligation légale le cas échéant (art. 6.1.c) | Durée de vie du compte / des contenus |
| Messagerie privée, commentaires, abonnements ; notifications essentielles dans l'application | contenus, graphe social | Exécution du contrat (art. 6.1.b) ; intérêt légitime (art. 6.1.f) pour certaines notifications de service | Messages : durée de la conversation (§15) ; notifications : 90 jours |
| Modération des contenus (analyse technique automatisée + examen humain), traitement des signalements | vidéos, avatars, noms d'utilisateur, scores d'analyse, signalements | Intérêt légitime — sécurité du service, protection des utilisateurs (art. 6.1.f) ; obligations légales applicables aux hébergeurs (art. 6.1.c) | Artefacts : 7 à 30 jours ; signalements et journaux : §14 |
| Sécurité, lutte contre la fraude et les abus (limitation de débit, App Check, score de confiance, journaux) | identifiants de compte, compteurs, jetons d'attestation | Intérêt légitime (art. 6.1.f) | §14 (journaux, compteurs) |
| Achats intégrés, le cas échéant (achat, droits d'accès, restauration) | identifiant lié au compte, état de l'abonnement, métadonnées des événements de facturation | Exécution du contrat (art. 6.1.b) ; obligations légales le cas échéant (art. 6.1.c) | Durée de vie du compte ; journal technique : §14 |
| Mesure d'usage et amélioration du produit (analytique interne) | événements d'usage liés au compte (§5.3) | Intérêt légitime (art. 6.1.f) | ~90 jours (sessions : ~30 jours) |
| Stabilité de l'application (rapports de plantage et d'erreur, Sentry) | rapports techniques de plantage et d'erreur, sessions d'utilisation, identifiant d'installation, identifiants techniques rattachables au compte (§11) | Intérêt légitime (art. 6.1.f) | Rapports : 30 jours (§11, §14) |
| Preuve du consentement aux documents juridiques | versions acceptées, horodatage, langue | Obligation légale / intérêt légitime (art. 6.1.c / 6.1.f) | Durée de vie du compte (§14) |
| Langue et horaire des notifications ; rappel de vote | langue de l'interface, fuseau horaire, horodatage de dernière activité (§5.5) | Intérêt légitime (art. 6.1.f) ; le rappel de vote peut être désactivé à tout moment | Durée de vie du compte (chaque nouvelle valeur remplace la précédente ; voir §5.5) |
| Support et modération : savoir si une fonctionnalité parvient à votre application | niveau de compatibilité de l'application (§5.5) | Intérêt légitime (art. 6.1.f) | Durée de vie du compte (chaque nouvelle valeur remplace la précédente ; voir §5.5) |
| Notifications push | jeton de l'appareil, préférences | Autorisation de l'appareil / consentement (art. 6.1.a), retirable à tout moment | Jusqu'au retrait, à l'invalidation ou à la déconnexion (§14) |
| Localisation (carte des salles) | position de l'appareil (utilisée pour l'affichage) | Autorisation de l'appareil / consentement (art. 6.1.a) | Non conservée par GrindUp |
| Traiter les retours que vous envoyez via le formulaire de l'application (bug, suggestion, abus, autre) | catégorie, texte libre, informations sur l'application et l'appareil, identifiant du compte, identifiants de la publication et de l'auteur concernés (§4.3) | Intérêt légitime — améliorer et sécuriser le service (art. 6.1.f) | Durée de vie du compte (supprimés lors de la purge, §15) |
Les attributs compétitifs concernés par ces finalités (sexe/catégorie compétitive déclaré, catégorie d'âge, catégorie de poids de corps) peuvent être visibles, accessibles ou déductibles via les surfaces de classement — voir §6.1. Votre poids de corps exact est traité en interne pour déterminer la catégorie de poids de corps et classer les performances (exécution du contrat) et, le cas échéant, pour traiter les signalements relatifs à l'intégrité sportive — par exemple un poids de corps déclaré suspect (intérêt légitime, §8.3) ; il n'est pas affiché aux autres utilisateurs (voir §6.1).
Poids de corps et performances : ces données sportives sont traitées comme des données de performance athlétique, et non comme des données de santé.
8. Modération, sécurité et prévention des abus
8.1 Modération des vidéos
Chaque vidéo envoyée transite par un espace de stockage privé et fait l'objet d'une analyse technique de contenu automatisée par l'API Google Video Intelligence, limitée à la détection de contenu explicite (seule analyse demandée à ce service) :
- aucun signal problématique → publication automatique ;
- contenu explicite détecté avec un niveau de confiance élevé → rejet automatique, avec une notification ;
- signaux ambigus → examen humain par notre équipe de modération avant toute décision ; en cas d'incident technique, la vidéo est placée en examen plutôt que publiée.
Les vidéos rejetées ne sont jamais publiées ; leurs fichiers sont conservés brièvement à des fins d'audit puis supprimés automatiquement (voir §14).
8.2 Modération des avatars et des noms d'utilisateur
Chaque photo de profil fait l'objet, avant publication, d'une analyse technique de contenu par l'API Google Cloud Vision : détection de contenus sensibles (SafeSearch), détection de texte (OCR) comparé à une liste de termes interdits, et calcul d'une empreinte d'image (hachage perceptuel) utilisée uniquement comme indice de doublon pour les modérateurs — un doublon ne déclenche jamais à lui seul une décision. Selon le résultat, l'avatar est publié automatiquement, rejeté automatiquement (contenu inapproprié ou texte offensant) ou soumis à un examen humain.
Chaque nom d'utilisateur est vérifié automatiquement, à l'inscription et à chaque changement, par comparaison avec une liste de termes haineux : un nom refusé n'est pas enregistré, et vous pouvez en choisir un autre. Notre équipe de modération peut aussi exiger le changement d'un nom d'utilisateur contraire à nos règles : l'application vous demande alors d'en choisir un nouveau, et les autres actions de votre compte restent suspendues jusqu'à ce choix. Ce changement exigé n'est pas soumis au délai de 30 jours (§16) et peut être contesté (§8.6). Pendant ce temps, vous pouvez toujours demander la suppression de votre compte en écrivant à support@grindup.app (§16).
Ces outils d'analyse (vidéo et image) ne sont pas utilisés pour identifier une personne, reconnaître son identité ou créer un gabarit biométrique.
8.3 Signalements et intégrité des performances
Les signalements (contenu abusif, performance suspecte, mauvaise salle, etc.) sont examinés par notre équipe. Un module interne d'évaluation « anti-triche » agrège des statistiques de signalement (nombre de signaleurs distincts, motifs) en mode observation : il ne prend aucune décision automatique et ne modifie pas la visibilité de vos contenus.
8.4 Traitements automatisés et garanties
Certaines décisions de publication ou de modération peuvent être assistées ou déclenchées par des règles techniques automatisées (publication ou rejet automatiques décrits aux §8.1 et §8.2 ; pondération automatique des votes par le score de confiance, §5.2). Ces décisions portent sur la disponibilité des contenus au sein de GrindUp et n'ont pas pour objet de produire un effet juridique à votre égard. Les cas ambigus, les incidents techniques et les contestations font l'objet d'un examen humain.
Garanties : vous êtes informé des décisions concernant vos contenus (voir aussi §8.6) ; vous pouvez demander un examen humain, exprimer votre point de vue et contester une décision en nous contactant (support@grindup.app) ; un rejet communautaire ouvre droit à une revalidation unique dans l'application.
8.5 Mesures anti-abus
Limitation de débit par compte, période probatoire de 24 heures pour les nouveaux comptes, attestation d'intégrité de l'appareil (App Check), règles de sécurité strictes de la base de données (écritures sensibles réservées au serveur), désactivation administrative des comptes contrevenants (avec journalisation) et masquage des contenus d'un compte en cours de suppression.
8.6 Information sur les mesures de modération
En cas de retrait, de restriction de visibilité, de suspension ou d'autre mesure de modération, GrindUp peut vous informer de la mesure prise et de son motif, sauf si la loi, la sécurité du Service, la protection d'un tiers ou la prévention des abus s'y opposent. Vous pouvez contester la décision à l'adresse support@grindup.app.
9. Notifications
- Notifications dans l'application : validation/rejet de vos performances, résultat de modération, retrait de contenu, nouveaux abonnés, messages, commentaires, évolutions de vos classements de salle (record de salle pris ou perdu, dépassement, progression) et les j'aime sur vos vidéos et vos commentaires : le pseudo et la photo de profil de la dernière personne qui a aimé, le nombre d'autres personnes et, pour un commentaire, la vidéo sur laquelle il est publié. Elles expirent automatiquement au bout de 90 jours.
- Rappel de vote : au plus une fois par jour, à 19 h heure locale (§5.5), un rappel indiquant que des performances attendent votre vote, envoyé uniquement lorsqu'il existe au moins une performance sur laquelle vous pouvez encore voter. Vous pouvez le désactiver avec l'interrupteur « Rappels de vote » dans les paramètres de notification ; lorsqu'il est désactivé, ou lorsque les notifications sont entièrement désactivées, aucun rappel n'est créé, ni dans l'application ni sous forme de notification push.
- Notifications push (Firebase Cloud Messaging) : envoyées uniquement si vous accordez l'autorisation système. Nous stockons pour cela un jeton d'appareil (jeton FCM), la plateforme (iOS/Android) et la version de l'application, dans la limite de 10 appareils par compte. Le jeton est supprimé à la déconnexion, lorsqu'il devient invalide et lors de la suppression du compte.
- Vous contrôlez les notifications push par type de notification et via un interrupteur général dans les paramètres, ainsi que dans les réglages système de votre téléphone. Des plafonds anti-spam (fenêtres de silence, maximum quotidien pour les notifications non critiques) s'appliquent ; lorsque plusieurs commentaires ou messages arrivent pendant une fenêtre de silence, une seule notification push récapitulative peut être envoyée à la fin de celle-ci, indiquant le nombre de personnes concernées.
- Le contenu de vos messages privés n'apparaît jamais dans une notification push (seul l'expéditeur est mentionné).
10. Achats intégrés et paiements
- GrindUp ne vend actuellement aucune offre payante ni aucun abonnement : toutes les fonctionnalités de l'application sont gratuites. Si un achat est effectué dans l'application, il s'effectue exclusivement via l'App Store (Apple) ou Google Play. Le paiement, y compris les données de votre carte, est géré par Apple ou Google : GrindUp n'a jamais accès à vos données de paiement et ne les stocke pas.
- Nous utilisons RevenueCat pour gérer les droits d'accès liés aux achats intégrés. RevenueCat reçoit un identifiant lié au compte — une donnée personnelle au sens du RGPD — afin d'associer vos éventuels achats à vos droits d'accès ; nous ne lui transmettons ni votre e-mail ni votre nom.
- Si un achat est effectué, nous conservons son état : actif/essai/période de grâce/expiré/résilié, date de fin d'accès, identifiant du produit acheté, boutique d'achat et métadonnées techniques des événements de facturation (identifiants et horodatages des événements). Aucun montant de transaction ni reçu n'est stocké par GrindUp.
- Si un achat est effectué, le fait que vous disposiez d'un accès payant actif est enregistré sur votre profil et peut être lu par les autres utilisateurs connectés.
- La gestion et la résiliation d'un abonnement souscrit via une boutique s'effectuent dans les réglages de cette boutique.
11. Analytique, journaux et rapports de plantage
- Analytique interne : voir §5.3. Événements liés à l'identifiant de votre compte, hébergés dans notre propre base de données, sur le fondement de notre intérêt légitime (§7), avec un marqueur d'expiration d'environ 90 jours (sessions : 30 jours).
- Rapports de plantage et d'erreur (Sentry) : lorsque l'application plante ou rencontre une erreur, un rapport est envoyé à Sentry (Functional Software, Inc.) ; à chaque utilisation de l'application, le logiciel Sentry envoie aussi un court signal de session d'utilisation (identifiant d'installation, versions de l'application et du système, fin de session normale ou par plantage). Sentry héberge ces données dans sa région UE (Allemagne) et conserve les rapports 30 jours ; les sessions d'utilisation sont agrégées en statistiques que Sentry conserve selon sa propre durée de conservation. Nous n'y associons ni votre profil, ni votre nom, ni votre adresse e-mail, et l'application n'active pas l'envoi des données personnelles que le logiciel Sentry joindrait par défaut (
sendDefaultPii: false). Un rapport contient néanmoins des informations techniques nécessaires au diagnostic, qui peuvent être rattachées à vous, par exemple : modèle et état de l'appareil (langue, mémoire, écran, appareil débridé ou non), versions du système et de l'application, traces d'exécution, un identifiant d'installation aléatoire généré par le logiciel Sentry sur votre appareil, et les événements qui précèdent le problème — requêtes réseau, dont les adresses peuvent contenir des identifiants de comptes ou de médias, changements d'écran, appuis et messages de journal de l'application. Sentry peut déduire de l'adresse IP de la connexion une localisation approximative (pays, région, ville) ; l'adresse IP elle-même n'est pas conservée. Une fraction des traces de performance (10 %) peut également être collectée. Ces rapports ne sont donc pas anonymes. - Journaux serveur : les services backend journalisent des événements techniques (Cloud Logging) avec des identifiants tronqués lorsque c'est possible ; les journaux de la plateforme Google Cloud peuvent contenir des adresses IP (voir §5.4).
- Aucun cookie n'est utilisé dans l'application mobile. Ce site juridique public est statique et ne dépose aucun cookie de suivi ou publicitaire. (Notre console d'administration interne utilise des cookies techniques liés à l'authentification Google IAP de notre équipe.)
12. Destinataires et sous-traitants
Vos données sont traitées par nos équipes habilitées (support, modération, administration — accès journalisés, restreints au domaine de l'entreprise) et par les sous-traitants suivants :
| Sous-traitant | Service | Finalité | Données concernées |
|---|---|---|---|
| Google Cloud / Firebase (Google Ireland Ltd / Google LLC) | Firestore, Cloud Storage + CDN, Cloud Functions/Run, Firebase Auth, App Check, Cloud Logging | Hébergement, authentification, diffusion des médias, sécurité | Toutes les données du service |
| Google Cloud | API Video Intelligence | Analyse technique du contenu des vidéos (détection de contenu explicite) | Fichiers vidéo soumis |
| Google Cloud | API Vision | Analyse technique du contenu des avatars (SafeSearch, OCR) | Photos de profil soumises |
| Google (Firebase Cloud Messaging) / Apple (APNs) | Notifications push | Acheminer les notifications | Jeton de l'appareil, contenu de la notification |
| RevenueCat, Inc. | Gestion des achats intégrés | Droits d'accès liés aux achats intégrés | Identifiant lié au compte, événements d'achat des boutiques |
| Apple (App Store) / Google (Play) | Achat intégré | Paiement des achats intégrés, le cas échéant | Données de paiement (traitées par les boutiques en tant que responsables de traitement distincts) |
| Functional Software, Inc. (Sentry) | Rapports de plantage et d'erreur | Stabilité de l'application | Rapports techniques de plantage et d'erreur, sessions d'utilisation, identifiant d'installation, identifiants techniques (§11) ; hébergés dans l'UE (Allemagne) |
| Google (Sign-In) / Apple (Sign in with Apple) | Connexion fédérée | Authentification | Jetons d'identité (e-mail, nom) |
| Google Maps (Android uniquement) | Fond de carte des salles | Affichage de la carte | Requêtes de tuiles émises par l'appareil (iOS utilise Apple Plans) |
Aucune donnée n'est vendue ni partagée à des fins publicitaires. Vos données peuvent également être communiquées aux autorités compétentes lorsque la loi l'exige (par exemple réquisitions judiciaires, obligations applicables aux hébergeurs de contenus).
13. Transferts hors de l'UE / de l'EEE
Pour les composants dont nous maîtrisons la configuration (fonctions serveur, services de traitement, stockage des fichiers médias), l'infrastructure est déployée dans la région Google Cloud europe-west1 (Belgique). Nous ne pouvons toutefois pas affirmer à ce stade que l'ensemble des traitements a lieu au sein de l'UE/EEE : la région exacte de la base de données Firestore n'est pas attestée par le code ; les appels aux API Video Intelligence et Vision ne sont pas rattachés à une région de l'UE et peuvent être traités par Google sur une infrastructure située hors de l'UE (typiquement aux États-Unis) ; Sentry et RevenueCat sont des sociétés américaines (nos rapports Sentry sont hébergés dans sa région UE, en Allemagne) ; les notifications transitent par les infrastructures mondiales de Google (FCM) et d'Apple (APNs).
Lorsque de tels transferts ont lieu, ils sont encadrés par les mécanismes prévus par le RGPD : une décision d'adéquation (notamment le « Data Privacy Framework » UE–États-Unis pour les prestataires certifiés) et/ou les clauses contractuelles types de la Commission européenne, accompagnées le cas échéant de mesures supplémentaires.
14. Durées de conservation
Les durées ci-dessous correspondent aux mécanismes effectivement mis en œuvre. Lorsqu'aucune durée automatique n'existe, les données sont conservées tant que le compte ou le contenu existe, ou aussi longtemps que nécessaire au fonctionnement du service, à sa sécurité, à la prévention de la fraude, à l'audit, au respect de nos obligations légales et à la défense de nos droits.
| Donnée | Durée |
|---|---|
| Compte, profil, contenus publiés | Tant que le compte existe, puis suppression selon le §15 |
| Demande de suppression du compte | Délai de grâce de 7 jours (compte suspendu, contenus masqués), puis purge définitive |
| Vidéo que vous supprimez | Masquée immédiatement ; fichiers et données purgés au bout de 7 jours |
| Fichiers d'envoi incomplets / artefacts de modération / fichiers rejetés (stockage interne privé) | Envoi en attente : 7 jours ; artefacts de modération : 30 jours ; vidéos rejetées : 7 jours ; envois abandonnés marqués comme expirés au bout de 48 h |
| Copies des avatars rejetés (stockage d'audit privé) | Conservées aussi longtemps que nécessaire à l'audit de modération ; supprimées lors de la suppression du compte |
| Empreintes d'image des avatars (détection des doublons) | 90 jours (et suppression immédiate lors de la suppression du compte) |
| Notifications dans l'application | 90 jours |
| Événements d'usage internes (analytique) | Marqueur d'expiration ~90 jours ; sessions ~30 jours |
| Jetons push | Jusqu'à la déconnexion, l'invalidation ou la suppression du compte (10 appareils maximum) |
| Langue de l'interface, fuseau horaire, horodatage de dernière activité et niveau de compatibilité de l'application (§5.5) | Durée de vie du compte, chaque valeur remplaçant la précédente ; supprimés lors de la purge du compte |
| État des achats intégrés, le cas échéant | Durée de vie du compte ; supprimé lors de la purge du compte |
| Journal technique des événements d'abonnement (webhook RevenueCat) | Conservé après la suppression du compte, aussi longtemps que nécessaire à la protection contre le rejeu et à l'audit (pseudonymisé) |
| Signalements | Conservés aussi longtemps que nécessaire à l'intégrité de la modération, à la sécurité, à la prévention de la fraude et à la défense de nos droits, y compris après la suppression du compte de l'auteur du signalement ; après cette suppression, son identité est pseudonymisée (l'identifiant brut du compte n'est plus conservé) |
| Votes de validation émis | Conservés (pseudonymisés, nécessaires à l'intégrité des décisions déjà prises) |
| Journal d'audit de validation | Conservé aussi longtemps que nécessaire à l'intégrité du système de validation |
| Journaux d'audit des administrateurs | Conservés aussi longtemps que nécessaire à la sécurité et à la traçabilité des actions administratives |
| Preuve du consentement juridique | Durée de vie du compte (supprimée avec le compte) |
| Rapports de plantage et d'erreur, sessions d'utilisation (Sentry) | Rapports : 30 jours ; sessions d'utilisation : statistiques agrégées conservées selon la durée propre à Sentry |
| Compteurs anti-abus (limitation de débit) | Conservés aussi longtemps que nécessaire à la sécurité du service |
15. Suppression du compte
Vous pouvez supprimer votre compte directement dans l'application (Paramètres → Supprimer le compte), après une réauthentification récente :
- Délai de grâce de 7 jours : votre compte passe à l'état « suppression en attente » ; vos contenus sont masqués immédiatement (fils, classements, records, file de validation) ; vous ne pouvez plus interagir. Vous pouvez annuler la suppression à tout moment pendant ces 7 jours en vous reconnectant et en confirmant l'annulation (l'annulation ne laisse aucune trace visible par les autres utilisateurs).
- Purge définitive et irréversible (exécutée quotidiennement après l'échéance) : suppression de votre compte d'authentification, de votre profil (y compris date de naissance, sexe déclaré, consentements, score de confiance, langue de l'interface et fuseau horaire), de vos vidéos et fichiers médias (publics et privés), des avatars et des empreintes associées, des commentaires (les vôtres, où qu'ils se trouvent), des abonnements et abonnés, des blocages, des notifications, des jetons push, des sessions et événements d'usage, des records de salle, des statistiques de validation, des instantanés de classement, des droits d'abonnement, des retours que vous avez envoyés et des files de modération vous concernant.
- Données conservées, pseudonymisées ou anonymisées après la purge (voir aussi §14) : vos conversations sont conservées pour l'autre participant, sans votre identité (nom d'utilisateur et avatar effacés ; le contenu des messages déjà envoyés reste visible pour le destinataire) ; vos votes sur les vidéos d'autres personnes, vos signalements (dont votre identité d'auteur est pseudonymisée) et le journal technique d'abonnement sont conservés afin de préserver l'intégrité du service. Les rapports de plantage et d'erreur déjà envoyés à Sentry ne sont pas supprimés par la purge : ils expirent au terme de la durée de conservation de Sentry indiquée au §14.
La suppression n'est donc ni instantanée ni totale dans tous les systèmes : selon les cas, les données sont supprimées, anonymisées, pseudonymisées ou conservées pour des raisons de sécurité, d'intégrité du service, de prévention de la fraude, de conformité ou de défense de nos droits (détail au §14). Lorsque des données sont pseudonymisées, elles ne sont plus rattachées à votre compte, mais la pseudonymisation n'équivaut pas à une anonymisation irréversible.
La suppression du compte ne résilie pas automatiquement un abonnement souscrit via l'App Store ou Google Play : si vous en avez un, résiliez-le dans les réglages de votre boutique.
Pour les comptes Apple, le lien « Sign in with Apple » est révoqué, dans la mesure du possible, lors de la demande de suppression.
16. Vos droits
Conformément aux articles 15 à 22 du RGPD, vous disposez des droits suivants :
- Accès : obtenir une copie des données que nous détenons à votre sujet ;
- Rectification : dans l'application, vous pouvez modifier votre nom d'utilisateur (au plus une fois tous les 30 jours, sauf changement exigé par notre équipe de modération, §8.2), corriger votre date de naissance (au plus une fois tous les 30 jours), changer votre avatar, votre biographie et votre unité de poids. Pour les autres champs (notamment le sexe/catégorie compétitive déclaré et le pays, que vous ne pouvez pas modifier vous-même car ils conditionnent les catégories de classement là où ils sont visibles ou déductibles — voir §6.1), contactez-nous ;
- Effacement : suppression du compte dans l'application (§15) ou sur demande ; suppression individuelle de vos vidéos et commentaires dans l'application ;
- Opposition et limitation du traitement, dans les conditions prévues par le RGPD (notamment pour les traitements fondés sur notre intérêt légitime) ;
- Portabilité : recevoir les données que vous nous avez fournies dans un format structuré (les demandes sont traitées manuellement) ;
- Retrait du consentement à tout moment (notifications push, localisation), sans que cela affecte la licéité des traitements antérieurs ;
- Directives post-mortem : définir des directives relatives au sort de vos données après votre décès (droit français).
Pour exercer vos droits : support@grindup.app. Nous pouvons vous demander de justifier de votre identité (par exemple en écrivant depuis l'adresse e-mail du compte). Nous répondons dans un délai d'un mois, prolongeable de deux mois pour les demandes complexes.
Vous pouvez introduire une réclamation auprès de la CNIL (Commission nationale de l'informatique et des libertés) : www.cnil.fr — 3 place de Fontenoy, TSA 80715, 75334 Paris Cedex 07.
17. Mineurs
- GrindUp est réservé aux personnes âgées d'au moins 16 ans. Les personnes de moins de 16 ans ne peuvent pas créer de compte. La date de naissance est vérifiée à l'inscription (contrôle côté serveur) et des contrôles d'âge s'appliquent également aux performances publiées. Aucune inscription en dessous de l'âge minimum n'est acceptée.
- Certaines catégories compétitives peuvent couvrir des tranches d'âge théoriques plus larges que l'âge minimum d'accès au Service ; GrindUp reste réservé aux utilisateurs âgés de 16 ans et plus.
- Si vous pensez qu'un utilisateur n'a pas l'âge minimum, contactez-nous à l'adresse support@grindup.app : le compte concerné sera supprimé.
18. Sécurité
Principales mesures mises en œuvre :
- Chiffrement des données en transit (TLS) et au repos (chiffrement par défaut de Google Cloud) ;
- Authentification déléguée à Firebase Auth ; aucun mot de passe stocké par GrindUp ; révocation des sessions lors des opérations sensibles ;
- Règles de sécurité strictes de la base de données : les données sensibles (votes, jetons push, files de modération, données de profil privées) sont inaccessibles aux clients ; les écritures critiques passent exclusivement par nos serveurs ;
- Séparation du stockage : médias publiés sur un bucket public dédié ; envois en attente, artefacts de modération et images en cours d'examen sur des buckets privés ;
- Attestation d'intégrité de l'appareil (App Check), limitation de débit, période probatoire des nouveaux comptes ;
- Console d'administration accessible uniquement à notre équipe via Google Identity-Aware Proxy (double vérification réseau et applicative, domaine restreint), avec journalisation de chaque action et confirmation renforcée pour les actions destructrices en production ;
- Secrets gérés via un gestionnaire de secrets ; séparation stricte des environnements de développement, de préproduction et de production.
Aucun système n'est infaillible : en cas de violation de données susceptible d'engendrer un risque élevé pour vos droits, nous vous en informerons conformément aux articles 33 et 34 du RGPD.
19. Modifications de la présente politique
Nous pouvons modifier cette politique pour tenir compte de l'évolution du service ou de la loi. En cas de modification substantielle, la nouvelle version vous sera présentée dans l'application pour acceptation avant que vous puissiez continuer (le mécanisme de nouveau consentement versionné est intégré à l'application). La date et la version en vigueur figurent en haut du présent document.
20. Contact
- Questions sur cette politique ou exercice de vos droits : support@grindup.app
- Adresse postale : 21 rue du Tibet, 62300 Lens, France
- Autorité de contrôle : CNIL (www.cnil.fr)