Documentação API WhatsApp

Guia completo de integração com WhatsApp

Gerenciamento de Instâncias WhatsApp

Sobre o Gerenciamento de Instâncias

Sistema de gerenciamento multi-instância do WhatsApp que permite:

  • Criar e gerenciar múltiplas conexões do WhatsApp
  • Monitorar status em tempo real de cada instância
  • Conectar via QR Code de forma segura
  • Iniciar/pausar sessões conforme necessidade
  • Gerenciar recursos de forma independente

Fluxo de Uso Recomendado

  1. Criar uma nova instância
  2. Obter o QR Code para conexão
  3. Escanear o QR Code com o WhatsApp
  4. Verificar o status da conexão
  5. Iniciar o uso das funcionalidades

Webhooks Disponíveis

Quando configurados, os seguintes eventos são notificados via webhook:

  • Status Change: Mudanças no status da instância
    {
      "event": "status_change",
      "instancia_id": 100,
      "instancia_nome": "Minha Instância",
      "status": {
        "anterior": "connected",
        "atual": "disconnected"
      },
      "timestamp": "2025-01-15T12:34:30-03:00"
    }
  • Mensagem Enviada/Recebida: Notificação de mensagens
    {
      "id": 123,
      "mensagem_id": "ABC123",
      "instancia_id": 100,
      "mensagem": "Conteúdo da mensagem",
      "origem": "5511999999999",
      "destino": "5511888888888",
      "enviado": true,
      "erro": null,
      "tipo_envio": "MENSAGEM_ENVIADA", // ou "MENSAGEM_RECEBIDA"
      "grupo": false,
      "lido": false,
      "created_at": "2025-01-15T12:34:30-03:00"
    }

Criar Nova Instância

1. Criar Nova Instância

POST /api/v1/whatsapp/instancia/criar

Cria uma nova instância do WhatsApp para uso

Parâmetros

Parâmetro Tipo Obrigatório Descrição
nome string Sim Nome para identificar a instância (máx. 255 caracteres)
webhook_url string Não URL para receber webhooks (ativa automaticamente as notificações)

Exemplo de Requisição

curl -X POST "https://apifacil.dev/api/v1/whatsapp/instancia/criar" \
     -H "Authorization: seu_token" \
     -H "Content-Type: application/json" \
     -d '{
       "nome": "Minha Instância"
     }'

Exemplo de Resposta (Sucesso)

{
    "error": false,
    "message": "Instância criada com sucesso",
    "data": {
        "instancia_id": "123",
        "nome": "Minha Instância",
        "status": "inactive",
        "token": "abc123def456"
    }
}

Observações

  • Limite de instâncias varia conforme o plano
  • O token gerado é único e necessário para operações futuras
  • A instância inicia com status "inactive"

Códigos de Resposta

Código Descrição
200 Instância criada com sucesso
403 Limite de instâncias atingido
422 Erro de validação nos dados

Listar Instâncias

2. Listar Instâncias

GET /api/v1/whatsapp/instancia/listar

Retorna todas as instâncias do usuário

Exemplo de Requisição

curl -X GET "https://apifacil.dev/api/v1/whatsapp/instancia/listar" \
     -H "Authorization: seu_token"

Exemplo de Resposta

{
    "error": false,
    "data": [
        {
            "id": "123",
            "nome": "Minha Instância",
            "public_token": "abc123def456",
            "status": "active",
            "whatsapp_status": "connected",
            "created_at": "2024-01-01T10:00:00Z"
        },
        {
            "id": "124",
            "nome": "Instância 2",
            "public_token": "xyz789",
            "status": "inactive",
            "whatsapp_status": "disconnected",
            "created_at": "2024-01-02T15:30:00Z"
        }
    ]
}

Status Possíveis

Status Descrição
active Instância ativa e pronta para uso
inactive Instância criada mas não iniciada
connected WhatsApp conectado e operacional
disconnected WhatsApp desconectado

Detalhes da Resposta

Campo Tipo Descrição
id string Identificador único da instância
nome string Nome da instância
public_token string Token público para operações
status string Status atual da instância
whatsapp_status string Status da conexão WhatsApp

Status da Instância

3. Verificar Status da Instância

GET /api/v1/whatsapp/instancia/{id}/status

Retorna o status detalhado de uma instância específica

Parâmetros de URL

