เอกสาร HeloSChat Messaging API
API สำหรับสร้างบอทที่รับและส่งข้อความกับผู้ใช้ HeloSChat ทุก request เป็น HTTPS + JSON และยืนยันตัวตนด้วย Bot token
เริ่มต้นใช้งาน
สมัคร สร้างบอท ตั้ง Webhook และตอบข้อความแรก
Messaging API
reply, push, multicast, broadcast และประเภทข้อความ
Webhook
รูปแบบ event การตรวจลายเซ็น และการส่งซ้ำ
สิทธิ์ (Scopes)
สิทธิ์พื้นฐาน สิทธิ์ที่ต้องอนุมัติ และวิธีขอ
Base URL
https://bots.gugarhices.com/v1
การยืนยันตัวตน
ใส่ Bot token ที่ได้จาก Console ใน header Authorization ทุก request token แสดงเพียงครั้งเดียวตอนสร้างหรือออกใหม่ ให้เก็บในตัวแปรสภาพแวดล้อมหรือ secret manager
Authorization: Bearer hb_xxxxxxxxxxxxxxxxEndpoint
| Method | Path | คำอธิบาย |
|---|---|---|
| POST | /v1/messages/reply | ตอบกลับ event ด้วย reply token (ไม่นับโควตา) |
| POST | /v1/messages/push | ส่งหาผู้ใช้ กลุ่ม หรือห้องเดียว |
| POST | /v1/messages/multicast | ส่งหาผู้ใช้หลายคน (สูงสุด 500 UID) |
| POST | /v1/messages/broadcast | ส่งหาทุกคนที่เพิ่มบอทเป็นเพื่อน |
| GET | /v1/messages/jobs/{id} | สถานะงานส่ง multicast / broadcast |
| GET | /v1/messages/quota | โควตาข้อความของเดือนนี้ |
| GET | /v1/messages/quota/consumption | จำนวนข้อความที่ใช้ไปเดือนนี้ |
| POST | /v1/channels/{id}/cards | สร้าง Service Card ในห้อง |
| POST | /v1/qr | ออก Bot QR |
| GET | /v1/qr | รายการ QR ของบอท |
| DELETE | /v1/qr/{id} | ยกเลิก QR |
| GET | /v1/bots/@me | ข้อมูลบอทของ token นี้ |
| POST | /v1/bots/@me/webhook | ตั้ง Webhook URL |
| GET | /v1/scopes | รายการสิทธิ์ทั้งหมด และสิทธิ์ที่ต้องอนุมัติ |
ข้อจำกัด
| อัตราการเรียก API | 60 request ต่อนาทีต่อบอท |
| โควตาข้อความ | 1,000 ข้อความต่อเดือนสำหรับบอทใหม่ นับต่อผู้รับ · reply ไม่นับ |
| ข้อความต่อ request | สูงสุด 5 ข้อความ · ข้อความตัวอักษรยาวไม่เกิน 4,000 ตัวอักษร |
| Multicast / Broadcast | 500 UID ต่อ multicast · broadcast สูงสุด 5,000 ผู้รับต่อครั้ง |
| จำนวนบอท | 3 ตัวต่อบัญชี Developer |
รูปแบบ error
ทุก error ตอบเป็น JSON มี code ที่อ่านด้วยโปรแกรมได้ และ request_id สำหรับแจ้งทีมงาน
HTTP/1.1 429 Too Many Requests
{
"error": {
"code": "quota_exceeded",
"message": "monthly message quota reached (1000/1000 in 2026-10); replies are not counted",
"request_id": "a857e013-…"
}
}