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

# Configurar WhatsApp

> Conecte sua conta Twilio + um número aprovado pela Meta para que o Marcus envie WhatsApp em seu nome — guia hands-on do zero ao primeiro envio.

## O que você vai construir

Ao final deste guia, o **Marcus** vai conseguir disparar WhatsApp em
nome da sua empresa, com:

* Um número aprovado pela Meta (não o seu pessoal)
* Janela 24h da Meta respeitada automaticamente
* Tracking de respostas chegando no chat
* Audit trail completo de cada mensagem

Tempo estimado: **45 minutos a 7 dias** — a aprovação do número pela
Meta é o gargalo. As outras etapas levam 10 minutos.

## Pré-requisitos

<CardGroup cols={2}>
  <Card title="Conta Twilio" icon="user">
    Pay-as-you-go basta. [twilio.com](https://twilio.com)
  </Card>

  <Card title="Número de telefone novo" icon="phone">
    Preferencialmente NÃO um número pessoal ou do time. Use um número
    dedicado à empresa.
  </Card>

  <Card title="Documentos da empresa" icon="file-lines">
    CNPJ + razão social + endereço. A Meta verifica antes de aprovar.
  </Card>

  <Card title="Domínio verificado (recomendado)" icon="globe">
    Acelera a aprovação Meta. Não obrigatório, mas evita rebote.
  </Card>
</CardGroup>

## Passo 1: cadastrar conta Twilio

Vá em [twilio.com](https://twilio.com) e crie a conta. O processo
padrão inclui verificação de e-mail e telefone — não tem segredo
aqui.

<Info>
  **Conta nova vs sub-account.** Se você já tem Twilio rodando outras
  coisas (SMS de OTP, fluxos voice), considere criar uma
  **sub-account** dedicada ao Apollo Space. Isolamento de billing +
  permissões fica mais limpo.
</Info>

## Passo 2: aprovar o número WhatsApp

No dashboard Twilio: **Develop → Messaging → Senders → WhatsApp
senders → Get started**.

O Twilio te guia por um wizard:

1. Confirma os dados da empresa (CNPJ, razão social, endereço)
2. Cadastra o número (idealmente um número **novo + dedicado**)
3. Submete pra aprovação Meta
4. Aguarda

<Warning>
  **Aprovação Meta leva 2-7 dias úteis.** Não comece esse passo na
  véspera de um lançamento. E se for o primeiro WhatsApp Business da
  sua empresa, a Meta pode pedir verificação adicional do domínio +
  CNPJ — pode estender pra 14 dias em casos sensíveis.
</Warning>

**Resultado esperado:** e-mail do Twilio confirmando "Sender
approved" + o número aparece como **active** no painel
**Senders → WhatsApp**.

## Passo 3: criar Messaging Service

Ainda no Twilio: **Develop → Messaging → Services → Create new**.

| Campo               | Valor sugerido                                        |
| ------------------- | ----------------------------------------------------- |
| **Friendly name**   | "Apollo Space Outbound" (ou similar identificável)    |
| **Use case**        | Notifications / Marketing / Mixed (conforme seu caso) |
| **Sender pool**     | Adicione o número aprovado do passo 2                 |
| **Inbound webhook** | Deixe vazio — o Apollo Space preenche ao conectar     |
| **Status callback** | Idem — Apollo Space preenche                          |

Salvar e **copiar o Messaging Service SID** (formato `MGxxxx...`).
Você cola no Apollo Space no passo 5.

## Passo 4: pegar Account SID + Auth Token

No dashboard Twilio, **Account Dashboard → Account Info**:

```
Account SID:   AC........................
Auth Token:    ········  (clica pra revelar)
```

<Warning>
  **O Auth Token é equivalente à senha master da sua conta Twilio.**
  Quem tem o token pode disparar mensagens (e gerar fatura) em seu
  nome. Trate com o mesmo cuidado de uma senha: nunca commit em repo
  público, nunca cole em chat, nunca compartilhe em screenshot.

  Se você suspeitar que vazou, rotacione **imediatamente** no
  dashboard Twilio e atualize no Apollo Space.
</Warning>

## Passo 5: conectar no Apollo Space

No Apollo Space: **Settings → Integrações → WhatsApp → Conectar Twilio**.

Cole os três valores:

| Campo                     | De onde                     |
| ------------------------- | --------------------------- |
| **Account SID**           | Passo 4 (começa com `AC`)   |
| **Auth Token**            | Passo 4 (clica pra revelar) |
| **Messaging Service SID** | Passo 3 (começa com `MG`)   |

Clique **Conectar**. O Apollo Space executa por baixo dos panos:

1. Valida as credenciais com a API Twilio
2. Atualiza o **inbound webhook** + **status callback** do Messaging
   Service apontando pro Apollo Space (você não precisa fazer isso
   manualmente)
3. Marca a integração como **ativa**

**Resultado esperado:** badge **Conectado** na linha do WhatsApp em
**Settings → Integrações**.

## Passo 6: testar o envio

Em **Settings → Integrações → WhatsApp → Enviar mensagem teste**:

* Coloca seu próprio número WhatsApp como destinatário
* Escolhe um template aprovado pela Meta (ou texto livre se você é um
  contato recente do número)
* Clica **Enviar**

A mensagem chega no seu WhatsApp em segundos. O Apollo Space grava o teste
no histórico de uso da org.

<Tip>
  **Sem janela 24h aberta? Use template.** Como você nunca trocou
  mensagem com o número Apollo Space, está fora da janela 24h da Meta. O
  Apollo Space te oferece os templates pré-aprovados do seu Messaging
  Service. Escolha qualquer um — só pra testar a integração.
</Tip>

## Diagnóstico — erros comuns

| Erro                                    | Causa provável                                 | Como resolver                                                                     |
| --------------------------------------- | ---------------------------------------------- | --------------------------------------------------------------------------------- |
| **"Número não aprovado"**               | Meta ainda não aprovou, ou aprovação expirou   | Volte ao Twilio → status do sender. Re-submete se necessário                      |
| **"Authentication failed"**             | Auth Token errado ou rotacionado               | Confira no dashboard Twilio; cole de novo no Apollo Space                         |
| **"Messaging Service not found"**       | SID errado ou serviço deletado                 | Confirme o `MGxxx...` no dashboard Twilio                                         |
| **"Out of window — template required"** | Tentou texto livre fora da janela 24h          | Use template aprovado, ou aguarde uma resposta do destinatário pra abrir a janela |
| **"Number not in sender pool"**         | O número não está no pool do Messaging Service | Adicione o número ao pool no dashboard Twilio                                     |

Onde os logs ficam:

| Sistema           | Onde olhar                                                                 |
| ----------------- | -------------------------------------------------------------------------- |
| **Apollo Space**  | Settings → Integrações → WhatsApp → Histórico de envios                    |
| **Twilio**        | Develop → Messaging → Logs (mostra a resposta da Meta linha-a-linha)       |
| **Meta Business** | business.facebook.com → Quality Rating (saúde do número ao longo do tempo) |

## Dicas de produção

Antes de operar em escala real, vale revisar:

<AccordionGroup>
  <Accordion title="Rotação de credenciais" icon="rotate">
    Rotacione o **Auth Token** Twilio:

    * **Sempre** quando alguém com acesso deixa o time
    * **Periodicamente** (sugerido: a cada 6 meses) por higiene
    * **Imediatamente** se há suspeita de vazamento

    Trocar no Twilio + atualizar no Apollo Space leva 2 minutos. Marcus
    para de funcionar durante esses 2 minutos — agende em horário
    não-crítico.
  </Accordion>

  <Accordion title="Quality rating no Meta Business" icon="signal">
    A Meta atribui um **Quality Rating** ao seu número (verde / amarelo
    / vermelho). Se cair pra vermelho:

    * Você perde direito de iniciar conversas marketing
    * Pode receber suspensão temporária do número
    * Em casos extremos, banimento permanente

    O que afeta o rating: respostas negativas dos destinatários,
    opt-outs em massa, denúncias. **Não dispare em massa pra lista
    fria sem aquecer.** O Marcus respeita cadência conservadora por
    default — não acelere arbitrariamente.
  </Accordion>

  <Accordion title="Múltiplos números (escala)" icon="layer-group">
    Quando o volume cresce, considere adicionar **múltiplos números
    ao mesmo Messaging Service**. O Twilio distribui automaticamente
    a carga + isola o impacto se um número for penalizado.

    Custo: cada número aprovado é uma fatura mensal de hosting Twilio
    (independente do volume).
  </Accordion>

  <Accordion title="Templates aprovados" icon="file-check">
    Crie templates **na sua conta Twilio**, não no Apollo Space. Por quê:

    * O Twilio submete pra Meta + gerencia o ciclo de aprovação
    * Os templates ficam disponíveis pra qualquer ferramenta que use
      o mesmo Messaging Service (não só Apollo Space)
    * Apollo Space lê os templates aprovados automaticamente

    Bons templates: utility ou service (mais permissivos). Marketing
    template requer cuidado redobrado com tom + opt-out.
  </Accordion>
</AccordionGroup>

## Desconectar

Em **Settings → Integrações → WhatsApp → Desconectar**:

* Apollo Space apaga as credenciais do banco
* Apollo Space reverte os webhooks no Twilio (você precisa apontar pra
  outro endpoint depois — o Twilio não permite webhook vazio)
* Campanhas em andamento que usam WhatsApp **pausam** até reconectar

Sua conta Twilio e o número aprovado **continuam** — desconectar do
Apollo Space não mexe na sua infra Twilio.

## Próximos passos

<CardGroup cols={2}>
  <Card title="Marcus em ação" icon="paper-plane" href="/pt/agents/marcus">
    Como o agente outbound opera o canal que você acabou de conectar.
  </Card>

  <Card title="Outbound — feature" icon="paper-plane" href="/pt/features/outbound">
    Tipos de campanha, cadência, métricas.
  </Card>

  <Card title="Custos" icon="star" href="/pt/billing/stars">
    Como o WhatsApp entra no faturamento da org.
  </Card>
</CardGroup>
