Vue d'ensemble
Envoyez un modèle v2 approuvé par Meta à un numéro de téléphone. Contrairement à l'envoi v1 (contact_id), l'envoi v2 accepte to et country_code, body_params optionnels pour les placeholders {{N}}, boutons URL dynamiques ou COPY_CODE, média d'en-tête par destinataire et otp_code pour les modèles AUTHENTICATION. Endpoint : POST /api/v2/whatsapp/templates/{TEMPLATE_ID}/send — sans slash final.
POST /api/v2/whatsapp/templates/{TEMPLATE_ID}/send
Authentifiez-vous avec Authorization: Bearer <token>. Envoyez un corps JSON avec to, country_code et les champs optionnels ci-dessous.
curl --request POST \
'https://app.buzzbip.com/api/v2/whatsapp/templates/1289/send' \
--header 'Content-Type: application/json' \
--header 'Authorization: Bearer YOUR_JWT' \
--data '{
"to": "21696816277",
"country_code": "TN",
"body_params": ["Sam", "ORD-2026-00041"]
}'Notes d'utilisation
⚠️ Note : le nombre de body_params doit correspondre exactement au nombre de placeholders {{N}} dans le corps du modèle. Sinon HTTP 400. ⚠️ Note : otp_code ne peut pas être combiné avec body_params ou buttons. Utilisez-le uniquement pour les modèles AUTHENTICATION.
Astuce : les endpoints v2 n'utilisent pas de slash final. Utilisez /api/v2/whatsapp/templates/{id}/send et non /api/v2/whatsapp/templates/{id}/send/
Notes d'intégration
Lors de l'intégration de ce endpoint Buzzbip, utilisez https://app.buzzbip.com comme hôte de production. Obtenez un JWT via POST /api/login_check et envoyez Authorization: Bearer sur chaque requête. Vérifiez que User.hasApiAccess est activé dans l'admin Buzzbip. Analysez les réponses JSend (status, message, data). Les routes WhatsApp v2 n'utilisent pas de slash final. Implémentez des nouvelles tentatives avec backoff en cas de limite de débit. Stockez les identifiants côté serveur et réauthentifiez-vous avant l'expiration du JWT (3600 s).
Sécurité
Bonnes pratiques : credentials uniquement côté serveur, TLS obligatoire, surveillance des échecs d'authentification. Séparez comptes staging et production. Documentez modèles et automatisations déclenchés. Masquez numéros et contenus dans les journaux partagés.
Et ensuite ?
Pages liées : api/v2/whatsapp-media api/v2/whatsapp-templates guides/whatsapp-v2-use-cases guides/whatsapp-common-gotchas
