L’API On-Premises ne sera bientôt plus disponible. Consultez notre document Abandon progressif de l’API On-Premises pour de plus amples détails, mais aussi pour connaître la procédure de migration vers notre API Cloud nouvelle génération.

Externe

/v1/certificates/external

Cette arête permet d’importer, de récupérer, de supprimer et de réinitialiser vos certificats d’autorité de certification (AC).

Avant de commencer

Vous devez utiliser un compte admin pour importer et supprimer tous les certificats.

Récupération

Passez des appels GET vers ce point de terminaison pour récupérer un certificat d’AC stocké dans le client de l’API WhatsApp Business.

Exemple

Requête :

GET /v1/certificates/external/ca

Réponse :

Content-Type: text/plain
Content-Length: content-size

certificate

Si un certificat d’AC est introuvable, un code de réponse 404 est renvoyé sans corps de message.

Importation

Effectuez des appels POST pour importer un certificat d’AC. Assurez-vous que le certificat importé contient les sections suivantes dans un seul fichier et dans le même ordre que celui affiché ici :

  1. Clé privée
  2. Certificat
  3. Un ou plusieurs certificats d’AC intermédiaires : le client de l’API WhatsApp Business nécessite au moins un certificat d’AC intermédiaire, faute de quoi l’importation échoue.

Exemple

Pour importer le certificat vers le client de l’API WhatsApp Business, utilisez la requête d’API suivante, qui contient le Content-Type avec la valeur text/plain.

POST /v1/certificates/external
  Content-Type: text/plain
  Content-Length: content-size

certificate

Si vous utilisez cURL, la commande ressemblera à ceci :

curl -X POST \
  https://your-webapp-hostname:your-webapp-port/v1/certificates/external \
  -H 'Authorization: Bearer your-auth-token' \
  -H 'Content-Type: text/plain' \
  --data-binary @your-path-to-certificate.pem 

Si un certificat existe déjà, il est écrasé. Vous devez redémarrer le serveur web, c’est-à-dire toutes les instances du conteneur Webapp, une fois le certificat importé.

Lors de la mise à jour du certificat, veillez à utiliser un certificat valide (c’est-à-dire approprié et correct). Sinon, le serveur web ne redémarre pas (vu que le point de terminaison de l’API est hors service) et une réparation manuelle est nécessaire.

La réponse à l’appel de votre API se présente comme suit :

null

Réinitialisation

Lors de l’importation d’un certificat d’AC dans le client de l’API WhatsApp Business, si le certificat est non valide pour une raison quelconque, les conteneurs Webapp ne redémarrent pas lors de la réinitialisation, car le point de terminaison de l’API est hors service. Pour corriger cette situation, vous devez déposer la table de la base de données certs.

Pour déposer la table de la base de données certs :

  1. Arrêtez le conteneur Webapp :
    docker stop your-webapp-container-id
  2. Connectez-vous à MySQL via Docker sur la ligne de commande :
    docker exec -it your-mysql-container-id mysql -uroot -p
  3. Entrez votre mot de passe MySQL lorsque vous y êtes invité (conformément à mysql.conf).
  4. Vérifiez si la table certs existe :
    show tables in waweb;
  5. Déposez la table certs :
    drop table waweb.certs;
  6. Quittez MySQL :
    exit;
  7. Redémarrez le conteneur Webapp :
    docker restart your-webapp-container-id
  8. Reconnectez-vous à MySQL en suivant les étapes ci-dessus afin de vous assurer que la table certs existe maintenant.

Suppression

La suppression de certificats n’est pas prise en charge. Nous pourrions à l’avenir prendre en charge cette opération s’il existe un cas d’utilisation que nous avons négligé.