POST/api/public/widget/message
Gửi tin nhắn trò chuyện của khách truy cập đến chatbot và trả về câu trả lời của nó — đây là điểm cuối trung tâm của widget trò chuyện.
Xác thực & bảo mật
Widget-Embed-Token (Header X-Widget-Token) + danh sách Origin được cho phép
Lũy đẳng (idempotent): Không
Tham số
widget_code(body, string, bắt buộc)message(body, string, bắt buộc)visitor_id(body, string, bắt buộc)— ID người truy cập được tạo và lưu trữ lâu dài ở phía khách hàngsession_id(body, string)— Giá trị null khi gọi lần đầu tiên một cuộc trò chuyện mớiRequest mẫu
{"widget_code":"...","message":"Xin chào, Zentor App có thể làm gì?","visitor_id":"<UUID hoặc ID do client tạo>"}Response mẫu
{"ok":true,"data":{"session_id":"31b1096c-a366-4418-b4be-bd999ff98134","response":"...","buttons":[],"state":"idle","products":[]}}Mã lỗi
401 WIDGET_TOKEN_MISSING — Thiếu tiêu đề X-Widget-Token.401 WIDGET_TOKEN_INVALID — Token không hợp lệ hoặc nguồn gốc không nằm trong danh sách phê duyệt của widget.400 VISITOR_ID_REQUIRED — visitor_id còn thiếu.Bằng chứng kiểm thử trực tiếp
Thành công (200, câu trả lời chatbot được tạo thực tế) và nhiều trường hợp tiêu cực (thiếu/không hợp lệ token, thiếu visitor_id) đã được xác minh trực tiếp.