Utilização de Webhook

Recurso Enterprise

Um webhook permite que você receba notificações HTTP sobre mudanças em seus chamados e clientes. Por exemplo, quando um novo chamado for criado será enviada uma notificação com o identificador do chamado, dessa forma será possível consultar informações do chamado através da API do TomTicket.

Objeto

A notificação é enviada no formato JSON, como exemplo abaixo:

POST / HTTPS/1.1
X-Hub-Signature: sha1={SHA1-SIGNATURE}
{
"type": "ticket",
"id": "aecfa76db609289407c0e6efe66c484a",
"action: "created"
}

No exemplo acima está sendo enviado uma notificação informado que o chamado de id aecfa76db609289407c0e6efe66c484a foi criado.

Propriedades

O webhook sempre contará com as propriedades abaixo:

  • type: Indica o tipo de informação que gerou o evento.
    • ticket: Indica que um chamado disparou o webhook.
    • customer: Indica que um cliente disparou o webhook.
  • id: Identificador do item. Esse identificador é compatível para listagens na API.
  • action: Tipo de ação que disparou o evento.
    • deleted: Item foi removido.
    • created: item foi criado.
    • updated: Item foi atualizado.

Assinatura de Segurança

Caso seja necessário validar se foi o TomTicket que gerou o envio do webhook, poderá consultar através do cabeçalho X-Hub-Signature a assinatura de segurança, que é enviada criptografada em SHA1, baseada na chave secreta de configuração do seu webhook.

A assinatura de segurança é gerado com base no JSON enviado codificado em base64, criptografado através de HMAC (SHA1), usando sua chave secreta para assinatura.


Exemplo:

 ASSINATURA = HMAC('SHA1', BASE64(SEU-JSON), CHAVE-SECRETA);

Servidor HTTPS

O webhook é enviado através HTTPS, por isso é necessário que seu servidor possua um certificado SSL válido.

Importante: Se o servidor de webhook não estiver disponível no momento do envio, a informação não será enviada novamente.


Este artigo foi útil?  
Agradecemos sua avaliação.