Fido's API endpoints are quite flexible and you can request a range of services from a single endpoint
What is Browser Fingerprinting?
Fido browser is an advanced detection tool that can spot suspicious behavior and activity within a browser. Contrary to other APIs this module requires a javascript snippet in order to be active.
following an example of a Browser Fingerprinting
Response
Following an example of the response:
{
"resolution_id": "...",
"customer_id": "...",
"device_request_time": "...",
"webhook_url": "...",
"claims": [
"browser"
],
"marketing_channel": "organic",
"do_not_track": true,
"language": "en-US",
"timezone": "CET",
"request_location": "https://...",
"request_referrer": "https://",
"score_cluster": "very_high",
"score": 649,
"battery_charging": "true",
"battery_level": "42",
"color_depth": "24",
"cookies_enabled": "false",
"cpu_class": "x86",
"cpu_cores": "12",
"extensions_list": "Google Docs Offline,JSON Viewer,GNOME Shell integration,dataslayer",
"google_topics": "Arts & Entertainment/Movie Listings & Theater Showtimes",
"incognito_mode": "true",
"location_campaign": "campaign_001",
"location_content": "Loans",
"location_keyword": "cars",
"location_medium": "cpc",
"location_source": "bing",
"location_term": "mutui",
"media_devices_count": "3",
"media_devices_list": "audioinput,videoinput,audiooutput",
"os": "Windows 11",
"referrer_campaign": "campaign_001",
"referrer_content": "Loans",
"referrer_keyword": "cars",
"referrer_medium": "cpc",
"referrer_source": "bing",
"referrer_term": "mutui",
"screen_resolution": "2560x1440",
"video_card_renderer": "ANGLE (Intel, Mesa Intel(R) Xe Graphics (TGL GT2), OpenGL 4.6)",
"video_card_vendor": "Google Inc. (Intel)",
"viewport": "1260x1300",
"name": "Chrome Mobile",
"version": "55.0.2883.91",
"device_type": "Mobile Phone",
"device_brand": "Samsung",
"device_model": "Galaxy S7 Edge",
"device_operating_system": "Android",
"reason_codes": "TP001,RP001"
}
RESPONSE
All fields of the fingerprint module require the js probe installed on the page.
name | type |
---|---|
marketing_channel | string The traffic source through which the user comes to your website Ex: organic |
do_not_track | boolean The browser is requesting to websites not collect or track browsing data. It's turned off by default. Ex: true |
language | string The language that is installed on the browser in ISO 639-1 code Ex: en-US |
timezone | string The timezone configured on the browser of the user Ex: CET |
request_location | string The url (complete with parameters) of the page that triggered the action, usually the url where a form resides Ex: https://... |
request_referrer | string The referrer url (complete with parameters) of the page that triggered the action. Ex: https:// |
score_cluster | string A cluster summarizing the quality of the browser provided Ex: very_high Enum: very_low,low,review,high,very_high |
score | integer A number ranging from 0 to 1000 represents the quality of the IP information detected Ex: 649 |
battery_charging | boolean A flag indicating if the devices is charging its battery Ex: true |
battery_level | integer A string indicating the battery level percentage of the user's device Ex: 42 |
color_depth | integer A string indicating the color depth of the user's video card Ex: 24 |
cookies_enabled | boolean A flag indicating if the user has enabled or not the cookies in their browser Ex: false |
cpu_class | string A string indicating the cpu class of the user's device Ex: x86 |
cpu_cores | integer A string indicating how many cores the cpu of the user's have Ex: 12 |
extensions_list | string A string indicating the most common chrome extension the user installed Ex: Google Docs Offline,JSON Viewer,GNOME Shell integration,dataslayer |
google_topics | string A string indicating the user Google Topics saved in the browser Ex: Arts & Entertainment/Movie Listings & Theater Showtimes |
incognito_mode | boolean A flag indicating if the user was browsing in incognito mode or not Ex: true |
location_campaign | string A string indicating the value for the campaign retrieved from the request location url Ex: campaign_001 |
location_content | string A string indicating the value for the content retrieved from the request location url Ex: Loans |
location_keyword | string A string indicating the value for the keyword retrieved from the request location url Ex: cars |
location_medium | string A string indicating the value for the medium retrieved from the request location url Ex: cpc |
location_source | string A string indicating the value for the source retrieved from the request location url Ex: bing |
location_term | string A string indicating the value for the term retrieved from the request location url Ex: mutui |
media_devices_count | integer A string indicating how many media devices the user has Ex: 3 |
media_devices_list | string A string indicating which kind of media devices the user has Ex: audioinput,videoinput,audiooutput |
os | string A string indicating user's device operating system Ex: Windows 11 |
referrer_campaign | string A string indicating the value for the campaign retrieved from the request referrer url Ex: campaign_001 |
referrer_content | string A string indicating the value for the content retrieved from the request referrer url Ex: Loans |
referrer_keyword | string A string indicating the value for the keyword retrieved from the request referrer url Ex: cars |
referrer_medium | string A string indicating the value for the medium retrieved from the request referrer url Ex: cpc |
referrer_source | string A string indicating the value for the source retrieved from the request referrer url Ex: bing |
referrer_term | string A string indicating the value for the term retrieved from the request referrer url Ex: mutui |
screen_resolution | string A string indicating the value for the screen resolution Ex: 2560x1440 |
video_card_renderer | string A string indicating the value for the video card renderer Ex: ANGLE (Intel, Mesa Intel(R) Xe Graphics (TGL GT2), OpenGL 4.6) |
video_card_vendor | string A string indicating the value for the video card vendor Ex: Google Inc. (Intel) |
viewport | string A string indicating the value for the viewport Ex: 1260x1300 |
name | string A string indicating the value for the browser name Ex: Chrome Mobile |
version | string A string indicating the value for the browser version Ex: 55.0.2883.91 |
device_type | string A string indicating the value for the device type Ex: Mobile Phone Enum: Mobile Phone, Games Console, Digital Home Assistant, Refrigerator, Desktop, Data Collection Terminal, Telematics Control Unit, Tablet, TV, Set Top Box, ... |
device_brand | string A string indicating the value for the device brand Ex: Samsung |
device_model | string A string indicating the value for the device model Ex: Galaxy S7 Edge |
device_operating_system | string A string indicating the value for the device operating system Ex: Android |
reason_codes | string Comma separated risk and trust signal for the product browser. For more information about reason codes you can go to Reason Codes Ex: TP001,RP001 |
COLLECTING BROWSER INFORMATION
The browser module requires inserting in a web page a javascript snippet.
The snippet's responsibility is to collect and extract all signals coming from the browser and the user interaction.
Below is an example of the snippet:
<script>
(function(f,i,d,o,c,od,e){f['FidoObject']=c;f[c]=f[c]||function(){
(f[c].q=f[c].q||[]).push(arguments)},f[c].l=1*new Date();od=i.createElement(d),
e=i.getElementsByTagName(d)[0];od.async=1;od.src=o;e.parentNode.insertBefore(od,e)
})(window,document,'script','https://code.fido.id/fd.js','fido');
fido('set_autocapture', false);
fido('claims', ['browser']);
fido('customer_id', "89754d62-8a7e-11ec-9db7-1b736d0d6767"); // the same value you will pass in the customer_id field
fido('create', 'FIDO-123456'); // your KEY
</script>
- fido('set_autocapture', false);: This statement disables the auto-capture feature, the snippet will not send any API call other than the one related to the browser collection.
- fido('claims', ['browser']); : This enables the browser data collection.
- fido('customer_id', "[customer_id_generated_runtime]"); : This identifiers needs to be provided runtime, most tag manager allows for variable base include.
- fido('create', 'FIDO-123456'); Your Key, this will link all data to your account
Snippet required
Without installing the snippet fido browser cannot be enabled. If you make the API call before the snippet collected information, you will receive an error message.
FAQ
What happen if i don't pass the customer_id?
The customer id is mandatory for the browser collection, if no value or an invalid value is passed no browser information will be collected