---
title: "Queue an approved WhatsApp template"
method: POST
path: "/whatsapp-templates/{channelId}/send"
tags: ["WhatsApp templates"]
---

# Queue an approved WhatsApp template

`POST /whatsapp-templates/{channelId}/send`

## Request

- Base URL: `https://platform-api.visitoai.com/m2m/v1`
- URL: `https://platform-api.visitoai.com/m2m/v1/whatsapp-templates/{channelId}/send`
- Auth: HTTP bearer

Requires `whatsapp_templates:send`. The response acknowledges queued work, not delivery.

## Path parameters

- `channelId` string, required

## Headers

- `Idempotency-Key` string, required

## Request body

- WhatsappTemplateSendRequest
  - `to` string, required
  - `template` object, required
    - `name` string, required
    - `language` object, required
      - `code` string, required
    - `components` object[]

## Response `202`

Template send accepted and queued

- QueuedTemplateSend
  - `accepted` true, required
  - `replyId` string, required
  - `conversationId` string, required
  - `requestEventId` string, required
  - `correlationId` string, required
  - `status` 'queued', required
  - `acceptedAt` string, date-time, required
  - `conversationKey` string, required

## Other responses

- `429`: Rolling 24-hour channel limit reached. Inspect `error.details.retryAfterSeconds`.
- `default`: Structured error

---

[API](https://skmtc.dev/visitoai/apis/visito-m2m-api.md) - [All operations](https://skmtc.dev/visitoai/apis/visito-m2m-api/llms.txt) - [OpenAPI document](https://skmtc.dev/visitoai/apis/visito-m2m-api/revisions/98377d35c234?raw)
