เอกสารอ้างอิง API

บัญชี

สร้างบัญชี

สร้างบัญชี provider โดยต้องระบุ auth_mode เป็น qrcode, code หรือ session หากคู่ provider + auth_mode ต้องใช้หมายเลขโทรศัพท์ ให้ส่ง provider_data.phone ซึ่งระบบจะเก็บไว้ใช้ในขั้นยืนยันตัวตนถัดไป โหมดกระเป๋าสร้างบัญชีได้โดยตรง ไม่ต้องขอราคาก่อน 201 ยืนยันการสร้างและหักเงิน แต่ต้องดู billing.state ก่อนยืนยันตัวตน การสร้างพร้อมกันใน workspace เดียวกันได้ 409 wallet_account_creation_in_progress Idempotency-Key เป็นทางเลือก หลังหมดเวลาให้ตรวจสอบผลก่อน และใช้คีย์เดิมเมื่อจะลองซ้ำเพื่อป้องกันการซื้อซ้ำ

POSThttps://api.unifyport.ai/v1/accounts

ช่องทางที่รองรับ

all

ก่อนเรียกใช้

ใช้ X-Api-Key ของ workspace เจ้าของทรัพยากรบนเซิร์ฟเวอร์ แทนค่าตัวอย่างทั้งหมดก่อนเรียกใช้

ใช้ API Key ของพื้นที่ทำงานเป้าหมาย บัญชีโหมดกระเป๋าเงินคิดค่าบริการเป็น USD รอบละ 30 วัน ดูยอดคงเหลือและเติมเงินได้ใน Dashboard

พารามิเตอร์คำขอ

ส่วนหัว

X-Api-Key
stringจำเป็น

API key ของพื้นที่ทำงาน ระบบจะระบุพื้นที่ทำงานจากส่วนหัวนี้

Content-Type
stringจำเป็น

ใช้ application/json เมื่อต้องส่งเนื้อหาของคำขอเป็น JSON

Idempotency-Key
string

Idempotency-Key เป็นทางเลือกสำหรับการสร้างแบบกระเป๋า ใช้คีย์เดิมเมื่อลองซ้ำหลังผลไม่ชัดเจน หากไม่ใช้คีย์ คำขอหลังรายการแรกเสร็จจะสร้างบัญชีใหม่

เนื้อหาของคำขอ

name
string

ชื่อบัญชีที่อ่านได้

provider
stringจำเป็น

ตัวระบุ provider สำหรับลูกค้า: telegram, whatsapp, whatsapp-protocol, line, twitter, zalo หรือ tiktok

enum: telegram, whatsapp, line, twitter, zalo, tiktok, whatsapp-protocol, x, x_client, twitter_client

region
stringจำเป็น

ภูมิภาคของผู้ให้บริการที่ใช้ในการจัดสรร เลือกภูมิภาคที่รายงานว่า allocatable: true จาก รายชื่อภูมิภาคของผู้ให้บริการ

minLength: 1

status
string

สถานะทางธุรกิจของบัญชี เช่น active หรือ inactive

runtime_status
string

สถานะ runtime ที่ร้องขอ เมื่อ provider รองรับการเปลี่ยนผ่านการตั้งค่าบัญชี

enum: unknown, starting, running, stopping, stopped, reconnecting, disconnected, error

auth_mode
stringจำเป็น

ต้องระบุเมื่อสร้างบัญชี: qrcode, code หรือ session

enum: qrcode, code, session

capabilities[]
string[]

สำหรับ PATCH ให้ละไว้เพื่อคงค่า ส่ง [] เพื่อล้าง และห้ามส่ง null

metadata
object

สำหรับ PATCH ให้ละไว้เพื่อคงค่า ส่ง {} เพื่อล้าง และห้ามส่ง null

provider_account_ref
string

ตัวตนบัญชีฝั่ง provider ซึ่งโดยปกติจะมีค่าหลังการยืนยันตัวตน

provider_data
object

