[Index de la documentation](https://prescriptio.fr/docs/llms.txt)

# Prévisualiser un message

L'opération REST email.messages.preview de Prescriptio sert à composer un aperçu personnalisé HTML et texte sans envoi ni suivi actif.

### Exemple d'appel, synthétique

**curl**

```bash
curl -sS https://prescriptio.fr/api/mcp/v1/email.messages.preview \
  -H 'Authorization: Bearer <jeton>' \
  -H 'Content-Type: application/json' \
  -d '{"campagne_id":"00000000-0000-0000-0000-000000000001","personnalisation":{"prenom":"Marie"},"variante_id":"00000000-0000-0000-0000-000000000002"}'
```

**Corps JSON**

```json
{
  "campagne_id": "00000000-0000-0000-0000-000000000001",
  "personnalisation": {
    "prenom": "Marie"
  },
  "variante_id": "00000000-0000-0000-0000-000000000002"
}
```

### Forme de la réponse, générée depuis le schéma

```json
{
  "action": "<message_apercu>",
  "fields": {
    "html": "<texte>",
    "objet": "<texte>",
    "texte": "<texte>"
  },
  "note": "<texte>",
  "ok": null,
  "url": "<texte>"
}
```

## Paramètres du corps

| Nom | Type | Requis | Description |
|---|---|---|---|
| `campagne_id` | texte | oui | UUID de la campagne. Requis partout sauf lister, creer, stats (global), desinscrits, expediteur et quota. |
| `personnalisation` | objet | — | message_apercu : valeurs du contact d'exemple. bdd_publipostage_modifier : colonnes du contact de Ma base (prenom, nom, entreprise, ville, fonction, ou une colonne libre comme marque) ; une valeur vide efface. |
| `personnalisation.fonction` | texte | — | (max. 200 caractères) |
| `personnalisation.nom` | texte | — | (max. 200 caractères) |
| `personnalisation.prenom` | texte | — | (max. 200 caractères) |
| `personnalisation.societe` | texte | — | (max. 200 caractères) |
| `personnalisation.ville` | texte | — | (max. 200 caractères) |
| `variante_id` | texte | oui | variante : UUID d'une variante existante a reecrire. objet, tester, destinataire : le message vise (absent : le premier, ou celui du destinataire). |

## En bref

| | |
|---|---|
| Adresse | `POST /api/mcp/v1/email.messages.preview` |
| Contrat | 3.0.0 |
| Portée OAuth | `mcp:read` |
| Conditions d’accès | Chaque action conserve ses droits, ses conditions d’offre et ses quotas ; sa présence dans le catalogue ne les lève pas. |
| Outil MCP | [`campagne_email`](https://prescriptio.fr/docs/api/campagne_email) : même traitement |

## Erreurs et quotas

Cet outil ne consomme aucune unité de dossier : chercher est gratuit, c'est la lecture d'un dossier (`marches_dce`, `mairies_deliberations` et leurs téléchargements) qui est décomptée.

Les codes HTTP, le corps d’erreur et les compteurs d’appels et de dossiers sont communs. Chaque action conserve aussi ses droits et plafonds métier : [Codes d'erreur](https://prescriptio.fr/docs/reference/erreurs) et [Authentification et quotas](https://prescriptio.fr/docs/reference/authentification#les-quotas).

## Les pages qui s'en servent

Calculé depuis la documentation : chaque page qui cite `email.messages.preview`.

- [Campagnes e-mail de bout en bout](https://prescriptio.fr/docs/guides/campagnes-email) : Guides, Parcours complets

## Voir aussi

- [Référence API](https://prescriptio.fr/docs/reference) : L'adresse, l'authentification et les codes de réponse
- [campagne_email](https://prescriptio.fr/docs/api/campagne_email) : La même action par le connecteur MCP
- [OpenAPI](https://prescriptio.fr/openapi.json) : Le schéma machine de toutes les opérations
