Encabezados de entrega
Los payloads HTTP POST que se entregan al endpoint de URL configurado de su webhook contendrán varios encabezados especiales:
-
X-Fluid-Hook-Guid: El identificador único de esta configuración de webhook.
-
X-Fluid-Event: El nombre del evento que activó la entrega.
-
X-Fluid-Entity: El nombre de la entidad en la que se activó este evento.
-
X-Fluid-Delivery: Un identificador único global (GUID) para identificar la entrega.
-
X-Hub-Signature-256: Este encabezado se envía si el webhook está configurado con un secreto. Este es el resumen HMAC hex del cuerpo de la solicitud, y se genera utilizando la función hash SHA-256 y el secreto como clave HMAC. Para obtener más información, consulte Validando webhooks
-
User-Agent: Este encabezado siempre tendrá el prefijo Fluid-Hookshot/{WebhookIntegrationName}, donde WebhookIntegrationName es el valor configurado por el cliente al configurar este webhook.
-
X-Fluid-Hook-Principal-Entity: El tipo de entidad donde se creó el webhook. Para una Action, este valor sería la entidad principal de esta Action, es decir, "Board".
-
X-Fluid-Hook-Principal-Guid: El identificador único de la entidad donde se creó el webhook. Para una Action, esto sería el Guid principal, que es el Guid de Board único.
Ejemplo de entrega de webhook
Puede elegir que los payloads se entreguen en formato JSON (application/json). A continuación se muestra un ejemplo de una solicitud POST de webhook que utiliza el formato JSON para una Action.
{
"fields": {
"assignee": null,
"attachmentCount": 0,
"author": {
"id": 603,
"guid": "f1cb6467-0262-4539-9148-7b869defd817",
"name": "David Burt",
"userName": "david.burt",
"email": "david.burt@fluidbsg.com"
},
"boardCategory": 0,
"boardId": 0,
"boardGuid": "89f97f10-6bbd-4f75-8cf6-ad0fb9d6f3a0",
"boardTitle": "Agile T1",
"businessValue": 0,
"chatCount": 0,
"contentType": "Process",
"createDate": "2024-03-22T13:14:49.0000000",
"description": "",
"descriptionHtml": null,
"dueDate": null,
"endDate": null,
"impediment": 0,
"isClosed": false,
"isCalculated": false,
"isOwner": true,
"modifiedBy": {
"id": 603,
"guid": "f1cb6467-0262-4539-9148-7b869defd817",
"name": "David Burt",
"userName": "david.burt",
"email": "david.burt@fluidbsg.com"
},
"modifiedDate": "2024-03-22T13:14:49.0000000",
"points": 1,
"parentGuid": "3d3a4acf-193e-424b-a61d-856d83728ba3",
"priority": "Medium",
"principalGuid": "89f97f10-6bbd-4f75-8cf6-ad0fb9d6f3a0",
"shortCode": "AT-85",
"startDate": null,
"status": "Not Started",
"statusCode": 1,
"taskType": "Task",
"title": "r",
"titleRichText": "r",
"titleHtml": "r"
},
"id": 4566,
"guid": "6dfb56bc-91ab-4739-a95e-ad508c2ac206",
"url": "https://localhost:62199/rest/api/action/4566"
}
Nota: En este ejemplo, la propiedad entity del payload del evento es el mismo modelo JSON de entidad que se utiliza en la REST API para Actions; consulte Referencia de la API REST de Fluid para obtener más detalles. Los modelos de entidad JSON del webhook siempre coincidirán con los modelos JSON de la REST API.
Definiciones
|
Nombre |
Descripción |
|
event |
El desencadenante del evento, p. ej., Create, Update o Delete. |
|
entityType |
¿En qué entidad se activó este evento? P. ej., Action.
X-Fluid-Entity: El nombre de la entidad en la que se activó este evento. |
Entidad
Según el tipo de entidad del webhook, p. ej., Action WebHook, la propiedad entity representa el estado completo de la entidad en el momento en que se activó el webhook. En este ejemplo, consulte la llamada a la REST API Obtener acción para obtener más detalles.