การตั้งค่าผู้ให้บริการ PATCH ละไว้เพื่อคงค่า {} ล้างโดยไม่เติมข้อมูลรับรองเริ่มต้น และ null ใช้ไม่ได้ TikTok provider_data.enable_comment รับเฉพาะ Boolean ค่าเริ่มต้น false สตริง ตัวเลข และ null คืน 400 invalid_request การแก้ขณะออนไลน์ต้อง reconnect ความสำเร็จของ start ไม่ยืนยันว่าใช้ค่าใหม่แล้ว การปิดไม่ถอนเหตุการณ์ในคิว Telegram ใช้ api_id และ api_hash แบบไม่บังคับใน code, qrcode และ session ข้อมูลรับรองกำหนดเองต้องเป็นสตริงคู่จากแอปเดียวกัน การสร้างโดยไม่มีข้อมูลรับรองกำหนดเองและฟิลด์รับรองที่ละไว้ในการแทนที่ด้วยค่าที่ไม่ว่างจะใช้ค่าเริ่มต้นของแพลตฟอร์ม หากค่าเริ่มต้นที่จำเป็นไม่พร้อม คำขอจะล้มเหลว การเปลี่ยนค่าเริ่มต้นไม่แทนที่ข้อมูลรับรองบัญชีเดิม ห้ามบันทึกความลับลง log

proxy
object

การตั้งค่า proxy ขาออกแบบเลือกสำหรับบัญชีนี้

ทำความเข้าใจผลลัพธ์

โหมดกระเป๋าสร้างบัญชีได้โดยตรง ไม่ต้องขอราคาก่อน 201 ยืนยันการสร้างและหักเงิน แต่ต้องดู billing.state ก่อนยืนยันตัวตน การสร้างพร้อมกันใน workspace เดียวกันได้ 409 wallet_account_creation_in_progress Idempotency-Key เป็นทางเลือก หลังหมดเวลาให้ตรวจสอบผลก่อน และใช้คีย์เดิมเมื่อจะลองซ้ำเพื่อป้องกันการซื้อซ้ำ

การตอบกลับ 201 · PREPAID_QUOTA

{
  "request_id": "<REQUEST_ID>",
  "data": {
    "id": "acc_example",
    "name": "Telegram Production",
    "provider": "telegram",
    "region": "<REGION>",
    "status": "active",
    "runtime_status": "stopped",
    "auth_mode": "qrcode",
    "capabilities": [
      "send_message",
      "receive_message"
    ]
  }
}

การตอบกลับ 201 · ACCOUNT_WALLET_30D

{
  "request_id": "<REQUEST_ID>",
  "data": {
    "id": "acc_example",
    "name": "Messaging account",
    "provider": "telegram",
    "region": "<REGION>",
    "status": "active",
    "runtime_status": "stopped",
    "auth_mode": "qrcode",
    "capabilities": [
      "send_message",
      "receive_message"
    ],
    "billing": {
      "period_start_at": "2026-10-19T00:00:00Z",
      "period_end_at": "2026-11-18T00:00:00Z",
      "amount_minor": 1000,
      "currency": "USD",
      "operation_id": "op_example",
      "state": "ACTIVE"
    }
  }
}

เนื้อหาการตอบกลับ

provider_profile
object

โปรไฟล์ที่ผู้ให้บริการรายงาน เช่น display_name จะถูกละไว้ก่อนที่บัญชีจะยืนยันตัวตน

id
string

ตัวระบุแบบ opaque ของบัญชีในช่องทางที่เชื่อมต่อ สำหรับ WhatsApp อาจเป็น canonical LID ที่ไม่มี suffix ของอุปกรณ์

device_id
integer

หมายเลขอุปกรณ์ที่เข้าสู่ระบบ ซึ่งอาจปรากฏในรายละเอียดบัญชี WhatsApp เมื่อระบุเซสชันปัจจุบันได้ อาจเปลี่ยนหลังยืนยันตัวตนใหม่และไม่ใช่รหัสอุปกรณ์ถาวร

