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

# Concepts fondamentaux

> Intégrations, identifiants d'utilisateurs finaux, conteneurs par source, cloisonnement opaque et trois modes de récupération : recherche, rappel et suggestions.

## Intégration

La frontière durable entre votre produit et Conare. Une intégration est détenue par votre organisation ; les étapes de déploiement distinctes (staging, prod) sont des intégrations séparées, désambiguïsées par un slug. Chacune possède sa propre clé `cint_...` avec des portées explicites (`memory:read`, `memory:write`, `memory:delete`).

## Utilisateurs finaux

Chaque appel de mémoire nomme un `endUserId` (1–128 caractères, `A-Za-z0-9@._-`) — votre identifiant pour votre utilisateur. Ce n'est **pas** un namespace : le tenant physique est un HMAC opaque dérivé de votre intégration et de l'identifiant d'utilisateur final. Par construction, les clients ne peuvent pas sélectionner de namespace ni adresser un autre tenant.

* Définissez l'identité d'affichage avec `PUT /api/v1/users/{endUserId}` (nom/email pour vos vues de tableau de bord).
* `DELETE /api/v1/users/{endUserId}` est un effacement RGPD complet de cet utilisateur.

## Conteneurs

Les conteneurs regroupent les mémoires d'un utilisateur par source — par exemple `profile`, `claude-chats`, `saved`, ou un par source de données connectée (étiquette de conteneur = id du connecteur). Utilisez `containerTag` à l'enregistrement pour organiser, et `DELETE /api/v1/containers/{containerTag}` pour supprimer les mémoires d'une source sans toucher au reste.

## Modes de récupération

| Mode              | Endpoint                   | Latence         | Ce que vous obtenez                                                                                                  |
| ----------------- | -------------------------- | --------------- | -------------------------------------------------------------------------------------------------------------------- |
| Recherche         | `POST /api/v1/search`      | sous la seconde | Correspondances brutes classées (vecteur + BM25, fusionnées par RRF, rerankées). Sans LLM.                           |
| Rappel approfondi | `POST /api/v1/recall`      | \~3–6s          | Réponse synthétisée étayée par des citations, sous forme de texte injectable dans un prompt.                         |
| Suggestions       | `POST /api/v1/suggestions` | \~3–6s          | Jusqu'à 5 actions concrètes suivantes, chacune ancrée dans une mémoire précise. `[]` pour les nouveaux utilisateurs. |

## Erreurs et observabilité

Les erreurs utilisent une enveloppe stable — `{ statusCode, code, message, requestId, details? }` — et ne divulguent jamais d'identifiants de tenant internes ni de texte backend. Chaque réponse inclut `X-Request-Id` ; envoyez le vôtre pour corréler de bout en bout. Les limites de taux sont signalées par les en-têtes standard et `429` ; les plans à registre d'usage signalent un quota épuisé avec `402` accompagné de métadonnées de solde/réinitialisation.