Parâmetro Tipo Descrição
id string ID da instância

Exemplo de Requisição

curl -X GET "https://apifacil.dev/api/v1/whatsapp/instancia/123/status" \
     -H "Authorization: seu_token"

Exemplo de Resposta

{
    "error": false,
    "data": {
        "status_banco": "connected",
        "tem_qrcode": false
    }
}

Estados Possíveis

Estado Descrição Próximas Ações
connected WhatsApp conectado Pronto para uso
disconnected Desconectado Reconectar ou gerar novo QR

Obter QR Code

4. Obter QR Code

GET /api/v1/whatsapp/instancia/{id}/qrcode

Obtém o QR Code para conexão do WhatsApp

O QR Code é válido por 20 segundos. Após esse período, será necessário gerar um novo.

Exemplo de Requisição

curl -X GET "https://apifacil.dev/api/v1/whatsapp/instancia/123/qrcode" \
     -H "Authorization: seu_token"

Exemplo de Resposta

{
    "error": false,
    "data": {
        "qrcode": "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgA...",
        "sessao_ativa": false
    }
}

⚠️ Importantes Considerações

  • QR Code expira em 20 segundos
  • Máximo de 3 tentativas por minuto
  • Recomenda-se implementar retry com intervalo
  • Verificar status após scan bem-sucedido

Iniciar Sessão

5. Gerenciamento de Sessão

Iniciar Sessão

POST /api/v1/whatsapp/instancia/{id}/iniciar

Inicia uma instância específica do WhatsApp

Exemplo de Requisição

curl -X POST "https://apifacil.dev/api/v1/whatsapp/instancia/123/iniciar" \
     -H "Authorization: seu_token"

Exemplo de Resposta

{
    "error": false,
    "message": "Sessão iniciada com sucesso"
}

Pausar Sessão

Pausar Sessão

POST /api/v1/whatsapp/instancia/{id}/pausar

Pausa temporariamente uma instância do WhatsApp

Exemplo de Requisição

curl -X POST "https://apifacil.dev/api/v1/whatsapp/instancia/123/pausar" \
     -H "Authorization: seu_token"

Exemplo de Resposta

{
    "error": false,
    "message": "Sessão pausada com sucesso"
}

Desconectar Sessão

Desconectar Sessão

POST /api/v1/whatsapp/instancia/{id}/desconectar

Desconecta completamente uma instância do WhatsApp e limpa os dados da sessão

Esta operação é mais agressiva que pausar. Ela remove todos os dados da sessão e requer um novo QR Code para reconexão.

Exemplo de Requisição

curl -X POST "https://apifacil.dev/api/v1/whatsapp/instancia/123/desconectar" \
     -H "Authorization: seu_token"

Exemplo de Resposta

{
    "error": false,
    "message": "Instância desconectada com sucesso"
}

Diferenças entre Pausar e Desconectar

Ação Pausar Desconectar
Dados da Sessão Mantidos Removidos
Reconexão Rápida Requer novo QR Code
Notificações Preservadas Removidas

Deletar Instância

6. Deletar Instância

DELETE /api/v1/whatsapp/instancia/{id}

Remove permanentemente uma instância do WhatsApp

Exemplo de Requisição

curl -X DELETE "https://apifacil.dev/api/v1/whatsapp/instancia/123" \
     -H "Authorization: seu_token"

Exemplo de Resposta

{
    "error": false,
    "message": "Instância deletada com sucesso"
}

⚠️ Atenção

  • Ação irreversível
  • Remove todos os dados associados

Verificar Número do WhatsApp

Verificar Número

POST /api/v1/whatsapp/instancia/verificar-numero

Verifica se um número está registrado no WhatsApp

Este endpoint permite verificar se um número de telefone está registrado no WhatsApp antes de tentar enviar mensagens. Se não for informada uma instância, será utilizada a primeira instância do usuário.

Parâmetros

Parâmetro Tipo Obrigatório Descrição
telefone string Sim Número a ser verificado (formato: DDI + DDD + número)
instancia string Não ID da instância a ser utilizada. Se não informado, usa a primeira instância

Exemplo de Requisição

curl -X POST "https://apifacil.dev/api/v1/whatsapp/instancia/verificar-numero" \
     -H "Authorization: seu_token" \
     -H "Content-Type: application/json" \
     -d '{
       "telefone": "5511999999999",
       "instancia": "123"
     }'

