Use este endpoint para integrar fontes externas (n8n, Zapier, CRMs) que empurram contatos para o Disparador.
Token de acesso da empresa
Path Parameters
ID da empresa (deve corresponder ao token)
Body (simples)
Nome do UserDatabase que será criado (se omitido, um nome padrão será gerado)
Se true, telefones duplicados serão removidos
Array de objetos com os contatos com pelo menos o campo phoneNumber.
curl -X POST https://api.disparador.com/api/companies/1/imports/contacts \
-H "Content-Type: application/json" \
-H "X-Access-Token: seu-access-token" \
-d '{
"name": "Import via Push",
"description": "Importada via webhook",
"dedupe": true,
"contacts": [
{ "phoneNumber": "+5511999999999", "name": "Alice" },
{ "phoneNumber": "+5511888888888", "name": "Bob" }
]
}'
Body (genérico)
Array de objetos, cada objeto representa uma linha (mapa de coluna -> valor). Garanta que exista uma coluna de telefone (ex.: phone ou phoneNumber) para que o sistema normalize e valide.
curl -X POST "https://api.disparador.com/api/companies/1/imports/contacts/generic?async=true" \
-H "Content-Type: application/json" \
-H "X-Access-Token: seu-access-token" \
-d '{
"name": "Import genérico",
"description": "import gen",
"dedupe": true,
"rows": [
{ "phone": "+5511999999999", "name": "Alice", "cidade": "SP" },
{ "phone": "+5511888888888", "name": "Bob", "cidade": "RJ" }
]
}'
Responses
Quando ?async=true o endpoint retorna o jobId persistido.
Status inicial do job (PENDING) quando submetido async.
Mensagem de erro quando aplicável
{
"jobId": 123,
"status": "PENDING",
"submittedAt": "2025-10-08T12:00:00Z"
}
Observações e boas práticas
- Para envios assíncronos, consulte a tabela
import_jobs para verificar progresso e possíveis erros.
- Limites e validações de número: todas as entradas de telefone passam por normalização (use
+55 quando aplicável).
- Se sua integração enviar grandes volumes, prefira usar
async=true e submeter em lotes.