> For the complete documentation index, see [llms.txt](https://help.skoobot.com/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://help.skoobot.com/api-documentation/whatsapp-cloud-api/get-templates-list.md).

# GET Templates List

#### API End Points <a href="#api-end-points" id="api-end-points"></a>

```
https://api-v7.express-chat.com/whatsapp-automation/wa/templates?apiKey=*API KEY*
```

#### Request Headers <a href="#request-headers" id="request-headers"></a>

| Header | Details                                       |
| ------ | --------------------------------------------- |
| apiKey | <p>API KEY</p><h4 id="query-params"><br></h4> |

#### **Query Params** <a href="#query-params" id="query-params"></a>

| Header | Details                                       |
| ------ | --------------------------------------------- |
| apiKey | <p>API KEY</p><h4 id="query-params"><br></h4> |

#### Example: <a href="#example" id="example"></a>

**Request**

```
curl --location --request GET 'https://api-v7.express-chat.com/whatsapp-automation/wa/templates?apiKey=*API KEY*' \\
--header 'apiKey: *API KEY*'
```

**Response**

Body

```
{
    "success": true,
    "data": [
        {
            "_id": "6912ee67c8a7cb954e0ced96",
            "_user": "5fed38e56fb193dcc6c933f5",
            "_bot": "690823e884ec34b46d906126",
            "templateId": "1162333778785556",
            "configuration": {
                "name": "professional_reusable",
                "category": "MARKETING",
                "language": "en",
                "components": [
                    {
                        "type": "HEADER",
                        "format": "TEXT",
                        "text": "Hi users"
                    },
                    {
                        "type": "BODY",
                        "text": "I hope you’re doing well.\nI’m writing to [purpose — e.g., request approval / share an update / ask for information\n\nWhat you want the recipient to do — be specific and include deadline if any"
                    },
                    {
                        "type": "FOOTER",
                        "text": "[Key point 1 — what happened or what you need]  [Key point 2"
                    },
                    {
                        "type": "BUTTONS",
                        "buttons": [
                            {
                                "type": "QUICK_REPLY",
                                "text": "Thanks"
                            }
                        ]
                    }
                ]
            },
            "status": "APPROVED",
            "headerMediaUrl": "",
            "triggerConfig": [],
            "carousalHeaderUrls": [],
            "templateType": "REGULAR",
            "createdAt": "2025-11-11T08:05:59.522Z",
            "updatedAt": "2025-11-11T08:05:59.522Z",
            "__v": 0
        },
        {
            "_id": "691305fe3c261eed3246ef8e",
            "_user": "5fed38e56fb193dcc6c933f5",
            "_bot": "690823e884ec34b46d906126",
            "templateId": "1377958567099477",
            "configuration": {
                "name": "appointment_reminder_notification",
                "category": "MARKETING",
                "language": "en",
                "components": [
                    {
                        "type": "HEADER",
                        "format": "TEXT",
                        "text": "Appointment Reminder"
                    },
                    {
                        "type": "BODY",
                        "text": "Hi {{1}} , this is a reminder for your appointment scheduled on {{2}}  at {{3}}.\nPlease confirm if you’ll be able to attend.",
                        "example": {
                            "body_text": [
                                [
                                    "user",
                                    "16 November, 2025",
                                    "3 pm"
                                ]
                            ]
                        }
                    },
                    {
                        "type": "FOOTER",
                        "text": "Reply STOP to unsubscribe."
                    }
                ]
            },
            "status": "APPROVED",
            "headerMediaUrl": "",
            "triggerConfig": [],
            "carousalHeaderUrls": [],
            "templateType": "REGULAR",
            "createdAt": "2025-11-11T09:46:38.244Z",
            "updatedAt": "2025-11-11T09:46:38.244Z",
            "__v": 0
        },
        {
            "_id": "691abcf7ad24899b2d475542",
            "_user": "5fed38e56fb193dcc6c933f5",
            "_bot": "690823e884ec34b46d906126",
            "templateId": "2370926096757892",
            "configuration": {
                "name": "call_permission",
                "category": "MARKETING",
                "language": "en",
                "components": [
                    {
                        "type": "BODY",
                        "text": "Can we call you to provide more information about your request?"
                    },
                    {
                        "type": "CALL_PERMISSION_REQUEST"
                    }
                ]
            },
            "status": "APPROVED",
            "headerMediaUrl": "",
            "triggerConfig": [],
            "carousalHeaderUrls": [],
            "templateType": "REGULAR",
            "createdAt": "2025-11-17T06:13:11.592Z",
            "updatedAt": "2025-11-17T06:13:11.592Z",
            "__v": 0
        },
        {
            "_id": "691abdfec169c6d89a6a2175",
            "_user": "5fed38e56fb193dcc6c933f5",
            "_bot": "690823e884ec34b46d906126",
            "templateId": "772578465807609",
            "configuration": {
                "name": "call_support_request",
                "category": "MARKETING",
                "language": "en",
                "components": [
                    {
                        "type": "BODY",
                        "text": "We would like to call you to help with your recent request. Do we have your permission to call?"
                    },
                    {
                        "type": "CALL_PERMISSION_REQUEST"
                    }
                ]
            },
            "status": "APPROVED",
            "headerMediaUrl": "",
            "triggerConfig": [],
            "carousalHeaderUrls": [],
            "templateType": "REGULAR",
            "createdAt": "2025-11-17T06:17:34.258Z",
            "updatedAt": "2025-11-17T06:17:34.258Z",
            "__v": 0
        },
        {
            "_id": "691afa8750b452e849888009",
            "_user": "5fed38e56fb193dcc6c933f5",
            "_bot": "690823e884ec34b46d906126",
            "templateId": "2272392363266084",
            "configuration": {
                "name": "utility_payment_reminder_template",
                "category": "UTILITY",
                "language": "en",
                "components": [
                    {
                        "type": "BODY",
                        "text": "his is a gentle reminder that your payment of $100 is due tomorrow. Please make the payment to avoid interruption in service."
                    }
                ]
            },
            "status": "APPROVED",
            "headerMediaUrl": "",
            "triggerConfig": [],
            "carousalHeaderUrls": [],
            "templateType": "REGULAR",
            "createdAt": "2025-11-17T10:35:51.033Z",
            "updatedAt": "2025-11-17T10:35:51.033Z",
            "__v": 0
        }
    ]
}
```

Here’s a **clear breakdown of the response fields**, suitable for API documentation:

***

#### Response Fields

**Root Level**

| Field   | Type    | Description                                                  |
| ------- | ------- | ------------------------------------------------------------ |
| success | Boolean | Indicates whether the API request was successful.            |
| data    | Array   | List of WhatsApp templates associated with the bot and user. |

**data\[] (Template Object)**

| Field              | Type              | Description                                                            |
| ------------------ | ----------------- | ---------------------------------------------------------------------- |
| \_id               | String            | Unique identifier of the template record in the system.                |
| \_user             | String            | ID of the user who owns the template.                                  |
| \_bot              | String            | ID of the bot linked to this template.                                 |
| templateId         | String            | WhatsApp (Meta) template ID.                                           |
| configuration      | Object            | Template content and structure configuration.                          |
| status             | String            | Current approval status of the template (APPROVED, PENDING, REJECTED). |
| headerMediaUrl     | String            | URL of the media used in the header (if applicable).                   |
| triggerConfig      | Array             | Trigger rules linked to the template (if any).                         |
| carousalHeaderUrls | Array             | List of carousel header media URLs (if applicable).                    |
| templateType       | String            | Type of template (e.g., REGULAR).                                      |
| createdAt          | String (ISO Date) | Timestamp when the template was created.                               |
| updatedAt          | String (ISO Date) | Timestamp when the template was last updated.                          |
| \_\_v              | Number            | Internal versioning field.                                             |

**configuration Object**

| Field      | Type   | Description                                            |
| ---------- | ------ | ------------------------------------------------------ |
| name       | String | Template name registered with WhatsApp.                |
| category   | String | Template category (MARKETING, UTILITY, etc.).          |
| language   | String | Language code of the template (e.g., en).              |
| components | Array  | Message components that define the template structure. |

**components\[] Object**

| Field   | Type   | Description                                                                |
| ------- | ------ | -------------------------------------------------------------------------- |
| type    | String | Component type (HEADER, BODY, FOOTER, BUTTONS, CALL\_PERMISSION\_REQUEST). |
| format  | String | Header format (TEXT, IMAGE, VIDEO) – applicable to headers only.           |
| text    | String | Content text of the component.                                             |
| buttons | Array  | List of interactive buttons (for BUTTONS type).                            |
| example | Object | Sample values for dynamic variables (if applicable).                       |

**buttons\[] Object**

| Field | Type   | Description                       |
| ----- | ------ | --------------------------------- |
| type  | String | Button type (e.g., QUICK\_REPLY). |
| text  | String | Button display text.              |

***

**Summary**

This response returns **all approved WhatsApp templates** for a bot, including their configuration, components, and approval status, enabling clients to render, manage, or trigger templates programmatically.

<br>


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## 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, and the optional `goal` query parameter:

```
GET https://help.skoobot.com/api-documentation/whatsapp-cloud-api/get-templates-list.md?ask=<question>&goal=<endgoal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is optional and describes the broader end goal you are ultimately trying to accomplish on behalf of the user. GitBook uses it to tailor the answer towards what is most useful for that goal.

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.
