# Template Components

## Overview

WhatsApp templates are built using different **components**, which define the **structure and content** of the message. Each component serves a specific purpose, such as displaying text, media, or interactive elements.

A template can include the following components:

* **Header**
* **Body**
* **Footer**
* **Buttons**

***

### 1. Header

The **Header** is the top section of the template and is used to capture attention.

#### Supported Types

* **Text**
* **Image**
* **Video**
* **Document**

#### Key Points

* Only **one header** is allowed per template
* Media headers enhance **visual engagement**
* Text headers can include **dynamic variables**

***

### 2. Body

The **Body** is the main content of the message.

#### Features

* Supports **text with dynamic variables** (e.g., {{1}}, {{2}})
* Used to convey the **core message**

#### Character Limit

* Up to **1024 characters**

<figure><img src="/files/N03K1qmYQSb8DTYaEwk9" alt=""><figcaption></figcaption></figure>

***

### 3. Footer

The **Footer** is an optional section used for additional information.

#### Features

* Typically used for:
  * Disclaimers
  * Additional notes
* Does **not support dynamic variables**

#### Character Limit

* Up to **60 characters**

<figure><img src="/files/xTzY9A4adK9Uc9TzhNaM" alt=""><figcaption></figcaption></figure>

***

### 4. Buttons

Buttons provide **interactive actions** for users.

#### Types of Buttons

* **Call To Action (CTA)**
  * Visit Website (URL)
  * Call Phone Number
* **Quick Reply**
  * Predefined responses for user interaction

***

#### Key Limits

* Maximum **10 buttons** (depends on type and template)
* Button text limit: **25 characters**
* ❌ Emojis are not supported in button text

| Component             | Character Limit            | Additional Notes                                   |
| --------------------- | -------------------------- | -------------------------------------------------- |
| **Body Text**         | Up to **1024 characters**  | Mandatory component, supports variables and emojis |
| **Footer**            | Up to **60 characters**    | Optional, text only, no variables allowed          |
| **Button Text**       | Up to **25 characters**    | Applies to button label text                       |
| **Number of Buttons** | Up to **10 buttons total** | Includes Quick Reply + Call-to-Action combinations |

***

### Dynamic Variables

Dynamic variables allow templates to be **personalized**.

#### Format

```
{{1}}, {{2}}, {{3}}
```

#### Usage

* Customer name
* Order details
* OTP codes

***

### Important Notes

* Each component must follow **WhatsApp guidelines**
* Invalid formatting may lead to **template rejection**
* Components and their limits may vary slightly based on **template type (Marketing, Utility, Authentication)**


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://help.pickyassist.com/setting-up-guide/connecting-channels/whatsapp-templates/template-components.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
