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

# Enviar carrossel

> Envia um carrossel de cartões, cada um com texto, uma miniatura opcional e seus próprios botões.



## OpenAPI

````yaml openapi.evolution-v2.pt.json POST /message/sendCarousel/{instance}
openapi: 3.1.0
info:
  title: Evolution V2 Layer
  version: 1.0.0
  description: >-
    Camada de API do Pilot Status — Evolution V2. Base URL
    `https://pilotstatus.com.br/api/layer/evolution-v2`. Autentique com o header
    `apikey` (sua chave `ps_` do Pilot Status). Endpoints de instância/sessão
    NÃO estão disponíveis na camada.
servers:
  - url: https://pilotstatus.com.br/api/layer/evolution-v2
security:
  - apiKey: []
tags:
  - name: Chamada e Business
  - name: Chat
  - name: Grupo
  - name: Etiqueta (Label)
  - name: Mensagem
  - name: Perfil
  - name: Configurações e Proxy
  - name: Armazenamento (S3)
  - name: Template
paths:
  /message/sendCarousel/{instance}:
    post:
      tags:
        - Mensagem
      summary: Enviar carrossel
      description: >-
        Envia um carrossel de cartões, cada um com texto, uma miniatura opcional
        e seus próprios botões.
      operationId: post__message_sendCarousel_instance
      parameters:
        - name: instance
          in: path
          required: true
          schema:
            type: string
          description: O nome de exibição do número no painel do Pilot Status.
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              properties:
                number:
                  type: string
                  description: Telefone do destinatário em E.164 sem `+`, ou um JID.
                  example: '5511999999999'
                cards:
                  type: array
                  description: Array de objetos de cartão (veja os campos abaixo).
                  items:
                    type: object
                  example:
                    - text: Starter plan
                      thumbnailUrl: https://media.pilotstatus.com.br/starter.png
                      footerText: Best for small teams
                      buttons:
                        - type: url
                          displayText: Learn more
                          url: https://pilotstatus.com.br/starter
                cards[].text:
                  type: string
                  description: Texto do corpo do cartão.
                cards[].thumbnailUrl:
                  type: string
                  description: URL da imagem de miniatura do cartão.
                cards[].footerText:
                  type: string
                  description: Texto de rodapé do cartão.
                cards[].buttons:
                  type: array
                  description: Botões do cartão (mesmo formato de sendButtons).
                  items:
                    type: object
                title:
                  type: string
                  description: Título do carrossel.
                  example: Featured products
                description:
                  type: string
                  description: Texto do corpo do carrossel.
                  example: Swipe to browse
                footer:
                  type: string
                  description: Texto de rodapé do carrossel.
                  example: Pilot Status
                delay:
                  type: integer
                  description: Atraso antes do envio, em milissegundos.
                everyOne:
                  type: boolean
                  description: Mencionar todos no grupo.
                mentioned:
                  type: array
                  items:
                    type: string
                  description: Array de strings numéricas a mencionar.
              required:
                - number
      responses:
        '200':
          description: Sucesso — corpo de resposta nativo do provedor.
          content:
            application/json:
              schema:
                type: object
                description: >-
                  Sent a carousel message (multiple interactive cards). Returns
                  the persisted Baileys messageRaw envelope containing an
                  interactiveMessage with a carouselMessage of cards.
                properties:
                  key:
                    type: object
                    properties:
                      remoteJid:
                        type: string
                      fromMe:
                        type: boolean
                      id:
                        type: string
                  pushName:
                    type: string
                  status:
                    type: string
                    enum:
                      - ERROR
                      - PENDING
                      - SERVER_ACK
                      - DELIVERY_ACK
                      - READ
                      - PLAYED
                  message:
                    type: object
                    properties:
                      interactiveMessage:
                        type: object
                        properties:
                          body:
                            type: object
                            properties:
                              text:
                                type: string
                          footer:
                            type: object
                            properties:
                              text:
                                type: string
                          carouselMessage:
                            type: object
                            properties:
                              cards:
                                type: array
                                description: >-
                                  Carousel cards, each an interactive message
                                  with header, body, footer and native flow
                                  buttons.
                                items:
                                  type: object
                                  properties:
                                    header:
                                      type: object
                                      properties:
                                        hasMediaAttachment:
                                          type: boolean
                                        imageMessage:
                                          type: object
                                          description: >-
                                            Card header image (Baileys
                                            imageMessage).
                                    body:
                                      type: object
                                      properties:
                                        text:
                                          type: string
                                    footer:
                                      type: object
                                      properties:
                                        text:
                                          type: string
                                    nativeFlowMessage:
                                      type: object
                                      properties:
                                        buttons:
                                          type: array
                                          items:
                                            type: object
                                            properties:
                                              name:
                                                type: string
                                              buttonParamsJson:
                                                type: string
                  contextInfo:
                    type:
                      - object
                      - 'null'
                  messageType:
                    type: string
                  messageTimestamp:
                    type: integer
                  instanceId:
                    type: string
                  source:
                    type: string
              example:
                key:
                  remoteJid: 5511999999999@s.whatsapp.net
                  fromMe: true
                  id: 3EB0CAROUSEL99AABBCCDD
                pushName: Você
                status: PENDING
                message:
                  interactiveMessage:
                    body:
                      text: Confira nossos destaques
                    footer:
                      text: Pilot Status
                    carouselMessage:
                      cards:
                        - header:
                            hasMediaAttachment: true
                            imageMessage:
                              url: >-
                                https://mmg.whatsapp.net/v/t62.7118-24/card1_112233445566778899_n.enc
                              mimetype: image/jpeg
                          body:
                            text: |
                              *Produto A*

                              O mais vendido da semana
                          footer:
                            text: R$ 99,90
                          nativeFlowMessage:
                            buttons:
                              - name: cta_url
                                buttonParamsJson: >-
                                  {"display_text":"Comprar","url":"https://loja.example.com/a"}
                        - header:
                            hasMediaAttachment: true
                            imageMessage:
                              url: >-
                                https://mmg.whatsapp.net/v/t62.7118-24/card2_998877665544332211_n.enc
                              mimetype: image/jpeg
                          body:
                            text: |
                              *Produto B*

                              Novidade em estoque
                          footer:
                            text: R$ 149,90
                          nativeFlowMessage:
                            buttons:
                              - name: cta_url
                                buttonParamsJson: >-
                                  {"display_text":"Comprar","url":"https://loja.example.com/b"}
                contextInfo: null
                messageType: interactiveMessage
                messageTimestamp: 1720483920
                instanceId: a1b2c3d4-e5f6-4a7b-8c9d-0e1f2a3b4c5d
                source: web
        default:
          description: Erro — erro do provedor ou da camada.
          content:
            application/json:
              schema:
                type: object
                properties:
                  status:
                    type: integer
                  error:
                    type: string
                  message:
                    type: string
                  response:
                    type: object
              example:
                status: 400
                error: Bad Request
                message: Invalid payload
components:
  securitySchemes:
    apiKey:
      type: apiKey
      in: header
      name: apikey
      description: >-
        Your Pilot Status API key (ps_...). Evolution GO also accepts
        `Authorization: Bearer <key>`.

````