Atualmente existem dois tipos de integração com a API LAHAR.
A integração 'conversions' é utilizada para a inclusão / atualização de leads e a integração 'leads' é utilizada para atualização específica do estágio do lead na LAHAR.
1) No Wordpress, acesse a página onde se encontra a chamada do formulário e adicione uma tag html_class, como no exemplo abaixo:
[contact-form-7 id="1234" title="Contact form 1" html_class="form contact-form"]
2) Em seguida, acesse a área de definições do formulário e adicione, antes do primeiro campo o campo conforme o código abaixo.
[hidden text id:identificador_tracker_lahar]
3) Agora adicione, para cada campo que desejar integrar, as propriedades class conforme abaixo:
- class:api-lahar para todos os campos que serão integrados
- class:lahar_nome_campo (nome do campo segundo este tópico) para todos os campos que serão integrados, veja abaixo alguns exemplos:
<p>Seu nome (obrigatório)<br />[text* your-name class:api-lahar class:lahar_nome_contato] </p><p>Seu e-mail (obrigatório)<br />[email* your-email class:api-lahar class:lahar_email_contato] </p><p>Telefone <br />[text your-telefone class:api-lahar class:lahar_tel_celular] </p><p>Assunto <br />[text your-assunto] </p><p>Sua mensagem<br />[textarea your-message class:api-lahar class:lahar_anotacoes] </p><p>[submit "Enviar"]</p>
Obs.: Caso utilize no campo do formulário opções adicionais, inclua ambas class no inicio para que as mesmas não sejam ignoradas pelos demais parâmetros.
4) Se o campo que deseja integrar é um campo personalizado, você deve utilizar o token do campo para identificar na integração. Caso não saiba como encontrar esse token clique aqui.
Exemplo de campo personalizado do tipo caixa suspensa:
<p>Qual sua idade? <br />[select* Idade class:api-lahar class:lahar_TasdfsdBmK include_blank "18 ou menos" "19 a 30" "31 a 40" "acima de 40"]
Obs.: Os valores devem ser os mesmos informados no cadastro do campo personalizado.
5) E, por fim, adicionar logo após o código dos campos o script abaixo, editando:
- Colocando o TOKEN_DA_API_LAHAR_OBTIDO_EM_CONFIGURACOES gerado na área de Configurações.
- Alterar o NOME_DO_FORMULARIO_PARA_IDENTIFICACAO para essa conversão ser identificada na LAHAR.
<script type="text/javascript">(function(window){'use strict';function define_LaharApi(){var LaharApi = {};LaharApi.criacao_elementos = function() {var jQuery_interno = null;var script_jquery = document.createElement("script"); var roda_chamada_jquery = function() {jQuery_interno = jQuery.noConflict(true);executar_se_100pct_ok();}script_jquery.setAttribute("type", "text/javascript"); script_jquery.setAttribute("src", "https://scripts.lahar.com.br/api_parametros.js") ; var done_jquery = false;script_jquery.onload = script_jquery.onreadystatechange = function () { if (!done_jquery && (!this.readyState || this.readyState === "loaded" || this.readyState === "complete")) {done_jquery = true;roda_chamada_jquery();// Handle memory leak in IEscript_jquery.onload = script_jquery.onreadystatechange = null; if (document.body && script_jquery.parentNode) {document.body.removeChild(script_jquery); }}};document.body.appendChild(script_jquery); var script_parametros = document.createElement("script"); var roda_chamada_parametros = function() {executar_se_100pct_ok();}script_parametros.setAttribute("type", "text/javascript"); script_parametros.setAttribute("src", "https://scripts.lahar.com.br/api_parametros.js"); var done_parametros = false;script_parametros.onload = script_parametros.onreadystatechange = function () { if (!done_parametros && (!this.readyState || this.readyState === "loaded" || this.readyState === "complete")) {done_parametros = true;roda_chamada_parametros();// Handle memory leak in IEscript_parametros.onload = script_parametros.onreadystatechange = null; if (document.body && script_parametros.parentNode) {document.body.removeChild(script_parametros); }}};document.body.appendChild(script_parametros); var executar_se_100pct_ok = function() {if ((done_parametros == true) && (done_jquery == true)) {jQuery_interno(document).ready(function() { jQuery_interno('.wpcf7-form').each(function(index,element){ jQuery_interno(this).submit(function() { var elementos = [];jQuery_interno(this).find('.api-lahar').each(function( index,element){ elementos.push(element);});efetua_integracao(elementos);return true;});});});function efetua_integracao(elementos) {var campos = { // Colocar aqui campos fixos ou enviar estas infos como hidden no formuláriotoken_api_lahar: 'TOKEN_DA_API_LAHAR_OBTIDO_EM_CONFIGURACOES', // obtenha essa informação nas configurações de sua conta LAHAR.
identificador_tracker_lahar: jQuery_interno('#identificador_tracker_lahar').val(), // Remover esta linha caso não utilize o Tracking.nome_formulario: "NOME_DO_FORMULARIO_PARA_IDENTIFICACAO", // Nome para identificar o formulário nas conversões da LAHAR.url_origem: jQuery_interno(location).attr('href') };integracao_js(campos, null, elementos, 'conversions');}}}};return LaharApi;}if(typeof(LaharApi) === 'undefined'){window.LaharApi = define_LaharApi();window.LaharApi.criacao_elementos(); }else{console.log("LaharApi already defined.");window.LaharApi.criacao_elementos(); }})(window);</script>
Segue abaixo a relação dos retornos de erros da API:
- 101 => 'Não foi possível enviar o email de notificação, porém o lead foi incluído com sucesso no ambiente.',
- 102 => 'Não é possível obter conversões via GET. Para inserir uma nova conversão, use POST.',
- 103 => 'Não é possível obter o estágio dos leads via GET. Para atualizar o estágio do Lead, use PUT.',
- 104 => 'Não é possível atualizar atividades dos leads via GET. Para atualizar as atividades do Lead, use PUT.',
105 => 'Não é possível enviar emails do BPM via GET, use POST.', - 401 => 'Acesso não autorizado: Token não identificado.',
- 404 => 'Erro imprevisto.',
- 520 => 'O limite da cota de contatos foi excedido.',
- 540 => 'Erro na inclusão do contato no banco de dados. O ambiente LAHAR está ativo?',
- 541 => 'Erro na atualização de estágio do lead no banco de dados. O ambiente LAHAR está ativo?',
- 550 => 'Nenhum campo recebido na requisição.',
- 551 => 'Campo obrigatório recebido na requisição está duplicado.',
- 552 => 'Envio não contempla os campos obrigatórios necessários. Envie em sua requisição, ao menos, os campos: <campos obrigatórios>',
- 553 => 'Erro de validação de campo. O campo a seguir não está tratado: ' . $string_campos_obrigatórios,
- 554 => 'Contato enviado não existe. O email enviado (' <email>') existe?',
- 555 => 'Conversão via telefone não foi possível: nenhum contato identificado na base com o número informado',
- 556 => 'A conversão não foi realizada pois o lead não deu o consentimento',
- 557 => 'A conversão não foi realizada pois a categoria de nota é inválida. As categorias permitidas são: <campos obrigatórios>',
- 600 => 'Parâmetros não fornecidos',
- 601 => 'Estrutura dos parâmetros inconsistente',
- 602 => 'Parâmetro "token" não fornecido',
- 603 => 'Parâmetro "modelo" não fornecido',
- 604 => 'Parâmetro "posição" não fornecido',
- 605 => 'Parâmetro "destinatário" não fornecido',
- 606 => 'Parâmetro "destinatário" inconsistente',
- 607 => 'Parâmetro "dados" não fornecido',
- 608 => 'Um dos pares do parâmetro "dados" está inconsistente',
- 609 => 'Parâmetro "secret key" não fornecido',
- 620 => 'Acesso inválido ou e-mail não existente'