Ideal para importar listas de opt-out ou bloqueios em massa.
Token de acesso da empresa
Path Parameters
ID da empresa (deve corresponder ao token)
Body
Lista de números de telefone para bloquearLimite máximo: 1000 números por importação
Motivo do bloqueio para todos os númerosExemplos:
- “Importação lista opt-out”
- “LGPD - Solicitação de exclusão”
- “Lista de números inválidos”
curl -X POST https://api.disparador.com/api/companies/1/blocked-contacts/import \
-H "Content-Type: application/json" \
-H "X-Access-Token: seu-access-token" \
-d '{
"phoneNumbers": [
"5511999887766",
"5511888776655",
"5511777665544"
],
"reason": "Importação lista opt-out"
}'
Response
Indica se a operação foi bem-sucedida
Mensagem de erro (quando falha)
Total de números fornecidos
Quantidade de números bloqueados com sucesso
Quantidade de números que já estavam bloqueados
Quantidade de números que falharam
Mapa de números que falharam com seus respectivos motivos
Objeto onde a chave é o número de telefone e o valor é o motivo da falha
{
"success": true,
"totalProvided": 3,
"successfullyBlocked": 3,
"alreadyBlocked": 0,
"failed": 0
}
Processamento em Lote
Para listas com mais de 1000 números:
async function importLargeBlocklist(allNumbers, companyId, token, reason) {
const batchSize = 1000;
const results = {
totalImported: 0,
totalAlreadyBlocked: 0,
totalInvalid: 0
};
// Dividir em lotes
for (let i = 0; i < allNumbers.length; i += batchSize) {
const batch = allNumbers.slice(i, i + batchSize);
const response = await fetch(
`https://api.disparador.com/api/companies/${companyId}/blocked-contacts/import`,
{
method: 'POST',
headers: {
'Content-Type': 'application/json',
'X-Access-Token': token
},
body: JSON.stringify({
phoneNumbers: batch,
reason: reason
})
}
);
const result = await response.json();
if (result.success) {
results.totalImported += result.successfullyBlocked;
results.totalAlreadyBlocked += result.alreadyBlocked;
results.totalInvalid += result.failed;
}
// Aguardar um pouco entre lotes para não sobrecarregar
await new Promise(resolve => setTimeout(resolve, 1000));
}
return results;
}
Boas Práticas
Validação Prévia
Valide os números antes de importar para reduzir erros
Motivo Descritivo
Sempre forneça um motivo claro para facilitar auditoria
Lotes Menores
Use lotes de 500-1000 números para melhor performance
Monitoramento
Acompanhe os resultados para identificar problemas