Webhooks

Haz que cada respuesta llegue en tiempo real a una aplicación web compatible o una URL.

Aristotle avatar
Escrito por Aristotle
Actualizado hace más de una semana

¿Qué es un webhook?

En términos generales, un webhook es simplemente una notificación automática que se envía a través de la web cuando sucede un evento determinado.

En este caso, el evento es un nueva respuesta desde la aplicación. Cuando tus usuarios finalizan el formulario, sus respuestas se envían a través de una notificación automática al destino que hayas escogido — el Webhook URL que hayas determinado.

Las notificaciones webhook de DataScope se envían en una petición HTTP POST, y su contenido (que contiene los datos de la respuesta) está en formato JSON.

Formato JSON respuesta

[{
"form_name": "[Nombre formulario] (String)",
"form_state": "[Estado del formulario]",
"code": "[Código del formulario] (String)",
"created_at": "[Fecha sincronización] (DateTime) YYY-MM-DD HH:MM",
"started_at": "[Fecha inicio] (DateTime)",
"latitude": "[latitude] (Float)",
"longitude": "[longitude] (Float)",
"user_info": {
"user_name": "[Nombre usuario] (String)",
"username": "[Email Usuario] (String)"
},
"[question_name][question_id]": {
"name": "[Nombre Pregunta] (String)",
"question_name": "[Nombre del grupo de preguntas] (String)",
"label": "[Nombre grupo pregunta] (String)",
"row" "[Nº sub-formulario] (Integer) Defecto: null",
"value": "[Valor Respuesta] (String)",
"type": "[Tipo pregunta]*",
"id": "[ID interno pregunta] (Integer)",
"metadata": "[Código Lista] (String)",
"metadata_id": "[Identificador elemento Lista] (Integer)",
"metadata_description": "[Descripción elemento lista] (String)",
"metadata_att1": "[Atributo elemento lista] (String)",
"metadata_att2": "[Atributo elemento lista] (String)"

}
}]

Configuración

Para activar el Webhook debes entrar en la sección integraciones, luego webhooks y ahí podrás agregar el URL de tu servicio web. Ahí debes seleccionar el URL y cada vez que se finalice un formulario se va a mandar a dicha URL con el formato JSON anterior utilizando un POST.

Tu servicio debe poder recibir el request POST y retornar un 200 OK, en caso contrario el request se va a reintentar. (Timeout máximo de 10 segundos)

Enviar modificaciones

Para mandar modificaciones (cambios de resultados de respuestas o eliminación de formularios) debe habilitar casilla "Enviar modificaciones" al momento de crear el Webhook.

TIP: Se empieza a mandar la información para los nuevos formularios una vez que se configura.

----------------------------------------------------------------------------------------

Artículos Relacionados

----------------------------------------------------------------------------------------

¿Ha quedado contestada tu pregunta?