Esse manual técnico tem como objetivo ajudar desenvolvedores/programadores na integração
com a API Rest
Atende CRM. Este manual conta também com exemplos práticos e em português para que a integração seja simples e completa.
A API Atende CRM é uma integração do tipo REST que permite acesso externo ao sistema Atende CRM para realizar comunicações seguras para geração de cobranças e consultas. A comunicação ocorre através de objetos JSON
, que tenham ID e Token válidos.
A REST API pode ter seus recursos acessados e utilizados por qualquer linguagem de programação que tenha recursos Web de comunicação HTTP e manipulação de JSON.
Os endpoints
correspondem a cada operação permitida, abaixo a relação das operações disponíveis na API:
- POST https://www.atendecrm.com.br/api/v1/lead
- GET https://www.atendecrm.com.br/api/v1/lead/{CODIGO}
- GET https://www.atendecrm.com.br/api/v1/leads
Somente usuários autenticados terão acesso a essa REST API. A Autenticação se dá através de um ID e Token.
No seu painel de controle da Atende CRM, acesse o menu "Integração", preencha os campos solicitados e ative a sua API. Assim você irá ter acesso ao ID
e o Token
, com esses dados basta criar sua aplicação comunicando com a API.
Para utilizar os recursos da API é necessário enviar em todas as requisições o ID
e Token
no cabeçalho da requisição HTTP. Os parametros a serem passados são: x-ID:Seu ID
e x-Token:Seu Token
além disso é necessário enviar o Content-Type neste formato Content-Type: application/json
Abaixo, veja um exemplo de uma comunicação autorizada na linguagem PHP no endpoint GET leads
utilizando-se do Curl:
//Exemplo do GET LEADS
$url = "https://www.atendecrm.com.br/api/v1/leads";
$curl = curl_init();
curl_setopt($curl, CURLOPT_URL, $url);
$headers = array();
$headers[] = "x-ID:3566"; // Coloque seu ID aqui
$headers[] = "x-Token:3481260001..."; // Coloque aqui seu Token
$headers[] = "Content-Type: application/json";
curl_setopt($curl, CURLOPT_HTTPHEADER, $headers);
curl_setopt($curl, CURLOPT_RETURNTRANSFER, TRUE);
$response = curl_exec($curl);
$httpcode = curl_getinfo($curl, CURLINFO_HTTP_CODE); // Código de retorno.
curl_close($curl);
$retornoJSON = json_decode($response);
var_dump($retornoJSON);
Veja o exemplo abaixo de Autorização utilizando o Postman:
GET /api/v1/leads HTTP/1.1
Host: www.atendecrm.com.br
x-ID: 9898
x-Token: 77O585194T334540R429730I7167u50O9460u63a1223O59u9156I51C4171R97j8830T18S84627
Content-Type: application/json
Cache-Control: no-cache
Postman-Token: 0d5cb339-7fa1-bcb8-4796-53026a8b28ed
As operações em LEADS
permitem: Criar lead em uma conta Atende CRM e também consultar dados dos leads na conta autenticada na API.
O endpoint usado na api para realizar a operação de criar lead é o POST lead
. Veja abaixo um exemplo do código usando o cURL PHP para criação de uma conta virtual.
//Exemplo do POST lead
$url = "https://www.atendecrm.com.br/api/v1/lead";
$json = array
(
"seu_codigo"=>"1000",
"cliente_nome"=>"Amaral Silva",
"cliente_doc"=>"07163359858",
"cliente_email"=>"comercial@empresa.com.br",
"cliente_telefone"=>"00000000000",
"campanha"=>"Venda Certa",
"origem"=>"ERP",
"operador"=>"JOAO.FRANCISCO",
"qualificacao"=>"QUER_CONTRATO",
"valor"=>"2730.00",
"etapa_funil"=>"MORNO",
"cadencia"=>"PADRAO",
"observacoes"=>"Cliente com potencial de conversao."
);
$json = json_encode($json); // Converte em formato Json
$curl = curl_init();
curl_setopt($curl, CURLOPT_URL, $url);
$headers = array();
$headers[] = "x-ID:3566"; // Coloque seu ID aqui
$headers[] = "x-Token:3481260001..."; // Coloque aqui seu Token
$headers[] = "Content-Type: application/json";
curl_setopt($curl, CURLOPT_HTTPHEADER, $headers);
curl_setopt($curl, CURLOPT_POST, 1); // Informando que é POST
curl_setopt($curl, CURLOPT_POSTFIELDS, $json); // Envio do JSON
curl_setopt($curl, CURLOPT_RETURNTRANSFER, TRUE);
$response = curl_exec($curl);
$httpcode = curl_getinfo($curl, CURLINFO_HTTP_CODE); // Código de retorno.
curl_close($curl);
$retornoJSON = json_decode($response);
var_dump($retornoJSON);
Tabela de Especificações dos Campos (POST lead)
Campo | Formato | Tamanho | Obrigatório | Descrição |
---|---|---|---|---|
seu_codigo | string | 100 | Não | Defina um código seu para o lead. Se não informado, criaremos. |
cliente_nome | string | 100 | Sim | Nome completo cliente. |
cliente_doc | string | 30 | Sim | Informe o CPF do cliente ou CNPJ. Formato: Somente números. |
cliente_email | string | 40 | Sim | Informe o email do cliente. |
cliente_telefone | string | 15 | Sim | Telefone principal do cliente. |
campanha | string | 50 | Não | Nome da campanha |
origem | string | 50 | Não | Nome da origem do lead |
operador | string | 50 | Não | Nome do operador responsável pelo lead. |
qualificacao | string | 50 | Não | Noem da qualificação de entrada do lead. |
valor | string | 50 | Não | Valor envolvido no lead |
etapa_funil | string | 50 | Não | Nome da etapa de entrada do lead no fúnil. |
cadencia | string | 50 | Não | Nome da cadência de entrada do lead. |
observacoes | string | 350 | Não | Observação do lead. |
Se tudo ocorreu bem, o lead será processado e retornado o codigo 201
no header e no body todas informações do lead. Abaixo o Payload de retorno no formato json:
{
"codigo":"789991020",
"seu_codigo":"1000",
"cliente_nome":"Amaral Silva",
"cliente_doc":"07163359858",
"cliente_email":"comercial@empresa.com.br",
"cliente_telefone":"00000000000",
"campanha":"Venda Certa",
"origem":"ERP",
"operador":"JOAO.FRANCISCO",
"qualificacao":"QUER_CONTRATO",
"valor":"2730.00",
"etapa_funil":"MORNO",
"cadencia":"PADRAO",
"observacoes":"Cliente com potencial de conversao."
}
O endpoint usado na api para realizar a operação de consultar um lead é o GET lead/{CODIGO}
. Veja abaixo um exemplo do código usando o cURL PHP para consultar uma conta.
$url = "https://www.atendecrm.com.br/api/v1/lead/100000";
$curl = curl_init();
curl_setopt($curl, CURLOPT_URL, $url);
$headers = array();
$headers[] = "x-ID:3566"; // Coloque seu ID aqui
$headers[] = "x-Token:3481260001..."; // Coloque aqui seu Token
$headers[] = "Content-Type: application/json";
curl_setopt($curl, CURLOPT_HTTPHEADER, $headers);
curl_setopt($curl, CURLOPT_RETURNTRANSFER, TRUE);
$response = curl_exec($curl);
$httpcode = curl_getinfo($curl, CURLINFO_HTTP_CODE); // Código de retorno.
curl_close($curl);
$retornoJSON = json_decode($response);
Se tudo ocorreu bem, será retornado um codigo 200
no header e no body o seguinte Payload no formato json:
{
"codigo":"789991020",
"seu_codigo":"1000",
"cliente_nome":"Amaral Silva",
"cliente_doc":"07163359858",
"cliente_email":"comercial@empresa.com.br",
"cliente_telefone":"00000000000",
"campanha":"Venda Certa",
"origem":"ERP",
"operador":"JOAO.FRANCISCO",
"qualificacao":"QUER_CONTRATO",
"valor":"2730.00",
"etapa_funil":"MORNO",
"cadencia":"PADRAO",
"observacoes":"Cliente com potencial de conversao."
}
O endpoint usado na api para realizar a operação de consultar vários leads é o GET leads
. Veja abaixo um exemplo do código usando o cURL PHP para consultar uma conta.
$url = "https://www.atendecrm.com.br/api/v1/leads";
$curl = curl_init();
curl_setopt($curl, CURLOPT_URL, $url);
$headers = array();
$headers[] = "x-ID:3566"; // Coloque seu ID aqui
$headers[] = "x-Token:3481260001..."; // Coloque aqui seu Token
$headers[] = "Content-Type: application/json";
curl_setopt($curl, CURLOPT_HTTPHEADER, $headers);
curl_setopt($curl, CURLOPT_RETURNTRANSFER, TRUE);
$response = curl_exec($curl);
$httpcode = curl_getinfo($curl, CURLINFO_HTTP_CODE); // Código de retorno.
curl_close($curl);
$retornoJSON = json_decode($response);
Se tudo ocorreu bem, será retornado um codigo 200
no header e no body o seguinte Payload no formato json:
[
{
"codigo":"789991020",
"seu_codigo":"1000",
"cliente_nome":"Amaral Silva",
"cliente_doc":"07163359858",
"cliente_email":"comercial@empresa.com.br",
"cliente_telefone":"00000000000",
"campanha":"Venda Certa",
"origem":"ERP",
"operador":"JOAO.FRANCISCO",
"qualificacao":"QUER_CONTRATO",
"valor":"2730.00",
"etapa_funil":"MORNO",
"cadencia":"PADRAO",
"observacoes":"Cliente com potencial de conversao."
},
{
"codigo":"789991020",
"seu_codigo":"1000",
"cliente_nome":"Amaral Silva",
"cliente_doc":"07163359858",
"cliente_email":"comercial@empresa.com.br",
"cliente_telefone":"00000000000",
"campanha":"Venda Certa",
"origem":"ERP",
"operador":"JOAO.FRANCISCO",
"qualificacao":"QUER_CONTRATO",
"valor":"2730.00",
"etapa_funil":"MORNO",
"cadencia":"PADRAO",
"observacoes":"Cliente com potencial de conversao."
}
]
Havendo qualquer alteração da situação de um lead o sistema emitirá um POST de JSON à URL de callback configurada em seu painel de integração, essa URL deverá está preparada para recebê-lo.
/* Modelo de JSON de callback */
{
"seu_codigo":"1000",
"codigo":"789991020",
"movimento":"funil"
"data":"2023-04-01 12:12:20"
}
Observe que com o código do lead recebido via callback, você poderá realizar uma consulta via GET lead/{CODIGO} para obter detalhes gerais do lead, ou criar sua fila de consultas.
/* Modelo do arquivo que irá receber POST no seu lado */
$data = json_decode(file_get_contents('php://input'), true);
$seu_codigo = $data['seu_codigo']; // Seu código ou Referência Interna
$codigo = $data['codigo']; // Código interno
$movimento = $data['movimento']; // Indicado onde ocorreu o movimento no sistema
$data = $data['data']; // Indica a data do movimento.
Codigo | Descrição |
---|---|
495 | Requisição não segura - SSL Certificate Error |
200 | A requisição foi bem sucedida |
201 | Recurso criado ou alterado com sucesso |
400 | Alguma informação enviada está incorreta. {Descrição do erro} |
401 | Problemas na autenticação. Verifique sua api key |
403 | Acesso a um recurso não permitido |
404 | Método não existe ou tipo de chamada não aceita neste método |
500 | Erro interno do sistema. Comunique nossa equipe técnica. |
501 | A operação não foi concluída. Erro interno, comunique nossa equipe técnica. |
407 | A origem do acesso não é API. Não autorizado. |
406 | Token não existe. |