ZNS APIGửi tin nhắn zns

Gửi tin nhắn zns

Tạ Quốc Thắng·4/17/2026

Nhóm API gửi tin nhắn ZNS (Zalo Notification Service): gửi ZNS đến khách hàng và lấy danh sách template ZNS có sẵn.

Xác thực: Tất cả request cần gửi header X-Api-Key. Liên hệ Alohub để được cấp API Key.

Yêu cầu: Trước khi gửi ZNS, bạn cần có Zalo OA đã kết nối với Alohub và template ZNS đã được Zalo phê duyệt. Sử dụng API List Template ZNS để kiểm tra template có sẵn.


1. Gửi ZNS

POST /v1/zns/send

Gửi tin nhắn ZNS đến số điện thoại khách hàng qua chiến dịch đã chỉ định. Hỗ trợ truyền thông tin cá thể hoá để điền vào template ZNS.

Headers

Header

Bắt buộc

Mô tả

X-Api-Key

API Key xác thực

Content-Type

application/json

Request Body

Tham số

Kiểu

Bắt buộc

Mô tả

phone

string

Số điện thoại khách hàng (đã đăng ký Zalo)

campaignId

number

ID chiến dịch ZNS

transactionId

string

Không

ID giao dịch do client tạo ra để đối chiếu kết quả

name

string

Không

Tên khách hàng

email

string

Không

Email khách hàng

address

string

Không

Địa chỉ khách hàng

pField1pField6

string

Không

Trường thông tin cá thể hoá (tối đa 6 trường). Giá trị sẽ được gắn vào biến tương ứng trong template ZNS

Code mẫu

curl --location -g '{{base_url}}/v1/zns/send' \
  --header 'X-Api-Key: {{api_key}}' \
  --header 'Content-Type: application/json' \
  --data-raw '{
    "phone": "0123456789",
    "campaignId": 1,
    "transactionId": "TXN_004",
    "name": "Nguyễn Văn A",
    "email": "nguyenvana@example.com",
    "pField1": "Đơn hàng #12345",
    "pField2": "Đang giao hàng"
  }'
const axios = require('axios')

const response = await axios.post('{{base_url}}/v1/zns/send', {
  phone: '0123456789',
  campaignId: 1,
  transactionId: 'TXN_004',
  name: 'Nguyễn Văn A',
  email: 'nguyenvana@example.com',
  pField1: 'Đơn hàng #12345',
  pField2: 'Đang giao hàng'
}, {
  headers: {
    'X-Api-Key': '{{api_key}}',
    'Content-Type': 'application/json'
  }
})

console.log(response.data)
import requests

response = requests.post('{{base_url}}/v1/zns/send',
  json={
    'phone': '0123456789',
    'campaignId': 1,
    'transactionId': 'TXN_004',
    'name': 'Nguyễn Văn A',
    'email': 'nguyenvana@example.com',
    'pField1': 'Đơn hàng #12345',
    'pField2': 'Đang giao hàng'
  },
  headers={
    'X-Api-Key': '{{api_key}}',
    'Content-Type': 'application/json'
  }
)

print(response.json())

2. Danh sách template ZNS

POST /v1/zns/template

Lấy danh sách template ZNS đã được Zalo phê duyệt. Có thể lọc theo Zalo OA, trạng thái, và bao gồm thông tin tham số hoặc mapping.

Headers

Header

Bắt buộc

Mô tả

X-Api-Key

API Key xác thực

Content-Type

application/json

Request Body

Tham số

Kiểu

Bắt buộc

Mô tả

oaId

string

Không

ID của Zalo OA. Để rỗng "" để lấy tất cả OA

status

string

Không

Lọc theo trạng thái template. Để rỗng "" để lấy tất cả

includeParams

boolean

Không

true = bao gồm danh sách tham số của mỗi template

includeMappings

boolean

Không

true = bao gồm thông tin mapping trường dữ liệu

Code mẫu

curl --location -g '{{base_url}}/v1/zns/template' \
  --header 'X-Api-Key: {{api_key}}' \
  --header 'Content-Type: application/json' \
  --data '{
    "oaId": "",
    "status": "",
    "includeParams": true,
    "includeMappings": true
  }'
const axios = require('axios')

const response = await axios.post('{{base_url}}/v1/zns/template', {
  oaId: '',
  status: '',
  includeParams: true,
  includeMappings: true
}, {
  headers: {
    'X-Api-Key': '{{api_key}}',
    'Content-Type': 'application/json'
  }
})

console.log(response.data)
import requests

response = requests.post('{{base_url}}/v1/zns/template',
  json={
    'oaId': '',
    'status': '',
    'includeParams': True,
    'includeMappings': True
  },
  headers={
    'X-Api-Key': '{{api_key}}',
    'Content-Type': 'application/json'
  }
)

print(response.json())

Was this article helpful?
Updated: 4/17/2026