WhatsApp エラー 10: 権限が付与されていない、または削除された
エラーコード 10 は、アプリのトークンにエンドポイントが必要とする権限がないことを示します。権限が一度も付与されていないか、後から削除されたことが原因です。Meta の説明は「Permission is either not granted or has been removed.」です。Meta は WhatsApp 固有の原因も 2 つ挙げています。Flows with Endpoint で許可リストに登録されていない電話番号を使った場合と、API の利用資格の要件を満たしていない場合です。
Meta が「Permission is either not granted or has been removed.」に割り当てているコードです。
Graph API エラー処理ガイドがコード 10 に付けている名称です。
パートナーアプリが顧客のアカウントで使う各権限に必要な条件です。
WhatsApp のエラーコード 10 は何を意味しますか?
トークンは Meta に届いて認識されたものの、呼び出しに必要な権限がそのトークンに含まれていない、という意味です。
Meta の Cloud API リファレンスでは、コード 10 の詳細テキストは「Permission is either not granted or has been removed.」とされています。Graph API エラー処理ガイドでは API Permission Denied と呼ばれ、不足している権限に対処するよう案内しています。
重要なのは「削除された」という点です。権限は設定時に付与されても、後で取り消されることがあります。たとえば、誰かが「ビジネス設定」でアプリのアクセス権を取り消した場合です。そのため、数か月問題なく動いていた連携が、コードを一切変更していないのに 10 を返し始めることがあります。
エラー 10 について Meta が挙げているほかの原因は何ですか?
WhatsApp 固有の原因が 2 つあります。どちらもスコープとは無関係なので、見落としやすい原因です。
WhatsApp Flows with Endpoint では、ビジネスの公開鍵の設定に使った電話番号が許可リストに登録されていることを確認するよう、Meta は案内しています。許可リスト外の番号では、トークンにすべての権限があってもこのコードが返されます。
また Meta によると、呼び出している API の利用資格の要件を満たしていないアカウントにも、このコードが返されます。この場合、原因は認証情報ではなくアカウントの利用資格にあるため、トークンを変更しても解決しません。
エラー 10 はどう解決しますか?
まず、Meta が最初の確認手段として挙げているアクセストークンデバッガーを使います。
`scopes` の一覧にエンドポイントが必要とする権限がない場合は、企業側にその権限を付与し直してもらってください。パートナーアプリの場合は、その権限の高度なアクセス権が承認されているかの確認も必要です。Meta の権限ガイドでは、顧客のアカウントで使うには高度なアクセス権が必須とされています。
スコープが揃っているように見える場合は、WhatsApp 固有の 2 つの原因を確認します。Flows の呼び出しなら、公開鍵を設定した電話番号が許可リストにあるかを確認してください。それ以外の呼び出しなら、対象 API の利用資格の要件を読み、アカウントが満たしているかを確かめます。認証情報を変更するのは、その後です。
よくある間違い
- デプロイが原因で連携が壊れたと決めつけること。「ビジネス設定」で権限が削除されると、コードを変更しなくてもこのコードが返されます。
- 原因が利用資格なのにトークンを作り直すこと。認証情報で、利用資格のないアカウントを適格にすることはできません。
- Flows の許可リストを見落とすこと。Flows with Endpoint では、許可リスト外の番号はすべてのスコープがあっても 10 を返します。
EasyCoexistence は、オンボーディング後も接続済みの各番号を監視します。アクセスを失った接続は、送信の失敗として表面化する前にダッシュボードで確認できます。
よくある質問
エラー 10 とエラー 131005 は同じものですか?
Meta のリファレンスでは、両者の説明文は同じです。コード 10 は Graph API のコードで、131005 は WhatsApp 用の範囲にあるコードです。確認方法はどちらも同じです。
昨日まで動いていた番号でエラー 10 が出ることはありますか?
あります。Meta の説明には削除された権限も含まれているため、以前に付与されたアクセスが後から取り消されることがあります。
エラー 10 はトークンの有効期限切れを意味しますか?
いいえ。トークンの期限切れはコード 190 または 0 です。コード 10 は、トークンは有効でも必要な権限がないことを意味します。
付与されている権限はどこで確認できますか?
`debug_token` を呼び出すか、アクセストークンデバッガーを開いてください。`scopes` プロパティに、そのトークンのすべての権限が一覧表示されます。
続きを読む
始める準備はできましたか?
WhatsApp Coexistence の設定は数分で完了し、数か月もかかりません。スマートフォン上のアプリも引き続き使えます。
無料トライアルを始める確認日