```html
🧩 Como usar a API de Templates no Atom?
A API de Templates do Atom permite integrar seus próprios aplicativos com o serviço de envio de mensagens pelo WhatsApp usando templates pré-aprovados (Templates Messages). Com esta API você poderá:
✅ Enviar uma mensagem com template
📋 Obter uma lista de templates disponíveis
🔍 Consultar os detalhes de um template pelo seu ID
🌐 Ambientes disponíveis
| Ambiente |
| Uso previsto |
| Endpoint base |
| Produção |
| Para clientes finais e operações reais |
| AI |
| Ambiente alternativo disponível para integrações específicas ou casos de uso designados. |
1. Enviar um Template (Template Message)
Este serviço permite o envio de um Template Message utilizando um número de WhatsApp Oficial e otemplateIdcorrespondente.
Comportamento
Número com conversa ativa:Se o número já tem uma conversa, a mensagem será enviada sobre essa conversa e a confirmação será imediata.
Número com conversa ativa:
Se o número já tem uma conversa, a mensagem será enviada sobre essa conversa e a confirmação será imediata.
Número sem conversa ativa:Se não existe uma conversa prévia, a mensagem ficará em estado “pendente” até receber a confirmação do provedor de WhatsApp Oficial.
Número sem conversa ativa:
Se não existe uma conversa prévia, a mensagem ficará em estado “pendente” até receber a confirmação do provedor de WhatsApp Oficial.
Detalhes Técnicos
Tipo de conexão:Acesso público pela Internet
Método:POST
Encabezados obrigatórios:Content-type: application/jsonCharset: utf-8Authorization: Bearer (token público)
Content-type: application/json
Charset: utf-8
Authorization: Bearer (token público)
Endpoint según ambiente:Produção:https://us-central1-atomchat-io.cloudfunctions.net/templatesAI:https://us-central1-atom-ai.cloudfunctions.net/templates
Produção:
AI:
Parâmetros do Corpo (JSON)
| Parâmetro |
| Descrição |
| Tipo |
| Requerido |
| templateId |
| ID do Template Message de AtomChat. |
| string |
| Sim |
| phoneNumber |
| Número de telefone ao qual será enviado o template. Deve incluir o código do país sem o sinal + e sem espaços. Correto: 50755667788 Incorreto: +50755667788, 55667788, 507 55667788 |
| string |
| Sim |
| clientName |
| Nome do cliente. Se não for incluído, será usado o número de telefone como valor padrão. |
| string |
| Opcional |
| groupName |
| Grupo ao qual será atribuída a conversa. Se não for indicado, será utilizado o primeiro grupo associado à integração. |
| string |
| Opcional |
| assign |
| Define se a conversa é atribuída a um agente (true) ou ao bot (false, valor padrão). |
| boolean |
| Opcional |
| params |
| Objeto com os parâmetros requeridos pelo template. Exemplo: { "param1": "valor", "param2": "outro valor" } |
| object |
| Opcional |
Exemplo de Corpo (JSON)
Respostas Possíveis
| Escenario |
| Código |
| Resposta |
| Template enviado |
| 200 |
| { "success": true, "message": "Sent", "data": { "conversation_id": "abc123" } } |
| Template pendente de envio |
| 202 |
| { "success": false, "conversationId": "abc123", "status": 202 } |
| Parâmetros incorretos |
| 400 |
| { "success": false, "message": "No hay datos para enviar" } |
| Faltam parâmetros requeridos |
| 400 |
| Resposta com detalhe técnico sobre osparamsfaltantes |
| Template sem ID ou mensagem definida |
| 400 |
| Resposta com detalhe técnico sobre os campostemplate.appIdotemplate.message |
| Canal não conectado |
| 401 |
| Resposta de erro indicando que o canal de WhatsApp não está configurado |
| Token incorreto |
| 401 |
| Resposta de erro por token público inválido |
| Límite de conversas alcanzado |
| 401 |
| { "success": false, "message": "The client has reached conversations limit" } |
| Error interno del sistema |
| 500 |
| { "message": "Something went wrong while the operation was executed", "type": "Internal Server Error" } |
2. Listar Templates
Este endpoint permite recuperar uma lista de templates ativas disponíveis no canal associado ao token público.
Detalhes Técnicos
Tipo de conexão:Acesso público pela Internet
Método:GET
Encabezados obrigatórios:Content-type: application/jsonCharset: utf-8Authorization: Bearer (token público)
Content-type: application/json
Charset: utf-8
Authorization: Bearer (token público)
Endpoint
Utilizar a URL base correspondente ao ambiente:
Produção:
AI:
Parâmetros Opcionais
| Parâmetro |
| Descrição |
| Tipo |
| Requerido |
| page |
| Número de página. Default: 1 |
| string |
| Não |
| size |
| Quantidade de resultados por página |
| string |
| Não |
| sort |
| Orden de resultados (ej:ascodesc) |
| string |
| Não |
Exemplo de Resposta JSON
3. Obter Template por ID
Este serviço permite obter os detalhes completos de um template específico utilizando sutemplateId.
Detalhes Técnicos
Tipo de conexão:Acesso público pela Internet
Método:GET
Encabezados obrigatórios:Content-type: application/jsonCharset: utf-8Authorization: Bearer (token público)
Content-type: application/json
Charset: utf-8
Authorization: Bearer (token público)
Endpoint
Utilizar a URL base correspondente ao ambiente:
Produção:
AI:
Reemplazá {templateId} por el ID real de la plantilla que deseás consultar.
Ejemplo de Resposta JSON
Considerações Finais
Ambiente:Verifique se você está utilizando o endpoint correto de acordo com o ambiente (Produção ou AI), especialmente em testes internos e desenvolvimentos.
Ambiente:
Verifique se você está utilizando o endpoint correto de acordo com o ambiente (Produção ou AI), especialmente em testes internos e desenvolvimentos.
Validação nophoneNumber:Certifique-se de utilizar o formato correto do número de telefone (código do país sem o sinal + nem espaços) para evitar erros no envio.
Validação nophoneNumber:
Certifique-se de utilizar o formato correto do número de telefone (código do país sem o sinal + nem espaços) para evitar erros no envio.
Erros comuns:Revise as respostas de erro para identificar problemas em parâmetros, autorização (token), ou limitações no canal de WhatsApp.
Erros comuns:
Revise as respostas de erro para identificar problemas em parâmetros, autorização (token), ou limitações no canal de WhatsApp.
```