¿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)",
  "code": "[Código del formulario] (String)",
  "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)",
    "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)

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

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

Artículos Relacionados

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


Did this answer your question?