เอกสารอ้างอิง API
ข้อความPOST

ส่งข้อความนามบัตร (vCard)

ส่งนามบัตรผู้ติดต่อ message.type เป็น contact และ message.contacts เป็นอาร์เรย์แบบมีโครงสร้าง (ส่งได้หนึ่งหรือหลายใบ) โดย UnifyPort จะสร้าง vCard ให้ แต่ละใบต้องมี name ส่วน phones[].number, emails[].address, organization และ title เป็นแบบเลือกได้ ปัจจุบันรองรับเฉพาะ WhatsApp; อาร์เรย์ contacts ว่างหรือบางใบไม่มี name คืน 400 invalid_request ส่วนผู้ให้บริการที่ไม่ใช่ WhatsApp คืน 400 unsupported_message_type opaque reply handle ของ WhatsApp ที่อาจคืนเมื่อช่องทางมีตัวระบุข้อความที่ตอบกลับได้ และไม่ใช่ id ข้อความแม่

https://api.unifyport.ai/v1/messages

ส่วนหัว

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

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

Content-Type
stringจำเป็น

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

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

จุดเชื่อมต่อนี้ไม่มีพารามิเตอร์ใน path

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

account_id
stringจำเป็น

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

to
objectจำเป็น

ผู้รับ ประกอบด้วย id และ type

id
stringจำเป็น

ตัวระบุผู้รับฝั่ง provider

type
stringจำเป็น

ประเภทผู้รับ: user, group หรือ channel

enum: user, group, channel

message
objectจำเป็น

payload ข้อความที่ปรับเป็นมาตรฐาน ข้อความตัวอักษรใช้ message.text สื่อใช้ message.url

type
stringจำเป็น

ประเภทข้อความ: text, image, video, audio, document, file หรือ contact

enum: text, image, video, audio, document, file, contact

text
string

เนื้อหาข้อความเมื่อ message.type เป็น text

url
string

URL สื่อสาธารณะสำหรับข้อความประเภทสื่อ

file_url
string

URL สื่อทางเลือกที่ adapter แบบไฟล์ของ provider รองรับ

file_key
string

ข้อมูลอ้างอิงไฟล์ฝั่ง provider หรือระบบจัดเก็บเมื่อรองรับ

caption
string

คำบรรยายเสริมสำหรับข้อความ image, video, document หรือ file

contacts[]
object[]

นามบัตรแบบมีโครงสร้างหนึ่งรายการขึ้นไปเมื่อ message.type เป็น contact

name
string

ชื่อที่แสดงของผู้ติดต่อ ต้องมีในนามบัตรทุกรายการ

phones[]
object[]

รายการหมายเลขโทรศัพท์ในนามบัตร

number
string

หมายเลขโทรศัพท์ ต้องมีใน phone ทุกรายการ

type
string

ป้ายกำกับโทรศัพท์ที่ไม่บังคับ เช่น CELL หรือ WORK

emails[]
object[]

รายการอีเมลในนามบัตร

address
string

ที่อยู่อีเมล ต้องมีใน email ทุกรายการ

type
string

ป้ายกำกับอีเมลที่ไม่บังคับ เช่น WORK หรือ HOME

organization
string

ชื่อองค์กรของผู้ติดต่อที่ไม่บังคับ

title
string

ตำแหน่งงานของผู้ติดต่อที่ไม่บังคับ

provider_data
object

ตัวเลือกเฉพาะของ provider เช่น parse_mode ของ Telegram หรือ seconds / waveform สำหรับเสียงของ WhatsApp สำหรับการตอบกลับแบบอ้างอิงให้ใช้ reply_to ระดับบนสุด

seconds
integer

ระยะเวลาเสียงเป็นวินาทีแบบเลือกได้สำหรับข้อความ audio ของ WhatsApp โดยต้องมีค่าอย่างน้อย 0

waveform
string

สตริงข้อมูลรูปคลื่นแบบเลือกได้สำหรับข้อความ audio ของ WhatsApp

reply_to
object

เป้าหมายของการตอบกลับแบบอ้างอิง ให้คัดลอก data.message.reply_token จาก webhook ขาเข้าไปยัง reply_to.reply_token ของคำขอส่งโดยไม่แก้ไข

reply_token
string

โทเค็นตอบกลับแบบทึบที่คัดลอกโดยไม่แก้ไขจาก data.message.reply_token ของ webhook ขาเข้า

mentions[]
object[]

สมาชิกที่อ้างถึงด้วย placeholder {{@<id>}} ใน text หรือ caption

id
string

ตัวระบุสมาชิกฝั่ง provider ที่ตรงกับ placeholder {{@<id>}}

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

message_id
string

ตัวระบุข้อความของ UnifyPort (msg_...) สำหรับข้อความที่ถูกรับไว้

account_id
string

บัญชีของผู้ให้บริการที่การตอบกลับนี้อ้างถึง

status
string

สถานะการรับ; accepted หมายถึงข้อความถูกเข้าคิวเพื่อนำส่งไปยังผู้ให้บริการ

provider_ref
string

reference ข้อความฝั่งผู้ให้บริการ เมื่อผู้ให้บริการกำหนดค่าให้แล้ว

reply_token
string

opaque reply handle ของ WhatsApp ที่อาจคืนเมื่อช่องทางมีตัวระบุข้อความที่ตอบกลับได้ และไม่ใช่ id ข้อความแม่

การตอบกลับ

200
200 OK

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

400
Bad Request

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

401
Unauthorized

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

409
Conflict

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

500
Internal Server Error

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

501
Not Implemented

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

502
Bad Gateway

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

คำขอ

curl -X POST https://api.unifyport.ai/v1/messages \
  -H "X-Api-Key: <YOUR_API_KEY>" \
  -H "Content-Type: application/json" \
  -d '{
  "account_id": "acc_example",
  "to": {
    "id": "user_example",
    "type": "user"
  },
  "message": {
    "type": "contact",
    "contacts": [
      {
        "name": "Jane Doe",
        "phones": [{ "number": "+8613800000000", "type": "CELL" }],
        "emails": [{ "address": "jane@example.com" }],
        "organization": "ACME",
        "title": "PM"
      }
    ]
  }
}'

การตอบกลับ

{
  "data": {
    "message_id": "msg_example",
    "account_id": "acc_example",
    "status": "accepted",
    "provider_ref": "provider_msg_example",
    "reply_token": "<opaque WhatsApp reply handle>"
  }
}