# Messages

Enviar mensagens para usuários do WhatsApp. Suporta texto, mídia, templates, mensagens interativas e mais.

## Enviar mensagem

> Envia mensagens para usuários do WhatsApp por meio da Business API. Este endpoint\
> centraliza a comunicação de saída com clientes.\
> \
> \## Tipos de Mensagem\
> \
> \| Tipo | Descrição | Janela de 24h exigida |\
> \|------|-----------|-----------------------|\
> \| text | Mensagens de texto simples até 4096 caracteres | Sim |\
> \| image | Imagens JPEG, PNG até 5MB | Sim |\
> \| video | Vídeos MP4, 3GPP até 16MB | Sim |\
> \| audio | Áudios AAC, MP3, OGG até 16MB | Sim |\
> \| document | PDF, arquivos Office até 100MB | Sim |\
> \| sticker | Figurinhas WEBP, WEBM | Sim |\
> \| contacts | Compartilhamento de cartões de contato | Sim |\
> \| location | Compartilhamento de coordenadas geográficas | Sim |\
> \| template | Templates aprovados previamente | Não |\
> \| interactive | Listas, botões, catálogos de produtos | Sim |\
> \
> \## Janela de Mensagens\
> \
> O WhatsApp aplica uma janela de atendimento de 24 horas:\
> \- O envio de qualquer tipo de mensagem é permitido dentro de 24 horas da última mensagem do cliente\
> \- Fora dessa janela, o envio exige templates aprovados\
> \- Mensagens de template podem ser enviadas a qualquer momento para usuários opt-in\
> \- Cada resposta do cliente reabre a janela de 24 horas\
> \
> \## Precificação por Conversa\
> \
> As conversas são categorizadas e precificadas de forma distinta:\
> \- \*\*Marketing\*\*: Conteúdo promocional, ofertas, anúncios\
> \- \*\*Utility\*\*: Atualizações de pedido, notificações de conta, lembretes de pagamento\
> \- \*\*Authentication\*\*: Códigos OTP, verificação de login\
> \- \*\*Service\*\*: Conversas iniciadas pelo cliente (gratuitas dentro da janela)\
> \
> \## Boas Práticas\
> \
> \- Mensagens de marketing devem incluir instruções de cancelamento (opt-out)\
> \- Templates devem ser usados em notificações sensíveis ao tempo\
> \- O tratamento de erros deve considerar falhas de entrega\
> \- O status das mensagens deve ser monitorado via webhooks para confirmação de entrega<br>

