Skip to content

Webhook - Checkmob

O que é Webhook?

Webhook é um método de comunicação entre sistemas que permite que um sistema envie automaticamente dados para outro sistema em tempo real quando um evento específico ocorre. É como um "callback" ou "notificação" que um sistema envia para outro através de uma requisição HTTP POST.

Principais características:

  • Comunicação em tempo real: Os dados são enviados instantaneamente quando um evento ocorre
  • Automação: Não requer intervenção manual para o envio das informações
  • Eficiência: Reduz a necessidade de consultas constantes (polling) ao sistema
  • Flexibilidade: Pode ser configurado para diferentes tipos de eventos

O webhook será chamado sempre que ocorrerem eventos relevantes no sistema, de acordo com os tipos de dados descritos abaixo.

Estrutura Geral da Requisição

{
  "Tipo": 1,
  "Data": [
    {
      // Dados específicos do tipo
    }
  ]
}
  • Tipo: Define o tipo de evento.
  • Data: Lista com os objetos do evento.
  • Retorno: O formato dos dados em Data varia conforme o valor de Tipo.

Tipos de Evento

Tipo 1 - Criação de Cliente

Enviado sempre que um cliente é criado.

Exemplo de JSON:

{
  "Tipo": 1,
  "Data": {
    "IdCliente": 12345678,
    "Nome": "Cliente Exemplo",
    "Cnpj": "12.345.678/0001-90",
    "Cpf": "123.456.789-00",
    "Telefone": "(11) 99999-9999",
    "TelefoneSecundario": "(11) 98888-8888",
    "IdUltimoServico": 987654,
    "DataProximoAcompanhamento": "2025-06-10T00:00:00",
    "AvaliacaoIA": "Aguardando",
    "Responsavel": "Responsável Exemplo",
    "Ativo": true,
    "DataCadastro": "2025-06-04T16:00:00",
    "DataAtualizacao": "2025-06-04T17:00:00",
    "IdEndereco": 11223344,
    "Rua": "Rua Exemplo",
    "Numero": "100",
    "Complemento": "Sala 10",
    "Bairro": "Centro",
    "Cep": 12345678,
    "Cidade": "Cidade Exemplo",
    "Estado": "Estado Exemplo",
    "Pais": "Brasil",
    "Latitude": -23.55052,
    "Longitude": -46.633308,
    "CampoPersonalizado": [
      {
        "Nome": "Campo 1",
        "ValorCampo": "Valor Exemplo"
      },
      {
        "Nome": "Campo 2",
        "ValorCampo": "10/06/2025"
      },
      {
        "Nome": "Campo 3",
        "ValorCampo": "Texto Exemplo"
      }
    ]
  }
}

Tipo 2 - Edição de Cliente

Enviado sempre que um cliente é editado.

Exemplo de JSON:

{
  "Tipo": 2,
  "Data": {
    "IdCliente": 12345678,
    "Nome": "Cliente Exemplo",
    "Cnpj": "12.345.678/0001-90",
    "Cpf": "123.456.789-00",
    "Telefone": "(11) 99999-9999",
    "TelefoneSecundario": "(11) 98888-8888",
    "IdUltimoServico": 987654,
    "DataProximoAcompanhamento": "2025-06-10T00:00:00",
    "AvaliacaoIA": "Aguardando",
    "Responsavel": "Responsável Exemplo",
    "Ativo": true,
    "DataCadastro": "2025-06-04T16:00:00",
    "DataAtualizacao": "2025-06-04T17:00:00",
    "IdEndereco": 11223344,
    "Rua": "Rua Exemplo",
    "Numero": "100",
    "Complemento": "Sala 10",
    "Bairro": "Centro",
    "Cep": 12345678,
    "Cidade": "Cidade Exemplo",
    "Estado": "Estado Exemplo",
    "Pais": "Brasil",
    "Latitude": -23.55052,
    "Longitude": -46.633308,
    "CampoPersonalizado": [
      {
        "Nome": "Campo 1",
        "ValorCampo": "Valor Exemplo"
      },
      {
        "Nome": "Campo 2",
        "ValorCampo": "10/06/2025"
      },
      {
        "Nome": "Campo 3",
        "ValorCampo": "Texto Exemplo"
      }
    ]
  }
}

Tipo 3 - Registro Realizado

Enviado quando um registro (check-in, atendimento ou execução de serviço) é finalizado no aplicativo.

Exemplo de JSON:

{
  "Tipo": 3,
  "Data": 
    {
      "Codigo": 12345678,
      "IdCliente": 87654321,
      "NomeCliente": "Cliente Exemplo",
      "IdGrupo": 111222,
      "NomeGrupo": "Grupo Exemplo",
      "IdSegmento": 333444,
      "NomeSegmento": "Segmento Exemplo",
      "IdOrdemServico": 555666,
      "IdObjetivo": 777888,
      "NomeObjetivo": "Objetivo Exemplo",
      "Observacao": "Observação de exemplo",
      "EnderecoAproximado": "Rua Exemplo 100, Bairro Centro, Cidade Exemplo, Estado, 12345-678, Brasil",
      "IdUsuario": 999000,
      "NomeUsuario": "Usuário Exemplo",
      "Latitude": -23.55052,
      "Longitude": -46.633308,
      "DataCheckIn": "2025-06-04T09:00:00",
      "DataCheckOut": "2025-06-04T09:30:00",
      "IdStatus": 1234,
      "NomeStatus": "Status Exemplo",
      "DataAlteracaoStatus": "2025-06-04T09:15:00",
      "DataEnvio": "2025-06-04T09:15:00",
      "IdUsuarioCriador": 999000,
      "Agendado": false,
      "DataInicioEsperada": null,
      "DataConclusaoEsperada": null
    }
}

Tipo 4 - Checklist Respondido

Enviado quando um checklist é respondido no aplicativo.

Exemplo de JSON:

{
  "Tipo": 4,
  "Data": [
    {
      // Dados específicos do tipo
    }
  ]
}

Configuração e Suporte

Configuração do Webhook

Para receber as notificações dos eventos, é necessário configurar a URL do webhook nas configurações do sistema Checkmob. Esta URL será o endpoint que receberá todas as notificações dos eventos configurados.

Suporte Técnico

Em caso de dúvidas sobre a implementação, configuração ou funcionamento do webhook, nossa equipe de suporte está disponível para auxiliar. Entre em contato através dos canais de suporte da Checkmob.

Conclusão

Para garantir o melhor funcionamento, recomendamos:

  • Implementar tratamento de erros adequado
  • Configurar timeouts apropriados
  • Manter um log das requisições recebidas

Esta documentação fornece todas as informações necessárias para implementar e utilizar o webhook da Checkmob. O sistema foi projetado para ser robusto, seguro e fácil de integrar, permitindo que você receba atualizações em tempo real sobre eventos importantes do seu negócio.