Deep Linking is a clear and simple way to direct users to specific content in the Kizeo Forms mobile application. To do this, you simply provide them with a hyperlink containing the required formalism.
We explain it all in this tutorial!
What exactly is a Deep Link ?
A Deep Link is a URL, i.e. a Web address, but its formalism is a little different from the classic URL. Indeed, a classic URL starts with https:// whereas the Deep Link starts with kizeoforms://. This specificity means that some software do not interpret this link as a URL, so it is not clickable.
To make it functional, you just need to create a hypertext link and pass it on to your users. Thus, by clicking on the link, Android and iOS redirect the URL to the KizeoForms application.
⚠️ Important
Deep Links follow the same rules as browser URLs, i.e. certain characters are not allowed. It is therefore necessary to replace them by their encoding-percent. Moreover, their maximum length is 2048 characters.
The formalism of Deep Link
The Basic Rules
The Basic Rules:What is encoding-percent?Fields compatibleSpecific formalisms
The following rules must be respected:
The Deep Link always starts with kizeoforms://--/
It is always written in lower case, without accents, and without spaces
Special characters must be encoded
The formalism must be respected to the last character
The Deep Link must be put in the form of a hypertext link
What is encoding percent ?
This is a mechanism for encoding certain characters used in the context of URLs. It consists of the substitution of a character by % followed by a hexadecimal code corresponding to the ASCII value of the character to be replaced.
Fields compatible
It is possible to pre-fill only certain fields, provided that they are not in tables. Here is the list:
The Entry Field
The Text box
The Date and Time field
The Checkbox field
The Slider field
The List field
The Choice field
The Geolocation field
The Barcode/QR Code field
The NFC Tag field
Specific informations
While most fields accept strings, some have a special formalism. For example:
Checkbox checked: 1, '1', true or 'true
Date: YYYY-MM-DD
Hour: hh:mm:ss
Date and hour: YYYY-MM-DDThh:mm:ss
The tag names below are protected and will not be processed when pre-entered by a Deep Link.
caption
comingFromList
formId
scrollTo
Use Cases
1 - The Deep Link generics
With the basic links, this is what you can do:
kizeoforms://--/ opens the Kizeo Forms account
kizeoforms://--/login allows access to the authentication page
kizeoforms://--/forms allows the access to a list of forms
kizeoforms://--/favorites allows access to a list of favorite forms
kizeoforms://--/settings allows the access to the application's settings
kizeoforms://--/forms/formId allows you to enter the data on the form that corresponds to the formId
kizeoforms://--/data allows access to the list of entered data
kizeoforms://--/receipts allows access to the inbox
⚠️ Important
The first two links do not require you to be connected to the application, whereas the following ones do.
Keep in mind: If the user is not yet logged in when he/she clicks on the link, he/she will only have access to the authentication page, whereas if he/she is already logged in, he/she will be automatically redirected to the home page.
2 - Customised Deep Links
Consider the following fields with their respective tags
Le formalisme d'un Deep Link est le suivant : kizeoforms://--/forms/formId?tag1=valeur1&tag2=valeur2&tag3=valeur3
formId must be replaced by the form ID. This is the 6-digit reference found in the URL of the form creation page
tag1, tag2, tag3 etc... correspond to the name of the field tag
value1, value2, value3 etc... are the values that will be entered
Let's look at some concrete cases, using the following fields with their respective identifiers.
Fill in a field
We want to put the name Kizeo Forms in the Input Field of the form whose id is 123456.
The space between Kizeo and Forms is a special character, its code is %20
The form is: kizeoforms://--/forms/formid?field_name=KizeospaceForms
The link will be: kizeoforms://--/forms/123456?input_field1=Kizeo%20Forms
Fill in a field with line breaks
We want to put the Kizeo address with line breaks in the Text box field of the form with id 123456.
Special characters :
The space between words, its code is %20
The e of Alley, its code is %C3%A9
The line break in the address, its code is %5Cn
kizeoforms://--/forms/formid?field_name=55spaceAlleyspaceCamillespaceClaudelback to the line84000spaceAvignon
kizeoforms://--/forms/123456?zone_de_texte1=55%20All%C3%A9e%20Camille%20Claudel%5Cn84000%20Avignon
Fill in several fields
We want to put the name Kizeo Forms in the Input field and the address of Kizeo with line breaks in the Text field of the form with id 123456.
Les caractères spéciaux :
The space between words, its code is %20
The e of Alley, its code is %C3%A9
The line break in the address, its code is %5Cn
The and between two typed elements, its code is &
kizeoforms://--/forms/formid?field_name=KizeospaceForms&field_name=55spaceAlleyspaceCamillespaceClaudelline break84000spaceAvignon
kizeoforms://--/forms/123456?champ_de_saisie1=Kizeo%20Forms&zone_de_texte1=55%20All%C3%A9e%20Camille%20Claudel%5Cn84000%20Avignon`
Fill in a checkbox fields
We want to check the box of the field yesno
Formula: kizeoforms://--/forms/formid?name_of_field=1 (or name_of_field=true)
Link: kizeoforms://--/forms/123456?yesno=1 (or yesno=true)
Fill in a date and time field
We want to display the date 24 November 2022 in the datesonly field
Formula: kizeoforms://--/forms/formid?Name_of_field=YYYY-MM-DD
Link: kizeoforms://--/forms/123456?dateseule=2022-11-24
We want to display the time 11:56 in the time field
Formula: kizeoforms://--/forms/formid?name_of_field=hh:mm:ss
Link: kizeoforms://--/forms/123456?heure=11:56:00
We want to display the date November 24, 2022 and the time 11:56 in the date_and_time1 field
Formula: kizeoforms://--/forms/formid?name_of_field=YYYY-MM-DD
Link: kizeoforms://--/forms/123456?date_and_time1=2022-11-24T11:56:00