登入開始免費試用
Meta Tech Provider

WhatsApp 錯誤 3:能力或權限問題

錯誤代碼 3 表示呼叫端點的應用程式缺少該端點所需的能力或權限。Meta 的說明是「Capability or permissions issue.」,Graph API 則稱之為 API Method。解決方法是用存取權杖偵錯工具檢查權杖已獲授予的權限,再補上端點需要的那一項。

3

Meta 對「Capability or permissions issue.」所用的代碼。

API Method

Graph API 錯誤處理指南為代碼 3 所取的名稱。

2 permissions

whatsapp_business_management 和 whatsapp_business_messaging,是大多數 WhatsApp 端點需要的兩項權限。

WhatsApp 錯誤代碼 3 是什麼意思?

意思是請求已通過驗證身分,但應用程式不獲允許執行所要求的操作。

Meta 在 Cloud API 參考文件中,把代碼 3 列為授權錯誤,詳細說明文字為「Capability or permissions issue.」。Cloud API 沿用的 Graph API 錯誤處理指南,則把同一個代碼稱為 API Method,並指示要確保應用程式具備該呼叫所需的能力或權限。

換言之,權杖本身可以使用。問題不在身分,這正是它與代碼 0 和 190 的分別。問題在於權杖獲允許存取的範圍。

如何檢查權杖擁有哪些權限?

使用存取權杖偵錯工具,或 debug_token 端點,兩者返回的資料相同。

回應會在 scopes 屬性中列出已授予的權限。請把這份清單與失敗端點的參考頁面對照,因為每個參考頁面都會註明所需權限。

對 WhatsApp 而言,兩項權限已涵蓋幾乎所有情況。whatsapp_business_management 用於帳戶中繼資料、訊息範本、電話號碼清單、分析資料和帳戶 Webhook。whatsapp_business_messaging 用於傳送任何訊息,以及接收訊息和狀態 Webhook。只持有其中一項的權杖,在需要另一項的呼叫上會失敗。

為什麼合作夥伴的應用程式會遇到錯誤 3,直接開發者卻不會?

因為替其他企業提供服務的合作夥伴,多了一道關卡。

Meta 的權限指南指出,若合作夥伴的客戶透過其應用程式存取自己的資料,該應用程式必須通過 App Review,並為所需的每項權限取得進階存取權限(Advanced access)。只處理自家企業資料的直接開發者,則不需要 App Review 或進階存取權限。

因此,同一段程式碼可以在開發者自己的帳戶上順利運作,卻在客戶的帳戶上失敗。出現這種情況時,要問的不是權杖缺少哪項權限,而是應用程式是否已獲批准,可對不屬於自己的資產使用該權限。

常見錯誤

  • 以相同範圍產生新權杖。權限相同的新權杖,會在同一處失敗。
  • 在應用程式設定中檢查權限名稱,而不是檢查權杖本身。重點是權杖實際獲授予什麼。
  • 只用自己的帳戶測試。合作夥伴的應用程式必須先取得進階存取權限,客戶帳戶才會接受呼叫。
使用 EasyCoexistence 完成這項設定

EasyCoexistence 透過 Meta 自家的 Embedded Signup 流程連接每個號碼,企業在開通時授予所需權限,之後可在控制台查看連接的健康狀況。

常見問題

錯誤 3 是我的電話號碼出了問題嗎?

不是。它關乎應用程式權杖獲允許執行的操作。請求被拒絕之前,系統不會檢查號碼。

錯誤 3 與錯誤 10 有什麼分別?

代碼 3 是能力或權限問題。代碼 10 表示權限未獲授予或已被移除。兩者都可透過檢查權杖範圍來解決。

傳送訊息需要哪項權限?

whatsapp_business_messaging。Meta 的權限指南指出,傳送任何類型的訊息都需要這項權限。

重試有幫助嗎?

沒有。權杖的權限不會在兩次嘗試之間改變,所以結果相同。

繼續閱讀

準備開始嗎?

幾分鐘內設定 WhatsApp Coexistence,而非幾個月。應用程式在手機上仍可繼續運作。

開始免費試用

驗證日期

WhatsApp 錯誤 3:能力或權限問題