minimum: 0 · maximum: 65535

phone
string

หมายเลขโทรศัพท์ที่ normalize แล้ว ไม่มีช่องว่าง ขีด หรือเครื่องหมาย + นำหน้า

username
string

username ที่ provider รายงาน ถ้ามี

display_name
string

ชื่อแสดงผลของบัญชี สำหรับ WhatsApp จะสร้างโดยให้ BusinessName มาก่อนและใช้ PushName เป็นค่าทดแทน

push_name
string

PushName ที่ตั้งอยู่บนบัญชี WhatsApp ปัจจุบัน provider อื่นไม่ได้กำหนดความหมายของฟิลด์นี้

business_name
string

WhatsApp BusinessName; จะละฟิลด์นี้เมื่อ provider ไม่ส่งค่ากลับมา

first_name
string

ชื่อที่ provider รายงาน ถ้ามี

last_name
string

นามสกุลที่ provider รายงาน ถ้ามี

avatar_url
string

URL รูปประจำบัญชีที่ provider รายงาน

bio
string

ประวัติหรือข้อความสถานะที่ provider รายงาน

platform
string

ตัวระบุแพลตฟอร์มการเข้าสู่ระบบที่ WhatsApp รายงานระหว่างการจับคู่ ให้ถือเป็นสตริงทึบและรองรับค่าที่ไม่รู้จัก provider อื่นไม่ได้กำหนดความหมายของฟิลด์นี้ และฟิลด์นี้ต่างจาก device_platform

billing
object

รอบที่จ่ายแล้วเฉพาะบัญชีกระเป๋า ห้ามอนุมานซื้อจากยอดเงิน

period_start_at
string

เริ่มรอบที่จ่ายแล้วจากเซิร์ฟเวอร์

format: date-time

period_end_at
string

สิ้นสุดรอบที่จ่ายแล้วจากเซิร์ฟเวอร์

format: date-time

amount_minor
integer

ยอดคงที่จากเซิร์ฟเวอร์หน่วยเซนต์ USD ใช้จำนวนเต็มแม่นยำ

minimum: 1 · format: int64

currency
string

เฉพาะ USD

operation_id
string

รหัสสาธารณะจาก billing.operation_id หรือผลลบ ใช้เดิมในพื้นที่เดิม

state
string

สถานะคิดเงินหรือการดำเนินการ ไม่ยืนยันตัวตน ออนไลน์ หรือคืนเงินแล้ว

enum: ACTIVE, DELETING, DELETED, COMPENSATED, REVIEW

id
string

ตัวระบุบัญชีที่ไม่ซ้ำ (acc_...) ใช้ใน route ที่อิงกับบัญชี

name
string

ชื่อบัญชีที่อ่านได้

provider
string

รหัสช่องทาง ใช้ค่าที่ API ส่งกลับโดยไม่แก้ไขในการเรียกครั้งต่อไป ดูค่าที่ API นี้คืนได้จาก enum ด้านล่าง

enum: telegram, whatsapp, line, twitter, zalo, tiktok, whatsapp-protocol

region
string

ภูมิภาคของผู้ให้บริการที่บัญชีถูกจัดสรรไว้

status
string

สถานะ lifecycle ของบัญชี เช่น active

runtime_status
string

สถานะ runtime ที่ปรับเป็นมาตรฐาน หนึ่งในค่า unknown, starting, running, stopping, stopped, reconnecting, disconnected หรือ error

enum: unknown, starting, running, stopping, stopped, reconnecting, disconnected, error

auth_mode
string

flow การยืนยันตัวตนที่บัญชีใช้: code, qrcode หรือ session

capabilities[]
string[]

ความสามารถที่เปิดใช้สำหรับบัญชี เช่น send_message และ receive_message

metadata
object

label สภาพแวดล้อมของคุณเองที่เก็บไว้บนบัญชี

provider_account_ref
string

