WhatsApp API — Envoyez des messages par programmation

Une API WhatsApp complète pour envoyer du texte et des médias et gérer les conversations via une interface REST simple. Pas de Puppeteer, pas de navigateur headless — pure WebSocket.

Démarrage rapide

Envoyez votre premier message WhatsApp en moins d'une minute. Créez un compte, connectez votre numéro et appelez l'API :

curl -X POST https://api2whats.com/send-text \
  -H "Authorization: Bearer ***" \
  -H "Content-Type: application/json" \
  -d '{"to": "971501234567", "message": "Hello from the API!"}'

C'est tout. Une requête. Une réponse. Aucun SDK requis.

Qu'est-ce qu'une API WhatsApp ?

Une API WhatsApp vous permet d'envoyer et de recevoir des messages WhatsApp depuis votre propre logiciel. Au lieu d'ouvrir l'application WhatsApp sur un téléphone et de taper les messages manuellement, votre code envoie des requêtes HTTP à un point de terminaison API. L'API gère la connexion aux serveurs WhatsApp, la livraison des messages, le suivi des statuts et le transfert des messages entrants.

C'est utile pour toute entreprise qui doit communiquer avec ses clients à grande échelle. Confirmations de commande, mises à jour d'expédition, rappels de rendez-vous, réponses du service client, campagnes marketing — tout cela peut être automatisé via une API WhatsApp. Les messages apparaissent dans la même conversation WhatsApp que les clients utilisent déjà, ce qui signifie qu'ils les lisent réellement. Les taux d'ouverture des messages WhatsApp dépassent généralement 90 %, contre 20 % pour l'e-mail.

Le concept est simple : votre application envoie une requête HTTP au serveur API, le serveur API délivre le message au destinataire via WhatsApp, et vous recevez une réponse confirmant la livraison. Pour les messages entrants, l'API les transmet à votre URL de webhook en temps réel afin que votre système puisse les traiter immédiatement.

Comment fonctionne notre API WhatsApp

Notre API est construite sur le protocole WhatsApp Web avec des connexions WebSocket directes. C'est fondamentalement différent des solutions qui utilisent Puppeteer ou des navigateurs headless pour automatiser une interface web. WebSocket direct signifie une latence plus faible, une utilisation des ressources réduite et une fiabilité nettement supérieure.

Chaque instance que vous créez maintient une connexion WebSocket authentifiée vers les serveurs WhatsApp. Lorsque vous envoyez un message via l'API, il passe directement par cette connexion WebSocket. Pas de surcharge de rendu de navigateur, pas d'analyse de captures d'écran, pas de manipulation DOM fragile. La connexion est persistante et gère automatiquement la reconnexion.

Nous exploitons également un pool de proxys SOCKS5 distribué sur plusieurs régions. Cela sert deux objectifs : garantir une connectivité fiable quel que soit l'emplacement de vos serveurs et répartir les connexions sur plusieurs adresses IP pour éviter les limitations de débit. Chaque instance se connecte via un proxy différent, de sorte que même si vous exécutez dix instances simultanément, chacune dispose de son propre chemin de connexion propre.

Ce que vous pouvez faire avec l'API

Envoyer des messages texte

Le cas d'usage le plus simple : envoyer un message texte à n'importe quel numéro WhatsApp. Les messages prennent en charge Unicode, vous pouvez donc envoyer du texte dans n'importe quelle langue, y compris l'arabe, l'hindi, le chinois et les emoji. Chaque message est livré individuellement avec un suivi complet du statut de livraison.

Envoyer des médias

Allez au-delà du texte. Envoyez des images, vidéos, documents, fichiers audio et stickers. Les médias peuvent être fournis sous forme d'URL (l'API les récupère et les délivre) ou de données encodées en Base64 pour un envoi en ligne. Les documents peuvent être des PDF, des fichiers Word, des tableurs — tout type de fichier pris en charge par WhatsApp.

Recevoir des messages via des webhooks

Lorsque quelqu'un envoie un message à votre numéro connecté, l'API le transmet à votre URL de webhook sous forme de requête POST. Vous obtenez le numéro de l'expéditeur, le contenu du message, les éventuelles pièces jointes et l'horodatage. Votre gestionnaire de webhook traite le message et peut déclencher toute réponse ou workflow automatisé.

Gérer plusieurs numéros

