curl --request POST \
--url https://api.waaconnect.com/v1/sessions/{sessionId}/status/send \
--header 'Content-Type: application/json' \
--header 'x-api-key: <api-key>' \
--data '
{
"type": "text",
"text": "Offre réservée à nos clients VIP",
"statusJidList": [
"22997000000",
"22996000000",
"22995000000"
]
}
'{
"ok": true,
"accepted": true,
"validation": "payload_validated",
"deliveryState": "accepted_by_whatsapp_web",
"type": "text",
"target": "status@broadcast",
"recipientsCount": 128,
"statusJidList": [
"22997000000@s.whatsapp.net",
"..."
],
"audienceMode": "all_contacts",
"messageId": "3EB0B430B438B4F26B29"
}Statuts
Publier un statut
Publiez un statut WhatsApp (texte, image, vidéo, audio) immédiatement
POST
/
sessions
/
{sessionId}
/
status
/
send
curl --request POST \
--url https://api.waaconnect.com/v1/sessions/{sessionId}/status/send \
--header 'Content-Type: application/json' \
--header 'x-api-key: <api-key>' \
--data '
{
"type": "text",
"text": "Offre réservée à nos clients VIP",
"statusJidList": [
"22997000000",
"22996000000",
"22995000000"
]
}
'{
"ok": true,
"accepted": true,
"validation": "payload_validated",
"deliveryState": "accepted_by_whatsapp_web",
"type": "text",
"target": "status@broadcast",
"recipientsCount": 128,
"statusJidList": [
"22997000000@s.whatsapp.net",
"..."
],
"audienceMode": "all_contacts",
"messageId": "3EB0B430B438B4F26B29"
}Un statut WhatsApp est chiffré individuellement pour chaque destinataire —
contrairement à un message classique, il n’existe aucun moyen pour WhatsApp
de “deviner” qui doit le voir. Précisez toujours une audience via
statusJidList ou audience: "all_contacts". Si vous omettez les deux,
l’appel réussit quand même (200 OK) mais personne ne verra le statut.statusJidList est
prioritaire si les deux sont fournis) :
| Mode | Champ | Description |
|---|---|---|
| Personnalisée | statusJidList | Liste explicite de numéros. Votre propre numéro y est ajouté automatiquement. |
| Tout le monde | audience: "all_contacts" | Tous les contacts déjà synchronisés par cette session WhatsApp (voir l’exemple “Texte — tous les contacts” dans le panneau de droite) |
Juste après une connexion (nouveau QR code), la synchronisation du carnet
de contacts par WhatsApp peut prendre quelques secondes.
audience: "all_contacts" patiente alors jusqu’à 20 secondes avant de
répondre plutôt que d’échouer immédiatement — prévoyez un timeout client
suffisant pour cet appel.all_contacts
| Cas | Réponse |
|---|---|
| Aucun contact connu après les 20s d’attente | 400 — No known contacts in this session yet. Chat with contacts first or provide statusJidList explicitly. |
| Le seul contact connu est votre propre compte | 400 — all_contacts currently contains only your own account. Open chats with contacts first or provide statusJidList explicitly. |
| Aucun destinataire n’a de compte WhatsApp valide | 400 — None of the status recipients are valid WhatsApp accounts. Provide valid numbers in statusJidList. |
audienceMode dans la réponse indique le mode réellement utilisé :
explicit (statusJidList fourni), all_contacts, ou
account_default_privacy (ni l’un ni l’autre — le statut ne sera vu par
personne).Authorizations
Path Parameters
Body
application/json
Available options:
text, image, video, audio Requis si type=text
URL publique du média, requis si type != text
Légende (image/vidéo)
Couleur de fond hex, statuts texte uniquement
Example:
"#111B21"
Audience personnalisée : numéros qui verront le statut. Prioritaire sur audience. Votre propre numéro y est ajouté automatiquement.
Example:
["22997000000", "22996000000", "22995000000"]
Diffuse à tous les contacts déjà synchronisés par la session
Available options:
all_contacts Response
Statut accepté par WhatsApp Web
explicit=statusJidList fourni, all_contacts=audience all_contacts utilisé, account_default_privacy=aucun des deux (le statut ne sera vu par personne)
Available options:
explicit, all_contacts, account_default_privacy 