ตัวระบุฝั่งผู้ให้บริการที่คุณแนบได้เพื่อเชื่อมโยงบัญชีกับระบบของคุณเอง

proxy
object

การตั้งค่า proxy ขาออกของบัญชี เมื่อมีการกำหนดไว้

การตอบกลับ

201

201 Created

คำขอสำเร็จ ดูตัวอย่างเนื้อหาตอบกลับด้านบน

400

Bad Request

เนื้อหาของคำขอ path หรือพารามิเตอร์ไม่ถูกต้อง

401

Unauthorized

ส่วนหัว X-Api-Key หายไปหรือไม่ถูกต้อง

403

Forbidden

ระบบระบุคำขอได้ แต่ไม่อนุญาตให้ดำเนินการนี้

404

Not Found

ไม่พบทรัพยากรที่ร้องขอ โปรดตรวจสอบ error.code ร่วมกับการดำเนินการปัจจุบัน

409

Conflict

การดำเนินการขัดแย้งกับบัญชีของผู้ให้บริการหรือทรัพยากรที่มีอยู่

500

Internal Server Error

บริการพบข้อผิดพลาดที่ไม่คาดคิด

503

Service Unavailable

บริการ backend ที่จำเป็นไม่พร้อมใช้งานชั่วคราว

เมื่อคำขอล้มเหลว

ตรวจ HTTP และ error.code/numeric_code เก็บ request_id แล้วแก้พารามิเตอร์ ยืนยันตัวตนต่อ หรือตรวจ runtime ตามสาเหตุ ตรวจผลครั้งก่อนก่อนส่งหรือเขียนซ้ำ อ้างอิงรหัสข้อผิดพลาด

อ่านสถานะ HTTP, error.code และ error.numeric_code ร่วมกับคำสั่งที่เรียก รหัสตัวเลขเป็นสตริง เก็บ request_id เพื่อตรวจปัญหา ค่านี้ไม่ใช่คีย์ป้องกันการทำซ้ำหรือรหัสงาน

auth_mode_phone_required · 20019 · 400

วิธีนี้ต้องใส่ provider_data.phone เมื่อสร้างบัญชี

วิธีจัดการและลองใหม่: แก้พารามิเตอร์ตามคำสั่งและเงื่อนไขช่องทางก่อนเรียกใหม่ การส่งคำขอผิดแบบเดิมซ้ำไม่ช่วยแก้ข้อผิดพลาด

JSON ตัวอย่าง โดย message เปลี่ยนตามสาเหตุจริง · 400 · 20019
{
  "request_id": "req_example",
  "error": {
    "code": "auth_mode_phone_required",
    "numeric_code": "20019",
    "message": "Phone number is required for this auth mode"
  }
}
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"
  }
}
unsupported_provider_auth_mode · 20018 · 400

ใช้ auth_mode ที่ช่องทางรองรับ

วิธีจัดการและลองใหม่: เลือกช่องทางและคำสั่งที่เอกสารระบุว่ารองรับ การส่งซ้ำไม่เพิ่มความสามารถหรือเปิดสิทธิ์เบต้า

JSON ตัวอย่าง โดย message เปลี่ยนตามสาเหตุจริง · 400 · 20018
{
  "request_id": "req_example",
  "error": {
    "code": "unsupported_provider_auth_mode",
    "numeric_code": "20018",
    "message": "Auth mode not supported by this provider"
  }
}
wallet_invalid_request · 20021 · 400

ตรวจสอบพารามิเตอร์สร้างบัญชีด้วยกระเป๋าและส่วนหัว Idempotency-Key ที่เป็นทางเลือก

วิธีจัดการและลองใหม่: แก้พารามิเตอร์ตามคำสั่งและเงื่อนไขช่องทางก่อนเรียกใหม่ การส่งคำขอผิดแบบเดิมซ้ำไม่ช่วยแก้ข้อผิดพลาด