Exemplo de Resposta

{
    "error": false,
    "data": {
        "exists": true,
        "number": "5511999999999"
    },
    "message": "Verificação realizada com sucesso"
}

Notificações WhatsApp

Listar Notificações

GET /api/v1/whatsapp/notificacoes

Lista todas as notificações do WhatsApp

Parâmetros de Query

Parâmetro Tipo Obrigatório Descrição
data_inicial string Não Data inicial para filtro (Y-m-d)
data_final string Não Data final para filtro (Y-m-d)
instancia_id integer Não ID da instância para filtrar
tipo_envio string Não Tipo de envio (ex: MENSAGEM_ENVIADA, MENSAGEM_RECEBIDA)
per_page integer Não Quantidade de registros por página (padrão: 15)

Exemplo de Requisição

curl -X GET "https://apifacil.dev/api/v1/whatsapp/notificacoes?data_inicial=2024-01-01&data_final=2024-01-31" \
     -H "Authorization: seu_token"

Exemplo de Resposta

{
    "error": false,
    "data": {
        "current_page": 1,
        "data": [
            {
                "id": 123,
                "mensagem_id": "ABC123",
                "instancia_id": 100,
                "mensagem": "Conteúdo da mensagem",
                "origem": "5511999999999",
                "destino": "5511888888888",
                "enviado": true,
                "erro": null,
                "tipo_envio": "MENSAGEM_ENVIADA",
                "grupo": false,
                "lido": false,
                "created_at": "2024-01-15T12:34:30Z",
                "updated_at": "2024-01-15T12:34:30Z"
            }
        ],
        "first_page_url": "http://api.exemplo.com/api/v1/whatsapp/notificacoes?page=1",
        "from": 1,
        "last_page": 1,
        "last_page_url": "http://api.exemplo.com/api/v1/whatsapp/notificacoes?page=1",
        "next_page_url": null,
        "path": "http://api.exemplo.com/api/v1/whatsapp/notificacoes",
        "per_page": 15,
        "prev_page_url": null,
        "to": 1,
        "total": 1
    }
}

Consultar Notificação

GET /api/v1/whatsapp/notificacoes/{id}

Retorna os detalhes de uma notificação específica

Exemplo de Requisição

curl -X GET "https://apifacil.dev/api/v1/whatsapp/notificacoes/123" \
     -H "Authorization: seu_token"

Exemplo de Resposta

{
    "error": false,
    "data": {
        "id": 123,
        "mensagem_id": "ABC123",
        "instancia_id": 100,
        "mensagem": "Conteúdo da mensagem",
        "origem": "5511999999999",
        "destino": "5511888888888",
        "enviado": true,
        "erro": null,
        "tipo_envio": "MENSAGEM_ENVIADA",
        "grupo": false,
        "lido": false,
        "created_at": "2024-01-15T12:34:30Z",
        "updated_at": "2024-01-15T12:34:30Z"
    }
}

Tipos de Envio Disponíveis

Tipo Descrição
MENSAGEM_ENVIADA Mensagem enviada com sucesso
MENSAGEM_RECEBIDA Mensagem recebida de um contato
ERRO_PROCESSAMENTO Erro durante o processamento da mensagem
MENSAGEM_GRUPO_RECEBIDO Mensagem recebida em um grupo
AUDIO_RECEBIDO Áudio recebido
IMAGEM_RECEBIDA Imagem recebida
VIDEO_RECEBIDO Vídeo recebido
DOCUMENTO_RECEBIDO Documento recebido

⚠️ Atenção: Configuração Necessária

Para utilizar a API de WhatsApp, é necessário:

  • Cadastrar uma instância de WhatsApp no painel
  • Configurar e conectar seu celular através do QR Code
  • Aguardar a sincronização completa
Importante:

O envio de mensagens só funcionará após a configuração completa de uma instância e a sincronização bem-sucedida com seu WhatsApp.

Enviar Mensagem WhatsApp

POST /api/v1/whatsapp/enviar-mensagem

Envia uma mensagem de texto via WhatsApp

Parâmetros

Parâmetro Tipo Descrição
telefone string Número do WhatsApp com DDD
mensagem string Texto da mensagem
instancia string ID da instância do WhatsApp (opcional)

Importante: Formato do Telefone

