オンプレミスAPIを終了します。詳細と次世代クラウドAPIへの移行方法については、オンプレミスAPIの終了のドキュメントを参照してください。

外部証明書

/v1/certificates/external

認証局(CA)証明書をアップロード、取得、削除、リセットするには、このエッジを使用します。

開始する前に

すべての証明書のアップロードと削除には、adminアカウントを使用する必要があります。

取得

WhatsApp Business APIクライアントに格納されているCA証明書を取得するには、このエンドポイントにGET呼び出しを行います。

リクエスト:

GET /v1/certificates/external/ca

応答:

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

certificate

CA証明書が見つからない場合は、本文なしで404応答コードが返されます。

アップロード

CA証明書をアップロードするには、POST呼び出しを行います。アップロードする証明書は、1つのファイル内に、以下のセクションがここで表示されている順序で含まれるようにしてください。

  1. プライベートキー
  2. 証明書
  3. 1つ以上の中間CA証明書 — WhatsApp Business APIクライアントは、少なくとも1つの中間CA証明書を必要とします。この証明書がないと、アップロードは失敗します。

証明書をWhatsApp Business APIクライアントにアップロードするには、Content-Typetext/plainである次のAPIリクエストを使用します。

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

certificate

cURLを使用する場合、コマンドは次のようになります。

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 

証明書がすでに存在する場合は、上書きされます。証明書がアップロードされたら、ウェブサーバー、つまりすべてのWebappコンテナインスタンスを再起動する必要があります。

有効な(つまり、適切で正しい)証明書だけをアップデートするよう、細心の注意を払う必要があります。そうしないと、ウェブサーバーの再起動は失敗します(APIエンドポイントがダウンするため)。この状況から回復するには手動による介入が必要です。

API呼び出しへの応答は次のようになります。

null

リセット

CA証明書をWhatsApp Business APIクライアントにアップロードしたとき、何らかの理由で証明書が無効な場合は、APIエンドポイントがダウンするため、再起動時にWebappコンテナの開始が失敗します。この状態から回復するには、certsデータベース表を削除する必要があります。

certsデータベース表を削除する手順は、次のとおりです。

  1. Webappコンテナを停止します。
    docker stop your-webapp-container-id
  2. コマンドラインでDockerを介してMySQLに接続します。
    docker exec -it your-mysql-container-id mysql -uroot -p
  3. プロンプトに応じて(mysql.confに従って) MySQLパスワードを入力します。
  4. certs表が存在するかどうかを確認します。
    show tables in waweb;
  5. certs表を削除します。
    drop table waweb.certs;
  6. MySQLを終了します。
    exit;
  7. Webappコンテナを再起動します。
    docker restart your-webapp-container-id
  8. 上記の手順を使用して再度MySQLにログインし、certs表が存在することを確認します。

削除

証明書の削除操作はサポートされていません。見過ごされている使用事例があれば、将来サポートされる可能性があります。