UAT Studioby Salvion
Ajuda · Connections

Conectar um webhook

Envie ocorrências em JSON para Power Automate, Zapier, Make, n8n ou o seu próprio serviço, e encaminhe-as para onde a sua equipa trabalha: Slack, ServiceNow, uma folha de cálculo ou um sistema de tickets com que ainda não temos integração.

Duração cerca de 10 minutosQuem um administrador do workspace e alguém que construa o fluxoPlanos Team, Business, Partner e Enterprise
Num minuto

Veja primeiro

Configurar um webhook para Power Automate, Zapier ou Make: o endereço, o envio automático, o segredo, um teste e a mensagem que envia (51 segundos, legendas na imagem).
Antes de começar

O que é preciso

  • Um endereço que aceite um POST com JSON, que comece por https://. A maioria das ferramentas de automação dá-lhe um (ver Exemplos).
  • Direitos de administrador no seu workspace do UAT Studio.
Usa Jira, Azure DevOps ou Teams?Use antes essas integrações: criam tickets reais com os arquivos, trazem o estado de volta e fundem duplicados. Veja a visão geral de todos os guias. Um webhook só envia; não recebe resposta.
Configuração · uma vez por endereço

Conecte o seu webhook

1

Obtenha o endereço do seu fluxo

Crie primeiro o lado que recebe, na ferramenta que usa, e copie o endereço. Quer ver as mensagens antes de construir alguma coisa? Abra webhook.site: dá-lhe um endereço temporário e mostra tudo o que lhe é enviado. Use-o apenas com dados de teste.

2

Adicione o webhook no UAT Studio

Abra o seu workspace, clique em Connections, escolha Webhook em Add a connection e clique em Add. Depois preencha:

  • Webhook address: o endereço do passo 1.
  • Send automatically:
    • Only when I click Send on an issue (o padrão): um administrador decide que ocorrências são enviadas.
    • Every new issue and every status change, by itself: tudo é enviado de imediato.

Clique em Save settings. A escolha em Send automatically é guardada assim que a altera.

A integração Webhook: endereço preenchido, Send automatically definido para cada nova ocorrência e cada mudança de estado
3

Adicione um segredo (opcional, recomendado)

Para que o seu fluxo saiba que uma mensagem vem mesmo do UAT Studio, invente um segredo longo e aleatório (pelo menos 8 caracteres, de preferência 32 ou mais), cole-o em Secret (optional) e clique em Store token. Cada mensagem passa então a levar o header:

Authorization: Bearer <o seu segredo>

Faça o seu fluxo recusar mensagens sem o header correto. O segredo é guardado cifrado e não pode ser lido de novo; cole um novo para o substituir.

4

Teste a integração

Clique em Test connection. O UAT Studio envia:

{ "event": "test", "message": "Test message from UAT Studio" }

Qualquer resposta de 200 a 299 conta como sucesso; verá The webhook answered 200. Garanta que o seu fluxo aceita o evento de teste, ou o ignora, sem erro.

Utilização

Quando envia

EventoQuando
issue.sentUm administrador clica em Send to Webhook numa ocorrência. Sempre disponível enquanto a integração estiver On.
issue.createdUm tester reporta uma nova ocorrência. Apenas com Send automatically em cada nova ocorrência.
issue.status_changedO estado de uma ocorrência muda, por exemplo para Ready for retest ou Closed. Apenas com Send automatically. Inclui from e to.
testClica em Test connection.

Uma ocorrência fundida noutra como duplicada não envia um novo issue.created.

Referência

O que envia

Um POST com Content-Type: application/json. Todos os eventos de ocorrências têm a mesma estrutura:

