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

# Boutons interactifs

> Ajoutez des réponses rapides, des liens et des boutons d’appel à vos messages WhatsApp

Les boutons interactifs sont disponibles avec les messages `text`, `image`, `video` et `document`. Ils peuvent être utilisés avec l’envoi individuel, l’envoi par lot, les messages de groupe et les variations de campagnes.

<Warning>
  L’affichage des boutons dépend de la version et de la plateforme WhatsApp du destinataire. WaChap peut désactiver temporairement cette fonctionnalité en cas d’instabilité WhatsApp. Dans ce cas, le message principal est envoyé sans les boutons ni le pied de message.
</Warning>

## Structure

Ajoutez `buttons` et, facultativement, `footerText` au même niveau que le contenu du message :

```json theme={null}
{
  "buttons": [
    {
      "id": "confirm",
      "text": "Confirmer",
      "type": "reply"
    },
    {
      "id": "website",
      "text": "Voir le site",
      "type": "url",
      "url": "https://wachap.com"
    },
    {
      "id": "support",
      "text": "Nous appeler",
      "type": "call",
      "phoneNumber": "+2290100000000"
    }
  ],
  "footerText": "Choisissez une option"
}
```

## Types de boutons

| Type    | Champ supplémentaire | Description                                         |
| :------ | :------------------- | :-------------------------------------------------- |
| `reply` | Aucun                | Envoie une réponse rapide dans la conversation      |
| `url`   | `url`                | Ouvre une URL publique en `http://` ou `https://`   |
| `call`  | `phoneNumber`        | Propose d’appeler un numéro au format international |

## Contraintes

| Élément           | Limite                                                        |
| :---------------- | :------------------------------------------------------------ |
| Nombre de boutons | 1 à 3 par message                                             |
| Texte d’un bouton | 1 à 20 caractères                                             |
| Identifiant `id`  | Unique dans le message ; généré automatiquement s’il est omis |
| Pied `footerText` | 60 caractères maximum                                         |
| Numéro d’appel    | 6 à 15 chiffres, avec `+` international facultatif            |

Le message doit contenir du texte lorsqu’il comporte des boutons :

* `content` pour un message `text` ;
* `caption` pour une image, une vidéo ou un document.

Les boutons ne sont pas pris en charge pour `audio`, `location` et `contact`. Si `buttons` est vide ou omis, `footerText` est ignoré.

## Exemple complet

```bash theme={null}
curl -X POST https://api.wachap.com/v1/whatsapp/messages/send \
  -H "Authorization: Bearer token" \
  -H "Content-Type: application/json" \
  -d '{
    "data": {
      "accountId": "account_123",
      "to": "+2290100000000",
      "type": "text",
      "content": "Souhaitez-vous confirmer votre inscription ?",
      "buttons": [
        {"id": "yes", "text": "Oui", "type": "reply"},
        {"id": "help", "text": "Plus d’infos", "type": "url", "url": "https://wachap.com/aide"}
      ],
      "footerText": "WaChap"
    }
  }'
```
