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

# WhatsApp

> Texte, modèle ou média, depuis votre numéro WhatsApp Business.

> [!NOTE]
>
> Le canal WhatsApp ouvre progressivement. La page **Canaux** du dashboard indique s’il est ouvert pour votre organisation.

## Relier un numéro

Dans le dashboard, **Canaux › Numéros WhatsApp** : reliez votre compte WhatsApp Business. Le numéro relié a un identifiant, l’`accountId`, que chaque envoi cite. La liaison se fait par un membre, jamais par clé API.

## Envoyer

`kind` choisit la forme du message :

```json Texte theme={null}
{
  "kind": "text",
  "accountId": "6750…",
  "to": "77 123 45 67",
  "body": "Bonjour Awa, votre commande 48213 est prête."
}
```

```json Modèle theme={null}
{
  "kind": "template",
  "accountId": "6750…",
  "to": "77 123 45 67",
  "name": "commande_prete",
  "language": "fr",
  "variables": ["Awa", "48213"]
}
```

```json Média theme={null}
{
  "kind": "media",
  "accountId": "6750…",
  "to": "77 123 45 67",
  "media": "document",
  "url": "https://votremarque.sn/factures/48213.pdf",
  "fileName": "facture-48213.pdf",
  "body": "Votre facture"
}
```

```bash theme={null}
curl -X POST https://api.dexnotify.com/api/v1/whatsapp/messages \
  -H "x-api-key: $DEXNOTIFY_CLE" -H "content-type: application/json" \
  -d '{"kind":"template","accountId":"6750…","to":"77 123 45 67","name":"commande_prete","language":"fr","variables":["Awa","48213"]}'
```

| Forme | Règles |
| - | - |
| `text` | 4 096 caractères au plus. |
| `template` | Le nom du modèle **approuvé chez Meta** (minuscules, chiffres, tirets bas) et sa langue (`fr`, `en_US`…). Les variables remplacent `{{1}}`, `{{2}}`… dans l’ordre. |
| `media` | `image`, `video`, `audio` ou `document`, servi en **HTTPS** ; légende facultative. |

> [!WARNING]
>
> WhatsApp n’autorise un message libre (`text`, `media`) que dans les 24 heures qui suivent le dernier message du client. Pour le contacter en premier, utilisez un **modèle** approuvé.

## Suivre

`GET /api/v1/whatsapp/messages/{id}` rend l’envoi et son statut ; `GET /api/v1/whatsapp/messages` l’historique du projet.

Portées : `whatsapp:send`, `whatsapp:read`.


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.