- About the IPQS APIs
- Proxy & VPN Detection API
- Email Verification API
- Phone Number Validation API
- Malicious URL Scanner API
- Device Fingerprint API
- Mobile Device Fingerprinting SDK
- Gaming Fraud Detection SDK
- Dark Web Leak API
- Malware File Scanner API
- Request List API
- Fraud Reporting API
- Account Management APIs
- Bulk Validation CSV
- Allowlist Blocklist APIs
- Plugins Platforms Integrations
- IP Reputation Database
- IP Address Abuse Feed
- Email Verification Database
-
Custom Integrations
- Getting Started
- Authentication
- Refresh Secret
- IP & Proxy Checks
- Email Verification Checks
- Phone Number Validity Checks
- Device Tracker
- List Device Trackers
- Device Tracker Statistics
- Login Tokens
- Overview Statistics
- Recent Proxy Statistics
- Recent Email Statistics
- Fraud Reporting
- Retrieve Requests by ID
- Country List API Documentation
- Release Notes
Registering a Game with IPQS
To start using the IPQS Unity Fraud Detection SDK, log into your IPQS account and register a new game by clicking here, or select the Setup New Gaming Fraud Detection SDK button from inside the Gaming Fraud Detection dashboard.
After registering, you'll be directed to a page with instructions on downloading the SDK. You can return there by choosing Manage Game on the Gaming SDK Dashboard.
Each game is assigned a unique API key for making requests to the Gaming API.
Integrating the Unity Fraud Detection SDK Into Your Game
- Unzip the package and place all files in your project's
/Assets/Plugins folder. You may not need all files included in the package. See SDK File List & Descriptions and Plugin File Placement for more details. - Add the following package according to Unity's "Adding and Removing" instructions:
| Package | Description |
|---|---|
| Newtonsoft.Json | Used for all json conversions. Import using the git URL com.unity.nuget.newtonsoft-json Use version 3.2.1 or later. Earlier releases may work, but were not tested and not guaranteed. |
| 3. Adjust the Unity Player Settings for your project. See Project Player Settings for a list of all player settings. | |
| 4. There may be additional installation steps specific to your platform. Complete any platform-specific installation steps: |
Warning
iOS builds require some additional set up in XCode after the initial Unity build. Cleaning the build will require repeating these steps. See Testing and Building in XCode for details.
- Standalone Builds (Windows, Linux, and MacOS) and when testing in Unity's editor
- Android Builds
- iOS Builds
- Testing and Building in XCode
- All Other Builds
- Add the necessary code to integrate the Unity SDK into your project. See Using the SDK for complete code examples and detailed descriptions of parameters, methods, and best practices.
- Access your score details. A full description of the IPQSResults object can be found at IPQSResults Object.
SDK File List & Descriptions
Listed below are all the different files available and what platforms they are used for. Your game will require the Main SDK as well as whatever fingerprinter(s) match your build type.
The target framework for all .dll files is .Net Standard 2.1 so all projects can build with both .Net Standard and .Net Framework. Place the files necessary to your game in your project's
Note
No two UnitySDK.
| File Name | Description |
|---|---|
| IPQualityScore.UnitySDK.v#.#.#.dll | Main SDK for all Unity builds. The accompanying fingerprinters need to be included. |
| IPQualityScore.Fingerprinter.Linux.so | The Linux build fingerprinter. |
| IPQualityScore.Fingerprinter.MacOs.dylib | The MacOS build fingerprinter. |
| IPQualityScore.Fingerprinter.Windows.dll | The Windows build fingerprinter. |
| IPQualityScore.Fingerprinter.Android.aar | The Android build fingerprinter. |
| IPQualityScore.Fingerprinter.iOS.BitcodeEnabled.YES.framework IPQualityScore.Fingerprinter.iOS.BitcodeEnabled.NO.framework | Two versions of the iOS build fingerprinter. One has bitcode enabled and the other does not. Choose the one that matches your iOS build. |
Plugin File Placement
All IPQualityScore plugins should be placed in your project's
Then, for each plugin, you must select the correct platform type located under Select platforms for plugin. If you prefer, Unity will use added folders to automatically set platforms.
Note
No two UnitySDK.
Plugin File Placement:

Platform Automation Using Folders:


Project Player Settings
Each SDK is directly affected by the following Unity Player Settings. The list is not comprehensive.
Note
The Player Setting titles below correspond with Unity 2023.1.
| Player Setting | Setting Description & Options |
|---|---|
| Scripting Backend | The SDKs work with both Mono and IL2CPP options. However, the IL2CPP option may strip necessary classes. See Common Exceptions for how to detect if this occurs. |
| Api Compatibility Level | Both .NET Standard 2.1 and .Net Framework are compatible. The SDK's targeted framework is .NET Standard 2.1. However, no problems were found during testing when .Net Framework was selected. |
| Target Minimum Versions platform specific | Standalone macOSX = 11.0 Android = Android 6.0 'Marshmallow' iOS = 13.0 These versions were tested. Earlier versions may still work. |
| Allow "unsafe" code | This should be checked (true). If unchecked (false), there may be no support for pre-defined assemblies (for example .dll, .aar, etc.). |
| Strip Engine Code & Managed Striping Level | In some cases, testing with high stripping enabled led to missing classes and methods. We suggest disabling code stripping, or setting it as low as possible. See Common Exceptions for how to detect if this occurs. |
| Internet Access Android only | Use "Require". If "Auto" is selected, Unity will only enable internet access if non-pre-defined code accesses the internet in some fashion. |
| Location Usage Description iOS Only | iOS builds may require a description here even if you do not want the user's location. However, this alone will not prompt the user for location permission. It merely defines the message prompt when and if the program tries to access location data. |