O número de telefone deve incluir o código do país. Exemplos:

  • Brasil: 5511999999999
  • EUA: 13025550123
  • Portugal: 351912345678

Códigos de País Suportados

Américas
  • Brasil (55) - 11 dígitos
  • EUA/Canadá (1) - 10 dígitos
  • México (52) - 10 dígitos
  • Argentina (54) - 10 dígitos
  • Chile (56) - 9 dígitos
Europa
  • Reino Unido (44) - 10 dígitos
  • Espanha (34) - 9 dígitos
  • Portugal (351) - 9 dígitos
  • França (33) - 9 dígitos
  • Alemanha (49) - 11 dígitos
  • Itália (39) - 10 dígitos
Ásia/Pacífico
  • Japão (81) - 10 dígitos
  • China (86) - 11 dígitos
  • Índia (91) - 10 dígitos
  • Austrália (61) - 9 dígitos

Exemplo de requisição

{
  "telefone": "5511999999999",  // Inclui código do país (55) + DDD (11) + número
  "mensagem": "Olá! Esta é uma mensagem de teste.",
  "instancia": "12345"
}

Exemplo cURL

curl -X POST "https://apifacil.dev/api/v1/whatsapp/enviar-mensagem" \
     -H "Authorization: seu_token_aqui" \
     -H "Content-Type: application/json" \
     -d '{
       "telefone": "5511999999999",
       "mensagem": "Olá! Esta é uma mensagem de teste.",
       "instancia": "12345"
     }'

Exemplo de resposta

{
  "error": false,
  "data": {
    "queue": "mensagem_em_fila",
    "message": "Mensagem em fila para envio"
  }
}

Atenção!

O link fornecido no campo "url" deve estar presente no texto da mensagem para que o preview funcione corretamente.

Enviar Mensagem com Preview

POST /api/v1/whatsapp/enviar-preview

Envie mensagens com preview personalizado de links

Envie mensagens de texto com preview personalizado de links para seus contatos no WhatsApp.

Endpoint

POST /api/v1/whatsapp/enviar-preview
Parâmetro Tipo Descrição Obrigatório
telefone string Número do WhatsApp (com DDD) Sim
mensagem string Texto da mensagem Sim
url string URL para gerar o preview Sim
titulo string Título personalizado para o preview Não
descricao string Descrição personalizada para o preview Não
imagem_url string URL da imagem para o preview Não
instancia string ID da instância do WhatsApp Não
tipo_imagem string Tamanho do preview da imagem (small, medium ou large) Não

Exemplo de Requisição

{
    "telefone": "5511999999999",
    "mensagem": "Confira este link interessante! https://exemplo.com",
    "url": "https://exemplo.com",
    "titulo": "Título Personalizado",
    "descricao": "Descrição personalizada do link",
    "imagem_url": "https://exemplo.com/imagem.jpg",
    "tipo_imagem": "medium"
}

Exemplo de Requisição cURL

curl -X POST https://apifacil.com/api/v1/whatsapp/enviar-preview \
-H 'Content-Type: application/json' \
-H 'Authorization: sua_chave_de_api' \
-d '{
    "telefone": "5511999999999",
    "mensagem": "Confira este link interessante! https://exemplo.com",
    "url": "https://exemplo.com",
    "titulo": "Título Personalizado",
    "descricao": "Descrição personalizada do link",
    "imagem_url": "https://exemplo.com/imagem.jpg",
    "tipo_imagem": "medium"
}'

Exemplo de Resposta

{
    "error": false,
    "data": {
        "queue": true,
        "message": "Mensagem em fila para envio"
    }
}

Dica: Se não forem fornecidos título, descrição ou imagem, o sistema tentará extraí-los automaticamente da URL fornecida.

Enviar Imagem WhatsApp

POST /api/v1/whatsapp/enviar-foto

Envia uma imagem via WhatsApp

Parâmetros

Parâmetro Tipo Descrição
telefone string Número do WhatsApp com DDD
link string URL da imagem
nome string Nome da imagem
instancia string ID da instância do WhatsApp (opcional)

Exemplo de requisição

{
  "telefone": "5551999999999",
  "link": "https://example.com/imagem.jpg",
  "nome": "imagem.jpg",
  "instancia": "12345"
}

Exemplo cURL

