バックアップと復元

/v1/settings/backupおよび/v1/settings/restore

/v1/settings/backupエンドポイントと/v1/settings/restoreエンドポイントを使うと、異なる環境やサーバーに移行したり、既知の作業状態に復元したりする作業が簡単になります。WhatsApp Business APIのクライアントやサーバーがダウンした場合に、簡単に稼働状態に戻せるようにするため、時折バックアップを取ることをおすすめします。

WhatsApp Business APIクライアントでは、アプリの設定や登録を含め、必要な情報のすべてをバックアップしたり復元したりする操作がサポートされています。

セキュリティ更新

v2.31.4においてWhatsAppは、他のWhatsAppクライアント(つまりスマートフォンアプリ)のバックアップと復元の機能のセキュリティモデルとの一貫性のため、バックアップと復元のエンドポイントに修正を加えました。その変更により、復元操作が成功すると、WhatsAppビジネスアカウントとその連絡先との間で、新しいセキュリティコードが生成されます。

WhatsApp Businessアカウントがバックアップから復元された後、消費者クライアントに対して、「{ビジネスアカウント}でのセキュリティコードが変更されました。詳しくはこちらをタップしてください」という通知が送られます([セキュリティ通知]の設定が有効になっている場合)。バックアップ/復元のその他の動作は、以前と同じです。

開始する前に

バックアップと復元の設定にアクセスするには、必ずadminアカウントを使います。

バックアップ

バックアップ/エクスポートする機能が実行されるのは、WhatsApp Business APIクライアントが登録されていて、かつ実行中である場合だけです。バックアップ機能では、メッセージとコールバックはどちらもバックアップされず、仮想マシンスナップショットの撮影も復元も機能しません

バックアップするには、passwordフィールドを伴う/v1/settings/backupエンドポイントを使います。

POST /v1/settings/backup
{
    "password": "PASSWORD"
}

A successful response looks like this:

{
    "settings": {
       "data": "ENCRYPTED_BACKUP_DATA"
    }
}

パラメーター

リクエストのパラメーター:

名前説明

password

型: 文字列

セキュリティ目的でバックアップデータを暗号化するために使用。

応答パラメーター:

名前説明

settings

型: 文字列

data要素を含むsettingsオブジェクト。

data

型: 文字列

バックアップされたデータで、セキュリティ目的で暗号化される。dataの値は、情報復元の際にパスワードと共に使われるので、保存しておいてください。

復元

復元機能は、新しいマシン上でWhatsApp Business APIクライアントの新バージョンを設定する場合や、アプリを同じマシン上で以前の設定と同じ暗号化情報と設定値により既知の作業状態に復元する場合に使うことができます。

アプリを新しいマシン上で設定する場合、Coreappが実行中であり、かつ未登録でなければなりません。インポートが成功すると、Coreappは自動的に初期設定され、リクエストの配信を開始します。既存のアプリがあるマシンを復元した場合、そのアプリは停止するので、docker restartコマンドで再起動する必要があります。

マルチコネクト設定を復元する場合には、復元の実行元と同じタイプの設定に対して上書き復元を実行する必要があります。たとえば、2つのシャードが実行されているセットアップをバックアップした場合、復元するには2つのシャードが実行されていなければなりません。

設定を復元するには、passwordフィールドとdataフィールドを伴う/v1/settings/restoreエンドポイントを使います。

POST /v1/settings/restore
{
    "password": "your-password",
    "data": "your-encrypted-backup-data"
}

インポート後、WhatsApp Business APIクライアントはシャットダウンします。一部のデプロイメントでは(AWSなど)、アプリケーションが自動的に再起動します。それ以外の場合は、docker restartコマンドを使ってサービスを再起動する必要があります。

リクエストが成功した場合は、HTTPステータスコード200 OKに加え、nullまたは{}が返されます。エラーが発生した場合は、エラーおよびステータスメッセージをご覧ください。

パラメーター

名前説明

password

型: 文字列

/v1/settings/backup API呼び出しでバックアップデータを暗号化するために使ったパスワード。

data

型: 文字列

/v1/settings/backup API呼び出しから返されたデータ。