---
sourceType: official-guide
sourceTypeMatchedRule: fallback
slug: >-
  OA/webhook/tin-nhan/su-kien-nguoi-dung-da-xem-tin-nhan-duoc-gui-tu-official-account
title: Sự kiện người dùng đã xem tin nhắn được gửi từ Official Account
---
# Sự kiện người dùng đã xem tin nhắn được gửi từ Official Account

Khi tin nhắn gửi từ Official Account được người dùng xem, hệ thống Zalo sẽ gửi đến Webhook Url của Official Account một http post như sau Quyền cần có:

*   Sự kiện người dùng đã đọc tin nhắn

Lưu ý:  Sự kiện chỉ được gửi nếu

*   User xem tin nhắn đó trên Zalo Mobile (user xem trên PC/Web sau đó vào Zalo để đọc lại tin nhắn đó thì không có sự kiện).
*   Chỉ gửi đến Webhook của App nào đã gửi tin nhắn đó đi.

Thông tin API:

*   **URL:** Webhook Url của ứng dụng
*   **Method:** POST
*   **Content Type:** application/json
*   **X-ZEvent-Signature:** mac = sha256(appId + data + timeStamp + OAsecretKey), với data là chuỗi json trả về dưới đây.

### Ví dụ:

```json
{
    "app_id": "3608465248940903967",
    "sender": {
        "id": "388613280879808645"
    },
    "recipient": {
        "id": "246845883529697922"
    },
    "event_name": "user_seen_message",
    "message": {
        "msg_ids": [
            "43b59c025aeabfb5e6fa"
        ]
    },
    "timestamp": "1540363714987"
}
```

### Mô tả thuộc tính

| Thuộc tính | Kiểu dữ liệu | Mô tả |
| --- | --- | --- |
| app_id | String | Id của ứng dụng đang nhận sự kiện. |
| sender | Json Object | Ví dụ: ```json { "id": "388613280879808645" } ``` Trong đó: - "id": Id của Official Account gửi tin nhắn |
| recipient | Json Object | Ví dụ: ```json { "id": "246845883529697922" } ``` Trong đó: - "id": Id của User nhận tin nhắn |
| event_name | String | Giá trị là "user_seen_message". |
| message | Json Object | Ví dụ: ```json { "msg_ids": [ "43b59c025aebfb5e6fa" ] } ``` Trong đó: - "msg_ids": Danh sách id của các tin nhắn đã được người dùng xem. |
| timestamp | String | Thời điểm request được gửi, tính bằng milisecond |
