# Mots-clés

> Endpoint API pour la gestion des mots-clés du projet. Les mots-clés ne sont pas les prompts des audits.

# Gestion des Mots-clés

:::warning Les mots-clés ne sont pas les prompts d'audit
Un mot-clé est un terme court (100 caractères maximum) qui décrit le sujet du site. Les audits GEO ne s'exécutent **pas** sur les mots-clés : ils posent aux moteurs IA les **prompts** actifs du projet, c'est-à-dire des questions complètes rangées par thème. Si vous envoyez vos questions d'audit à cet endpoint, elles seront stockées comme des mots-clés et aucun audit ne les posera. Les prompts se créent dans le dashboard ou avec les outils MCP `create_prompts` et `import_prompts` (voir [Piloter CiteMe depuis un agent IA](../agents)).
:::

---

## `GET /projects/:id/keywords`

Liste les mots-clés du projet, du plus récent au plus ancien.

**Réponse (200 OK) :**

```json
{
  "data": [
    {
      "id": "7c1f5e0a-0000-0000-0000-000000000000",
      "keyword": "geo saas",
      "source": "manual",
      "created_at": "2026-01-10T09:00:00Z"
    }
  ]
}
```

---

## `POST /projects/:id/keywords`

Ajoute **un seul** mot-clé par appel. Il n'existe pas de format par lot : pour plusieurs mots-clés, faites un appel par mot-clé.

Exige une clé avec le scope `write`.

**Corps de la requête :**

```json
{ "keyword": "geo saas" }
```

Le mot-clé est normalisé (espaces retirés, minuscules). Il ne peut pas être vide ni dépasser 100 caractères, et le nombre de mots-clés est limité par votre forfait.

**Réponses :**

| Statut | Cas |
|--------|-----|
| `201 Created` | Mot-clé ajouté, renvoyé dans `data` |
| `400` | JSON invalide, `keyword` absent, mot-clé vide ou trop long, mot-clé déjà présent, limite du forfait atteinte |
| `403` | Clé sans scope `write` |
| `404` | Projet introuvable dans votre organisation |

---

**[Codes d'erreur →](./errors)**
