OAuth Credentials : page admin dans connectors-front
Date : 14/02/2026
Priorite : MOYENNE
Status : A FAIRE
Probleme
Les credentials OAuth (Google, LinkedIn, GitHub...) sont invisibles pour l'utilisateur dans le frontend. Quand un token expire ou est revoque, l'utilisateur n'a aucun moyen de le savoir ni de re-autoriser sans intervention manuelle (appel API direct ou aide de Claude).
Solution cible
Page "Credentials OAuth" dans connectors-front (Settings ou section dediee)
Vue liste des credentials OAuth :
- Nom du credential (ex: "Compte Gouroubleu")
- Provider (Google, LinkedIn, GitHub...)
- Status : Actif / Expire / Revoque (avec code couleur)
- Date d'expiration du token
- Derniere utilisation reussie
- Instances liees (Drive, Gmail, Sheets...) avec leur status
Actions par credential :
- Re-autoriser : genere l'URL OAuth et redirige vers le consent screen
- Tester : verifie que le token fonctionne (appel API test)
- Voir les scopes : liste des permissions accordees
- Supprimer : revoque le token et supprime le credential
Indicateurs visuels :
- Badge vert/orange/rouge sur chaque credential
- Banniere globale si un credential est expire
- Notification proactive (ntfy) quand un token tombe
Endpoints backend necessaires (connectors-api)
GET /api/oauth/credentials — liste les credentials de l'utilisateur avec status
GET /api/oauth/credentials/:id/status — health check d'un credential (test token)
POST /api/oauth/credentials/:id/authorize — genere l'URL de re-autorisation (existe deja)
DELETE /api/oauth/credentials/:id — revoque et supprime
Lien avec le backlog onboarding auto
Ce ticket est complementaire de 14-02-2026-oauth-ux-onboarding-auto.md :
- L'onboarding auto cree les credentials et instances automatiquement
- Cette page permet de les administrer apres creation (re-auth, monitoring, cleanup)
Fichiers concernes
connectors-front/src/routes/settings/oauth/ — nouvelle page (ou section dans settings)
connectors-api/src/routes/oauth.ts — endpoints status/health
connectors-api/src/services/oauth.ts — logique de verification token