Chaque forfait prend en charge plusieurs instances, ce qui signifie que vous pouvez connecter plusieurs numéros WhatsApp et tous les gérer depuis un seul tableau de bord. Basculez entre les numéros via l'API en spécifiant l'identifiant d'instance dans votre requête. C'est utile pour les entreprises opérant dans plusieurs régions ou plusieurs marques.

Suivre le statut des messages

Chaque message envoyé reçoit un identifiant unique. Vous pouvez consulter le statut de n'importe quel message — en attente, envoyé, livré ou lu. Les webhooks poussent également les mises à jour de statut en temps réel, votre système sait donc dès qu'un message est livré ou lu, sans interrogation continue.

Points de terminaison API

L'API suit une conception REST épurée. Tous les points de terminaison acceptent et renvoient du JSON. Voici les principaux points de terminaison :

  • POST /send-text — Envoyer un message texte
  • POST /send-image — Envoyer une image
  • POST /send-video — Envoyer une vidéo
  • POST /send-document — Envoyer un document ou un fichier
  • POST /send-audio — Envoyer un fichier audio
  • POST /send-location — Envoyer un point de localisation
  • GET /message-status/{id} — Vérifier le statut de livraison
  • POST /set-webhook — Configurer votre URL de webhook
  • GET /instance/status — Vérifier le statut de connexion

Chaque point de terminaison nécessite une clé API transmise dans l'en-tête Authorization. Les limites de débit sont appliquées par forfait et l'API renvoie des messages d'erreur clairs avec des codes de statut HTTP en cas de problème.

Méthodes de connexion

Connecter un numéro de téléphone à l'API est simple. Nous prenons en charge deux méthodes :

Connexion par code QR

Scannez un code QR depuis votre tableau de bord avec l'application WhatsApp sur votre téléphone. C'est la méthode la plus rapide — environ 10 secondes. Le code QR s'actualise automatiquement si vous ne le scannez pas à temps. Une fois scanné, la connexion est établie et l'instance reste en ligne jusqu'à ce que vous la déconnectiez.

Connexion par code de jumelage

Saisissez un code de jumelage numérique sur votre téléphone au lieu de scanner un code QR. C'est utile lorsque vous ne pouvez pas scanner un code QR — par exemple pour connecter un numéro sur un serveur distant. Le code de jumelage est généré par l'API et expire après quelques minutes.

Langages de programmation pris en charge

L'API est indépendante du langage. Tout langage capable d'envoyer des requêtes HTTP peut l'utiliser. Nous fournissons des exemples de code prêts à l'emploi pour :

  • PHP — Avec cURL ou Guzzle
  • Python — Avec la bibliothèque requests
  • JavaScript — Avec fetch ou axios (Node.js et navigateur)
  • cURL — Utilisation directe en ligne de commande
  • Go — Avec net/http
  • Java — Avec HttpURLConnection ou OkHttp

Si votre langage peut envoyer une requête HTTP POST avec un corps JSON, vous pouvez utiliser cette API. Aucune installation de SDK requise.

Flux de livraison des messages

Comprendre le parcours des messages dans le système vous aide à construire de meilleures intégrations. Lorsque vous envoyez un message, voici ce qui se passe étape par étape :

  1. Votre application envoie une requête HTTP à l'API avec votre clé API et les données du message
  2. L'API valide votre requête : vérifie la clé API, contrôle le format du numéro de téléphone et confirme que l'instance est connectée
  3. Le message est mis en file d'attente pour livraison via la connexion WebSocket de l'instance appropriée
  4. Le message est transmis aux serveurs WhatsApp via la connexion WebSocket persistante
  5. WhatsApp délivre le message au téléphone du destinataire
  6. L'API reçoit une confirmation de livraison de WhatsApp et met à jour le statut du message
  7. Si un webhook est configuré, la mise à jour de statut est transmise à votre serveur

L'ensemble du flux, de votre requête à la confirmation de livraison, prend généralement 1 à 3 secondes. Les mises à jour de statut (livré, lu) peuvent prendre plus de temps selon la connexion du destinataire et le moment où il ouvre le message.

Gestion des instances

Chaque numéro WhatsApp que vous connectez est appelé une « instance ». Vous pouvez gérer plusieurs instances depuis un seul tableau de bord et basculer entre elles via l'API en spécifiant l'identifiant d'instance. Chaque instance possède son propre :

  • API key — Jeton d'authentification unique
  • Connection status — Statut — connectée, déconnectée ou en reconnexion
  • Phone number — Numéro WhatsApp associé à l'instance
  • Webhook URL — Destination de transfert des messages entrants
  • Message history — Journal des messages envoyés et reçus