curl -X POST "https://apifacil.dev/api/v1/whatsapp/enviar-foto" \
 -H "Authorization: seu_token_aqui" \
 -H "Content-Type: application/json" \
 -d '{
   "telefone": "5551999999999",
   "link": "https://example.com/imagem.jpg",
   "nome": "imagem.jpg",
   "instancia": "12345"
 }'

Enviar Arquivo WhatsApp

POST /api/v1/whatsapp/enviar-arquivo

Envia um arquivo via WhatsApp

Parâmetros

Parâmetro Tipo Descrição
telefone string Número do WhatsApp com DDD
link string URL do arquivo
nome string Nome do arquivo
mensagem string Texto opcional para o arquivo
instancia string ID da instância do WhatsApp (opcional)

Exemplo de requisição

{
  "telefone": "5551999999999",
  "link": "https://example.com/documento.pdf",
  "nome": "documento.pdf",
  "mensagem": "Confira o documento.",
  "instancia": "12345"
}

Exemplo cURL

curl -X POST "https://apifacil.dev/api/v1/whatsapp/enviar-arquivo" \
 -H "Authorization: seu_token_aqui" \
 -H "Content-Type: application/json" \
 -d '{
   "telefone": "5551999999999",
   "link": "https://example.com/documento.pdf",
   "nome": "documento.pdf",
   "mensagem": "Confira o documento.",
   "instancia": "12345"
 }'

Enviar Arquivo Base64

Endpoint para enviar arquivos codificados em base64 através do WhatsApp. Este método é útil quando você já tem o arquivo em formato base64 e não quer fazer upload para um servidor externo.

POST /v1/whatsapp/enviar-arquivo-64

Parâmetros

Parâmetro Tipo Descrição
arquivo_base64 string Arquivo codificado em base64 (sem o prefixo data:...)
tipo_arquivo string Extensão do arquivo (pdf, doc, xlsx, etc)
nome string Nome do arquivo que aparecerá no WhatsApp
telefone string Número do telefone no formato DDDNúmero
mensagem string Mensagem opcional que acompanha o arquivo
instancia string ID da instância (opcional)

Exemplo de Requisição

{
    "arquivo_base64": "JVBERi0xLjcKCjEgMCBvYmogICUgZW50...",
    "tipo_arquivo": "pdf",
    "nome": "documento.pdf",
    "telefone": "11999999999",
    "mensagem": "Segue o documento solicitado",
    "instancia": "123"
}

Exemplo cURL

curl --location 'https://apifacil.dev/api/v1/whatsapp/enviar-arquivo-64' \
--header 'Authorization: seu_token_aqui' \
--header 'Content-Type: application/json' \
--data '{
    "arquivo_base64": "JVBERi0xLjcKCjEgMCBvYmogICUgZW50...",
    "tipo_arquivo": "pdf",
    "nome": "documento.pdf",
    "telefone": "11999999999",
    "mensagem": "Segue o documento solicitado",
    "instancia": "123"
}'

Resposta de Sucesso

{
    "error": false,
    "data": {
        "queue": "msg_123456",
        "message": "Arquivo em fila para envio"
    }
}

Tipos de Arquivo Suportados

  • PDF (pdf)
  • Word (doc, docx)
  • Excel (xls, xlsx)
  • Imagens (png, jpg, jpeg, gif)
  • CSV (csv)
  • Texto (txt)

O tipo do arquivo informado deve corresponder ao conteúdo real do arquivo base64. A API valida o MIME type do arquivo para garantir a segurança.

Enviar Áudio WhatsApp

POST /api/v1/whatsapp/enviar-audio

Envia uma mensagem de voz via WhatsApp

Parâmetros

Parâmetro Tipo Descrição
telefone string Número do WhatsApp com DDD
audio_url string URL do arquivo de áudio (MP3/MP4)
instancia string ID da instância do WhatsApp (opcional)

Dicas para Áudio

  • Formatos suportados: MP3, MP4, OGG, M4A, WEBM
  • Tamanho máximo: 16MB
  • Duração máxima recomendada: 2 minutos
  • URL deve ser pública e acessível
  • Para áudios gravados no WhatsApp, o formato OGG é recomendado

Exemplo de requisição

{
"telefone": "5511999999999",
"audio_url": "https://example.com/audio.mp3",
"instancia": "12345"
}

Exemplo cURL

