Crie o seu primeiro webhook

Este guia acompanha-o desde uma aplicação vazia até um fluxo de trabalho Shopify Flow que é executado quando o seu próprio sistema assim o indicar. Demora cerca de dez minutos.

1. Criar um webhook

Webhooks -> Criar webhook. A página pergunta, em primeiro lugar, o que irá acionar este webhook e configura-o de forma a corresponder a isso:

A sua resposta O que irá receber
Uma ferramenta de automatização (n8n, Make, Zapier, o seu próprio código) Um token gerado, pronto a ser colado na ferramenta
Um serviço que assina os seus webhooks (Stripe, GitHub, ...) Verificação da assinatura para o serviço que escolher - consulte Verificação de webhooks assinados
Um script para o navegador ou para a loja virtual CORS ativado - consulte CORS, o URL do proxy da aplicação e as chamadas do navegador
Nada - execute-o de acordo com um horário definido A webhook que acede a um URL a intervalos regulares; a sua separador «Agendamento» é apresentado a seguir - consulte Verificação programada de URLs
Outra opção, ou decidir mais tarde É o senhor/a senhora que escolhe o método de autenticação

Atribua-lhe um nome que reconheça mais tarde («Lembrete do cartão de carteira», «Formulário de contacto») e guarde. Todas as definições podem ser alteradas posteriormente.

Dispõe agora de um URL de webhook que termina num código curto, por exemplo, https://.../webhook/ab12cd34. Esse URL é o ponto final para o qual o seu sistema envia pedidos POST.

Na página «Criar webhook», na pergunta «O que irá acionar este webhook?», com a opção «Nada - executar de acordo com um horário» selecionada e uma nota a indicar que o separador «Horário» será aberto a seguir
A criação de um webhook começa por definir o que o irá acionar. A resposta configura a autenticação correspondente; a opção «Nada - executar de acordo com um horário» abre, em seguida, o separador «Horário».
O editor de webhooks: nome e autenticação à esquerda; o cartão «Endpoint» com o estado, o URL do webhook e o ID do webhook à direita; e, acima, as opções «Pré-visualização em tempo real», «Testar» e «Utilização»
O editor de webhooks. As definições encontram-se à esquerda; o cartão «Endpoint», à direita, contém o URL do webhook a fornecer ao remetente e o ID do webhook que deve utilizar em Shopify Flow.

2. Escolha a forma como os autores das chamadas comprovam a sua identidade

Abra o webhook e escolha um método de autenticação. Consulte Autenticação para ver a comparação completa - em resumo:

  • Token estático - adequado para quase toda a gente. Clique no botão «Gerar», copie o token, Envie-o no cabeçalho X-Api-Key.
  • HMAC SHA-256 - para remetentes que assinam os seus pedidos (Stripe, GitHub e similares).
  • Nenhum - apenas para testes. Qualquer pessoa que tenha o URL pode ativar o seu fluxo de trabalho.

3. Indique-nos quais são os domínios que lhe interessam

Na secção «Definições avançadas», mapeie até quatro campos do seu payload JSON. Se o seu sistema enviar:

O separador «Definições avançadas», com os campos 1 a 4 mapeados para orderId, status, total e note
Definições avançadas: mapeie até quatro valores do corpo do pedido. Estes são recebidos em Shopify Flow como fieldOne a fieldFour.
json
{ "customer": { "email": "someone@example.com" }, "orderId": "1001" }

mapeie fieldOne para orderId e fieldTwo para customer.email - os caminhos aninhados utilizam pontos. Encontrará todos os detalhes em Mapeamento da carga útil e variáveis de fluxo.

4. Enviar um pedido de teste

Uma invocação foi aberta no History com os seus cabeçalhos de pedido, payload, estado, duração e identificadores
Após um pedido de teste, a invocação aparece no Histórico com a payload que foi recebida.
bash
curl -X POST https://your-app-url/webhook/ab12cd34 \
  -H "Content-Type: application/json" \
  -H "X-Api-Key: your-token" \
  -d '{"orderId":"1001","customer":{"email":"someone@example.com"}}'

Abra o «Histórico». Deverá ver a chamada com o seu estado, cabeçalhos e payload. Caso não consiga encontrá-la, a página Histórico e resolução de problemas apresenta todos os motivos de rejeição.

5. Criar o fluxo de trabalho no Shopify Flow

No «Shopify Flow», crie um fluxo de trabalho que comece com o gatilho «Webhook Trigger».

  1. Adicione o gatilho e clique em «Registar eventos».
  2. Volte aqui, abra a invocação no Histórico e clique em «Repetir». O Shopify Flow tem agora um uma payload real com a qual trabalhar - muito mais fácil do que tentar adivinhar os nomes dos campos.
  3. Adicione uma condição: Webhook ID é igual ao ID do seu webhook (indicado na página do webhook). Cada fluxo de trabalho do «Webhook Trigger» recebe eventos de todos os seus webhooks, pelo que isto É essa condição que faz com que o fluxo de trabalho responda apenas a esta.
  4. Adicione as suas ações, utilizando o endereço {{fieldOne}} para {{fieldFour}}.
  5. Ative o fluxo de trabalho.
Shopify Flow
Em Shopify Flow, selecione «Selecionar um gatilho», aceda a Workflow Webhooks e escolha «Gatilho de Webhook».
O símbolo «+» na etapa «Webhook Trigger» abriu-se, apresentando as opções «Ação» e «Condição»
O símbolo «+» abaixo de um passo apresenta os dois elementos que constituem um fluxo de trabalho: uma condição e uma ação.
Condição do Shopify Flow: o ID do webhook é igual ao ID de um webhook
O primeiro passo de qualquer fluxo de trabalho: uma condição relativa ao ID do webhook, para que o fluxo de trabalho seja executado apenas para este webhook.
O painel «Adicionar uma variável» do Shopify Flow para o «Webhook Trigger», que apresenta o webhookId e os campos fieldOne a fieldFour com valores de exemplo de um pedido recente
O que o gatilho transmite ao seu fluxo de trabalho: o ID do webhook e os seus quatro campos mapeados, apresentados com os valores de um pedido recente.
Ação «Enviar e-mail interno» do Shopify Flow, com «fieldOne» e «fieldTwo» no assunto e «fieldThree» e «fieldFour» no corpo da mensagem
Utilize os campos mapeados em qualquer lugar onde uma ação do Shopify Flow aceite uma variável, neste caso, no assunto e no corpo de um e-mail interno.
O fluxo de trabalho final: Gatilho por webhook, uma condição relativa ao ID do webhook e, em seguida, o envio de um e-mail interno no ramo «Verdadeiro»
O fluxo de trabalho final: gatilho, condição com base no ID do webhook e, em seguida, a sua ação no ramo «True».

6. Entrar em funcionamento

Configure o seu sistema real para a URL do webhook. Verifique as primeiras chamadas no Histórico para confirmar se chegam e são bem-sucedidas.

Se o seu remetente voltar a tentar após o tempo limite, ative a opção Proteção contra entregas duplicadas (Não repetir) para que uma nova tentativa não execute o seu fluxo de trabalho duas vezes.

A página «Webhooks», que apresenta seis webhooks, cada um com o respetivo número de invocações, autenticação e um indicador «Ativado» ou «Desativado»
A página «Webhooks». Cada linha indica a frequência com que o webhook foi chamado, como os utilizadores que o chamam se autenticam e se está ativado; o menu à direita permite ativá-lo, desativá-lo ou eliminá-lo.