> For the complete documentation index, see [llms.txt](https://docs.taqnyat.sa/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.taqnyat.sa/api-reference/templates/create-template.md).

# Create Template

Use the Taqnyat WhatsApp API to create and submit WhatsApp message templates for Meta approval.

All template creation requests use:

```
POST /templates/
```

Full URL:

```
https://api.taqnyat.sa/wa/v2/templates/
```

The exact request payload depends on the type of template you want to create.

Use the sections below to build the appropriate template structure.

<table data-view="cards"><thead><tr><th></th><th></th></tr></thead><tbody><tr><td><h4>General Structure</h4></td><td>Learn the basic request structure and common fields used when creating WhatsApp message templates.</td></tr><tr><td><h4>OTP Template</h4></td><td>Create an Authentication template for one-time passwords and verification use cases.</td></tr><tr><td><h4>Image Template</h4></td><td>Create a template containing an image header.</td></tr><tr><td><h4>Video Template</h4></td><td>Create a template containing a video header.</td></tr><tr><td><h4>Document Template</h4></td><td>Create a template containing a document header.</td></tr><tr><td><h4>Media Carousel Template</h4></td><td>Create a carousel template containing multiple media cards and interactive elements.</td></tr></tbody></table>

### Authentication

Template creation requests require your API token in the request header:

```http
Authorization: <YOUR_TOKEN>
Content-Type: application/json
```

### Common Template Fields

Although the payload varies by template type, template creation requests generally include:

| Field        | Type   | Description                                        |
| ------------ | ------ | -------------------------------------------------- |
| `name`       | String | Unique name of the template.                       |
| `language`   | String | Language code of the template.                     |
| `category`   | String | Template category.                                 |
| `components` | Array  | Defines the content and structure of the template. |

The `components` structure changes depending on the template type.

### Template Categories

Templates can be created under supported categories such as:

```
MARKETING
UTILITY
AUTHENTICATION
```

The category should match the purpose and content of the template. Meta reviews submitted templates and determines their final classification and approval status.

### Template Approval

Creating a template does not make it immediately available for sending.

After submission, the template must be reviewed and approved before it can be used in WhatsApp message requests.

Use **Get Templates** to retrieve your templates and check their latest status.

### Notes

* Template names should remain consistent because they are referenced later when sending messages.
* The selected language should match the actual template content.
* Only include components required by the template you are creating.
* The exact payload structure is documented in each template-type subpage.
* Templates must be approved before they can be used for sending.
