Vue d’ensemble
L’API Reelevant utilise OAuth 2.0 pour l’authentification. Quatre types de grant sont pris en charge :
Toutes les opérations sur les tokens utilisent l’endpoint
POST https://api.reelevant.com/v2/auth/token.
Un client_id est requis pour chaque grant. Pour client_credentials, l’en-tête HTTP Basic peut le fournir à la place du corps. Contactez [email protected] pour en obtenir un.
Flux Authorization Code (PKCE)
Il s’agit du flux recommandé pour les applications web. Il utilise une redirection du navigateur pour authentifier l’utilisateur, puis échange un code d’autorisation contre des tokens.Étape 1 : Générer le challenge PKCE
Générez uncode_verifier aléatoire et dérivez-en le code_challenge :
Étape 2 : Rediriger vers Authorize
Redirigez le navigateur de l’utilisateur vers l’endpoint d’autorisation :
L’utilisateur voit une page de connexion. Après une authentification réussie, un écran de consentement s’affiche. Après approbation, le navigateur est redirigé vers votre
redirect_uri avec un code d’autorisation :
Étape 3 : Échanger le code contre des tokens
code_verifier doit correspondre au code_challenge envoyé à l’étape 2 (le serveur vérifie que SHA256(code_verifier) == code_challenge).
Réponse :
Certains clients OAuth sont configurés avec
requireAuthorizationCodeFlow: true. Pour ces clients, les paramètres PKCE sont obligatoires — le flux implicite est entièrement désactivé.Grant Password
Pour les comptes de service et les scripts d’automatisation où la connexion via le navigateur n’est pas envisageable.Authentification à deux facteurs (OTP)
Si l’utilisateur a activé l’OTP, incluez le champx-otp-code :
Grant Refresh Token
Échangez un refresh token valide contre un nouveau token d’accès sans vous réauthentifier :Grant Client Credentials (comptes de service)
REELEVANT_CLIENT_ID et REELEVANT_CLIENT_SECRET dans l’environnement de l’intégration. Conservez le secret hors du code source. Cet exemple garde le token d’accès en mémoire et en demande un nouveau 60 secondes avant son expiration.
Un administrateur crée le compte de service et son secret client ; consultez le guide des comptes de service.
Envoyez grant_type=client_credentials, client_id et client_secret au format JSON ou application/x-www-form-urlencoded. Vous pouvez aussi transmettre les identifiants dans un en-tête HTTP Basic :
Réponse :
refresh_token. Les tokens d’accès expirent après une heure ; demandez-en un nouveau avec les identifiants client lorsque nécessaire. Les réponses réussies incluent Cache-Control: no-store et Pragma: no-cache.
Deux secrets client au maximum peuvent être actifs simultanément, ce qui permet leur rotation. La révocation d’un secret révoque aussi les tokens d’accès émis avec celui-ci. La désactivation du compte de service bloque immédiatement les nouveaux grants et invalide ses tokens d’accès existants.
Utiliser les tokens d’accès
Incluez le token d’accès dans chaque requête à l’API via l’en-têteAuthorization :
Cycle de vie des tokens
Les refresh tokens utilisent une expiration glissante : la fenêtre de 30 jours est réinitialisée à chaque utilisation du refresh token. Si vous le rafraîchissez au moins une fois par mois, le token n’expire jamais.
Révoquer des tokens
Révoquez un token d’accès ou un refresh token :Provisionnement SCIM
Le provisionnement entrant utilise des tokens bearer propres à une entreprise, et non des tokens OAuth utilisateur. Voir Provisionnement SCIM 2.0.Authentification SSO
Les entreprises ayant configuré le SSO sont automatiquement redirigées vers leur fournisseur d’identité pendant le flux d’autorisation OAuth. Si le SSO est obligatoire pour l’entreprise, la connexion par mot de passe est désactivée (sauf pour les comptes de service).Gestion des erreurs
Un compte de service désactivé renvoie
UserDisabled.
Pages associées
Comptes de service
Créez des comptes de service et gérez leurs secrets client.
Authentification et SSO
Découvrez les options d’authentification et les modes d’intégration.