Pular para o conteúdo principal

Importar Contatos via CSV

Metodo​

POST https://oapi.ogmma.com.br/v1/contacts/import

Conceituacao​

Este endpoint permite importar multiplos contatos de uma vez a partir de um arquivo CSV. E a forma mais eficiente de popular sua base de contatos quando voce ja possui uma lista existente.

A importacao e processada de forma assincrona — a API retorna imediatamente com um ID de importacao, e voce pode acompanhar o progresso consultando o status.


Atributos​

AtributoTipoObrigatorioDescricao
AuthorizationstringSimBearer {API_KEY} - Chave de autenticacao
Content-TypestringSimmultipart/form-data

Body (multipart/form-data)​

AtributoTipoObrigatorioDescricao
filefileSimArquivo CSV (max 5MB)
tagsstringNaoTags a aplicar em todos os contatos importados (separadas por virgula)
skipDuplicatesbooleanNaoSe true, ignora contatos com telefone duplicado. Default: true

Formato do CSV​

O arquivo deve conter um header na primeira linha com os nomes dos campos. Campos obrigatorios: name e phone.

name,phone,email,tags
Maria Silva,5511999990001,maria@email.com,"vip,cliente"
Joao Santos,5511999990002,joao@email.com,"lead"
Ana Oliveira,5511999990003,,

Campos suportados​

CampoObrigatorioDescricao
nameSimNome do contato
phoneSimNumero no formato DDI+DDD+NUM (ex: 5511999990001)
emailNaoEndereco de e-mail
tagsNaoTags separadas por virgula (entre aspas no CSV)

Request​

curl -X POST "https://oapi.ogmma.com.br/v1/contacts/import" \
-H "Authorization: Bearer {API_KEY}" \
-F "file=@contatos.csv" \
-F "tags=importacao-jan-2025" \
-F "skipDuplicates=true"

Response​

202 - Aceito​

A importacao foi aceita e sera processada de forma assincrona.

{
"importId": "imp_a1b2c3d4e5f6",
"status": "PROCESSING",
"totalRows": 150,
"message": "Importacao iniciada. Acompanhe o progresso consultando o status."
}

400 - Dados invalidos​

{
"message": "Formato de arquivo invalido. Envie um arquivo CSV.",
"code": "INVALID_FILE_FORMAT"
}

413 - Arquivo muito grande​

{
"message": "O arquivo excede o tamanho maximo permitido (5MB).",
"code": "FILE_TOO_LARGE"
}

Consultar status da importacao​

GET https://oapi.ogmma.com.br/v1/contacts/import/:importId

curl -X GET "https://oapi.ogmma.com.br/v1/contacts/import/{importId}" \
-H "Authorization: Bearer {API_KEY}"

Response​

{
"importId": "imp_a1b2c3d4e5f6",
"status": "COMPLETED",
"totalRows": 150,
"imported": 142,
"skipped": 5,
"failed": 3,
"errors": [
{ "row": 45, "phone": "invalid", "reason": "Numero de telefone invalido" },
{ "row": 89, "phone": "5511", "reason": "Numero de telefone muito curto" },
{ "row": 120, "phone": "", "reason": "Campo phone obrigatorio" }
]
}

Status da importacao​

StatusDescricao
PROCESSINGA importacao esta em andamento
COMPLETEDTodos os registros foram processados
FAILEDA importacao falhou (arquivo corrompido, formato invalido, etc.)

Limites​

ParametroLimite
Tamanho do arquivo5 MB
Linhas por arquivo10.000
Importacoes simultaneas1 por instituicao

Boas praticas​

  • Valide o formato do CSV antes de enviar (encoding UTF-8, separador virgula)
  • Use skipDuplicates=true para evitar erros em reimportacoes
  • Aplique tags durante a importacao para identificar a origem dos contatos
  • Consulte o status apos a importacao para tratar erros linha a linha