Chuyển tới nội dung chính

Sự kiện webhook

Hạ Tầng gửi một POST cho mỗi sự kiện tới từng webhook đã đăng ký sự kiện đó. Body luôn cùng một khung; data tuỳ theo sự kiện. Mỗi sự kiện dưới đây dẫn tới schema đầy đủ của payload và ví dụ.

Khung dữ liệu​

{
"type": "email.delivered",
"created_at": "2026-10-23T08:15:00.000Z",
"data": {
"email_id": "4ef9a417-02e9-4d39-ad75-9611e0fcc33c",
"from": "Shop <[email protected]>",
"to": [
],
"subject": "Your order",
"created_at": "2026-10-23T08:14:58.000Z"
}
}
HeaderÝ nghĩa
svix-id / webhook-idId duy nhất của lần gửi. Gửi lại và phát lại dùng cùng id: hãy chống trùng theo id này.
svix-timestamp / webhook-timestampThời điểm ký (giây Unix). Từ chối nếu lệch quá 5 phút.
svix-signature / webhook-signatureChữ ký dạng v1,<base64>, cách nhau bằng dấu cách (có hai chữ ký trong lúc đổi secret).

Trả về bất kỳ mã 2xx nào trong 15 giây. Mã khác hoặc quá thời gian sẽ được gửi lại sau 5 giây, 5 phút, 30 phút, 2 giờ, 5 giờ, 10 giờ và 10 giờ. Bạn có thể phát lại bất kỳ lần gửi nào trong dashboard hoặc bằng POST /webhooks/deliveries/{id}/replay.

Cách tạo webhook, mã xác minh chữ ký và cách kiểm thử có trong hướng dẫn Webhook.

Sự kiện Email​

Sự kiệnKhi nào được gửi
email.sentEmail đã được hạ tầng gửi chấp nhận.
email.deliveredMáy chủ thư của người nhận đã nhận email.
email.delivery_delayedĐang thử gửi lại (ví dụ máy chủ người nhận tạm từ chối).
email.bouncedEmail bị trả về. data.bounce.type là Permanent (địa chỉ bị chặn) hoặc Transient.
email.complainedNgười nhận đánh dấu spam. Địa chỉ bị chặn.
email.openedNgười nhận mở email (khi bật theo dõi mở). Mỗi lần mở một sự kiện.
email.clickedNgười nhận bấm một liên kết được theo dõi. data.click.link là URL gốc.
email.failedKhông gửi được email. data.failed.reason cho biết lý do.
email.receivedCó email tới một tên miền nhận thư của bạn. Lấy nội dung và tệp đính kèm bằng API Receiving.
contact.createdCó liên hệ mới (API, dashboard, nhập file hoặc đồng bộ CRM).
contact.updatedTên, thuộc tính hoặc trạng thái đăng ký của liên hệ thay đổi.
contact.deletedLiên hệ bị xoá.
domain.createdĐã thêm tên miền gửi.
domain.updatedTên miền thay đổi, kể cả trạng thái xác minh.
domain.deletedTên miền bị xoá.

Sự kiện Hỗ trợ​

Sự kiệnKhi nào được gửi
chat.conversation.createdCó hội thoại mới trên bất kỳ kênh nào.
chat.conversation.assignedHội thoại được giao (hoặc bỏ giao).
chat.conversation.resolvedHội thoại được đánh dấu đã xử lý.
chat.conversation.closedHội thoại bị đóng.
chat.conversation.reopenedHội thoại đã xử lý hoặc đã đóng được mở lại.
chat.conversation.handoffTrợ lý AI chuyển hội thoại cho nhân viên.
chat.conversation.taggedHội thoại được gắn thêm tag; mỗi tag một sự kiện.
chat.message.createdCó tin nhắn công khai từ khách, nhân viên, trợ lý AI hoặc kịch bản. Ghi chú nội bộ không gửi sự kiện này.
chat.visitor.identifiedKhách được nhận diện (identify từ widget hoặc SDK).
chat.order.createdĐơn hàng được tạo từ hộp thư hoặc API.
chat.order.updatedĐơn hàng thay đổi (trạng thái, sản phẩm, vận chuyển).
chat.order.paidĐơn hàng đã được thanh toán.
chat.flow.webhookKịch bản hoặc quy trình chạy tới bước Webhook.
chat.campaign.leadKhách gửi form thu thập thông tin.
chat.ticket.createdPhiếu hỗ trợ được tạo.
chat.ticket.updatedPhiếu hỗ trợ thay đổi.
chat.ticket.resolvedPhiếu hỗ trợ được xử lý xong.
chat.ticket.breachedPhiếu trễ một mốc SLA. clock cho biết mốc nào.
chat.rating.createdKhách đánh giá hội thoại (CSAT).
chat.zns.sentTin Zalo ZNS đã gửi tới Zalo.
chat.zns.failedTin Zalo ZNS gửi lỗi. error có lý do.

Sự kiện Thanh toán​

Sự kiệnKhi nào được gửi
payment.createdYêu cầu thanh toán được tạo.
payment.succeededĐã nhận đủ tiền.
payment.partially_paidNhận được ít hơn số tiền yêu cầu.
payment.overpaidNhận được nhiều hơn số tiền yêu cầu.
payment.expiredThanh toán hết hạn trước khi được trả.
payment.canceledThanh toán bị huỷ.
transaction.receivedCó tiền vào một tài khoản ngân hàng đã liên kết (khớp hoặc chưa khớp).
bank_connection.activatedTài khoản ngân hàng đã liên kết và xác nhận.
bank_connection.revokedLiên kết ngân hàng bị gỡ.
bank_connection.needs_reauthNgân hàng cần chủ tài khoản xác nhận lại liên kết.
invoice.draft_createdHoá đơn nháp được tạo.
invoice.draft_updatedHoá đơn nháp thay đổi.
invoice.draft_deletedHoá đơn nháp bị xoá.
invoice.issuedNhà cung cấp đã phát hành hoá đơn điện tử.
invoice.tax_acceptedCơ quan thuế chấp nhận hoá đơn.
invoice.tax_rejectedCơ quan thuế từ chối hoá đơn.
invoice.canceledHoá đơn bị huỷ.
invoice.replacedHoá đơn được thay thế bằng hoá đơn mới.
invoice.adjustedĐã phát hành hoá đơn điều chỉnh.
invoice.failedPhát hành hoá đơn điện tử thất bại.
invoice.conflictHoá đơn bị sửa phía nhà cung cấp và xung đột với bản trên Hạ Tầng.

Xem trang này dạng Markdown