雲端 API 錯誤代碼

雲端 API 建基於 Graph API,因此,如果您不熟悉如何處理 Graph API 錯誤回應,請參閱 Graph API 錯誤處理文件。

一般來說,我們建議您就著 code 值和 details 裝載屬性建構應用程式的錯誤處理邏輯。這類屬性及其值更能反映出深層的錯誤。

錯誤代碼標題在 API 錯誤回應裝載中沒有專門的屬性,而是包含在 message 值當中。不過,我們建議您不要依賴代碼標題來建構錯誤處理邏輯,因為代碼標題最終會被停用。

接收錯誤:同步和非同步

雲端 API 錯誤會作為 Graph API 回應以同步形式傳回,或透過 Webhook 以非同步形式傳回,有時亦會同時透過這兩種方式傳回。

使用雲端 API 時,不妨同時監察 Graph API 回應和 messages Webhook 以便處理錯誤。如果您已訂閱 messages Webhook 欄位,便會根據支援的非同步錯誤類型,在發生此類錯誤時收到通知。

錯誤回應 Webhooks 和語法

雲端 API 錯誤會在以下 Webhook 物件中展示:

雲端 API

  • entry.changes.value.errors
  • entry.changes.value.messages.errors

內部部署 API

  • errors

錯誤回應語法

{
  "error": {
    "message": "<MESSAGE>",
    "type": "<TYPE>",
    "code": <CODE>,
    "error_data": {
        "messaging_product": "whatsapp",
        "details": "<DETAILS>"
    },
    "error_subcode": <ERROR_SUBCODE>
    "fbtrace_id": "<FBTRACE_ID>"
  }
}

錯誤回應內容

屬性 值類型 說明

code

整數

錯誤代碼。我們建議您圍繞錯誤代碼(而不是子代碼或 HTTP 回應狀態代碼)來建構自家應用程式的錯誤處理邏輯。

details

字串

有關錯誤本身以及最可能導致其出現的原因之說明。可能還包含有關如何處理錯誤的資訊,例如哪個參數無效或可接受哪些值。

error_subcode

整數

已停用。不會在 v16.0 或更新版本的回應中傳回。


Graph API 子代碼。不是所有回應都會包含子代碼,因此我們建議您改為就著 codedetails 屬性來建構錯誤處理邏輯。

fbtrace_id

字串

您可在聯絡直接支援團隊時包含的追蹤編號。此編號有助我們除錯。

message

字串

