Comment programmer des messages sur WhatsApp avec Python : le guide facile

7 janvier 2025

Dans ce tutoriel, vous apprendrez à programmer la livraison des messages en utilisant l’API.

Il existe deux façons de programmer l’envoi d’un message à une date et/ou heure ultérieure : en spécifiant le jour et l’heure exacts auxquels vous voulez qu’il soit envoyé, ou en indiquant combien de minutes, d’heures ou de jours vous souhaitez retarder l’envoi différé.

Si vous voulez envoyer des messages depuis du code, vous pouvez utiliser n’importe quel langage de programmation pour effectuer des requêtes HTTPS vers l’API. Ci‑dessous se trouve le testeur d’API en direct avec des exemples de code prêts à l’emploi dans plusieurs langages de programmation.

Prérequis

  • Avoir un numéro WhatsApp déjà lié à la plateforme et en ligne.
  • Le numéro de téléphone du destinataire avec l’indicatif international au format E164. Exemple : +393517224449. Vous pouvez valider le numéro de téléphone ici.

Point de terminaison de l’API

Dans ce tutoriel nous utiliserons le point de terminaison API suivant :

Préparer la requête

URL cible de l’API (POST)

https://api.wassenger.com/v1/messages

En-têtes HTTPS requis

Content-Type: application/json
Token: ENTER API KEY HERE

Envoyer un message à une date spécifique au format ISO8601

Exemple de corps de requête au format JSON

# Examples requires to have installed requests Python package. # Install it by running: pip install requests

import requests

url = "https://api.wassenger.com/v1/messages"

payload = { "phone": "+12345678909", "message": "This is a scheduled message to be sent to a phone number in 10 minutes", "deliverAt": "2025-01-07T11:50:41.608Z" } headers = { "Content-Type": "application/json", "Token": "API KEY GOES HERE" }

response = requests.post(url, json=payload, headers=headers)

print(response.json())

Vous pouvez aussi envoyer des messages programmés dans un groupe :

# Examples requires to have installed requests Python package.
# Install it by running: pip install requests
import requests
url = "https://api.wassenger.com/v1/messages"
payload = {
"group": "${group_ID@g.us}", 
"message": "This is a scheduled message to be sent tomorrow to a group chat.Date format is based on ISO 8601 format with default UTC time zone", 
"deliverAt": "2025-01-08T11:40:41.608Z"
}
headers = {
"Content-Type": "application/json", 
"Token": "API KEY GOES HERE"
}
response = requests.post(url, json=payload, headers=headers)
print(response.json())

Différer la livraison d’un message en minutes, heures ou jours

Exemple de corps de requête au format JSON

Des valeurs valides seraient par exemple : 1m = dans 1 minute, 2h = dans 2 heures, 15d = dans 15 jours.

Les valeurs doivent être des nombres entiers, donc si vous devez programmer un message pour 1,5 heure par exemple, vous devez spécifier 90m = dans 90 minutes

# Examples requires to have installed requests Python package.
# Install it by running: pip install requests
import requests
url = "https://api.wassenger.com/v1/messages"
payload = {
"group": "${group_ID@g.us}", 
"message": "This is a scheduled message to be sent tomorrow to a group chat.Date format is based on ISO 8601 format with default UTC time zone", 
"schedule": { "delayTo": "1h" }
}
headers = {
"Content-Type": "application/json", 
"Token": "API KEY GOES HERE"
}
response = requests.post(url, json=payload, headers=headers)
print(response.json())

En alternative, vous pouvez retarder la livraison du message d’un certain nombre de secondes :

# Examples requires to have installed requests Python package.
# Install it by running: pip install requests
import requests
url = "https://api.wassenger.com/v1/messages"
payload = {
"group": "${group_ID@g.us}", 
"message": "This is a scheduled message to be sent tomorrow to a group chat.Date format is based on ISO 8601 format with default UTC time zone", 
"schedule": { "delayTo": "180" }
}
headers = {
"Content-Type": "application/json", 
"Token": "API KEY GOES HERE"
}
response = requests.post(url, json=payload, headers=headers)
print(response.json())

Test en direct de l’API

Vous pouvez maintenant jouer, déboguer et tester l’API en direct directement depuis votre navigateur, explorer et essayer plus d’exemples d’API et obtenir en un clic des extraits de code prêts à l’emploi disponibles dans plus de 15 langages de programmation 😎

Essayez le testeur API en direct de Wassenger

Des questions ? Veuillez consulter les questions fréquemment posées ci‑dessous.

FAQ

Comment envoyer des messages à plusieurs numéros de téléphone

Vous devez simplement envoyer plusieurs requêtes API, une par numéro de téléphone cible.

Par exemple, si vous voulez envoyer un message à 10 numéros de téléphone, vous devez envoyer 10 requêtes HTTPS indépendantes à l’API.

Il n’existe pas d’option permettant d’envoyer plusieurs messages dans une seule requête API.

Quels types de messages peuvent être envoyés ?

Vous pouvez envoyer différents types de messages, y compris du texte, des images, des vidéos, des emojis, de l’audio, des gifs, des emplacements géographiques et des documents via l’API.

Consultez d’autres tutoriels pour plus d’informations.

Comment valider si un numéro de téléphone peut recevoir des messages WhatsApp

Vous pouvez valider si un numéro de téléphone donné est lié à un compte WhatsApp et peut recevoir des messages.

L’API fournit un point de terminaison qui peut valider si un numéro de téléphone donné existe sur WhatsApp ou non.

La seule exigence est d’avoir au moins un numéro WhatsApp connecté à la plateforme dans votre compte actuel.

Pour plus de détails, veuillez consulter la documentation du point de terminaison API ici.

Avant de vérifier si un numéro de téléphone existe sur WhatsApp, vous pouvez aussi valider et normaliser le format d’une liste de numéros de téléphone en utilisant le point de terminaison de validation de numéros. Ce point de terminaison ne valide que le bon format E164, mais il ne vérifie pas si le numéro de téléphone existe effectivement sur WhatsApp ou non.

Note : le nombre de vérifications WhatsApp est limité par mois en fonction de votre plan d’abonnement. Veuillez consulter le tableau des tarifs pour plus de détails sur les limites.

Vous cherchez plus de réponses ? Consultez la FAQ étendue.

Ressources complémentaires utiles

Documentation de l’API

Pour plus de détails sur le point de terminaison de l’API, veuillez consulter le document où vous trouverez tous les détails sur les paramètres de requête acceptés, les réponses de succès ou d’erreur possibles et des exemples de code prêts à l’emploi dans plusieurs langages de programmation.

https://app.wassenger.com/docs/#tag/Messages

Ready to transform your WhatsApp communication?

Start automating your customer interactions today with Wassenger

Get Started Free