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

# Authentification

> Authentifiez les requêtes à l’API Qwairy avec un jeton bearer rattaché à l’équipe.

Toutes les requêtes à l’API exigent un jeton bearer dans l’en-tête `Authorization`. Les jetons sont rattachés à votre équipe et donnent accès à toutes les marques de votre compte.

## Obtenir un jeton d’API

<Steps>
  <Step title="Ouvrez API REST">
    Ouvrez [Gestion de l’équipe > API REST](https://www.qwairy.co/dashboard/team/api).
  </Step>

  <Step title="Créez un nouveau jeton">
    Cliquez sur **Nouveau jeton d’API** et donnez-lui un nom explicite, comme `analytics-export`.
  </Step>

  <Step title="Copiez-le et conservez-le en lieu sûr">
    Votre jeton ne s’affiche **qu’une seule fois**. Copiez-le immédiatement et conservez-le en lieu sûr.
  </Step>
</Steps>

<Warning>
  Ne commitez jamais de jeton dans un gestionnaire de versions et ne l’exposez jamais dans du code côté client. Révoquez un jeton compromis depuis **Gestion de l’équipe > API REST**.
</Warning>

## Utiliser votre jeton

Incluez le jeton dans l’en-tête `Authorization` avec le préfixe `Bearer` :

```bash theme={null}
curl -X GET "https://www.qwairy.co/api/v1/brands" \
  -H "Authorization: Bearer qw-api-xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx"
```

### Format des jetons

Tous les jetons d’API Qwairy suivent ce format :

```
qw-api-[32 hexadecimal characters]
```

Exemple : `qw-api-a1b2c3d4e5f6789012345678abcdef01`

## Erreurs d’authentification

Les échecs d’authentification renvoient un HTTP `401` avec un corps plat. `error` est un court libellé de statut et `message` explique l’échec :

| Condition | `message` |
| - | - |
| En-tête `Authorization` absent ou mal formé (pas `Bearer <token>`) | `Missing or invalid Authorization header. Use: Authorization: Bearer qw-api-xxx` |
| Jeton invalide ou révoqué, ou offre inférieure à Growth | `Invalid API token or insufficient subscription plan (Growth+ required)` |

### Exemple de réponse d’erreur

```json theme={null}
{
  "error": "Unauthorized",
  "message": "Missing or invalid Authorization header. Use: Authorization: Bearer qw-api-xxx"
}
```

Consultez [Codes d’erreur](/fr/developers/errors) pour les formes d’erreur de passerelle et de ressource.

## Bonnes pratiques de sécurité

<CardGroup cols={2}>
  <Card title="Utilisez des variables d’environnement" icon="key">
    Stockez les jetons dans des variables d’environnement, pas dans le code.

    ```bash theme={null}
    export QWAIRY_API_TOKEN="qw-api-xxx"
    ```
  </Card>

  <Card title="Choisissez des noms explicites" icon="tag">
    Nommez les jetons selon leur usage pour les gérer facilement.
  </Card>

  <Card title="Révoquez les jetons inutilisés" icon="rotate">
    Supprimez les jetons qui ne servent plus à aucune intégration active.
  </Card>

  <Card title="Séparez les intégrations" icon="layer-group">
    Créez un jeton distinct pour chaque intégration.
  </Card>
</CardGroup>

## Gérer les jetons

Gérez les jetons d’API depuis [Gestion de l’équipe > API REST](https://www.qwairy.co/dashboard/team/api) :

* **Voir les jetons** : tous les jetons actifs avec leur date de dernière utilisation
* **Supprimer des jetons** : la suppression d’un jeton révoque l’accès immédiatement
* **Créer des jetons** : générez de nouveaux jetons selon vos besoins


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.