> ## Documentation Index
> Fetch the complete documentation index at: https://docs.zapclass.com.br/llms.txt
> Use this file to discover all available pages before exploring further.

# Enviar Carrossel

> Criar carrossel de cartões com imagens e botões de ação

Carrosseis permitem exibir múltiplos cartões (cards) com imagens, textos e botões deslizáveis. Ideal para catálogos de produtos, galerias e apresentações visuais.

## Como Funciona

Cada cartão do carrossel pode conter uma imagem, texto descritivo e botões de ação (copiar, URL ou ligar). O usuário desliza horizontalmente para navegar entre os cartões.

## Estrutura de um Cartão

Cada cartão é composto por uma sequência específica de elementos no array `choices`:

**1. Texto do Cartão**

Texto entre colchetes: `"[Descrição do produto]"`

**2. Imagem**

URL ou Base64 entre chaves: `"{https://exemplo.com/imagem.jpg}"`

**3. Botões (opcional)**

Botões de ação no formato:

* Cópia: `"Copiar Cupom|copy:CODIGO"`
* URL: `"Ver Mais|https://site.com"`
* Chamada: `"Ligar|call:+5511999999999"`

> [!NOTE]
>
> **Formato especial:** Os elementos devem aparecer nesta ordem exata para cada
> cartão. Você pode ter múltiplos cartões no mesmo carrossel.

### Authorization

**api\_key** `string` *required*

Chave de autenticação da sua conexão, utilizada no header Authorization como
**Bearer** Token. \\

Você encontra sua API Key no botão **API** da sua conexão no painel ZapClass. \\

A chave sempre começa com o prefixo `zc_`. \\

Exemplo: `zc_6FrX2qjM4bHT9pR6cC0sD8wLkG3nE2tZfV5uN1aP`

### Body Parameters

**number** `string` *required*

Número do destinatário no formato internacional. \\

Deve incluir código do país DDI + DDD + número. \\

Exemplo: `5511999999999`

**title** `string` *required*

Título principal exibido acima do carrossel. \\

Exemplo: `Confira nossas ofertas especiais`

**choices** `array` *required*

Array com os elementos dos cartões em sequência. \\

Cada cartão deve ter: texto `[entre colchetes]`, imagem `{entre chaves}` e botões opcionais. \\

Exemplo: `["[iPhone 15]", "{https://img.com/iphone.jpg}", "Comprar|https://loja.com"]`

**delay** `integer`

Atraso em milissegundos antes do envio. \\

Durante o atraso aparecerá "Digitando...". \\

Exemplo: `1000`

**message\_reply\_id** `string`

Identificador da mensagem para responder. \\

Exemplo: `5511999999999:1AB2C3DEFG4H56I78JKL9M`

**message\_source** `string`

Origem do envio da mensagem. \\

Normalmente usado para rastreamento da mensagem. \\

Exemplo: `typebot`

**message\_id** `string`

Identificador do envio da mensagem. \\

Combinado com o `message_source` pode ser usado para rastreamento. \\

Exemplo: `5511999999999:1AB2C3DEFG4H56I78JKL9M`

**mentions** `string`

Relação de números de telefone a serem mencionados na mensagem. \\

O números devem ser separads por vírgula. \\

Exemplo: `5511999999999,5511888888888`

**read** `boolean`

Marca a conversa como lida após o envio. \\

Exemplo: `true`

**read\_messages** `boolean`

Marca as últimas mensagens como lidas após o envio. \\

Exemplo: `true`

