參考
API 錯誤與錯誤代碼
錯誤使用 HTTP 狀態碼,並始終具有相同的 JSON 主體。param 在單一欄位為原因時命名該欄位。每個回應都有一個 X-Request-Id 標頭:在支援票中引用它。
{
"error": {
"code": "text_too_long",
"message": "The text is longer than 10 segments (1,530 GSM-7 or 670 UCS-2 characters).",
"param": "text",
"doc_url": "https://bulksmsapi.cc/en/docs/errors#text_too_long"
}
}代碼
| code | HTTP | 原因 | 金額 |
|---|---|---|---|
| invalid_json | 400 | 請求主體不是 JSON 物件,或 Content-Type 未設為 application/json。 | 修正請求主體。未收取任何費用。 |
| invalid_request | 400 | 缺少欄位或類型錯誤;參數名稱已標示。 | 修正該欄位。未收取任何費用。 |
| invalid_number | 400 | 請求中無符合 E.164 格式的號碼(+ 號開頭,7 至 15 位數字)。 | 檢查號碼格式。未收取任何費用。 |
| unsupported_country | 400 / 404 | 無符合號碼的計費國家,或 GET /v1/pricing/{country} 使用了未知代碼。 | 檢查國家清單。未收取任何費用。 |
| text_too_long | 400 | 文字內容超過 10 個分段。 | 縮減文字長度。未收取任何費用。 |
| too_many_recipients | 400 | 單一請求超過 10,000 位收件人。 | 拆分收件人清單。未收取任何費用。 |
| schedule_out_of_range | 400 | send_at 時間無效,需設定在現在時間 2 分鐘後至 45 天內。 | 選擇其他時間。未收取任何費用。 |
| suppressed | 400 | 請求中所有號碼皆位於您的發送排除清單(控制台設定)。 | 未發送任何訊息,也未收取費用。 |
| unauthorized | 401 | 缺少 Authorization 標頭、格式錯誤,或金鑰已撤銷。 | 請使用有效的金鑰。未收取任何費用。 |
| top_up_required | 402 | 餘額不足支付請求費用;訊息中會顯示兩者金額。 | 請充值後重新發送。未收取任何費用。 |
| not_found | 404 | 此帳號中無此 id,或端點不存在。 | 請檢查 id 與路徑。 |
| idempotency_conflict | 409 | 此 Idempotency-Key 在過去 24 小時內曾用於不同請求主體。 | 請為新請求使用新的金鑰。 |
| not_cancelable | 409 | 僅可取消預約批次;此批次已開始或完成。 | 無任何變更。 |
| rate_limited | 429 | 此金鑰在過去 60 秒內發送超過 600 次請求。 | 請等待 Retry-After 秒後重試。未收取任何費用。 |
| server_error | 500 | 系統端發生錯誤。 | 請使用相同 Idempotency-Key 重試。 |
重試
- 429 以外的 4xx 錯誤需要變更請求;再次發送相同的請求會得到相同的錯誤。
- 遇到 429 時,等待 Retry-After 中指定的秒數。
- 遇到 5xx 或網路超時時,使用相同的 Idempotency-Key 重試:如果第一個請求已被接受,您會得到其回應,而不是再次發送。