บทสนทนา
รายการบทสนทนา
แสดงบทสนทนาแบบเรียลไทม์ limit 1..100 ค่าเริ่มต้น 20 type ต้องเป็นค่า user / group / channel แบบตรงกันและไม่ trim สำหรับ WhatsApp หากไม่ส่ง label_id จะคืนเฉพาะ starred / “特别关注” ส่วน cursor ผิดอาจถูกจัดการต่างกันตาม provider
https://api.unifyport.ai/v1/accounts/{account_id}/conversationsช่องทางที่รองรับ
ก่อนเรียกใช้
ใช้ X-Api-Key ของ workspace เจ้าของทรัพยากรบนเซิร์ฟเวอร์ แทนค่าตัวอย่างทั้งหมดก่อนเรียกใช้
ที่มาของพารามิเตอร์
- account_id
- รับ data.id จากการสร้างหรือค้นหาบัญชี รหัสเป็นของ workspace ที่ระบุด้วย X-Api-Key ดูบัญชี
พารามิเตอร์คำขอ
ส่วนหัว
X-Api-KeyAPI key ของพื้นที่ทำงาน ระบบจะระบุพื้นที่ทำงานจากส่วนหัวนี้
พารามิเตอร์ใน path
account_idตัวระบุที่ใช้ใน route ของ conversations
พารามิเตอร์ Query
typeค่าที่ตรงกับ enum ทุกตัวอักษร ได้แก่ user, group หรือ channel คั่นด้วยจุลภาค โดยไม่ตัดช่องว่าง ไม่แปลงตัวพิมพ์ และไม่ละเว้นรายการว่าง ค่าที่ไม่ถูกต้องคืน 400 invalid_conversation_type สำหรับ WhatsApp ค่า group รวมกลุ่มประกาศของชุมชนด้วย และบทสนทนากลุ่ม WhatsApp ทั้งหมดคืน type=group
cursorcursor แบบ opaque ของ provider ให้ส่ง next_cursor จากคำตอบก่อนหน้ากลับไปโดยไม่แก้ไข ละไว้หรือเว้นว่างสำหรับหน้าแรก cursor ที่ปลอม หมดอายุ หรือนำมาใช้ข้ามการค้นหา อาจถูกละเลย รีเซ็ตเป็นหน้าแรก หรือทำให้เกิดข้อผิดพลาดจาก provider จึงไม่ควรคาดหวังว่าจะได้ 400 เสมอ
limitขนาดหน้าตั้งแต่ 1 ถึง 100 ค่าเริ่มต้นดูในคำอธิบาย endpoint
minimum: 1 · maximum: 100
label_idตัวระบุ label แบบตรงกันทั้งหมด สำหรับ WhatsApp หากละไว้จะคืนบทสนทนา starred / “特别关注”
เนื้อหาของคำขอ
จุดเชื่อมต่อนี้ไม่ต้องใช้เนื้อหา JSON
ทำความเข้าใจผลลัพธ์
พิจารณาผลจากฟิลด์คำตอบและสถานะ HTTP ของ API นี้ แล้วเลือกขั้นตอนถัดไปจากคำสั่งที่เกี่ยวข้อง
การตอบกลับ 200 OK
{
"request_id": "<REQUEST_ID>",
"data": {
"items": [
{
"conversation_id": "peer_example",
"type": "user",
"title": "Display name",
"avatar_url": "",
"unread_count": 3,
"last_message_at": "2026-05-13T10:00:00Z"
}
],
"next_cursor": "",
"has_more": false
}
}
เนื้อหาการตอบกลับ
conversation_idตัวระบุบทสนทนา ใช้เป็นเป้าหมายเมื่อส่งข้อความหรือเรียก route ของบทสนทนา
typeประเภทบทสนทนามาตรฐาน: user, group หรือ channel กลุ่มประกาศของชุมชน WhatsApp ยังคงใช้ group
enum: user, group, channel
titleชื่อแสดงผลของบทสนทนา
usernameusername ของบทสนทนาฝั่ง provider เมื่อมีค่า
avatar_urlURL ของรูปประจำตัว หรือสตริงว่างเมื่อไม่มีการตั้งค่า
descriptionคำอธิบายของกลุ่มหรือ channel เมื่อมีค่า
last_message_attimestamp แบบ RFC3339 ของข้อความล่าสุด
format: date-time
last_message_textตัวอย่างข้อความล่าสุด เมื่อมีค่า
unread_countจำนวนข้อความที่ยังไม่อ่านในบทสนทนา
format: int64
members_countจำนวนสมาชิก; คืนค่าสำหรับบทสนทนาประเภทกลุ่ม
format: int64
subscribers_countจำนวนผู้ติดตามของบทสนทนาแบบ channel เมื่อมีค่า
format: int64
is_pinnedบัญชีที่เชื่อมต่อปักหมุดบทสนทนานี้หรือไม่
is_mutedบัญชีที่เชื่อมต่อปิดเสียงบทสนทนานี้หรือไม่
created_atเวลาสร้างบทสนทนาที่ provider รายงาน เมื่อมีค่า
format: date-time
extraobjectฟิลด์เพิ่มเติมเฉพาะ provider บทสนทนากลุ่ม WhatsApp อาจมีการจัดประเภทกลุ่มประกาศ แต่รายการบทสนทนาไม่รับประกันว่าจะมีข้อมูลนี้
extraฟิลด์เพิ่มเติมเฉพาะ provider บทสนทนากลุ่ม WhatsApp อาจมีการจัดประเภทกลุ่มประกาศ แต่รายการบทสนทนาไม่รับประกันว่าจะมีข้อมูลนี้
is_announcement_groupมีเฉพาะกลุ่ม WhatsApp ค่า true หมายถึงยืนยันว่าเป็นกลุ่มประกาศของชุมชน ส่วน false หมายถึงข้อมูลครั้งนี้ยืนยันว่าไม่ตรงตามเงื่อนไขของกลุ่มประกาศ หากไม่มีฟิลด์นี้หมายถึงไม่ทราบ และจะไม่คืน null การจัดประเภทนี้ไม่ได้ระบุว่าบัญชีปัจจุบันมีสิทธิ์ส่งข้อความ
next_cursorcursor แบบ opaque สำหรับหน้าถัดไป ส่งกลับมาเป็น cursor; สตริงว่างหมายถึงไม่มีหน้าต่อไปแล้ว
has_moreเป็น true เมื่อมีผลลัพธ์เพิ่มเติมนอกเหนือจากหน้านี้
การตอบกลับ
200200 OK
คำขอสำเร็จ ดูตัวอย่างเนื้อหาตอบกลับด้านบน
400Bad Request
เนื้อหาของคำขอ path หรือพารามิเตอร์ไม่ถูกต้อง
401Unauthorized
ส่วนหัว X-Api-Key หายไปหรือไม่ถูกต้อง
403Forbidden
ระบบระบุคำขอได้ แต่ไม่อนุญาตให้ดำเนินการนี้
404Not Found
ไม่พบทรัพยากรที่ร้องขอ โปรดตรวจสอบ error.code ร่วมกับการดำเนินการปัจจุบัน
409Conflict
การดำเนินการขัดแย้งกับบัญชีของผู้ให้บริการหรือทรัพยากรที่มีอยู่
500Internal Server Error
บริการพบข้อผิดพลาดที่ไม่คาดคิด
501Not Implemented
provider ที่เลือกยังไม่รองรับการดำเนินการนี้
502Bad Gateway
อะแดปเตอร์หรือ upstream provider ไม่สามารถทำรายการให้เสร็จได้
เมื่อคำขอล้มเหลว
ตรวจ HTTP และ error.code/numeric_code เก็บ request_id แล้วแก้พารามิเตอร์ ยืนยันตัวตนต่อ หรือตรวจ runtime ตามสาเหตุ ตรวจผลครั้งก่อนก่อนส่งหรือเขียนซ้ำ อ้างอิงรหัสข้อผิดพลาด
อ่านสถานะ HTTP, error.code และ error.numeric_code ร่วมกับคำสั่งที่เรียก รหัสตัวเลขเป็นสตริง เก็บ request_id เพื่อตรวจปัญหา ค่านี้ไม่ใช่คีย์ป้องกันการทำซ้ำหรือรหัสงาน
- invalid_conversation_type · 37000 · 400
type ต้องเป็น user, group หรือ channel
วิธีจัดการและลองใหม่: แก้พารามิเตอร์ตามคำสั่งและเงื่อนไขช่องทางก่อนเรียกใหม่ การส่งคำขอผิดแบบเดิมซ้ำไม่ช่วยแก้ข้อผิดพลาด
JSON ตัวอย่าง โดย message เปลี่ยนตามสาเหตุจริง · 400 · 37000
{ "request_id": "req_example", "error": { "code": "invalid_conversation_type", "numeric_code": "37000", "message": "Field 'type' must be one of: user, group, channel" } }- invalid_request · 10000 · 400
ตรวจ JSON และฟิลด์ที่จำเป็น
วิธีจัดการและลองใหม่: แก้พารามิเตอร์ตามคำสั่งและเงื่อนไขช่องทางก่อนเรียกใหม่ การส่งคำขอผิดแบบเดิมซ้ำไม่ช่วยแก้ข้อผิดพลาด
JSON ตัวอย่าง โดย message เปลี่ยนตามสาเหตุจริง · 400 · 10000
{ "request_id": "req_example", "error": { "code": "invalid_request", "numeric_code": "10000", "message": "Invalid request parameters" } }- invalid_target_workspace · 11003 · 400
เวิร์กสเปซเป้าหมายที่กำหนดทับว่างหรือรูปแบบไม่ถูกต้อง ให้ลบเฮดเดอร์กำหนดทับและใช้ API Key ของเวิร์กสเปซเป้าหมาย
เงื่อนไข: ใช้เมื่อคำขอมีเฮดเดอร์ X-Workspace-Id เพื่อระบุเวิร์กสเปซทับ
วิธีจัดการและลองใหม่: แก้พารามิเตอร์ตามคำสั่งและเงื่อนไขช่องทางก่อนเรียกใหม่ การส่งคำขอผิดแบบเดิมซ้ำไม่ช่วยแก้ข้อผิดพลาด
JSON ตัวอย่าง โดย message เปลี่ยนตามสาเหตุจริง · 400 · 11003
{ "request_id": "req_example", "error": { "code": "invalid_target_workspace", "numeric_code": "11003", "message": "Invalid target workspace" } }- provider_invalid_request · 30001 · 400
ตรวจฟิลด์และรูปแบบเฉพาะช่องทาง
วิธีจัดการและลองใหม่: แก้พารามิเตอร์ตามคำสั่งและเงื่อนไขช่องทางก่อนเรียกใหม่ การส่งคำขอผิดแบบเดิมซ้ำไม่ช่วยแก้ข้อผิดพลาด
JSON ตัวอย่าง โดย message เปลี่ยนตามสาเหตุจริง · 400 · 30001
{ "request_id": "req_example", "error": { "code": "provider_invalid_request", "numeric_code": "30001", "message": "Provider rejected the request" } }- unsupported_conversation_type · 37001 · 400
ช่องทางไม่รองรับการทำงานนี้ ให้เลือกจากตารางที่รองรับ
วิธีจัดการและลองใหม่: เลือกช่องทางและคำสั่งที่เอกสารระบุว่ารองรับ การส่งซ้ำไม่เพิ่มความสามารถหรือเปิดสิทธิ์เบต้า
JSON ตัวอย่าง โดย message เปลี่ยนตามสาเหตุจริง · 400 · 37001
{ "request_id": "req_example", "error": { "code": "unsupported_conversation_type", "numeric_code": "37001", "message": "Operation not supported for this conversation type" } }- invalid_api_key · 11001 · 401
ตรวจว่า API Key ถูกต้องและเปิดใช้งานอยู่
วิธีจัดการและลองใหม่: เก็บ request_id และรหัสแบบมีโครงสร้าง ตรวจคำสั่งปัจจุบันก่อนเลือกการดำเนินการถัดไป
JSON ตัวอย่าง โดย message เปลี่ยนตามสาเหตุจริง · 401 · 11001
{ "request_id": "req_example", "error": { "code": "invalid_api_key", "numeric_code": "11001", "message": "Invalid API key" } }- missing_api_key · 11000 · 401
เพิ่มส่วนหัว X-Api-Key
วิธีจัดการและลองใหม่: เก็บ request_id และรหัสแบบมีโครงสร้าง ตรวจคำสั่งปัจจุบันก่อนเลือกการดำเนินการถัดไป
ตัวอย่าง · 401 · 11000
{ "request_id": "req_xxx", "error": { "code": "missing_api_key", "numeric_code": "11000", "message": "Missing X-Api-Key header" } }- workspace_override_forbidden · 11002 · 403
คำขอพยายามระบุเวิร์กสเปซทับโดย API Key นี้ไม่มีสิทธิ์ ให้ลบเฮดเดอร์กำหนดทับและใช้ API Key ของเวิร์กสเปซเป้าหมาย
เงื่อนไข: ใช้เมื่อคำขอมีเฮดเดอร์ X-Workspace-Id เพื่อระบุเวิร์กสเปซทับ
วิธีจัดการและลองใหม่: เก็บ request_id และรหัสแบบมีโครงสร้าง ตรวจคำสั่งปัจจุบันก่อนเลือกการดำเนินการถัดไป
JSON ตัวอย่าง โดย message เปลี่ยนตามสาเหตุจริง · 403 · 11002
{ "request_id": "req_example", "error": { "code": "workspace_override_forbidden", "numeric_code": "11002", "message": "Workspace override is not allowed" } }- target_workspace_not_found · 11004 · 404
ไม่พบเวิร์กสเปซที่กำหนดทับหรือใช้งานไม่ได้ ตรวจเจ้าของเวิร์กสเปซ ลบเฮดเดอร์กำหนดทับ และใช้ API Key ของเวิร์กสเปซเป้าหมาย การส่งซ้ำไม่เพิ่มสิทธิ์
เงื่อนไข: ใช้เมื่อคำขอมีเฮดเดอร์ X-Workspace-Id เพื่อระบุเวิร์กสเปซทับ
วิธีจัดการและลองใหม่: ตรวจรหัสเป้าหมาย เจ้าของทรัพยากร และเวิร์กสเปซปัจจุบัน อย่าถือว่าเป้าหมายที่ยืนยันแล้วว่าไม่มีหรือเข้าไม่ถึงเป็นความขัดข้องชั่วคราวที่ควรลองซ้ำอัตโนมัติ
JSON ตัวอย่าง โดย message เปลี่ยนตามสาเหตุจริง · 404 · 11004
{ "request_id": "req_example", "error": { "code": "target_workspace_not_found", "numeric_code": "11004", "message": "Target workspace not found" } }- account_binding_not_found · 30006 · 409
บัญชียังไม่มีการผูกกับการเชื่อมต่อช่องทางที่ใช้งานอยู่ ตรวจสถานะบัญชี
วิธีจัดการและลองใหม่: ตรวจสถานะยืนยันตัวตนและ runtime แล้วเลือกรีเฟรช เริ่ม หรือเชื่อมต่อใหม่ตามเป้าหมายและความสามารถของช่องทาง ปัญหาการเชื่อมต่อเพียงอย่างเดียวไม่ได้ยืนยันว่าออกจากระบบ ตรวจให้เป็น running ก่อนทำงานที่ต้องใช้การเชื่อมต่อ
JSON ตัวอย่าง โดย message เปลี่ยนตามสาเหตุจริง · 409 · 30006
{ "request_id": "req_example", "error": { "code": "account_binding_not_found", "numeric_code": "30006", "message": "Account is not bound to an available server" } }- egress_configuration_pending · 20032 · 409
ยังยืนยันหรือโหลดการตั้งค่าเครือข่ายเริ่มต้นของแพลตฟอร์มไม่ได้ ไม่ได้หมายความว่าบัญชีออกจากระบบแล้ว
เงื่อนไข: การดำเนินการนี้ใช้ความจุเครือข่ายที่แพลตฟอร์มจัดสรรหรือการตั้งค่าเครือข่ายเริ่มต้นที่ผูกไว้กับบัญชี
วิธีจัดการและลองใหม่: เก็บ request_id และตรวจสอบบัญชีหรือผลการสร้างก่อนเขียนซ้ำ รอให้ความจุหรือการตั้งค่ากลับมาพร้อม หรือแจ้งฝ่ายสนับสนุน อย่าสร้างบัญชี เปลี่ยนเครือข่าย หรือเริ่มบัญชีใหม่ซ้ำโดยอัตโนมัติ
JSON ตัวอย่าง โดย message เปลี่ยนตามสาเหตุจริง · 409 · 20032
{ "request_id": "req_example", "error": { "code": "egress_configuration_pending", "numeric_code": "20032", "message": "Account network configuration is pending verification" } }- provider_not_ready · 30009 · 409
การเชื่อมต่อยังไม่พร้อม ตรวจการอนุญาตและ runtime_status ก่อนลองใหม่
วิธีจัดการและลองใหม่: ตรวจสถานะยืนยันตัวตนและ runtime แล้วเลือกรีเฟรช เริ่ม หรือเชื่อมต่อใหม่ตามเป้าหมายและความสามารถของช่องทาง ปัญหาการเชื่อมต่อเพียงอย่างเดียวไม่ได้ยืนยันว่าออกจากระบบ ตรวจให้เป็น running ก่อนทำงานที่ต้องใช้การเชื่อมต่อ
JSON ตัวอย่าง โดย message เปลี่ยนตามสาเหตุจริง · 409 · 30009
{ "request_id": "req_example", "error": { "code": "provider_not_ready", "numeric_code": "30009", "message": "Provider client is not ready" } }- provider_not_ready · 30014 · 409
ไม่มีอินสแตนซ์ช่องทางที่บัญชีนี้ต้องใช้ เป็นปัญหาความพร้อมของ runtime ไม่ใช่หลักฐานว่าการยืนยันตัวตนหมดอายุ
วิธีจัดการและลองใหม่: ตรวจสถานะยืนยันตัวตนและ runtime แล้วเลือกรีเฟรช เริ่ม หรือเชื่อมต่อใหม่ตามเป้าหมายและความสามารถของช่องทาง ปัญหาการเชื่อมต่อเพียงอย่างเดียวไม่ได้ยืนยันว่าออกจากระบบ ตรวจให้เป็น running ก่อนทำงานที่ต้องใช้การเชื่อมต่อ
ช่องทาง: WhatsApp
JSON ตัวอย่าง โดย message เปลี่ยนตามสาเหตุจริง · 409 · 30014
{ "request_id": "req_example", "error": { "code": "provider_not_ready", "numeric_code": "30014", "message": "Provider instance is missing" } }- provider_not_ready · 30015 · 409
runtime ของช่องทางหยุดแล้ว ตรวจว่าตั้งใจหยุดหรือไม่ก่อนเริ่ม การหยุด runtime ไม่ได้แปลว่าออกจากระบบ
วิธีจัดการและลองใหม่: ตรวจสถานะยืนยันตัวตนและ runtime แล้วเลือกรีเฟรช เริ่ม หรือเชื่อมต่อใหม่ตามเป้าหมายและความสามารถของช่องทาง ปัญหาการเชื่อมต่อเพียงอย่างเดียวไม่ได้ยืนยันว่าออกจากระบบ ตรวจให้เป็น running ก่อนทำงานที่ต้องใช้การเชื่อมต่อ
ช่องทาง: WhatsApp
JSON ตัวอย่าง โดย message เปลี่ยนตามสาเหตุจริง · 409 · 30015
{ "request_id": "req_example", "error": { "code": "provider_not_ready", "numeric_code": "30015", "message": "Provider runtime is stopped" } }- list_conversations_failed · 20020 · 500
ตรวจ account_id และใช้ X-Api-Key ของเวิร์กสเปซเจ้าของบัญชี คีย์ปัจจุบันไม่สามารถเข้าถึงบัญชีที่ไม่พบในเวิร์กสเปซนี้
เงื่อนไข: ใช้เมื่อไม่พบบัญชี โดยคงสถานะ HTTP และ code ของคำสั่งเดิม และใช้ numeric_code ระบุว่าบัญชีไม่มีอยู่
วิธีจัดการและลองใหม่: ตรวจรหัสเป้าหมาย เจ้าของทรัพยากร และเวิร์กสเปซปัจจุบัน อย่าถือว่าเป้าหมายที่ยืนยันแล้วว่าไม่มีหรือเข้าไม่ถึงเป็นความขัดข้องชั่วคราวที่ควรลองซ้ำอัตโนมัติ
JSON ตัวอย่าง โดย message เปลี่ยนตามสาเหตุจริง · 500 · 20020
{ "request_id": "req_example", "error": { "code": "list_conversations_failed", "numeric_code": "20020", "message": "Account not found" } }- list_conversations_failed · 30010 · 500
ช่องทางทำคำสั่งไม่สำเร็จ message อาจมีสาเหตุต้นฉบับต่อจาก “Provider operation failed:” ข้อความสาเหตุเปลี่ยนได้และไม่ใช่อินเทอร์เฟซคงที่สำหรับโปรแกรม
เงื่อนไข: ใช้เมื่อช่องทางไม่มีประเภทความล้มเหลวที่เจาะจงกว่า โดยคงข้อผิดพลาดของคำสั่งปัจจุบัน
วิธีจัดการและลองใหม่: เก็บ request_id และตรวจรหัสเป้าหมายกับสิทธิ์เข้าถึงของบัญชี ตรวจสาเหตุก่อนอ่านใหม่ การค้นหาล้มเหลวไม่ได้แปลว่าข้อมูลว่างหรือไม่มีทรัพยากร
ช่องทาง: WhatsApp
JSON ตัวอย่าง โดย message เปลี่ยนตามสาเหตุจริง · 500 · 30010
{ "request_id": "req_example", "error": { "code": "list_conversations_failed", "numeric_code": "30010", "message": "Provider operation failed" } }- list_conversations_failed · 37003 · 500
รายการบทสนทนา: บริการไม่สามารถให้ผลการค้นหาที่ใช้ได้
วิธีจัดการและลองใหม่: เก็บ request_id และตรวจรหัสเป้าหมายกับสิทธิ์เข้าถึงของบัญชี ตรวจสาเหตุก่อนอ่านใหม่ การค้นหาล้มเหลวไม่ได้แปลว่าข้อมูลว่างหรือไม่มีทรัพยากร
JSON ตัวอย่าง โดย message เปลี่ยนตามสาเหตุจริง · 500 · 37003
{ "request_id": "req_example", "error": { "code": "list_conversations_failed", "numeric_code": "37003", "message": "Failed to list conversations" } }- unsupported_by_provider · 30003 · 501
ช่องทางไม่รองรับการทำงานนี้ ให้เลือกจากตารางที่รองรับ
วิธีจัดการและลองใหม่: เลือกช่องทางและคำสั่งที่เอกสารระบุว่ารองรับ การส่งซ้ำไม่เพิ่มความสามารถหรือเปิดสิทธิ์เบต้า
ตัวอย่าง · 501 · 30003
{ "request_id": "req_xxx", "error": { "code": "unsupported_by_provider", "numeric_code": "30003", "message": "Operation not supported by this provider" } }- provider_adapter_not_found · 30004 · 502
บริการช่องทางไม่พร้อมใช้งาน ตรวจสถานะหรือลองภายหลัง และยืนยันผลเดิมก่อนลองเขียนข้อมูลซ้ำ
วิธีจัดการและลองใหม่: เก็บ request_id และตรวจรหัสเป้าหมายกับสิทธิ์เข้าถึงของบัญชี ตรวจสาเหตุก่อนอ่านใหม่ การค้นหาล้มเหลวไม่ได้แปลว่าข้อมูลว่างหรือไม่มีทรัพยากร
JSON ตัวอย่าง โดย message เปลี่ยนตามสาเหตุจริง · 502 · 30004
{ "request_id": "req_example", "error": { "code": "provider_adapter_not_found", "numeric_code": "30004", "message": "Provider adapter unavailable" } }- provider_unavailable · 30002 · 502
บริการช่องทางไม่พร้อมใช้งาน ตรวจสถานะหรือลองภายหลัง และยืนยันผลเดิมก่อนลองเขียนข้อมูลซ้ำ
วิธีจัดการและลองใหม่: เก็บ request_id และตรวจรหัสเป้าหมายกับสิทธิ์เข้าถึงของบัญชี ตรวจสาเหตุก่อนอ่านใหม่ การค้นหาล้มเหลวไม่ได้แปลว่าข้อมูลว่างหรือไม่มีทรัพยากร
ตัวอย่าง · 502 · 30002
{ "request_id": "req_example_provider_unavailable", "error": { "code": "provider_unavailable", "numeric_code": "30002", "message": "Provider service unavailable" } }- provider_unavailable · 30010 · 502
ช่องทางทำคำสั่งไม่สำเร็จ message อาจมีสาเหตุต้นฉบับต่อจาก “Provider operation failed:” ข้อความสาเหตุเปลี่ยนได้และไม่ใช่อินเทอร์เฟซคงที่สำหรับโปรแกรม
วิธีจัดการและลองใหม่: เก็บ request_id และตรวจรหัสเป้าหมายกับสิทธิ์เข้าถึงของบัญชี ตรวจสาเหตุก่อนอ่านใหม่ การค้นหาล้มเหลวไม่ได้แปลว่าข้อมูลว่างหรือไม่มีทรัพยากร
ช่องทาง: WhatsApp
ตัวอย่าง · 502 · 30010
{ "request_id": "req_example_operation_failed", "error": { "code": "provider_unavailable", "numeric_code": "30010", "message": "Provider operation failed: Example operation could not be completed" } }- provider_unavailable · 30021 · 502
ขณะส่งคำขอนี้ บัญชีไม่ได้เชื่อมต่อกับแพลตฟอร์มส่งข้อความ การเพิ่มผู้ติดต่อ WhatsApp อาจตอบกลับ 500 / create_contact_failed / 30021 ซึ่งไม่ได้ยืนยันว่าออกจากระบบแล้วหรือสถานะปัจจุบันยังเป็น disconnected ให้ตรวจสอบสถานะปัจจุบันก่อนเลือกวิธีกู้คืน
วิธีจัดการและลองใหม่: พักงานที่ต้องใช้การเชื่อมต่อ เรียก POST /v1/accounts/{account_id}/runtime/refresh ก่อน กู้คืนตามสถานะล่าสุดและยืนยัน runtime_status=running ก่อนเรียกงานธุรกิจ ตรวจผลการเขียนครั้งก่อนก่อนส่งซ้ำ
ช่องทาง: WhatsApp
ตัวอย่าง · 502 · 30021
{ "request_id": "req_example_connection_disconnected", "error": { "code": "provider_unavailable", "numeric_code": "30021", "message": "example operation: websocket not connected" } }