UAT Studioby Salvion
Ayuda · Conexiones

Conectar un webhook

Envía incidencias en JSON a Power Automate, Zapier, Make, n8n o tu propio servicio, y hazlas llegar allí donde trabaja tu equipo: Slack, ServiceNow, una hoja de cálculo o un sistema de tickets con el que aún no nos conectamos.

Tiempo unos 10 minutosQuién un administrador del espacio de trabajo, y alguien que construya el flujoPlanes Team, Business, Partner y Enterprise
En un minuto

Míralo primero

Configurar un webhook para Power Automate, Zapier o Make: la dirección, el envío automático, el secreto, una prueba y el mensaje que envía (51 segundos, subtítulos en la imagen, en inglés).
Antes de empezar

Lo que necesitas

  • Una dirección que acepte un POST con JSON, que empiece por https://. La mayoría de las herramientas de automatización te dan una (consulta Ejemplos).
  • Derechos de administrador en tu espacio de trabajo de UAT Studio.
¿Usas Jira, Azure DevOps o Teams?Usa mejor esas conexiones: crean tickets reales con los archivos, traen de vuelta el estado y fusionan duplicados. Consulta la lista de todas las guías. Un webhook solo envía; no recibe respuesta.
Configuración · una vez por dirección

Conecta tu webhook

1

Consigue la dirección de tu flujo

Crea primero el extremo receptor, en la herramienta que uses, y copia su dirección. ¿Quieres ver los mensajes antes de construir nada? Abre webhook.site: te da una dirección temporal y muestra todo lo que se le envía. Úsalo solo con datos de prueba.

2

Añade el webhook en UAT Studio

Abre tu espacio de trabajo, haz clic en Connections, elige Webhook en Add a connection y haz clic en Add. Después rellena:

  • Webhook address: la dirección del paso 1.
  • Send automatically:
    • Only when I click Send on an issue (la opción predeterminada): un administrador decide qué incidencias se envían.
    • Every new issue and every status change, by itself: todo se envía al instante.

Haz clic en Save settings. La opción de Send automatically se guarda en cuanto la cambias.

La conexión Webhook: dirección rellenada, Send automatically en cada nueva incidencia y cada cambio de estado
3

Añade un secreto (opcional, recomendado)

Para que tu flujo sepa que un mensaje viene de verdad de UAT Studio, inventa un secreto largo y aleatorio (al menos 8 caracteres, mejor 32 o más), pégalo en Secret (optional) y haz clic en Store token. Así cada mensaje lleva la cabecera:

Authorization: Bearer <tu secreto>

Haz que tu flujo rechace los mensajes sin la cabecera correcta. El secreto se guarda cifrado y no se puede volver a leer; pega uno nuevo para sustituirlo.

4

Prueba la conexión

Haz clic en Test connection. UAT Studio envía:

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

Cualquier respuesta entre 200 y 299 cuenta como correcta; verás The webhook answered 200. Asegúrate de que tu flujo acepta el evento de prueba, o lo omite, sin error.

Uso

Cuándo envía

EventoCuándo
issue.sentUn administrador hace clic en Send to Webhook en una incidencia. Siempre disponible mientras la conexión está en On.
issue.createdUn tester registra una nueva incidencia. Solo con Send automatically en cada nueva incidencia.
issue.status_changedEl estado de una incidencia cambia, por ejemplo a Ready for retest o Closed. Solo con Send automatically. Incluye from y to.
testHaces clic en Test connection.

Una incidencia fusionada con otra como duplicado no envía un nuevo issue.created.

Referencia

Qué envía

Un POST con Content-Type: application/json. Todos los eventos de incidencias tienen la misma forma:

{
  "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 o test.
projectEl proyecto de UAT: id y nombre.
issue.keyEl número en UAT Studio, como ISS-012. Usa issue.id para reconocer la misma incidencia en mensajes posteriores.
issue.severityCritical, High, Medium o Low. issue.priority: High, Medium o Low.
issue.statusEl estado en UAT Studio: New, In progress, Ready for retest, Closed o Rejected.
issue.ticketEl ticket vinculado de Jira o Azure DevOps, si lo hay; si no, null.
test_caseLa prueba y el número de paso en que se encontró la incidencia; null para una incidencia fuera de una prueba. Con issue.sent, también la action y el resultado expected del paso.
reported_byEl nombre del tester que la encontró.
from, toSolo con issue.status_changed: el estado anterior y el nuevo.
urlLas incidencias del proyecto en UAT Studio. Para abrirlas hay que iniciar sesión.

Los campos pueden ser null y es posible que añadamos campos más adelante, así que haz que tu flujo ignore lo que no conoce. Las capturas de pantalla y los archivos nunca se envían; se quedan en UAT Studio.

Ejemplos

Construir el extremo receptor

Power Automate

  1. Crea un Instant cloud flow con el disparador When an HTTP request is received, para Anyone.
  2. En Request Body JSON Schema, haz clic en Use sample payload to generate schema y pega el ejemplo de arriba.
  3. Añade una Condition sobre event (por ejemplo: is not equal to test) y después las acciones que quieras: una tarea en Planner, una fila en Excel, un correo, un elemento en SharePoint.
  4. Guarda el flujo. El disparador muestra ahora la HTTP URL: esa es la dirección del webhook.

Nota: el disparador HTTP es un conector premium en Power Automate. Para publicar en un canal de Teams no lo necesitas: usa la conexión con Microsoft Teams.

Zapier

Crea un Zap con el disparador Webhooks by Zapier › Catch Hook, copia la dirección, haz clic en Test connection en UAT Studio y después envía una incidencia, para que Zapier conozca los campos. Luego añade la acción que quieras, como un mensaje en Slack.

Make

Empieza un escenario con Webhooks › Custom webhook, copia la dirección y haz clic en Redetermine data structure antes de enviar una incidencia desde UAT Studio.

Tu propio servicio

Acepta un POST con JSON, compara la cabecera Authorization con tu secreto, responde 200 rápido y haz el trabajo lento después. Los mensajes no se reenvían tras un fallo, así que registra lo que recibes.

Ayuda

Si algo sale mal

VesQué hacer
El webhook respondió 401 o 403Tu flujo rechaza el mensaje: comprueba el secreto en ambos lados, o que cualquiera puede llamar al flujo.
El webhook respondió 404La dirección es incorrecta, o el flujo se eliminó o se desactivó. Copia la dirección otra vez.
El webhook respondió 400 o 500Tu flujo no acepta el mensaje. A menudo no gestiona el evento test, o un campo que es null. Mira el historial de ejecuciones del flujo.
No llega nada de las nuevas incidenciasComprueba que Send automatically está en cada nueva incidencia y que la conexión está en On. Después envía una incidencia a mano para ver la respuesta de tu flujo.
No aparece el botón Send to WebhookSolo lo ven los administradores, y solo cuando la conexión está en On.
Las conexiones no forman parte de tu planLas conexiones se incluyen en Team, Business, Partner y Enterprise, y como complemento en Project. Tu administrador puede cambiar de plan en Plan & billing.

¿Sigues atascado? Escribe a [email protected] con el mensaje que ves. Nunca nos envíes el secreto.

Seguridad

Qué sale de UAT Studio

  • Los mensajes salen solo por HTTPS.
  • Contienen el texto de la incidencia, la prueba y el nombre del tester, nunca archivos ni capturas de pantalla. Envíalos solo a un servicio al que tu organización confíe esa información.
  • El secreto se guarda cifrado (AES-256), con la clave guardada aparte de la base de datos. Nadie puede volver a leerlo.
  • Pon la conexión en Off o elimínala y ya no se envía nada.