Kizeo Forms - Tutorials

Unlocking the Power of Kizeo Forms with Webhooks

Written by Kavitha Ramamurthy | Nov 13, 2023 9:16:27 AM

In Kizeo Forms, Webhooks facilitate immediate integration with various systems and services using APIs.

Rather than consistently checking APIs for changes, Webhooks offer instant alerts for specific event occurrences, inclusive of the detailed data involved.

Utilising Webhooks substantially boosts integration effectiveness and agility, simplifying the automation of processes and enabling access to real-time data.

What do we receive with the Webhook?

1. The data header

{
"id": "171216479",
"eventType": "finished",
  • id: A unique identifier assigned to the data.

  • eventType: The action that initiated the Webhook transmission, categorised into five types:

    • finished: Pertains to the saving of data.
    • update: Involves the modification or alteration of data.
    • push: Refers to the transfer or transmission of data.
    • pull: Involves retrieving data on the recipient's mobile device.
    • delete: Relates to the removal or erasure of data on the web interface.

2. Data Key

In the data key, you first have information related to the data event.

"data": {
"recipient_user_id": null,
"answer_time": "2023-09-18T17:17:39+02:00",
"update_answer_time": "2023-09-18T17:17:39+02:00",
"id_tel": "0e7cf0a8-46bc-4246-a7ec-bbfd552cfa91",
"media": [
"c55318f923838pu319057_20230918171436_7a49b140.jpg",
"c55318f923838pu319057_20230918171617_5f3a8c56-85ff.jpg",
"c55318f923838su319057_20230918171701_b8518e6a.png"
],
"form_id": "923838",
"origin": "android",
"app_version": "7.19.198",
  • recipient_user_id: Recipient's Id for a transfer or a Push. It returns a null value if no data is transferred or sent.
  • answer_time: Timestamp of the initial data entry.
  • update_answer_time: Timestamp of the most recent data update.
  • id_tel: Unique identifier assigned upon the installation of the Kizeo Forms application on a mobile device. This identifier will change if the application is uninstalled and then reinstalled.
  • media: Compilation of media included within the data.
  • form_id: Distinct identifier assigned to each form.
  • origin: Specifies the device used for the operation:
  • web: Entered via web.
  • android: Operation performed on an Android mobile device.
  • ios: Operation performed on an iOS mobile device.
  • app_version: Version of the utilised application.

Configure the Sending of Webhooks

Setting up Webhooks involves two steps: initial configuration and then establishing the conditions for sending.

The Setup

In this phase, the following elements need to be specified:

  • Method: Choose the method such as GET, POST, DELETE, PATCH, PUT.
  • Address: Specify the URL where the Webhook should be sent.
  • Header: Include the various keys for your header.

After entering the necessary information, proceed by clicking [Next] to access the menu where you can determine the conditions for sending the Webhook.

Sending Conditions

A Webhook can be triggered under five distinct data states: transfer, push reception, recording, modification, and deletion. Multiple states can be selected concurrently.

Transfer

A webhook will be triggered when data is transferred to a user.

Triggering scenarios include:

  • Transferring from one user to another using the application or Web Interface
  • Initiating an API Push
  • Executing an Automatic Push

Non-triggering scenarios include:

  • Executing an Excel Push
  • Performing an Automatic Transfer

Reception (Push)

A webhook will be triggered when a user's mobile receives data, whether it is transferred or pushed.

Recording

A webhook will be activated when data is registered or recorded.

Modification

A webhook will be initiated when any modifications are made to the data.

Deletion

A webhook will be released when any data is removed or deleted.

Note:

Data removed from the mobile application will not be deleted from the server; hence, no corresponding action will be triggered

 

Advanced Sending Conditions to Activate Webhooks

Access the advanced sending conditions by clicking on the [Add a condition] button.

1.Filter Types

In the "Filter Type," you can choose between "Simple Filter," "Dynamic Date Filter," and "Configured Filter." Let's look at what these three categories correspond to.

Important

When entering an advanced sending condition, it's important to validate it by clicking on the blue checkmark at the end of the line.

1.1. Simple Filters

In the simple filters, you will find two sections. The first one corresponds to the standard filters available for all forms. The second one lists the available form fields.

1.1.1 Standard Values

  • User: This allows access to all profiles within your account, such as inactive, User, Group Manager, and Administrator.

  • Status: Here, you can choose the data status like sent, retrieved, or completed.

  • Form Response Date: This corresponds to either the Registration Date or Modification Date that is available in the History menu.

  • Unique Identifier: An integer value should be specified here. The unique identifier of data can be found in the ID column within the History menu.

  • Custom User Fields: Following these, a list appears containing the names of any existing custom user fields.

1.1.2 Form Fields

In this section, you will find the list of fields available for your form.

Fields that can be conditioned✅ Fields that cannot be conditioned❌
Input field Geolocation
Text box Contact
Date and time Address
Checkbox Photo
Slider Audio
Counter Sketch
List Attached file
Choice Separator
Reference Fixed text
Signature Fixed image
Barcode/QR code Fixed file
NFC Table
Calculation Fields within a table

1.2. Dynamic Date Filter

This filter enables the Webhook to be sent conditionally, based on a specific date and time.

1.3. Custom Filter

This option allows the conditional sending of the Webhook, based on the value entered in a particular field.

1.3.1. Standard settings

  • User: You will have access to all profiles of your account (inactive, User, Group Leader and Administrator).
  • Status: You can select the status of the data (submitted, retrieved, completed).
  • Form Response Date: Corresponds to the Registration Date or Modification Date found in the History menu.
  • Unique Identifier: You must enter a whole number. You can find the unique identifier of a data in the ID column of the History menu.

    The list of names of your custom user field, if you have one, is then displayed.

1.3.2. Form fields

In this section, you will find the list of fields available in your form.

Fields that can be conditioned✅ Fields that cannot be conditioned❌
Input field Geolocation
Text box Contact
Date and time Address
Checkbox Photo
Slider Audio
Counter Sketch
List Attached file
Choice Separator
Reference Fixed text
Signature Fixed image
Barcode/QR code Fixed file
NFC Table
Calculation Fields within a table

2. Operators

There are 12 operators, 2 of which are specific to the Signature Field.

Operators Designation   Operators Designation
= Equal to   Contains Searches for the presence of a specific character string within a data item.
Not equal to   Does not contain Checks for the absence of a specific character string within a data item
< Lesser than   Between Part of a list of items.
Lesser than or equal to   Except Not part of a list of items
> Greater than   Signed The signature field is filled in
Greater than or equal to   Unsigned Signature field is not filled in

Important

Depending on the filter you select, some operators may not be available. For example, in the case of the checkbox, only equal and not equal to are available.

3. Values

The available values are adapted according to the selected filter and operator.

For example, if you select between or except , you will have the possibility to make a multiple entry in the values.