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

# Autoriser

> Lancez le flux de code d’autorisation avec PKCE, l’octroi OAuth 2.0 recommandé pour les applications mobiles et les applications monopages.

export const ResponseSchema = ({statusCode, type = "{}", children}) => {
  const [open, setOpen] = useState(false);
  return <div className="border border-gray-100 dark:border-gray-800 rounded-lg mb-3 overflow-hidden">
      <div className={`flex items-center gap-2.5 px-4 py-2.5 cursor-pointer select-none ${open ? "bg-gray-50 dark:bg-gray-800" : ""}`} onClick={() => setOpen(!open)}>
        {statusCode && <span className="border border-gray-300 dark:border-gray-600 text-gray-700 dark:text-gray-300 font-mono text-xs px-1.5 py-0.5 rounded">
            {statusCode.startsWith("default") ? "default" : statusCode}
          </span>}
        <span className="text-gray-500 dark:text-gray-400 text-sm font-mono">
          {type}
        </span>
        <span className="text-gray-400 dark:text-gray-500 text-sm italic">
          application/json
        </span>
        <svg className={`ml-auto opacity-50 transition-transform duration-200 ${open ? "rotate-180" : ""}`} width="16" height="16" viewBox="0 0 16 16" fill="none">
          <path d="M4 6l4 4 4-4" stroke="currentColor" strokeWidth="1.5" strokeLinecap="round" strokeLinejoin="round" />
        </svg>
      </div>
      {open && <div className="px-4 pt-1 pb-3 border-t border-gray-100 dark:border-gray-800">
          {children}
        </div>}
    </div>;
};

<div id="endpoint">
  ## Point de terminaison
</div>

`GET /authorize`

Il s’agit de l’octroi OAuth 2.0 utilisé par les applications mobiles pour accéder à une API. Avant de commencer ce flux, vous devez générer et stocker un `code_verifier`, puis vous en servir pour générer un `code_challenge` qui sera envoyé avec la demande d’autorisation.

<div id="query-parameters">
  ## Paramètres de requête
</div>

<ParamField query="audience" type="string" required>
  L’identifiant unique de l’API cible à laquelle vous souhaitez accéder.
</ParamField>

<ParamField query="resource" type="string">
  L’identifiant de l’API cible (serveur de ressources) à laquelle vous souhaitez accéder. Il doit correspondre à un identifiant d’API enregistré dans votre locataire Auth0. Il est utilisé comme alternative à `audience` lorsque le [profil de compatibilité du paramètre de ressource](https://auth0.com/docs/get-started/tenant-settings#settings-advanced) du locataire est défini sur `compatibility`.
</ParamField>

<ParamField query="scope" type="string">
  Les scopes pour lesquels vous souhaitez demander une autorisation. Ils doivent être séparés par des espaces. Vous pouvez demander des scopes OpenID Connect (OIDC) standard, des claims personnalisées ou tout scope pris en charge par l’API cible. Incluez 'offline\_access' pour obtenir un Jeton d’actualisation.
</ParamField>

<ParamField query="response_type" type="string" required>
  Indique à Auth0 quel flux OAuth 2.0 vous souhaitez exécuter. Utilisez 'code' pour le flux d’octroi par code d’autorisation (PKCE).

  Valeurs autorisées : `code`
</ParamField>

<ParamField query="client_id" type="string" required>
  L’ID client de votre application.
</ParamField>

<ParamField query="state" type="string">
  Une valeur opaque que l’application ajoute à la requête initiale et qu’Auth0 inclut lors de la redirection vers l’application. Cette valeur doit être utilisée par l’application pour prévenir les attaques CSRF.
</ParamField>

<ParamField query="redirect_uri" type="string">
  L’URL vers laquelle Auth0 redirigera le navigateur une fois l’autorisation accordée par l’utilisateur.
</ParamField>

<ParamField query="code_challenge_method" type="string" required>
  Méthode utilisée pour générer le défi. Utilisez `S256`, car Auth0 ne prend en charge que cette méthode.

  Valeurs autorisées : `S256`
</ParamField>

<ParamField query="code_challenge" type="string" required>
  Défi généré à partir du `code_verifier`.
</ParamField>

<ParamField query="connection" type="string">
  Le nom de la connexion configurée pour votre application.
</ParamField>

<ParamField query="prompt" type="string">
  Pour lancer une requête d’authentification silencieuse, utilisez `prompt=none`.
</ParamField>

<ParamField query="organization" type="string">
  ID de l’organisation à utiliser lors de l’authentification d’un utilisateur.
</ParamField>

<ParamField query="invitation" type="string">
  ID du ticket d’invitation de l’organisation.
</ParamField>

<ParamField query="dpop_jkt" type="string">
  L’empreinte JWK [RFC7638](https://www.rfc-editor.org/rfc/rfc7638.html) de la clé publique de preuve de possession utilisant la fonction de hachage SHA-256.
</ParamField>

<div id="response-schema">
  ## Schéma de réponse
</div>

<ResponseSchema statusCode="default error">
  <ResponseField name="error" type="string">
    Code d’erreur.
  </ResponseField>

  <ResponseField name="error_description" type="string">
    Description de l’erreur.
  </ResponseField>
</ResponseSchema>

<div id="response-messages">
  ## Messages de réponse
</div>

| Statut  | Description                                                       |
| ------- | ----------------------------------------------------------------- |
| 302     | Redirection vers le `redirect_uri` spécifié après l’autorisation. |
| default | Erreur inattendue                                                 |
