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

# Erros

> Os códigos que a entrada de contatos devolve, o que causou cada um e o que fazer.

Todo erro devolve JSON com um campo `error`. O texto é em inglês, porque é lido por
máquina; o significado está aqui.

| Código | Corpo                                          | Causa                                               | O que fazer                                         |
| ------ | ---------------------------------------------- | --------------------------------------------------- | --------------------------------------------------- |
| `400`  | `Valid email is required`                      | O corpo não trouxe email, ou o valor não contém `@` | Torne o email obrigatório no seu formulário         |
| `400`  | `Organization has not completed onboarding...` | A organização não tem etapas de funil configuradas  | Configure o funil em **Pipeline**                   |
| `400`  | `No active members found in organization`      | Não há nenhum membro ativo para receber o contato   | Reative alguém em **Configurações → Equipe**        |
| `403`  | `Webhook is disabled`                          | O webhook existe mas está desligado                 | Ligue-o na tela de webhooks                         |
| `404`  | `Invalid webhook token`                        | O token não corresponde a nenhum webhook            | Confira a URL; o token pode ter sido regerado       |
| `500`  | `Internal error`                               | Falha do lado da plataforma                         | Tente de novo; se persistir, escreva para o suporte |

## Como tratar do seu lado

<AccordionGroup>
  <Accordion title="400 é definitivo, não tente de novo">
    Os três casos de `400` são problemas de dado ou de configuração. Repetir a mesma
    requisição devolve o mesmo erro. Registre e siga.
  </Accordion>

  <Accordion title="403 e 404 pedem intervenção humana">
    Webhook desligado ou token trocado. Alerte quem cuida da integração em vez de tentar
    de novo em laço.
  </Accordion>

  <Accordion title="500 vale uma tentativa">
    Falha temporária. Uma ou duas tentativas com espera crescente resolvem a maioria dos
    casos. Não repita indefinidamente.
  </Accordion>
</AccordionGroup>

## Sucesso duplicado

A entrada **não** é idempotente. Duas requisições iguais criam dois contatos. Se o seu
sistema tem retentativa automática, guarde o `leadId` da primeira resposta bem-sucedida e
não repita.

## Antes de culpar a integração

A verificação por `GET` responde em um segundo e elimina metade das hipóteses:

```bash theme={"theme":{"light":"min-light","dark":"min-dark"}}
curl https://crm.suaempresa.com/api/webhooks/receive/SEU_TOKEN
```

Se ela devolver `404`, o problema é o token. Se devolver `enabled: false`, é o
interruptor. Se devolver `status: ok`, o problema está no corpo que você envia.
