Referência da API (V1.0)

Como instalar o plugin no seu sistema

A ativação do plugin é muito simples e rápida e pedente apenas em 3 etapas.
A ativação pode ser feita tanto utilizando Javascript nativo ou qualquer outro framework JS de sua preferência.

Etapa 1

A primeira etapa é injetar a biblioteca JavaScript do integrador de API do Piperun CRM de atendimento.

    <!-- Adiciona a biblioteca JavaScript do integrador de API Piperun CRM de atendimento -->
    <script async defer crossorigin="anonymous" src="https://crmpiperun.cxm.pipe.run/assets/js/apisync.min.js"></script>

Etapa 2

A segunda etapa consiste em adicionar o script abaixo que efetua a inicialização o plugin e dispara a execução da integração.

    <script>
        document.addEventListener("DOMContentLoaded", () => {
            crmaApi.init({
                tenancy: 'crmpiperun',  // <-- Informe aqui o subdomínio do cliente. Ex: crmpiperun
                callback_id: 'abc123',  // <-- Informe aqui um código identificador da integração. Este mesmo código será enviado de volta no callback
                callback_uri: 'http://www.seusite.com.br/endereco_retorno_callback',  // <-- Este é o endereço que irá receber um post com as credencias de API
            });
        });

        function crmaApiSync() {
            crmaApi.sync();
        }
    </script>

    <script>
        $(function(){
            crmaApi.init({
                tenancy: 'crmpiperun',  // <-- Informe aqui o subdomínio do cliente. Ex: crmpiperun
                callback_id: 'abc123',  // <-- Informe aqui um código identificador da integração. Este mesmo código será enviado de volta no callback
                callback_uri: 'http://www.seusite.com.br/endereco_retorno_callback',  // <-- Este é o endereço que irá receber um post com as credencias de API
            });
        });

        function crmaApiSync() {
            crmaApi.sync();
        }
    </script>

Após colocar este trecho no seu código, você precisa efetuar a configuração dos campos tenancy, callback_id e callback_uri.
Esses campos serão utilizados da seguinte forma:

  • tenancy: Este campo identifica qual é a sua empresa, é o mesmo código do subdomínio utilizado para acessar o ambiente web. Por exemplo, se o endereço do seu sistema é empresaabc.5hub.com.br, o seu tenancy é "empresaabc";
  • callback_id: Este campo é um identificar de livre escolha, para caso seja necessário efetuar algum vínculo entre o usuário que esta acessando e o payload de retorno. O mesmo valor informado aqui, será enviado para o seu endereço de callback;
  • callback_uri: Este é endereço do seu callback, após o usuário efetuar a autenticação, as credenciais de acesso à API serão enviadas para este endereço, utilizando o método POST.

Etapa 3

Por fim, você precisa definir em que local do seu sistema irá aparecer o botão para disparar a sincronização, e inserir o código abaixo:
OBS: Este é apenas um exemplo, você é livre para customizar o botão da forma como achar necessário. O importante é executar a função "crmaApiSync"

    <!-- Adiciona o botão de sincronização do CRM de atendimento -->
    <button id="btn-sync-crma-api" onclick="crmaApiSync()">Sincronizar API</button>
    <!-- Adiciona o botão de sincronização do CRM de atendimento -->
    <button id="btn-sync-crma-api">Sincronizar API</button>

    <script>
        document.getElementById('btn-sync-crma-api').addEventListener("click", (e) => {
            e.preventDefault();
            crmaApiSync();
        });
    </script>
    <!-- Adiciona o botão de sincronização do CRM de atendimento -->
    <button id="btn-sync-crma-api">Sincronizar API</button>

    <script>
        $(document).on('click', '#btn-sync-crma-api', function (e) {
            e.preventDefault();
            crmaApiSync();
        });
    </script>

OBS: Por motivos de segurança, antes de implementar este plugin é necessário entrar em contato com a empresa para solicitar a aprovação e liberação da URL do seu sistema.

Callbak de retorno

