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

การโทร

วางสายbeta

ฟีเจอร์นี้อยู่ในช่วงทดสอบแบบปิด โปรดติดต่อฝ่ายสนับสนุนด้านเทคนิคเพื่อขอเปิดสิทธิ์ให้เวิร์กสเปซ

ขณะนี้รองรับเฉพาะการโทรเสียงและวิดีโอแบบตัวต่อตัวผ่าน WhatsApp เท่านั้น ใช้ account_id และ call_id เพื่อจบการโทร หากลืม ID ให้เรียกดูการโทรปัจจุบันก่อน

POSThttps://api.unifyport.ai/v1/calls/{call_id}/hangup

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

WhatsApp

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

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

ตรวจว่าเวิร์กสเปซได้รับสิทธิ์ทดสอบแบบปิด ก่อนสร้างการโทร ให้ยืนยันตัวตน WhatsApp จนเสร็จและตรวจ runtime_status=running ใช้ conversation_id ของบทสนทนาส่วนตัวภายใต้บัญชีนี้

ที่มาของพารามิเตอร์
account_id
รับ data.id จากการสร้างหรือค้นหาบัญชี รหัสเป็นของ workspace ที่ระบุด้วย X-Api-Key ดูบัญชี
call_id
ใช้ call_id ที่ได้จากการสร้างหรือเรียกดูการโทรปัจจุบันของบัญชีนี้ หากสูญหาย ให้เรียกดูการโทรปัจจุบันก่อนวางสาย ดูการโทรปัจจุบัน

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

ส่วนหัว

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

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

Content-Type
stringจำเป็น

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

พารามิเตอร์ใน path

call_id
stringจำเป็น

ตัวระบุที่ใช้ใน route ของ calls

maxLength: 128 · pattern: ^[A-Za-z0-9][A-Za-z0-9_-]*$

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

account_id
stringจำเป็น

ID บัญชีในเวิร์กสเปซปัจจุบัน

pattern: ^acc_[A-Za-z0-9][A-Za-z0-9_-]*$

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

อ่าน call_id และ state ที่ส่งกลับ ทั้ง ended และ failed เป็นสถานะสิ้นสุดของการโทร การวางสายซ้ำอาจส่งกลับสถานะสิ้นสุดเดิม HTTP 200 ไม่ได้หมายถึง state=ended เสมอไป และห้ามลองใหม่อัตโนมัติเพียงเพราะ state=failed

การตอบกลับ 200 · 200

{
  "request_id": "req_example",
  "data": {
    "call_id": "call_example",
    "state": "ended",
    "direction": "outbound",
    "media_type": "voice"
  }
}

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

call_id
string

รหัสการโทร ใช้สำหรับวางสายด้วย

maxLength: 128

state
string

สถานะการโทรปัจจุบัน

enum: ended, failed

direction
string

ทิศทางการโทร

enum: inbound, outbound

media_type
string

voice คือเสียง ส่วน video คือการโทรที่รองรับวิดีโอ

enum: voice, video

การตอบกลับ

200

200 · 200

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

400

Bad Request

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

401

Unauthorized

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

403

Forbidden

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

404

Not Found

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

409

Conflict

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

500

Internal Server Error

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

501

Not Implemented

provider ที่เลือกยังไม่รองรับการดำเนินการนี้

502

Bad Gateway

อะแดปเตอร์หรือ upstream provider ไม่สามารถทำรายการให้เสร็จได้

503

Service Unavailable

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

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

ตรวจ HTTP และ error.code/numeric_code เก็บ request_id ตรวจสิทธิ์ทดสอบ บัญชี และ call_id หากสร้างแล้วขัดแย้ง ให้เรียกดูการโทรปัจจุบันก่อน ตรวจสถานะก่อนลองสร้างหรือวางสายซ้ำ อ้างอิงรหัสข้อผิดพลาด

invalid_request · 10000 · 400
ตรวจฟิลด์บังคับ รูปแบบ และเงื่อนไขช่องทาง แล้วแก้คำขอ
missing_api_key · 11000 · 401
ตรวจ X-Api-Key และว่า workspace ยังใช้งานอยู่
invalid_api_key · 11001 · 401
ตรวจ X-Api-Key และว่า workspace ยังใช้งานอยู่
account_not_found · 20020 · 404
ตรวจ account_id และใช้ X-Api-Key ของเวิร์กสเปซเจ้าของบัญชี คีย์ปัจจุบันไม่สามารถเข้าถึงบัญชีที่ไม่พบในเวิร์กสเปซนี้
unsupported_by_provider · 30003 · 501
ดูคู่มือความสามารถช่องทาง แล้วเลือกช่องทางหรือคำสั่งที่รองรับ การส่งซ้ำไม่เพิ่มการรองรับ
beta_feature_not_enabled · 41002 · 403
ติดต่อฝ่ายสนับสนุนทางเทคนิคเพื่อขอสิทธิ์ทดสอบแบบปิดให้เวิร์กสเปซ การส่งซ้ำหรือเปลี่ยน is_beta ในคำขอไม่ทำให้ได้สิทธิ์
call_not_found · 38003 · 404
ตรวจ HTTP และ error.code/numeric_code เก็บ request_id ตรวจสิทธิ์ทดสอบ บัญชี และ call_id หากสร้างแล้วขัดแย้ง ให้เรียกดูการโทรปัจจุบันก่อน ตรวจสถานะก่อนลองสร้างหรือวางสายซ้ำ