# Authentification

> Index of the TerraLab docs for agents: [llms.txt](https://terra-lab.ai/docs/llms.txt). Every docs page is also served as markdown: add .md to its URL.

Chaque appel demande un compte TerraLab, sauf pour les deux documents publics : [`/v1/openapi.json`](https://mcp.terra-lab.ai/v1/openapi.json) et [`/v1/meta/pricing`](https://mcp.terra-lab.ai/v1/meta/pricing). Il y a deux façons de s'identifier : une clé API pour le code, OAuth 2.1 pour les agents.

## Clés API

Utilisez une clé pour les scripts, les back ends et les notebooks, bref tout ce qui ne peut pas ouvrir un navigateur pour se connecter.

1. Connectez-vous sur [terra-lab.ai/login](https://terra-lab.ai/fr/login).
2. Ouvrez [Tableau de bord, MCP](https://terra-lab.ai/fr/dashboard/mcp), puis **Advanced**, **API keys**.
3. Nommez la clé, acceptez les conditions de l'API et cliquez sur **Create key**.
4. Copiez-la tout de suite. Une clé commence par `tlk_`, suivi de 48 caractères hexadécimaux, et ne s'affiche qu'une seule fois : TerraLab conserve un hash, jamais la clé.

Envoyez-la dans l'en-tête `Authorization` :

```bash
curl https://mcp.terra-lab.ai/v1/me \
  -H "Authorization: Bearer $TERRALAB_API_KEY"
```

Les clés n'expirent pas, et un compte peut en garder jusqu'à 20 actives. Utilisez **Revoke** depuis la même page quand une clé fuite ou qu'un projet se termine : l'appel suivant avec cette clé répond `401`. Les appels faits avec une clé sont comptés sur le compte qui l'a créée.

Gardez les clés hors du contrôle de version, du code front-end et des captures d'écran. Lisez-les depuis une variable d'environnement ou un gestionnaire de secrets.

## OAuth 2.1 pour les agents

Les agents IA se connectent au lieu d'utiliser une clé. Quand un agent appelle `https://mcp.terra-lab.ai/mcp` pour la première fois sans token, le serveur répond `401` avec un en-tête `WWW-Authenticate` qui pointe vers ses métadonnées, et l'agent ouvre la connexion TerraLab dans votre navigateur. Vous approuvez une fois ; l'agent détient ensuite un token.

| Élément | Valeur |
| --- | --- |
| Métadonnées de la ressource protégée | `https://mcp.terra-lab.ai/.well-known/oauth-protected-resource` |
| Serveur d'autorisation | `https://terra-lab.ai` |
| Métadonnées du serveur | `https://terra-lab.ai/.well-known/oauth-authorization-server` |
| Grant | Code d'autorisation avec PKCE (`S256`), clients publics |
| Enregistrement du client | Enregistrement dynamique, ou document de métadonnées d'identifiant client |
| Scope | `data` |
| Durée de vie du token d'accès | 1 heure, renouvelé avec un refresh token valable 30 jours |

La plupart des agents gèrent tout cela eux-mêmes : vous collez seulement l'URL du serveur. Voir [Serveur MCP](https://terra-lab.ai/fr/docs/mcp).

Un token d'accès OAuth fonctionne aussi sur l'API REST, comme Bearer token dans le même en-tête.

## Déconnecter un agent

[Tableau de bord, MCP](https://terra-lab.ai/fr/dashboard/mcp) liste vos **Connected apps**. **Disconnect** révoque l'accès de cette application : son prochain appel répond `401` avec `access_revoked`.

Source: https://terra-lab.ai/fr/docs/authentication · Updated 2026-10-27
