Overview
Roundtable Alias uses device fingerprinting to identify and track the devices participants use while taking a survey. This lets users identify duplicate participants and analyze device characteristics such as location spoofing, automated scripts, and browser tampering.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.js(see script above) and 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
- ip_country: String containing the full country name where the IP is located
- bot: Boolean indicating if the participant appears to be using an automated script
- vpn: Boolean indicating if the participant is using a VPN
- incognito: Boolean indicating if the participant’s browser is in private/incognito mode
- tampering: Boolean indicating if the participant’s browser shows signs of manipulation
- virtual_machine: Boolean indicating if the participant is using from virtualized hardware
- 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.errorwill betrue- All
fingerprint_checksfields will benull - Other fields may still contain valid data
-
Fingerprinting error:
fingerprint_checks.errorwill betrue- Affected fields will be
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

