Votre premier appel
Listez les connexions accessibles avec votre clé et vérifiez votre capacité avant d'en provisionner une nouvelle.
URL de base : https://developers.wasync.app/api/v1.
Lister les connexions que vous pouvez utiliser
curl https://developers.wasync.app/api/v1/connections \
-H "Authorization: Bearer $WASYNC_API_KEY"Seules les connexions disposant d'une licence active apparaissent. Chacune comporte un provider valant
qr ou cloud_api, un id (un cuid — l'identifiant stable à conserver
dans l'enregistrement de votre propre client) et un status. Utilise whatsapp.read.
Vous appelez déjà cloudapi.wasync.app/api/v1 ? Continuez ainsi.
developers.wasync.app est l'hôte canonique, mais cloudapi.wasync.app est un
alias permanent de la même API — mêmes clés, mêmes chemins, mêmes
réponses — et il reste valable indéfiniment. Aucune intégration existante n'a à
changer quoi que ce soit. Les endpoints OAuth, les documents /.well-known/… et l'URL du serveur
MCP sont des identifiants de protocole enregistrés par les clients : ils restent sur
cloudapi.wasync.app volontairement.
Vérifier votre capacité avant de vous engager
curl https://developers.wasync.app/api/v1/account \
-H "Authorization: Bearer $WASYNC_API_KEY"{
"slots": {
"total": 30,
"used": 28,
"available": 2,
"nextExpiry": "2027-08-08T09:00:00.000Z"
},
"connections": {
"total": 28,
"connected": 27,
"needsReconnect": 1
}
}slots.available indique si vous pouvez intégrer un nouveau numéro dès maintenant,
et nextExpiry est la date avant laquelle vous devez facturer votre propre client — ainsi,
un slot n'expire jamais sous les pieds de quelqu'un qui vous a déjà payé.
connections.needsReconnect compte les numéros qui attendent actuellement que leur propriétaire
scanne un QR ; abonnez-vous aux événements de connexion pour être prévenu
dès que ce numéro change, au lieu de l'interroger en boucle. Utilise whatsapp.read.
Un slot est une capacité, pas un numéro de téléphone. Si vous supprimez une connexion, son slot retourne dans votre réserve avec le temps qu'il lui reste — le prochain numéro que vous connectez le récupère automatiquement. C'est ce qui vous permet de transférer un slot payé d'un client qui part à un nouveau client sans payer deux fois.
Connecter un numéro
Un seul appel crée la connexion et renvoie un code QR à scanner. Il fonctionne sur un espace de travail tout neuf, sans aucune connexion — avec une clé, il n'y a rien à cliquer d'abord dans un portail.
curl -X POST https://developers.wasync.app/api/v1/connections \
-H "Authorization: Bearer $WASYNC_API_KEY" \
-H "Content-Type: application/json" \
-H "Idempotency-Key: $(uuidgen)" \
-d '{"label":"Support line"}'{
"connection": {
"id": "conn_8f3a21",
"status": "connecting",
"qr": "data:image/png;base64,iVBORw0KGgo…"
}
}Le QR obtenu ici ne reste pas valide
WhatsApp renouvelle le code d'appairage environ toutes les 20 secondes ; le qr de
la réponse de création est donc périmé quelques secondes après son affichage. L'échec est
silencieux : le téléphone ne s'appaire pas et rien à l'écran n'explique pourquoi. Interrogez
GET /connections/{id} toutes les 3 à 5 s et réaffichez le qr de chaque réponse.
Ne le mettez pas en cache, et ne cachez pas l'actualisation derrière un bouton que l'utilisateur doit
presser. Code d'appairage et QR présente l'alternative
sur un seul appareil.
Utilise whatsapp.manage. Les connexions créées de cette façon sont des numéros qr ;
les numéros cloud_api sont intégrés via Meta Embedded Signup. Cet
endpoint est réservé aux espaces de travail autonomes — un portail Bitrix24 reçoit
403 forbidden_portal_kind, car les connexions y sont créées par l'administrateur du portail
dans WASync. Envoyez un Idempotency-Key — créer une connexion consomme
un slot payant, et une nouvelle tentative après expiration, sans cette clé, vous en fait acheter deux.
Erreurs et idempotence décrit les quatre cas
à gérer.
Créer un compte et une clé
Deux façons d'obtenir une clé — depuis Bitrix24, ou sur la console développeur avec un e-mail et un mot de passe. Pas d'URI de redirection, pas de PKCE, pas d'écran de consentement.
Votre premier message
Envoyez un texte WhatsApp, relisez la conversation et affichez les coches bleues chez le client.