Overview
Alias employs device fingerprinting to identify and track unique devices used to submit survey responses. This feature helps detect duplicate submissions and maintain data quality by providing a stable identifier across browser sessions.Implementation
Frontend Integration
- Import the fingerprinting script:
- The script automatically generates a
fingerprint_idand stores it in the browser’s session storage.
API Integration
Request Include the optionalfingerprint_id in your API request:
fingerprint_id is provided, the API returns a fingerprint_checks object:
Field Descriptions
fingerprint_id
- Type:
string - Required: No
- Description: A unique identifier generated by the fingerprinting script
- Source: Generated by
fingerprinting.jsand stored in session storage
fingerprint_checks
- Type:
object | null - Fields:
- device_id: A stable, unique identifier for the participant’s device based on browser and system attributes
- duplicate: Boolean indicating if this device has previously submitted responses to the same survey
- error: Boolean indicating if there were any errors during fingerprint processing
Error Handling
Thefingerprint_checks object handles various scenarios:
-
No
fingerprint_idprovided:fingerprint_checkswill benull
-
Invalid
fingerprint_idprovided:fingerprint_checks.duplicatewill benull- Other fields may still contain valid data
-
Fingerprinting error:
fingerprint_checks.errorwill betrue- Affected fields will be set to
null
Security Considerations
The device fingerprinting system:- Provides a stable identifier across browser sessions
- Helps identify repeat participants
- Works independently of cookies or local storage
Best Practices
- Always handle cases where fingerprinting data might be unavailable
- Check the
errorfield before relying on fingerprinting results - Consider fingerprinting as one of multiple signals for detecting duplicate submissions
- Implement appropriate error handling for cases where the fingerprinting script fails to load

