> ## Documentation Index
> Fetch the complete documentation index at: https://docs-dev-actions-triggers-prototype.mintlify.site/llms.txt
> Use this file to discover all available pages before exploring further.

# Flux de connexion Back-channel - Vérification de l’état

> Pour vérifier l’état d’un flux de connexion Back-channel, interrogez le point de terminaison `/oauth/token` à intervalles réguliers en passant ce qui suit :

`POST /oauth/token`

Pour vérifier l’état d’un flux de connexion Back-channel, interrogez le point de terminaison `/oauth/token` à intervalles réguliers en passant ce qui suit :

* `auth_req_id` renvoyé de l’appel à `/bc-authorize`
* type d’autorisation `urn:openid:params:grant-type:ciba`

### Corps de la réponse

Si l’utilisateur autorisant n’a pas encore approuvé ou rejeté la demande, vous devriez recevoir une réponse semblable à celle-ci :

```
{
  "error": "authorization_pending",
  "error_description": "The end-user authorization is pending"
}
```

Si l’utilisateur autorisant rejette la demande, vous devriez recevoir une réponse semblable à celle-ci :

```
{
  "error": "access_denied",
  "error_description": "The end-user denied the authorization request or it has been expired"
}
```

Si vous interrogez trop rapidement (plus vite que la valeur d’intervalle renvoyée par `/bc-authorize`), vous devriez recevoir une réponse semblable à celle-ci :

```
{
  "error": "slow_down",
  "error_description": "You are polling faster than allowed. Try again in 10 seconds."
}
```

En outre, Auth0 ajoutera l’en-tête [Retry-After](https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Retry-After) à la réponse indiquant le nombre de secondes à attendre avant de tenter à nouveau d’interroger. Si vous interrogez régulièrement trop souvent, le nombre de secondes que vous devez attendre augmente.

Si l’utilisateur autorisant a approuvé la notification poussée, l’appel renvoie le jeton d’identification et le jeton d’accès (et éventuellement un jeton d’actualisation) :

```
{
  "access_token": "eyJh...",
  "id_token": "eyJh...",
  "expires_in": 86400,
  "scope": "openid"
}
```

Une fois que vous avez échangé un `auth_req_id` contre un identifiant ou un jeton d’accès, il n’est plus utilisable.

### Remarques

Inclure un paramètre facultatif pour l’authentification de l’application dans la demande :

* Secret client avec HTTP Basic Auth, auquel cas aucun paramètre n’est requis. `client_id` et `client_secret` sont transmis dans un en-tête.
* Post secret client, auquel cas `client_id` et `client_secret` sont requis.
* Jeton JWT de clé privée, où le type `client_id`, `client_assertion` et `client_assertion` sont requis.
* mTLS, où le paramètre `client_id` est requis, tout comme les en-têtes `client-certificate` et `client-certificate-ca-verified`.

## Parameters

<ParamField query="client_id" type="string" required>
  `client_id` de votre application.
</ParamField>

<ParamField query="auth_req_id" type="string" required>
  Le `auth_req_id` renvoyé du point de terminaison `/bc-authorize`.
</ParamField>

<ParamField query="grant_type" type="string" required>
  Doit être réglé sur `urn:openid:params:grant-type:ciba`.
</ParamField>

## Response

| Status | Description                                 |
| ------ | ------------------------------------------- |
| 200    | Statut d’authentification renvoyé.          |
| 400    | Demande incorrecte - Paramètres non valides |
| 500    | Erreur de serveur interne                   |
