Skip to main content
Contatos são a base da organização, com o telefone como chave única. A Arara também cria e atualiza contatos sozinha, a partir das mensagens enviadas e recebidas. Esta página cobre também o opt-out e os direitos do titular.
As rotas de contatos exigem plano com contatos (403 PLAN_FEATURE_LOCKED sem ele). Leitura pede chave ADMIN; escrita aceita CONTACTS_WRITE.

O objeto contato

Importar contatos

O corpo é um array de até 5.000 contatos. Telefone novo cria, telefone existente atualiza.
Resposta 200 OK:
A segunda linha foi recusada porque o telefone veio sem o +. Linha inválida não derruba o lote: ela entra em skipped e em errors, com o índice e o motivo.

Regras que valem saber

  • O lote substitui email e attributes. Enviar um contato existente sem email apaga o email dele. Para mudar só um campo, use PATCH /v1/contacts/{phone}.
  • Telefone igual, dados iguais: skipped. Não é erro.
  • No PATCH, campo omitido não muda. tags substitui a lista inteira, e email como string vazia remove o email.
  • Telefone no caminho vai com +. Exemplo: /v1/contacts/+5511999999999.
  • Contato inexistente responde 422. Hoje GET /v1/contacts/{phone} devolve 422 UNPROCESSABLE_ENTITY, e não 404.
  • A lista tem envelope próprio. GET /v1/contacts responde { contacts, total, page, size, totalPages }, e não { data, pagination }.
  • importId é só para log. Não há rota para consultá-lo depois.

Opt-out

O opt-out registra que o telefone não quer mais receber mensagens da organização. Todas as rotas pedem chave ADMIN, e telefone fora do E.164 responde 400 INVALID_PHONE.
O envio hoje só é bloqueado por opt-out feito por palavra-chave recebida no WhatsApp (por exemplo “SAIR”, “PARAR”, “STOP”), e mesmo esse bloqueio depende do formato do telefone no envio. O opt-out registrado por POST /v1/opt-outs ou pela remoção LGPD ainda não é consultado no envio de mensagens e campanhas. Filtre a lista do seu lado antes de enviar.

Direitos do titular (LGPD)

GET /v1/contacts/{phone}/lgpd/export devolve o contato, as conversas e até 1.000 mensagens do telefone. DELETE /v1/contacts/{phone}/lgpd é irreversível: mascara o conteúdo das mensagens e das conversas, apaga o contato e registra opt-out.

Endpoints

Erros mais comuns

Próximos passos

Campanhas

Enviar um template para a base.

Compliance

Opt-in, opt-out e LGPD.