{
  "event": "issue.status_changed",
  "project": { "id": "6b1f…", "name": "CRM UAT" },
  "issue": {
    "id": "a41c…",
    "key": "ISS-012",
    "title": "Save button greyed out",
    "description": "After changing the phone number, Save stays grey.",
    "severity": "High",
    "priority": "High",
    "status": "Ready for retest",
    "assignee": "Dev team",
    "ticket": "PORTAL-41",
    "ticket_url": "https://acme.atlassian.net/browse/PORTAL-41"
  },
  "test_case": { "num": 4, "title": "Edit a contact", "step": 3 },
  "reported_by": "Tess Tester",
  "from": "In progress",
  "to": "Ready for retest",
  "url": "https://app.uat.studio/p/6b1f…/issues"
}
CampoSignificado
eventissue.sent, issue.created, issue.status_changed ou test.
projectO projeto de UAT: id e nome.
issue.keyO número no UAT Studio, como ISS-012. Use issue.id para reconhecer a mesma ocorrência em mensagens posteriores.
issue.severityCritical, High, Medium ou Low. issue.priority: High, Medium ou Low.
issue.statusO estado no UAT Studio: New, In progress, Ready for retest, Closed ou Rejected.
issue.ticketO ticket associado do Jira ou do Azure DevOps, se existir; caso contrário null.
test_caseO teste e o número do passo em que a ocorrência foi encontrada; null para uma ocorrência fora de um teste. Com issue.sent, também a action e o resultado expected do passo.
reported_byO nome do tester que a encontrou.
from, toApenas com issue.status_changed: o estado antigo e o novo.
urlAs ocorrências do projeto no UAT Studio. Para abrir é preciso iniciar sessão.

Os campos podem ser null e podemos acrescentar campos mais tarde, por isso faça o seu fluxo ignorar o que não conhece. Screenshots e arquivos nunca são enviados; ficam no UAT Studio.

Exemplos

Construir o lado que recebe

Power Automate

  1. Crie um Instant cloud flow com o trigger When an HTTP request is received, para Anyone.
  2. Em Request Body JSON Schema, clique em Use sample payload to generate schema e cole o exemplo acima.
  3. Adicione uma Condition sobre event (por exemplo: is not equal to test) e depois as ações que quiser: uma tarefa no Planner, uma linha no Excel, um email, um item no SharePoint.
  4. Guarde o fluxo. O trigger mostra agora o HTTP URL: esse é o endereço do webhook.

Nota: o trigger HTTP é um conector premium no Power Automate. Para publicar num canal do Teams não precisa dele: use a integração com o Microsoft Teams.

Zapier

Crie um Zap com o trigger Webhooks by Zapier › Catch Hook, copie o endereço, clique em Test connection no UAT Studio e depois envie uma ocorrência, para que o Zapier conheça os campos. Depois adicione a ação que quiser, como uma mensagem no Slack.

Make

Comece um cenário com Webhooks › Custom webhook, copie o endereço e clique em Redetermine data structure antes de enviar uma ocorrência do UAT Studio.

O seu próprio serviço

Aceite um POST com JSON, compare o header Authorization com o seu segredo, responda 200 rapidamente e faça o trabalho demorado depois. As mensagens não são reenviadas após uma falha, por isso guarde um log do que recebe.

Ajuda

Se algo falhar

VêO que fazer
O webhook respondeu 401 ou 403O seu fluxo recusa a mensagem: verifique o segredo dos dois lados, ou se o fluxo pode ser chamado por qualquer pessoa.
O webhook respondeu 404O endereço está errado, ou o fluxo foi removido ou desativado. Copie o endereço de novo.
O webhook respondeu 400 ou 500O seu fluxo não aceita a mensagem. Muitas vezes não trata o evento test, ou um campo que é null. Veja o histórico de execuções do fluxo.
Não chega nada para novas ocorrênciasVerifique se Send automatically está definido para cada nova ocorrência e se a integração está On. Depois envie uma ocorrência manualmente para ver a resposta do seu fluxo.
Sem botão Send to WebhookSó os administradores o veem, e apenas quando a integração está On.
As integrações não fazem parte do seu planoAs integrações estão incluídas no Team, Business, Partner e Enterprise, e como módulo para o Project. O seu administrador pode mudar de plano em Plan & billing.

Continua com dificuldades? Escreva para [email protected] com a mensagem que vê. Nunca nos envie o próprio segredo.

Segurança

O que sai do UAT Studio

  • As mensagens saem apenas por HTTPS.
  • Contêm o texto da ocorrência, o teste e o nome do tester, nunca arquivos nem screenshots. Envie-as apenas para um serviço a que a sua organização confie essa informação.
  • O segredo é guardado cifrado (AES-256), com a chave separada da base de dados. Ninguém o pode voltar a ler.
  • Ponha a integração em Off ou remova-a, e nada mais é enviado.