錯誤代碼及其標題的組合。範例:(#130429) Rate limit hit

messaging_product

字串

訊息產品。針對雲端 API 回應,此值一律是字串 whatsapp

type

字串

錯誤類型。

回應範例

{
  "error": {
    "message": "(#130429) Rate limit hit",
    "type": "OAuthException",
    "code": 130429,
    "error_data": {
        "messaging_product": "whatsapp", 
        "details": "Message failed to send because there were too many messages sent from this phone number in a short period of time"
    },
    "error_subcode": 2494055,
    "fbtrace_id": "Az8or2yhqkZfEZ-_4Qn_Bam"
  }
}

錯誤代碼

授權錯誤

代碼 說明 可行解決方案 HTTP 狀態代碼

0

驗證異常

我們無法驗證相關應用程式用戶。

通常,這表示包含的存取憑證已過期或失效,或是應用程式用戶為防止所有應用程式存取自己的資料而更改了設定。我們建議您憑證索取新的存取憑證

401

未授權

3

API 方法

功能或權限問題。

使用存取憑證除錯工具來確認您的應用程式已獲授予端點所要求的權限。請參閱解決疑難

500

內部伺服器錯誤

10

權限被拒

未獲授予權限或權限已遭移除。

使用存取憑證除錯工具來確認您的應用程式已獲授予端點所要求的權限。請參閱解決疑難

請確保已將用於設定企業公開金鑰的手機號碼列入允許清單。

403

禁止

190

存取憑證已過期

您的存取憑證已過期。

請取得新的存取憑證

401

未授權

200-299

API 權限

未獲授予權限或權限已遭移除。

使用存取憑證除錯工具來確認您的應用程式已獲授予端點所要求的權限。請參閱解決疑難

403

禁止

限速錯誤

代碼 說明 可行解決方案 HTTP 狀態代碼

4

API 太多呼叫

應用程式已達到其 API 呼叫限速限制。

應用程式管理中心中載入此應用程式,然後查看應用程式限速區塊,以確認此應用程式已達到其限速額度。如果已達到,請稍後重試,或減少此應用程式發出 API 查詢的頻率或次數。

400

錯誤要求

80007

限速問題

WhatsApp Business 帳戶已達到其限速額度。

請參閱 WhatsApp Business 帳戶的限速規定。請稍後重試,或減少此應用程式發出 API 查詢的頻率或次數。

400

錯誤要求

130429

達到限速額度

已達到雲端 API 訊息輸送量。

應用程式已達到 API 的輸送量限制。請參閱輸送量。請稍後重試,或減少此應用程式傳送訊息的頻率。

400

錯誤要求

131048

達到垃圾訊息限速

此電話號碼可傳送的訊息數量受限,因此無法傳送訊息。這可能是之前有太多訊息被封鎖或被標記為垃圾訊息所致。

在 WhatsApp 管理工具中查看您的品質狀態,然後參閱根據品質而定的限速規定文件來了解詳情。

400

錯誤要求

131056

達到(商業帳戶、消費者帳戶)配對限速額度

在短時間內有過多訊息從傳送方電話號碼傳送到同一個傳送對象電話號碼。

如需傳送訊息到同一個手機號碼,請稍等再重試。您仍可傳送訊息到其他電話號碼,而無需等待

400

錯誤要求

133016

帳戶註冊或取消註冊率超出限制

短時間內太多次嘗試註冊或取消註冊此電話號碼,導致無法註冊或取消註冊

此商家電話號碼因達到註冊/取消註冊的嘗試次數上限而遭到封鎖。號碼解除封鎖後,請再試一次。請查看註冊程序文件的「限制」部分。

400

錯誤要求

完整性錯誤

代碼 說明 可行解決方案 HTTP 狀態代碼

368

因違反政策規定而暫時被封鎖

由於違反平台政策,與應用程式連結的 WhatsApp Business 帳戶已被限制或停用。

請參閱政策執行文件,了解政策違規內容及相應解決方案。

403

禁止

130497

商業帳戶被限制向此國家/地區的用戶傳送訊息。

此 WhatsApp Business 帳戶被限制,不能向某些國家/地區的用戶傳送訊息。

請參閱《WhatsApp Business 訊息政策》,進一步了解您業務類別的允許收發訊息國家/地區。

403

禁止

131031

帳戶被鎖定

由於違反平台政策,與應用程式連結的 WhatsApp Business 帳戶已被限制或停用,或者我們無法根據 WhatsApp Business 帳戶的資料集來驗證要求中包含的資料(例如,要求中包含的雙重驗證 PIN 碼不正確)。

請參閱政策執行文件,了解政策違規內容及相應解決方案。


您還可以使用健康狀態 API,此 API 可以提供有關帳戶被鎖定原因的更多分析資料。

403

禁止

其他錯誤

代碼 說明 可行解決方案 HTTP 狀態代碼

1

API 未知

要求無效或可能出現伺服器錯誤。

請查看 WhatsApp Business 平台狀態頁面,以了解 API 狀態資訊。如果伺服器沒有中斷,請查看端點參考資料,確保您的要求採用正確的格式且滿足所有端點要求。

400

錯誤要求

2

API 服務

因停機或過載而出現臨時問題。

請查看 WhatsApp Business 平台狀態頁面,在了解 API 狀態資訊後再重試。

503

無法提供此服務

33

參數值無效

商家電話號碼已被刪除。

檢查商家手機號碼是否正確。

400

錯誤要求

100

參數無效

要求包含一個或多個不支援或拼寫錯誤的參數。

請參閱端點的參考資料,確定系統支援哪些參數以及了解其拼寫方式。

在設定公開金鑰時,請確保其為 PEM 格式的有效 2048 位元 RSA 公鑰

請確保您註冊的電話號碼編號與之前儲存的電話號碼編號相符。

請確保您的參數符合該類型的任何長度限制。

400

錯誤要求

130472

用戶號碼是實驗的一部分

訊息未作為實驗的一部分傳送。

請查看營銷訊息實驗

400

錯誤要求

131000

發生錯誤

出現未知錯誤,因此無法傳送訊息。

設定企業公開金鑰時,系統無法計算簽名或呼叫 GraphQL 端點,或者 GraphQL 端點傳回錯誤。

再試一次。如果錯誤持續出現,請開立直接支援工作單。

500

內部伺服器錯誤

131005

存取被拒

未獲授予權限或權限已遭移除。

使用存取憑證除錯工具來確認您的應用程式已獲授予端點所要求的權限。請參閱解決疑難

403

禁止

131008

缺少必要參數

要求缺少必要參數。

請參閱端點的參考資料,確定哪些是必要參數。

400

錯誤要求

131009

參數值無效

一個或多個參數值無效。

請參閱端點的參考資料,確定系統支援每個參數的哪些值;另請參閱手機號碼,了解如何為 WhatsApp Business 帳戶新增號碼。

400

錯誤要求

131016

無法提供此服務

服務暫時無法使用。

請查看 WhatsApp Business 平台狀態頁面,在了解 API 狀態資訊後再重試。

500

內部伺服器錯誤

131021

傳送對象不能是傳送方

傳送方和傳送對象的電話號碼相同。

請將訊息傳送至與傳送方不同的電話號碼。

400

錯誤要求

131026

訊息無法送達

無法送達訊息。原因包括:

  • 傳送對象電話號碼並非 WhatsApp 電話號碼。
  • 驗證類別範本的傳送對象是國家/地區電話代碼為 +91(印度)的 WhatsApp 用戶。目前無法向印度 WhatsApp 用戶傳送驗證類別範本。
  • 傳送對象尚未接受我們的新版服務條款和私隱政策。
  • 傳送對象使用舊的 WhatsApp 版本;必須使用以下 WhatsApp 版本或更新版本:
    • Android:2.21.15.15
    • SMBA:2.21.15.15
    • iOS:2.21.170.4
    • SMBI:2.21.170.4
    • KaiOS:2.2130.10
    • 網頁版:2.2132.6

使用非 WhatsApp 通訊方式,請 WhatsApp 用戶執行以下操作:

  • 確認他們確實可以向您的 WhatsApp 商家電話號碼傳送訊息。
  • 確認他們已接受我們的最新版《服務條款》(如果顧客尚未接受,設定 > 幫助設定 > 應用程式資訊將提示他們接受最新版的條款/政策)。
  • 更新至 WhatsApp 用戶端的最新版本。

400

錯誤要求

131042

商家資格付款問題

存在與付款方式相關的問題。

請參閱關於 WhatsApp Business 帳戶的帳單,並確認您已正確設定帳單。

常見問題:

  • WhatsApp Business 帳戶未連結付款帳戶
  • 信用額度超出上限
  • 未設定或未啟用信用額度(付款帳戶)
  • WhatsApp Business 帳戶已遭刪除
  • WhatsApp Business 帳戶被停權
  • 未設定時區
  • 未設定貨幣
  • MessagingFor 要求(代表要求)正待處理或遭拒絕
  • 超出免費期間對話的限制門檻而未設定有效的付款方式

400

錯誤要求

131045

證書不正確

由於電話號碼註冊出錯,無法傳送訊息。

請先註冊電話號碼再重試。

500

內部伺服器錯誤

131047

再次互動訊息

自傳送對象上次回覆傳送方號碼的訊息已過了 24 小時。

請改用訊息範本向傳送對象傳送商家發起的訊息。

400

錯誤要求

131049

Meta 選擇了不送達訊息。

為保持健康的生態系統互動,這則訊息未被送達。

如果您收到此錯誤代碼,並懷疑是因受到限制而出現此代碼,請勿立即重試。限制可能會在不同時段生效,因此您可隔久一點再重試,直至訊息送達為止。

詳情請參閱每位用戶的營銷範本訊息限制

400

錯誤要求

131051

不支援的訊息類型

不支援的訊息類型。

請參閱訊息,了解支援的訊息類型,然後使用支援的訊息類型再試一次。

400

錯誤要求

131052

媒體下載錯誤

無法下載用戶傳送的媒體。

無法下載 WhatsApp 用戶訊息中包含的媒體。詳情請參閱收到此訊息時觸發的任何訊息 Webhooks 中包含的 error.error_data.details 值。

請 WhatsApp 用戶以 WhatsApp 以外的方式向您傳送媒體檔案。

400

錯誤要求

131053

媒體上載錯誤

無法上載訊息中使用的媒體。

由於一個或多個原因,我們無法上載媒體,例如媒體為不支援的媒體類型。

詳情請參閱此訊息傳送失敗時觸發的任何訊息 Webhooks 中包含的 error.error_data.details 值。

建議您檢查造成錯誤的任何媒體檔案,確認其實際上是否屬於支援的媒體類型。例如,在 UNIX 中,您可以透過指令行使用檔案檢查,來確定檔案的 MIME 類型:

file -I rejected-file.mov

您可據此確認是否支援此 MIME 類型。請參閱支援的媒體類型

400

錯誤要求

131057

帳戶處於維修保養模式

企業帳戶處於維修保養模式

WhatsApp Business 帳戶處於維修保養模式。原因之一可能是此帳戶正在接受輸送量升級。

500

錯誤要求

132000

範本參數數量不符

要求中包含的變數參數值數量與範本中定義的變數參數數量不相符。

請參閱訊息範本守則,確保要求包含範本中定義的所有變數參數值。

400

錯誤要求

132001

範本不存在

範本不設特定語言版本,或者尚未通過審查。

請確保您的範本已通過審查,且範本的名稱和語言設定準確無誤。請確保遵循訊息範本守則

404

找不到任何資料

132005

範本填入文字過長

翻譯文字過長。

請查看 WhatsApp 管理工具,以確認範本經已翻譯。請參閱品質評分和範本狀態

400

錯誤要求

132007

違反範本格式字元政策

範本內容違反了 WhatsApp 政策。

請參閱未通過審查的原因,確定違規的可能原因。

400

錯誤要求

132012

範本參數格式不符

變數參數值格式不正確。

要求中包含的變數參數值未使用範本中指定的格式。請參閱訊息範本守則

400

錯誤要求

132015

範本已暫停

範本因低品質而被暫停,因此無法在範本訊息中傳送此範本。

編輯範本以提升品質,並在通過核准後再次嘗試。

400

錯誤要求

132016

範本已停用

範本因低品質而被多次暫停,現被永久停用。

使用不同內容建立新範本。

400

錯誤要求

132068

流程已封鎖

流程處於封鎖狀態。

更正流程

400

錯誤要求

132069

流程已限速

流程處於限速狀態,過去 1 小時內已使用此流程傳送 10 則訊息。

更正流程

400

錯誤要求

133000

註銷未完成

之前的註銷嘗試失敗。

重新註銷號碼後再註冊

500

內部伺服器錯誤

133004

伺服器暫時無法使用

伺服器暫時無法使用。

請先查看 WhatsApp Business 平台狀態頁面,在了解 API 狀態資訊並檢查回應 details 值後再重試。

503

無法提供此服務

133005

雙重驗證 PIN 碼不符

雙重驗證 PIN 碼不正確。

確認要求中包含的雙重驗證 PIN 碼正確。


若要重設雙重驗證 PIN 碼,請按照下列步驟操作:


  1. 停用雙重驗證
  2. 電話號碼端點傳送包含新 PIN 碼的 POST 要求。

400

錯誤要求

133006

需要重新驗證電話號碼

需要驗證電話號碼才能進行註冊。

驗證電話號碼後再註冊。

400

錯誤要求

133008

雙重驗證 PIN 碼輸入錯誤次數過多

此電話號碼的雙重驗證 PIN 碼輸入錯誤次數過多。

請在 details 回應值中指定的時間後重試。

400

錯誤要求

133009

過快輸入雙重驗證 PIN 碼

過快輸入雙重驗證 PIN 碼。

請先查看 details 回應值再重試。

400

錯誤要求

133010

電話號碼未註冊

未在 WhatsApp Business 平台上註冊電話號碼。

請先註冊電話號碼再重試。

400

錯誤要求

133015

請等待幾分鐘,然後再嘗試註冊此手機號碼

您正在嘗試註冊的電話號碼近期被刪除,但刪除尚未完成。

請等待 5 分鐘,然後再重新嘗試傳送要求。

400

錯誤要求

135000

一般用戶錯誤

您的要求參數出現未知錯誤,因此無法傳送訊息。

請參閱端點的參考資料,確認您查詢端點所使用的語法是否正確。如果您在回應中持續收到此錯誤代碼,請聯絡客戶支援團隊

400

錯誤要求