````json
{"openapi":"3.0.3","info":{"title":"Fortics BSP - API do WhatsApp Business","version":"1.2.0"},"tags":[{"name":"messages","description":"Enviar mensagens para usuários do WhatsApp. Suporta texto, mídia, templates,\nmensagens interativas e mais.\n"}],"servers":[{"url":"{baseUrl}","description":"Servidor da API BSP","variables":{"baseUrl":{"default":"https://waba.fortics.com.br/v1","description":"URL base da API - Use a URL do servidor que lhe foi atribuída"}}}],"security":[{"ApiKeyAuth":[]}],"components":{"securitySchemes":{"ApiKeyAuth":{"type":"apiKey","in":"header","name":"apikey","description":"Chave de API para autenticação"}},"schemas":{"Text":{"allOf":[{"$ref":"#/components/schemas/BaseMessageRequest"},{"type":"object","required":["text"],"properties":{"text":{"type":"object","description":"Conteúdo da mensagem de texto. Texto simples com opção de pré-visualização de URL.\nSuporta formatação com a sintaxe markdown do WhatsApp.\n","required":["body"],"properties":{"body":{"type":"string","description":"O conteúdo de texto da mensagem. Máximo de 4096 caracteres.\n\nOpções de formatação:\n- *negrito* - Envolva o texto com asteriscos\n- _itálico_ - Envolva o texto com underscores\n- ~tachado~ - Envolva o texto com tils\n- ```monoespaçado``` - Envolva o texto com backticks\n\nQuebras de linha: Use \\n para novas linhas.\n\nURLs são detectadas automaticamente e transformadas em links clicáveis.\n","maxLength":4096},"preview_url":{"type":"boolean","description":"Habilita pré-visualização de links nas URLs da mensagem.\nQuando true, a primeira URL na mensagem exibirá uma pré-visualização\ncom título, descrição e miniatura, se disponíveis.\n\nObservação: A geração de pré-visualização depende das meta tags Open Graph do site alvo. Nem todos os links gerarão pré-visualização.\n","default":false}}}}}]},"BaseMessageRequest":{"type":"object","description":"Esquema base para todas as mensagens de saída do WhatsApp. Contém as propriedades\ncomuns exigidas para qualquer tipo de mensagem.\n","required":["to","type"],"properties":{"to":{"type":"string","description":"Número de telefone do destinatário em formato internacional, sem o sinal +.\n\nRequisitos de formato:\n- Incluir código do país (ex.: 55 para Brasil, 1 para EUA)\n- Apenas dígitos, sem espaços, traços ou parênteses\n- Não incluir o sinal +\n\nExemplos:\n- Brasil: 5511999999999\n- EUA: 14155551234\n- Reino Unido: 447700900123\n","pattern":"^[0-9]{10,15}$"},"type":{"type":"string","enum":["text","contacts","template","location","interactive","image","video","audio","document","sticker"],"description":"Tipo de mensagem sendo enviada. Cada tipo exige propriedades adicionais\nespecíficas no corpo da requisição.\n\nTipos de mensagem:\n- text: Texto simples com possível visualização de link\n- contacts: Compartilhar cartões de contato\n- template: Templates de mensagem pré-aprovados\n- location: Compartilhar coordenadas geográficas\n- interactive: Listas, botões e interações ricas\n- image: Imagens JPEG/PNG até 5MB\n- video: Vídeos MP4/3GPP até 16MB\n- audio: Áudios AAC/MP3/OGG até 16MB\n- document: PDF e arquivos Office até 100MB\n- sticker: Figurinhas WEBP/WEBM\n"},"messaging_product":{"type":"string","description":"Identificador do produto de mensagens. Sempre configure como \"whatsapp\"\npara mensagens da WhatsApp Business API.\n","default":"whatsapp"},"recipient_type":{"type":"string","description":"Tipo de destinatário. Atualmente apenas \"individual\" é suportado.\nEnvio para grupos não está disponível via Cloud API.\n","default":"individual","enum":["individual"]},"context":{"type":"object","description":"Objeto de contexto opcional para responder a uma mensagem específica.\nQuando fornecido, a mensagem aparece como uma resposta na conversa.\n","properties":{"message_id":{"type":"string","description":"O ID da mensagem (wamid) à qual responder.\nObtido a partir dos webhooks de mensagens recebidas.\n"}}},"biz_opaque_callback_data":{"type":"string","description":"String customizada que será incluída nas notificações de webhook\npara esta mensagem. Use para correlacionar mensagens com seu sistema.\nMáximo de 512 caracteres.\n","maxLength":512}}},"Contacts":{"allOf":[{"$ref":"#/components/schemas/BaseMessageRequest"},{"type":"object","required":["contacts"],"properties":{"contacts":{"type":"array","description":"Lista de objetos de contato para compartilhar","items":{"$ref":"#/components/schemas/Contact"}}}}]},"Contact":{"type":"object","required":["name"],"properties":{"addresses":{"type":"array","description":"Endereços do contato","items":{"type":"object","properties":{"street":{"type":"string","description":"Endereço (rua)"},"city":{"type":"string","description":"Nome da cidade"},"state":{"type":"string","description":"Estado ou região"},"zip":{"type":"string","description":"CEP ou código postal"},"country":{"type":"string","description":"Nome do país"},"country_code":{"type":"string","description":"Código do país em duas letras (ISO 3166-1 alpha-2)"},"type":{"type":"string","enum":["HOME","WORK"],"description":"Tipo de endereço"}}}},"birthday":{"type":"string","format":"date","description":"Data de nascimento do contato no formato YYYY-MM-DD"},"emails":{"type":"array","description":"Endereços de email do contato","items":{"type":"object","properties":{"email":{"type":"string","format":"email","description":"Endereço de email"},"type":{"type":"string","enum":["HOME","WORK"],"description":"Tipo de email"}}}},"name":{"type":"object","required":["formatted_name"],"description":"Informações do nome do contato","properties":{"formatted_name":{"type":"string","description":"Nome completo formatado"},"first_name":{"type":"string","description":"Primeiro nome"},"last_name":{"type":"string","description":"Sobrenome"},"middle_name":{"type":"string","description":"Nome do meio"},"suffix":{"type":"string","description":"Sufixo do nome (ex. Jr., Sr.)"},"prefix":{"type":"string","description":"Prefixo do nome (ex. Dr., Sr.)"}}},"org":{"type":"object","description":"Informações da organização do contato","properties":{"company":{"type":"string","description":"Nome da empresa"},"department":{"type":"string","description":"Nome do departamento"},"title":{"type":"string","description":"Cargo"}}},"phones":{"type":"array","description":"Números de telefone do contato","items":{"type":"object","properties":{"phone":{"type":"string","description":"Número de telefone"},"type":{"type":"string","enum":["CELL","MAIN","IPHONE","HOME","WORK"],"description":"Tipo de telefone"},"wa_id":{"type":"string","description":"ID do WhatsApp"}}}},"urls":{"type":"array","description":"URLs do contato","items":{"type":"object","properties":{"url":{"type":"string","format":"uri","description":"URL"},"type":{"type":"string","enum":["HOME","WORK"],"description":"Tipo de URL"}}}}}},"Template":{"allOf":[{"$ref":"#/components/schemas/BaseMessageRequest"},{"type":"object","required":["template"],"properties":{"template":{"type":"object","required":["name","language"],"properties":{"name":{"type":"string","description":"Nome do template de mensagem"},"language":{"type":"object","required":["code"],"properties":{"code":{"type":"string","description":"Código de idioma do template"},"policy":{"type":"string","enum":["deterministic"],"description":"Política de idioma para correspondência do template"}}},"components":{"type":"array","description":"Componentes do template com valores dinâmicos","items":{"$ref":"#/components/schemas/TemplateComponent"}}}}}}]},"TemplateComponent":{"type":"object","required":["type"],"properties":{"type":{"type":"string","enum":["header","body","footer","button"],"description":"Tipo do componente"},"sub_type":{"type":"string","enum":["quick_reply","text","url","mpm"],"description":"Sub-tipo do botão (obrigatório para componentes de botão)"},"index":{"type":"string","description":"Posição do índice do botão (base 0, obrigatório para botões)"},"parameters":{"type":"array","description":"Parâmetros dinâmicos para o componente","items":{"oneOf":[{"$ref":"#/components/schemas/TextParameter"},{"$ref":"#/components/schemas/MediaParameter"},{"$ref":"#/components/schemas/CurrencyParameter"},{"$ref":"#/components/schemas/DateTimeParameter"},{"$ref":"#/components/schemas/ButtonParameter"}]}}}},"TextParameter":{"type":"object","required":["type","text"],"properties":{"type":{"type":"string","enum":["text"]},"text":{"type":"string","description":"Valor de texto para o parâmetro"}}},"MediaParameter":{"type":"object","required":["type"],"properties":{"type":{"type":"string","enum":["image","video","document"]},"image":{"type":"object","properties":{"id":{"type":"string","description":"ID de mídia do WhatsApp"},"link":{"type":"string","format":"uri","description":"URL pública da mídia"}}},"video":{"type":"object","properties":{"id":{"type":"string"},"link":{"type":"string","format":"uri"}}},"document":{"type":"object","properties":{"id":{"type":"string"},"link":{"type":"string","format":"uri"},"filename":{"type":"string"}}}}},"CurrencyParameter":{"type":"object","required":["type","currency"],"properties":{"type":{"type":"string","enum":["currency"]},"currency":{"type":"object","required":["fallback_value","code","amount_1000"],"properties":{"fallback_value":{"type":"string","description":"Texto alternativo caso a localização falhe"},"code":{"type":"string","description":"Código de moeda ISO 4217"},"amount_1000":{"type":"integer","description":"Valor multiplicado por 1000 (ex. 99990 para $99.99)"}}}}},"DateTimeParameter":{"type":"object","required":["type","date_time"],"properties":{"type":{"type":"string","enum":["date_time"]},"date_time":{"type":"object","properties":{"fallback_value":{"type":"string","description":"Texto de data/hora alternativo"}}}}},"ButtonParameter":{"type":"object","required":["type"],"properties":{"type":{"type":"string","enum":["payload","text"]},"payload":{"type":"string","description":"Payload definido pelo desenvolvedor retornado ao clicar no botão"},"text":{"type":"string","description":"Sufixo de URL dinâmico para botões do tipo URL"}}},"Image":{"allOf":[{"$ref":"#/components/schemas/BaseMessageRequest"},{"type":"object","required":["image"],"properties":{"image":{"type":"object","description":"Conteúdo de imagem (forneça id ou link, não ambos)","properties":{"id":{"type":"string","description":"ID de mídia do WhatsApp de uma imagem enviada anteriormente"},"link":{"type":"string","format":"uri","description":"URL pública da imagem"},"caption":{"type":"string","description":"Legenda opcional para a imagem","maxLength":1024}}}}}]},"Video":{"allOf":[{"$ref":"#/components/schemas/BaseMessageRequest"},{"type":"object","required":["video"],"properties":{"video":{"type":"object","description":"Conteúdo de vídeo (forneça id ou link, não ambos)","properties":{"id":{"type":"string","description":"ID de mídia do WhatsApp de um vídeo enviado anteriormente"},"link":{"type":"string","format":"uri","description":"URL pública do vídeo"},"caption":{"type":"string","description":"Legenda opcional para o vídeo","maxLength":1024}}}}}]},"Audio":{"allOf":[{"$ref":"#/components/schemas/BaseMessageRequest"},{"type":"object","required":["audio"],"properties":{"audio":{"type":"object","description":"Conteúdo de áudio (forneça id ou link, não ambos)","properties":{"id":{"type":"string","description":"ID de mídia do WhatsApp de um áudio enviado anteriormente"},"link":{"type":"string","format":"uri","description":"URL pública do arquivo de áudio"}}}}}]},"Document":{"allOf":[{"$ref":"#/components/schemas/BaseMessageRequest"},{"type":"object","required":["document"],"properties":{"document":{"type":"object","description":"Conteúdo de documento (forneça id ou link, não ambos)","properties":{"id":{"type":"string","description":"ID de mídia do WhatsApp de um documento enviado anteriormente"},"link":{"type":"string","format":"uri","description":"URL pública do documento"},"caption":{"type":"string","description":"Legenda opcional para o documento","maxLength":1024},"filename":{"type":"string","description":"Nome de arquivo personalizado para o documento"}}}}}]},"Sticker":{"allOf":[{"$ref":"#/components/schemas/BaseMessageRequest"},{"type":"object","required":["sticker"],"properties":{"sticker":{"type":"object","description":"Conteúdo de figurinha (forneça id ou link, não ambos)","properties":{"id":{"type":"string","description":"ID de mídia do WhatsApp de uma figurinha enviada anteriormente"},"link":{"type":"string","format":"uri","description":"URL pública da figurinha (formato WebP)"}}}}}]},"MessageInteractiveList":{"type":"object","required":["to","type","interactive"],"properties":{"to":{"type":"string","description":"Número de telefone do destinatário"},"type":{"type":"string","enum":["interactive"]},"interactive":{"type":"object","required":["type","body","action"],"properties":{"type":{"type":"string","enum":["list"]},"header":{"type":"object","properties":{"type":{"type":"string","enum":["text"]},"text":{"type":"string","maxLength":60}}},"body":{"type":"object","required":["text"],"properties":{"text":{"type":"string","maxLength":1024}}},"footer":{"type":"object","properties":{"text":{"type":"string","maxLength":60}}},"action":{"type":"object","required":["button","sections"],"properties":{"button":{"type":"string","description":"Texto do botão para abrir a lista","maxLength":20},"sections":{"type":"array","maxItems":10,"items":{"type":"object","properties":{"title":{"type":"string","maxLength":24},"rows":{"type":"array","maxItems":10,"items":{"type":"object","required":["id","title"],"properties":{"id":{"type":"string","maxLength":200},"title":{"type":"string","maxLength":24},"description":{"type":"string","maxLength":72}}}}}}}}}}}}},"MessageInteractiveButtons":{"type":"object","required":["to","type","interactive"],"properties":{"to":{"type":"string","description":"Número de telefone do destinatário"},"type":{"type":"string","enum":["interactive"]},"interactive":{"type":"object","required":["type","body","action"],"properties":{"type":{"type":"string","enum":["button"]},"header":{"type":"object","properties":{"type":{"type":"string","enum":["text","image","video","document"]},"text":{"type":"string"},"image":{"type":"object","properties":{"id":{"type":"string"},"link":{"type":"string"}}},"video":{"type":"object","properties":{"id":{"type":"string"},"link":{"type":"string"}}},"document":{"type":"object","properties":{"id":{"type":"string"},"link":{"type":"string"},"filename":{"type":"string"}}}}},"body":{"type":"object","required":["text"],"properties":{"text":{"type":"string","maxLength":1024}}},"footer":{"type":"object","properties":{"text":{"type":"string","maxLength":60}}},"action":{"type":"object","required":["buttons"],"properties":{"buttons":{"type":"array","maxItems":3,"items":{"type":"object","required":["type","reply"],"properties":{"type":{"type":"string","enum":["reply"]},"reply":{"type":"object","required":["id","title"],"properties":{"id":{"type":"string","maxLength":256},"title":{"type":"string","maxLength":20}}}}}}}}}}}},"MessageInteractiveLocation":{"type":"object","required":["to","type","interactive"],"properties":{"to":{"type":"string","description":"Número de telefone do destinatário"},"type":{"type":"string","enum":["interactive"]},"interactive":{"type":"object","required":["type","body","action"],"properties":{"type":{"type":"string","enum":["location_request_message"]},"body":{"type":"object","required":["text"],"properties":{"text":{"type":"string","description":"Mensagem solicitando localização"}}},"action":{"type":"object","required":["name"],"properties":{"name":{"type":"string","enum":["send_location"]}}}}}}},"MessageInteractiveCalltoActionURLButton":{"type":"object","required":["to","type","interactive"],"properties":{"to":{"type":"string","description":"Número de telefone do destinatário"},"type":{"type":"string","enum":["interactive"]},"interactive":{"type":"object","required":["type","body","action"],"properties":{"type":{"type":"string","enum":["cta_url"]},"header":{"type":"object","properties":{"type":{"type":"string"},"text":{"type":"string"}}},"body":{"type":"object","required":["text"],"properties":{"text":{"type":"string"}}},"footer":{"type":"object","properties":{"text":{"type":"string"}}},"action":{"type":"object","required":["name","parameters"],"properties":{"name":{"type":"string","enum":["cta_url"]},"parameters":{"type":"object","required":["display_text","url"],"properties":{"display_text":{"type":"string","description":"Texto do botão"},"url":{"type":"string","format":"uri","description":"URL a ser aberta ao clicar"}}}}}}}}},"MessageCallPermission":{"type":"object","required":["to","interactive"],"properties":{"to":{"type":"string","description":"Número de telefone do destinatário"},"interactive":{"type":"object","required":["type","action","body"],"properties":{"type":{"type":"string","enum":["call_permission_request"]},"action":{"type":"object","required":["name"],"properties":{"name":{"type":"string","enum":["call_permission_request"]}}},"body":{"type":"object","required":["text"],"properties":{"text":{"type":"string","description":"Mensagem que explica o motivo da chamada"}}}}}}},"MessageButtonCall":{"type":"object","required":["messaging_product","recipient_type","to","type","interactive"],"properties":{"messaging_product":{"type":"string","enum":["whatsapp"]},"recipient_type":{"type":"string","enum":["individual"]},"to":{"type":"string","description":"Número de telefone do destinatário"},"type":{"type":"string","enum":["interactive"]},"interactive":{"type":"object","required":["type","body","action"],"properties":{"type":{"type":"string","enum":["voice_call"]},"body":{"type":"object","required":["text"],"properties":{"text":{"type":"string","description":"Mensagem com convite para chamada"}}},"action":{"type":"object","required":["name"],"properties":{"name":{"type":"string","enum":["voice_call"]}}}}}}},"MessageResponse":{"type":"object","description":"Resposta retornada após o envio bem-sucedido de uma mensagem. Contém\ninformações sobre o destinatário e o identificador único da mensagem.\n","properties":{"contacts":{"type":"array","description":"Array de informações de contato para os destinatários da mensagem.\nContém tanto o número informado quanto o WhatsApp ID resolvido.\n","items":{"$ref":"#/components/schemas/ContactsResponse"}},"messages":{"type":"array","description":"Array de objetos de mensagem contendo identificadores únicos.\nUse estes IDs para rastrear o status via webhooks.\n","items":{"$ref":"#/components/schemas/MessagesResponse"}}}},"ContactsResponse":{"type":"object","description":"Informações de resolução de contato. Mostra como o número foi\nassociado a uma conta do WhatsApp.\n","properties":{"input":{"type":"string","description":"O número de telefone exatamente como foi fornecido na requisição.\nÚtil para correlacionar respostas com múltiplos destinatários.\n"},"wa_id":{"type":"string","description":"O WhatsApp ID do destinatário. Este é o número normalizado\nregistrado no WhatsApp. Pode diferir do valor informado se foi ajustado o formato.\n"}}},"MessagesResponse":{"type":"object","description":"Informações de identificação da mensagem. O ID da mensagem é essencial\npara rastrear status de entrega e tratar respostas.\n","properties":{"id":{"type":"string","description":"ID único da mensagem WhatsApp (wamid). Use este ID para:\n- Rastrear status via webhooks (sent, delivered, read)\n- Correlacionar respostas recebidas com mensagens enviadas\n- Referenciar em chamados de suporte e depuração\n\nFormato: wamid.{identificador-em-base64}\n\nFluxo de exemplo:\n1. Envie a mensagem, receba o wamid\n2. O webhook recebe a atualização de status com o mesmo wamid\n3. Atualize seu banco de dados com o status de entrega\n"}}},"UnauthorizedResponse":{"type":"object","description":"Resposta de erro para falhas de autenticação. Verifique a configuração da chave de API se receber esta resposta.\n","properties":{"message":{"type":"string","description":"Mensagem de erro legível descrevendo a falha de autenticação.\nCausas comuns:\n- Chave de API não incluída na requisição\n- Chave de API inválida ou expirada\n- Chave de API sem permissão para esta operação\n"},"code":{"type":"string","description":"Código de erro para tratamento programático"}}}},"responses":{"Success":{"description":"Mensagem enviada com sucesso","content":{"application/json":{"schema":{"$ref":"#/components/schemas/MessageResponse"}}}},"Unauthorized":{"description":"Não autorizado.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/UnauthorizedResponse"}}}}}},"paths":{"/messages":{"post":{"tags":["messages"],"summary":"Enviar mensagem","description":"Envia mensagens para usuários do WhatsApp por meio da Business API. Este endpoint\ncentraliza a comunicação de saída com clientes.\n\n## Tipos de Mensagem\n\n| Tipo | Descrição | Janela de 24h exigida |\n|------|-----------|-----------------------|\n| text | Mensagens de texto simples até 4096 caracteres | Sim |\n| image | Imagens JPEG, PNG até 5MB | Sim |\n| video | Vídeos MP4, 3GPP até 16MB | Sim |\n| audio | Áudios AAC, MP3, OGG até 16MB | Sim |\n| document | PDF, arquivos Office até 100MB | Sim |\n| sticker | Figurinhas WEBP, WEBM | Sim |\n| contacts | Compartilhamento de cartões de contato | Sim |\n| location | Compartilhamento de coordenadas geográficas | Sim |\n| template | Templates aprovados previamente | Não |\n| interactive | Listas, botões, catálogos de produtos | Sim |\n\n## Janela de Mensagens\n\nO WhatsApp aplica uma janela de atendimento de 24 horas:\n- O envio de qualquer tipo de mensagem é permitido dentro de 24 horas da última mensagem do cliente\n- Fora dessa janela, o envio exige templates aprovados\n- Mensagens de template podem ser enviadas a qualquer momento para usuários opt-in\n- Cada resposta do cliente reabre a janela de 24 horas\n\n## Precificação por Conversa\n\nAs conversas são categorizadas e precificadas de forma distinta:\n- **Marketing**: Conteúdo promocional, ofertas, anúncios\n- **Utility**: Atualizações de pedido, notificações de conta, lembretes de pagamento\n- **Authentication**: Códigos OTP, verificação de login\n- **Service**: Conversas iniciadas pelo cliente (gratuitas dentro da janela)\n\n## Boas Práticas\n\n- Mensagens de marketing devem incluir instruções de cancelamento (opt-out)\n- Templates devem ser usados em notificações sensíveis ao tempo\n- O tratamento de erros deve considerar falhas de entrega\n- O status das mensagens deve ser monitorado via webhooks para confirmação de entrega\n","operationId":"sendMessage","requestBody":{"required":true,"content":{"application/json":{"schema":{"oneOf":[{"$ref":"#/components/schemas/Text"},{"$ref":"#/components/schemas/Contacts"},{"$ref":"#/components/schemas/Template"},{"$ref":"#/components/schemas/Image"},{"$ref":"#/components/schemas/Video"},{"$ref":"#/components/schemas/Audio"},{"$ref":"#/components/schemas/Document"},{"$ref":"#/components/schemas/Sticker"},{"$ref":"#/components/schemas/MessageInteractiveList"},{"$ref":"#/components/schemas/MessageInteractiveButtons"},{"$ref":"#/components/schemas/MessageInteractiveLocation"},{"$ref":"#/components/schemas/MessageInteractiveCalltoActionURLButton"},{"$ref":"#/components/schemas/MessageCallPermission"},{"$ref":"#/components/schemas/MessageButtonCall"}]}}}},"responses":{"200":{"$ref":"#/components/responses/Success"},"400":{"description":"Payload de requisição inválido","content":{"application/json":{"schema":{"type":"object","properties":{"message":{"type":"string"},"details":{"type":"array","items":{"type":"object"}}}}}}},"401":{"$ref":"#/components/responses/Unauthorized"}}}}}}
````


---

# Agent Instructions: 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:

```
GET https://docs.fortics.com.br/bsp-api-reference/reference/messages.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
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.