Les instances peuvent être créées, déconnectées et supprimées depuis le tableau de bord ou via l'API. Lorsque vous déconnectez une instance, la session WhatsApp est terminée mais vous pouvez vous reconnecter à tout moment sans perdre vos données.

Fiabilité et disponibilité

Nous maintenons un SLA de disponibilité de 99,9 % sur tous les forfaits. Notre infrastructure est conçue pour la fiabilité :

  • Automatic reconnection — Si une connexion WebSocket tombe, l'API se reconnecte automatiquement en quelques secondes
  • Proxy failover — Si un serveur proxy rencontre des problèmes, le trafic est acheminé via un autre du pool
  • Message queuing — Si la connexion WhatsApp est temporairement indisponible, les messages sont mis en file d'attente et livrés dès le rétablissement de la connexion
  • Health monitoring — Nous surveillons toutes les instances 24h/24 et 7j/7 et traitons proactivement les problèmes avant qu'ils n'affectent la livraison

L'API ne renvoie une erreur 503 Service Unavailable que lorsque tous les chemins de connexion sont épuisés, ce qui est extrêmement rare. En pratique, vos messages seront livrés même si des composants individuels connaissent de brèves interruptions.

Sécurité et confidentialité

Toute la communication API est chiffrée via HTTPS. Les clés API sont stockées de manière sécurisée avec un hachage bcrypt — nous ne les stockons jamais en clair. Vos URL de webhook sont validées et toutes les charges utiles des webhooks sont signées afin que vous puissiez vérifier qu'elles proviennent bien de nos serveurs.

Nous n'avons pas accès au contenu de vos messages, sauf si vous le transmettez explicitement via des webhooks. Les messages entre vous et vos clients restent privés. La connexion WhatsApp utilise le chiffrement de bout en bout pour la couche de transport des messages.

Tarifs

Les forfaits commencent à 9,99 $ par mois et incluent un certain nombre de requêtes API par jour, des instances et des fonctionnalités. Aucun frais caché, aucun frais par message, aucune surprise de dépassement. Vous pouvez passer à un forfait supérieur ou inférieur à tout moment depuis votre tableau de bord.

Nous acceptons les cryptomonnaies et les cartes bancaires. Le traitement des paiements est géré via des passerelles sécurisées et vos informations de paiement ne sont jamais stockées sur nos serveurs.

Cas d'usage

Notre API WhatsApp est utilisée dans un large éventail de secteurs et d'applications. Voici quelques-uns des cas d'usage les plus courants que nos clients créent :

  • E-commerce — Confirmations de commande, mises à jour d'expédition, notifications de livraison, statuts de retour et rappels de paniers abandonnés
  • Healthcare — Rappels de rendez-vous, notifications de renouvellement d'ordonnance, transmission de résultats d'analyses et suivis des patients
  • Education — Confirmations d'inscription aux cours, échéances de devoirs, résultats d'examens et communication parents-enseignants
  • Real Estate — Alertes de biens immobiliers, confirmations de visites, notifications d'offres et communication avec les locataires
  • Financial Services — Alertes de transactions, envoi de factures, rappels de paiement et notifications de compte
  • Restaurants — Confirmations de commande, rappels de réservation, collecte de retours et offres promotionnelles
  • Logistics — Suivi des expéditions, confirmations de livraison, affectation des chauffeurs et notifications d'entrepôt

Toute entreprise qui communique avec ses clients via WhatsApp peut bénéficier de l'automatisation de ces conversations via l'API. La clé est d'identifier quels messages sont répétitifs et prévisibles — ce sont eux qui doivent être automatisés.

Premiers pas

  1. Créez un compte gratuit — prend 30 secondes
  2. Choisissez un forfait adapté à vos besoins
  3. Créez une instance depuis votre tableau de bord
  4. Connectez votre numéro de téléphone via code QR ou code de jumelage
  5. Utilisez votre clé API pour envoyer votre premier message

Si vous avez besoin d'aide pour démarrer, consultez notre documentation API ou contactez notre équipe support.

Prêt à développer avec l'API WhatsApp ?

Rejoignez des milliers de développeurs qui utilisent notre API pour automatiser la messagerie et créer de meilleures expériences client.

Commencer gratuitement