x-api-key.
Vue d’ensemble
WaaConnect vous permet de gérer un carnet d’adresses attaché à votre compte, indépendamment des sessions WhatsApp.Contacts
Lister les contacts
GET /v1/contacts
Page (défaut :
1)Nombre max (défaut :
50, max : 200)Filtrer par tag exact (ex :
vip)Recherche dans nom, JID, téléphone, email
Réponse 200
Récupérer un contact
GET /v1/contacts/:jid
Accepte le JID complet (22997000000@s.whatsapp.net) ou le numéro seul (22997000000).
cURL
Créer / mettre à jour un contact
POST /v1/contacts
Crée ou met à jour un contact (upsert par JID). Fournissez jid ou phone (l’un des deux est obligatoire).
Numéro sans
+ — converti en JID automatiquementJID complet (
22997000000@s.whatsapp.net)Nom affiché
Adresse email
Liste de tags libres (ex :
["vip", "client"])Variables de personnalisation (ex :
{"commande": "CMD-001", "ville": "Cotonou"})Import en masse (bulk)
POST /v1/contacts/bulk
Crée ou met à jour jusqu’à 500 contacts en une seule requête.
Tableau de contacts (même structure que
POST /v1/contacts)Réponse 200
Modifier un contact
PATCH /v1/contacts/:jid
Supprimer un contact
DELETE /v1/contacts/:jid
cURL
Réponse 200
Tags
Les tags sont des étiquettes libres posées directement sur chaque contact. Un contact peut en avoir plusieurs.| Usage | Description |
|---|---|
| Filtrage | GET /v1/contacts?tag=vip |
| Envoi en masse | POST /v1/sessions/:id/bulk/tag/:tag |
| Segmentation rapide | Organiser sans créer de groupe |
Tag vs Groupe — Le tag est une étiquette sur le contact (modifiable via
PATCH /contacts/:jid). Le groupe est une liste séparée avec un nom. Un contact peut appartenir à plusieurs groupes simultanément.Groupes de contacts
Lister les groupes
GET /v1/contacts/groups
cURL
Réponse 200
Créer un groupe
POST /v1/contacts/groups
Nom unique du groupe
Description
Couleur hex (ex :
#20b24b)Ajouter des contacts à un groupe
POST /v1/contacts/groups/:groupId/members
Ajoute des contacts par leur JID ou numéro. Un contact peut être dans plusieurs groupes simultanément — l’ajout ici ne le retire pas des autres groupes.
Liste de JIDs ou numéros de téléphone
Réponse 200
Retirer un contact d’un groupe
DELETE /v1/contacts/groups/:groupId/members/:jid
Le contact n’est pas supprimé de votre carnet, uniquement retiré de ce groupe.
cURL
Réponse 200
Envoi en masse
Par groupe
POST /v1/sessions/:sessionId/bulk/contact-group/:groupId
Envoie un message à tous les membres du groupe. La session doit être connectée.
UUID de la session WhatsApp
ID du groupe de contacts
Texte du message. Supporte
{name}, {phone} et toute variable contact.Délai en ms entre chaque envoi (recommandé : 2000–3000)
Réponse 200
Par tag
POST /v1/sessions/:sessionId/bulk/tag/:tag
Envoie un message à tous les contacts portant un tag spécifique.
UUID de la session WhatsApp
Tag exact à cibler (sensible à la casse)
Texte du message. Supporte
{name}, {phone} et toute variable contact.Délai en ms entre chaque envoi (recommandé : 2000–3000)
Réponse 200
Groupe vs Tag — Pour l’envoi par groupe, l’ID du groupe est dans l’URL (
.../bulk/contact-group/:groupId). Pour l’envoi par tag, le tag est dans l’URL (.../bulk/tag/:tag). Les deux acceptent message et delayMs dans le corps.Variables de personnalisation
Les templates supportent des variables entre accolades simples :| Variable | Remplacement |
|---|---|
{name} | Nom du contact (numéro si non renseigné) |
{phone} | Numéro sans @s.whatsapp.net |
{clé} | Valeur de variables.clé du contact |
name: "Aicha" et variables: { commande: "CMD-001", ville: "Cotonou" } :

