Sessions
Appareils connectés — lister et révoquer les sessions actives d'un utilisateur final.
Chaque connexion réussie (mot de passe, code, OAuth, magic link) crée une session distincte, avec son propre refresh token. Un utilisateur peut être connecté sur plusieurs appareils simultanément.
Lister les appareils connectés
const sessions = await auth.sessions.list();
// EndUserSessionSummary[] — { id, current, createdAt, lastUsedAt, ... }current indique la session utilisée pour l'appel en cours — pratique pour distinguer "cet appareil" du reste dans votre UI ("Déconnecter tous les autres appareils").
Révoquer une session
await auth.sessions.revoke(sessionId);Révoquer la session courante équivaut à un signOut() — le refresh token associé devient immédiatement invalide côté serveur ; le prochain refresh() échoue.
Modèle de tokens
Pas de cookies : les tokens (access + refresh) sont transportés en Bearer et stockés côté client (localStorage par défaut, TokenStorage pluggable via l'option storage du client). L'access token est un JWT à courte durée de vie — voir Vérifier les sessions dans votre backend pour le vérifier côté serveur sans appeler Mailmus à chaque requête.
Le refresh est automatique et transparent : le SDK rafraîchit l'access token en arrière-plan avant son expiration, sans action de votre part.
Administration (SDK serveur)
Pour révoquer les sessions d'un utilisateur depuis votre backend (ex: après un signalement de compte compromis), utilisez le package mailmus avec votre clé secrète — voir la Référence API pour les endpoints admin end-users/*.
Suivant
- Vérifier les sessions dans votre backend — vérification locale (JWKS) ou introspection serveur.
- Organizations —
orgId/orgRolefont partie du contexte de session. - Référence API — endpoints
sessions/*.