Tin Zalo Tư vấn dạng button

HTTP request

POST https://rest.esms.vn/MainService.svc/json/SendZaloFollowerMessage_V5_post_json/

  • Content Type: text/plain

  • Response Type: application/json


curl --location --request POST 'https://rest.esms.vn/MainService.svc/json/SendZaloFollowerMessage_V5_post_json/' \
--header 'Content-Type: text/plain' \
--data-raw '{
    "ApiKey": "{{ApiKey}}",
    "SecretKey": "{{SecretKey}}",
    "OAID": "{{OAID}}",
    "Payload": {
        "recipient": {
            "user_id": "{{user_id}}"
        },
        "message": {
            "text": "Chào mừng bạn đến với hệ thống eSMS. Đây là tin nhắn zalo dạng button.",
            "attachment": {
                "type": "template",
                "payload": {
                    "buttons": [
                        {
                            "title": "Link url",
                            "payload": {
                                "url": "https://developers.esms.vn/esms-api/ham-gui-tin/tin-zalo-tu-van-dang-button"
                            },
                            "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": "Cảm ơn quý khách đã sử dụng dịch vụ của chúng tôi. Chúc quý khách một ngày mới tốt lành!",
                                "phone_code": "0901888484"
                            }
                        },
                        {
                            "title": "OPEN PHONE",
                            "type": "oa.open.phone",
                            "payload": {
                                "phone_code": "0901888484"
                            }
                        }
                    ]
                }
            }
        }
    }
}'

// Truyền \r\n để gửi nội dung xuống dòng
  • Cấu trúc body của request:

Tham số
Kiểu dữ liệu
Tính bắt buộc
Mô tả

ApiKey

string

ApiKey eSMS cung cấp.

SecretKey

string

SecretKey eSMS cung cấp.

OAID

string

Zalo OA ID, là ID của trang Zalo Offical Account của doanh nghiệp. Doanh nghiệp cần đăng nhập vào trang quản trị của Zalo OA để lấy phần Zalo OA ID này. Chú ý: sẽ phải đăng ký trước khi sử dụng.

CallbackUrl

string

eSMS sẽ trả về kết quả của tin nhắn này. Xem body mẫu ở đây. Xem chi tiết ở đây.

SendDate

string

Thời gian hẹn gửi của tin. Không truyền khi tin muốn tin nhắn gửi đi liền. Định dạng: yyyy-mm-dd hh:MM:ss

Payload

Object

Chứa nội dung cần gửi


Cấu trúc thuộc tính recipient

Tham số
Kiểu dữ liệu
Tính bắt buộc
Mô tả

user_id

string

ID của người nhận.

Cấu trúc thuộc tính message

Tham số
Kiểu dữ liệu
Tính bắt buộc
Mô tả

text

string

Tiêu đề của button Giới hạn tối đa là 2.000 ký tự

attachment

Object

Attachment cần gửi.

Cấu trúc thuộc tính message.attachment

Tham số
Kiểu dữ liệu
Tính bắt buộc
Mô tả

type

string

Loại attachment. Giá trị nhận vào bắt buộc:

  • type = template

payload

Object

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 quan tâm bấm vào

oa.open.url

string

Data là một Url sẽ được mở trong ứng dụng Zalo khi người quan tâm bấm vào button. Ví dụ:

{ "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 quan tâm 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 quan tâm đế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 quan tâm. Ví dụ: { "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 quan tâm 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 quan tâm đế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 quan tâm. Ví dụ:

{ "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

object

Data đối tượng json chứa 2 thuộc tính “content” và “phoneCode”. Ví dụ:

{ "title": "OPEN SMS", "type": "oa.open.sms", "payload": { "content":"alo", "phone_code":"84919018791" } }

Khi người quan tâm click vào button, cửa sổ sms trên điện thoại của người quan tâm 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

object

Data số điện thoại sẽ nhập vào khi bật ứng dụng gọi điện, ví dụ:

{ "title": "OPEN PHONE", "type": "oa.open.phone", "payload":{ "phone_code":"84919018791" } }

Khi người quan tâm click vào button, cửa sổ call trên điện thoại của người quan tâm 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ự.

  • Response:

{
    "CodeResult": "100",
    "CountRegenerate": 0,
    "SMSID": "d8e0f1f0702544b2acb456ca9ccfd111250"
}

Request hợp lệ.

  • Cấu trúc body của response:

Thuốc tính
Kiểu dữ liệu
Mô tả

CodeResult

string

Request được gửi đến ESMS thành công. Lưu ý: Mã phản hồi 100 chỉ xác nhận rằng yêu cầu đã được gửi thành công đến hệ thống ESMS, không phản ánh việc tin nhắn đã được gửi đến số điện thoại người nhận hay chưa. Để theo dõi trạng thái cuối cùng của tin nhắn, quý khách vui lòng truyền thêm tham số CallbackUrl; hệ thống ESMS sẽ tự động gửi phản hồi (callback) đến địa chỉ này khi có trạng thái cuối của tin.

SMSID

string

ID tin nhắn do esms trả về.

ErrorMessage

string

Thông tin lỗi trả về (nếu có lỗi)

  • Thông tin chi tiết mã lỗi xem ở bảng: Mã lỗi .

  • Lấy code mẫu các ngôn ngữ trên Postman: Link code mẫu.

Last updated