Pular para o conteúdo principal

O que é um webhook?

Um webhook permite que você seja notificado quando determinadas ações do sistema ocorrem, por meio de uma chamada a uma URL fornecida por você. Webhooks também são conhecidos como “URL Callbacks” ou “HTTP push calls”. Sua URL deve usar SSL e começar com HTTPS.

Ações de webhook

Veja as ações disponíveis para webhooks.

Entendendo os webhooks do Ayrshare

Os webhooks são categorizados pela ação específica e são registrados no nível do Primary Profile ou do User Profile. Quaisquer atualizações do Primary Profile ou dos User Profiles são enviadas primeiro para o webhook registrado do User Profile. Se o User Profile não tiver um webhook registrado, a atualização será enviada para o webhook registrado do Primary Profile. Por exemplo:
  • Se um User Profile tiver um webhook Social Action registrado e desvincular o TikTok, a URL do webhook Social Action registrado para o User Profile será chamada. O webhook do Primary Profile não será chamado.
  • Se um User Profile desvincular o TikTok e não tiver um webhook Social Action registrado, mas o Primary Profile tiver um webhook registrado, a URL do webhook Social Action registrado para o Primary Profile será chamada.

Registrar um webhook

Registre um webhook fornecendo uma URL de endpoint e o tipo de ação para o endpoint POST /hook/webhook. Quando a ação ocorrer, uma mensagem HTTP POST será enviada para a URL fornecida. Por exemplo, registre uma URL para ser notificado sobre o status de uma publicação agendada. A URL do endpoint do webhook não deve utilizar redirecionamentos e precisa ser a URL de destino final. Se você registrar apenas o webhook do Primary Profile, os User Profiles herdarão automaticamente o webhook do Primary Profile. Para ter um webhook exclusivo para cada User Profile, você precisa registrar um webhook para cada User Profile.
Depois que seu webhook receber o HTTP POST, seu servidor deve responder com um status HTTP 200 para marcar a chamada como bem-sucedida. Se o seu servidor não responder em 10 segundos, uma resposta 503 será registrada.
Você também pode registrar webhooks no Painel do Desenvolvedor.

Novas tentativas de webhook

Se a resposta HTTP do seu servidor não estiver na faixa de sucesso 200-299, o sistema tentará automaticamente a chamada do webhook mais duas vezes. A primeira nova tentativa ocorrerá após 5 segundos e a segunda ocorrerá 30 segundos depois. As novas tentativas terão o mesmo hookId e serão marcadas como tentativas de retry.

Segurança do webhook

Você pode optar por adicionar segurança adicional definindo autenticação HMAC como uma requisição HTTP. Isso é feito frequentemente para evitar ataques de replay. O Ayrshare usa HMAC-SHA256 para gerar o hash do corpo da mensagem e o inclui, junto com o timestamp UNIX, no cabeçalho do POST.
Com base em uma chave secreta definida ao registrar seu webhook, você pode validar o POST comparando o cabeçalho X-Authorization-Content-SHA256 com o hash SHA256 do corpo do POST. A chave secreta é usada em todas as ações de webhook, portanto, defini-la para uma ação alterará a chave secreta para todas as ações.

Logs de webhooks

No Painel do Ayrshare, você pode visualizar os webhooks ativos, ver os detalhes do webhook enviado, o status de resposta do seu servidor e reenviar o webhook para a URL registrada. Alterne para um User Profile específico para visualizar os logs de webhook desse profile.

Códigos de resposta HTTP

A primeira coluna indica uma resposta HTTP bem-sucedida ✔️ (200, 300) do webhook ou uma resposta com falha ✖️ (400, 500). Alterne para um user profile específico para visualizar os logs de webhook desse profile.

Taxa de erro

A “Error Rate” das 1.000 publicações mais recentes pode ser visualizada tanto nas páginas Actions quanto Webhook Logs dentro do painel. Qualquer resposta de webhook do seu servidor de 400-500 é considerada um erro.