Após o usuário de API estiver autenticado com sucesso, o payload abaixo contendo as credenciais de acesso será enviado para o endereço informado no campo "callback_uri" do plugin de integração.

{
    "login": "testeapi",
    "callback_id": "abc123",
    "token_type": "Bearer",
    "access_token": "eyJ0eXAiOieyJhdWQiOiIxMiIsImp0aSI6ImUyZWNmMDhlMJHJKg7GHFyt4yfg2E4OTgwZjNhM2FhMDQwNjExMTMxZmUxZTUxOGZiYmY2NWQwZGNmMjg3NDQ4ZDAzM2FiNzcyYjNiOTNkYThhIiwiaWF0IjoxNjg1MTA5NzIzLjgxNDA2NiwibmJmIjoxNjg1MTA5NzIzLjgxNDA2OSwiZXhwIjoxNjg1MTk2MTIzLjc5OTUxLCJzdWIiOiI2OSIsInNjb3BlcyI6W119.fe2BCMdt_5mCOa5WhQY2JKVTqEpQUPemPX_67LlmBwJNwLIM8-OCNKLnWNTVsnPnXVIK8yU0ym9v77qkaP3qB7QCib2l6mUTZ9Hht9jJNre-fw0uy1Gj6XgsuQD8HBPVtTe9ETv-bJp_zVF8E-TCC9keZQjalBNeeXDEg1QROsXESeFXlllbxaztdvmABKBMJPxqgM5CeuzaFvjLZZs9OF7GUIz9TnNxhfNtoCc5i4jSt4ECMwh0Uo57_oBYuJ2nnWuwONLWl4QAHMs46UBL-_XQlPJyymJXYMimg8HDeRAStguZaXK3OXOhJVN8FqVvoMvGHJhfjm-0VzaCJL6XRrA-ZAtzZzuV8w0BFOE9JH8CbjgR2RSuJhkzEdu-1ilgOLefRejavmw8f3deVrekAj-d-SKsIE0iNH-F4s9QdqVjMZeq4Qw3tdsoxyYjd9H18oyoRurxMLdLuV_YFfuctMAh-lLq_AKxWDHE-XevW5sRJlPlTHHQXzp0hS-CQY26FlqO5K8185u2airw84XQ_np-s3Sb7ZNO0d3fKvC4Ka_jHW_j9XdhuPIucPpG-lYGzUtGFM1QDCpmV6LJzia45p99YKmjW54wHBixyvZVNpVzB_2i2qtVaU9X5xHzDolLquMfsCraYSZZoZE2qr255KCCwBeRFh_QkzteYYRqCKE",
    "expires_in": 86400,
    "expires_at": "2023-05-22 21:02:03",
    "refresh_token": "def5020016c06c77a7f4gfdg465g4f65d4hg654hg654h6f54652d0f37c3582ab8a67e8a09cebfc8e056605e73ee499668817ee120534d44075b2473d19c61f3160e7d2f42e25c901328bab8c64953a001245d749c9b5feffa7dd642836ae1d1cf0bc5f314a5398efb0e6df7158f591cff67b227b02b0ec18e0bb72b9681671da14529a87fb8e3416ff6aba23402298973e9e32fc30aa4957648a660b21455284f2031886860e35403b687cfbcf8522e785e200fae8ea23f3e105f8d50d671060c91121885539f8aa4f7aafa3f3e2422603bac33c35f65a10df82f2b471e3651f45612d64fe0a51f4ce4ba19223bd95d003b3e3707a131b9520248a3621fc3f6fc7d078ba8325f925e362a72a3509681d70075ea7407f7c174229c9ed0697ccaf5d248ad249f58f69dc825efd3d59297f897513536d3d9954f3571a357b26a71c63969dc8a2hjkJKgjhgJgj5757JKJHkjfd084e75e2ed9f8a5b"
}

Vídeo hands-on

Segue a seguir um vídeo mostrando a construção da integração a partir do zero:
https://drive.google.com/file/d/1gwJGo0WPkVQNKY5CS25ti8pOpfmI3wA0/view?usp=share_link