Ce document explique comment migrer un numéro de téléphone professionnel de l’API On-Premises vers l’API Cloud.
Notez que la migration d’un numéro de téléphone professionnel d’une API à une autre diffère de sa migration d’un compte WhatsApp Business (WABA) à un autre.
Pour migrer de l’API Cloud vers l’API On-Premises, consultez la page Migrer de l’API Cloud vers l’API On-Premises.
La migration implique de générer les métadonnées relatives au numéro de téléphone professionnel, puis d’enregistrer le numéro à utiliser avec l’API Cloud à l’aide de ces données. Dans la mesure où un numéro ne peut être enregistré et utilisé qu’avec une seule API à la fois, ce processus annule l’enregistrement du numéro dans l’API On-Premises.
La migration N’A PAS d’incidence sur les éléments suivants :
Avant d’effectuer une migration, toutefois, vous devez connaître les éventuelles différences entre les API et prendre les mesures qui s’imposent avant de passer à la procédure de migration décrite dans ce document.
Vous devez disposer d’une application Business Meta pouvant utiliser les API Cloud et Business Management avec les données clientèle intégrées, et capable de gérer les webhooks de ces API. L’application doit également être associée à votre compte Business Meta vérifié, ou être revendiquée par ce dernier.
Si vous n’avez pas d’application Business Meta, ou si vous n’y avez pas configuré le produit WhatsApp, suivez les étapes de notre guide Premiers pas avec l’API Cloud. Ces étapes permettent de générer tous les éléments dont vous avez besoin pour tester les API Cloud et Business Management.
Votre application Meta doit passer le Contrôle app et être approuvée (c’est-à-dire, recevoir un accès Avancé) pour les autorisations whatsapp_business_messaging et whatsapp_business_management.
Une fois que vous vous êtes assuré·e que votre application peut gérer toutes les différences entre les API, il est recommandé de commencer par migrer un numéro de téléphone professionnel peu utilisé et de vérifier que toutes les fonctionnalités que vous comptez proposer avec l’API Cloud fonctionnent correctement. Cela fait, vous pourrez migrer d’autres numéros.
Nous vous recommandons également de migrer vos numéros de téléphone lorsque le trafic vers votre API On-Premises est faible.
Les fonctionnalités suivantes de l’API On-Premises ne sont pas prises en charge, ou sont traitées différemment par l’API Cloud. Vérifiez que votre application peut gérer ces différences avant de commencer le processus de migration.
Les structures de charge utile des webhooks des API Cloud et Business Management diffèrent de celles de l’API On-Premises. Il est recommandé de créer un point de terminaison webhook permettant de gérer uniquement les API Cloud et Business Management.
Pour appréhender les différences en termes de charge utile et savoir comment configurer les webhooks sur votre application à l’aide de l’Espace App, reportez-vous aux documents suivants :
Notez qu’après avoir effectué la migration d’un numéro de téléphone professionnel vers l’API Cloud, vous devez utiliser le point de terminaison Compte WhatsApp Business > Subscribed Apps (Applications abonnées) pour abonner votre application Meta aux webhooks du compte WhatsApp Business (WABA) associé au numéro de téléphone professionnel :
curl -X POST 'https://graph.facebook.com/v17.0/<WABA_ID>/subscribed_apps' \ -H 'Authorization: Bearer EAAJB...'
Notez qu’une fois la migration vers l’API Cloud terminée, les webhooks de l’API On-Premises correspondant au numéro de téléphone professionnel ne seront plus diffusés et la livraison des webhooks de l’API Cloud commencera.
Vous ne pouvez pas utiliser les ID des contenus multimédias importés dans l’API On-Premises lors de l’envoi de messages avec l’API Cloud. Vous devez donc réimporter le contenu à l’aide de l’API Cloud pour générer les nouveaux ID, ou utiliser l’URL des contenus si ces derniers sont hébergés sur un serveur public. Consultez Messages multimédias et Modèles de message multimédia.
Notez que pour garantir l’intégrité des messages, certains domaines d’hébergement des contenus multimédias autorisés par l’API On-Premises ne sont pas autorisés par l’API Cloud. Si vous recourez à un service d’hébergement pour votre contenu multimédia, nous vous recommandons de tester les URL de vos contenus dans des messages au format libre et des modèles de message avant de procéder à la migration. Si vous pensez que votre hébergeur a été bloqué par erreur, contactez l’assistance.
Les codes d’erreur des API Cloud et Business Management diffèrent de ceux de l’API On-Premises. Reportez-vous aux documents suivants :
L’API On-Premises identifie les messages Appuyer pour parler (Push-To-Talk, PTT) des webhooks lorsque messages.type
est défini sur voice
, mais l’API Cloud les identifie lorsque messages.audio.voice
est configuré sur true
.
L’API Cloud ne prend pas en charge les packs de stickers.
L’inactivité commence dès que vous effectuez la dernière étape (enregistrement du numéro à utiliser avec l’API Cloud) et ne doit durer que quelques secondes. Pendant ce laps de temps, les messages que les utilisateur·ices WhatsApp envoient au numéro sont ignorés en silence.
Nous vous recommandons vivement de planifier la migration durant les heures creuses d’utilisation du numéro afin de minimiser l’impact du temps d’inactivité.
Si le numéro de téléphone professionnel On-Premises possède plusieurs connexions qui exécutent deux partitions ou plus, il passera automatiquement à un débit élevé sur l’API Cloud.
Si vous migrez un numéro de téléphone professionnel ayant un statut compte business officiel (OBA), son statut sera conservé si vous incluez ses métadonnées (générées à l'étape 2) lors de l'enregistrement du numéro (étape 3). Si vous omettez ces données, le numéro perdra son statut OBA.
En cas de questions ou si vous avez besoin d’aide lors de la migration, envoyez une demande d’Assistance directe en indiquant les informations suivantes :
Si vous connaissez le code PIN du numéro de téléphone professionnel, vous pouvez ignorer cette étape.
Vous aurez besoin de ce code à l’étape 3. Si vous ne le connaissez pas, vous devez d’abord désactiver la vérification en deux étapes pour le numéro de téléphone professionnel. Si le numéro de téléphone professionnel ne vous appartient pas, demandez à son ou à sa propriétaire de procéder à cette désactivation pour vous.
Utilisez l’API Backup and Restore pour générer les métadonnées relatives à votre numéro de téléphone professionnel.
POST /v1/settings/backup { "password": "<PASSWORD>" }
<PASSWORD>
accepte n’importe quelle chaîne. Cette valeur permettra d’encoder les métadonnées. Gardez-la précieusement, car vous en aurez besoin à l’étape suivante.
{ "settings": { "data": "<METADATA>" }, "meta": { "api_status": "<API_STATUS>", "version": "<API_VERSION>" } }
L’API retourne une chaîne encodée affectée à la propriété data
qui décrit votre numéro de téléphone professionnel et ses paramètres. Conservez cette valeur, car vous en aurez besoin à l’étape suivante.
<METADATA>
: chaîne encodée décrivant votre numéro de téléphone professionnel et ses paramètres. Conservez cette valeur, car vous en aurez besoin à l’étape suivante.<API_STATUS>
: statut du déploiement de l’API On-Premises.<API_VERSION>
: numéro de version de l’API On-Premises que vous exécutez.curl 'https://localhost:9090/v1/settings/backup' \ -H 'Content-Type: application/json' \ -H 'Authorization: Bearer EAAJB...' \ -d ' { "password": "tacocat" }'
{ "settings": { "data": "V0FCS..." }, "meta": { "api_status": "stable", "version": "2.49.3" } }
Aucun mot de passe à usage unique n’est requis si les métadonnées de sauvegarde à l’étape 2 ci-dessus ont été correctement transmises et sans modifications à l’API Cloud durant l’étape 3 (la présente étape).
Utilisez le point de terminaison Numéro de téléphone WhatsApp Business > Enregistrer de l’API Cloud pour enregistrer le numéro à utiliser avec l’API Cloud.
Ajoutez la valeur des métadonnées du numéro de téléphone professionnel encodées et le mot de passe de l’étape précédente. Bien que vous puissiez enregistrer le numéro sans ces données, les données de profil du numéro de téléphone professionnel seront perdues si elles ne sont pas incluses, ce qui peut avoir une incidence sur le statut du compte WhatsApp Business en tant que compte business officiel.
POST /<BUSINESS_PHONE_NUMBER_ID>/register
{ "messaging_product": "whatsapp", "pin": "<NEW_OR_EXISTING_PIN>", "backup": { "password": "<PASSWORD>", "data": "<METADATA>" } }
<NEW_OR_EXISTING_PIN
> : code PIN existant ou que vous souhaitez définir pour le numéro de téléphone professionnel.<PASSWORD
> : mot de passe utilisé pour générer les métadonnées de votre numéro de téléphone professionnel à l’étape précédente.<METADATA
> : chaîne encodée qui décrit votre numéro de téléphone professionnel et ses paramètres, générée à l’étape précédente.{ "success": <SUCCESS> }
success
est défini sur true
si l’enregistrement a abouti, ou sur false
en cas d’erreur.
curl 'https://graph.facebook.com/v21.0
/110200345501442/register' \
-H 'Content-Type: application/json' \
-H 'Authorization: Bearer EAAJB...' \
-d '
{
"messaging_product": "whatsapp",
"pin": "134568",
"backup": {
"password": "tacocat",
"data": "V0FCS..."
}
}'
{ "success": true }
Demandez le champ health_status
pour le numéro de téléphone professionnel et vérifiez qu’il peut être utilisé avec la messagerie avec l’API Cloud. Voir État du service de messagerie.