---
sourceType: official-guide
sourceTypeMatchedRule: fallback
slug: OA/phu-luc/cau-truc-cua-tham-so-buttons
title: Cấu trúc tham số buttons
---
# Cấu trúc tham số buttons


\* Tính năng chỉ hiển thị trên Zalo Mobile

*   **type**: JSON Array

{/* ![](/assets/OA/img/list_with_btn_msg.png)
![](/assets/OA/img/text_with_btn_msg.png) */}
![](/assets/OA/img/list_with_btn_msg.png)
![](/assets/OA/img/text_with_btn_msg.png)

:::warning Lưu ý 
Hiện tại Zalo API hỗ trợ tối đa 5 button .
:::

## Example request

```json
{
    "recipient": {
        "user_id": "2440805291994947133"
    },
    "message": {
        "text": "Tin nhắn đính kèm button",
        "attachment": {
            "type": "template",
            "payload": {
                "buttons": [
                    {
                        "title": "OPEN URL",
                        "payload": {
                            "url": "https://developers.zalo.me/"
                        },
                        "type": "oa.open.url"
                    },
                    {
                        "title": "QUERY SHOW",
                        "type": "oa.query.show",
                        "payload": "#callback_data"
                    },
                    {
                        "title": "QUERY HIDE",
                        "type": "oa.query.hide",
                        "payload": "#callback_data"
                    },
                    {
                        "title": "OPEN SMS",
                        "type": "oa.open.sms",
                        "payload": {
                            "content": "alo",
                            "phone_code": "84919018791"
                        }
                    },
                    {
                        "title": "OPEN PHONE",
                        "type": "oa.open.phone",
                        "payload": {
                            "phone_code": "84919018791"
                        }
                    }
                ]
            }
        }
    }
}
```

### Cấu trúc tham số button


| Tham số | Kiểu dữ liệu | Mô tả |
| --- | --- | --- |
| title | String | Tiêu đề của button |
| type | String | Loại action sẽ thực hiện khi người dùng bấm vào |
| payload |  | Dữ liệu của action. Cấu trúc của payload phải phù hợp với từng loại action và được cho ở bảng bên dưới |


### Cấu trúc payload cho các loại action được hỗ trợ


| Giá trị type | Kiểu dữ liệu của payload | Giá trị payload và kết quả khi người dùng bấm vào |
| --- | --- | --- |
| oa.open.url | String | Data là một Url sẽ được mở trong ứng dụng Zalo khi người dùng bấm vào button. Ví dụ: ```json { "title": "OPEN URL", "payload" : { "url": "https://developers.zalo.me/" }, "type": "oa.open.url" } ``` - Chú ý: Giới hạn cho thuộc tính "title" là 100 kí tự. |
| oa.query.show | String | Data là một chuỗi ký tự ví dụ “#callback_data”. Khi người dùng bấm vào button, hệ thống sẽ gửi một tin nhắn có nội dung chứa trong data từ người dùng đến Official Account. Tin nhắn này sẽ hiện trên cửa sổ chat trên máy của người dùng. Ví dụ: ```json { "title": "QUERY SHOW", "type": "oa.query.show", "payload": "#callback_data" } ``` - Chú ý: - Giới hạn cho thuộc tính "title" là 100 kí tự. - Giới hạn cho thuộc tính "payload" là 1000 kí tự. |
| oa.query.hide | String | Data là một chuỗi ký tự ví dụ “#callback_data”. Khi người dùng bấm vào button, hệ thống sẽ gửi một tin nhắn có nội dung chứa trong data từ người dùng đến Official Account. Tin nhắn này sẽ bị ẩn trên cửa sổ chat trên máy của người dùng. Ví dụ: ```json { "title": "QUERY HIDE", "type": "oa.query.hide", "payload": "#callback_data" } ``` - Chú ý: - Giới hạn cho thuộc tính "title" là 100 kí tự. - Giới hạn cho thuộc tính "payload" là 1000 kí tự. |
| oa.open.sms | json object | Data đối tượng json chứa 2 thuộc tính “content” và “phoneCode”. Ví dụ: ```json { "title": "OPEN SMS", "type": "oa.open.sms", "payload": { "content":"alo", "phone_code":"84919018791" } } ``` Khi người dùng click vào button, cửa sổ sms trên điện thoại của người dùng sẽ được mở với 2 thông tin sẵn có là phone code và nội dung tin nhắn trong data. - Chú ý:- Giới hạn cho thuộc tính "title" là 100 kí tự. - Thuộc tính "content" có giới hạn là 160 kí tự. |
| oa.open.phone | Json Object | Data số điện thoại sẽ nhập vào khi bật ứng dụng gọi điện, ví dụ: ```json { "title": "OPEN PHONE", "type": "oa.open.phone", "payload":{ "phone_code":"84919018791" } } ``` Khi người dùng click vào button, cửa sổ call trên điện thoại của người dùng sẽ được mở với thông tin sẵn có là phone number trong data. - Chú ý: Giới hạn cho thuộc tính "title" là 100 kí tự. |