```bash cURL theme={null}
curl -X POST https://zapclass.com.br/api/messages/menu-carousel \
  -H "Content-Type: application/json" \
  -H "Authorization: Bearer zc_6FrX2qjM4bHT9pR6cC0sD8wLkG3nE2tZfV5uN1aP" \
  -d '{
    "number": "5511999999999",
    "title": "Confira nossas ofertas especiais do mês!",
    "choices": [
      "[iPhone 15 Pro - R$ 7.499]",
      "{https://placehold.co/600x400/4A90E2/FFF?text=iPhone+15}",
      "Comprar Agora|https://loja.com/iphone15",
      "Copiar Cupom|copy:IPHONE50",

      "[MacBook Air M2 - R$ 9.999]",
      "{https://placehold.co/600x400/50C878/FFF?text=MacBook+Air}",
      "Ver Detalhes|https://loja.com/macbook",
      "Falar com Vendedor|call:+5511999999999",

      "[AirPods Pro 2 - R$ 2.199]",
      "{https://placehold.co/600x400/FF6B6B/FFF?text=AirPods+Pro}",
      "Comprar|https://loja.com/airpods",
      "Cupom de Desconto|copy:AIRPODS20"
    ]
  }'
```

```javascript JavaScript theme={null}
const response = await fetch(
  "https://zapclass.com.br/api/messages/menu-carousel",
  {
    method: "POST",
    headers: {
      "Content-Type": "application/json",
      Authorization: "Bearer zc_6FrX2qjM4bHT9pR6cC0sD8wLkG3nE2tZfV5uN1aP",
    },
    body: JSON.stringify({
      number: "5511999999999",
      title: "Confira nossas ofertas especiais do mês!",
      choices: [
        "[iPhone 15 Pro - R$ 7.499]",
        "{https://placehold.co/600x400/4A90E2/FFF?text=iPhone+15}",
        "Comprar Agora|https://loja.com/iphone15",
        "Copiar Cupom|copy:IPHONE50",

        "[MacBook Air M2 - R$ 9.999]",
        "{https://placehold.co/600x400/50C878/FFF?text=MacBook+Air}",
        "Ver Detalhes|https://loja.com/macbook",
        "Falar com Vendedor|call:+5511999999999",

        "[AirPods Pro 2 - R$ 2.199]",
        "{https://placehold.co/600x400/FF6B6B/FFF?text=AirPods+Pro}",
        "Comprar|https://loja.com/airpods",
        "Cupom de Desconto|copy:AIRPODS20",
      ],
    }),
  }
);
```

```php PHP theme={null}
<?php
$ch = curl_init('https://zapclass.com.br/api/messages/menu-carousel');

$payload = [
    "number" => "5511999999999",
    "title" => "Confira nossas ofertas especiais do mês!",
    "choices" => [
        "[iPhone 15 Pro - R$ 7.499]",
        "{https://placehold.co/600x400/4A90E2/FFF?text=iPhone+15}",
        "Comprar Agora|https://loja.com/iphone15",
        "Copiar Cupom|copy:IPHONE50",

        "[MacBook Air M2 - R$ 9.999]",
        "{https://placehold.co/600x400/50C878/FFF?text=MacBook+Air}",
        "Ver Detalhes|https://loja.com/macbook",
        "Falar com Vendedor|call:+5511999999999",

        "[AirPods Pro 2 - R$ 2.199]",
        "{https://placehold.co/600x400/FF6B6B/FFF?text=AirPods+Pro}",
        "Comprar|https://loja.com/airpods",
        "Cupom de Desconto|copy:AIRPODS20"
    ]
];

curl_setopt($ch, CURLOPT_POST, 1);
curl_setopt($ch, CURLOPT_POSTFIELDS, json_encode($payload));
curl_setopt($ch, CURLOPT_HTTPHEADER, [
    'Content-Type: application/json',
    'Authorization: Bearer zc_6FrX2qjM4bHT9pR6cC0sD8wLkG3nE2tZfV5uN1aP'
]);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);

$response = curl_exec($ch);
curl_close($ch);
?>
```

```json 200 theme={null}
{
  "success": true,
  "id": "5511999999999:1AB2C3DEFG4H56I78JKL9M",
  "chat_id": "5511999999999@s.whatsapp.net"
}
```

```json 400 theme={null}
{
  "success": false,
  "message": "Token de autenticação inválido"
}
```


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.