Distribuição de Lead (Entrada) Versão 1.0
Introdução
Esta API recebe os dados do Lead, e distribui automaticamente para usuários e grupos conforme regras pré-definidas no painel de configuração da Distribuição de Lead.
Obs.: Para envio de contato, sem distribuição automática de Lead, usar a API Contato (Entrada). Clique aqui para ver a documentação
Requisições
A
url e o
token são gerados na área de Integração do Zen (No topo do CRM Zen, clique no ícone de engrenagem e depois selecione Integração).
Todas as requisições devem conter o parâmetro
token (na querystring).
Os
dados são uma string JSON válida. Ver modelos mais à frente.
Obs.: Cada requisição recebe uma string JSON com dados de somente um contato.
Obs.: O JSON deve ser encodado em UTF-8
Obs.: O token NÃO deve ser divulgado publicamente em hipótese alguma
Exemplo de requisição com AJAX:
$.ajax({
url:'{URL}?token={TOKEN}',
type: 'POST',
data: JSON.parse({DADOS}),
complete: function(retorno){
//RETORNO (VER MENSAGENS DE RETORNO PADRÃO)
}
})
Exemplo de requisição com PHP:
$ch = curl_init();
$url = "{URL}?token={TOKEN}";
curl_setopt($ch, CURLOPT_URL,$url);
curl_setopt($ch, CURLOPT_POST, true);
curl_setopt($ch, CURLOPT_POSTFIELDS, http_build_query(json_decode({DADOS})));
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
$retorno = curl_exec($ch); //VER MENSAGENS DE RETORNO PADRÃO
curl_close($ch);
Respostas
Todas as respostas estarão no formato JSON.
De modo geral, respostas bem sucedidas retornarão código
HTTP 200 OK.
Erros
Obs.: Caso ocorra alguma falha na requisição mantenha uma fila e tente novamente.
Na ocorrência de erros, a resposta será da seguinte forma:
{
"Erro" : "Código",
"Mensagem" : "Descrição do erro"
}
Mensagens de retorno
200 OK
400 Bad Request
- JSON obrigatório
- JSON Incompleto
- Erro na estrutura do JSON, JSON Inválido
- Requisição inválida (Ação inválida. Ações aceitas: Inserir/Editar/Excluir/EditarId.)
- Dados Inválidos (Avisos)
- Contatos inválidos (Avisos)
- Contato não encontrado para edição/exclusão
401 Unauthorized
- Token obrigatório
- Token inválido
- Limite de contatos do plano excedido
- Contato não inserido, devido à outra requisição em andamento no sistema. Tente novamente.
429 Too Many Requests
- Você excedeu o número de requisições. Sua última requisição foi em "YYYY-mm-dd H:i:s".
Sua próxima requisição estará disponível em "YYYY-mm-dd H:i:s"
Obs.: O tempo de espera para a próxima requisição é de 2 segundos.
Obs.: Mesmo não usando todos os parâmetros de cada requisição, é importante não remove-los.
Inserir contato
STRING JSON Padrão para inclusão de contato do tipo
Pessoa Física e
Pessoa Jurídica:
Ver Modelo
{
"Acao" : "Inserir",
"VerificaEndereco" : "1",
"Integracao" : "",
"Nome" : "",
"Sobrenome" : "",
"CPF" : "",
"RG" : "",
"Sexo" : "",
"Nascimento" : "",
"Razao" : "",
"Fantasia" : "",
"CNPJ" : "",
"Tipo" : "",
"Email" :
{
"Email1" : "",
"Email2" : "",
"Email3" : "",
"Email4" : "",
"Email5" : ""
},
"Website" : "",
"Endereco" :
{
"Endereco" : "",
"Numero" : "",
"Complemento" : "",
"Bairro" : "",
"Cidade" : "",
"Estado" : "",
"Cep" : "",
"Pais" : ""
},
"Telefone" :
[
{
"Tipo" : "",
"DDI" : "",
"DDD" : "",
"Telefone" : "",
"Ramal" : ""
},
{
"Tipo" : "",
"DDI" : "",
"DDD" : "",
"Telefone" : "",
"Ramal" : ""
},
{
"Tipo" : "",
"DDI" : "",
"DDD" : "",
"Telefone" : "",
"Ramal" : ""
},
{
"Tipo" : "",
"DDI" : "",
"DDD" : "",
"Telefone" : "",
"Ramal" : ""
},
{
"Tipo" : "",
"DDI" : "",
"DDD" : "",
"Telefone" : "",
"Ramal" : ""
}
],
"Redes" :
{
"Linkedin" : "",
"Twitter" : "",
"Facebook" : "",
"GooglePlus" : ""
},
"Campos" :
[
{"Titulo" : "", "Valor" : ""},
{"Titulo" : "", "Valor" : ""},
{"Titulo" : "", "Valor" : ""},
{"Titulo" : "", "Valor" : ""},
{"Titulo" : "", "Valor" : ""},
{"Titulo" : "", "Valor" : ""},
{"Titulo" : "", "Valor" : ""},
{"Titulo" : "", "Valor" : ""},
{"Titulo" : "", "Valor" : ""},
{"Titulo" : "", "Valor" : ""}
],
"Observacao" : "",
"Tag" : "",
"MotorLead" : "",
"Origem" : {
"Nome" : "",
"Codigo" : ""
},
"Segmento" : [
{ "Nome" : "", "Codigo" : "" },
{ "Nome" : "", "Codigo" : "" },
{ "Nome" : "", "Codigo" : "" }
],
"TipoAutomacao" : [
{ "Nome" : "", "Codigo" : "" },
{ "Nome" : "", "Codigo" : "" },
{ "Nome" : "", "Codigo" : "" }
],
"Produto" : [
{ "Nome" : "", "Codigo" : "" },
{ "Nome" : "", "Codigo" : "" },
{ "Nome" : "", "Codigo" : "" }
]
}
Obs.: Cada requisição recebe uma string JSON com dados de somente um contato.
Obs2.: O código de integração do contato deve ser único.
Obs3.: O nó Segmento pode conter até 30 itens
Obs4.: O nó TipoAutomacao pode conter até 30 itens
Obs5.: O nó Produto pode conter até 30 itens
Obs6.: Caso a origem, segmento, tipo de automação e/ou produto não exista, será criado.
Recomendações
Diferente do modo onde é criado um cadastro da empresa e dentro dela cadastra-se os colaboradores, no CRM Zen o vínculo de um contato com a empresa é feito via tag. Desta forma cada usuário pode dar a inteligência de busca conforme sua necessidade.
Ex: No contato da empresa e colaborador use a tag com o nome da empresa, desta forma basta buscar pela tag “nome da empresa” para achar a empresa e seus colaboradores.
É recomendado o uso de tags.
Parâmetros (Inserir)
Parâmetro |
Tipo |
Tamanho |
Descrição |
Acao |
String |
10 |
Ação desejada (Inserir/Editar) (Obrigatório) |
VerificaEndereco |
String |
1 |
0 (Sem validação de endereço do correios) (Padrão: 0)
1 (Com validação de endereço do correios)
|
Integracao |
String |
50 |
Código de Integração do contato (Obrigatório) |
Nome |
String |
100 |
Apenas para Pessoa Física (Obrigatório para pessoa física) |
Sobrenome |
String |
120 |
Apenas para Pessoa Física |
CPF |
String |
11 |
Apenas para Pessoa Física. Sem pontos, barras ou traços |
RG |
String |
20 |
Apenas para Pessoa Física |
Sexo |
String |
1 |
F (Feminino) /M (Masculino). Apenas para Pessoa Física |
Nascimento |
String |
12 |
dd/mm/aaaa. Apenas para Pessoa Física |
Razao |
String |
120 |
Razão social. Apenas para Pessoa Jurídica (Obrigatório para pessoa jurídica) |
Fantasia |
String |
120 |
Nome fantasia. Apenas para Pessoa Jurídica |
CNPJ |
String |
14 |
Apenas para Pessoa Jurídica. Sem pontos, barras ou traços |
Tipo |
String |
1 |
F (Física) /J (Jurídica) (Obrigatório) |
Emails |
String |
150 |
Emails (Até 5 emails com 150 caracteres cada) |
Website |
String |
180 |
Website |
Endereco |
String |
120 |
Endereço |
Numero |
String |
20 |
Número |
Complemento |
String |
50 |
Complemento |
Bairro |
String |
100 |
Bairro |
Cidade |
String |
100 |
Cidade |
Estado |
String |
80 |
Estado |
CEP |
String |
10 |
CEP |
Pais |
String |
80 |
País |
Telefone-> Tipo |
String |
20 |
Tipo do telefone (Tipos aceitos: Residencial,
Comercial,
Celular,
Residencial Fax,
Fax,
Nextel,
Outros,
Celular Vivo,
Celular Oi,
Celular Tim,
Celular Claro,
Celular Sercontel,
Celular CTBC e
Celular Conecta) |
Telefone-> DDI |
String |
4 |
DDI |
Telefone-> DDD |
String |
4 |
DDD |
Telefone-> Telefone |
String |
24 |
Número do telefone |
Telefone-> Ramal |
String |
20 |
Ramal |
Redes |
String |
120 |
Redes Sociais com 120 caracteres cada |
Campos-> Título |
String |
50 |
Título dos Campos Personalizados com 50 caracteres cada |
Campos-> Valor |
String |
100 |
Valor dos Campos Personalizados com 100 caracteres cada |
Observacao |
String |
500 |
Observação |
Tag |
String |
1000 |
Tags separadas por vírgula e com 50 caracteres cada |
MotorLead |
Inteiro |
|
1 (Obrigatório) |
Origem->Nome |
String |
50 |
Nome da origem |
Origem->Codigo |
String |
50 |
Código da origem
|
Segmento->Nome |
String |
100 |
Nome do segmento |
Segmento->Codigo |
String |
50 |
Código do segmento
|
TipoAutomacao->Nome |
String |
100 |
Nome do Tipo de Automação |
TipoAutomacao->Codigo |
String |
50 |
Código do Tipo de Automação
|
Produto->Nome |
String |
100 |
Nome do Produto |
Produto->Codigo |
String |
50 |
Código do Produto
|