---
title: "Create Zalo template"
method: POST
path: "/zalo/2/sender/{sender}/templates"
tags: ["channels", "zalo", "zalo-service-management", "zalo-template-management"]
---

# Create Zalo template

`POST /zalo/2/sender/{sender}/templates`

## Request

- Base URL: `https://api.infobip.com` (the document declares no server; this is the origin it was published from)
- URL: `https://api.infobip.com/zalo/2/sender/{sender}/templates`
- Auth: one of:
  - OAuth 2
    - Client credentials
    - Token URL: `https://api.infobip.com/auth/1/oauth2/token`
  - API key in header `Authorization`
  - API key in header `Authorization`
  - HTTP basic

Creates a new template for the given sender. The template will be submitted for review and must be approved before it can be used.

## Path parameters

- `sender` string, required: Sender ID.

## Request body

- 6a8bbdacebad88e7e0de8bdfd30e29e04d114b9f00175a0482b9e26b742d85d5CreateTemplateRequest: Request to create a new ZBS template in Zalo.
  - `templateName` string, required: Template name.
  - `templateContent` 6a8bbdacebad88e7e0de8bdfd30e29e04d114b9f00175a0482b9e26b742d85d5ZbsTemplateContent, required: Template content.
    - `type` 'AUTHENTICATION' | 'PAYMENT_REQUEST' | 'SERVICE_REVIEW' | 'VOUCHER' | 'CUSTOM', required
  - `params` 6a8bbdacebad88e7e0de8bdfd30e29e04d114b9f00175a0482b9e26b742d85d5TemplateParameter[]: Template parameters for dynamic content.
    - `type` 'CUSTOMER_NAME' | 'PHONE_NUMBER' | 'ADDRESS' | 'CODE' | 'CUSTOM_LABELS' | 'TRADING_STATUS' | 'CONTACT_INFORMATION' | 'GENDER_TITLE' | 'PRODUCT_NAME_BRAND' | 'QUANTITY_AMOUNT' | 'TIME' | 'OTP' | 'URL' | 'CURRENCY_VND' | 'BANK_TRANSFER_NOTE', required: Type of the parameter.
    - `name` string, required: Name of the parameter. Only letters, digits, hyphen and underscore are allowed.
    - `sampleValue` string, required: Sample data for the parameter.
  - `note` string, required: Template note.
  - `trackingId` string, required: Tracking identifier.

## Response `200`

OK

- 6a8bbdacebad88e7e0de8bdfd30e29e04d114b9f00175a0482b9e26b742d85d5CreateTemplateResponse: Response from Zalo API after creating a ZBS template.
  - `templateId` string: Unique identifier for the created template.
  - `templateName` string: Name of the template.
  - `templateType` 'AUTHENTICATION' | 'PAYMENT_REQUEST' | 'SERVICE_REVIEW' | 'VOUCHER' | 'CUSTOM', required
  - `status` string: Current status of the template.
  - `tag` 'TRANSACTION' | 'CUSTOMER_CARE' | 'PROMOTION': Template tag for classification.
  - `appId` string: Application ID associated with the template.
  - `oaId` string: Official Account ID that owns the template.
  - `timeout` integer: Template timeout.
  - `previewUrl` string: URL to preview the template in Zalo's interface.

## Other responses

- `400`: Bad Request
- `401`: Unauthorized
- `403`: Forbidden
- `404`: Not Found
- `409`: Conflict
- `429`: Too Many Requests
- `500`: Internal Server Error
- `502`: Bad Gateway

---

[API](https://skmtc.dev/infobip/apis/infobip-openapi-specification.md) - [All operations](https://skmtc.dev/infobip/apis/infobip-openapi-specification/llms.txt) - [OpenAPI document](https://skmtc.dev/infobip/apis/infobip-openapi-specification/revisions/9dcbbaf902de?raw)