JSON ตัวอย่าง โดย message เปลี่ยนตามสาเหตุจริง · 400 · 20021
{
  "request_id": "req_example",
  "error": {
    "code": "wallet_invalid_request",
    "numeric_code": "20021",
    "message": "Invalid wallet account request"
  }
}
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_allocation_busy · 20011 · 409

กำลังจัดสรรบัญชี โปรดลองอีกครั้งภายหลัง

วิธีจัดการและลองใหม่: เก็บ request_id และรหัสแบบมีโครงสร้าง ตรวจคำสั่งปัจจุบันก่อนเลือกการดำเนินการถัดไป

JSON ตัวอย่าง โดย message เปลี่ยนตามสาเหตุจริง · 409 · 20011
{
  "request_id": "req_example",
  "error": {
    "code": "account_allocation_busy",
    "numeric_code": "20011",
    "message": "Allocation is busy in the current region; please retry later"
  }
}
duplicate_provider_account · 20015 · 409

ตัวตนช่องทางนี้ผูกกับอีกบัญชีในเวิร์กสเปซแล้ว

วิธีจัดการและลองใหม่: เก็บ request_id และรหัสแบบมีโครงสร้าง ตรวจคำสั่งปัจจุบันก่อนเลือกการดำเนินการถัดไป

JSON ตัวอย่าง โดย message เปลี่ยนตามสาเหตุจริง · 409 · 20015
{
  "request_id": "req_example",
  "error": {
    "code": "duplicate_provider_account",
    "numeric_code": "20015",
    "message": "A provider account with the same identity already exists in this workspace"
  }
}
no_allocatable_server · 20013 · 409

ภูมิภาคนี้ไม่มีทรัพยากรว่าง ให้สอบถามภูมิภาคที่จัดสรรได้

วิธีจัดการและลองใหม่: เก็บ request_id และรหัสแบบมีโครงสร้าง ตรวจคำสั่งปัจจุบันก่อนเลือกการดำเนินการถัดไป

JSON ตัวอย่าง โดย message เปลี่ยนตามสาเหตุจริง · 409 · 20013
{
  "request_id": "req_example",
  "error": {
    "code": "no_allocatable_server",
    "numeric_code": "20013",
    "message": "No allocatable server in the current region"
  }
}
wallet_account_creation_in_progress · 20030 · 409

workspace นี้กำลังสร้างบัญชีด้วยกระเป๋ารายอื่น โปรดรอให้เสร็จก่อนลองอีกครั้ง

วิธีจัดการและลองใหม่: เก็บ request_id และรหัสแบบมีโครงสร้าง ตรวจคำสั่งปัจจุบันก่อนเลือกการดำเนินการถัดไป

JSON ตัวอย่าง โดย message เปลี่ยนตามสาเหตุจริง · 409 · 20030
{
  "request_id": "req_example",
  "error": {
    "code": "wallet_account_creation_in_progress",
    "numeric_code": "20030",
    "message": "Account creation is in progress; please wait"
  }
}
wallet_idempotency_conflict · 20024 · 409

คีย์ป้องกันซ้ำผูกกับพารามิเตอร์อื่น ตรวจสอบผลเดิมก่อนสร้างใหม่

วิธีจัดการและลองใหม่: เก็บ request_id และรหัสแบบมีโครงสร้าง ตรวจคำสั่งปัจจุบันก่อนเลือกการดำเนินการถัดไป

JSON ตัวอย่าง โดย message เปลี่ยนตามสาเหตุจริง · 409 · 20024
{
  "request_id": "req_example",
  "error": {
    "code": "wallet_idempotency_conflict",
    "numeric_code": "20024",
    "message": "Idempotency key was used for a different request"
  }
}
wallet_insufficient_funds · 20023 · 409

ยอดเงินไม่พอ เจ้าของสามารถเติมเงินแล้วตรวจสอบคำขอเดิม

วิธีจัดการและลองใหม่: เก็บ request_id และรหัสแบบมีโครงสร้าง ตรวจคำสั่งปัจจุบันก่อนเลือกการดำเนินการถัดไป

