Webhooks en workfloo
Guía para poder definir webhooks en llamados API a workfloo.
Para recibir notificaciones automáticas durante la ejecución de sus workfloos (webhooks), incluya los siguientes campos en el cuerpo de la solicitud de inicio:
- callbackUrl: URL del endpoint al que se enviarán las notificaciones de webhook.
- callbackXApiKey (opcional): clave API utilizada para autorizar las solicitudes entrantes, en caso de que su endpoint requiera autenticación.
Durante la ejecución del workfloo, se enviarán notificaciones en los siguientes eventos:
- Cuando el flujo se encuentra en pausa y requiere intervención del usuario (por ejemplo: completar un formulario, ingresar un PIN o subir un documento).
- Cuando el flujo ha finalizado completamente.
A continuación, se muestran algunos ejemplos de notificaciones que puede recibir vía webhook.
Form
Cuando el workfloo llegó a un paso de formulario.
{
"currentNodeId": "1748283724487876",
"currentNodeName": "formulario curp",
"currentNodeType": "FORM",
"form": {
"formFieldSection": [
{
"fields": [
{
"fieldMetadata": {},
"id": "curp",
"name": "CURP",
"predefined": true,
"required": false,
"section": "GENERAL_DATA"
}
],
"section": "GENERAL_DATA"
}
]
},
"id": "d34d66cd-7995-4d86-b01b-ee576bc70d8d",
"name": "With callbacks",
"status": "PROGRESS"
}
NIP
Cuando en el workfloo se detecte que hay un NIP para autenticar la llamada de alguno de los burós
{
"currentNodeId": "1748283676868449",
"currentNodeName": "nip",
"currentNodeType": "LINK",
"id": "d34d66cd-7995-4d86-b01b-ee576bc70d8d",
"link": {
"companyName": "razon",
"key": "nip",
"keyTypeNode": "bc_pf_query",
"phase": ""
},
"name": "With callbacks",
"status": "PROGRESS"
}
Documents
Cuando hay un conector de documentos
{
"currentNodeId": "1748283706586301",
"currentNodeName": "documento",
"currentNodeType": "DOCUMENT",
"document": {
"documentField": [
{
"id": "ine_data_extraction_set",
"name": "Campos INE OCR extracción de datos",
"predefined": true,
"required": true,
"set": {
"files": [
{
"id": "ine_back_image",
"name": "Imagen trasera de INE",
"predefined": true,
"required": true
},
{
"id": "ine_front_image",
"name": "Imagen frontal de INE",
"predefined": true,
"required": true
}
]
}
}
]
},
"id": "d34d66cd-7995-4d86-b01b-ee576bc70d8d",
"name": "With callbacks",
"status": "PROGRESS"
}
Fin de la ejecución
Cuando se termine de ejecutar el workfloo.
{
"currentNodeId": "",
"currentNodeName": "",
"currentNodeType": "",
"id": "d34d66cd-7995-4d86-b01b-ee576bc70d8d",
"name": "With callbacks",
"status": "SUCCESS"
}
Obtener los datos del workfloo
Al finalizar la ejecución de un workfloo, puedes recuperar los datos generados mediante dos opciones:
- Consultar los datos utilizando la API Get Workfloo by ID.
- Agregar un conector API al final del workfloo para recibir los datos directamente en tu sistema.
Opción 1: Obtener los datos vía API
Una vez recibida la notificación de que el workfloo ha finalizado, puedes realizar una consulta a la API Get Workfloo by ID. Esta API te devolverá toda la información del workfloo en formato JSON.
Opción 2: Obtener los datos vía conector API
También puedes configurar un conector API al final del workfloo, que enviará los datos automáticamente a una URL de tu propiedad. Para esto, deberás crear un endpoint (webhook) que reciba una solicitud POST con el siguiente formato:
curl --location 'https://TU_URL_WEBHOOK.net' \
--header 'Content-Type: application/json' \
--data '{
"workflooResponse": "{{workfloo}}"
}'
El campo workflooResponse contendrá una cadena JSON con toda la información del workfloo, equivalente a la que obtendrías al ejecutar la API Get Workfloo by ID.
Updated about 2 months ago