Gửi ZNS

API sử dụng để gửi tin nhắn ZNS đến người dùng Zalo

Khi có nhu cầu gửi thử mẫu ZNS để kiểm tra trước khi gửi chính thức, bạn có thể gọi lệnh ZNS API ở chế độ development (development mode). Lưu ý: Chế độ development chỉ hỗ trợ gửi thử mẫu ZNS đến quản trị viên của ứng dụng hoặc quản trị viên của OA.

HTTP request

Example request

curl --location 'https://apis.infinix.vn/v1/zns/vng-oa-key-0a65/send-message-template'
--header 'api-key: 6829c1b8a87b979819a760d908fa8a0' \
--header 'Content-Type: application/json' \
--data '{
    "phone": "84962938733",
    "templateId": "369217",
    "templateData": {
        "date": "10/11/2024",
        "name": "Hau Nguyen",
        "price": 210000,
        "status": "Thành công",
        "order_code": "40120",
        "phone_number": "0905332684"
    },
    "trackingId": "13d1d775-3f65-4149-91a7-f6e4fd805ee7",
    "mode": "development"
}'

Tham số header

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

api-key

string

yes

Đoạn mã cần truyền vào để xác minh quyền sử dụng API

Cấu trúc body request

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

phone

string

yes

SĐT của người nhận. Lưu ý: SĐT phải được liên kết với tài khoản Zalo và được viết ở định dạng chuẩn hóa theo mã quốc gia. (VD: SĐT 0987654321 viết theo định dạng chuẩn hóa của Việt Nam là 84987654321 hoặc +84987654321)

templateId

string

yes

ID của template muốn sử dụng. templateId sẽ được phía Zalo cung cấp riêng cho từng đối tác.

templateData

JSON Object

yes

Các thuộc tính của template mà đối tác đã đăng ký với Zalo. Lưu ý: Cấu trúc templateData được quy định riêng ứng với từng template.

trackingId

string

no

ID tuỳ chỉnh từ phía đối tác để theo dõi tin nhắn. Nếu như đối tác không truyền trackingId, hệ thống InfiniX sẽ tự sinh ra một trackingId Lưu ý: Chỉ hỗ trợ UUID hoặc MongoDB ObjectId

mode

enum string - development - production

no

Chỉ định ZNS được gửi ở cơ chế nào. Gồm 2 mode: - development - production Lưu ý: mode "development" chỉ gửi được tới quản trị viên của ứng dụng hoặc quản trị viên của OA. Chỉ dùng để test trong quá trình tích hợp, không thể gửi đến khách hàng

sync

boolean

no

Sử dụng api ở cơ chế đồng bộ hoặc bất đồng bộ - True: Đồng bộ - sẽ chờ đợi để trả về kết quả của request ZNS qua Zalo - False: Bất đồng bộ - sẽ trả về ngay requestId và sử dụng api Get Result để lấy kết quả request ZNS

Example response

{
    "success": true,
    "data": {
        "phone": "84962938734",
        "type": "NORMAL",
        "createdAt": "2024-10-07T09:13:10.351Z",
        "status": "PENDING",
        "trackingId": "13d1d775-3f65-4149-91a7-f6e4fd805ee7"
    },
    "meta": {
        "sessionId": "e7202e25-6605-4efe-9856-7c9d8e0b7516"
    }
}

Cấu trúc các thuộc tính response

Tham số
Kiểu dữ liệu

phone

string

Số điện thoại người nhận

type

string

Loại tin ZNS được gửi

sessionId

string

Mỗi request sẽ sinh ra 1 sessionId để nhận diện

createdAt

Date

Thời gian khởi tạo request

status

string

Trạng thái của request

trackingId

String

ID định danh được truyền từ phía khách hàng hoặc được sinh ra từ hệ thống InfiniX

Last updated