curl -X POST "https://apifacil.dev/api/v1/whatsapp/enviar-audio" \
 -H "Authorization: seu_token_aqui" \
 -H "Content-Type: application/json" \
 -d '{
   "telefone": "5511999999999",
   "audio_url": "https://example.com/audio.mp3",
   "instancia": "12345"
 }'

Listar Grupos do WhatsApp

GET /whatsapp/grupos

Lista todos os grupos que a instância participa

Parâmetros

Parâmetro Tipo Descrição
instancia string ID da instância do WhatsApp (opcional)

Exemplo de requisição cURL

curl -X GET "https://apifacil.dev/api/v1/whatsapp/grupos?instancia=12345" \
 -H "Authorization: seu_token_aqui"

Exemplo de resposta

{
"error": false,
"data": [
    {
        "id": "123456789-group@g.us",
        "name": "Nome do Grupo",
        "participants": 50,
        "isAdmin": true
    }
]
}

Enviar Mensagem para Grupo do WhatsApp

POST /whatsapp/grupo/enviar-mensagem

Envia uma mensagem para um grupo específico

Parâmetros

Parâmetro Tipo Descrição
grupo_id string ID do grupo (obtido via listagem)
mensagem string Texto da mensagem
instancia string ID da instância do WhatsApp (opcional)

Exemplo de requisição

{
"grupo_id": "123456789-group@g.us",
"mensagem": "Olá grupo!",
"instancia": "12345"
}

Exemplo cURL

curl -X POST "https://apifacil.dev/api/v1/whatsapp/grupo/enviar-mensagem" \
 -H "Authorization: seu_token_aqui" \
 -H "Content-Type: application/json" \
 -d '{
   "grupo_id": "123456789-group@g.us",
   "mensagem": "Olá grupo!",
   "instancia": "12345"
 }'

Enviar Arquivo para Grupo do WhatsApp

POST /whatsapp/grupo/enviar-arquivo

Envia um arquivo para um grupo específico

Parâmetros

Parâmetro Tipo Descrição
grupo_id string ID do grupo (obtido via listagem)
link string URL do arquivo
nome string Nome do arquivo
mensagem string Texto opcional para o arquivo
instancia string ID da instância do WhatsApp (opcional)

Exemplo de requisição

{
"grupo_id": "123456789-group@g.us",
"link": "https://example.com/documento.pdf",
"nome": "documento.pdf",
"mensagem": "Confira o documento.",
"instancia": "12345"
}

Exemplo cURL

curl -X POST "https://apifacil.dev/api/v1/whatsapp/grupo/enviar-arquivo" \
 -H "Authorization: seu_token_aqui" \
 -H "Content-Type: application/json" \
 -d '{
   "grupo_id": "123456789-group@g.us",
   "link": "https://example.com/documento.pdf",
   "nome": "documento.pdf",
   "mensagem": "Confira o documento.",
   "instancia": "12345"
 }'

Enviar Mensagem com Preview para Grupo do WhatsApp

POST /whatsapp/grupo/enviar-preview

Envia uma mensagem com preview de link para um grupo específico

Parâmetros

Parâmetro Tipo Descrição
grupo_id string ID do grupo (obtido via listagem)
mensagem string Texto da mensagem
url string URL que será exibida no preview
titulo string Título do preview (opcional)
descricao string Descrição do preview (opcional)
imagem_url string URL da imagem do preview (opcional)
tipo_imagem string Tamanho da imagem (small, medium, large) - padrão: medium
instancia string ID da instância do WhatsApp (opcional)

Exemplo de requisição

{
"grupo_id": "123456789-group@g.us",
"mensagem": "Confira este link interessante!",
"url": "https://exemplo.com",
"titulo": "Título do Link",
"descricao": "Descrição do conteúdo",
"imagem_url": "https://exemplo.com/imagem.jpg",
"tipo_imagem": "medium",
"instancia": "12345"
}

Exemplo cURL

curl -X POST "https://apifacil.dev/api/v1/whatsapp/grupo/enviar-preview" \
 -H "Authorization: seu_token_aqui" \
 -H "Content-Type: application/json" \
 -d '{
   "grupo_id": "123456789-group@g.us",
   "mensagem": "Confira este link interessante!",
   "url": "https://exemplo.com",
   "titulo": "Título do Link",
   "descricao": "Descrição do conteúdo",
   "imagem_url": "https://exemplo.com/imagem.jpg",
   "tipo_imagem": "medium",
   "instancia": "12345"
 }'