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 IE
                    script_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 IE
                    script_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ário
                           token_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'