JSON ตัวอย่าง โดย message เปลี่ยนตามสาเหตุจริง · 409 · 20023
{
  "request_id": "req_example",
  "error": {
    "code": "wallet_insufficient_funds",
    "numeric_code": "20023",
    "message": "Insufficient wallet balance"
  }
}
wallet_workspace_disabled · 20022 · 409

ปิดการซื้อใหม่ด้วยยอดคงเหลือ ไม่ได้หมายความว่ายกเลิกการดำเนินการเดิม

วิธีจัดการและลองใหม่: เก็บ request_id และรหัสแบบมีโครงสร้าง ตรวจคำสั่งปัจจุบันก่อนเลือกการดำเนินการถัดไป

JSON ตัวอย่าง โดย message เปลี่ยนตามสาเหตุจริง · 409 · 20022
{
  "request_id": "req_example",
  "error": {
    "code": "wallet_workspace_disabled",
    "numeric_code": "20022",
    "message": "New wallet purchases are disabled"
  }
}
workspace_account_quota_exceeded · 20014 · 409

ถึงขีดจำกัดบัญชีรับส่งข้อความแล้ว ตรวจการใช้งานและโควตา

วิธีจัดการและลองใหม่: เก็บ request_id และรหัสแบบมีโครงสร้าง ตรวจคำสั่งปัจจุบันก่อนเลือกการดำเนินการถัดไป

JSON ตัวอย่าง โดย message เปลี่ยนตามสาเหตุจริง · 409 · 20014
{
  "request_id": "req_example",
  "error": {
    "code": "workspace_account_quota_exceeded",
    "numeric_code": "20014",
    "message": "Workspace account quota exceeded"
  }
}
create_account_failed · 20002 · 500

สร้างบัญชี: การสร้างทรัพยากรล้มเหลวหรือยังยืนยันผลไม่ได้

วิธีจัดการและลองใหม่: ดูรายการหรือค้นหาทรัพยากรที่มีอยู่เพื่อยืนยันว่าการสร้างครั้งก่อนมีผลแล้วหรือไม่ก่อนสร้างอีก แก้สาเหตุและเก็บ request_id อย่าสร้างรายการซ้ำอัตโนมัติ

JSON ตัวอย่าง โดย message เปลี่ยนตามสาเหตุจริง · 500 · 20002
{
  "request_id": "req_example",
  "error": {
    "code": "create_account_failed",
    "numeric_code": "20002",
    "message": "Failed to create account"
  }
}
allocation_service_unavailable · 20012 · 503

บริการจัดสรรบัญชีไม่พร้อมชั่วคราว โปรดลองภายหลัง

วิธีจัดการและลองใหม่: เก็บ request_id และรหัสแบบมีโครงสร้าง ตรวจคำสั่งปัจจุบันก่อนเลือกการดำเนินการถัดไป

JSON ตัวอย่าง โดย message เปลี่ยนตามสาเหตุจริง · 503 · 20012
{
  "request_id": "req_example",
  "error": {
    "code": "allocation_service_unavailable",
    "numeric_code": "20012",
    "message": "Allocation service is temporarily unavailable"
  }
}
wallet_unavailable · 20028 · 503

ข้อมูลหรือการตั้งค่ากระเป๋าไม่พร้อม ผลการเขียนอาจไม่ชัดเจน โปรดตรวจสอบการดำเนินการเดิม

วิธีจัดการและลองใหม่: อ่านสถานะปัจจุบันและยืนยันผลการเปลี่ยนแปลงครั้งก่อนก่อนทำซ้ำ เก็บ request_id และอย่าเขียนซ้ำอัตโนมัติเมื่อยังไม่ทราบผล

JSON ตัวอย่าง โดย message เปลี่ยนตามสาเหตุจริง · 503 · 20028
{
  "request_id": "req_example",
  "error": {
    "code": "wallet_unavailable",
    "numeric_code": "20028",
    "message": "Wallet service is unavailable"
  }
}