# Enviar carrossel

`POST /send/carousel`

Pasta: **Enviar Mensagem**

## Autenticação

```http
token: {{token}}
```

## Descrição

# Enviar carrossel

Envia um carrossel de cards com mídia e botões. Útil para catálogos, planos ou produtos.

## Endpoint

```http
POST {{baseUrl}}/send/carousel
```

## Autenticação

Envie o token da instância no header:

```http
token: {{token}}
```

## Corpo da requisição

| Campo | Tipo | Obrigatório | Descrição |
| --- | --- | --- | --- |
| number | string | Sim* | Destinatário |
| chatid | string | Sim* | Alternativa a number |
| text / body | string | Não | Texto introdutório acima do carrossel |
| footer | string | Não | Rodapé geral |
| cards | array | Sim* | Lista de cards |
| carousel | array | Sim* | Formato alternativo: `{ text, image, video, buttons }` |
| cards[].header.title | string | Não | Título do header |
| cards[].header.subtitle | string | Não | Subtítulo |
| cards[].header.image / imageUrl | string | Não | Imagem do card |
| cards[].header.video / videoUrl | string | Não | Vídeo do card |
| cards[].body.text | string | Sim | Texto do corpo do card |
| cards[].footer | string | Não | Rodapé do card |
| cards[].buttons | array | Não | Botões do card (sem PIX) |

## Exemplo de Requisição

```bash
curl -X POST "{{baseUrl}}/send/carousel" \
  -H "token: {{token}}" \
  -H "Content-Type: application/json" \
  -d '{"number": "{{remoteJid}}", "text": "Conheça nossos planos", "cards": [{"header": {"title": "Starter", "imageUrl": "https://exemplo.com/starter.png"}, "body": {"text": "Ideal para começar"}, "footer": "A partir de R$ 29", "buttons": [{"id": "starter", "text": "Quero este", "type": "reply"}]}, {"header": {"title": "Pro", "imageUrl": "https://exemplo.com/pro.png"}, "body": {"text": "Para times em crescimento"}, "buttons": [{"id": "pro", "text": "Quero este", "type": "reply"}]}]}'
```

## Resposta de Sucesso

```json
{
  "success": true,
  "message": {
    "id": "3EB0A1B2C3D4E5F6",
    "timestamp": "2026-07-17T12:34:56Z",
    "sender": "5511888888888@s.whatsapp.net"
  }
}
```

## Erros comuns

- `cards or carousel are required`
- `card N body text is required`
- `pix buttons are not supported in carousel cards`
- Falha ao baixar mídia do header

## Corpo (exemplo)

```json
{
  "number": "{{remoteJid}}",
  "text": "Conheça nossos planos",
  "cards": [
    {
      "header": {
        "title": "Starter",
        "imageUrl": "https://exemplo.com/starter.png"
      },
      "body": {
        "text": "Ideal para começar"
      },
      "footer": "A partir de R$ 29",
      "buttons": [
        {
          "id": "starter",
          "text": "Quero este",
          "type": "reply"
        }
      ]
    },
    {
      "header": {
        "title": "Pro",
        "imageUrl": "https://exemplo.com/pro.png"
      },
      "body": {
        "text": "Para times em crescimento"
      },
      "buttons": [
        {
          "id": "pro",
          "text": "Quero este",
          "type": "reply"
        }
      ]
    }
  ]
}
```

## cURL

```bash
curl -X POST "{{baseUrl}}/send/carousel" \
  -H "token: {{token}}" \
  -H "Content-Type: application/json" \
  -d '{
  "number": "{{remoteJid}}",
  "text": "Conheça nossos planos",
  "cards": [
    {
      "header": {
        "title": "Starter",
        "imageUrl": "https://exemplo.com/starter.png"
      },
      "body": {
        "text": "Ideal para começar"
      },
      "footer": "A partir de R$ 29",
      "buttons": [
        {
          "id": "starter",
          "text": "Quero este",
          "type": "reply"
        }
      ]
    },
    {
      "header": {
        "title": "Pro",
        "imageUrl": "https://exemplo.com/pro.png"
      },
      "body": {
        "text": "Para times em crescimento"
      },
      "buttons": [
        {
          "id": "pro",
          "text": "Quero este",
          "type": "reply"
        }
      ]
    }
  ]
}'
```

---

[Índice da pasta](./index.md) · [Índice geral](../index.md) · [UI](https://gozap.dev/docs?op=enviar-mensagem/enviar-carrossel)
