diff --git a/README.md b/README.md index 71584ca..798504c 100644 --- a/README.md +++ b/README.md @@ -255,6 +255,7 @@ Class | Method | HTTP request | Description - [BotdDetectionResult](docs/BotdDetectionResult.md) - [BotdResult](docs/BotdResult.md) - [BrowserDetails](docs/BrowserDetails.md) + - [ClonedAppResult](docs/ClonedAppResult.md) - [Confidence](docs/Confidence.md) - [DataCenter](docs/DataCenter.md) - [DeprecatedIPLocation](docs/DeprecatedIPLocation.md) @@ -267,71 +268,61 @@ Class | Method | HTTP request | Description - [ErrorEvent404ResponseError](docs/ErrorEvent404ResponseError.md) - [ErrorVisits403](docs/ErrorVisits403.md) - [EventResponse](docs/EventResponse.md) + - [FactoryResetResult](docs/FactoryResetResult.md) + - [FridaResult](docs/FridaResult.md) - [HighActivityResult](docs/HighActivityResult.md) - [IPLocation](docs/IPLocation.md) - [IPLocationCity](docs/IPLocationCity.md) - [IdentificationError](docs/IdentificationError.md) + - [IncognitoResult](docs/IncognitoResult.md) - [IpBlockListResult](docs/IpBlockListResult.md) - [IpBlockListResultDetails](docs/IpBlockListResultDetails.md) - [IpInfoResult](docs/IpInfoResult.md) - [IpInfoResultV4](docs/IpInfoResultV4.md) - [IpInfoResultV6](docs/IpInfoResultV6.md) + - [JailbrokenResult](docs/JailbrokenResult.md) - [Location](docs/Location.md) - [LocationSpoofingResult](docs/LocationSpoofingResult.md) - [ManyRequestsResponse](docs/ManyRequestsResponse.md) + - [PrivacySettingsResult](docs/PrivacySettingsResult.md) - [ProductError](docs/ProductError.md) - [ProductsResponse](docs/ProductsResponse.md) - [ProductsResponseBotd](docs/ProductsResponseBotd.md) - [ProductsResponseIdentification](docs/ProductsResponseIdentification.md) - [ProductsResponseIdentificationData](docs/ProductsResponseIdentificationData.md) + - [ProxyResult](docs/ProxyResult.md) - [RawDeviceAttributesResultValue](docs/RawDeviceAttributesResultValue.md) - [Response](docs/Response.md) - [ResponseVisits](docs/ResponseVisits.md) + - [RootAppsResult](docs/RootAppsResult.md) - [SeenAt](docs/SeenAt.md) - [SignalResponseClonedApp](docs/SignalResponseClonedApp.md) - - [SignalResponseClonedAppData](docs/SignalResponseClonedAppData.md) - [SignalResponseEmulator](docs/SignalResponseEmulator.md) - - [SignalResponseEmulatorData](docs/SignalResponseEmulatorData.md) - [SignalResponseFactoryReset](docs/SignalResponseFactoryReset.md) - - [SignalResponseFactoryResetData](docs/SignalResponseFactoryResetData.md) - [SignalResponseFrida](docs/SignalResponseFrida.md) - - [SignalResponseFridaData](docs/SignalResponseFridaData.md) - [SignalResponseHighActivity](docs/SignalResponseHighActivity.md) - [SignalResponseIncognito](docs/SignalResponseIncognito.md) - - [SignalResponseIncognitoData](docs/SignalResponseIncognitoData.md) - [SignalResponseIpBlocklist](docs/SignalResponseIpBlocklist.md) - [SignalResponseIpInfo](docs/SignalResponseIpInfo.md) - [SignalResponseJailbroken](docs/SignalResponseJailbroken.md) - - [SignalResponseJailbrokenData](docs/SignalResponseJailbrokenData.md) - [SignalResponseLocationSpoofing](docs/SignalResponseLocationSpoofing.md) - [SignalResponsePrivacySettings](docs/SignalResponsePrivacySettings.md) - - [SignalResponsePrivacySettingsData](docs/SignalResponsePrivacySettingsData.md) - [SignalResponseProxy](docs/SignalResponseProxy.md) - - [SignalResponseProxyData](docs/SignalResponseProxyData.md) - [SignalResponseRawDeviceAttributes](docs/SignalResponseRawDeviceAttributes.md) - [SignalResponseRootApps](docs/SignalResponseRootApps.md) - - [SignalResponseRootAppsData](docs/SignalResponseRootAppsData.md) + - [SignalResponseSuspectScore](docs/SignalResponseSuspectScore.md) - [SignalResponseTampering](docs/SignalResponseTampering.md) - [SignalResponseTor](docs/SignalResponseTor.md) - - [SignalResponseTorData](docs/SignalResponseTorData.md) - [SignalResponseVirtualMachine](docs/SignalResponseVirtualMachine.md) - - [SignalResponseVirtualMachineData](docs/SignalResponseVirtualMachineData.md) - [SignalResponseVpn](docs/SignalResponseVpn.md) - [Subdivision](docs/Subdivision.md) + - [SuspectScoreResult](docs/SuspectScoreResult.md) - [TamperingResult](docs/TamperingResult.md) + - [TorResult](docs/TorResult.md) + - [VirtualMachineResult](docs/VirtualMachineResult.md) - [Visit](docs/Visit.md) - [VpnResult](docs/VpnResult.md) - [VpnResultMethods](docs/VpnResultMethods.md) - - [WebhookSignalResponseClonedApp](docs/WebhookSignalResponseClonedApp.md) - - [WebhookSignalResponseEmulator](docs/WebhookSignalResponseEmulator.md) - - [WebhookSignalResponseFactoryReset](docs/WebhookSignalResponseFactoryReset.md) - - [WebhookSignalResponseFrida](docs/WebhookSignalResponseFrida.md) - - [WebhookSignalResponseJailbroken](docs/WebhookSignalResponseJailbroken.md) - - [WebhookSignalResponsePrivacySettings](docs/WebhookSignalResponsePrivacySettings.md) - - [WebhookSignalResponseProxy](docs/WebhookSignalResponseProxy.md) - - [WebhookSignalResponseRootApps](docs/WebhookSignalResponseRootApps.md) - - [WebhookSignalResponseTor](docs/WebhookSignalResponseTor.md) - - [WebhookSignalResponseVirtualMachine](docs/WebhookSignalResponseVirtualMachine.md) - [WebhookVisit](docs/WebhookVisit.md) diff --git a/docs/SignalResponseClonedAppData.md b/docs/ClonedAppResult.md similarity index 88% rename from docs/SignalResponseClonedAppData.md rename to docs/ClonedAppResult.md index b528fe5..26bf5e8 100644 --- a/docs/SignalResponseClonedAppData.md +++ b/docs/ClonedAppResult.md @@ -1,13 +1,13 @@ -# SignalResponseClonedAppData +# ClonedAppResult ## Properties | Name | Type | Description | Notes | |------------ | ------------- | ------------- | -------------| -|**result** | **Boolean** | Android specific cloned application detection. There are 2 values: • `true` - Presence of app cloners work detected (e.g. fully cloned application found or launch of it inside of a not main working profile detected). • `false` - No signs of cloned application detected or the client is not Android. | [optional] | +|**result** | **Boolean** | Android specific cloned application detection. There are 2 values: • `true` - Presence of app cloners work detected (e.g. fully cloned application found or launch of it inside of a not main working profile detected). • `false` - No signs of cloned application detected or the client is not Android. | | diff --git a/docs/SignalResponseEmulatorData.md b/docs/EmulatorResult.md similarity index 76% rename from docs/SignalResponseEmulatorData.md rename to docs/EmulatorResult.md index 2446bd3..559aa52 100644 --- a/docs/SignalResponseEmulatorData.md +++ b/docs/EmulatorResult.md @@ -1,13 +1,13 @@ -# SignalResponseEmulatorData +# EmulatorResult ## Properties | Name | Type | Description | Notes | |------------ | ------------- | ------------- | -------------| -|**result** | **Boolean** | Android specific emulator detection. There are 2 values: • `true` - Emulated environment detected (e.g. launch inside of AVD) • `false` - No signs of emulated environment detected or the client is not Android. | [optional] | +|**result** | **Boolean** | Android specific emulator detection. There are 2 values: • `true` - Emulated environment detected (e.g. launch inside of AVD) • `false` - No signs of emulated environment detected or the client is not Android. | | diff --git a/docs/FactoryResetResult.md b/docs/FactoryResetResult.md new file mode 100644 index 0000000..766035f --- /dev/null +++ b/docs/FactoryResetResult.md @@ -0,0 +1,14 @@ + + +# FactoryResetResult + + +## Properties + +| Name | Type | Description | Notes | +|------------ | ------------- | ------------- | -------------| +|**time** | **OffsetDateTime** | Time in UTC when the most recent factory reset of the Android or iOS device was done. If there is no sign of factory reset or the client is not a mobile device, the field will contain the epoch time (1 January 1970) in UTC. | | +|**timestamp** | **Long** | Same value as it's in the `time` field but represented in timestamp format. | | + + + diff --git a/docs/FingerprintApi.md b/docs/FingerprintApi.md index 0de06f9..4c1daf5 100644 --- a/docs/FingerprintApi.md +++ b/docs/FingerprintApi.md @@ -17,7 +17,7 @@ All URIs are relative to *https://api.fpjs.io* Get event by requestId This endpoint allows you to get a detailed analysis of an individual request. -**Only for Enterprise customers:** Please note that the response includes mobile signals (e.g. `rootApps`) even if the request orignated from a non-mobile platform. +**Only for Enterprise customers:** Please note that the response includes mobile signals (e.g. `rootApps`) even if the request originated from a non-mobile platform. It is highly recommended that you **ignore** the mobile signals for such requests. Use `requestId` as the URL path parameter. This API method is scoped to a request, i.e. all returned information is by `requestId`. diff --git a/docs/FridaResult.md b/docs/FridaResult.md new file mode 100644 index 0000000..4460907 --- /dev/null +++ b/docs/FridaResult.md @@ -0,0 +1,13 @@ + + +# FridaResult + + +## Properties + +| Name | Type | Description | Notes | +|------------ | ------------- | ------------- | -------------| +|**result** | **Boolean** | [Frida](https://frida.re/docs/) detection for Android and iOS devices. There are 2 values: • `true` - Frida detected • `false` - No signs of Frida or the client is not a mobile device. | | + + + diff --git a/docs/SignalResponseIncognitoData.md b/docs/IncognitoResult.md similarity index 68% rename from docs/SignalResponseIncognitoData.md rename to docs/IncognitoResult.md index d8b09c9..f0f5227 100644 --- a/docs/SignalResponseIncognitoData.md +++ b/docs/IncognitoResult.md @@ -1,13 +1,13 @@ -# SignalResponseIncognitoData +# IncognitoResult ## Properties | Name | Type | Description | Notes | |------------ | ------------- | ------------- | -------------| -|**result** | **Boolean** | `true` if we detected incognito mode used in the browser, `false` otherwise. | [optional] | +|**result** | **Boolean** | `true` if we detected incognito mode used in the browser, `false` otherwise. | | diff --git a/docs/SignalResponseJailbrokenData.md b/docs/JailbrokenResult.md similarity index 72% rename from docs/SignalResponseJailbrokenData.md rename to docs/JailbrokenResult.md index b8beda9..dbf2d60 100644 --- a/docs/SignalResponseJailbrokenData.md +++ b/docs/JailbrokenResult.md @@ -1,13 +1,13 @@ -# SignalResponseJailbrokenData +# JailbrokenResult ## Properties | Name | Type | Description | Notes | |------------ | ------------- | ------------- | -------------| -|**result** | **Boolean** | iOS specific jailbreak detection. There are 2 values: • `true` - Jailbreak detected • `false` - No signs of jailbreak or the client is not iOS. | [optional] | +|**result** | **Boolean** | iOS specific jailbreak detection. There are 2 values: • `true` - Jailbreak detected • `false` - No signs of jailbreak or the client is not iOS. | | diff --git a/docs/SignalResponsePrivacySettingsData.md b/docs/PrivacySettingsResult.md similarity index 73% rename from docs/SignalResponsePrivacySettingsData.md rename to docs/PrivacySettingsResult.md index 327b5ef..a72f7da 100644 --- a/docs/SignalResponsePrivacySettingsData.md +++ b/docs/PrivacySettingsResult.md @@ -1,13 +1,13 @@ -# SignalResponsePrivacySettingsData +# PrivacySettingsResult ## Properties | Name | Type | Description | Notes | |------------ | ------------- | ------------- | -------------| -|**result** | **Boolean** | `true` if the request is from a privacy aware browser (e.g. Tor) or from a browser in which fingerprinting is blocked. Otherwise `false`. | [optional] | +|**result** | **Boolean** | `true` if the request is from a privacy aware browser (e.g. Tor) or from a browser in which fingerprinting is blocked. Otherwise `false`. | | diff --git a/docs/SignalResponseTorData.md b/docs/ProxyResult.md similarity index 69% rename from docs/SignalResponseTorData.md rename to docs/ProxyResult.md index 95462b6..6acf556 100644 --- a/docs/SignalResponseTorData.md +++ b/docs/ProxyResult.md @@ -1,13 +1,13 @@ -# SignalResponseTorData +# ProxyResult ## Properties | Name | Type | Description | Notes | |------------ | ------------- | ------------- | -------------| -|**result** | **Boolean** | `true` if the request IP address is a known tor exit node, `false` otherwise. | [optional] | +|**result** | **Boolean** | `true` if the request IP address is used by a public proxy provider, `false` otherwise. | | diff --git a/docs/SignalResponseRootAppsData.md b/docs/RootAppsResult.md similarity index 78% rename from docs/SignalResponseRootAppsData.md rename to docs/RootAppsResult.md index ee23b16..f75b762 100644 --- a/docs/SignalResponseRootAppsData.md +++ b/docs/RootAppsResult.md @@ -1,13 +1,13 @@ -# SignalResponseRootAppsData +# RootAppsResult ## Properties | Name | Type | Description | Notes | |------------ | ------------- | ------------- | -------------| -|**result** | **Boolean** | Android specific root management apps detection. There are 2 values: • `true` - Root Management Apps detected (e.g. Magisk) • `false` - No Root Management Apps detected or the client is not Android. | [optional] | +|**result** | **Boolean** | Android specific root management apps detection. There are 2 values: • `true` - Root Management Apps detected (e.g. Magisk) • `false` - No Root Management Apps detected or the client isn't Android. | | diff --git a/docs/SignalResponseClonedApp.md b/docs/SignalResponseClonedApp.md index a96e3ff..a3bce6f 100644 --- a/docs/SignalResponseClonedApp.md +++ b/docs/SignalResponseClonedApp.md @@ -7,7 +7,7 @@ | Name | Type | Description | Notes | |------------ | ------------- | ------------- | -------------| -|**data** | [**SignalResponseClonedAppData**](SignalResponseClonedAppData.md) | | [optional] | +|**data** | [**ClonedAppResult**](ClonedAppResult.md) | | [optional] | |**error** | [**ProductError**](ProductError.md) | | [optional] | diff --git a/docs/SignalResponseEmulator.md b/docs/SignalResponseEmulator.md index 4abf39e..fec2dd4 100644 --- a/docs/SignalResponseEmulator.md +++ b/docs/SignalResponseEmulator.md @@ -7,7 +7,7 @@ | Name | Type | Description | Notes | |------------ | ------------- | ------------- | -------------| -|**data** | [**SignalResponseEmulatorData**](SignalResponseEmulatorData.md) | | [optional] | +|**data** | [**EmulatorResult**](EmulatorResult.md) | | [optional] | |**error** | [**ProductError**](ProductError.md) | | [optional] | diff --git a/docs/SignalResponseFactoryReset.md b/docs/SignalResponseFactoryReset.md index bf3e6c5..a79865b 100644 --- a/docs/SignalResponseFactoryReset.md +++ b/docs/SignalResponseFactoryReset.md @@ -7,7 +7,7 @@ | Name | Type | Description | Notes | |------------ | ------------- | ------------- | -------------| -|**data** | [**SignalResponseFactoryResetData**](SignalResponseFactoryResetData.md) | | [optional] | +|**data** | [**FactoryResetResult**](FactoryResetResult.md) | | [optional] | |**error** | [**ProductError**](ProductError.md) | | [optional] | diff --git a/docs/SignalResponseFactoryResetData.md b/docs/SignalResponseFactoryResetData.md deleted file mode 100644 index fa02d8b..0000000 --- a/docs/SignalResponseFactoryResetData.md +++ /dev/null @@ -1,14 +0,0 @@ - - -# SignalResponseFactoryResetData - - -## Properties - -| Name | Type | Description | Notes | -|------------ | ------------- | ------------- | -------------| -|**time** | **OffsetDateTime** | Time in UTC for the Android client when recent factory reset was done. If there is no sign of factory reset or the client isn't Android, the field will be epoch time. | [optional] | -|**timestamp** | **Long** | Same value as it's in the `time` field but represented in timestamp format. | [optional] | - - - diff --git a/docs/SignalResponseFrida.md b/docs/SignalResponseFrida.md index 52f8633..c16885a 100644 --- a/docs/SignalResponseFrida.md +++ b/docs/SignalResponseFrida.md @@ -7,7 +7,7 @@ | Name | Type | Description | Notes | |------------ | ------------- | ------------- | -------------| -|**data** | [**SignalResponseFridaData**](SignalResponseFridaData.md) | | [optional] | +|**data** | [**FridaResult**](FridaResult.md) | | [optional] | |**error** | [**ProductError**](ProductError.md) | | [optional] | diff --git a/docs/SignalResponseFridaData.md b/docs/SignalResponseFridaData.md deleted file mode 100644 index 6b54a7f..0000000 --- a/docs/SignalResponseFridaData.md +++ /dev/null @@ -1,13 +0,0 @@ - - -# SignalResponseFridaData - - -## Properties - -| Name | Type | Description | Notes | -|------------ | ------------- | ------------- | -------------| -|**result** | **Boolean** | iOS specific [Frida](https://frida.re/docs/ios/) detection. There are 2 values: • `true` - Frida detected • `false` - No signs of Frida or the client is not iOS. | [optional] | - - - diff --git a/docs/SignalResponseIncognito.md b/docs/SignalResponseIncognito.md index eccded2..6e9e891 100644 --- a/docs/SignalResponseIncognito.md +++ b/docs/SignalResponseIncognito.md @@ -7,7 +7,7 @@ | Name | Type | Description | Notes | |------------ | ------------- | ------------- | -------------| -|**data** | [**SignalResponseIncognitoData**](SignalResponseIncognitoData.md) | | [optional] | +|**data** | [**IncognitoResult**](IncognitoResult.md) | | [optional] | |**error** | [**ProductError**](ProductError.md) | | [optional] | diff --git a/docs/SignalResponseJailbroken.md b/docs/SignalResponseJailbroken.md index 538be88..14524f1 100644 --- a/docs/SignalResponseJailbroken.md +++ b/docs/SignalResponseJailbroken.md @@ -7,7 +7,7 @@ | Name | Type | Description | Notes | |------------ | ------------- | ------------- | -------------| -|**data** | [**SignalResponseJailbrokenData**](SignalResponseJailbrokenData.md) | | [optional] | +|**data** | [**JailbrokenResult**](JailbrokenResult.md) | | [optional] | |**error** | [**ProductError**](ProductError.md) | | [optional] | diff --git a/docs/SignalResponsePrivacySettings.md b/docs/SignalResponsePrivacySettings.md index 5d33b9d..c71f48a 100644 --- a/docs/SignalResponsePrivacySettings.md +++ b/docs/SignalResponsePrivacySettings.md @@ -7,7 +7,7 @@ | Name | Type | Description | Notes | |------------ | ------------- | ------------- | -------------| -|**data** | [**SignalResponsePrivacySettingsData**](SignalResponsePrivacySettingsData.md) | | [optional] | +|**data** | [**PrivacySettingsResult**](PrivacySettingsResult.md) | | [optional] | |**error** | [**ProductError**](ProductError.md) | | [optional] | diff --git a/docs/SignalResponseProxy.md b/docs/SignalResponseProxy.md index 65d90b9..5366bc4 100644 --- a/docs/SignalResponseProxy.md +++ b/docs/SignalResponseProxy.md @@ -7,7 +7,7 @@ | Name | Type | Description | Notes | |------------ | ------------- | ------------- | -------------| -|**data** | [**SignalResponseProxyData**](SignalResponseProxyData.md) | | [optional] | +|**data** | [**ProxyResult**](ProxyResult.md) | | [optional] | |**error** | [**ProductError**](ProductError.md) | | [optional] | diff --git a/docs/SignalResponseProxyData.md b/docs/SignalResponseProxyData.md deleted file mode 100644 index 7236c12..0000000 --- a/docs/SignalResponseProxyData.md +++ /dev/null @@ -1,13 +0,0 @@ - - -# SignalResponseProxyData - - -## Properties - -| Name | Type | Description | Notes | -|------------ | ------------- | ------------- | -------------| -|**result** | **Boolean** | `true` if the request IP address is used by a public proxy provider, `false` otherwise. | [optional] | - - - diff --git a/docs/SignalResponseRootApps.md b/docs/SignalResponseRootApps.md index 15ccedf..1d4ebea 100644 --- a/docs/SignalResponseRootApps.md +++ b/docs/SignalResponseRootApps.md @@ -7,7 +7,7 @@ | Name | Type | Description | Notes | |------------ | ------------- | ------------- | -------------| -|**data** | [**SignalResponseRootAppsData**](SignalResponseRootAppsData.md) | | [optional] | +|**data** | [**RootAppsResult**](RootAppsResult.md) | | [optional] | |**error** | [**ProductError**](ProductError.md) | | [optional] | diff --git a/docs/SignalResponseTor.md b/docs/SignalResponseTor.md index f8af3dc..5806593 100644 --- a/docs/SignalResponseTor.md +++ b/docs/SignalResponseTor.md @@ -7,7 +7,7 @@ | Name | Type | Description | Notes | |------------ | ------------- | ------------- | -------------| -|**data** | [**SignalResponseTorData**](SignalResponseTorData.md) | | [optional] | +|**data** | [**TorResult**](TorResult.md) | | [optional] | |**error** | [**ProductError**](ProductError.md) | | [optional] | diff --git a/docs/SignalResponseVirtualMachine.md b/docs/SignalResponseVirtualMachine.md index fa90111..8f9b4da 100644 --- a/docs/SignalResponseVirtualMachine.md +++ b/docs/SignalResponseVirtualMachine.md @@ -7,7 +7,7 @@ | Name | Type | Description | Notes | |------------ | ------------- | ------------- | -------------| -|**data** | [**SignalResponseVirtualMachineData**](SignalResponseVirtualMachineData.md) | | [optional] | +|**data** | [**VirtualMachineResult**](VirtualMachineResult.md) | | [optional] | |**error** | [**ProductError**](ProductError.md) | | [optional] | diff --git a/docs/WebhookSignalResponseTor.md b/docs/TorResult.md similarity index 68% rename from docs/WebhookSignalResponseTor.md rename to docs/TorResult.md index 8247275..592cd8c 100644 --- a/docs/WebhookSignalResponseTor.md +++ b/docs/TorResult.md @@ -1,13 +1,13 @@ -# WebhookSignalResponseTor +# TorResult ## Properties | Name | Type | Description | Notes | |------------ | ------------- | ------------- | -------------| -|**result** | **Boolean** | `true` if the request IP address is a known tor exit node, `false` otherwise. | [optional] | +|**result** | **Boolean** | `true` if the request IP address is a known tor exit node, `false` otherwise. | | diff --git a/docs/SignalResponseVirtualMachineData.md b/docs/VirtualMachineResult.md similarity index 80% rename from docs/SignalResponseVirtualMachineData.md rename to docs/VirtualMachineResult.md index 114686f..672fc22 100644 --- a/docs/SignalResponseVirtualMachineData.md +++ b/docs/VirtualMachineResult.md @@ -1,13 +1,13 @@ -# SignalResponseVirtualMachineData +# VirtualMachineResult ## Properties | Name | Type | Description | Notes | |------------ | ------------- | ------------- | -------------| -|**result** | **Boolean** | `true` if the request came from a browser running inside a virtual machine (e.g. VMWare), `false` otherwise. | [optional] | +|**result** | **Boolean** | `true` if the request came from a browser running inside a virtual machine (e.g. VMWare), `false` otherwise. | | diff --git a/docs/WebhookSignalResponseClonedApp.md b/docs/WebhookSignalResponseClonedApp.md deleted file mode 100644 index 8fc3eca..0000000 --- a/docs/WebhookSignalResponseClonedApp.md +++ /dev/null @@ -1,13 +0,0 @@ - - -# WebhookSignalResponseClonedApp - - -## Properties - -| Name | Type | Description | Notes | -|------------ | ------------- | ------------- | -------------| -|**result** | **Boolean** | Android specific cloned application detection. There are 2 values: • `true` - Presence of app cloners work detected (e.g. fully cloned application found or launch of it inside of a not main working profile detected). • `false` - No signs of cloned application detected or the client is not Android. | [optional] | - - - diff --git a/docs/WebhookSignalResponseEmulator.md b/docs/WebhookSignalResponseEmulator.md deleted file mode 100644 index 6dde9c2..0000000 --- a/docs/WebhookSignalResponseEmulator.md +++ /dev/null @@ -1,13 +0,0 @@ - - -# WebhookSignalResponseEmulator - - -## Properties - -| Name | Type | Description | Notes | -|------------ | ------------- | ------------- | -------------| -|**result** | **Boolean** | Android specific emulator detection. There are 2 values: • `true` - Emulated environment detected (e.g. launch inside of AVD) • `false` - No signs of emulated environment detected or the client isn't Android. | [optional] | - - - diff --git a/docs/WebhookSignalResponseFactoryReset.md b/docs/WebhookSignalResponseFactoryReset.md deleted file mode 100644 index 61ee3c1..0000000 --- a/docs/WebhookSignalResponseFactoryReset.md +++ /dev/null @@ -1,14 +0,0 @@ - - -# WebhookSignalResponseFactoryReset - - -## Properties - -| Name | Type | Description | Notes | -|------------ | ------------- | ------------- | -------------| -|**time** | **OffsetDateTime** | Time in UTC for the Android client when recent factory reset was done. If there is no sign of factory reset or the client isn't Android, the field will be epoch time. | [optional] | -|**timestamp** | **Long** | Same value as it's in the `time` field but represented in timestamp format. | [optional] | - - - diff --git a/docs/WebhookSignalResponseFrida.md b/docs/WebhookSignalResponseFrida.md deleted file mode 100644 index d3e29c7..0000000 --- a/docs/WebhookSignalResponseFrida.md +++ /dev/null @@ -1,13 +0,0 @@ - - -# WebhookSignalResponseFrida - - -## Properties - -| Name | Type | Description | Notes | -|------------ | ------------- | ------------- | -------------| -|**result** | **Boolean** | iOS specific [Frida](https://frida.re/docs/ios/) detection. There are 2 values: • `true` - Frida detected • `false` - No signs of Frida or the client is not iOS. | [optional] | - - - diff --git a/docs/WebhookSignalResponseJailbroken.md b/docs/WebhookSignalResponseJailbroken.md deleted file mode 100644 index 0ef1aa3..0000000 --- a/docs/WebhookSignalResponseJailbroken.md +++ /dev/null @@ -1,13 +0,0 @@ - - -# WebhookSignalResponseJailbroken - - -## Properties - -| Name | Type | Description | Notes | -|------------ | ------------- | ------------- | -------------| -|**result** | **Boolean** | iOS specific jailbreak detection. There are 2 values: • `true` - Jailbreak detected • `false` - No signs of jailbreak or the client is not iOS. | [optional] | - - - diff --git a/docs/WebhookSignalResponsePrivacySettings.md b/docs/WebhookSignalResponsePrivacySettings.md deleted file mode 100644 index c0290e2..0000000 --- a/docs/WebhookSignalResponsePrivacySettings.md +++ /dev/null @@ -1,13 +0,0 @@ - - -# WebhookSignalResponsePrivacySettings - - -## Properties - -| Name | Type | Description | Notes | -|------------ | ------------- | ------------- | -------------| -|**result** | **Boolean** | `true` if the request is from a privacy aware browser (e.g. Tor) or from a browser in which fingerprinting is blocked. Otherwise `false`. | [optional] | - - - diff --git a/docs/WebhookSignalResponseProxy.md b/docs/WebhookSignalResponseProxy.md deleted file mode 100644 index f0c72c9..0000000 --- a/docs/WebhookSignalResponseProxy.md +++ /dev/null @@ -1,13 +0,0 @@ - - -# WebhookSignalResponseProxy - - -## Properties - -| Name | Type | Description | Notes | -|------------ | ------------- | ------------- | -------------| -|**result** | **Boolean** | `true` if the request IP address is used by a public proxy provider, `false` otherwise. | [optional] | - - - diff --git a/docs/WebhookSignalResponseRootApps.md b/docs/WebhookSignalResponseRootApps.md deleted file mode 100644 index d6d0bb1..0000000 --- a/docs/WebhookSignalResponseRootApps.md +++ /dev/null @@ -1,13 +0,0 @@ - - -# WebhookSignalResponseRootApps - - -## Properties - -| Name | Type | Description | Notes | -|------------ | ------------- | ------------- | -------------| -|**result** | **Boolean** | Android specific root management apps detection. There are 2 values: • `true` - Root Management Apps detected (e.g. Magisk) • `false` - No Root Management Apps detected or the client isn't Android. | [optional] | - - - diff --git a/docs/WebhookSignalResponseVirtualMachine.md b/docs/WebhookSignalResponseVirtualMachine.md deleted file mode 100644 index 957e527..0000000 --- a/docs/WebhookSignalResponseVirtualMachine.md +++ /dev/null @@ -1,13 +0,0 @@ - - -# WebhookSignalResponseVirtualMachine - - -## Properties - -| Name | Type | Description | Notes | -|------------ | ------------- | ------------- | -------------| -|**result** | **Boolean** | `true` if the request came from a browser running inside a virtual machine (e.g. VMWare), `false` otherwise. | [optional] | - - - diff --git a/docs/WebhookVisit.md b/docs/WebhookVisit.md index 40e8099..4965069 100644 --- a/docs/WebhookVisit.md +++ b/docs/WebhookVisit.md @@ -13,18 +13,18 @@ |**bot** | [**BotdDetectionResult**](BotdDetectionResult.md) | | [optional] | |**ipInfo** | [**IpInfoResult**](IpInfoResult.md) | | [optional] | |**incognito** | **Boolean** | Flag if user used incognito session. | | -|**rootApps** | [**WebhookSignalResponseRootApps**](WebhookSignalResponseRootApps.md) | | [optional] | -|**emulator** | [**WebhookSignalResponseEmulator**](WebhookSignalResponseEmulator.md) | | [optional] | -|**clonedApp** | [**WebhookSignalResponseClonedApp**](WebhookSignalResponseClonedApp.md) | | [optional] | -|**factoryReset** | [**WebhookSignalResponseFactoryReset**](WebhookSignalResponseFactoryReset.md) | | [optional] | -|**jailbroken** | [**WebhookSignalResponseJailbroken**](WebhookSignalResponseJailbroken.md) | | [optional] | -|**frida** | [**WebhookSignalResponseFrida**](WebhookSignalResponseFrida.md) | | [optional] | +|**rootApps** | [**RootAppsResult**](RootAppsResult.md) | | [optional] | +|**emulator** | [**EmulatorResult**](EmulatorResult.md) | | [optional] | +|**clonedApp** | [**ClonedAppResult**](ClonedAppResult.md) | | [optional] | +|**factoryReset** | [**FactoryResetResult**](FactoryResetResult.md) | | [optional] | +|**jailbroken** | [**JailbrokenResult**](JailbrokenResult.md) | | [optional] | +|**frida** | [**FridaResult**](FridaResult.md) | | [optional] | |**ipBlocklist** | [**IpBlockListResult**](IpBlockListResult.md) | | [optional] | -|**tor** | [**WebhookSignalResponseTor**](WebhookSignalResponseTor.md) | | [optional] | -|**privacySettings** | [**WebhookSignalResponsePrivacySettings**](WebhookSignalResponsePrivacySettings.md) | | [optional] | -|**virtualMachine** | [**WebhookSignalResponseVirtualMachine**](WebhookSignalResponseVirtualMachine.md) | | [optional] | +|**tor** | [**TorResult**](TorResult.md) | | [optional] | +|**privacySettings** | [**PrivacySettingsResult**](PrivacySettingsResult.md) | | [optional] | +|**virtualMachine** | [**VirtualMachineResult**](VirtualMachineResult.md) | | [optional] | |**vpn** | [**VpnResult**](VpnResult.md) | | [optional] | -|**proxy** | [**WebhookSignalResponseProxy**](WebhookSignalResponseProxy.md) | | [optional] | +|**proxy** | [**ProxyResult**](ProxyResult.md) | | [optional] | |**tampering** | [**TamperingResult**](TamperingResult.md) | | [optional] | |**rawDeviceAttributes** | [**Map<String, RawDeviceAttributesResultValue>**](RawDeviceAttributesResultValue.md) | It includes 35+ raw browser identification attributes to provide Fingerprint users with even more information than our standard visitor ID provides. This enables Fingerprint users to not have to run our open-source product in conjunction with Fingerprint Pro Plus and Enterprise to get those additional attributes. Warning: The raw signals data can change at any moment as we improve the product. We cannot guarantee the internal shape of raw device attributes to be stable, so typical semantic versioning rules do not apply here. Use this data with caution without assuming a specific structure beyond the generic type provided here. | [optional] | |**highActivity** | [**HighActivityResult**](HighActivityResult.md) | | [optional] | diff --git a/res/fingerprint-server-api.yaml b/res/fingerprint-server-api.yaml index 17aa225..e2843c4 100644 --- a/res/fingerprint-server-api.yaml +++ b/res/fingerprint-server-api.yaml @@ -30,15 +30,6 @@ servers: security: - ApiKeyHeader: [] - ApiKeyQuery: [] -x-readme: - samples-languages: - - curl - - node - - php - - python - - csharp - - java - - go paths: /events/{request_id}: get: @@ -51,7 +42,7 @@ paths: request. **Only for Enterprise customers:** Please note that the response - includes mobile signals (e.g. `rootApps`) even if the request orignated + includes mobile signals (e.g. `rootApps`) even if the request originated from a non-mobile platform. It is highly recommended that you **ignore** the mobile signals for such @@ -77,571 +68,18 @@ paths: application/json: schema: $ref: '#/components/schemas/EventResponse' - examples: - fullResponse: - summary: Example response - value: - products: - identification: - data: - visitorId: Ibk1527CUFmcnjLwIs4A9 - requestId: 0KSh65EnVoB85JBmloQK - incognito: true - linkedId: somelinkedId - time: '2019-05-21T16:40:13Z' - timestamp: 1582299576512 - url: https://www.example.com/login - ip: 61.127.217.15 - ipLocation: - accuracyRadius: 10 - latitude: 49.982 - longitude: 36.2566 - postalCode: '61202' - timezone: Europe/Dusseldorf - city: - name: Dusseldorf - continent: - code: EU - name: Europe - country: - code: DE - name: Germany - subdivisions: - - isoCode: '63' - name: North Rhine-Westphalia - browserDetails: - browserName: Chrome - browserMajorVersion: '74' - browserFullVersion: 74.0.3729 - os: Windows - osVersion: '7' - device: Other - userAgent: Mozilla/5.0 (Windows NT 6.1; Win64; x64) .... - confidence: - score: 0.97 - visitorFound: true - firstSeenAt: - global: '2022-03-16T11:26:45.362Z' - subscription: '2022-03-16T11:31:01.101Z' - lastSeenAt: - global: '2022-03-16T11:28:34.023Z' - subscription: null - botd: - data: - bot: - result: notDetected - url: https://www.example.com/login - ip: 61.127.217.15 - time: '2019-05-21T16:40:13Z' - ipInfo: - data: - v4: - address: 94.142.239.124 - geolocation: - accuracyRadius: 20 - latitude: 50.05 - longitude: 14.4 - postalCode: 150 00 - timezone: Europe/Prague - city: - name: Prague - country: - code: CZ - name: Czechia - continent: - code: EU - name: Europe - subdivisions: - - isoCode: '10' - name: Hlavni mesto Praha - asn: - asn: '7922' - name: COMCAST-7922 - network: 73.136.0.0/13 - datacenter: - result: true - name: DediPath - incognito: - data: - result: false - rootApps: - data: - result: false - emulator: - data: - result: false - ipBlocklist: - data: - result: false - details: - emailSpam: false - attackSource: false - tor: - data: - result: false - vpn: - data: - result: false - originTimezone: Europe/Berlin - methods: - timezoneMismatch: false - publicVPN: false - auxiliaryMobile: false - proxy: - data: - result: false - tampering: - data: - result: false - anomalyScore: 0 - clonedApp: - data: - result: false - factoryReset: - data: - time: '1970-01-01T00:00:00Z' - timestamp: 0 - jailbroken: - data: - result: false - frida: - data: - result: false - privacySettings: - data: - result: false - virtualMachine: - data: - result: false - rawDeviceAttributes: - data: - architecture: - value: 127 - audio: - value: 35.73832903057337 - canvas: - value: - Winding: true - Geometry: 4dce9d6017c3e0c052a77252f29f2b1c - Text: dd2474a56ff78c1de3e7a07070ba3b7d - colorDepth: - value: 30 - colorGamut: - value: srgb - contrast: - value: 0 - cookiesEnabled: - value: true - highActivity: - data: - result: false - locationSpoofing: - data: - result: false - allErrorsResponse: - summary: All failed signals - value: - products: - identification: - error: - code: Failed - message: failed - botd: - error: - code: Failed - message: internal server error - ipInfo: - error: - code: Failed - message: internal server error - incognito: - error: - code: Failed - message: internal server error - rootApps: - error: - code: Failed - message: internal server error - clonedApp: - error: - code: Failed - message: internal server error - factoryReset: - error: - code: Failed - message: internal server error - jailbroken: - error: - code: Failed - message: internal server error - frida: - error: - code: Failed - message: internal server error - emulator: - error: - code: Failed - message: internal server error - ipBlocklist: - error: - code: Failed - message: internal server error - tor: - error: - code: Failed - message: internal server error - vpn: - error: - code: Failed - message: internal server error - proxy: - error: - code: Failed - message: internal server error - privacySettings: - error: - code: Failed - message: internal server error - virtualMachine: - error: - code: Failed - message: internal server error - tampering: - error: - code: Failed - message: internal server error - rawDeviceAttributes: - data: - audio: - error: - name: Error - message: internal server error - canvas: - error: - name: Error - message: internal server error - withBotdError: - summary: BotD error - value: - products: - identification: - data: - visitorId: Ibk1527CUFmcnjLwIs4A9 - requestId: 0KSh65EnVoB85JBmloQK - incognito: true - linkedId: somelinkedId - time: '2019-05-21T16:40:13Z' - timestamp: 1582299576512 - url: https://www.example.com/login - ip: 61.127.217.15 - ipLocation: - accuracyRadius: 10 - latitude: 49.982 - longitude: 36.2566 - postalCode: '61202' - timezone: Europe/Dusseldorf - city: - name: Dusseldorf - continent: - code: EU - name: Europe - country: - code: DE - name: Germany - subdivisions: - - isoCode: '63' - name: North Rhine-Westphalia - browserDetails: - browserName: Chrome - browserMajorVersion: '74' - browserFullVersion: 74.0.3729 - os: Windows - osVersion: '7' - device: Other - userAgent: Mozilla/5.0 (Windows NT 6.1; Win64; x64) .... - confidence: - score: 0.97 - visitorFound: true - firstSeenAt: - global: '2022-03-16T11:26:45.362Z' - subscription: '2022-03-16T11:31:01.101Z' - lastSeenAt: - global: '2022-03-16T11:28:34.023Z' - subscription: null - botd: - error: - code: Failed - message: internal server error - withBotdTooManyRequestsError: - summary: BotD too many requests error - value: - products: - identification: - data: - visitorId: Ibk1527CUFmcnjLwIs4A9 - requestId: 0KSh65EnVoB85JBmloQK - incognito: true - linkedId: somelinkedId - time: '2019-05-21T16:40:13Z' - timestamp: 1582299576512 - url: https://www.example.com/login - ip: 61.127.217.15 - ipLocation: - accuracyRadius: 10 - latitude: 49.982 - longitude: 36.2566 - postalCode: '61202' - timezone: Europe/Dusseldorf - city: - name: Dusseldorf - continent: - code: EU - name: Europe - country: - code: DE - name: Germany - subdivisions: - - isoCode: '63' - name: North Rhine-Westphalia - browserDetails: - browserName: Chrome - browserMajorVersion: '74' - browserFullVersion: 74.0.3729 - os: Windows - osVersion: '7' - device: Other - userAgent: Mozilla/5.0 (Windows NT 6.1; Win64; x64) .... - confidence: - score: 0.97 - visitorFound: true - firstSeenAt: - global: '2022-03-16T11:26:45.362Z' - subscription: '2022-03-16T11:31:01.101Z' - lastSeenAt: - global: '2022-03-16T11:28:34.023Z' - subscription: null - botd: - error: - code: TooManyRequests - message: too many requests - withIdentificationError: - summary: Identification error - value: - products: - identification: - error: - code: Failed - message: failed - botd: - data: - url: https://example.com/login - bot: - result: notDetected - ip: 61.127.217.15 - time: '2019-05-21T16:40:13Z' - withIdentificationTooManyRequestsError: - summary: Identification too many requests error - value: - products: - identification: - error: - code: 429 Too Many Requests - message: too many requests - botd: - data: - url: https://example.com/login - bot: - result: notDetected - ip: 61.127.217.15 - time: '2019-05-21T16:40:13Z' '403': description: Forbidden content: application/json: schema: $ref: '#/components/schemas/ErrorEvent403Response' - examples: - example: - summary: Example response - value: - error: - code: TokenRequired - message: secret key is required '404': description: Not found content: application/json: schema: $ref: '#/components/schemas/ErrorEvent404Response' - examples: - example: - summary: Example response - value: - error: - code: RequestNotFound - message: request id is not found - x-readme: - code-samples: - - language: node - name: Node SDK - install: npm install @fingerprintjs/fingerprintjs-pro-server-api - code: | - import { - FingerprintJsServerApiClient, - Region, - } from '@fingerprintjs/fingerprintjs-pro-server-api' - - const client = new FingerprintJsServerApiClient({ - apiKey: 'SERVER_API_KEY', // Replace with your key - region: Region.Global, // Replace with your region - }) - - // Get a specific fingerprinting event - client.getEvent('REQUEST_ID').then((event) => { - console.log(event) - }) - - language: php - name: PHP SDK - install: composer require fingerprint/fingerprint-pro-server-api-sdk - code: | - getEvent("REQUEST_ID"); - echo "
" . $response->__toString() . "
"; - } catch (Exception $e) { - echo $e->getMessage(), PHP_EOL; - } - - language: python - name: Python SDK - install: pip install fingerprint_pro_server_api_sdk - code: > - import fingerprint_pro_server_api_sdk - - from fingerprint_pro_server_api_sdk import EventResponse - - from fingerprint_pro_server_api_sdk import Response - - from fingerprint_pro_server_api_sdk.rest import ApiException - - - configuration = fingerprint_pro_server_api_sdk.Configuration( - api_key="SERVER_API_KEY", // Replace with your key - region="us" // Replace with your region - ) - - api_instance = - fingerprint_pro_server_api_sdk.FingerprintApi(configuration) - - - # Get a specific fingerprinting event - - try: - event: EventResponse = api_instance.get_event("REQUEST_ID") - print(event) - except ApiException as e: - print("Exception when getting an event: %s\n" % e) - - language: golang - name: Go SDK - install: go get github.com/fingerprintjs/fingerprint-pro-server-api-go-sdk - code: | - package main - - import ( - "context" - "fmt" - "github.com/antihax/optional" - "github.com/fingerprintjs/fingerprint-pro-server-api-go-sdk/v3/sdk" - "log" - ) - - func main() { - cfg := sdk.NewConfiguration() - client := sdk.NewAPIClient(cfg) - - auth := context.WithValue( - context.Background(), - sdk.ContextAPIKey, - sdk.APIKey{Key: "SERVER_API_KEY"}, // Replace with your key - ) - cfg.ChangeRegion(sdk.RegionUS) // Replace with your region - - // Get a specific fingerprinting event - event, eventHttpRes, eventErr := - client.FingerprintApi.GetEvent(auth, "REQUEST_ID") - if eventErr != nil { - log.Fatal(eventErr) - } - fmt.Printf("Event: %s", event) - } - - language: java - name: Java SDK - code: | - import com.fingerprint.api.FingerprintApi; - import com.fingerprint.models.EventResponse; - import com.fingerprint.models.Response; - import com.fingerprint.sdk.ApiClient; - import com.fingerprint.sdk.ApiException; - import com.fingerprint.sdk.Configuration; - import com.fingerprint.sdk.Region; - - public class FingerprintApiExample { - public static void main(String... args) { - ApiClient client = Configuration.getDefaultApiClient( - "SERVER_API_KEY", // Replace with your key - Region.GLOBAL // Replace with your region - ); - FingerprintApi api = new FingerprintApi(client); - - // Get a specific fingerprinting event - try { - EventResponse response = api.getEvent("REQUEST_ID"); - System.out.println(response.getProducts().toString()); - } catch (ApiException e) { - System.err.println(e.getMessage()); - } - } - } - - language: csharp - name: C# SDK - install: dotnet add package FingerprintPro.ServerSdk - code: > - using FingerprintPro.ServerSdk.Api; - - using FingerprintPro.ServerSdk.Client; - - - var configuration = new Configuration("SERVER_API_KEY"); // - Replace with your key - - configuration.Region = Region.Us; // Replace with your region - - - var api = new FingerprintApi( - configuration - ); - - - // Get a specific fingerprinting event - - var events = api.GetEvent("REQUEST_ID"); - - Console.WriteLine(events); /visitors/{visitor_id}: get: tags: @@ -761,2657 +199,12 @@ paths: application/json: schema: $ref: '#/components/schemas/Response' - examples: - limit1: - summary: Request with limit=1 - value: - visitorId: AcxioeQKffpXF8iGQK3P - visits: - - requestId: 1655373953086.DDlfmP - browserDetails: - browserName: Chrome - browserMajorVersion: '102' - browserFullVersion: 102.0.5005 - os: Mac OS X - osVersion: 10.15.7 - device: Other - userAgent: >- - Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) - AppleWebKit/537.36 (KHTML, like Gecko) - Chrome/102.0.5005.61 Safari/537.36 - botProbability: 0 - incognito: false - ip: 82.118.30.68 - ipLocation: - accuracyRadius: 1000 - latitude: 50.0805 - longitude: 14.467 - postalCode: 130 00 - timezone: Europe/Prague - city: - name: Prague - country: - code: CZ - name: Czechia - continent: - code: EU - name: Europe - subdivisions: - - isoCode: '10' - name: Hlavni mesto Praha - timestamp: 1655373953094 - time: '2022-06-16T10:05:53Z' - url: https://dashboard.fingerprint.com/ - tag: {} - confidence: - score: 1 - visitorFound: true - firstSeenAt: - global: '2022-02-04T11:31:20Z' - subscription: '2022-02-04T11:31:20Z' - lastSeenAt: - global: '2022-06-16T10:03:00.912Z' - subscription: '2022-06-16T10:03:00.912Z' - lastTimestamp: 1655373953086 - paginationKey: 1655373953086.DDlfmP - limit500: - summary: Request with limit=500 - value: - visitorId: AcxioeQKffpXF8iGQK3P - visits: - - requestId: 1655373780901.HhjRFX - browserDetails: - browserName: Chrome - browserMajorVersion: '102' - browserFullVersion: 102.0.5005 - os: Mac OS X - osVersion: 10.15.7 - device: Other - userAgent: >- - Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) - AppleWebKit/537.36 (KHTML, like Gecko) - Chrome/102.0.5005.61 Safari/537.36 - botProbability: 0 - incognito: false - ip: 188.242.36.107 - ipLocation: - accuracyRadius: 5 - latitude: 59.8983 - longitude: 30.2618 - postalCode: '190924' - timezone: Europe/Moscow - city: - name: St Petersburg - country: - code: RU - name: Russia - continent: - code: EU - name: Europe - subdivisions: - - isoCode: SPE - name: St.-Petersburg - timestamp: 1655373780912 - time: '2022-06-16T10:03:00Z' - url: https://fingerprint.com/ - tag: {} - confidence: - score: 1 - visitorFound: true - firstSeenAt: - global: '2022-02-04T11:31:20Z' - subscription: '2022-02-04T11:31:20Z' - lastSeenAt: - global: '2022-06-16T05:27:30.578Z' - subscription: '2022-06-16T05:27:30.578Z' - - requestId: 1655357250568.vqejDF - browserDetails: - browserName: Chrome - browserMajorVersion: '102' - browserFullVersion: 102.0.5005 - os: Mac OS X - osVersion: 10.15.7 - device: Other - userAgent: >- - Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) - AppleWebKit/537.36 (KHTML, like Gecko) - Chrome/102.0.5005.61 Safari/537.36 - botProbability: 0 - incognito: false - ip: 82.118.30.62 - ipLocation: - accuracyRadius: 1000 - latitude: 50.0805 - longitude: 14.467 - postalCode: 130 00 - timezone: Europe/Prague - city: - name: Prague - country: - code: CZ - name: Czechia - continent: - code: EU - name: Europe - subdivisions: - - isoCode: '10' - name: Hlavni mesto Praha - timestamp: 1655357250578 - time: '2022-06-16T05:27:30Z' - url: https://fingerprint.com/ - tag: {} - confidence: - score: 0.99 - visitorFound: true - firstSeenAt: - global: '2022-02-04T11:31:20Z' - subscription: '2022-02-04T11:31:20Z' - lastSeenAt: - global: '2022-06-15T15:28:33.479Z' - subscription: '2022-06-15T15:28:33.479Z' - - requestId: 1655306913474.kFQsQx - browserDetails: - browserName: Chrome - browserMajorVersion: '102' - browserFullVersion: 102.0.5005 - os: Mac OS X - osVersion: 10.15.7 - device: Other - userAgent: >- - Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) - AppleWebKit/537.36 (KHTML, like Gecko) - Chrome/102.0.5005.61 Safari/537.36 - botProbability: 0 - incognito: false - ip: 82.118.30.68 - ipLocation: - accuracyRadius: 1000 - latitude: 50.0805 - longitude: 14.467 - postalCode: 130 00 - timezone: Europe/Prague - city: - name: Prague - country: - code: CZ - name: Czechia - continent: - code: EU - name: Europe - subdivisions: - - isoCode: '10' - name: Hlavni mesto Praha - timestamp: 1655306913479 - time: '2022-06-15T15:28:33Z' - url: https://fingerprint.com/ - tag: {} - confidence: - score: 0.99 - visitorFound: true - firstSeenAt: - global: '2022-02-04T11:31:20Z' - subscription: '2022-02-04T11:31:20Z' - lastSeenAt: - global: '2022-06-15T08:47:34.677Z' - subscription: '2022-06-15T08:47:34.677Z' - - requestId: 1655282854672.vz4ZlN - browserDetails: - browserName: Chrome - browserMajorVersion: '102' - browserFullVersion: 102.0.5005 - os: Mac OS X - osVersion: 10.15.7 - device: Other - userAgent: >- - Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) - AppleWebKit/537.36 (KHTML, like Gecko) - Chrome/102.0.5005.61 Safari/537.36 - botProbability: 0 - incognito: false - ip: 82.118.30.91 - ipLocation: - accuracyRadius: 1000 - latitude: 50.0805 - longitude: 14.467 - postalCode: 130 00 - timezone: Europe/Prague - city: - name: Prague - country: - code: CZ - name: Czechia - continent: - code: EU - name: Europe - subdivisions: - - isoCode: '10' - name: Hlavni mesto Praha - timestamp: 1655282854677 - time: '2022-06-15T08:47:34Z' - url: https://fingerprint.com/ - tag: {} - confidence: - score: 0.99 - visitorFound: true - firstSeenAt: - global: '2022-02-04T11:31:20Z' - subscription: '2022-02-04T11:31:20Z' - lastSeenAt: - global: '2022-06-14T14:19:42.753Z' - subscription: '2022-06-14T14:19:42.753Z' - - requestId: 1655216382743.RDRa4h - browserDetails: - browserName: Chrome - browserMajorVersion: '102' - browserFullVersion: 102.0.5005 - os: Mac OS X - osVersion: 10.15.7 - device: Other - userAgent: >- - Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) - AppleWebKit/537.36 (KHTML, like Gecko) - Chrome/102.0.5005.61 Safari/537.36 - botProbability: 0 - incognito: false - ip: 188.242.36.107 - ipLocation: - accuracyRadius: 5 - latitude: 59.8983 - longitude: 30.2618 - postalCode: '190924' - timezone: Europe/Moscow - city: - name: St Petersburg - country: - code: RU - name: Russia - continent: - code: EU - name: Europe - subdivisions: - - isoCode: SPE - name: St.-Petersburg - timestamp: 1655216382753 - time: '2022-06-14T14:19:42Z' - url: https://fingerprint.com/ - tag: {} - confidence: - score: 1 - visitorFound: true - firstSeenAt: - global: '2022-02-04T11:31:20Z' - subscription: '2022-02-04T11:31:20Z' - lastSeenAt: - global: '2022-06-13T07:53:19.878Z' - subscription: '2022-06-13T07:53:19.878Z' - - requestId: 1655106799870.C8m8hR - browserDetails: - browserName: Chrome - browserMajorVersion: '102' - browserFullVersion: 102.0.5005 - os: Mac OS X - osVersion: 10.15.7 - device: Other - userAgent: >- - Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) - AppleWebKit/537.36 (KHTML, like Gecko) - Chrome/102.0.5005.61 Safari/537.36 - botProbability: 0 - incognito: false - ip: 45.86.200.137 - timestamp: 1655106799878 - time: '2022-06-13T07:53:19Z' - url: https://fingerprint.com/ - tag: {} - confidence: - score: 0.99 - visitorFound: true - firstSeenAt: - global: '2022-02-04T11:31:20Z' - subscription: '2022-02-04T11:31:20Z' - lastSeenAt: - global: '2022-06-07T12:54:35.413Z' - subscription: '2022-06-07T12:54:35.413Z' - - requestId: 1654606475406.2uXCJx - browserDetails: - browserName: Chrome - browserMajorVersion: '102' - browserFullVersion: 102.0.5005 - os: Mac OS X - osVersion: 10.15.7 - device: Other - userAgent: >- - Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) - AppleWebKit/537.36 (KHTML, like Gecko) - Chrome/102.0.5005.61 Safari/537.36 - botProbability: 0 - incognito: false - ip: 89.38.224.157 - ipLocation: - accuracyRadius: 20 - latitude: 44.804 - longitude: 20.4651 - timestamp: 1654606475413 - time: '2022-06-07T12:54:35Z' - url: https://fingerprintjs.com/ - tag: {} - confidence: - score: 0.99 - visitorFound: true - firstSeenAt: - global: '2022-02-04T11:31:20Z' - subscription: '2022-02-04T11:31:20Z' - lastSeenAt: - global: '2022-06-07T09:37:57.43Z' - subscription: '2022-06-07T09:37:57.43Z' - - requestId: 1654594677423.pCHmKJ - browserDetails: - browserName: Chrome - browserMajorVersion: '102' - browserFullVersion: 102.0.5005 - os: Mac OS X - osVersion: 10.15.7 - device: Other - userAgent: >- - Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) - AppleWebKit/537.36 (KHTML, like Gecko) - Chrome/102.0.5005.61 Safari/537.36 - botProbability: 0 - incognito: false - ip: 188.242.36.107 - ipLocation: - timezone: Europe/Moscow - timestamp: 1654594677430 - time: '2022-06-07T09:37:57Z' - url: https://fingerprintjs.com/ - tag: {} - confidence: - score: 0.99 - visitorFound: true - firstSeenAt: - global: '2022-02-04T11:31:20Z' - subscription: '2022-02-04T11:31:20Z' - lastSeenAt: - global: '2022-06-07T09:37:50.109Z' - subscription: '2022-06-07T09:37:50.109Z' - - requestId: 1654594670097.Lmodmj - browserDetails: - browserName: Chrome - browserMajorVersion: '102' - browserFullVersion: 102.0.5005 - os: Mac OS X - osVersion: 10.15.7 - device: Other - userAgent: >- - Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) - AppleWebKit/537.36 (KHTML, like Gecko) - Chrome/102.0.5005.61 Safari/537.36 - botProbability: 0 - incognito: false - ip: 188.242.36.107 - ipLocation: - accuracyRadius: 5 - latitude: 59.8983 - longitude: 30.2618 - postalCode: '190924' - timezone: Europe/Moscow - city: - name: St Petersburg - country: - code: RU - name: Russia - continent: - code: EU - name: Europe - subdivisions: - - isoCode: SPE - name: St.-Petersburg - timestamp: 1654594670109 - time: '2022-06-07T09:37:50Z' - url: https://fingerprintjs.com/ - tag: {} - confidence: - score: 0.99 - visitorFound: true - firstSeenAt: - global: '2022-02-04T11:31:20Z' - subscription: '2022-02-04T11:31:20Z' - lastSeenAt: - global: '2022-06-07T08:31:31.9Z' - subscription: '2022-06-07T08:31:31.9Z' - - requestId: 1654590691894.aCYqYE - browserDetails: - browserName: Chrome - browserMajorVersion: '102' - browserFullVersion: 102.0.5005 - os: Mac OS X - osVersion: 10.15.7 - device: Other - userAgent: >- - Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) - AppleWebKit/537.36 (KHTML, like Gecko) - Chrome/102.0.5005.61 Safari/537.36 - botProbability: 0 - incognito: false - ip: 188.242.36.107 - ipLocation: - accuracyRadius: 5 - latitude: 59.8983 - longitude: 30.2618 - postalCode: '190924' - timezone: Europe/Moscow - city: - name: St Petersburg - country: - code: RU - name: Russia - continent: - code: EU - name: Europe - subdivisions: - - isoCode: SPE - name: St.-Petersburg - timestamp: 1654590691900 - time: '2022-06-07T08:31:31Z' - url: https://fingerprintjs.com/ - tag: {} - confidence: - score: 0.99 - visitorFound: true - firstSeenAt: - global: '2022-02-04T11:31:20Z' - subscription: '2022-02-04T11:31:20Z' - lastSeenAt: - global: '2022-06-06T09:05:25.954Z' - subscription: '2022-06-06T09:05:25.954Z' - - requestId: 1654506325946.ijIwzu - browserDetails: - browserName: Chrome - browserMajorVersion: '102' - browserFullVersion: 102.0.5005 - os: Mac OS X - osVersion: 10.15.7 - device: Other - userAgent: >- - Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) - AppleWebKit/537.36 (KHTML, like Gecko) - Chrome/102.0.5005.61 Safari/537.36 - botProbability: 0 - incognito: false - ip: 89.38.224.165 - ipLocation: - accuracyRadius: 20 - latitude: 44.804 - longitude: 20.4651 - timezone: Europe/Belgrade - city: - name: Belgrade - country: - code: RS - name: Serbia - continent: - code: EU - name: Europe - subdivisions: - - isoCode: '00' - name: Belgrade - timestamp: 1654506325954 - time: '2022-06-06T09:05:25Z' - url: https://fingerprintcom.netlify.app/blog/name-change/ - tag: {} - confidence: - score: 0.99 - visitorFound: true - firstSeenAt: - global: '2022-02-04T11:31:20Z' - subscription: '2022-02-04T11:31:20Z' - lastSeenAt: - global: '2022-06-02T16:58:53.635Z' - subscription: '2022-06-02T16:58:53.635Z' - - requestId: 1654189133629.0V1gtF - browserDetails: - browserName: Chrome - browserMajorVersion: '102' - browserFullVersion: 102.0.5005 - os: Mac OS X - osVersion: 10.15.7 - device: Other - userAgent: >- - Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) - AppleWebKit/537.36 (KHTML, like Gecko) - Chrome/102.0.5005.61 Safari/537.36 - botProbability: 0 - incognito: false - ip: 89.38.224.165 - ipLocation: - accuracyRadius: 20 - latitude: 44.804 - longitude: 20.4651 - timezone: Europe/Belgrade - city: - name: Belgrade - country: - code: RS - name: Serbia - continent: - code: EU - name: Europe - subdivisions: - - isoCode: '00' - name: Belgrade - timestamp: 1654189133635 - time: '2022-06-02T16:58:53Z' - url: https://fingerprintcom.netlify.app/blog/name-change/ - tag: {} - confidence: - score: 1 - visitorFound: true - firstSeenAt: - global: '2022-02-04T11:31:20Z' - subscription: '2022-02-04T11:31:20Z' - lastSeenAt: - global: '2022-06-02T16:58:51.483Z' - subscription: '2022-06-02T16:58:51.483Z' - - requestId: 1654189131472.r49Bbh - browserDetails: - browserName: Chrome - browserMajorVersion: '102' - browserFullVersion: 102.0.5005 - os: Mac OS X - osVersion: 10.15.7 - device: Other - userAgent: >- - Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) - AppleWebKit/537.36 (KHTML, like Gecko) - Chrome/102.0.5005.61 Safari/537.36 - botProbability: 0 - incognito: false - ip: 89.38.224.165 - ipLocation: - accuracyRadius: 20 - latitude: 44.804 - longitude: 20.4651 - timezone: Europe/Belgrade - city: - name: Belgrade - country: - code: RS - name: Serbia - continent: - code: EU - name: Europe - subdivisions: - - isoCode: '00' - name: Belgrade - timestamp: 1654189131483 - time: '2022-06-02T16:58:51Z' - url: https://fingerprintcom.netlify.app/ - tag: {} - confidence: - score: 0.95 - visitorFound: true - firstSeenAt: - global: '2022-02-04T11:31:20Z' - subscription: '2022-02-04T11:31:20Z' - lastSeenAt: - global: '2022-05-27T14:52:26.624Z' - subscription: '2022-05-27T14:52:26.624Z' - - requestId: 1653663146617.o8KpJO - browserDetails: - browserName: Chrome - browserMajorVersion: '101' - browserFullVersion: 101.0.4951 - os: Mac OS X - osVersion: 10.15.7 - device: Other - userAgent: >- - Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) - AppleWebKit/537.36 (KHTML, like Gecko) - Chrome/101.0.4951.64 Safari/537.36 - botProbability: 0 - incognito: false - ip: 89.38.224.165 - ipLocation: - accuracyRadius: 20 - latitude: 44.804 - longitude: 20.4651 - timezone: Europe/Belgrade - city: - name: Belgrade - country: - code: RS - name: Serbia - continent: - code: EU - name: Europe - subdivisions: - - isoCode: '00' - name: Belgrade - timestamp: 1653663146624 - time: '2022-05-27T14:52:26Z' - url: https://fingerprintjs.com/ - tag: {} - confidence: - score: 1 - visitorFound: true - firstSeenAt: - global: '2022-02-04T11:31:20Z' - subscription: '2022-02-04T11:31:20Z' - lastSeenAt: - global: '2022-05-20T09:50:06.7Z' - subscription: '2022-05-20T09:50:06.7Z' - - requestId: 1653040206694.Q5Csig - browserDetails: - browserName: Chrome - browserMajorVersion: '101' - browserFullVersion: 101.0.4951 - os: Mac OS X - osVersion: 10.15.7 - device: Other - userAgent: >- - Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) - AppleWebKit/537.36 (KHTML, like Gecko) - Chrome/101.0.4951.54 Safari/537.36 - botProbability: 0 - incognito: false - ip: 89.38.224.165 - ipLocation: - accuracyRadius: 20 - latitude: 44.804 - longitude: 20.4651 - timezone: Europe/Belgrade - city: - name: Belgrade - country: - code: RS - name: Serbia - continent: - code: EU - name: Europe - subdivisions: - - isoCode: '00' - name: Belgrade - timestamp: 1653040206700 - time: '2022-05-20T09:50:06Z' - url: https://fingerprintjs.com/ - tag: {} - confidence: - score: 1 - visitorFound: true - firstSeenAt: - global: '2022-02-04T11:31:20Z' - subscription: '2022-02-04T11:31:20Z' - lastSeenAt: - global: '2022-05-19T16:27:38.029Z' - subscription: '2022-05-19T16:27:38.029Z' - - requestId: 1652977658020.xbfYhA - browserDetails: - browserName: Chrome - browserMajorVersion: '101' - browserFullVersion: 101.0.4951 - os: Mac OS X - osVersion: 10.15.7 - device: Other - userAgent: >- - Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) - AppleWebKit/537.36 (KHTML, like Gecko) - Chrome/101.0.4951.54 Safari/537.36 - botProbability: 0 - incognito: false - ip: 89.38.224.165 - ipLocation: - accuracyRadius: 20 - latitude: 44.804 - longitude: 20.4651 - timezone: Europe/Belgrade - city: - name: Belgrade - country: - code: RS - name: Serbia - continent: - code: EU - name: Europe - subdivisions: - - isoCode: '00' - name: Belgrade - timestamp: 1652977658029 - time: '2022-05-19T16:27:38Z' - url: https://fingerprintjs.com/ - tag: {} - confidence: - score: 1 - visitorFound: true - firstSeenAt: - global: '2022-02-04T11:31:20Z' - subscription: '2022-02-04T11:31:20Z' - lastSeenAt: - global: '2022-05-17T15:09:32.666Z' - subscription: '2022-05-17T15:09:32.666Z' - - requestId: 1652800172657.xA22Pd - browserDetails: - browserName: Chrome - browserMajorVersion: '101' - browserFullVersion: 101.0.4951 - os: Mac OS X - osVersion: 10.15.7 - device: Other - userAgent: >- - Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) - AppleWebKit/537.36 (KHTML, like Gecko) - Chrome/101.0.4951.54 Safari/537.36 - botProbability: 0 - incognito: false - ip: 89.38.224.165 - ipLocation: - accuracyRadius: 20 - latitude: 44.804 - longitude: 20.4651 - timezone: Europe/Belgrade - city: - name: Belgrade - country: - code: RS - name: Serbia - continent: - code: EU - name: Europe - subdivisions: - - isoCode: '00' - name: Belgrade - timestamp: 1652800172666 - time: '2022-05-17T15:09:32Z' - url: https://fingerprintjs.com/ - tag: {} - confidence: - score: 1 - visitorFound: true - firstSeenAt: - global: '2022-02-04T11:31:20Z' - subscription: '2022-02-04T11:31:20Z' - lastSeenAt: - global: '2022-05-17T14:18:17.631Z' - subscription: '2022-05-17T14:18:17.631Z' - - requestId: 1652797097626.faAMJO - browserDetails: - browserName: Chrome - browserMajorVersion: '101' - browserFullVersion: 101.0.4951 - os: Mac OS X - osVersion: 10.15.7 - device: Other - userAgent: >- - Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) - AppleWebKit/537.36 (KHTML, like Gecko) - Chrome/101.0.4951.54 Safari/537.36 - botProbability: 0 - incognito: false - ip: 89.38.224.165 - ipLocation: - accuracyRadius: 20 - latitude: 44.804 - longitude: 20.4651 - timezone: Europe/Belgrade - city: - name: Belgrade - country: - code: RS - name: Serbia - continent: - code: EU - name: Europe - subdivisions: - - isoCode: '00' - name: Belgrade - timestamp: 1652797097631 - time: '2022-05-17T14:18:17Z' - url: https://fingerprintjs.com/careers/ - tag: {} - confidence: - score: 1 - visitorFound: true - firstSeenAt: - global: '2022-02-04T11:31:20Z' - subscription: '2022-02-04T11:31:20Z' - lastSeenAt: - global: '2022-05-17T10:16:04.809Z' - subscription: '2022-05-17T10:16:04.809Z' - - requestId: 1652782564800.MWH0GO - browserDetails: - browserName: Chrome - browserMajorVersion: '101' - browserFullVersion: 101.0.4951 - os: Mac OS X - osVersion: 10.15.7 - device: Other - userAgent: >- - Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) - AppleWebKit/537.36 (KHTML, like Gecko) - Chrome/101.0.4951.54 Safari/537.36 - botProbability: 0 - incognito: false - ip: 89.38.224.165 - ipLocation: - accuracyRadius: 20 - latitude: 44.804 - longitude: 20.4651 - timezone: Europe/Belgrade - city: - name: Belgrade - country: - code: RS - name: Serbia - continent: - code: EU - name: Europe - subdivisions: - - isoCode: '00' - name: Belgrade - timestamp: 1652782564809 - time: '2022-05-17T10:16:04Z' - url: https://fingerprintjs.com/ - tag: {} - confidence: - score: 1 - visitorFound: true - firstSeenAt: - global: '2022-02-04T11:31:20Z' - subscription: '2022-02-04T11:31:20Z' - lastSeenAt: - global: '2022-05-16T06:47:01.511Z' - subscription: '2022-05-16T06:47:01.511Z' - - requestId: 1652683621505.1tOjuc - browserDetails: - browserName: Chrome - browserMajorVersion: '101' - browserFullVersion: 101.0.4951 - os: Mac OS X - osVersion: 10.15.7 - device: Other - userAgent: >- - Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) - AppleWebKit/537.36 (KHTML, like Gecko) - Chrome/101.0.4951.54 Safari/537.36 - botProbability: 0 - incognito: false - ip: 217.150.54.233 - ipLocation: - accuracyRadius: 1000 - latitude: 59.8983 - longitude: 30.2618 - postalCode: '190924' - timezone: Europe/Moscow - city: - name: St Petersburg - country: - code: RU - name: Russia - continent: - code: EU - name: Europe - subdivisions: - - isoCode: SPE - name: St.-Petersburg - timestamp: 1652683621511 - time: '2022-05-16T06:47:01Z' - url: https://fingerprintjs.com/products/bot-detection/ - tag: {} - confidence: - score: 1 - visitorFound: true - firstSeenAt: - global: '2022-02-04T11:31:20Z' - subscription: '2022-02-04T11:31:20Z' - lastSeenAt: - global: '2022-05-16T06:45:49.586Z' - subscription: '2022-05-16T06:45:49.586Z' - - requestId: 1652683586557.67Faeg - browserDetails: - browserName: Chrome - browserMajorVersion: '101' - browserFullVersion: 101.0.4951 - os: Mac OS X - osVersion: 10.15.7 - device: Other - userAgent: >- - Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) - AppleWebKit/537.36 (KHTML, like Gecko) - Chrome/101.0.4951.54 Safari/537.36 - botProbability: 0 - incognito: true - ip: 217.150.54.233 - ipLocation: - accuracyRadius: 1000 - latitude: 59.8983 - longitude: 30.2618 - postalCode: '190924' - timezone: Europe/Moscow - city: - name: St Petersburg - country: - code: RU - name: Russia - continent: - code: EU - name: Europe - subdivisions: - - isoCode: SPE - name: St.-Petersburg - timestamp: 1652683586562 - time: '2022-05-16T06:46:26Z' - url: https://fingerprintjs.com/ - tag: {} - confidence: - score: 0.94 - visitorFound: true - firstSeenAt: - global: '2022-02-04T11:31:20Z' - subscription: '2022-02-04T11:31:20Z' - lastSeenAt: - global: '2022-05-16T06:45:49.586Z' - subscription: '2022-05-16T06:45:49.586Z' - - requestId: 1652683549513.aVRqEP - browserDetails: - browserName: Chrome - browserMajorVersion: '101' - browserFullVersion: 101.0.4951 - os: Mac OS X - osVersion: 10.15.7 - device: Other - userAgent: >- - Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) - AppleWebKit/537.36 (KHTML, like Gecko) - Chrome/101.0.4951.54 Safari/537.36 - botProbability: 0 - incognito: false - ip: 217.150.54.233 - ipLocation: - accuracyRadius: 1000 - latitude: 59.8983 - longitude: 30.2618 - postalCode: '190924' - timezone: Europe/Moscow - city: - name: St Petersburg - country: - code: RU - name: Russia - continent: - code: EU - name: Europe - subdivisions: - - isoCode: SPE - name: St.-Petersburg - timestamp: 1652683549586 - time: '2022-05-16T06:45:49Z' - url: https://fingerprintjs.com/ - tag: {} - confidence: - score: 1 - visitorFound: true - firstSeenAt: - global: '2022-02-04T11:31:20Z' - subscription: '2022-02-04T11:31:20Z' - lastSeenAt: - global: '2022-05-05T10:11:25.96Z' - subscription: '2022-05-05T10:11:25.96Z' - - requestId: 1651745485951.Oj68me - browserDetails: - browserName: Chrome - browserMajorVersion: '100' - browserFullVersion: 100.0.4896 - os: Mac OS X - osVersion: 10.15.7 - device: Other - userAgent: >- - Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) - AppleWebKit/537.36 (KHTML, like Gecko) - Chrome/100.0.4896.127 Safari/537.36 - botProbability: 0 - incognito: false - ip: 89.38.224.165 - ipLocation: - accuracyRadius: 20 - latitude: 44.804 - longitude: 20.4651 - timezone: Europe/Belgrade - city: - name: Belgrade - country: - code: RS - name: Serbia - continent: - code: EU - name: Europe - subdivisions: - - isoCode: '00' - name: Belgrade - timestamp: 1651745485960 - time: '2022-05-05T10:11:25Z' - url: https://fingerprintjs.com/ - tag: {} - confidence: - score: 1 - visitorFound: true - firstSeenAt: - global: '2022-02-04T11:31:20Z' - subscription: '2022-02-04T11:31:20Z' - lastSeenAt: - global: '2022-05-05T09:33:40.155Z' - subscription: '2022-05-05T09:33:40.155Z' - - requestId: 1651743220004.W02rhx - browserDetails: - browserName: Chrome - browserMajorVersion: '100' - browserFullVersion: 100.0.4896 - os: Mac OS X - osVersion: 10.15.7 - device: Other - userAgent: >- - Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) - AppleWebKit/537.36 (KHTML, like Gecko) - Chrome/100.0.4896.127 Safari/537.36 - botProbability: 0 - incognito: false - ip: 89.38.224.165 - ipLocation: - accuracyRadius: 20 - latitude: 44.804 - longitude: 20.4651 - timezone: Europe/Belgrade - city: - name: Belgrade - country: - code: RS - name: Serbia - continent: - code: EU - name: Europe - subdivisions: - - isoCode: '00' - name: Belgrade - timestamp: 1651743220155 - time: '2022-05-05T09:33:40Z' - url: https://fingerprintjs.com/ - tag: {} - confidence: - score: 1 - visitorFound: true - firstSeenAt: - global: '2022-02-04T11:31:20Z' - subscription: '2022-02-04T11:31:20Z' - lastSeenAt: - global: '2022-05-03T15:26:32.826Z' - subscription: '2022-05-03T15:26:32.826Z' - - requestId: 1651591592822.Is9u93 - browserDetails: - browserName: Chrome - browserMajorVersion: '100' - browserFullVersion: 100.0.4896 - os: Mac OS X - osVersion: 10.15.7 - device: Other - userAgent: >- - Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) - AppleWebKit/537.36 (KHTML, like Gecko) - Chrome/100.0.4896.127 Safari/537.36 - botProbability: 0 - incognito: false - ip: 89.38.224.157 - ipLocation: - accuracyRadius: 20 - latitude: 44.804 - longitude: 20.4651 - timezone: Europe/Belgrade - city: - name: Belgrade - country: - code: RS - name: Serbia - continent: - code: EU - name: Europe - subdivisions: - - isoCode: '00' - name: Belgrade - timestamp: 1651591592826 - time: '2022-05-03T15:26:32Z' - url: https://fingerprintjs.com/ - tag: {} - confidence: - score: 1 - visitorFound: true - firstSeenAt: - global: '2022-02-04T11:31:20Z' - subscription: '2022-02-04T11:31:20Z' - lastSeenAt: - global: '2022-04-29T13:23:37.049Z' - subscription: '2022-04-29T13:23:37.049Z' - - requestId: 1651238617044.rMVPGS - browserDetails: - browserName: Chrome - browserMajorVersion: '100' - browserFullVersion: 100.0.4896 - os: Mac OS X - osVersion: 10.15.7 - device: Other - userAgent: >- - Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) - AppleWebKit/537.36 (KHTML, like Gecko) - Chrome/100.0.4896.127 Safari/537.36 - botProbability: 0 - incognito: false - ip: 89.38.224.165 - ipLocation: - accuracyRadius: 20 - latitude: 44.804 - longitude: 20.4651 - timezone: Europe/Belgrade - city: - name: Belgrade - country: - code: RS - name: Serbia - continent: - code: EU - name: Europe - subdivisions: - - isoCode: '00' - name: Belgrade - timestamp: 1651238617049 - time: '2022-04-29T13:23:37Z' - url: https://fingerprintjs.com/ - tag: {} - confidence: - score: 1 - visitorFound: true - firstSeenAt: - global: '2022-02-04T11:31:20Z' - subscription: '2022-02-04T11:31:20Z' - lastSeenAt: - global: '2022-04-29T10:37:53.333Z' - subscription: '2022-04-29T10:37:53.333Z' - - requestId: 1651228673329.QZI2Cu - browserDetails: - browserName: Chrome - browserMajorVersion: '100' - browserFullVersion: 100.0.4896 - os: Mac OS X - osVersion: 10.15.7 - device: Other - userAgent: >- - Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) - AppleWebKit/537.36 (KHTML, like Gecko) - Chrome/100.0.4896.127 Safari/537.36 - botProbability: 0 - incognito: false - ip: 188.242.36.107 - ipLocation: - accuracyRadius: 5 - latitude: 59.8983 - longitude: 30.2618 - postalCode: '190924' - timezone: Europe/Moscow - city: - name: St Petersburg - country: - code: RU - name: Russia - continent: - code: EU - name: Europe - subdivisions: - - isoCode: SPE - name: St.-Petersburg - timestamp: 1651228673333 - time: '2022-04-29T10:37:53Z' - url: https://fingerprintjs.com/ - tag: {} - confidence: - score: 1 - visitorFound: true - firstSeenAt: - global: '2022-02-04T11:31:20Z' - subscription: '2022-02-04T11:31:20Z' - lastSeenAt: - global: '2022-04-28T13:58:06.323Z' - subscription: '2022-04-28T13:58:06.323Z' - - requestId: 1651154286221.YvuOCP - browserDetails: - browserName: Chrome - browserMajorVersion: '100' - browserFullVersion: 100.0.4896 - os: Mac OS X - osVersion: 10.15.7 - device: Other - userAgent: >- - Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) - AppleWebKit/537.36 (KHTML, like Gecko) - Chrome/100.0.4896.127 Safari/537.36 - botProbability: 0 - incognito: false - ip: 84.247.59.113 - ipLocation: - accuracyRadius: 20 - latitude: 50.0971 - longitude: 8.5952 - postalCode: '65933' - timezone: Europe/Berlin - city: - name: Frankfurt am Main - country: - code: DE - name: Germany - continent: - code: EU - name: Europe - subdivisions: - - isoCode: HE - name: Hesse - timestamp: 1651154286323 - time: '2022-04-28T13:58:06Z' - url: https://fingerprintjs.com/ - tag: {} - confidence: - score: 1 - visitorFound: true - firstSeenAt: - global: '2022-02-04T11:31:20Z' - subscription: '2022-02-04T11:31:20Z' - lastSeenAt: - global: '2022-04-28T12:16:02.564Z' - subscription: '2022-04-28T12:16:02.564Z' - - requestId: 1651148162556.dySgif - browserDetails: - browserName: Chrome - browserMajorVersion: '100' - browserFullVersion: 100.0.4896 - os: Mac OS X - osVersion: 10.15.7 - device: Other - userAgent: >- - Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) - AppleWebKit/537.36 (KHTML, like Gecko) - Chrome/100.0.4896.127 Safari/537.36 - botProbability: 0 - incognito: false - ip: 84.247.59.113 - ipLocation: - accuracyRadius: 20 - latitude: 50.0971 - longitude: 8.5952 - postalCode: '65933' - timezone: Europe/Berlin - city: - name: Frankfurt am Main - country: - code: DE - name: Germany - continent: - code: EU - name: Europe - subdivisions: - - isoCode: HE - name: Hesse - timestamp: 1651148162564 - time: '2022-04-28T12:16:02Z' - url: https://fingerprintjs.com/ - tag: {} - confidence: - score: 1 - visitorFound: true - firstSeenAt: - global: '2022-02-04T11:31:20Z' - subscription: '2022-02-04T11:31:20Z' - lastSeenAt: - global: '2022-04-28T11:57:13.267Z' - subscription: '2022-04-28T11:57:13.267Z' - - requestId: 1651147033260.SxmFvL - browserDetails: - browserName: Chrome - browserMajorVersion: '100' - browserFullVersion: 100.0.4896 - os: Mac OS X - osVersion: 10.15.7 - device: Other - userAgent: >- - Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) - AppleWebKit/537.36 (KHTML, like Gecko) - Chrome/100.0.4896.127 Safari/537.36 - botProbability: 0 - incognito: false - ip: 84.247.59.146 - ipLocation: - accuracyRadius: 20 - latitude: 50.0971 - longitude: 8.5952 - postalCode: '65933' - timezone: Europe/Berlin - city: - name: Frankfurt am Main - country: - code: DE - name: Germany - continent: - code: EU - name: Europe - subdivisions: - - isoCode: HE - name: Hesse - timestamp: 1651147033267 - time: '2022-04-28T11:57:13Z' - url: https://fingerprintjs.com/ - tag: {} - confidence: - score: 1 - visitorFound: true - firstSeenAt: - global: '2022-02-04T11:31:20Z' - subscription: '2022-02-04T11:31:20Z' - lastSeenAt: - global: '2022-04-28T11:57:06.24Z' - subscription: '2022-04-28T11:57:06.24Z' - - requestId: 1651147026139.aAZ8TO - browserDetails: - browserName: Chrome - browserMajorVersion: '100' - browserFullVersion: 100.0.4896 - os: Mac OS X - osVersion: 10.15.7 - device: Other - userAgent: >- - Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) - AppleWebKit/537.36 (KHTML, like Gecko) - Chrome/100.0.4896.127 Safari/537.36 - botProbability: 0 - incognito: false - ip: 84.247.59.146 - ipLocation: - accuracyRadius: 20 - latitude: 50.0971 - longitude: 8.5952 - postalCode: '65933' - timezone: Europe/Berlin - city: - name: Frankfurt am Main - country: - code: DE - name: Germany - continent: - code: EU - name: Europe - subdivisions: - - isoCode: HE - name: Hesse - timestamp: 1651147026240 - time: '2022-04-28T11:57:06Z' - url: https://fingerprintjs.com/ - tag: {} - confidence: - score: 1 - visitorFound: true - firstSeenAt: - global: '2022-02-04T11:31:20Z' - subscription: '2022-02-04T11:31:20Z' - lastSeenAt: - global: '2022-04-26T14:10:31.908Z' - subscription: '2022-04-26T14:10:31.908Z' - - requestId: 1650982231903.eG0b6v - browserDetails: - browserName: Chrome - browserMajorVersion: '100' - browserFullVersion: 100.0.4896 - os: Mac OS X - osVersion: 10.15.7 - device: Other - userAgent: >- - Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) - AppleWebKit/537.36 (KHTML, like Gecko) - Chrome/100.0.4896.127 Safari/537.36 - botProbability: 0 - incognito: false - ip: 45.86.200.105 - ipLocation: - accuracyRadius: 1000 - latitude: 52.3824 - longitude: 4.8995 - timezone: Europe/Amsterdam - country: - code: NL - name: Netherlands - continent: - code: EU - name: Europe - timestamp: 1650982231908 - time: '2022-04-26T14:10:31Z' - url: https://fingerprintjs.com/ - tag: {} - confidence: - score: 1 - visitorFound: true - firstSeenAt: - global: '2022-02-04T11:31:20Z' - subscription: '2022-02-04T11:31:20Z' - lastSeenAt: - global: '2022-04-26T11:43:37.373Z' - subscription: '2022-04-26T11:43:37.373Z' - - requestId: 1650973417360.xupFFD - browserDetails: - browserName: Chrome - browserMajorVersion: '100' - browserFullVersion: 100.0.4896 - os: Mac OS X - osVersion: 10.15.7 - device: Other - userAgent: >- - Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) - AppleWebKit/537.36 (KHTML, like Gecko) - Chrome/100.0.4896.127 Safari/537.36 - botProbability: 0 - incognito: false - ip: 45.86.200.99 - ipLocation: - accuracyRadius: 1000 - latitude: 52.3824 - longitude: 4.8995 - timezone: Europe/Amsterdam - country: - code: NL - name: Netherlands - continent: - code: EU - name: Europe - timestamp: 1650973417373 - time: '2022-04-26T11:43:37Z' - url: https://fingerprintjs.com/ - tag: {} - confidence: - score: 1 - visitorFound: true - firstSeenAt: - global: '2022-02-04T11:31:20Z' - subscription: '2022-02-04T11:31:20Z' - lastSeenAt: - global: '2022-04-26T11:43:30.111Z' - subscription: '2022-04-26T11:43:30.111Z' - - requestId: 1650973410104.AQD4qu - browserDetails: - browserName: Chrome - browserMajorVersion: '100' - browserFullVersion: 100.0.4896 - os: Mac OS X - osVersion: 10.15.7 - device: Other - userAgent: >- - Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) - AppleWebKit/537.36 (KHTML, like Gecko) - Chrome/100.0.4896.127 Safari/537.36 - botProbability: 0 - incognito: false - ip: 45.86.200.99 - ipLocation: - accuracyRadius: 1000 - latitude: 52.3824 - longitude: 4.8995 - timezone: Europe/Amsterdam - country: - code: NL - name: Netherlands - continent: - code: EU - name: Europe - timestamp: 1650973410111 - time: '2022-04-26T11:43:30Z' - url: https://fingerprintjs.com/ - tag: {} - confidence: - score: 1 - visitorFound: true - firstSeenAt: - global: '2022-02-04T11:31:20Z' - subscription: '2022-02-04T11:31:20Z' - lastSeenAt: - global: '2022-04-26T11:22:34.148Z' - subscription: '2022-04-26T11:22:34.148Z' - - requestId: 1650972154133.lSWE8a - browserDetails: - browserName: Chrome - browserMajorVersion: '100' - browserFullVersion: 100.0.4896 - os: Mac OS X - osVersion: 10.15.7 - device: Other - userAgent: >- - Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) - AppleWebKit/537.36 (KHTML, like Gecko) - Chrome/100.0.4896.127 Safari/537.36 - botProbability: 0 - incognito: false - ip: 45.86.200.96 - ipLocation: - accuracyRadius: 1000 - latitude: 52.3824 - longitude: 4.8995 - timezone: Europe/Amsterdam - country: - code: NL - name: Netherlands - continent: - code: EU - name: Europe - timestamp: 1650972154148 - time: '2022-04-26T11:22:34Z' - url: https://fingerprintjs.com/ - tag: {} - confidence: - score: 1 - visitorFound: true - firstSeenAt: - global: '2022-02-04T11:31:20Z' - subscription: '2022-02-04T11:31:20Z' - lastSeenAt: - global: '2022-04-26T11:22:03.83Z' - subscription: '2022-04-26T11:22:03.83Z' - - requestId: 1650972123824.xk8MUR - browserDetails: - browserName: Chrome - browserMajorVersion: '100' - browserFullVersion: 100.0.4896 - os: Mac OS X - osVersion: 10.15.7 - device: Other - userAgent: >- - Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) - AppleWebKit/537.36 (KHTML, like Gecko) - Chrome/100.0.4896.127 Safari/537.36 - botProbability: 0 - incognito: false - ip: 45.86.200.96 - ipLocation: - accuracyRadius: 1000 - latitude: 52.3824 - longitude: 4.8995 - timezone: Europe/Amsterdam - country: - code: NL - name: Netherlands - continent: - code: EU - name: Europe - timestamp: 1650972123830 - time: '2022-04-26T11:22:03Z' - url: https://fingerprintjs.com/ - tag: {} - confidence: - score: 1 - visitorFound: true - firstSeenAt: - global: '2022-02-04T11:31:20Z' - subscription: '2022-02-04T11:31:20Z' - lastSeenAt: - global: '2022-04-25T09:46:15.458Z' - subscription: '2022-04-25T09:46:15.458Z' - - requestId: 1650879975452.kfuowM - browserDetails: - browserName: Chrome - browserMajorVersion: '100' - browserFullVersion: 100.0.4896 - os: Mac OS X - osVersion: 10.15.7 - device: Other - userAgent: >- - Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) - AppleWebKit/537.36 (KHTML, like Gecko) - Chrome/100.0.4896.127 Safari/537.36 - botProbability: 0 - incognito: false - ip: 188.242.36.107 - ipLocation: - accuracyRadius: 5 - latitude: 59.8983 - longitude: 30.2618 - postalCode: '190924' - timezone: Europe/Moscow - city: - name: St Petersburg - country: - code: RU - name: Russia - continent: - code: EU - name: Europe - subdivisions: - - isoCode: SPE - name: St.-Petersburg - timestamp: 1650879975458 - time: '2022-04-25T09:46:15Z' - url: https://fingerprintjs.com/ - tag: {} - confidence: - score: 1 - visitorFound: true - firstSeenAt: - global: '2022-02-04T11:31:20Z' - subscription: '2022-02-04T11:31:20Z' - lastSeenAt: - global: '2022-04-22T16:51:44.816Z' - subscription: '2022-04-22T16:51:44.816Z' - - requestId: 1650646304808.xQbAju - browserDetails: - browserName: Chrome - browserMajorVersion: '100' - browserFullVersion: 100.0.4896 - os: Mac OS X - osVersion: 10.15.7 - device: Other - userAgent: >- - Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) - AppleWebKit/537.36 (KHTML, like Gecko) - Chrome/100.0.4896.127 Safari/537.36 - botProbability: 0 - incognito: false - ip: 45.86.200.227 - ipLocation: - accuracyRadius: 1000 - latitude: 52.3824 - longitude: 4.8995 - timezone: Europe/Amsterdam - country: - code: NL - name: Netherlands - continent: - code: EU - name: Europe - timestamp: 1650646304816 - time: '2022-04-22T16:51:44Z' - url: https://fingerprintjs.com/ - tag: {} - confidence: - score: 1 - visitorFound: true - firstSeenAt: - global: '2022-02-04T11:31:20Z' - subscription: '2022-02-04T11:31:20Z' - lastSeenAt: - global: '2022-04-21T11:43:33.116Z' - subscription: '2022-04-21T11:43:33.116Z' - - requestId: 1650541413105.leAPLz - browserDetails: - browserName: Chrome - browserMajorVersion: '100' - browserFullVersion: 100.0.4896 - os: Mac OS X - osVersion: 10.15.7 - device: Other - userAgent: >- - Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) - AppleWebKit/537.36 (KHTML, like Gecko) - Chrome/100.0.4896.127 Safari/537.36 - botProbability: 0 - incognito: false - ip: 45.86.200.89 - ipLocation: - accuracyRadius: 1000 - latitude: 52.3824 - longitude: 4.8995 - timezone: Europe/Amsterdam - country: - code: NL - name: Netherlands - continent: - code: EU - name: Europe - timestamp: 1650541413116 - time: '2022-04-21T11:43:33Z' - url: https://fingerprintjs.com/ - tag: {} - confidence: - score: 1 - visitorFound: true - firstSeenAt: - global: '2022-02-04T11:31:20Z' - subscription: '2022-02-04T11:31:20Z' - lastSeenAt: - global: '2022-04-20T17:11:54.717Z' - subscription: '2022-04-20T17:11:54.717Z' - - requestId: 1650474714710.M1IGsl - browserDetails: - browserName: Chrome - browserMajorVersion: '100' - browserFullVersion: 100.0.4896 - os: Mac OS X - osVersion: 10.15.7 - device: Other - userAgent: >- - Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) - AppleWebKit/537.36 (KHTML, like Gecko) - Chrome/100.0.4896.127 Safari/537.36 - botProbability: 0 - incognito: false - ip: 45.86.200.111 - ipLocation: - accuracyRadius: 1000 - latitude: 52.3824 - longitude: 4.8995 - timezone: Europe/Amsterdam - country: - code: NL - name: Netherlands - continent: - code: EU - name: Europe - timestamp: 1650474714717 - time: '2022-04-20T17:11:54Z' - url: https://fingerprintjs.com/ - tag: {} - confidence: - score: 1 - visitorFound: true - firstSeenAt: - global: '2022-02-04T11:31:20Z' - subscription: '2022-02-04T11:31:20Z' - lastSeenAt: - global: '2022-04-20T17:11:47.217Z' - subscription: '2022-04-20T17:11:47.217Z' - - requestId: 1650474707211.CEUuZk - browserDetails: - browserName: Chrome - browserMajorVersion: '100' - browserFullVersion: 100.0.4896 - os: Mac OS X - osVersion: 10.15.7 - device: Other - userAgent: >- - Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) - AppleWebKit/537.36 (KHTML, like Gecko) - Chrome/100.0.4896.127 Safari/537.36 - botProbability: 0 - incognito: false - ip: 45.86.200.111 - ipLocation: - accuracyRadius: 1000 - latitude: 52.3824 - longitude: 4.8995 - timezone: Europe/Amsterdam - country: - code: NL - name: Netherlands - continent: - code: EU - name: Europe - timestamp: 1650474707217 - time: '2022-04-20T17:11:47Z' - url: https://fingerprintjs.com/ - tag: {} - confidence: - score: 1 - visitorFound: true - firstSeenAt: - global: '2022-02-04T11:31:20Z' - subscription: '2022-02-04T11:31:20Z' - lastSeenAt: - global: '2022-04-20T17:11:12.076Z' - subscription: '2022-04-20T17:11:12.076Z' - - requestId: 1650474672071.Pz4WsK - browserDetails: - browserName: Chrome - browserMajorVersion: '100' - browserFullVersion: 100.0.4896 - os: Mac OS X - osVersion: 10.15.7 - device: Other - userAgent: >- - Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) - AppleWebKit/537.36 (KHTML, like Gecko) - Chrome/100.0.4896.127 Safari/537.36 - botProbability: 0 - incognito: false - ip: 45.86.200.111 - ipLocation: - accuracyRadius: 1000 - latitude: 52.3824 - longitude: 4.8995 - timezone: Europe/Amsterdam - country: - code: NL - name: Netherlands - continent: - code: EU - name: Europe - timestamp: 1650474672076 - time: '2022-04-20T17:11:12Z' - url: https://fingerprintjs.com/ - tag: {} - confidence: - score: 1 - visitorFound: true - firstSeenAt: - global: '2022-02-04T11:31:20Z' - subscription: '2022-02-04T11:31:20Z' - lastSeenAt: - global: '2022-04-19T12:29:06.692Z' - subscription: '2022-04-19T12:29:06.692Z' - - requestId: 1650371346684.1d7sgv - browserDetails: - browserName: Chrome Mobile - browserMajorVersion: '100' - browserFullVersion: 100.0.4896 - os: Android - osVersion: '6.0' - device: Nexus 5 - userAgent: >- - Mozilla/5.0 (Linux; Android 6.0; Nexus 5 - Build/MRA58N) AppleWebKit/537.36 (KHTML, like Gecko) - Chrome/100.0.4896.127 Mobile Safari/537.36 - botProbability: 0 - incognito: false - ip: 45.86.200.198 - ipLocation: - accuracyRadius: 1000 - latitude: 52.3824 - longitude: 4.8995 - timezone: Europe/Amsterdam - country: - code: NL - name: Netherlands - continent: - code: EU - name: Europe - timestamp: 1650371346692 - time: '2022-04-19T12:29:06Z' - url: https://fingerprintjs.com/ - tag: {} - confidence: - score: 1 - visitorFound: true - firstSeenAt: - global: '2022-02-04T11:31:20Z' - subscription: '2022-02-04T11:31:20Z' - lastSeenAt: - global: '2022-04-19T12:29:02.15Z' - subscription: '2022-04-19T12:29:02.15Z' - - requestId: 1650371342145.oWyfRx - browserDetails: - browserName: Chrome - browserMajorVersion: '100' - browserFullVersion: 100.0.4896 - os: Mac OS X - osVersion: 10.15.7 - device: Other - userAgent: >- - Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) - AppleWebKit/537.36 (KHTML, like Gecko) - Chrome/100.0.4896.127 Safari/537.36 - botProbability: 0 - incognito: false - ip: 45.86.200.198 - ipLocation: - accuracyRadius: 1000 - latitude: 52.3824 - longitude: 4.8995 - timezone: Europe/Amsterdam - country: - code: NL - name: Netherlands - continent: - code: EU - name: Europe - timestamp: 1650371342150 - time: '2022-04-19T12:29:02Z' - url: https://fingerprintjs.com/ - tag: {} - confidence: - score: 1 - visitorFound: true - firstSeenAt: - global: '2022-02-04T11:31:20Z' - subscription: '2022-02-04T11:31:20Z' - lastSeenAt: - global: '2022-04-19T11:35:14.729Z' - subscription: '2022-04-19T11:35:14.729Z' - - requestId: 1650368114723.YEXcHI - browserDetails: - browserName: Chrome - browserMajorVersion: '100' - browserFullVersion: 100.0.4896 - os: Mac OS X - osVersion: 10.15.7 - device: Other - userAgent: >- - Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) - AppleWebKit/537.36 (KHTML, like Gecko) - Chrome/100.0.4896.127 Safari/537.36 - botProbability: 0 - incognito: false - ip: 45.86.200.206 - ipLocation: - accuracyRadius: 1000 - latitude: 52.3824 - longitude: 4.8995 - timezone: Europe/Amsterdam - country: - code: NL - name: Netherlands - continent: - code: EU - name: Europe - timestamp: 1650368114729 - time: '2022-04-19T11:35:14Z' - url: https://fingerprintjs.com/ - tag: {} - confidence: - score: 1 - visitorFound: true - firstSeenAt: - global: '2022-02-04T11:31:20Z' - subscription: '2022-02-04T11:31:20Z' - lastSeenAt: - global: '2022-04-19T11:13:33.107Z' - subscription: '2022-04-19T11:13:33.107Z' - - requestId: 1650366813101.SvUZC1 - browserDetails: - browserName: Chrome Mobile - browserMajorVersion: '100' - browserFullVersion: 100.0.4896 - os: Android - osVersion: '6.0' - device: Nexus 5 - userAgent: >- - Mozilla/5.0 (Linux; Android 6.0; Nexus 5 - Build/MRA58N) AppleWebKit/537.36 (KHTML, like Gecko) - Chrome/100.0.4896.127 Mobile Safari/537.36 - botProbability: 0 - incognito: false - ip: 45.86.200.204 - ipLocation: - accuracyRadius: 1000 - latitude: 52.3824 - longitude: 4.8995 - timezone: Europe/Amsterdam - country: - code: NL - name: Netherlands - continent: - code: EU - name: Europe - timestamp: 1650366813107 - time: '2022-04-19T11:13:33Z' - url: https://fingerprintjs.com/ - tag: {} - confidence: - score: 1 - visitorFound: true - firstSeenAt: - global: '2022-02-04T11:31:20Z' - subscription: '2022-02-04T11:31:20Z' - lastSeenAt: - global: '2022-04-19T11:13:28.453Z' - subscription: '2022-04-19T11:13:28.453Z' - - requestId: 1650366808426.Hy6j7v - browserDetails: - browserName: Chrome - browserMajorVersion: '100' - browserFullVersion: 100.0.4896 - os: Mac OS X - osVersion: 10.15.7 - device: Other - userAgent: >- - Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) - AppleWebKit/537.36 (KHTML, like Gecko) - Chrome/100.0.4896.127 Safari/537.36 - botProbability: 0 - incognito: false - ip: 45.86.200.204 - ipLocation: - accuracyRadius: 1000 - latitude: 52.3824 - longitude: 4.8995 - timezone: Europe/Amsterdam - country: - code: NL - name: Netherlands - continent: - code: EU - name: Europe - timestamp: 1650366808453 - time: '2022-04-19T11:13:28Z' - url: https://fingerprintjs.com/ - tag: {} - confidence: - score: 1 - visitorFound: true - firstSeenAt: - global: '2022-02-04T11:31:20Z' - subscription: '2022-02-04T11:31:20Z' - lastSeenAt: - global: '2022-04-19T11:07:05.19Z' - subscription: '2022-04-19T11:07:05.19Z' - - requestId: 1650366425184.xvYkdr - browserDetails: - browserName: Chrome - browserMajorVersion: '100' - browserFullVersion: 100.0.4896 - os: Mac OS X - osVersion: 10.15.7 - device: Other - userAgent: >- - Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) - AppleWebKit/537.36 (KHTML, like Gecko) - Chrome/100.0.4896.127 Safari/537.36 - botProbability: 0 - incognito: false - ip: 45.86.200.204 - ipLocation: - accuracyRadius: 1000 - latitude: 52.3824 - longitude: 4.8995 - timezone: Europe/Amsterdam - country: - code: NL - name: Netherlands - continent: - code: EU - name: Europe - timestamp: 1650366425190 - time: '2022-04-19T11:07:05Z' - url: https://fingerprintjs.com/ - tag: {} - confidence: - score: 1 - visitorFound: true - firstSeenAt: - global: '2022-02-04T11:31:20Z' - subscription: '2022-02-04T11:31:20Z' - lastSeenAt: - global: '2022-04-19T11:07:00.483Z' - subscription: '2022-04-19T11:07:00.483Z' - - requestId: 1650366420377.VR5pDX - browserDetails: - browserName: Chrome - browserMajorVersion: '100' - browserFullVersion: 100.0.4896 - os: Mac OS X - osVersion: 10.15.7 - device: Other - userAgent: >- - Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) - AppleWebKit/537.36 (KHTML, like Gecko) - Chrome/100.0.4896.127 Safari/537.36 - botProbability: 0 - incognito: false - ip: 45.86.200.204 - ipLocation: - accuracyRadius: 1000 - latitude: 52.3824 - longitude: 4.8995 - timezone: Europe/Amsterdam - country: - code: NL - name: Netherlands - continent: - code: EU - name: Europe - timestamp: 1650366420483 - time: '2022-04-19T11:07:00Z' - url: https://fingerprintjs.com/ - tag: {} - confidence: - score: 1 - visitorFound: true - firstSeenAt: - global: '2022-02-04T11:31:20Z' - subscription: '2022-02-04T11:31:20Z' - lastSeenAt: - global: '2022-04-19T10:37:45.279Z' - subscription: '2022-04-19T10:37:45.279Z' - - requestId: 1650364665274.qq31O4 - browserDetails: - browserName: Chrome - browserMajorVersion: '100' - browserFullVersion: 100.0.4896 - os: Mac OS X - osVersion: 10.15.7 - device: Other - userAgent: >- - Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) - AppleWebKit/537.36 (KHTML, like Gecko) - Chrome/100.0.4896.127 Safari/537.36 - botProbability: 0 - incognito: false - ip: 45.86.200.172 - ipLocation: - accuracyRadius: 1000 - latitude: 52.3824 - longitude: 4.8995 - timezone: Europe/Amsterdam - country: - code: NL - name: Netherlands - continent: - code: EU - name: Europe - timestamp: 1650364665279 - time: '2022-04-19T10:37:45Z' - url: https://fingerprintjs.com/ - tag: {} - confidence: - score: 1 - visitorFound: true - firstSeenAt: - global: '2022-02-04T11:31:20Z' - subscription: '2022-02-04T11:31:20Z' - lastSeenAt: - global: '2022-04-19T10:22:58.87Z' - subscription: '2022-04-19T10:22:58.87Z' - - requestId: 1650363778864.tsVBjO - browserDetails: - browserName: Chrome Mobile - browserMajorVersion: '100' - browserFullVersion: 100.0.4896 - os: Android - osVersion: '6.0' - device: Nexus 5 - userAgent: >- - Mozilla/5.0 (Linux; Android 6.0; Nexus 5 - Build/MRA58N) AppleWebKit/537.36 (KHTML, like Gecko) - Chrome/100.0.4896.127 Mobile Safari/537.36 - botProbability: 0 - incognito: false - ip: 45.86.200.210 - ipLocation: - accuracyRadius: 1000 - latitude: 52.3824 - longitude: 4.8995 - timezone: Europe/Amsterdam - country: - code: NL - name: Netherlands - continent: - code: EU - name: Europe - timestamp: 1650363778870 - time: '2022-04-19T10:22:58Z' - url: https://fingerprintjs.com/ - tag: {} - confidence: - score: 1 - visitorFound: true - firstSeenAt: - global: '2022-02-04T11:31:20Z' - subscription: '2022-02-04T11:31:20Z' - lastSeenAt: - global: '2022-04-19T10:22:46.894Z' - subscription: '2022-04-19T10:22:46.894Z' - - requestId: 1650363766889.KuVDpm - browserDetails: - browserName: Chrome Mobile - browserMajorVersion: '100' - browserFullVersion: 100.0.4896 - os: Android - osVersion: '6.0' - device: Nexus 5 - userAgent: >- - Mozilla/5.0 (Linux; Android 6.0; Nexus 5 - Build/MRA58N) AppleWebKit/537.36 (KHTML, like Gecko) - Chrome/100.0.4896.127 Mobile Safari/537.36 - botProbability: 0 - incognito: false - ip: 45.86.200.210 - ipLocation: - accuracyRadius: 1000 - latitude: 52.3824 - longitude: 4.8995 - timezone: Europe/Amsterdam - country: - code: NL - name: Netherlands - continent: - code: EU - name: Europe - timestamp: 1650363766894 - time: '2022-04-19T10:22:46Z' - url: https://fingerprintjs.com/ - tag: {} - confidence: - score: 1 - visitorFound: true - firstSeenAt: - global: '2022-02-04T11:31:20Z' - subscription: '2022-02-04T11:31:20Z' - lastSeenAt: - global: '2022-04-19T10:07:01.528Z' - subscription: '2022-04-19T10:07:01.528Z' - - requestId: 1650362821521.dXH2Ce - browserDetails: - browserName: Chrome - browserMajorVersion: '100' - browserFullVersion: 100.0.4896 - os: Mac OS X - osVersion: 10.15.7 - device: Other - userAgent: >- - Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) - AppleWebKit/537.36 (KHTML, like Gecko) - Chrome/100.0.4896.127 Safari/537.36 - botProbability: 0 - incognito: false - ip: 45.86.200.180 - ipLocation: - accuracyRadius: 1000 - latitude: 52.3824 - longitude: 4.8995 - timezone: Europe/Amsterdam - country: - code: NL - name: Netherlands - continent: - code: EU - name: Europe - timestamp: 1650362821528 - time: '2022-04-19T10:07:01Z' - url: https://fingerprintjs.com/ - tag: {} - confidence: - score: 1 - visitorFound: true - firstSeenAt: - global: '2022-02-04T11:31:20Z' - subscription: '2022-02-04T11:31:20Z' - lastSeenAt: - global: '2022-04-19T10:02:42.46Z' - subscription: '2022-04-19T10:02:42.46Z' - - requestId: 1650362562448.a5cPLU - browserDetails: - browserName: Chrome - browserMajorVersion: '100' - browserFullVersion: 100.0.4896 - os: Mac OS X - osVersion: 10.15.7 - device: Other - userAgent: >- - Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) - AppleWebKit/537.36 (KHTML, like Gecko) - Chrome/100.0.4896.127 Safari/537.36 - botProbability: 0 - incognito: false - ip: 45.86.200.180 - ipLocation: - accuracyRadius: 1000 - latitude: 52.3824 - longitude: 4.8995 - timezone: Europe/Amsterdam - country: - code: NL - name: Netherlands - continent: - code: EU - name: Europe - timestamp: 1650362562460 - time: '2022-04-19T10:02:42Z' - url: https://fingerprintjs.com/ - tag: {} - confidence: - score: 1 - visitorFound: true - firstSeenAt: - global: '2022-02-04T11:31:20Z' - subscription: '2022-02-04T11:31:20Z' - lastSeenAt: - global: '2022-04-18T17:06:30.834Z' - subscription: '2022-04-18T17:06:30.834Z' - - requestId: 1650301590829.YXGX7h - browserDetails: - browserName: Chrome - browserMajorVersion: '100' - browserFullVersion: 100.0.4896 - os: Mac OS X - osVersion: 10.15.7 - device: Other - userAgent: >- - Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) - AppleWebKit/537.36 (KHTML, like Gecko) - Chrome/100.0.4896.75 Safari/537.36 - botProbability: 0 - incognito: false - ip: 45.86.200.195 - ipLocation: - accuracyRadius: 1000 - latitude: 52.3824 - longitude: 4.8995 - timezone: Europe/Amsterdam - country: - code: NL - name: Netherlands - continent: - code: EU - name: Europe - timestamp: 1650301590834 - time: '2022-04-18T17:06:30Z' - url: https://fingerprintjs.com/ - tag: {} - confidence: - score: 1 - visitorFound: true - firstSeenAt: - global: '2022-02-04T11:31:20Z' - subscription: '2022-02-04T11:31:20Z' - lastSeenAt: - global: '2022-04-18T12:23:30.446Z' - subscription: '2022-04-18T12:23:30.446Z' - - requestId: 1650284610441.lJrX4M - browserDetails: - browserName: Chrome - browserMajorVersion: '100' - browserFullVersion: 100.0.4896 - os: Mac OS X - osVersion: 10.15.7 - device: Other - userAgent: >- - Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) - AppleWebKit/537.36 (KHTML, like Gecko) - Chrome/100.0.4896.75 Safari/537.36 - botProbability: 0 - incognito: false - ip: 45.86.200.179 - ipLocation: - accuracyRadius: 1000 - latitude: 52.3824 - longitude: 4.8995 - timezone: Europe/Amsterdam - country: - code: NL - name: Netherlands - continent: - code: EU - name: Europe - timestamp: 1650284610446 - time: '2022-04-18T12:23:30Z' - url: https://fingerprintjs.com/blog/ - tag: {} - confidence: - score: 1 - visitorFound: true - firstSeenAt: - global: '2022-02-04T11:31:20Z' - subscription: '2022-02-04T11:31:20Z' - lastSeenAt: - global: '2022-04-06T14:53:00.526Z' - subscription: '2022-04-06T14:53:00.526Z' - - requestId: 1649256780522.WAXWf2 - browserDetails: - browserName: Chrome - browserMajorVersion: '100' - browserFullVersion: 100.0.4896 - os: Mac OS X - osVersion: 10.15.7 - device: Other - userAgent: >- - Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) - AppleWebKit/537.36 (KHTML, like Gecko) - Chrome/100.0.4896.60 Safari/537.36 - botProbability: 0 - incognito: false - ip: 109.245.35.200 - ipLocation: - accuracyRadius: 50 - latitude: 44.8166 - longitude: 20.4721 - timezone: Europe/Belgrade - city: - name: Belgrade - country: - code: RS - name: Serbia - continent: - code: EU - name: Europe - subdivisions: - - isoCode: '00' - name: Belgrade - timestamp: 1649256780526 - time: '2022-04-06T14:53:00Z' - url: https://fingerprintjs.com/ - tag: {} - confidence: - score: 1 - visitorFound: true - firstSeenAt: - global: '2022-02-04T11:31:20Z' - subscription: '2022-02-04T11:31:20Z' - lastSeenAt: - global: '2022-03-18T11:08:35.698Z' - subscription: '2022-03-18T11:08:35.698Z' - - requestId: 1649256780520.RRC4PR - browserDetails: - browserName: Chrome - browserMajorVersion: '100' - browserFullVersion: 100.0.4896 - os: Mac OS X - osVersion: 10.15.7 - device: Other - userAgent: >- - Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) - AppleWebKit/537.36 (KHTML, like Gecko) - Chrome/100.0.4896.60 Safari/537.36 - botProbability: 0 - incognito: false - ip: 109.245.35.200 - ipLocation: - accuracyRadius: 50 - latitude: 44.8166 - longitude: 20.4721 - timezone: Europe/Belgrade - city: - name: Belgrade - country: - code: RS - name: Serbia - continent: - code: EU - name: Europe - subdivisions: - - isoCode: '00' - name: Belgrade - timestamp: 1649256780525 - time: '2022-04-06T14:53:00Z' - url: https://fingerprintjs.com/ - tag: {} - confidence: - score: 1 - visitorFound: true - firstSeenAt: - global: '2022-02-04T11:31:20Z' - subscription: '2022-02-04T11:31:20Z' - lastSeenAt: - global: '2022-03-18T11:08:35.698Z' - subscription: '2022-03-18T11:08:35.698Z' - - requestId: 1647601715689.iocXfW - browserDetails: - browserName: Chrome - browserMajorVersion: '98' - browserFullVersion: 98.0.4758 - os: Mac OS X - osVersion: 10.15.7 - device: Other - userAgent: >- - Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) - AppleWebKit/537.36 (KHTML, like Gecko) - Chrome/98.0.4758.109 Safari/537.36 - botProbability: 0 - incognito: false - ip: 178.223.21.183 - ipLocation: - accuracyRadius: 50 - latitude: 44.8166 - longitude: 20.4721 - timezone: Europe/Belgrade - city: - name: Belgrade - country: - code: RS - name: Serbia - continent: - code: EU - name: Europe - subdivisions: - - isoCode: '00' - name: Belgrade - timestamp: 1647601715698 - time: '2022-03-18T11:08:35Z' - url: https://fingerprintjs.com/ - tag: {} - confidence: - score: 1 - visitorFound: true - firstSeenAt: - global: '2022-02-04T11:31:20Z' - subscription: '2022-02-04T11:31:20Z' - lastSeenAt: - global: '2022-03-16T08:21:23.62Z' - subscription: '2022-03-16T08:21:23.62Z' - - requestId: 1647418883615.Vck2NA - browserDetails: - browserName: Chrome - browserMajorVersion: '98' - browserFullVersion: 98.0.4758 - os: Mac OS X - osVersion: 10.15.7 - device: Other - userAgent: >- - Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) - AppleWebKit/537.36 (KHTML, like Gecko) - Chrome/98.0.4758.109 Safari/537.36 - botProbability: 0 - incognito: false - ip: 87.116.165.97 - ipLocation: - accuracyRadius: 50 - latitude: 44.8166 - longitude: 20.4721 - timezone: Europe/Belgrade - city: - name: Belgrade - country: - code: RS - name: Serbia - continent: - code: EU - name: Europe - subdivisions: - - isoCode: '00' - name: Belgrade - timestamp: 1647418883620 - time: '2022-03-16T08:21:23Z' - url: https://fingerprintjs.com/ - tag: {} - confidence: - score: 1 - visitorFound: true - firstSeenAt: - global: '2022-02-04T11:31:20Z' - subscription: '2022-02-04T11:31:20Z' - lastSeenAt: - global: '2022-03-16T08:21:18.398Z' - subscription: '2022-03-16T08:21:18.398Z' - - requestId: 1647418878391.NZDmht - browserDetails: - browserName: Chrome - browserMajorVersion: '98' - browserFullVersion: 98.0.4758 - os: Mac OS X - osVersion: 10.15.7 - device: Other - userAgent: >- - Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) - AppleWebKit/537.36 (KHTML, like Gecko) - Chrome/98.0.4758.109 Safari/537.36 - botProbability: 0 - incognito: false - ip: 87.116.165.97 - ipLocation: - accuracyRadius: 50 - latitude: 44.8166 - longitude: 20.4721 - timezone: Europe/Belgrade - city: - name: Belgrade - country: - code: RS - name: Serbia - continent: - code: EU - name: Europe - subdivisions: - - isoCode: '00' - name: Belgrade - timestamp: 1647418878398 - time: '2022-03-16T08:21:18Z' - url: https://fingerprintjs.com/ - tag: {} - confidence: - score: 1 - visitorFound: true - firstSeenAt: - global: '2022-02-04T11:31:20Z' - subscription: '2022-02-04T11:31:20Z' - lastSeenAt: - global: '2022-03-15T11:46:51.858Z' - subscription: '2022-03-15T11:46:51.858Z' - - requestId: 1647344811836.RvNkL5 - browserDetails: - browserName: Chrome - browserMajorVersion: '98' - browserFullVersion: 98.0.4758 - os: Mac OS X - osVersion: 10.15.7 - device: Other - userAgent: >- - Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) - AppleWebKit/537.36 (KHTML, like Gecko) - Chrome/98.0.4758.109 Safari/537.36 - botProbability: 0 - incognito: false - ip: 87.116.165.97 - ipLocation: - accuracyRadius: 50 - latitude: 44.8166 - longitude: 20.4721 - timezone: Europe/Belgrade - city: - name: Belgrade - country: - code: RS - name: Serbia - continent: - code: EU - name: Europe - subdivisions: - - isoCode: '00' - name: Belgrade - timestamp: 1647344811858 - time: '2022-03-15T11:46:51Z' - url: https://fingerprintjs.com/ - tag: {} - confidence: - score: 1 - visitorFound: true - firstSeenAt: - global: '2022-02-04T11:31:20Z' - subscription: '2022-02-04T11:31:20Z' - lastSeenAt: - global: '2022-03-08T12:33:05.677Z' - subscription: '2022-03-08T12:33:05.677Z' '403': description: Forbidden. The API Key is probably missing or incorrect. content: application/json: schema: $ref: '#/components/schemas/ErrorVisits403' - examples: - example: - summary: Forbidden - value: - error: Forbidden (HTTP 403) '429': description: Too Many Requests headers: @@ -3423,180 +216,10 @@ paths: type: integer format: int32 minimum: 0 - content: - application/json: - schema: - $ref: '#/components/schemas/ManyRequestsResponse' - examples: - example: - summary: Example too many requests error response - value: - error: too many requests - x-readme: - code-samples: - - language: node - name: Node SDK - install: npm install @fingerprintjs/fingerprintjs-pro-server-api - code: | - import { - FingerprintJsServerApiClient, - Region, - } from '@fingerprintjs/fingerprintjs-pro-server-api' - - const client = new FingerprintJsServerApiClient({ - apiKey: 'SERVER_API_KEY', // Replace with your key - region: Region.Global, // Replace with your region - }) - - // Get visit history of a specific visitor - client.getVisitorHistory('VISITOR_ID').then((visitorHistory) => { - console.log(visitorHistory) - }) - - language: php - name: PHP SDK - install: composer require fingerprint/fingerprint-pro-server-api-sdk - code: | - getVisits("VISITOR_ID"); - echo "
" . $response->__toString() . "
"; - } catch (Exception $e) { - echo $e->getMessage(), PHP_EOL; - } - - language: python - name: Python SDK - install: pip install fingerprint_pro_server_api_sdk - code: > - import fingerprint_pro_server_api_sdk - - from fingerprint_pro_server_api_sdk import EventResponse - - from fingerprint_pro_server_api_sdk import Response - - from fingerprint_pro_server_api_sdk.rest import ApiException - - - configuration = fingerprint_pro_server_api_sdk.Configuration( - api_key="SERVER_API_KEY", // Replace with your key - region="us" // Replace with your region - ) - - api_instance = - fingerprint_pro_server_api_sdk.FingerprintApi(configuration) - - - # Get visit history of a specific visitor - - try: - visits: Response = api_instance.get_visits("VISITOR_ID", limit=10) - print(visits) - except ApiException as e: - print("Exception when getting visits: %s\n" % e) - - language: golang - name: Go SDK - install: go get github.com/fingerprintjs/fingerprint-pro-server-api-go-sdk - code: | - package main - - import ( - "context" - "fmt" - "github.com/antihax/optional" - "github.com/fingerprintjs/fingerprint-pro-server-api-go-sdk/v3/sdk" - "log" - ) - - func main() { - cfg := sdk.NewConfiguration() - client := sdk.NewAPIClient(cfg) - - auth := context.WithValue( - context.Background(), - sdk.ContextAPIKey, - sdk.APIKey{Key: "SERVER_API_KEY"}, // Replace with your key - ) - cfg.ChangeRegion(sdk.RegionUS) // Replace with your region - - // Get visit history of a specific visitor - getVisitsOpts := sdk.FingerprintApiGetVisitsOpts{ - Limit: optional.NewInt32(10), - } - history, historyHttpRes, historyErr := - client.FingerprintApi.GetVisits(auth, "VISITOR_ID", &getVisitsOpts) - if err != nil { - log.Fatal(err) - } - fmt.Printf("Visitor history: %s", history) - } - - language: java - name: Java SDK - code: | - import com.fingerprint.api.FingerprintApi; - import com.fingerprint.models.EventResponse; - import com.fingerprint.models.Response; - import com.fingerprint.sdk.ApiClient; - import com.fingerprint.sdk.ApiException; - import com.fingerprint.sdk.Configuration; - import com.fingerprint.sdk.Region; - - public class FingerprintApiExample { - public static void main(String... args) { - ApiClient client = Configuration.getDefaultApiClient( - "SERVER_API_KEY", // Replace with your key - Region.GLOBAL // Replace with your region - ); - FingerprintApi api = new FingerprintApi(client); - - // Get visit history of a specific visitor - try { - Response response = api.getVisits("VISITOR_ID"); - System.out.println(response.getVisits().toString()); - } catch (ApiException e) { - System.err.println(e.getMessage()); - } - } - } - - language: csharp - name: C# SDK - install: dotnet add package FingerprintPro.ServerSdk - code: > - using FingerprintPro.ServerSdk.Api; - - using FingerprintPro.ServerSdk.Client; - - - var configuration = new Configuration("SERVER_API_KEY"); // - Replace with your key - - configuration.Region = Region.Us; // Replace with your region - - - var api = new FingerprintApi( - configuration - ); - - - // Get visit history of a specific visitor - - var visits = api.GetVisits("VISITOR_ID"); - - Console.WriteLine(visits); + content: + application/json: + schema: + $ref: '#/components/schemas/ManyRequestsResponse' /webhook: trace: tags: @@ -3718,6 +341,7 @@ paths: vpn: result: false originTimezone: Europe/Berlin + originCountry: unknown methods: timezoneMismatch: false publicVPN: false @@ -3865,7 +489,7 @@ components: format: date-time example: '2022-06-09T22:58:36Z' url: - description: Page URL from which identification request was sent. + description: Page URL from which the identification request was sent. type: string format: uri example: https://some.website/path?query=params @@ -3893,7 +517,6 @@ components: additionalProperties: false required: - browserDetails - - confidence - firstSeenAt - incognito - ip @@ -3902,8 +525,8 @@ components: - time - timestamp - url - - visitorFound - tag + - visitorFound lastTimestamp: description: > ⚠️ Deprecated paging attribute, please use `paginationKey` instead. @@ -4019,129 +642,29 @@ components: description: Flag if user used incognito session. type: boolean rootApps: - title: WebhookSignalResponseRootApps - type: object - properties: - result: - type: boolean - description: > - Android specific root management apps detection. There are 2 - values: • `true` - Root Management Apps detected (e.g. Magisk) • - `false` - No Root Management Apps detected or the client isn't - Android. - example: false + $ref: '#/components/schemas/RootAppsResult' emulator: - title: WebhookSignalResponseEmulator - type: object - properties: - result: - type: boolean - description: > - Android specific emulator detection. There are 2 values: • - `true` - Emulated environment detected (e.g. launch inside of - AVD) • `false` - No signs of emulated environment detected or - the client isn't Android. - example: false + $ref: '#/components/schemas/EmulatorResult' clonedApp: - title: WebhookSignalResponseClonedApp - type: object - properties: - result: - type: boolean - description: > - Android specific cloned application detection. There are 2 - values: • `true` - Presence of app cloners work detected (e.g. - fully cloned application found or launch of it inside of a not - main working profile detected). • `false` - No signs of cloned - application detected or the client is not Android. - example: false + $ref: '#/components/schemas/ClonedAppResult' factoryReset: - title: WebhookSignalResponseFactoryReset - type: object - properties: - time: - title: Time - description: > - Time in UTC for the Android client when recent factory reset was - done. If there is no sign of factory reset or the client isn't - Android, the field will be epoch time. - type: string - format: date-time - example: '2022-06-09T22:58:36Z' - timestamp: - description: >- - Same value as it's in the `time` field but represented in - timestamp format. - type: integer - format: int64 - example: 1654815517198 + $ref: '#/components/schemas/FactoryResetResult' jailbroken: - title: WebhookSignalResponseJailbroken - type: object - properties: - result: - type: boolean - description: > - iOS specific jailbreak detection. There are 2 values: • `true` - - Jailbreak detected • `false` - No signs of jailbreak or the - client is not iOS. - example: false + $ref: '#/components/schemas/JailbrokenResult' frida: - title: WebhookSignalResponseFrida - type: object - properties: - result: - type: boolean - description: > - iOS specific [Frida](https://frida.re/docs/ios/) detection. - There are 2 values: • `true` - Frida detected • `false` - No - signs of Frida or the client is not iOS. - example: false + $ref: '#/components/schemas/FridaResult' ipBlocklist: $ref: '#/components/schemas/IpBlockListResult' tor: - title: WebhookSignalResponseTor - type: object - properties: - result: - type: boolean - description: > - `true` if the request IP address is a known tor exit node, - `false` otherwise. - example: false + $ref: '#/components/schemas/TorResult' privacySettings: - title: WebhookSignalResponsePrivacySettings - type: object - properties: - result: - type: boolean - description: > - `true` if the request is from a privacy aware browser (e.g. Tor) - or from a browser in which fingerprinting is blocked. Otherwise - `false`. - example: false + $ref: '#/components/schemas/PrivacySettingsResult' virtualMachine: - title: WebhookSignalResponseVirtualMachine - type: object - properties: - result: - type: boolean - description: > - `true` if the request came from a browser running inside a - virtual machine (e.g. VMWare), `false` otherwise. - example: false + $ref: '#/components/schemas/VirtualMachineResult' vpn: $ref: '#/components/schemas/VpnResult' proxy: - title: WebhookSignalResponseProxy - type: object - properties: - result: - type: boolean - description: > - `true` if the request IP address is used by a public proxy - provider, `false` otherwise. - example: false + $ref: '#/components/schemas/ProxyResult' tampering: $ref: '#/components/schemas/TamperingResult' rawDeviceAttributes: @@ -4222,7 +745,7 @@ components: format: date-time example: '2022-06-09T22:58:36Z' url: - description: Page URL from which identification request was sent. + description: Page URL from which the identification request was sent. type: string format: uri example: https://some.website/path?query=params @@ -4249,7 +772,6 @@ components: required: - visitorId - browserDetails - - confidence - firstSeenAt - incognito - ip @@ -4258,9 +780,11 @@ components: - time - timestamp - url + - tag - visitorFound Visit: type: object + additionalProperties: false properties: requestId: description: Unique identifier of the user's identification request. @@ -4335,7 +859,7 @@ components: format: date-time example: '2022-06-09T22:58:36Z' url: - description: Page URL from which identification request was sent. + description: Page URL from which the identification request was sent. type: string format: uri example: https://some.website/path?query=params @@ -4360,7 +884,6 @@ components: $ref: '#/components/schemas/SeenAt' required: - browserDetails - - confidence - firstSeenAt - incognito - ip @@ -4369,6 +892,7 @@ components: - time - timestamp - url + - tag - visitorFound title: Visit BrowserDetails: @@ -4638,7 +1162,7 @@ components: format: date-time example: '2022-06-09T22:58:36Z' url: - description: Page URL from which identification request was sent. + description: Page URL from which the identification request was sent. type: string format: uri example: https://some.website/path?query=params @@ -4675,7 +1199,6 @@ components: additionalProperties: false required: - browserDetails - - confidence - firstSeenAt - incognito - ip @@ -4684,6 +1207,7 @@ components: - time - timestamp - url + - tag - visitorFound - visitorId error: @@ -4700,6 +1224,7 @@ components: ipInfo: title: SignalResponseIpInfo type: object + additionalProperties: false properties: data: $ref: '#/components/schemas/IpInfoResult' @@ -4708,131 +1233,70 @@ components: incognito: title: SignalResponseIncognito type: object + additionalProperties: false properties: data: - type: object - properties: - result: - type: boolean - description: > - `true` if we detected incognito mode used in the browser, - `false` otherwise. - example: false + $ref: '#/components/schemas/IncognitoResult' error: $ref: '#/components/schemas/ProductError' rootApps: title: SignalResponseRootApps type: object + additionalProperties: false properties: data: - type: object - properties: - result: - type: boolean - description: > - Android specific root management apps detection. There are 2 - values: • `true` - Root Management Apps detected (e.g. - Magisk) • `false` - No Root Management Apps detected or the - client is not Android. - example: false + $ref: '#/components/schemas/RootAppsResult' error: $ref: '#/components/schemas/ProductError' emulator: title: SignalResponseEmulator type: object + additionalProperties: false properties: data: - type: object - properties: - result: - type: boolean - description: > - Android specific emulator detection. There are 2 values: • - `true` - Emulated environment detected (e.g. launch inside - of AVD) • `false` - No signs of emulated environment - detected or the client is not Android. - example: false + $ref: '#/components/schemas/EmulatorResult' error: $ref: '#/components/schemas/ProductError' clonedApp: title: SignalResponseClonedApp type: object + additionalProperties: false properties: data: - type: object - properties: - result: - type: boolean - description: > - Android specific cloned application detection. There are 2 - values: • `true` - Presence of app cloners work detected - (e.g. fully cloned application found or launch of it inside - of a not main working profile detected). • `false` - No - signs of cloned application detected or the client is not - Android. - example: false + $ref: '#/components/schemas/ClonedAppResult' error: $ref: '#/components/schemas/ProductError' factoryReset: title: SignalResponseFactoryReset type: object + additionalProperties: false properties: data: - type: object - properties: - time: - title: Time - description: > - Time in UTC for the Android client when recent factory reset - was done. If there is no sign of factory reset or the - client isn't Android, the field will be epoch time. - type: string - format: date-time - example: '2022-06-09T22:58:36Z' - timestamp: - description: >- - Same value as it's in the `time` field but represented in - timestamp format. - type: integer - format: int64 - example: 1654815517198 + $ref: '#/components/schemas/FactoryResetResult' error: $ref: '#/components/schemas/ProductError' jailbroken: title: SignalResponseJailbroken type: object + additionalProperties: false properties: data: - type: object - properties: - result: - type: boolean - description: > - iOS specific jailbreak detection. There are 2 values: • - `true` - Jailbreak detected • `false` - No signs of - jailbreak or the client is not iOS. - example: false + $ref: '#/components/schemas/JailbrokenResult' error: $ref: '#/components/schemas/ProductError' frida: title: SignalResponseFrida type: object + additionalProperties: false properties: data: - type: object - properties: - result: - type: boolean - description: > - iOS specific [Frida](https://frida.re/docs/ios/) detection. - There are 2 values: • `true` - Frida detected • `false` - No - signs of Frida or the client is not iOS. - example: false + $ref: '#/components/schemas/FridaResult' error: $ref: '#/components/schemas/ProductError' ipBlocklist: title: SignalResponseIpBlocklist type: object + additionalProperties: false properties: data: $ref: '#/components/schemas/IpBlockListResult' @@ -4841,52 +1305,34 @@ components: tor: title: SignalResponseTor type: object + additionalProperties: false properties: data: - type: object - properties: - result: - type: boolean - description: > - `true` if the request IP address is a known tor exit node, - `false` otherwise. - example: false + $ref: '#/components/schemas/TorResult' error: $ref: '#/components/schemas/ProductError' privacySettings: title: SignalResponsePrivacySettings type: object + additionalProperties: false properties: data: - type: object - properties: - result: - type: boolean - description: > - `true` if the request is from a privacy aware browser (e.g. - Tor) or from a browser in which fingerprinting is blocked. - Otherwise `false`. - example: false + $ref: '#/components/schemas/PrivacySettingsResult' error: $ref: '#/components/schemas/ProductError' virtualMachine: title: SignalResponseVirtualMachine type: object + additionalProperties: false properties: data: - type: object - properties: - result: - type: boolean - description: > - `true` if the request came from a browser running inside a - virtual machine (e.g. VMWare), `false` otherwise. - example: false + $ref: '#/components/schemas/VirtualMachineResult' error: $ref: '#/components/schemas/ProductError' vpn: title: SignalResponseVpn type: object + additionalProperties: false properties: data: $ref: '#/components/schemas/VpnResult' @@ -4895,21 +1341,16 @@ components: proxy: title: SignalResponseProxy type: object + additionalProperties: false properties: data: - type: object - properties: - result: - type: boolean - description: > - `true` if the request IP address is used by a public proxy - provider, `false` otherwise. - example: false + $ref: '#/components/schemas/ProxyResult' error: $ref: '#/components/schemas/ProductError' tampering: title: SignalResponseTampering type: object + additionalProperties: false properties: data: $ref: '#/components/schemas/TamperingResult' @@ -4918,6 +1359,7 @@ components: highActivity: title: SignalResponseHighActivity type: object + additionalProperties: false properties: data: $ref: '#/components/schemas/HighActivityResult' @@ -4926,6 +1368,7 @@ components: locationSpoofing: title: SignalResponseLocationSpoofing type: object + additionalProperties: false properties: data: $ref: '#/components/schemas/LocationSpoofingResult' @@ -4943,9 +1386,12 @@ components: rawDeviceAttributes: title: SignalResponseRawDeviceAttributes type: object + additionalProperties: false properties: data: $ref: '#/components/schemas/RawDeviceAttributesResult' + error: + $ref: '#/components/schemas/ProductError' EventResponse: description: >- Contains results from all activated products - Fingerprint Pro, Bot @@ -4955,6 +1401,10 @@ components: properties: products: $ref: '#/components/schemas/ProductsResponse' + error: + $ref: '#/components/schemas/ProductError' + required: + - products IdentificationError: type: object additionalProperties: false @@ -4977,6 +1427,7 @@ components: - message BotdResult: type: object + additionalProperties: false description: Contains all the information from Bot Detection product properties: ip: @@ -5016,6 +1467,8 @@ components: - url - ip - time + - userAgent + - requestId BotdDetectionResult: type: object additionalProperties: false @@ -5059,6 +1512,9 @@ components: $ref: '#/components/schemas/ASN' datacenter: $ref: '#/components/schemas/DataCenter' + required: + - address + - geolocation v6: type: object additionalProperties: false @@ -5073,8 +1529,12 @@ components: $ref: '#/components/schemas/ASN' datacenter: $ref: '#/components/schemas/DataCenter' + required: + - address + - geolocation IpBlockListResult: type: object + additionalProperties: false properties: result: type: boolean @@ -5084,6 +1544,7 @@ components: example: false details: type: object + additionalProperties: false properties: emailSpam: type: boolean @@ -5093,8 +1554,15 @@ components: type: boolean description: IP address was part of a known network attack (SSH/HTTPS). example: false + required: + - emailSpam + - attackSource + required: + - result + - details VpnResult: type: object + additionalProperties: false properties: result: type: boolean @@ -5106,8 +1574,15 @@ components: type: string description: Local timezone which is used in timezoneMismatch method. example: Europe/Berlin + originCountry: + type: string + description: >- + Country of the request (only for Android SDK version >= 2.4.0, ISO + 3166 format or unknown). + example: unknown methods: type: object + additionalProperties: false properties: timezoneMismatch: type: boolean @@ -5127,8 +1602,17 @@ components: This method applies to mobile devices only. Indicates the result of additional methods used to detect a VPN in mobile devices. example: false + required: + - timezoneMismatch + - publicVPN + - auxiliaryMobile + required: + - result + - originTimezone + - methods TamperingResult: type: object + additionalProperties: false properties: result: type: boolean @@ -5145,8 +1629,12 @@ components: example: 0 minimum: 0 maximum: 1 + required: + - result + - anomalyScore HighActivityResult: type: object + additionalProperties: false properties: result: type: boolean @@ -5159,14 +1647,17 @@ components: description: Number of requests from the same visitor in the previous day. example: 10 minimum: 1 + required: + - result LocationSpoofingResult: type: object + additionalProperties: false properties: result: type: boolean description: >- - Flag indicating whether the request came from a device with location - spoofing enabled. + Flag indicating whether the request came from a mobile device with + location spoofing enabled. example: false required: - result @@ -5218,8 +1709,162 @@ components: type: object value: title: value + FactoryResetResult: + type: object + additionalProperties: false + properties: + time: + title: Time + description: > + Time in UTC when the most recent factory reset of the Android or iOS + device was done. If there is no sign of factory reset or the client + is not a mobile device, the field will contain the epoch time (1 + January 1970) in UTC. + type: string + format: date-time + example: '2022-06-09T22:58:36Z' + timestamp: + description: >- + Same value as it's in the `time` field but represented in timestamp + format. + type: integer + format: int64 + example: 1654815517198 + required: + - time + - timestamp + ClonedAppResult: + type: object + additionalProperties: false + properties: + result: + type: boolean + description: > + Android specific cloned application detection. There are 2 values: • + `true` - Presence of app cloners work detected (e.g. fully cloned + application found or launch of it inside of a not main working + profile detected). • `false` - No signs of cloned application + detected or the client is not Android. + example: false + required: + - result + EmulatorResult: + type: object + additionalProperties: false + properties: + result: + type: boolean + description: > + Android specific emulator detection. There are 2 values: • `true` - + Emulated environment detected (e.g. launch inside of AVD) • `false` + - No signs of emulated environment detected or the client is not + Android. + example: false + required: + - result + RootAppsResult: + type: object + additionalProperties: false + properties: + result: + type: boolean + description: > + Android specific root management apps detection. There are 2 values: + • `true` - Root Management Apps detected (e.g. Magisk) • `false` - + No Root Management Apps detected or the client isn't Android. + example: false + required: + - result + IncognitoResult: + type: object + additionalProperties: false + properties: + result: + type: boolean + description: > + `true` if we detected incognito mode used in the browser, `false` + otherwise. + example: false + required: + - result + JailbrokenResult: + type: object + additionalProperties: false + properties: + result: + type: boolean + description: > + iOS specific jailbreak detection. There are 2 values: • `true` - + Jailbreak detected • `false` - No signs of jailbreak or the client + is not iOS. + example: false + required: + - result + FridaResult: + type: object + additionalProperties: false + properties: + result: + type: boolean + description: > + [Frida](https://frida.re/docs/) detection for Android and iOS + devices. There are 2 values: • `true` - Frida detected • `false` - + No signs of Frida or the client is not a mobile device. + example: false + required: + - result + TorResult: + type: object + additionalProperties: false + properties: + result: + type: boolean + description: > + `true` if the request IP address is a known tor exit node, `false` + otherwise. + example: false + required: + - result + PrivacySettingsResult: + type: object + additionalProperties: false + properties: + result: + type: boolean + description: > + `true` if the request is from a privacy aware browser (e.g. Tor) or + from a browser in which fingerprinting is blocked. Otherwise + `false`. + example: false + required: + - result + VirtualMachineResult: + type: object + additionalProperties: false + properties: + result: + type: boolean + description: > + `true` if the request came from a browser running inside a virtual + machine (e.g. VMWare), `false` otherwise. + example: false + required: + - result + ProxyResult: + type: object + additionalProperties: false + properties: + result: + type: boolean + description: > + `true` if the request IP address is used by a public proxy provider, + `false` otherwise. + example: false + required: + - result ProductError: type: object + additionalProperties: false properties: code: type: string diff --git a/scripts/sync.sh b/scripts/sync.sh index 6ff985d..35e3e08 100755 --- a/scripts/sync.sh +++ b/scripts/sync.sh @@ -1,6 +1,6 @@ #!/bin/bash -curl -o ./res/fingerprint-server-api.yaml https://fingerprintjs.github.io/fingerprint-pro-server-api-openapi/schemes/fingerprint-server-api.yaml +curl -o ./res/fingerprint-server-api.yaml https://fingerprintjs.github.io/fingerprint-pro-server-api-openapi/schemas/fingerprint-server-api-compact.yaml examplesList=( 'visits_limit_500.json' diff --git a/src/main/java/com/fingerprint/api/FingerprintApi.java b/src/main/java/com/fingerprint/api/FingerprintApi.java index f54cb8d..57cae54 100644 --- a/src/main/java/com/fingerprint/api/FingerprintApi.java +++ b/src/main/java/com/fingerprint/api/FingerprintApi.java @@ -62,7 +62,7 @@ public void setApiClient(ApiClient apiClient) { /** * Get event by requestId - * This endpoint allows you to get a detailed analysis of an individual request. **Only for Enterprise customers:** Please note that the response includes mobile signals (e.g. `rootApps`) even if the request orignated from a non-mobile platform. It is highly recommended that you **ignore** the mobile signals for such requests. Use `requestId` as the URL path parameter. This API method is scoped to a request, i.e. all returned information is by `requestId`. + * This endpoint allows you to get a detailed analysis of an individual request. **Only for Enterprise customers:** Please note that the response includes mobile signals (e.g. `rootApps`) even if the request originated from a non-mobile platform. It is highly recommended that you **ignore** the mobile signals for such requests. Use `requestId` as the URL path parameter. This API method is scoped to a request, i.e. all returned information is by `requestId`. * @param requestId The unique [identifier](https://dev.fingerprint.com/docs/js-agent#requestid) of each analysis request. (required) * @return EventResponse * @throws ApiException if fails to make API call @@ -80,7 +80,7 @@ public EventResponse getEvent(String requestId) throws ApiException { /** * Get event by requestId - * This endpoint allows you to get a detailed analysis of an individual request. **Only for Enterprise customers:** Please note that the response includes mobile signals (e.g. `rootApps`) even if the request orignated from a non-mobile platform. It is highly recommended that you **ignore** the mobile signals for such requests. Use `requestId` as the URL path parameter. This API method is scoped to a request, i.e. all returned information is by `requestId`. + * This endpoint allows you to get a detailed analysis of an individual request. **Only for Enterprise customers:** Please note that the response includes mobile signals (e.g. `rootApps`) even if the request originated from a non-mobile platform. It is highly recommended that you **ignore** the mobile signals for such requests. Use `requestId` as the URL path parameter. This API method is scoped to a request, i.e. all returned information is by `requestId`. * @param requestId The unique [identifier](https://dev.fingerprint.com/docs/js-agent#requestid) of each analysis request. (required) * @return ApiResponse<EventResponse> * @throws ApiException if fails to make API call diff --git a/src/main/java/com/fingerprint/model/WebhookSignalResponseClonedApp.java b/src/main/java/com/fingerprint/model/ClonedAppResult.java similarity index 72% rename from src/main/java/com/fingerprint/model/WebhookSignalResponseClonedApp.java rename to src/main/java/com/fingerprint/model/ClonedAppResult.java index f1ad0bd..92421ae 100644 --- a/src/main/java/com/fingerprint/model/WebhookSignalResponseClonedApp.java +++ b/src/main/java/com/fingerprint/model/ClonedAppResult.java @@ -29,20 +29,20 @@ /** - * WebhookSignalResponseClonedApp + * ClonedAppResult */ @JsonPropertyOrder({ - WebhookSignalResponseClonedApp.JSON_PROPERTY_RESULT + ClonedAppResult.JSON_PROPERTY_RESULT }) @javax.annotation.Generated(value = "org.openapitools.codegen.languages.JavaClientCodegen") -public class WebhookSignalResponseClonedApp { +public class ClonedAppResult { public static final String JSON_PROPERTY_RESULT = "result"; private Boolean result; - public WebhookSignalResponseClonedApp() { + public ClonedAppResult() { } - public WebhookSignalResponseClonedApp result(Boolean result) { + public ClonedAppResult result(Boolean result) { this.result = result; return this; } @@ -51,10 +51,10 @@ public WebhookSignalResponseClonedApp result(Boolean result) { * Android specific cloned application detection. There are 2 values: • `true` - Presence of app cloners work detected (e.g. fully cloned application found or launch of it inside of a not main working profile detected). • `false` - No signs of cloned application detected or the client is not Android. * @return result **/ - @javax.annotation.Nullable - @ApiModelProperty(example = "false", value = "Android specific cloned application detection. There are 2 values: • `true` - Presence of app cloners work detected (e.g. fully cloned application found or launch of it inside of a not main working profile detected). • `false` - No signs of cloned application detected or the client is not Android. ") + @javax.annotation.Nonnull + @ApiModelProperty(example = "false", required = true, value = "Android specific cloned application detection. There are 2 values: • `true` - Presence of app cloners work detected (e.g. fully cloned application found or launch of it inside of a not main working profile detected). • `false` - No signs of cloned application detected or the client is not Android. ") @JsonProperty(JSON_PROPERTY_RESULT) - @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + @JsonInclude(value = JsonInclude.Include.ALWAYS) public Boolean getResult() { return result; @@ -62,14 +62,14 @@ public Boolean getResult() { @JsonProperty(JSON_PROPERTY_RESULT) - @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + @JsonInclude(value = JsonInclude.Include.ALWAYS) public void setResult(Boolean result) { this.result = result; } /** - * Return true if this WebhookSignalResponseClonedApp object is equal to o. + * Return true if this ClonedAppResult object is equal to o. */ @Override public boolean equals(Object o) { @@ -79,8 +79,8 @@ public boolean equals(Object o) { if (o == null || getClass() != o.getClass()) { return false; } - WebhookSignalResponseClonedApp webhookSignalResponseClonedApp = (WebhookSignalResponseClonedApp) o; - return Objects.equals(this.result, webhookSignalResponseClonedApp.result); + ClonedAppResult clonedAppResult = (ClonedAppResult) o; + return Objects.equals(this.result, clonedAppResult.result); } @Override @@ -91,7 +91,7 @@ public int hashCode() { @Override public String toString() { StringBuilder sb = new StringBuilder(); - sb.append("class WebhookSignalResponseClonedApp {\n"); + sb.append("class ClonedAppResult {\n"); sb.append(" result: ").append(toIndentedString(result)).append("\n"); sb.append("}"); return sb.toString(); diff --git a/src/main/java/com/fingerprint/model/SignalResponseEmulatorData.java b/src/main/java/com/fingerprint/model/EmulatorResult.java similarity index 73% rename from src/main/java/com/fingerprint/model/SignalResponseEmulatorData.java rename to src/main/java/com/fingerprint/model/EmulatorResult.java index 51fefe0..8b9398b 100644 --- a/src/main/java/com/fingerprint/model/SignalResponseEmulatorData.java +++ b/src/main/java/com/fingerprint/model/EmulatorResult.java @@ -29,21 +29,20 @@ /** - * SignalResponseEmulatorData + * EmulatorResult */ @JsonPropertyOrder({ - SignalResponseEmulatorData.JSON_PROPERTY_RESULT + EmulatorResult.JSON_PROPERTY_RESULT }) -@JsonTypeName("SignalResponseEmulator_data") @javax.annotation.Generated(value = "org.openapitools.codegen.languages.JavaClientCodegen") -public class SignalResponseEmulatorData { +public class EmulatorResult { public static final String JSON_PROPERTY_RESULT = "result"; private Boolean result; - public SignalResponseEmulatorData() { + public EmulatorResult() { } - public SignalResponseEmulatorData result(Boolean result) { + public EmulatorResult result(Boolean result) { this.result = result; return this; } @@ -52,10 +51,10 @@ public SignalResponseEmulatorData result(Boolean result) { * Android specific emulator detection. There are 2 values: • `true` - Emulated environment detected (e.g. launch inside of AVD) • `false` - No signs of emulated environment detected or the client is not Android. * @return result **/ - @javax.annotation.Nullable - @ApiModelProperty(example = "false", value = "Android specific emulator detection. There are 2 values: • `true` - Emulated environment detected (e.g. launch inside of AVD) • `false` - No signs of emulated environment detected or the client is not Android. ") + @javax.annotation.Nonnull + @ApiModelProperty(example = "false", required = true, value = "Android specific emulator detection. There are 2 values: • `true` - Emulated environment detected (e.g. launch inside of AVD) • `false` - No signs of emulated environment detected or the client is not Android. ") @JsonProperty(JSON_PROPERTY_RESULT) - @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + @JsonInclude(value = JsonInclude.Include.ALWAYS) public Boolean getResult() { return result; @@ -63,14 +62,14 @@ public Boolean getResult() { @JsonProperty(JSON_PROPERTY_RESULT) - @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + @JsonInclude(value = JsonInclude.Include.ALWAYS) public void setResult(Boolean result) { this.result = result; } /** - * Return true if this SignalResponseEmulator_data object is equal to o. + * Return true if this EmulatorResult object is equal to o. */ @Override public boolean equals(Object o) { @@ -80,8 +79,8 @@ public boolean equals(Object o) { if (o == null || getClass() != o.getClass()) { return false; } - SignalResponseEmulatorData signalResponseEmulatorData = (SignalResponseEmulatorData) o; - return Objects.equals(this.result, signalResponseEmulatorData.result); + EmulatorResult emulatorResult = (EmulatorResult) o; + return Objects.equals(this.result, emulatorResult.result); } @Override @@ -92,7 +91,7 @@ public int hashCode() { @Override public String toString() { StringBuilder sb = new StringBuilder(); - sb.append("class SignalResponseEmulatorData {\n"); + sb.append("class EmulatorResult {\n"); sb.append(" result: ").append(toIndentedString(result)).append("\n"); sb.append("}"); return sb.toString(); diff --git a/src/main/java/com/fingerprint/model/WebhookSignalResponseFactoryReset.java b/src/main/java/com/fingerprint/model/FactoryResetResult.java similarity index 65% rename from src/main/java/com/fingerprint/model/WebhookSignalResponseFactoryReset.java rename to src/main/java/com/fingerprint/model/FactoryResetResult.java index 21dc488..cc3ffcc 100644 --- a/src/main/java/com/fingerprint/model/WebhookSignalResponseFactoryReset.java +++ b/src/main/java/com/fingerprint/model/FactoryResetResult.java @@ -30,36 +30,36 @@ /** - * WebhookSignalResponseFactoryReset + * FactoryResetResult */ @JsonPropertyOrder({ - WebhookSignalResponseFactoryReset.JSON_PROPERTY_TIME, - WebhookSignalResponseFactoryReset.JSON_PROPERTY_TIMESTAMP + FactoryResetResult.JSON_PROPERTY_TIME, + FactoryResetResult.JSON_PROPERTY_TIMESTAMP }) @javax.annotation.Generated(value = "org.openapitools.codegen.languages.JavaClientCodegen") -public class WebhookSignalResponseFactoryReset { +public class FactoryResetResult { public static final String JSON_PROPERTY_TIME = "time"; private OffsetDateTime time; public static final String JSON_PROPERTY_TIMESTAMP = "timestamp"; private Long timestamp; - public WebhookSignalResponseFactoryReset() { + public FactoryResetResult() { } - public WebhookSignalResponseFactoryReset time(OffsetDateTime time) { + public FactoryResetResult time(OffsetDateTime time) { this.time = time; return this; } /** - * Time in UTC for the Android client when recent factory reset was done. If there is no sign of factory reset or the client isn't Android, the field will be epoch time. + * Time in UTC when the most recent factory reset of the Android or iOS device was done. If there is no sign of factory reset or the client is not a mobile device, the field will contain the epoch time (1 January 1970) in UTC. * @return time **/ - @javax.annotation.Nullable - @ApiModelProperty(example = "2022-06-09T22:58:36Z", value = "Time in UTC for the Android client when recent factory reset was done. If there is no sign of factory reset or the client isn't Android, the field will be epoch time. ") + @javax.annotation.Nonnull + @ApiModelProperty(example = "2022-06-09T22:58:36Z", required = true, value = "Time in UTC when the most recent factory reset of the Android or iOS device was done. If there is no sign of factory reset or the client is not a mobile device, the field will contain the epoch time (1 January 1970) in UTC. ") @JsonProperty(JSON_PROPERTY_TIME) - @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + @JsonInclude(value = JsonInclude.Include.ALWAYS) public OffsetDateTime getTime() { return time; @@ -67,13 +67,13 @@ public OffsetDateTime getTime() { @JsonProperty(JSON_PROPERTY_TIME) - @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + @JsonInclude(value = JsonInclude.Include.ALWAYS) public void setTime(OffsetDateTime time) { this.time = time; } - public WebhookSignalResponseFactoryReset timestamp(Long timestamp) { + public FactoryResetResult timestamp(Long timestamp) { this.timestamp = timestamp; return this; } @@ -82,10 +82,10 @@ public WebhookSignalResponseFactoryReset timestamp(Long timestamp) { * Same value as it's in the `time` field but represented in timestamp format. * @return timestamp **/ - @javax.annotation.Nullable - @ApiModelProperty(example = "1654815517198", value = "Same value as it's in the `time` field but represented in timestamp format.") + @javax.annotation.Nonnull + @ApiModelProperty(example = "1654815517198", required = true, value = "Same value as it's in the `time` field but represented in timestamp format.") @JsonProperty(JSON_PROPERTY_TIMESTAMP) - @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + @JsonInclude(value = JsonInclude.Include.ALWAYS) public Long getTimestamp() { return timestamp; @@ -93,14 +93,14 @@ public Long getTimestamp() { @JsonProperty(JSON_PROPERTY_TIMESTAMP) - @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + @JsonInclude(value = JsonInclude.Include.ALWAYS) public void setTimestamp(Long timestamp) { this.timestamp = timestamp; } /** - * Return true if this WebhookSignalResponseFactoryReset object is equal to o. + * Return true if this FactoryResetResult object is equal to o. */ @Override public boolean equals(Object o) { @@ -110,9 +110,9 @@ public boolean equals(Object o) { if (o == null || getClass() != o.getClass()) { return false; } - WebhookSignalResponseFactoryReset webhookSignalResponseFactoryReset = (WebhookSignalResponseFactoryReset) o; - return Objects.equals(this.time, webhookSignalResponseFactoryReset.time) && - Objects.equals(this.timestamp, webhookSignalResponseFactoryReset.timestamp); + FactoryResetResult factoryResetResult = (FactoryResetResult) o; + return Objects.equals(this.time, factoryResetResult.time) && + Objects.equals(this.timestamp, factoryResetResult.timestamp); } @Override @@ -123,7 +123,7 @@ public int hashCode() { @Override public String toString() { StringBuilder sb = new StringBuilder(); - sb.append("class WebhookSignalResponseFactoryReset {\n"); + sb.append("class FactoryResetResult {\n"); sb.append(" time: ").append(toIndentedString(time)).append("\n"); sb.append(" timestamp: ").append(toIndentedString(timestamp)).append("\n"); sb.append("}"); diff --git a/src/main/java/com/fingerprint/model/SignalResponseTorData.java b/src/main/java/com/fingerprint/model/FridaResult.java similarity index 72% rename from src/main/java/com/fingerprint/model/SignalResponseTorData.java rename to src/main/java/com/fingerprint/model/FridaResult.java index 38b4fa9..b086011 100644 --- a/src/main/java/com/fingerprint/model/SignalResponseTorData.java +++ b/src/main/java/com/fingerprint/model/FridaResult.java @@ -29,33 +29,32 @@ /** - * SignalResponseTorData + * FridaResult */ @JsonPropertyOrder({ - SignalResponseTorData.JSON_PROPERTY_RESULT + FridaResult.JSON_PROPERTY_RESULT }) -@JsonTypeName("SignalResponseTor_data") @javax.annotation.Generated(value = "org.openapitools.codegen.languages.JavaClientCodegen") -public class SignalResponseTorData { +public class FridaResult { public static final String JSON_PROPERTY_RESULT = "result"; private Boolean result; - public SignalResponseTorData() { + public FridaResult() { } - public SignalResponseTorData result(Boolean result) { + public FridaResult result(Boolean result) { this.result = result; return this; } /** - * `true` if the request IP address is a known tor exit node, `false` otherwise. + * [Frida](https://frida.re/docs/) detection for Android and iOS devices. There are 2 values: • `true` - Frida detected • `false` - No signs of Frida or the client is not a mobile device. * @return result **/ - @javax.annotation.Nullable - @ApiModelProperty(example = "false", value = "`true` if the request IP address is a known tor exit node, `false` otherwise. ") + @javax.annotation.Nonnull + @ApiModelProperty(example = "false", required = true, value = "[Frida](https://frida.re/docs/) detection for Android and iOS devices. There are 2 values: • `true` - Frida detected • `false` - No signs of Frida or the client is not a mobile device. ") @JsonProperty(JSON_PROPERTY_RESULT) - @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + @JsonInclude(value = JsonInclude.Include.ALWAYS) public Boolean getResult() { return result; @@ -63,14 +62,14 @@ public Boolean getResult() { @JsonProperty(JSON_PROPERTY_RESULT) - @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + @JsonInclude(value = JsonInclude.Include.ALWAYS) public void setResult(Boolean result) { this.result = result; } /** - * Return true if this SignalResponseTor_data object is equal to o. + * Return true if this FridaResult object is equal to o. */ @Override public boolean equals(Object o) { @@ -80,8 +79,8 @@ public boolean equals(Object o) { if (o == null || getClass() != o.getClass()) { return false; } - SignalResponseTorData signalResponseTorData = (SignalResponseTorData) o; - return Objects.equals(this.result, signalResponseTorData.result); + FridaResult fridaResult = (FridaResult) o; + return Objects.equals(this.result, fridaResult.result); } @Override @@ -92,7 +91,7 @@ public int hashCode() { @Override public String toString() { StringBuilder sb = new StringBuilder(); - sb.append("class SignalResponseTorData {\n"); + sb.append("class FridaResult {\n"); sb.append(" result: ").append(toIndentedString(result)).append("\n"); sb.append("}"); return sb.toString(); diff --git a/src/main/java/com/fingerprint/model/SignalResponseIncognitoData.java b/src/main/java/com/fingerprint/model/IncognitoResult.java similarity index 75% rename from src/main/java/com/fingerprint/model/SignalResponseIncognitoData.java rename to src/main/java/com/fingerprint/model/IncognitoResult.java index 9bf5f95..cc26b93 100644 --- a/src/main/java/com/fingerprint/model/SignalResponseIncognitoData.java +++ b/src/main/java/com/fingerprint/model/IncognitoResult.java @@ -29,21 +29,20 @@ /** - * SignalResponseIncognitoData + * IncognitoResult */ @JsonPropertyOrder({ - SignalResponseIncognitoData.JSON_PROPERTY_RESULT + IncognitoResult.JSON_PROPERTY_RESULT }) -@JsonTypeName("SignalResponseIncognito_data") @javax.annotation.Generated(value = "org.openapitools.codegen.languages.JavaClientCodegen") -public class SignalResponseIncognitoData { +public class IncognitoResult { public static final String JSON_PROPERTY_RESULT = "result"; private Boolean result; - public SignalResponseIncognitoData() { + public IncognitoResult() { } - public SignalResponseIncognitoData result(Boolean result) { + public IncognitoResult result(Boolean result) { this.result = result; return this; } @@ -52,10 +51,10 @@ public SignalResponseIncognitoData result(Boolean result) { * `true` if we detected incognito mode used in the browser, `false` otherwise. * @return result **/ - @javax.annotation.Nullable - @ApiModelProperty(example = "false", value = "`true` if we detected incognito mode used in the browser, `false` otherwise. ") + @javax.annotation.Nonnull + @ApiModelProperty(example = "false", required = true, value = "`true` if we detected incognito mode used in the browser, `false` otherwise. ") @JsonProperty(JSON_PROPERTY_RESULT) - @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + @JsonInclude(value = JsonInclude.Include.ALWAYS) public Boolean getResult() { return result; @@ -63,14 +62,14 @@ public Boolean getResult() { @JsonProperty(JSON_PROPERTY_RESULT) - @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + @JsonInclude(value = JsonInclude.Include.ALWAYS) public void setResult(Boolean result) { this.result = result; } /** - * Return true if this SignalResponseIncognito_data object is equal to o. + * Return true if this IncognitoResult object is equal to o. */ @Override public boolean equals(Object o) { @@ -80,8 +79,8 @@ public boolean equals(Object o) { if (o == null || getClass() != o.getClass()) { return false; } - SignalResponseIncognitoData signalResponseIncognitoData = (SignalResponseIncognitoData) o; - return Objects.equals(this.result, signalResponseIncognitoData.result); + IncognitoResult incognitoResult = (IncognitoResult) o; + return Objects.equals(this.result, incognitoResult.result); } @Override @@ -92,7 +91,7 @@ public int hashCode() { @Override public String toString() { StringBuilder sb = new StringBuilder(); - sb.append("class SignalResponseIncognitoData {\n"); + sb.append("class IncognitoResult {\n"); sb.append(" result: ").append(toIndentedString(result)).append("\n"); sb.append("}"); return sb.toString(); diff --git a/src/main/java/com/fingerprint/model/WebhookSignalResponseJailbroken.java b/src/main/java/com/fingerprint/model/JailbrokenResult.java similarity index 74% rename from src/main/java/com/fingerprint/model/WebhookSignalResponseJailbroken.java rename to src/main/java/com/fingerprint/model/JailbrokenResult.java index 13a408a..98ee250 100644 --- a/src/main/java/com/fingerprint/model/WebhookSignalResponseJailbroken.java +++ b/src/main/java/com/fingerprint/model/JailbrokenResult.java @@ -29,20 +29,20 @@ /** - * WebhookSignalResponseJailbroken + * JailbrokenResult */ @JsonPropertyOrder({ - WebhookSignalResponseJailbroken.JSON_PROPERTY_RESULT + JailbrokenResult.JSON_PROPERTY_RESULT }) @javax.annotation.Generated(value = "org.openapitools.codegen.languages.JavaClientCodegen") -public class WebhookSignalResponseJailbroken { +public class JailbrokenResult { public static final String JSON_PROPERTY_RESULT = "result"; private Boolean result; - public WebhookSignalResponseJailbroken() { + public JailbrokenResult() { } - public WebhookSignalResponseJailbroken result(Boolean result) { + public JailbrokenResult result(Boolean result) { this.result = result; return this; } @@ -51,10 +51,10 @@ public WebhookSignalResponseJailbroken result(Boolean result) { * iOS specific jailbreak detection. There are 2 values: • `true` - Jailbreak detected • `false` - No signs of jailbreak or the client is not iOS. * @return result **/ - @javax.annotation.Nullable - @ApiModelProperty(example = "false", value = "iOS specific jailbreak detection. There are 2 values: • `true` - Jailbreak detected • `false` - No signs of jailbreak or the client is not iOS. ") + @javax.annotation.Nonnull + @ApiModelProperty(example = "false", required = true, value = "iOS specific jailbreak detection. There are 2 values: • `true` - Jailbreak detected • `false` - No signs of jailbreak or the client is not iOS. ") @JsonProperty(JSON_PROPERTY_RESULT) - @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + @JsonInclude(value = JsonInclude.Include.ALWAYS) public Boolean getResult() { return result; @@ -62,14 +62,14 @@ public Boolean getResult() { @JsonProperty(JSON_PROPERTY_RESULT) - @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + @JsonInclude(value = JsonInclude.Include.ALWAYS) public void setResult(Boolean result) { this.result = result; } /** - * Return true if this WebhookSignalResponseJailbroken object is equal to o. + * Return true if this JailbrokenResult object is equal to o. */ @Override public boolean equals(Object o) { @@ -79,8 +79,8 @@ public boolean equals(Object o) { if (o == null || getClass() != o.getClass()) { return false; } - WebhookSignalResponseJailbroken webhookSignalResponseJailbroken = (WebhookSignalResponseJailbroken) o; - return Objects.equals(this.result, webhookSignalResponseJailbroken.result); + JailbrokenResult jailbrokenResult = (JailbrokenResult) o; + return Objects.equals(this.result, jailbrokenResult.result); } @Override @@ -91,7 +91,7 @@ public int hashCode() { @Override public String toString() { StringBuilder sb = new StringBuilder(); - sb.append("class WebhookSignalResponseJailbroken {\n"); + sb.append("class JailbrokenResult {\n"); sb.append(" result: ").append(toIndentedString(result)).append("\n"); sb.append("}"); return sb.toString(); diff --git a/src/main/java/com/fingerprint/model/WebhookSignalResponsePrivacySettings.java b/src/main/java/com/fingerprint/model/PrivacySettingsResult.java similarity index 73% rename from src/main/java/com/fingerprint/model/WebhookSignalResponsePrivacySettings.java rename to src/main/java/com/fingerprint/model/PrivacySettingsResult.java index f01587b..9405efe 100644 --- a/src/main/java/com/fingerprint/model/WebhookSignalResponsePrivacySettings.java +++ b/src/main/java/com/fingerprint/model/PrivacySettingsResult.java @@ -29,20 +29,20 @@ /** - * WebhookSignalResponsePrivacySettings + * PrivacySettingsResult */ @JsonPropertyOrder({ - WebhookSignalResponsePrivacySettings.JSON_PROPERTY_RESULT + PrivacySettingsResult.JSON_PROPERTY_RESULT }) @javax.annotation.Generated(value = "org.openapitools.codegen.languages.JavaClientCodegen") -public class WebhookSignalResponsePrivacySettings { +public class PrivacySettingsResult { public static final String JSON_PROPERTY_RESULT = "result"; private Boolean result; - public WebhookSignalResponsePrivacySettings() { + public PrivacySettingsResult() { } - public WebhookSignalResponsePrivacySettings result(Boolean result) { + public PrivacySettingsResult result(Boolean result) { this.result = result; return this; } @@ -51,10 +51,10 @@ public WebhookSignalResponsePrivacySettings result(Boolean result) { * `true` if the request is from a privacy aware browser (e.g. Tor) or from a browser in which fingerprinting is blocked. Otherwise `false`. * @return result **/ - @javax.annotation.Nullable - @ApiModelProperty(example = "false", value = "`true` if the request is from a privacy aware browser (e.g. Tor) or from a browser in which fingerprinting is blocked. Otherwise `false`. ") + @javax.annotation.Nonnull + @ApiModelProperty(example = "false", required = true, value = "`true` if the request is from a privacy aware browser (e.g. Tor) or from a browser in which fingerprinting is blocked. Otherwise `false`. ") @JsonProperty(JSON_PROPERTY_RESULT) - @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + @JsonInclude(value = JsonInclude.Include.ALWAYS) public Boolean getResult() { return result; @@ -62,14 +62,14 @@ public Boolean getResult() { @JsonProperty(JSON_PROPERTY_RESULT) - @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + @JsonInclude(value = JsonInclude.Include.ALWAYS) public void setResult(Boolean result) { this.result = result; } /** - * Return true if this WebhookSignalResponsePrivacySettings object is equal to o. + * Return true if this PrivacySettingsResult object is equal to o. */ @Override public boolean equals(Object o) { @@ -79,8 +79,8 @@ public boolean equals(Object o) { if (o == null || getClass() != o.getClass()) { return false; } - WebhookSignalResponsePrivacySettings webhookSignalResponsePrivacySettings = (WebhookSignalResponsePrivacySettings) o; - return Objects.equals(this.result, webhookSignalResponsePrivacySettings.result); + PrivacySettingsResult privacySettingsResult = (PrivacySettingsResult) o; + return Objects.equals(this.result, privacySettingsResult.result); } @Override @@ -91,7 +91,7 @@ public int hashCode() { @Override public String toString() { StringBuilder sb = new StringBuilder(); - sb.append("class WebhookSignalResponsePrivacySettings {\n"); + sb.append("class PrivacySettingsResult {\n"); sb.append(" result: ").append(toIndentedString(result)).append("\n"); sb.append("}"); return sb.toString(); diff --git a/src/main/java/com/fingerprint/model/WebhookSignalResponseProxy.java b/src/main/java/com/fingerprint/model/ProxyResult.java similarity index 76% rename from src/main/java/com/fingerprint/model/WebhookSignalResponseProxy.java rename to src/main/java/com/fingerprint/model/ProxyResult.java index 9e4aab3..16e2326 100644 --- a/src/main/java/com/fingerprint/model/WebhookSignalResponseProxy.java +++ b/src/main/java/com/fingerprint/model/ProxyResult.java @@ -29,20 +29,20 @@ /** - * WebhookSignalResponseProxy + * ProxyResult */ @JsonPropertyOrder({ - WebhookSignalResponseProxy.JSON_PROPERTY_RESULT + ProxyResult.JSON_PROPERTY_RESULT }) @javax.annotation.Generated(value = "org.openapitools.codegen.languages.JavaClientCodegen") -public class WebhookSignalResponseProxy { +public class ProxyResult { public static final String JSON_PROPERTY_RESULT = "result"; private Boolean result; - public WebhookSignalResponseProxy() { + public ProxyResult() { } - public WebhookSignalResponseProxy result(Boolean result) { + public ProxyResult result(Boolean result) { this.result = result; return this; } @@ -51,10 +51,10 @@ public WebhookSignalResponseProxy result(Boolean result) { * `true` if the request IP address is used by a public proxy provider, `false` otherwise. * @return result **/ - @javax.annotation.Nullable - @ApiModelProperty(example = "false", value = "`true` if the request IP address is used by a public proxy provider, `false` otherwise. ") + @javax.annotation.Nonnull + @ApiModelProperty(example = "false", required = true, value = "`true` if the request IP address is used by a public proxy provider, `false` otherwise. ") @JsonProperty(JSON_PROPERTY_RESULT) - @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + @JsonInclude(value = JsonInclude.Include.ALWAYS) public Boolean getResult() { return result; @@ -62,14 +62,14 @@ public Boolean getResult() { @JsonProperty(JSON_PROPERTY_RESULT) - @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + @JsonInclude(value = JsonInclude.Include.ALWAYS) public void setResult(Boolean result) { this.result = result; } /** - * Return true if this WebhookSignalResponseProxy object is equal to o. + * Return true if this ProxyResult object is equal to o. */ @Override public boolean equals(Object o) { @@ -79,8 +79,8 @@ public boolean equals(Object o) { if (o == null || getClass() != o.getClass()) { return false; } - WebhookSignalResponseProxy webhookSignalResponseProxy = (WebhookSignalResponseProxy) o; - return Objects.equals(this.result, webhookSignalResponseProxy.result); + ProxyResult proxyResult = (ProxyResult) o; + return Objects.equals(this.result, proxyResult.result); } @Override @@ -91,7 +91,7 @@ public int hashCode() { @Override public String toString() { StringBuilder sb = new StringBuilder(); - sb.append("class WebhookSignalResponseProxy {\n"); + sb.append("class ProxyResult {\n"); sb.append(" result: ").append(toIndentedString(result)).append("\n"); sb.append("}"); return sb.toString(); diff --git a/src/main/java/com/fingerprint/model/WebhookSignalResponseRootApps.java b/src/main/java/com/fingerprint/model/RootAppsResult.java similarity index 73% rename from src/main/java/com/fingerprint/model/WebhookSignalResponseRootApps.java rename to src/main/java/com/fingerprint/model/RootAppsResult.java index d931e64..7c5cfae 100644 --- a/src/main/java/com/fingerprint/model/WebhookSignalResponseRootApps.java +++ b/src/main/java/com/fingerprint/model/RootAppsResult.java @@ -29,20 +29,20 @@ /** - * WebhookSignalResponseRootApps + * RootAppsResult */ @JsonPropertyOrder({ - WebhookSignalResponseRootApps.JSON_PROPERTY_RESULT + RootAppsResult.JSON_PROPERTY_RESULT }) @javax.annotation.Generated(value = "org.openapitools.codegen.languages.JavaClientCodegen") -public class WebhookSignalResponseRootApps { +public class RootAppsResult { public static final String JSON_PROPERTY_RESULT = "result"; private Boolean result; - public WebhookSignalResponseRootApps() { + public RootAppsResult() { } - public WebhookSignalResponseRootApps result(Boolean result) { + public RootAppsResult result(Boolean result) { this.result = result; return this; } @@ -51,10 +51,10 @@ public WebhookSignalResponseRootApps result(Boolean result) { * Android specific root management apps detection. There are 2 values: • `true` - Root Management Apps detected (e.g. Magisk) • `false` - No Root Management Apps detected or the client isn't Android. * @return result **/ - @javax.annotation.Nullable - @ApiModelProperty(example = "false", value = "Android specific root management apps detection. There are 2 values: • `true` - Root Management Apps detected (e.g. Magisk) • `false` - No Root Management Apps detected or the client isn't Android. ") + @javax.annotation.Nonnull + @ApiModelProperty(example = "false", required = true, value = "Android specific root management apps detection. There are 2 values: • `true` - Root Management Apps detected (e.g. Magisk) • `false` - No Root Management Apps detected or the client isn't Android. ") @JsonProperty(JSON_PROPERTY_RESULT) - @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + @JsonInclude(value = JsonInclude.Include.ALWAYS) public Boolean getResult() { return result; @@ -62,14 +62,14 @@ public Boolean getResult() { @JsonProperty(JSON_PROPERTY_RESULT) - @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + @JsonInclude(value = JsonInclude.Include.ALWAYS) public void setResult(Boolean result) { this.result = result; } /** - * Return true if this WebhookSignalResponseRootApps object is equal to o. + * Return true if this RootAppsResult object is equal to o. */ @Override public boolean equals(Object o) { @@ -79,8 +79,8 @@ public boolean equals(Object o) { if (o == null || getClass() != o.getClass()) { return false; } - WebhookSignalResponseRootApps webhookSignalResponseRootApps = (WebhookSignalResponseRootApps) o; - return Objects.equals(this.result, webhookSignalResponseRootApps.result); + RootAppsResult rootAppsResult = (RootAppsResult) o; + return Objects.equals(this.result, rootAppsResult.result); } @Override @@ -91,7 +91,7 @@ public int hashCode() { @Override public String toString() { StringBuilder sb = new StringBuilder(); - sb.append("class WebhookSignalResponseRootApps {\n"); + sb.append("class RootAppsResult {\n"); sb.append(" result: ").append(toIndentedString(result)).append("\n"); sb.append("}"); return sb.toString(); diff --git a/src/main/java/com/fingerprint/model/SignalResponseClonedApp.java b/src/main/java/com/fingerprint/model/SignalResponseClonedApp.java index e9fb869..699cc59 100644 --- a/src/main/java/com/fingerprint/model/SignalResponseClonedApp.java +++ b/src/main/java/com/fingerprint/model/SignalResponseClonedApp.java @@ -22,8 +22,8 @@ import com.fasterxml.jackson.annotation.JsonCreator; import com.fasterxml.jackson.annotation.JsonTypeName; import com.fasterxml.jackson.annotation.JsonValue; +import com.fingerprint.model.ClonedAppResult; import com.fingerprint.model.ProductError; -import com.fingerprint.model.SignalResponseClonedAppData; import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModelProperty; import com.fasterxml.jackson.annotation.JsonPropertyOrder; @@ -40,7 +40,7 @@ @javax.annotation.Generated(value = "org.openapitools.codegen.languages.JavaClientCodegen") public class SignalResponseClonedApp { public static final String JSON_PROPERTY_DATA = "data"; - private SignalResponseClonedAppData data; + private ClonedAppResult data; public static final String JSON_PROPERTY_ERROR = "error"; private ProductError error; @@ -48,7 +48,7 @@ public class SignalResponseClonedApp { public SignalResponseClonedApp() { } - public SignalResponseClonedApp data(SignalResponseClonedAppData data) { + public SignalResponseClonedApp data(ClonedAppResult data) { this.data = data; return this; } @@ -62,14 +62,14 @@ public SignalResponseClonedApp data(SignalResponseClonedAppData data) { @JsonProperty(JSON_PROPERTY_DATA) @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) - public SignalResponseClonedAppData getData() { + public ClonedAppResult getData() { return data; } @JsonProperty(JSON_PROPERTY_DATA) @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) - public void setData(SignalResponseClonedAppData data) { + public void setData(ClonedAppResult data) { this.data = data; } diff --git a/src/main/java/com/fingerprint/model/SignalResponseClonedAppData.java b/src/main/java/com/fingerprint/model/SignalResponseClonedAppData.java deleted file mode 100644 index 3589bdc..0000000 --- a/src/main/java/com/fingerprint/model/SignalResponseClonedAppData.java +++ /dev/null @@ -1,113 +0,0 @@ -/* - * Fingerprint Pro Server API - * Fingerprint Pro Server API allows you to get information about visitors and about individual events in a server environment. It can be used for data exports, decision-making, and data analysis scenarios. Server API is intended for server-side usage, it's not intended to be used from the client side, whether it's a browser or a mobile device. - * - * The version of the OpenAPI document: 3 - * Contact: support@fingerprint.com - * - * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). - * https://openapi-generator.tech - * Do not edit the class manually. - */ - - -package com.fingerprint.model; - -import java.util.Objects; -import java.util.Arrays; -import java.util.Map; -import java.util.HashMap; -import com.fasterxml.jackson.annotation.JsonInclude; -import com.fasterxml.jackson.annotation.JsonProperty; -import com.fasterxml.jackson.annotation.JsonCreator; -import com.fasterxml.jackson.annotation.JsonTypeName; -import com.fasterxml.jackson.annotation.JsonValue; -import io.swagger.annotations.ApiModel; -import io.swagger.annotations.ApiModelProperty; -import com.fasterxml.jackson.annotation.JsonPropertyOrder; -import com.fingerprint.sdk.JSON; - - -/** - * SignalResponseClonedAppData - */ -@JsonPropertyOrder({ - SignalResponseClonedAppData.JSON_PROPERTY_RESULT -}) -@JsonTypeName("SignalResponseClonedApp_data") -@javax.annotation.Generated(value = "org.openapitools.codegen.languages.JavaClientCodegen") -public class SignalResponseClonedAppData { - public static final String JSON_PROPERTY_RESULT = "result"; - private Boolean result; - - public SignalResponseClonedAppData() { - } - - public SignalResponseClonedAppData result(Boolean result) { - this.result = result; - return this; - } - - /** - * Android specific cloned application detection. There are 2 values: • `true` - Presence of app cloners work detected (e.g. fully cloned application found or launch of it inside of a not main working profile detected). • `false` - No signs of cloned application detected or the client is not Android. - * @return result - **/ - @javax.annotation.Nullable - @ApiModelProperty(example = "false", value = "Android specific cloned application detection. There are 2 values: • `true` - Presence of app cloners work detected (e.g. fully cloned application found or launch of it inside of a not main working profile detected). • `false` - No signs of cloned application detected or the client is not Android. ") - @JsonProperty(JSON_PROPERTY_RESULT) - @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) - - public Boolean getResult() { - return result; - } - - - @JsonProperty(JSON_PROPERTY_RESULT) - @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) - public void setResult(Boolean result) { - this.result = result; - } - - - /** - * Return true if this SignalResponseClonedApp_data object is equal to o. - */ - @Override - public boolean equals(Object o) { - if (this == o) { - return true; - } - if (o == null || getClass() != o.getClass()) { - return false; - } - SignalResponseClonedAppData signalResponseClonedAppData = (SignalResponseClonedAppData) o; - return Objects.equals(this.result, signalResponseClonedAppData.result); - } - - @Override - public int hashCode() { - return Objects.hash(result); - } - - @Override - public String toString() { - StringBuilder sb = new StringBuilder(); - sb.append("class SignalResponseClonedAppData {\n"); - sb.append(" result: ").append(toIndentedString(result)).append("\n"); - sb.append("}"); - return sb.toString(); - } - - /** - * Convert the given object to string with each line indented by 4 spaces - * (except the first line). - */ - private String toIndentedString(Object o) { - if (o == null) { - return "null"; - } - return o.toString().replace("\n", "\n "); - } - -} - diff --git a/src/main/java/com/fingerprint/model/SignalResponseEmulator.java b/src/main/java/com/fingerprint/model/SignalResponseEmulator.java index 98293db..2641f28 100644 --- a/src/main/java/com/fingerprint/model/SignalResponseEmulator.java +++ b/src/main/java/com/fingerprint/model/SignalResponseEmulator.java @@ -22,8 +22,8 @@ import com.fasterxml.jackson.annotation.JsonCreator; import com.fasterxml.jackson.annotation.JsonTypeName; import com.fasterxml.jackson.annotation.JsonValue; +import com.fingerprint.model.EmulatorResult; import com.fingerprint.model.ProductError; -import com.fingerprint.model.SignalResponseEmulatorData; import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModelProperty; import com.fasterxml.jackson.annotation.JsonPropertyOrder; @@ -40,7 +40,7 @@ @javax.annotation.Generated(value = "org.openapitools.codegen.languages.JavaClientCodegen") public class SignalResponseEmulator { public static final String JSON_PROPERTY_DATA = "data"; - private SignalResponseEmulatorData data; + private EmulatorResult data; public static final String JSON_PROPERTY_ERROR = "error"; private ProductError error; @@ -48,7 +48,7 @@ public class SignalResponseEmulator { public SignalResponseEmulator() { } - public SignalResponseEmulator data(SignalResponseEmulatorData data) { + public SignalResponseEmulator data(EmulatorResult data) { this.data = data; return this; } @@ -62,14 +62,14 @@ public SignalResponseEmulator data(SignalResponseEmulatorData data) { @JsonProperty(JSON_PROPERTY_DATA) @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) - public SignalResponseEmulatorData getData() { + public EmulatorResult getData() { return data; } @JsonProperty(JSON_PROPERTY_DATA) @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) - public void setData(SignalResponseEmulatorData data) { + public void setData(EmulatorResult data) { this.data = data; } diff --git a/src/main/java/com/fingerprint/model/SignalResponseFactoryReset.java b/src/main/java/com/fingerprint/model/SignalResponseFactoryReset.java index 632739e..42168ae 100644 --- a/src/main/java/com/fingerprint/model/SignalResponseFactoryReset.java +++ b/src/main/java/com/fingerprint/model/SignalResponseFactoryReset.java @@ -22,8 +22,8 @@ import com.fasterxml.jackson.annotation.JsonCreator; import com.fasterxml.jackson.annotation.JsonTypeName; import com.fasterxml.jackson.annotation.JsonValue; +import com.fingerprint.model.FactoryResetResult; import com.fingerprint.model.ProductError; -import com.fingerprint.model.SignalResponseFactoryResetData; import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModelProperty; import com.fasterxml.jackson.annotation.JsonPropertyOrder; @@ -40,7 +40,7 @@ @javax.annotation.Generated(value = "org.openapitools.codegen.languages.JavaClientCodegen") public class SignalResponseFactoryReset { public static final String JSON_PROPERTY_DATA = "data"; - private SignalResponseFactoryResetData data; + private FactoryResetResult data; public static final String JSON_PROPERTY_ERROR = "error"; private ProductError error; @@ -48,7 +48,7 @@ public class SignalResponseFactoryReset { public SignalResponseFactoryReset() { } - public SignalResponseFactoryReset data(SignalResponseFactoryResetData data) { + public SignalResponseFactoryReset data(FactoryResetResult data) { this.data = data; return this; } @@ -62,14 +62,14 @@ public SignalResponseFactoryReset data(SignalResponseFactoryResetData data) { @JsonProperty(JSON_PROPERTY_DATA) @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) - public SignalResponseFactoryResetData getData() { + public FactoryResetResult getData() { return data; } @JsonProperty(JSON_PROPERTY_DATA) @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) - public void setData(SignalResponseFactoryResetData data) { + public void setData(FactoryResetResult data) { this.data = data; } diff --git a/src/main/java/com/fingerprint/model/SignalResponseFactoryResetData.java b/src/main/java/com/fingerprint/model/SignalResponseFactoryResetData.java deleted file mode 100644 index d01ab1a..0000000 --- a/src/main/java/com/fingerprint/model/SignalResponseFactoryResetData.java +++ /dev/null @@ -1,146 +0,0 @@ -/* - * Fingerprint Pro Server API - * Fingerprint Pro Server API allows you to get information about visitors and about individual events in a server environment. It can be used for data exports, decision-making, and data analysis scenarios. Server API is intended for server-side usage, it's not intended to be used from the client side, whether it's a browser or a mobile device. - * - * The version of the OpenAPI document: 3 - * Contact: support@fingerprint.com - * - * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). - * https://openapi-generator.tech - * Do not edit the class manually. - */ - - -package com.fingerprint.model; - -import java.util.Objects; -import java.util.Arrays; -import java.util.Map; -import java.util.HashMap; -import com.fasterxml.jackson.annotation.JsonInclude; -import com.fasterxml.jackson.annotation.JsonProperty; -import com.fasterxml.jackson.annotation.JsonCreator; -import com.fasterxml.jackson.annotation.JsonTypeName; -import com.fasterxml.jackson.annotation.JsonValue; -import io.swagger.annotations.ApiModel; -import io.swagger.annotations.ApiModelProperty; -import java.time.OffsetDateTime; -import com.fasterxml.jackson.annotation.JsonPropertyOrder; -import com.fingerprint.sdk.JSON; - - -/** - * SignalResponseFactoryResetData - */ -@JsonPropertyOrder({ - SignalResponseFactoryResetData.JSON_PROPERTY_TIME, - SignalResponseFactoryResetData.JSON_PROPERTY_TIMESTAMP -}) -@JsonTypeName("SignalResponseFactoryReset_data") -@javax.annotation.Generated(value = "org.openapitools.codegen.languages.JavaClientCodegen") -public class SignalResponseFactoryResetData { - public static final String JSON_PROPERTY_TIME = "time"; - private OffsetDateTime time; - - public static final String JSON_PROPERTY_TIMESTAMP = "timestamp"; - private Long timestamp; - - public SignalResponseFactoryResetData() { - } - - public SignalResponseFactoryResetData time(OffsetDateTime time) { - this.time = time; - return this; - } - - /** - * Time in UTC for the Android client when recent factory reset was done. If there is no sign of factory reset or the client isn't Android, the field will be epoch time. - * @return time - **/ - @javax.annotation.Nullable - @ApiModelProperty(example = "2022-06-09T22:58:36Z", value = "Time in UTC for the Android client when recent factory reset was done. If there is no sign of factory reset or the client isn't Android, the field will be epoch time. ") - @JsonProperty(JSON_PROPERTY_TIME) - @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) - - public OffsetDateTime getTime() { - return time; - } - - - @JsonProperty(JSON_PROPERTY_TIME) - @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) - public void setTime(OffsetDateTime time) { - this.time = time; - } - - - public SignalResponseFactoryResetData timestamp(Long timestamp) { - this.timestamp = timestamp; - return this; - } - - /** - * Same value as it's in the `time` field but represented in timestamp format. - * @return timestamp - **/ - @javax.annotation.Nullable - @ApiModelProperty(example = "1654815517198", value = "Same value as it's in the `time` field but represented in timestamp format.") - @JsonProperty(JSON_PROPERTY_TIMESTAMP) - @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) - - public Long getTimestamp() { - return timestamp; - } - - - @JsonProperty(JSON_PROPERTY_TIMESTAMP) - @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) - public void setTimestamp(Long timestamp) { - this.timestamp = timestamp; - } - - - /** - * Return true if this SignalResponseFactoryReset_data object is equal to o. - */ - @Override - public boolean equals(Object o) { - if (this == o) { - return true; - } - if (o == null || getClass() != o.getClass()) { - return false; - } - SignalResponseFactoryResetData signalResponseFactoryResetData = (SignalResponseFactoryResetData) o; - return Objects.equals(this.time, signalResponseFactoryResetData.time) && - Objects.equals(this.timestamp, signalResponseFactoryResetData.timestamp); - } - - @Override - public int hashCode() { - return Objects.hash(time, timestamp); - } - - @Override - public String toString() { - StringBuilder sb = new StringBuilder(); - sb.append("class SignalResponseFactoryResetData {\n"); - sb.append(" time: ").append(toIndentedString(time)).append("\n"); - sb.append(" timestamp: ").append(toIndentedString(timestamp)).append("\n"); - sb.append("}"); - return sb.toString(); - } - - /** - * Convert the given object to string with each line indented by 4 spaces - * (except the first line). - */ - private String toIndentedString(Object o) { - if (o == null) { - return "null"; - } - return o.toString().replace("\n", "\n "); - } - -} - diff --git a/src/main/java/com/fingerprint/model/SignalResponseFrida.java b/src/main/java/com/fingerprint/model/SignalResponseFrida.java index 54354b1..9ca8858 100644 --- a/src/main/java/com/fingerprint/model/SignalResponseFrida.java +++ b/src/main/java/com/fingerprint/model/SignalResponseFrida.java @@ -22,8 +22,8 @@ import com.fasterxml.jackson.annotation.JsonCreator; import com.fasterxml.jackson.annotation.JsonTypeName; import com.fasterxml.jackson.annotation.JsonValue; +import com.fingerprint.model.FridaResult; import com.fingerprint.model.ProductError; -import com.fingerprint.model.SignalResponseFridaData; import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModelProperty; import com.fasterxml.jackson.annotation.JsonPropertyOrder; @@ -40,7 +40,7 @@ @javax.annotation.Generated(value = "org.openapitools.codegen.languages.JavaClientCodegen") public class SignalResponseFrida { public static final String JSON_PROPERTY_DATA = "data"; - private SignalResponseFridaData data; + private FridaResult data; public static final String JSON_PROPERTY_ERROR = "error"; private ProductError error; @@ -48,7 +48,7 @@ public class SignalResponseFrida { public SignalResponseFrida() { } - public SignalResponseFrida data(SignalResponseFridaData data) { + public SignalResponseFrida data(FridaResult data) { this.data = data; return this; } @@ -62,14 +62,14 @@ public SignalResponseFrida data(SignalResponseFridaData data) { @JsonProperty(JSON_PROPERTY_DATA) @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) - public SignalResponseFridaData getData() { + public FridaResult getData() { return data; } @JsonProperty(JSON_PROPERTY_DATA) @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) - public void setData(SignalResponseFridaData data) { + public void setData(FridaResult data) { this.data = data; } diff --git a/src/main/java/com/fingerprint/model/SignalResponseFridaData.java b/src/main/java/com/fingerprint/model/SignalResponseFridaData.java deleted file mode 100644 index 8412f81..0000000 --- a/src/main/java/com/fingerprint/model/SignalResponseFridaData.java +++ /dev/null @@ -1,113 +0,0 @@ -/* - * Fingerprint Pro Server API - * Fingerprint Pro Server API allows you to get information about visitors and about individual events in a server environment. It can be used for data exports, decision-making, and data analysis scenarios. Server API is intended for server-side usage, it's not intended to be used from the client side, whether it's a browser or a mobile device. - * - * The version of the OpenAPI document: 3 - * Contact: support@fingerprint.com - * - * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). - * https://openapi-generator.tech - * Do not edit the class manually. - */ - - -package com.fingerprint.model; - -import java.util.Objects; -import java.util.Arrays; -import java.util.Map; -import java.util.HashMap; -import com.fasterxml.jackson.annotation.JsonInclude; -import com.fasterxml.jackson.annotation.JsonProperty; -import com.fasterxml.jackson.annotation.JsonCreator; -import com.fasterxml.jackson.annotation.JsonTypeName; -import com.fasterxml.jackson.annotation.JsonValue; -import io.swagger.annotations.ApiModel; -import io.swagger.annotations.ApiModelProperty; -import com.fasterxml.jackson.annotation.JsonPropertyOrder; -import com.fingerprint.sdk.JSON; - - -/** - * SignalResponseFridaData - */ -@JsonPropertyOrder({ - SignalResponseFridaData.JSON_PROPERTY_RESULT -}) -@JsonTypeName("SignalResponseFrida_data") -@javax.annotation.Generated(value = "org.openapitools.codegen.languages.JavaClientCodegen") -public class SignalResponseFridaData { - public static final String JSON_PROPERTY_RESULT = "result"; - private Boolean result; - - public SignalResponseFridaData() { - } - - public SignalResponseFridaData result(Boolean result) { - this.result = result; - return this; - } - - /** - * iOS specific [Frida](https://frida.re/docs/ios/) detection. There are 2 values: • `true` - Frida detected • `false` - No signs of Frida or the client is not iOS. - * @return result - **/ - @javax.annotation.Nullable - @ApiModelProperty(example = "false", value = "iOS specific [Frida](https://frida.re/docs/ios/) detection. There are 2 values: • `true` - Frida detected • `false` - No signs of Frida or the client is not iOS. ") - @JsonProperty(JSON_PROPERTY_RESULT) - @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) - - public Boolean getResult() { - return result; - } - - - @JsonProperty(JSON_PROPERTY_RESULT) - @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) - public void setResult(Boolean result) { - this.result = result; - } - - - /** - * Return true if this SignalResponseFrida_data object is equal to o. - */ - @Override - public boolean equals(Object o) { - if (this == o) { - return true; - } - if (o == null || getClass() != o.getClass()) { - return false; - } - SignalResponseFridaData signalResponseFridaData = (SignalResponseFridaData) o; - return Objects.equals(this.result, signalResponseFridaData.result); - } - - @Override - public int hashCode() { - return Objects.hash(result); - } - - @Override - public String toString() { - StringBuilder sb = new StringBuilder(); - sb.append("class SignalResponseFridaData {\n"); - sb.append(" result: ").append(toIndentedString(result)).append("\n"); - sb.append("}"); - return sb.toString(); - } - - /** - * Convert the given object to string with each line indented by 4 spaces - * (except the first line). - */ - private String toIndentedString(Object o) { - if (o == null) { - return "null"; - } - return o.toString().replace("\n", "\n "); - } - -} - diff --git a/src/main/java/com/fingerprint/model/SignalResponseIncognito.java b/src/main/java/com/fingerprint/model/SignalResponseIncognito.java index 241b951..a27502c 100644 --- a/src/main/java/com/fingerprint/model/SignalResponseIncognito.java +++ b/src/main/java/com/fingerprint/model/SignalResponseIncognito.java @@ -22,8 +22,8 @@ import com.fasterxml.jackson.annotation.JsonCreator; import com.fasterxml.jackson.annotation.JsonTypeName; import com.fasterxml.jackson.annotation.JsonValue; +import com.fingerprint.model.IncognitoResult; import com.fingerprint.model.ProductError; -import com.fingerprint.model.SignalResponseIncognitoData; import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModelProperty; import com.fasterxml.jackson.annotation.JsonPropertyOrder; @@ -40,7 +40,7 @@ @javax.annotation.Generated(value = "org.openapitools.codegen.languages.JavaClientCodegen") public class SignalResponseIncognito { public static final String JSON_PROPERTY_DATA = "data"; - private SignalResponseIncognitoData data; + private IncognitoResult data; public static final String JSON_PROPERTY_ERROR = "error"; private ProductError error; @@ -48,7 +48,7 @@ public class SignalResponseIncognito { public SignalResponseIncognito() { } - public SignalResponseIncognito data(SignalResponseIncognitoData data) { + public SignalResponseIncognito data(IncognitoResult data) { this.data = data; return this; } @@ -62,14 +62,14 @@ public SignalResponseIncognito data(SignalResponseIncognitoData data) { @JsonProperty(JSON_PROPERTY_DATA) @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) - public SignalResponseIncognitoData getData() { + public IncognitoResult getData() { return data; } @JsonProperty(JSON_PROPERTY_DATA) @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) - public void setData(SignalResponseIncognitoData data) { + public void setData(IncognitoResult data) { this.data = data; } diff --git a/src/main/java/com/fingerprint/model/SignalResponseJailbroken.java b/src/main/java/com/fingerprint/model/SignalResponseJailbroken.java index 28f8e63..b695fdf 100644 --- a/src/main/java/com/fingerprint/model/SignalResponseJailbroken.java +++ b/src/main/java/com/fingerprint/model/SignalResponseJailbroken.java @@ -22,8 +22,8 @@ import com.fasterxml.jackson.annotation.JsonCreator; import com.fasterxml.jackson.annotation.JsonTypeName; import com.fasterxml.jackson.annotation.JsonValue; +import com.fingerprint.model.JailbrokenResult; import com.fingerprint.model.ProductError; -import com.fingerprint.model.SignalResponseJailbrokenData; import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModelProperty; import com.fasterxml.jackson.annotation.JsonPropertyOrder; @@ -40,7 +40,7 @@ @javax.annotation.Generated(value = "org.openapitools.codegen.languages.JavaClientCodegen") public class SignalResponseJailbroken { public static final String JSON_PROPERTY_DATA = "data"; - private SignalResponseJailbrokenData data; + private JailbrokenResult data; public static final String JSON_PROPERTY_ERROR = "error"; private ProductError error; @@ -48,7 +48,7 @@ public class SignalResponseJailbroken { public SignalResponseJailbroken() { } - public SignalResponseJailbroken data(SignalResponseJailbrokenData data) { + public SignalResponseJailbroken data(JailbrokenResult data) { this.data = data; return this; } @@ -62,14 +62,14 @@ public SignalResponseJailbroken data(SignalResponseJailbrokenData data) { @JsonProperty(JSON_PROPERTY_DATA) @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) - public SignalResponseJailbrokenData getData() { + public JailbrokenResult getData() { return data; } @JsonProperty(JSON_PROPERTY_DATA) @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) - public void setData(SignalResponseJailbrokenData data) { + public void setData(JailbrokenResult data) { this.data = data; } diff --git a/src/main/java/com/fingerprint/model/SignalResponseJailbrokenData.java b/src/main/java/com/fingerprint/model/SignalResponseJailbrokenData.java deleted file mode 100644 index 5589ff7..0000000 --- a/src/main/java/com/fingerprint/model/SignalResponseJailbrokenData.java +++ /dev/null @@ -1,113 +0,0 @@ -/* - * Fingerprint Pro Server API - * Fingerprint Pro Server API allows you to get information about visitors and about individual events in a server environment. It can be used for data exports, decision-making, and data analysis scenarios. Server API is intended for server-side usage, it's not intended to be used from the client side, whether it's a browser or a mobile device. - * - * The version of the OpenAPI document: 3 - * Contact: support@fingerprint.com - * - * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). - * https://openapi-generator.tech - * Do not edit the class manually. - */ - - -package com.fingerprint.model; - -import java.util.Objects; -import java.util.Arrays; -import java.util.Map; -import java.util.HashMap; -import com.fasterxml.jackson.annotation.JsonInclude; -import com.fasterxml.jackson.annotation.JsonProperty; -import com.fasterxml.jackson.annotation.JsonCreator; -import com.fasterxml.jackson.annotation.JsonTypeName; -import com.fasterxml.jackson.annotation.JsonValue; -import io.swagger.annotations.ApiModel; -import io.swagger.annotations.ApiModelProperty; -import com.fasterxml.jackson.annotation.JsonPropertyOrder; -import com.fingerprint.sdk.JSON; - - -/** - * SignalResponseJailbrokenData - */ -@JsonPropertyOrder({ - SignalResponseJailbrokenData.JSON_PROPERTY_RESULT -}) -@JsonTypeName("SignalResponseJailbroken_data") -@javax.annotation.Generated(value = "org.openapitools.codegen.languages.JavaClientCodegen") -public class SignalResponseJailbrokenData { - public static final String JSON_PROPERTY_RESULT = "result"; - private Boolean result; - - public SignalResponseJailbrokenData() { - } - - public SignalResponseJailbrokenData result(Boolean result) { - this.result = result; - return this; - } - - /** - * iOS specific jailbreak detection. There are 2 values: • `true` - Jailbreak detected • `false` - No signs of jailbreak or the client is not iOS. - * @return result - **/ - @javax.annotation.Nullable - @ApiModelProperty(example = "false", value = "iOS specific jailbreak detection. There are 2 values: • `true` - Jailbreak detected • `false` - No signs of jailbreak or the client is not iOS. ") - @JsonProperty(JSON_PROPERTY_RESULT) - @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) - - public Boolean getResult() { - return result; - } - - - @JsonProperty(JSON_PROPERTY_RESULT) - @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) - public void setResult(Boolean result) { - this.result = result; - } - - - /** - * Return true if this SignalResponseJailbroken_data object is equal to o. - */ - @Override - public boolean equals(Object o) { - if (this == o) { - return true; - } - if (o == null || getClass() != o.getClass()) { - return false; - } - SignalResponseJailbrokenData signalResponseJailbrokenData = (SignalResponseJailbrokenData) o; - return Objects.equals(this.result, signalResponseJailbrokenData.result); - } - - @Override - public int hashCode() { - return Objects.hash(result); - } - - @Override - public String toString() { - StringBuilder sb = new StringBuilder(); - sb.append("class SignalResponseJailbrokenData {\n"); - sb.append(" result: ").append(toIndentedString(result)).append("\n"); - sb.append("}"); - return sb.toString(); - } - - /** - * Convert the given object to string with each line indented by 4 spaces - * (except the first line). - */ - private String toIndentedString(Object o) { - if (o == null) { - return "null"; - } - return o.toString().replace("\n", "\n "); - } - -} - diff --git a/src/main/java/com/fingerprint/model/SignalResponsePrivacySettings.java b/src/main/java/com/fingerprint/model/SignalResponsePrivacySettings.java index 2aba4a5..1926c54 100644 --- a/src/main/java/com/fingerprint/model/SignalResponsePrivacySettings.java +++ b/src/main/java/com/fingerprint/model/SignalResponsePrivacySettings.java @@ -22,8 +22,8 @@ import com.fasterxml.jackson.annotation.JsonCreator; import com.fasterxml.jackson.annotation.JsonTypeName; import com.fasterxml.jackson.annotation.JsonValue; +import com.fingerprint.model.PrivacySettingsResult; import com.fingerprint.model.ProductError; -import com.fingerprint.model.SignalResponsePrivacySettingsData; import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModelProperty; import com.fasterxml.jackson.annotation.JsonPropertyOrder; @@ -40,7 +40,7 @@ @javax.annotation.Generated(value = "org.openapitools.codegen.languages.JavaClientCodegen") public class SignalResponsePrivacySettings { public static final String JSON_PROPERTY_DATA = "data"; - private SignalResponsePrivacySettingsData data; + private PrivacySettingsResult data; public static final String JSON_PROPERTY_ERROR = "error"; private ProductError error; @@ -48,7 +48,7 @@ public class SignalResponsePrivacySettings { public SignalResponsePrivacySettings() { } - public SignalResponsePrivacySettings data(SignalResponsePrivacySettingsData data) { + public SignalResponsePrivacySettings data(PrivacySettingsResult data) { this.data = data; return this; } @@ -62,14 +62,14 @@ public SignalResponsePrivacySettings data(SignalResponsePrivacySettingsData data @JsonProperty(JSON_PROPERTY_DATA) @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) - public SignalResponsePrivacySettingsData getData() { + public PrivacySettingsResult getData() { return data; } @JsonProperty(JSON_PROPERTY_DATA) @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) - public void setData(SignalResponsePrivacySettingsData data) { + public void setData(PrivacySettingsResult data) { this.data = data; } diff --git a/src/main/java/com/fingerprint/model/SignalResponsePrivacySettingsData.java b/src/main/java/com/fingerprint/model/SignalResponsePrivacySettingsData.java deleted file mode 100644 index 46dfd2e..0000000 --- a/src/main/java/com/fingerprint/model/SignalResponsePrivacySettingsData.java +++ /dev/null @@ -1,113 +0,0 @@ -/* - * Fingerprint Pro Server API - * Fingerprint Pro Server API allows you to get information about visitors and about individual events in a server environment. It can be used for data exports, decision-making, and data analysis scenarios. Server API is intended for server-side usage, it's not intended to be used from the client side, whether it's a browser or a mobile device. - * - * The version of the OpenAPI document: 3 - * Contact: support@fingerprint.com - * - * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). - * https://openapi-generator.tech - * Do not edit the class manually. - */ - - -package com.fingerprint.model; - -import java.util.Objects; -import java.util.Arrays; -import java.util.Map; -import java.util.HashMap; -import com.fasterxml.jackson.annotation.JsonInclude; -import com.fasterxml.jackson.annotation.JsonProperty; -import com.fasterxml.jackson.annotation.JsonCreator; -import com.fasterxml.jackson.annotation.JsonTypeName; -import com.fasterxml.jackson.annotation.JsonValue; -import io.swagger.annotations.ApiModel; -import io.swagger.annotations.ApiModelProperty; -import com.fasterxml.jackson.annotation.JsonPropertyOrder; -import com.fingerprint.sdk.JSON; - - -/** - * SignalResponsePrivacySettingsData - */ -@JsonPropertyOrder({ - SignalResponsePrivacySettingsData.JSON_PROPERTY_RESULT -}) -@JsonTypeName("SignalResponsePrivacySettings_data") -@javax.annotation.Generated(value = "org.openapitools.codegen.languages.JavaClientCodegen") -public class SignalResponsePrivacySettingsData { - public static final String JSON_PROPERTY_RESULT = "result"; - private Boolean result; - - public SignalResponsePrivacySettingsData() { - } - - public SignalResponsePrivacySettingsData result(Boolean result) { - this.result = result; - return this; - } - - /** - * `true` if the request is from a privacy aware browser (e.g. Tor) or from a browser in which fingerprinting is blocked. Otherwise `false`. - * @return result - **/ - @javax.annotation.Nullable - @ApiModelProperty(example = "false", value = "`true` if the request is from a privacy aware browser (e.g. Tor) or from a browser in which fingerprinting is blocked. Otherwise `false`. ") - @JsonProperty(JSON_PROPERTY_RESULT) - @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) - - public Boolean getResult() { - return result; - } - - - @JsonProperty(JSON_PROPERTY_RESULT) - @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) - public void setResult(Boolean result) { - this.result = result; - } - - - /** - * Return true if this SignalResponsePrivacySettings_data object is equal to o. - */ - @Override - public boolean equals(Object o) { - if (this == o) { - return true; - } - if (o == null || getClass() != o.getClass()) { - return false; - } - SignalResponsePrivacySettingsData signalResponsePrivacySettingsData = (SignalResponsePrivacySettingsData) o; - return Objects.equals(this.result, signalResponsePrivacySettingsData.result); - } - - @Override - public int hashCode() { - return Objects.hash(result); - } - - @Override - public String toString() { - StringBuilder sb = new StringBuilder(); - sb.append("class SignalResponsePrivacySettingsData {\n"); - sb.append(" result: ").append(toIndentedString(result)).append("\n"); - sb.append("}"); - return sb.toString(); - } - - /** - * Convert the given object to string with each line indented by 4 spaces - * (except the first line). - */ - private String toIndentedString(Object o) { - if (o == null) { - return "null"; - } - return o.toString().replace("\n", "\n "); - } - -} - diff --git a/src/main/java/com/fingerprint/model/SignalResponseProxy.java b/src/main/java/com/fingerprint/model/SignalResponseProxy.java index caa9087..34a752d 100644 --- a/src/main/java/com/fingerprint/model/SignalResponseProxy.java +++ b/src/main/java/com/fingerprint/model/SignalResponseProxy.java @@ -23,7 +23,7 @@ import com.fasterxml.jackson.annotation.JsonTypeName; import com.fasterxml.jackson.annotation.JsonValue; import com.fingerprint.model.ProductError; -import com.fingerprint.model.SignalResponseProxyData; +import com.fingerprint.model.ProxyResult; import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModelProperty; import com.fasterxml.jackson.annotation.JsonPropertyOrder; @@ -40,7 +40,7 @@ @javax.annotation.Generated(value = "org.openapitools.codegen.languages.JavaClientCodegen") public class SignalResponseProxy { public static final String JSON_PROPERTY_DATA = "data"; - private SignalResponseProxyData data; + private ProxyResult data; public static final String JSON_PROPERTY_ERROR = "error"; private ProductError error; @@ -48,7 +48,7 @@ public class SignalResponseProxy { public SignalResponseProxy() { } - public SignalResponseProxy data(SignalResponseProxyData data) { + public SignalResponseProxy data(ProxyResult data) { this.data = data; return this; } @@ -62,14 +62,14 @@ public SignalResponseProxy data(SignalResponseProxyData data) { @JsonProperty(JSON_PROPERTY_DATA) @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) - public SignalResponseProxyData getData() { + public ProxyResult getData() { return data; } @JsonProperty(JSON_PROPERTY_DATA) @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) - public void setData(SignalResponseProxyData data) { + public void setData(ProxyResult data) { this.data = data; } diff --git a/src/main/java/com/fingerprint/model/SignalResponseProxyData.java b/src/main/java/com/fingerprint/model/SignalResponseProxyData.java deleted file mode 100644 index 275e10d..0000000 --- a/src/main/java/com/fingerprint/model/SignalResponseProxyData.java +++ /dev/null @@ -1,113 +0,0 @@ -/* - * Fingerprint Pro Server API - * Fingerprint Pro Server API allows you to get information about visitors and about individual events in a server environment. It can be used for data exports, decision-making, and data analysis scenarios. Server API is intended for server-side usage, it's not intended to be used from the client side, whether it's a browser or a mobile device. - * - * The version of the OpenAPI document: 3 - * Contact: support@fingerprint.com - * - * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). - * https://openapi-generator.tech - * Do not edit the class manually. - */ - - -package com.fingerprint.model; - -import java.util.Objects; -import java.util.Arrays; -import java.util.Map; -import java.util.HashMap; -import com.fasterxml.jackson.annotation.JsonInclude; -import com.fasterxml.jackson.annotation.JsonProperty; -import com.fasterxml.jackson.annotation.JsonCreator; -import com.fasterxml.jackson.annotation.JsonTypeName; -import com.fasterxml.jackson.annotation.JsonValue; -import io.swagger.annotations.ApiModel; -import io.swagger.annotations.ApiModelProperty; -import com.fasterxml.jackson.annotation.JsonPropertyOrder; -import com.fingerprint.sdk.JSON; - - -/** - * SignalResponseProxyData - */ -@JsonPropertyOrder({ - SignalResponseProxyData.JSON_PROPERTY_RESULT -}) -@JsonTypeName("SignalResponseProxy_data") -@javax.annotation.Generated(value = "org.openapitools.codegen.languages.JavaClientCodegen") -public class SignalResponseProxyData { - public static final String JSON_PROPERTY_RESULT = "result"; - private Boolean result; - - public SignalResponseProxyData() { - } - - public SignalResponseProxyData result(Boolean result) { - this.result = result; - return this; - } - - /** - * `true` if the request IP address is used by a public proxy provider, `false` otherwise. - * @return result - **/ - @javax.annotation.Nullable - @ApiModelProperty(example = "false", value = "`true` if the request IP address is used by a public proxy provider, `false` otherwise. ") - @JsonProperty(JSON_PROPERTY_RESULT) - @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) - - public Boolean getResult() { - return result; - } - - - @JsonProperty(JSON_PROPERTY_RESULT) - @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) - public void setResult(Boolean result) { - this.result = result; - } - - - /** - * Return true if this SignalResponseProxy_data object is equal to o. - */ - @Override - public boolean equals(Object o) { - if (this == o) { - return true; - } - if (o == null || getClass() != o.getClass()) { - return false; - } - SignalResponseProxyData signalResponseProxyData = (SignalResponseProxyData) o; - return Objects.equals(this.result, signalResponseProxyData.result); - } - - @Override - public int hashCode() { - return Objects.hash(result); - } - - @Override - public String toString() { - StringBuilder sb = new StringBuilder(); - sb.append("class SignalResponseProxyData {\n"); - sb.append(" result: ").append(toIndentedString(result)).append("\n"); - sb.append("}"); - return sb.toString(); - } - - /** - * Convert the given object to string with each line indented by 4 spaces - * (except the first line). - */ - private String toIndentedString(Object o) { - if (o == null) { - return "null"; - } - return o.toString().replace("\n", "\n "); - } - -} - diff --git a/src/main/java/com/fingerprint/model/SignalResponseRootApps.java b/src/main/java/com/fingerprint/model/SignalResponseRootApps.java index c0c34e9..69f22ac 100644 --- a/src/main/java/com/fingerprint/model/SignalResponseRootApps.java +++ b/src/main/java/com/fingerprint/model/SignalResponseRootApps.java @@ -23,7 +23,7 @@ import com.fasterxml.jackson.annotation.JsonTypeName; import com.fasterxml.jackson.annotation.JsonValue; import com.fingerprint.model.ProductError; -import com.fingerprint.model.SignalResponseRootAppsData; +import com.fingerprint.model.RootAppsResult; import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModelProperty; import com.fasterxml.jackson.annotation.JsonPropertyOrder; @@ -40,7 +40,7 @@ @javax.annotation.Generated(value = "org.openapitools.codegen.languages.JavaClientCodegen") public class SignalResponseRootApps { public static final String JSON_PROPERTY_DATA = "data"; - private SignalResponseRootAppsData data; + private RootAppsResult data; public static final String JSON_PROPERTY_ERROR = "error"; private ProductError error; @@ -48,7 +48,7 @@ public class SignalResponseRootApps { public SignalResponseRootApps() { } - public SignalResponseRootApps data(SignalResponseRootAppsData data) { + public SignalResponseRootApps data(RootAppsResult data) { this.data = data; return this; } @@ -62,14 +62,14 @@ public SignalResponseRootApps data(SignalResponseRootAppsData data) { @JsonProperty(JSON_PROPERTY_DATA) @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) - public SignalResponseRootAppsData getData() { + public RootAppsResult getData() { return data; } @JsonProperty(JSON_PROPERTY_DATA) @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) - public void setData(SignalResponseRootAppsData data) { + public void setData(RootAppsResult data) { this.data = data; } diff --git a/src/main/java/com/fingerprint/model/SignalResponseRootAppsData.java b/src/main/java/com/fingerprint/model/SignalResponseRootAppsData.java deleted file mode 100644 index c6988ac..0000000 --- a/src/main/java/com/fingerprint/model/SignalResponseRootAppsData.java +++ /dev/null @@ -1,113 +0,0 @@ -/* - * Fingerprint Pro Server API - * Fingerprint Pro Server API allows you to get information about visitors and about individual events in a server environment. It can be used for data exports, decision-making, and data analysis scenarios. Server API is intended for server-side usage, it's not intended to be used from the client side, whether it's a browser or a mobile device. - * - * The version of the OpenAPI document: 3 - * Contact: support@fingerprint.com - * - * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). - * https://openapi-generator.tech - * Do not edit the class manually. - */ - - -package com.fingerprint.model; - -import java.util.Objects; -import java.util.Arrays; -import java.util.Map; -import java.util.HashMap; -import com.fasterxml.jackson.annotation.JsonInclude; -import com.fasterxml.jackson.annotation.JsonProperty; -import com.fasterxml.jackson.annotation.JsonCreator; -import com.fasterxml.jackson.annotation.JsonTypeName; -import com.fasterxml.jackson.annotation.JsonValue; -import io.swagger.annotations.ApiModel; -import io.swagger.annotations.ApiModelProperty; -import com.fasterxml.jackson.annotation.JsonPropertyOrder; -import com.fingerprint.sdk.JSON; - - -/** - * SignalResponseRootAppsData - */ -@JsonPropertyOrder({ - SignalResponseRootAppsData.JSON_PROPERTY_RESULT -}) -@JsonTypeName("SignalResponseRootApps_data") -@javax.annotation.Generated(value = "org.openapitools.codegen.languages.JavaClientCodegen") -public class SignalResponseRootAppsData { - public static final String JSON_PROPERTY_RESULT = "result"; - private Boolean result; - - public SignalResponseRootAppsData() { - } - - public SignalResponseRootAppsData result(Boolean result) { - this.result = result; - return this; - } - - /** - * Android specific root management apps detection. There are 2 values: • `true` - Root Management Apps detected (e.g. Magisk) • `false` - No Root Management Apps detected or the client is not Android. - * @return result - **/ - @javax.annotation.Nullable - @ApiModelProperty(example = "false", value = "Android specific root management apps detection. There are 2 values: • `true` - Root Management Apps detected (e.g. Magisk) • `false` - No Root Management Apps detected or the client is not Android. ") - @JsonProperty(JSON_PROPERTY_RESULT) - @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) - - public Boolean getResult() { - return result; - } - - - @JsonProperty(JSON_PROPERTY_RESULT) - @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) - public void setResult(Boolean result) { - this.result = result; - } - - - /** - * Return true if this SignalResponseRootApps_data object is equal to o. - */ - @Override - public boolean equals(Object o) { - if (this == o) { - return true; - } - if (o == null || getClass() != o.getClass()) { - return false; - } - SignalResponseRootAppsData signalResponseRootAppsData = (SignalResponseRootAppsData) o; - return Objects.equals(this.result, signalResponseRootAppsData.result); - } - - @Override - public int hashCode() { - return Objects.hash(result); - } - - @Override - public String toString() { - StringBuilder sb = new StringBuilder(); - sb.append("class SignalResponseRootAppsData {\n"); - sb.append(" result: ").append(toIndentedString(result)).append("\n"); - sb.append("}"); - return sb.toString(); - } - - /** - * Convert the given object to string with each line indented by 4 spaces - * (except the first line). - */ - private String toIndentedString(Object o) { - if (o == null) { - return "null"; - } - return o.toString().replace("\n", "\n "); - } - -} - diff --git a/src/main/java/com/fingerprint/model/SignalResponseTor.java b/src/main/java/com/fingerprint/model/SignalResponseTor.java index 8da2b13..7a691b1 100644 --- a/src/main/java/com/fingerprint/model/SignalResponseTor.java +++ b/src/main/java/com/fingerprint/model/SignalResponseTor.java @@ -23,7 +23,7 @@ import com.fasterxml.jackson.annotation.JsonTypeName; import com.fasterxml.jackson.annotation.JsonValue; import com.fingerprint.model.ProductError; -import com.fingerprint.model.SignalResponseTorData; +import com.fingerprint.model.TorResult; import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModelProperty; import com.fasterxml.jackson.annotation.JsonPropertyOrder; @@ -40,7 +40,7 @@ @javax.annotation.Generated(value = "org.openapitools.codegen.languages.JavaClientCodegen") public class SignalResponseTor { public static final String JSON_PROPERTY_DATA = "data"; - private SignalResponseTorData data; + private TorResult data; public static final String JSON_PROPERTY_ERROR = "error"; private ProductError error; @@ -48,7 +48,7 @@ public class SignalResponseTor { public SignalResponseTor() { } - public SignalResponseTor data(SignalResponseTorData data) { + public SignalResponseTor data(TorResult data) { this.data = data; return this; } @@ -62,14 +62,14 @@ public SignalResponseTor data(SignalResponseTorData data) { @JsonProperty(JSON_PROPERTY_DATA) @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) - public SignalResponseTorData getData() { + public TorResult getData() { return data; } @JsonProperty(JSON_PROPERTY_DATA) @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) - public void setData(SignalResponseTorData data) { + public void setData(TorResult data) { this.data = data; } diff --git a/src/main/java/com/fingerprint/model/SignalResponseVirtualMachine.java b/src/main/java/com/fingerprint/model/SignalResponseVirtualMachine.java index 60e7070..b7f944f 100644 --- a/src/main/java/com/fingerprint/model/SignalResponseVirtualMachine.java +++ b/src/main/java/com/fingerprint/model/SignalResponseVirtualMachine.java @@ -23,7 +23,7 @@ import com.fasterxml.jackson.annotation.JsonTypeName; import com.fasterxml.jackson.annotation.JsonValue; import com.fingerprint.model.ProductError; -import com.fingerprint.model.SignalResponseVirtualMachineData; +import com.fingerprint.model.VirtualMachineResult; import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModelProperty; import com.fasterxml.jackson.annotation.JsonPropertyOrder; @@ -40,7 +40,7 @@ @javax.annotation.Generated(value = "org.openapitools.codegen.languages.JavaClientCodegen") public class SignalResponseVirtualMachine { public static final String JSON_PROPERTY_DATA = "data"; - private SignalResponseVirtualMachineData data; + private VirtualMachineResult data; public static final String JSON_PROPERTY_ERROR = "error"; private ProductError error; @@ -48,7 +48,7 @@ public class SignalResponseVirtualMachine { public SignalResponseVirtualMachine() { } - public SignalResponseVirtualMachine data(SignalResponseVirtualMachineData data) { + public SignalResponseVirtualMachine data(VirtualMachineResult data) { this.data = data; return this; } @@ -62,14 +62,14 @@ public SignalResponseVirtualMachine data(SignalResponseVirtualMachineData data) @JsonProperty(JSON_PROPERTY_DATA) @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) - public SignalResponseVirtualMachineData getData() { + public VirtualMachineResult getData() { return data; } @JsonProperty(JSON_PROPERTY_DATA) @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) - public void setData(SignalResponseVirtualMachineData data) { + public void setData(VirtualMachineResult data) { this.data = data; } diff --git a/src/main/java/com/fingerprint/model/SignalResponseVirtualMachineData.java b/src/main/java/com/fingerprint/model/SignalResponseVirtualMachineData.java deleted file mode 100644 index 11f93fb..0000000 --- a/src/main/java/com/fingerprint/model/SignalResponseVirtualMachineData.java +++ /dev/null @@ -1,113 +0,0 @@ -/* - * Fingerprint Pro Server API - * Fingerprint Pro Server API allows you to get information about visitors and about individual events in a server environment. It can be used for data exports, decision-making, and data analysis scenarios. Server API is intended for server-side usage, it's not intended to be used from the client side, whether it's a browser or a mobile device. - * - * The version of the OpenAPI document: 3 - * Contact: support@fingerprint.com - * - * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). - * https://openapi-generator.tech - * Do not edit the class manually. - */ - - -package com.fingerprint.model; - -import java.util.Objects; -import java.util.Arrays; -import java.util.Map; -import java.util.HashMap; -import com.fasterxml.jackson.annotation.JsonInclude; -import com.fasterxml.jackson.annotation.JsonProperty; -import com.fasterxml.jackson.annotation.JsonCreator; -import com.fasterxml.jackson.annotation.JsonTypeName; -import com.fasterxml.jackson.annotation.JsonValue; -import io.swagger.annotations.ApiModel; -import io.swagger.annotations.ApiModelProperty; -import com.fasterxml.jackson.annotation.JsonPropertyOrder; -import com.fingerprint.sdk.JSON; - - -/** - * SignalResponseVirtualMachineData - */ -@JsonPropertyOrder({ - SignalResponseVirtualMachineData.JSON_PROPERTY_RESULT -}) -@JsonTypeName("SignalResponseVirtualMachine_data") -@javax.annotation.Generated(value = "org.openapitools.codegen.languages.JavaClientCodegen") -public class SignalResponseVirtualMachineData { - public static final String JSON_PROPERTY_RESULT = "result"; - private Boolean result; - - public SignalResponseVirtualMachineData() { - } - - public SignalResponseVirtualMachineData result(Boolean result) { - this.result = result; - return this; - } - - /** - * `true` if the request came from a browser running inside a virtual machine (e.g. VMWare), `false` otherwise. - * @return result - **/ - @javax.annotation.Nullable - @ApiModelProperty(example = "false", value = "`true` if the request came from a browser running inside a virtual machine (e.g. VMWare), `false` otherwise. ") - @JsonProperty(JSON_PROPERTY_RESULT) - @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) - - public Boolean getResult() { - return result; - } - - - @JsonProperty(JSON_PROPERTY_RESULT) - @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) - public void setResult(Boolean result) { - this.result = result; - } - - - /** - * Return true if this SignalResponseVirtualMachine_data object is equal to o. - */ - @Override - public boolean equals(Object o) { - if (this == o) { - return true; - } - if (o == null || getClass() != o.getClass()) { - return false; - } - SignalResponseVirtualMachineData signalResponseVirtualMachineData = (SignalResponseVirtualMachineData) o; - return Objects.equals(this.result, signalResponseVirtualMachineData.result); - } - - @Override - public int hashCode() { - return Objects.hash(result); - } - - @Override - public String toString() { - StringBuilder sb = new StringBuilder(); - sb.append("class SignalResponseVirtualMachineData {\n"); - sb.append(" result: ").append(toIndentedString(result)).append("\n"); - sb.append("}"); - return sb.toString(); - } - - /** - * Convert the given object to string with each line indented by 4 spaces - * (except the first line). - */ - private String toIndentedString(Object o) { - if (o == null) { - return "null"; - } - return o.toString().replace("\n", "\n "); - } - -} - diff --git a/src/main/java/com/fingerprint/model/WebhookSignalResponseTor.java b/src/main/java/com/fingerprint/model/TorResult.java similarity index 76% rename from src/main/java/com/fingerprint/model/WebhookSignalResponseTor.java rename to src/main/java/com/fingerprint/model/TorResult.java index 70e6488..fad598b 100644 --- a/src/main/java/com/fingerprint/model/WebhookSignalResponseTor.java +++ b/src/main/java/com/fingerprint/model/TorResult.java @@ -29,20 +29,20 @@ /** - * WebhookSignalResponseTor + * TorResult */ @JsonPropertyOrder({ - WebhookSignalResponseTor.JSON_PROPERTY_RESULT + TorResult.JSON_PROPERTY_RESULT }) @javax.annotation.Generated(value = "org.openapitools.codegen.languages.JavaClientCodegen") -public class WebhookSignalResponseTor { +public class TorResult { public static final String JSON_PROPERTY_RESULT = "result"; private Boolean result; - public WebhookSignalResponseTor() { + public TorResult() { } - public WebhookSignalResponseTor result(Boolean result) { + public TorResult result(Boolean result) { this.result = result; return this; } @@ -51,10 +51,10 @@ public WebhookSignalResponseTor result(Boolean result) { * `true` if the request IP address is a known tor exit node, `false` otherwise. * @return result **/ - @javax.annotation.Nullable - @ApiModelProperty(example = "false", value = "`true` if the request IP address is a known tor exit node, `false` otherwise. ") + @javax.annotation.Nonnull + @ApiModelProperty(example = "false", required = true, value = "`true` if the request IP address is a known tor exit node, `false` otherwise. ") @JsonProperty(JSON_PROPERTY_RESULT) - @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + @JsonInclude(value = JsonInclude.Include.ALWAYS) public Boolean getResult() { return result; @@ -62,14 +62,14 @@ public Boolean getResult() { @JsonProperty(JSON_PROPERTY_RESULT) - @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + @JsonInclude(value = JsonInclude.Include.ALWAYS) public void setResult(Boolean result) { this.result = result; } /** - * Return true if this WebhookSignalResponseTor object is equal to o. + * Return true if this TorResult object is equal to o. */ @Override public boolean equals(Object o) { @@ -79,8 +79,8 @@ public boolean equals(Object o) { if (o == null || getClass() != o.getClass()) { return false; } - WebhookSignalResponseTor webhookSignalResponseTor = (WebhookSignalResponseTor) o; - return Objects.equals(this.result, webhookSignalResponseTor.result); + TorResult torResult = (TorResult) o; + return Objects.equals(this.result, torResult.result); } @Override @@ -91,7 +91,7 @@ public int hashCode() { @Override public String toString() { StringBuilder sb = new StringBuilder(); - sb.append("class WebhookSignalResponseTor {\n"); + sb.append("class TorResult {\n"); sb.append(" result: ").append(toIndentedString(result)).append("\n"); sb.append("}"); return sb.toString(); diff --git a/src/main/java/com/fingerprint/model/WebhookSignalResponseVirtualMachine.java b/src/main/java/com/fingerprint/model/VirtualMachineResult.java similarity index 73% rename from src/main/java/com/fingerprint/model/WebhookSignalResponseVirtualMachine.java rename to src/main/java/com/fingerprint/model/VirtualMachineResult.java index 051d7bb..315b703 100644 --- a/src/main/java/com/fingerprint/model/WebhookSignalResponseVirtualMachine.java +++ b/src/main/java/com/fingerprint/model/VirtualMachineResult.java @@ -29,20 +29,20 @@ /** - * WebhookSignalResponseVirtualMachine + * VirtualMachineResult */ @JsonPropertyOrder({ - WebhookSignalResponseVirtualMachine.JSON_PROPERTY_RESULT + VirtualMachineResult.JSON_PROPERTY_RESULT }) @javax.annotation.Generated(value = "org.openapitools.codegen.languages.JavaClientCodegen") -public class WebhookSignalResponseVirtualMachine { +public class VirtualMachineResult { public static final String JSON_PROPERTY_RESULT = "result"; private Boolean result; - public WebhookSignalResponseVirtualMachine() { + public VirtualMachineResult() { } - public WebhookSignalResponseVirtualMachine result(Boolean result) { + public VirtualMachineResult result(Boolean result) { this.result = result; return this; } @@ -51,10 +51,10 @@ public WebhookSignalResponseVirtualMachine result(Boolean result) { * `true` if the request came from a browser running inside a virtual machine (e.g. VMWare), `false` otherwise. * @return result **/ - @javax.annotation.Nullable - @ApiModelProperty(example = "false", value = "`true` if the request came from a browser running inside a virtual machine (e.g. VMWare), `false` otherwise. ") + @javax.annotation.Nonnull + @ApiModelProperty(example = "false", required = true, value = "`true` if the request came from a browser running inside a virtual machine (e.g. VMWare), `false` otherwise. ") @JsonProperty(JSON_PROPERTY_RESULT) - @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + @JsonInclude(value = JsonInclude.Include.ALWAYS) public Boolean getResult() { return result; @@ -62,14 +62,14 @@ public Boolean getResult() { @JsonProperty(JSON_PROPERTY_RESULT) - @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + @JsonInclude(value = JsonInclude.Include.ALWAYS) public void setResult(Boolean result) { this.result = result; } /** - * Return true if this WebhookSignalResponseVirtualMachine object is equal to o. + * Return true if this VirtualMachineResult object is equal to o. */ @Override public boolean equals(Object o) { @@ -79,8 +79,8 @@ public boolean equals(Object o) { if (o == null || getClass() != o.getClass()) { return false; } - WebhookSignalResponseVirtualMachine webhookSignalResponseVirtualMachine = (WebhookSignalResponseVirtualMachine) o; - return Objects.equals(this.result, webhookSignalResponseVirtualMachine.result); + VirtualMachineResult virtualMachineResult = (VirtualMachineResult) o; + return Objects.equals(this.result, virtualMachineResult.result); } @Override @@ -91,7 +91,7 @@ public int hashCode() { @Override public String toString() { StringBuilder sb = new StringBuilder(); - sb.append("class WebhookSignalResponseVirtualMachine {\n"); + sb.append("class VirtualMachineResult {\n"); sb.append(" result: ").append(toIndentedString(result)).append("\n"); sb.append("}"); return sb.toString(); diff --git a/src/main/java/com/fingerprint/model/WebhookSignalResponseEmulator.java b/src/main/java/com/fingerprint/model/WebhookSignalResponseEmulator.java deleted file mode 100644 index 70da56d..0000000 --- a/src/main/java/com/fingerprint/model/WebhookSignalResponseEmulator.java +++ /dev/null @@ -1,112 +0,0 @@ -/* - * Fingerprint Pro Server API - * Fingerprint Pro Server API allows you to get information about visitors and about individual events in a server environment. It can be used for data exports, decision-making, and data analysis scenarios. Server API is intended for server-side usage, it's not intended to be used from the client side, whether it's a browser or a mobile device. - * - * The version of the OpenAPI document: 3 - * Contact: support@fingerprint.com - * - * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). - * https://openapi-generator.tech - * Do not edit the class manually. - */ - - -package com.fingerprint.model; - -import java.util.Objects; -import java.util.Arrays; -import java.util.Map; -import java.util.HashMap; -import com.fasterxml.jackson.annotation.JsonInclude; -import com.fasterxml.jackson.annotation.JsonProperty; -import com.fasterxml.jackson.annotation.JsonCreator; -import com.fasterxml.jackson.annotation.JsonTypeName; -import com.fasterxml.jackson.annotation.JsonValue; -import io.swagger.annotations.ApiModel; -import io.swagger.annotations.ApiModelProperty; -import com.fasterxml.jackson.annotation.JsonPropertyOrder; -import com.fingerprint.sdk.JSON; - - -/** - * WebhookSignalResponseEmulator - */ -@JsonPropertyOrder({ - WebhookSignalResponseEmulator.JSON_PROPERTY_RESULT -}) -@javax.annotation.Generated(value = "org.openapitools.codegen.languages.JavaClientCodegen") -public class WebhookSignalResponseEmulator { - public static final String JSON_PROPERTY_RESULT = "result"; - private Boolean result; - - public WebhookSignalResponseEmulator() { - } - - public WebhookSignalResponseEmulator result(Boolean result) { - this.result = result; - return this; - } - - /** - * Android specific emulator detection. There are 2 values: • `true` - Emulated environment detected (e.g. launch inside of AVD) • `false` - No signs of emulated environment detected or the client isn't Android. - * @return result - **/ - @javax.annotation.Nullable - @ApiModelProperty(example = "false", value = "Android specific emulator detection. There are 2 values: • `true` - Emulated environment detected (e.g. launch inside of AVD) • `false` - No signs of emulated environment detected or the client isn't Android. ") - @JsonProperty(JSON_PROPERTY_RESULT) - @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) - - public Boolean getResult() { - return result; - } - - - @JsonProperty(JSON_PROPERTY_RESULT) - @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) - public void setResult(Boolean result) { - this.result = result; - } - - - /** - * Return true if this WebhookSignalResponseEmulator object is equal to o. - */ - @Override - public boolean equals(Object o) { - if (this == o) { - return true; - } - if (o == null || getClass() != o.getClass()) { - return false; - } - WebhookSignalResponseEmulator webhookSignalResponseEmulator = (WebhookSignalResponseEmulator) o; - return Objects.equals(this.result, webhookSignalResponseEmulator.result); - } - - @Override - public int hashCode() { - return Objects.hash(result); - } - - @Override - public String toString() { - StringBuilder sb = new StringBuilder(); - sb.append("class WebhookSignalResponseEmulator {\n"); - sb.append(" result: ").append(toIndentedString(result)).append("\n"); - sb.append("}"); - return sb.toString(); - } - - /** - * Convert the given object to string with each line indented by 4 spaces - * (except the first line). - */ - private String toIndentedString(Object o) { - if (o == null) { - return "null"; - } - return o.toString().replace("\n", "\n "); - } - -} - diff --git a/src/main/java/com/fingerprint/model/WebhookSignalResponseFrida.java b/src/main/java/com/fingerprint/model/WebhookSignalResponseFrida.java deleted file mode 100644 index b64d444..0000000 --- a/src/main/java/com/fingerprint/model/WebhookSignalResponseFrida.java +++ /dev/null @@ -1,112 +0,0 @@ -/* - * Fingerprint Pro Server API - * Fingerprint Pro Server API allows you to get information about visitors and about individual events in a server environment. It can be used for data exports, decision-making, and data analysis scenarios. Server API is intended for server-side usage, it's not intended to be used from the client side, whether it's a browser or a mobile device. - * - * The version of the OpenAPI document: 3 - * Contact: support@fingerprint.com - * - * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). - * https://openapi-generator.tech - * Do not edit the class manually. - */ - - -package com.fingerprint.model; - -import java.util.Objects; -import java.util.Arrays; -import java.util.Map; -import java.util.HashMap; -import com.fasterxml.jackson.annotation.JsonInclude; -import com.fasterxml.jackson.annotation.JsonProperty; -import com.fasterxml.jackson.annotation.JsonCreator; -import com.fasterxml.jackson.annotation.JsonTypeName; -import com.fasterxml.jackson.annotation.JsonValue; -import io.swagger.annotations.ApiModel; -import io.swagger.annotations.ApiModelProperty; -import com.fasterxml.jackson.annotation.JsonPropertyOrder; -import com.fingerprint.sdk.JSON; - - -/** - * WebhookSignalResponseFrida - */ -@JsonPropertyOrder({ - WebhookSignalResponseFrida.JSON_PROPERTY_RESULT -}) -@javax.annotation.Generated(value = "org.openapitools.codegen.languages.JavaClientCodegen") -public class WebhookSignalResponseFrida { - public static final String JSON_PROPERTY_RESULT = "result"; - private Boolean result; - - public WebhookSignalResponseFrida() { - } - - public WebhookSignalResponseFrida result(Boolean result) { - this.result = result; - return this; - } - - /** - * iOS specific [Frida](https://frida.re/docs/ios/) detection. There are 2 values: • `true` - Frida detected • `false` - No signs of Frida or the client is not iOS. - * @return result - **/ - @javax.annotation.Nullable - @ApiModelProperty(example = "false", value = "iOS specific [Frida](https://frida.re/docs/ios/) detection. There are 2 values: • `true` - Frida detected • `false` - No signs of Frida or the client is not iOS. ") - @JsonProperty(JSON_PROPERTY_RESULT) - @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) - - public Boolean getResult() { - return result; - } - - - @JsonProperty(JSON_PROPERTY_RESULT) - @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) - public void setResult(Boolean result) { - this.result = result; - } - - - /** - * Return true if this WebhookSignalResponseFrida object is equal to o. - */ - @Override - public boolean equals(Object o) { - if (this == o) { - return true; - } - if (o == null || getClass() != o.getClass()) { - return false; - } - WebhookSignalResponseFrida webhookSignalResponseFrida = (WebhookSignalResponseFrida) o; - return Objects.equals(this.result, webhookSignalResponseFrida.result); - } - - @Override - public int hashCode() { - return Objects.hash(result); - } - - @Override - public String toString() { - StringBuilder sb = new StringBuilder(); - sb.append("class WebhookSignalResponseFrida {\n"); - sb.append(" result: ").append(toIndentedString(result)).append("\n"); - sb.append("}"); - return sb.toString(); - } - - /** - * Convert the given object to string with each line indented by 4 spaces - * (except the first line). - */ - private String toIndentedString(Object o) { - if (o == null) { - return "null"; - } - return o.toString().replace("\n", "\n "); - } - -} - diff --git a/src/main/java/com/fingerprint/model/WebhookVisit.java b/src/main/java/com/fingerprint/model/WebhookVisit.java index 36964fb..21dde8e 100644 --- a/src/main/java/com/fingerprint/model/WebhookVisit.java +++ b/src/main/java/com/fingerprint/model/WebhookVisit.java @@ -24,31 +24,27 @@ import com.fasterxml.jackson.annotation.JsonValue; import com.fingerprint.model.BotdDetectionResult; import com.fingerprint.model.BrowserDetails; +import com.fingerprint.model.ClonedAppResult; import com.fingerprint.model.Confidence; import com.fingerprint.model.DeprecatedIPLocation; import com.fingerprint.model.EmulatorResult; import com.fingerprint.model.FactoryResetResult; import com.fingerprint.model.FridaResult; import com.fingerprint.model.HighActivityResult; -import com.fingerprint.model.IPLocation; import com.fingerprint.model.IpBlockListResult; import com.fingerprint.model.IpInfoResult; +import com.fingerprint.model.JailbrokenResult; import com.fingerprint.model.LocationSpoofingResult; +import com.fingerprint.model.PrivacySettingsResult; +import com.fingerprint.model.ProxyResult; import com.fingerprint.model.RawDeviceAttributesResultValue; +import com.fingerprint.model.RootAppsResult; import com.fingerprint.model.SeenAt; import com.fingerprint.model.SuspectScoreResult; import com.fingerprint.model.TamperingResult; +import com.fingerprint.model.TorResult; +import com.fingerprint.model.VirtualMachineResult; import com.fingerprint.model.VpnResult; -import com.fingerprint.model.WebhookSignalResponseClonedApp; -import com.fingerprint.model.WebhookSignalResponseEmulator; -import com.fingerprint.model.WebhookSignalResponseFactoryReset; -import com.fingerprint.model.WebhookSignalResponseFrida; -import com.fingerprint.model.WebhookSignalResponseJailbroken; -import com.fingerprint.model.WebhookSignalResponsePrivacySettings; -import com.fingerprint.model.WebhookSignalResponseProxy; -import com.fingerprint.model.WebhookSignalResponseRootApps; -import com.fingerprint.model.WebhookSignalResponseTor; -import com.fingerprint.model.WebhookSignalResponseVirtualMachine; import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModelProperty; import java.net.URI; @@ -121,40 +117,40 @@ public class WebhookVisit { private Boolean incognito; public static final String JSON_PROPERTY_ROOT_APPS = "rootApps"; - private WebhookSignalResponseRootApps rootApps; + private RootAppsResult rootApps; public static final String JSON_PROPERTY_EMULATOR = "emulator"; - private WebhookSignalResponseEmulator emulator; + private EmulatorResult emulator; public static final String JSON_PROPERTY_CLONED_APP = "clonedApp"; - private WebhookSignalResponseClonedApp clonedApp; + private ClonedAppResult clonedApp; public static final String JSON_PROPERTY_FACTORY_RESET = "factoryReset"; - private WebhookSignalResponseFactoryReset factoryReset; + private FactoryResetResult factoryReset; public static final String JSON_PROPERTY_JAILBROKEN = "jailbroken"; - private WebhookSignalResponseJailbroken jailbroken; + private JailbrokenResult jailbroken; public static final String JSON_PROPERTY_FRIDA = "frida"; - private WebhookSignalResponseFrida frida; + private FridaResult frida; public static final String JSON_PROPERTY_IP_BLOCKLIST = "ipBlocklist"; private IpBlockListResult ipBlocklist; public static final String JSON_PROPERTY_TOR = "tor"; - private WebhookSignalResponseTor tor; + private TorResult tor; public static final String JSON_PROPERTY_PRIVACY_SETTINGS = "privacySettings"; - private WebhookSignalResponsePrivacySettings privacySettings; + private PrivacySettingsResult privacySettings; public static final String JSON_PROPERTY_VIRTUAL_MACHINE = "virtualMachine"; - private WebhookSignalResponseVirtualMachine virtualMachine; + private VirtualMachineResult virtualMachine; public static final String JSON_PROPERTY_VPN = "vpn"; private VpnResult vpn; public static final String JSON_PROPERTY_PROXY = "proxy"; - private WebhookSignalResponseProxy proxy; + private ProxyResult proxy; public static final String JSON_PROPERTY_TAMPERING = "tampering"; private TamperingResult tampering; @@ -369,7 +365,7 @@ public void setIncognito(Boolean incognito) { } - public WebhookVisit rootApps(WebhookSignalResponseRootApps rootApps) { + public WebhookVisit rootApps(RootAppsResult rootApps) { this.rootApps = rootApps; return this; } @@ -383,19 +379,19 @@ public WebhookVisit rootApps(WebhookSignalResponseRootApps rootApps) { @JsonProperty(JSON_PROPERTY_ROOT_APPS) @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) - public WebhookSignalResponseRootApps getRootApps() { + public RootAppsResult getRootApps() { return rootApps; } @JsonProperty(JSON_PROPERTY_ROOT_APPS) @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) - public void setRootApps(WebhookSignalResponseRootApps rootApps) { + public void setRootApps(RootAppsResult rootApps) { this.rootApps = rootApps; } - public WebhookVisit emulator(WebhookSignalResponseEmulator emulator) { + public WebhookVisit emulator(EmulatorResult emulator) { this.emulator = emulator; return this; } @@ -409,19 +405,19 @@ public WebhookVisit emulator(WebhookSignalResponseEmulator emulator) { @JsonProperty(JSON_PROPERTY_EMULATOR) @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) - public WebhookSignalResponseEmulator getEmulator() { + public EmulatorResult getEmulator() { return emulator; } @JsonProperty(JSON_PROPERTY_EMULATOR) @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) - public void setEmulator(WebhookSignalResponseEmulator emulator) { + public void setEmulator(EmulatorResult emulator) { this.emulator = emulator; } - public WebhookVisit clonedApp(WebhookSignalResponseClonedApp clonedApp) { + public WebhookVisit clonedApp(ClonedAppResult clonedApp) { this.clonedApp = clonedApp; return this; } @@ -435,19 +431,19 @@ public WebhookVisit clonedApp(WebhookSignalResponseClonedApp clonedApp) { @JsonProperty(JSON_PROPERTY_CLONED_APP) @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) - public WebhookSignalResponseClonedApp getClonedApp() { + public ClonedAppResult getClonedApp() { return clonedApp; } @JsonProperty(JSON_PROPERTY_CLONED_APP) @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) - public void setClonedApp(WebhookSignalResponseClonedApp clonedApp) { + public void setClonedApp(ClonedAppResult clonedApp) { this.clonedApp = clonedApp; } - public WebhookVisit factoryReset(WebhookSignalResponseFactoryReset factoryReset) { + public WebhookVisit factoryReset(FactoryResetResult factoryReset) { this.factoryReset = factoryReset; return this; } @@ -461,19 +457,19 @@ public WebhookVisit factoryReset(WebhookSignalResponseFactoryReset factoryReset) @JsonProperty(JSON_PROPERTY_FACTORY_RESET) @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) - public WebhookSignalResponseFactoryReset getFactoryReset() { + public FactoryResetResult getFactoryReset() { return factoryReset; } @JsonProperty(JSON_PROPERTY_FACTORY_RESET) @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) - public void setFactoryReset(WebhookSignalResponseFactoryReset factoryReset) { + public void setFactoryReset(FactoryResetResult factoryReset) { this.factoryReset = factoryReset; } - public WebhookVisit jailbroken(WebhookSignalResponseJailbroken jailbroken) { + public WebhookVisit jailbroken(JailbrokenResult jailbroken) { this.jailbroken = jailbroken; return this; } @@ -487,19 +483,19 @@ public WebhookVisit jailbroken(WebhookSignalResponseJailbroken jailbroken) { @JsonProperty(JSON_PROPERTY_JAILBROKEN) @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) - public WebhookSignalResponseJailbroken getJailbroken() { + public JailbrokenResult getJailbroken() { return jailbroken; } @JsonProperty(JSON_PROPERTY_JAILBROKEN) @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) - public void setJailbroken(WebhookSignalResponseJailbroken jailbroken) { + public void setJailbroken(JailbrokenResult jailbroken) { this.jailbroken = jailbroken; } - public WebhookVisit frida(WebhookSignalResponseFrida frida) { + public WebhookVisit frida(FridaResult frida) { this.frida = frida; return this; } @@ -513,14 +509,14 @@ public WebhookVisit frida(WebhookSignalResponseFrida frida) { @JsonProperty(JSON_PROPERTY_FRIDA) @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) - public WebhookSignalResponseFrida getFrida() { + public FridaResult getFrida() { return frida; } @JsonProperty(JSON_PROPERTY_FRIDA) @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) - public void setFrida(WebhookSignalResponseFrida frida) { + public void setFrida(FridaResult frida) { this.frida = frida; } @@ -551,7 +547,7 @@ public void setIpBlocklist(IpBlockListResult ipBlocklist) { } - public WebhookVisit tor(WebhookSignalResponseTor tor) { + public WebhookVisit tor(TorResult tor) { this.tor = tor; return this; } @@ -565,19 +561,19 @@ public WebhookVisit tor(WebhookSignalResponseTor tor) { @JsonProperty(JSON_PROPERTY_TOR) @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) - public WebhookSignalResponseTor getTor() { + public TorResult getTor() { return tor; } @JsonProperty(JSON_PROPERTY_TOR) @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) - public void setTor(WebhookSignalResponseTor tor) { + public void setTor(TorResult tor) { this.tor = tor; } - public WebhookVisit privacySettings(WebhookSignalResponsePrivacySettings privacySettings) { + public WebhookVisit privacySettings(PrivacySettingsResult privacySettings) { this.privacySettings = privacySettings; return this; } @@ -591,19 +587,19 @@ public WebhookVisit privacySettings(WebhookSignalResponsePrivacySettings privacy @JsonProperty(JSON_PROPERTY_PRIVACY_SETTINGS) @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) - public WebhookSignalResponsePrivacySettings getPrivacySettings() { + public PrivacySettingsResult getPrivacySettings() { return privacySettings; } @JsonProperty(JSON_PROPERTY_PRIVACY_SETTINGS) @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) - public void setPrivacySettings(WebhookSignalResponsePrivacySettings privacySettings) { + public void setPrivacySettings(PrivacySettingsResult privacySettings) { this.privacySettings = privacySettings; } - public WebhookVisit virtualMachine(WebhookSignalResponseVirtualMachine virtualMachine) { + public WebhookVisit virtualMachine(VirtualMachineResult virtualMachine) { this.virtualMachine = virtualMachine; return this; } @@ -617,14 +613,14 @@ public WebhookVisit virtualMachine(WebhookSignalResponseVirtualMachine virtualMa @JsonProperty(JSON_PROPERTY_VIRTUAL_MACHINE) @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) - public WebhookSignalResponseVirtualMachine getVirtualMachine() { + public VirtualMachineResult getVirtualMachine() { return virtualMachine; } @JsonProperty(JSON_PROPERTY_VIRTUAL_MACHINE) @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) - public void setVirtualMachine(WebhookSignalResponseVirtualMachine virtualMachine) { + public void setVirtualMachine(VirtualMachineResult virtualMachine) { this.virtualMachine = virtualMachine; } @@ -655,7 +651,7 @@ public void setVpn(VpnResult vpn) { } - public WebhookVisit proxy(WebhookSignalResponseProxy proxy) { + public WebhookVisit proxy(ProxyResult proxy) { this.proxy = proxy; return this; } @@ -669,14 +665,14 @@ public WebhookVisit proxy(WebhookSignalResponseProxy proxy) { @JsonProperty(JSON_PROPERTY_PROXY) @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) - public WebhookSignalResponseProxy getProxy() { + public ProxyResult getProxy() { return proxy; } @JsonProperty(JSON_PROPERTY_PROXY) @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) - public void setProxy(WebhookSignalResponseProxy proxy) { + public void setProxy(ProxyResult proxy) { this.proxy = proxy; } diff --git a/src/test/resources/mocks/get_event.json b/src/test/resources/mocks/get_event.json index 808f12f..5b10050 100644 --- a/src/test/resources/mocks/get_event.json +++ b/src/test/resources/mocks/get_event.json @@ -1,232 +1,89 @@ -{ - "products": { - "identification": { - "data": { - "visitorId": "Ibk1527CUFmcnjLwIs4A9", - "requestId": "0KSh65EnVoB85JBmloQK", - "incognito": true, - "linkedId": "somelinkedId", - "time": "2019-05-21T16:40:13Z", - "timestamp": 1582299576512, - "url": "https://www.example.com/login", - "ip": "61.127.217.15", - "ipLocation": { - "accuracyRadius": 10, - "latitude": 49.982, - "longitude": 36.2566, - "postalCode": "61202", - "timezone": "Europe/Dusseldorf", - "city": { - "name": "Dusseldorf" - }, - "continent": { - "code": "EU", - "name": "Europe" - }, - "country": { - "code": "DE", - "name": "Germany" - }, - "subdivisions": [ - { - "isoCode": "63", - "name": "North Rhine-Westphalia" - } - ] - }, - "browserDetails": { - "browserName": "Chrome", - "browserMajorVersion": "74", - "browserFullVersion": "74.0.3729", - "os": "Windows", - "osVersion": "7", - "device": "Other", - "userAgent": "Mozilla/5.0 (Windows NT 6.1; Win64; x64) ...." - }, - "confidence": { - "score": 0.97 - }, - "visitorFound": true, - "firstSeenAt": { - "global": "2022-03-16T11:26:45.362Z", - "subscription": "2022-03-16T11:31:01.101Z" - }, - "lastSeenAt": { - "global": "2022-03-16T11:28:34.023Z", - "subscription": null - } - } - }, - "botd": { - "data": { - "bot": { - "result": "notDetected" - }, - "url": "https://www.example.com/login", - "ip": "61.127.217.15", - "time": "2019-05-21T16:40:13Z" - } - }, - "ipInfo": { - "data": { - "v4": { - "address": "94.142.239.124", - "geolocation": { - "accuracyRadius": 20, - "latitude": 50.05, - "longitude": 14.4, - "postalCode": "150 00", - "timezone": "Europe/Prague", - "city": { - "name": "Prague" - }, - "country": { - "code": "CZ", - "name": "Czechia" - }, - "continent": { - "code": "EU", - "name": "Europe" - }, - "subdivisions": [ - { - "isoCode": "10", - "name": "Hlavni mesto Praha" - } - ] - }, - "asn": { - "asn": "7922", - "name": "COMCAST-7922", - "network": "73.136.0.0/13" - }, - "datacenter": { - "result": true, - "name": "DediPath" - } - } - } - }, - "incognito": { - "data": { - "result": false - } - }, - "rootApps": { - "data": { - "result": false - } - }, - "emulator": { - "data": { - "result": false - } - }, - "ipBlocklist": { - "data": { - "result": false, - "details": { - "emailSpam": false, - "attackSource": false - } - } - }, - "tor": { - "data": { - "result": false - } - }, - "vpn": { - "data": { - "result": false, - "originTimezone": "Europe/Berlin", - "methods": { - "timezoneMismatch": false, - "publicVPN": false, - "auxiliaryMobile": false - } - } - }, - "proxy": { - "data": { - "result": false - } - }, - "tampering": { - "data": { - "result": false, - "anomalyScore": 0 - } - }, - "clonedApp": { - "data": { - "result": false - } - }, - "factoryReset": { - "data": { - "time": "1970-01-01T00:00:00Z", - "timestamp": 0 - } - }, - "jailbroken": { - "data": { - "result": false - } - }, - "frida": { - "data": { - "result": false - } - }, - "privacySettings": { - "data": { - "result": false - } - }, - "virtualMachine": { - "data": { - "result": false - } - }, - "rawDeviceAttributes": { - "data": { - "architecture": { - "value": 127 - }, - "audio": { - "value": 35.73832903057337 - }, - "canvas": { - "value": { - "Winding": true, - "Geometry": "4dce9d6017c3e0c052a77252f29f2b1c", - "Text": "dd2474a56ff78c1de3e7a07070ba3b7d" - } - }, - "colorDepth": { - "value": 30 - }, - "colorGamut": { - "value": "srgb" - }, - "contrast": { - "value": 0 - }, - "cookiesEnabled": { - "value": true - } - } - }, - "highActivity": { - "data": { - "result": false - } - }, - "locationSpoofing": { - "data": { - "result": false - } - } - } -} + + + + + + Page not found · GitHub Pages + + + + +
+ +

404

+

File not found

+ +

+ The site configured at this address does not + contain the requested file. +

+ +

+ If this is your site, make sure that the filename case matches the URL + as well as any file permissions.
+ For root URLs (like http://example.com/) you must provide an + index.html file. +

+ +

+ Read the full documentation + for more information about using GitHub Pages. +

+ +
+ GitHub Status — + @githubstatus +
+ + + + +
+ + diff --git a/src/test/resources/mocks/get_event_all_errors.json b/src/test/resources/mocks/get_event_all_errors.json index 00b1697..5b10050 100644 --- a/src/test/resources/mocks/get_event_all_errors.json +++ b/src/test/resources/mocks/get_event_all_errors.json @@ -1,122 +1,89 @@ -{ - "products": { - "identification": { - "error": { - "code": "Failed", - "message": "failed" - } - }, - "botd": { - "error": { - "code": "Failed", - "message": "internal server error" - } - }, - "ipInfo": { - "error": { - "code": "Failed", - "message": "internal server error" - } - }, - "incognito": { - "error": { - "code": "Failed", - "message": "internal server error" - } - }, - "rootApps": { - "error": { - "code": "Failed", - "message": "internal server error" - } - }, - "clonedApp": { - "error": { - "code": "Failed", - "message": "internal server error" - } - }, - "factoryReset": { - "error": { - "code": "Failed", - "message": "internal server error" - } - }, - "jailbroken": { - "error": { - "code": "Failed", - "message": "internal server error" - } - }, - "frida": { - "error": { - "code": "Failed", - "message": "internal server error" - } - }, - "emulator": { - "error": { - "code": "Failed", - "message": "internal server error" - } - }, - "ipBlocklist": { - "error": { - "code": "Failed", - "message": "internal server error" - } - }, - "tor": { - "error": { - "code": "Failed", - "message": "internal server error" - } - }, - "vpn": { - "error": { - "code": "Failed", - "message": "internal server error" - } - }, - "proxy": { - "error": { - "code": "Failed", - "message": "internal server error" - } - }, - "privacySettings": { - "error": { - "code": "Failed", - "message": "internal server error" - } - }, - "virtualMachine": { - "error": { - "code": "Failed", - "message": "internal server error" - } - }, - "tampering": { - "error": { - "code": "Failed", - "message": "internal server error" - } - }, - "rawDeviceAttributes": { - "data": { - "audio": { - "error": { - "name": "Error", - "message": "internal server error" - } - }, - "canvas": { - "error": { - "name": "Error", - "message": "internal server error" - } - } - } - } - } -} + + + + + + Page not found · GitHub Pages + + + + +
+ +

404

+

File not found

+ +

+ The site configured at this address does not + contain the requested file. +

+ +

+ If this is your site, make sure that the filename case matches the URL + as well as any file permissions.
+ For root URLs (like http://example.com/) you must provide an + index.html file. +

+ +

+ Read the full documentation + for more information about using GitHub Pages. +

+ +
+ GitHub Status — + @githubstatus +
+ + + + +
+ + diff --git a/src/test/resources/mocks/get_event_botd_failed_error.json b/src/test/resources/mocks/get_event_botd_failed_error.json index 362f969..5b10050 100644 --- a/src/test/resources/mocks/get_event_botd_failed_error.json +++ b/src/test/resources/mocks/get_event_botd_failed_error.json @@ -1,67 +1,89 @@ -{ - "products": { - "identification": { - "data": { - "visitorId": "Ibk1527CUFmcnjLwIs4A9", - "requestId": "0KSh65EnVoB85JBmloQK", - "incognito": true, - "linkedId": "somelinkedId", - "time": "2019-05-21T16:40:13Z", - "timestamp": 1582299576512, - "url": "https://www.example.com/login", - "ip": "61.127.217.15", - "ipLocation": { - "accuracyRadius": 10, - "latitude": 49.982, - "longitude": 36.2566, - "postalCode": "61202", - "timezone": "Europe/Dusseldorf", - "city": { - "name": "Dusseldorf" - }, - "continent": { - "code": "EU", - "name": "Europe" - }, - "country": { - "code": "DE", - "name": "Germany" - }, - "subdivisions": [ - { - "isoCode": "63", - "name": "North Rhine-Westphalia" - } - ] - }, - "browserDetails": { - "browserName": "Chrome", - "browserMajorVersion": "74", - "browserFullVersion": "74.0.3729", - "os": "Windows", - "osVersion": "7", - "device": "Other", - "userAgent": "Mozilla/5.0 (Windows NT 6.1; Win64; x64) ...." - }, - "confidence": { - "score": 0.97 - }, - "visitorFound": true, - "firstSeenAt": { - "global": "2022-03-16T11:26:45.362Z", - "subscription": "2022-03-16T11:31:01.101Z" - }, - "lastSeenAt": { - "global": "2022-03-16T11:28:34.023Z", - "subscription": null - } + + + + + + Page not found · GitHub Pages + + + + +
+ +

404

+

File not found

+ +

+ The site configured at this address does not + contain the requested file. +

+ +

+ If this is your site, make sure that the filename case matches the URL + as well as any file permissions.
+ For root URLs (like http://example.com/) you must provide an + index.html file. +

+ +

+ Read the full documentation + for more information about using GitHub Pages. +

+ +
+ GitHub Status — + @githubstatus +
+ + + + +
+ + diff --git a/src/test/resources/mocks/get_event_botd_too_many_requests_error.json b/src/test/resources/mocks/get_event_botd_too_many_requests_error.json index 55c561b..5b10050 100644 --- a/src/test/resources/mocks/get_event_botd_too_many_requests_error.json +++ b/src/test/resources/mocks/get_event_botd_too_many_requests_error.json @@ -1,67 +1,89 @@ -{ - "products": { - "identification": { - "data": { - "visitorId": "Ibk1527CUFmcnjLwIs4A9", - "requestId": "0KSh65EnVoB85JBmloQK", - "incognito": true, - "linkedId": "somelinkedId", - "time": "2019-05-21T16:40:13Z", - "timestamp": 1582299576512, - "url": "https://www.example.com/login", - "ip": "61.127.217.15", - "ipLocation": { - "accuracyRadius": 10, - "latitude": 49.982, - "longitude": 36.2566, - "postalCode": "61202", - "timezone": "Europe/Dusseldorf", - "city": { - "name": "Dusseldorf" - }, - "continent": { - "code": "EU", - "name": "Europe" - }, - "country": { - "code": "DE", - "name": "Germany" - }, - "subdivisions": [ - { - "isoCode": "63", - "name": "North Rhine-Westphalia" - } - ] - }, - "browserDetails": { - "browserName": "Chrome", - "browserMajorVersion": "74", - "browserFullVersion": "74.0.3729", - "os": "Windows", - "osVersion": "7", - "device": "Other", - "userAgent": "Mozilla/5.0 (Windows NT 6.1; Win64; x64) ...." - }, - "confidence": { - "score": 0.97 - }, - "visitorFound": true, - "firstSeenAt": { - "global": "2022-03-16T11:26:45.362Z", - "subscription": "2022-03-16T11:31:01.101Z" - }, - "lastSeenAt": { - "global": "2022-03-16T11:28:34.023Z", - "subscription": null - } + + + + + + Page not found · GitHub Pages + + + + +
+ +

404

+

File not found

+ +

+ The site configured at this address does not + contain the requested file. +

+ +

+ If this is your site, make sure that the filename case matches the URL + as well as any file permissions.
+ For root URLs (like http://example.com/) you must provide an + index.html file. +

+ +

+ Read the full documentation + for more information about using GitHub Pages. +

+ +
+ GitHub Status — + @githubstatus +
+ + + + +
+ + diff --git a/src/test/resources/mocks/get_event_extra_fields.json b/src/test/resources/mocks/get_event_extra_fields.json index 03e50c0..5b10050 100644 --- a/src/test/resources/mocks/get_event_extra_fields.json +++ b/src/test/resources/mocks/get_event_extra_fields.json @@ -1,86 +1,89 @@ -{ - "products": { - "identification": { - "data": { - "visitorId": "Ibk1527CUFmcnjLwIs4A9", - "requestId": "0KSh65EnVoB85JBmloQK", - "incognito": true, - "linkedId": "somelinkedId", - "time": "2019-05-21T16:40:13Z", - "timestamp": 1582299576512, - "url": "https://www.example.com/login", - "ip": "61.127.217.15", - "ipLocation": { - "accuracyRadius": 10, - "latitude": 49.982, - "longitude": 36.2566, - "postalCode": "61202", - "timezone": "Europe/Dusseldorf", - "city": { - "name": "Dusseldorf" - }, - "continent": { - "code": "EU", - "name": "Europe" - }, - "country": { - "code": "DE", - "name": "Germany" - }, - "subdivisions": [ - { - "isoCode": "63", - "name": "North Rhine-Westphalia" - } - ] - }, - "browserDetails": { - "browserName": "Chrome", - "browserMajorVersion": "74", - "browserFullVersion": "74.0.3729", - "os": "Windows", - "osVersion": "7", - "device": "Other", - "userAgent": "Mozilla/5.0 (Windows NT 6.1; Win64; x64) ...." - }, - "confidence": { - "score": 0.97 - }, - "visitorFound": true, - "firstSeenAt": { - "global": "2022-03-16T11:26:45.362Z", - "subscription": "2022-03-16T11:31:01.101Z" - }, - "lastSeenAt": { - "global": "2022-03-16T11:28:34.023Z", - "subscription": null - } + + + + + + Page not found · GitHub Pages + + + + +
+ +

404

+

File not found

+ +

+ The site configured at this address does not + contain the requested file. +

+ +

+ If this is your site, make sure that the filename case matches the URL + as well as any file permissions.
+ For root URLs (like http://example.com/) you must provide an + index.html file. +

+ +

+ Read the full documentation + for more information about using GitHub Pages. +

+ +
+ GitHub Status — + @githubstatus +
+ + + + +
+ + diff --git a/src/test/resources/mocks/get_event_identification_failed_error.json b/src/test/resources/mocks/get_event_identification_failed_error.json index 22d79de..5b10050 100644 --- a/src/test/resources/mocks/get_event_identification_failed_error.json +++ b/src/test/resources/mocks/get_event_identification_failed_error.json @@ -1,20 +1,89 @@ -{ - "products": { - "identification": { - "error": { - "code": "Failed", - "message": "failed" + + + + + + Page not found · GitHub Pages + + + + +
+ +

404

+

File not found

+ +

+ The site configured at this address does not + contain the requested file. +

+ +

+ If this is your site, make sure that the filename case matches the URL + as well as any file permissions.
+ For root URLs (like http://example.com/) you must provide an + index.html file. +

+ +

+ Read the full documentation + for more information about using GitHub Pages. +

+ +
+ GitHub Status — + @githubstatus +
+ + + + +
+ + diff --git a/src/test/resources/mocks/get_event_identification_too_many_requests_error.json b/src/test/resources/mocks/get_event_identification_too_many_requests_error.json index 26d3172..5b10050 100644 --- a/src/test/resources/mocks/get_event_identification_too_many_requests_error.json +++ b/src/test/resources/mocks/get_event_identification_too_many_requests_error.json @@ -1,20 +1,89 @@ -{ - "products": { - "identification": { - "error": { - "code": "429 Too Many Requests", - "message": "too many requests" + + + + + + Page not found · GitHub Pages + + + + +
+ +

404

+

File not found

+ +

+ The site configured at this address does not + contain the requested file. +

+ +

+ If this is your site, make sure that the filename case matches the URL + as well as any file permissions.
+ For root URLs (like http://example.com/) you must provide an + index.html file. +

+ +

+ Read the full documentation + for more information about using GitHub Pages. +

+ +
+ GitHub Status — + @githubstatus +
+ + + + +
+ + diff --git a/src/test/resources/mocks/visits_403_error.json b/src/test/resources/mocks/visits_403_error.json index 8a886d1..5b10050 100644 --- a/src/test/resources/mocks/visits_403_error.json +++ b/src/test/resources/mocks/visits_403_error.json @@ -1,3 +1,89 @@ -{ - "error": "Forbidden (HTTP 403)" -} + + + + + + Page not found · GitHub Pages + + + + +
+ +

404

+

File not found

+ +

+ The site configured at this address does not + contain the requested file. +

+ +

+ If this is your site, make sure that the filename case matches the URL + as well as any file permissions.
+ For root URLs (like http://example.com/) you must provide an + index.html file. +

+ +

+ Read the full documentation + for more information about using GitHub Pages. +

+ +
+ GitHub Status — + @githubstatus +
+ + + + +
+ + diff --git a/src/test/resources/mocks/visits_limit_500.json b/src/test/resources/mocks/visits_limit_500.json index f045133..5b10050 100644 --- a/src/test/resources/mocks/visits_limit_500.json +++ b/src/test/resources/mocks/visits_limit_500.json @@ -1,3092 +1,89 @@ -{ - "visitorId": "AcxioeQKffpXF8iGQK3P", - "visits": [ - { - "requestId": "1655373780901.HhjRFX", - "browserDetails": { - "browserName": "Chrome", - "browserMajorVersion": "102", - "browserFullVersion": "102.0.5005", - "os": "Mac OS X", - "osVersion": "10.15.7", - "device": "Other", - "userAgent": "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/102.0.5005.61 Safari/537.36", - "botProbability": 0 - }, - "incognito": false, - "ip": "188.242.36.107", - "ipLocation": { - "accuracyRadius": 5, - "latitude": 59.8983, - "longitude": 30.2618, - "postalCode": "190924", - "timezone": "Europe/Moscow", - "city": { - "name": "St Petersburg" - }, - "country": { - "code": "RU", - "name": "Russia" - }, - "continent": { - "code": "EU", - "name": "Europe" - }, - "subdivisions": [ - { - "isoCode": "SPE", - "name": "St.-Petersburg" - } - ] - }, - "timestamp": 1655373780912, - "time": "2022-06-16T10:03:00Z", - "url": "https://fingerprint.com/", - "tag": {}, - "confidence": { - "score": 1 - }, - "visitorFound": true, - "firstSeenAt": { - "global": "2022-02-04T11:31:20Z", - "subscription": "2022-02-04T11:31:20Z" - }, - "lastSeenAt": { - "global": "2022-06-16T05:27:30.578Z", - "subscription": "2022-06-16T05:27:30.578Z" - } - }, - { - "requestId": "1655357250568.vqejDF", - "browserDetails": { - "browserName": "Chrome", - "browserMajorVersion": "102", - "browserFullVersion": "102.0.5005", - "os": "Mac OS X", - "osVersion": "10.15.7", - "device": "Other", - "userAgent": "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/102.0.5005.61 Safari/537.36", - "botProbability": 0 - }, - "incognito": false, - "ip": "82.118.30.62", - "ipLocation": { - "accuracyRadius": 1000, - "latitude": 50.0805, - "longitude": 14.467, - "postalCode": "130 00", - "timezone": "Europe/Prague", - "city": { - "name": "Prague" - }, - "country": { - "code": "CZ", - "name": "Czechia" - }, - "continent": { - "code": "EU", - "name": "Europe" - }, - "subdivisions": [ - { - "isoCode": "10", - "name": "Hlavni mesto Praha" - } - ] - }, - "timestamp": 1655357250578, - "time": "2022-06-16T05:27:30Z", - "url": "https://fingerprint.com/", - "tag": {}, - "confidence": { - "score": 0.99 - }, - "visitorFound": true, - "firstSeenAt": { - "global": "2022-02-04T11:31:20Z", - "subscription": "2022-02-04T11:31:20Z" - }, - "lastSeenAt": { - "global": "2022-06-15T15:28:33.479Z", - "subscription": "2022-06-15T15:28:33.479Z" - } - }, - { - "requestId": "1655306913474.kFQsQx", - "browserDetails": { - "browserName": "Chrome", - "browserMajorVersion": "102", - "browserFullVersion": "102.0.5005", - "os": "Mac OS X", - "osVersion": "10.15.7", - "device": "Other", - "userAgent": "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/102.0.5005.61 Safari/537.36", - "botProbability": 0 - }, - "incognito": false, - "ip": "82.118.30.68", - "ipLocation": { - "accuracyRadius": 1000, - "latitude": 50.0805, - "longitude": 14.467, - "postalCode": "130 00", - "timezone": "Europe/Prague", - "city": { - "name": "Prague" - }, - "country": { - "code": "CZ", - "name": "Czechia" - }, - "continent": { - "code": "EU", - "name": "Europe" - }, - "subdivisions": [ - { - "isoCode": "10", - "name": "Hlavni mesto Praha" - } - ] - }, - "timestamp": 1655306913479, - "time": "2022-06-15T15:28:33Z", - "url": "https://fingerprint.com/", - "tag": {}, - "confidence": { - "score": 0.99 - }, - "visitorFound": true, - "firstSeenAt": { - "global": "2022-02-04T11:31:20Z", - "subscription": "2022-02-04T11:31:20Z" - }, - "lastSeenAt": { - "global": "2022-06-15T08:47:34.677Z", - "subscription": "2022-06-15T08:47:34.677Z" - } - }, - { - "requestId": "1655282854672.vz4ZlN", - "browserDetails": { - "browserName": "Chrome", - "browserMajorVersion": "102", - "browserFullVersion": "102.0.5005", - "os": "Mac OS X", - "osVersion": "10.15.7", - "device": "Other", - "userAgent": "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/102.0.5005.61 Safari/537.36", - "botProbability": 0 - }, - "incognito": false, - "ip": "82.118.30.91", - "ipLocation": { - "accuracyRadius": 1000, - "latitude": 50.0805, - "longitude": 14.467, - "postalCode": "130 00", - "timezone": "Europe/Prague", - "city": { - "name": "Prague" - }, - "country": { - "code": "CZ", - "name": "Czechia" - }, - "continent": { - "code": "EU", - "name": "Europe" - }, - "subdivisions": [ - { - "isoCode": "10", - "name": "Hlavni mesto Praha" - } - ] - }, - "timestamp": 1655282854677, - "time": "2022-06-15T08:47:34Z", - "url": "https://fingerprint.com/", - "tag": {}, - "confidence": { - "score": 0.99 - }, - "visitorFound": true, - "firstSeenAt": { - "global": "2022-02-04T11:31:20Z", - "subscription": "2022-02-04T11:31:20Z" - }, - "lastSeenAt": { - "global": "2022-06-14T14:19:42.753Z", - "subscription": "2022-06-14T14:19:42.753Z" - } - }, - { - "requestId": "1655216382743.RDRa4h", - "browserDetails": { - "browserName": "Chrome", - "browserMajorVersion": "102", - "browserFullVersion": "102.0.5005", - "os": "Mac OS X", - "osVersion": "10.15.7", - "device": "Other", - "userAgent": "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/102.0.5005.61 Safari/537.36", - "botProbability": 0 - }, - "incognito": false, - "ip": "188.242.36.107", - "ipLocation": { - "accuracyRadius": 5, - "latitude": 59.8983, - "longitude": 30.2618, - "postalCode": "190924", - "timezone": "Europe/Moscow", - "city": { - "name": "St Petersburg" - }, - "country": { - "code": "RU", - "name": "Russia" - }, - "continent": { - "code": "EU", - "name": "Europe" - }, - "subdivisions": [ - { - "isoCode": "SPE", - "name": "St.-Petersburg" - } - ] - }, - "timestamp": 1655216382753, - "time": "2022-06-14T14:19:42Z", - "url": "https://fingerprint.com/", - "tag": {}, - "confidence": { - "score": 1 - }, - "visitorFound": true, - "firstSeenAt": { - "global": "2022-02-04T11:31:20Z", - "subscription": "2022-02-04T11:31:20Z" - }, - "lastSeenAt": { - "global": "2022-06-13T07:53:19.878Z", - "subscription": "2022-06-13T07:53:19.878Z" - } - }, - { - "requestId": "1655106799870.C8m8hR", - "browserDetails": { - "browserName": "Chrome", - "browserMajorVersion": "102", - "browserFullVersion": "102.0.5005", - "os": "Mac OS X", - "osVersion": "10.15.7", - "device": "Other", - "userAgent": "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/102.0.5005.61 Safari/537.36", - "botProbability": 0 - }, - "incognito": false, - "ip": "45.86.200.137", - "timestamp": 1655106799878, - "time": "2022-06-13T07:53:19Z", - "url": "https://fingerprint.com/", - "tag": {}, - "confidence": { - "score": 0.99 - }, - "visitorFound": true, - "firstSeenAt": { - "global": "2022-02-04T11:31:20Z", - "subscription": "2022-02-04T11:31:20Z" - }, - "lastSeenAt": { - "global": "2022-06-07T12:54:35.413Z", - "subscription": "2022-06-07T12:54:35.413Z" - } - }, - { - "requestId": "1654606475406.2uXCJx", - "browserDetails": { - "browserName": "Chrome", - "browserMajorVersion": "102", - "browserFullVersion": "102.0.5005", - "os": "Mac OS X", - "osVersion": "10.15.7", - "device": "Other", - "userAgent": "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/102.0.5005.61 Safari/537.36", - "botProbability": 0 - }, - "incognito": false, - "ip": "89.38.224.157", - "ipLocation": { - "accuracyRadius": 20, - "latitude": 44.804, - "longitude": 20.4651 - }, - "timestamp": 1654606475413, - "time": "2022-06-07T12:54:35Z", - "url": "https://fingerprintjs.com/", - "tag": {}, - "confidence": { - "score": 0.99 - }, - "visitorFound": true, - "firstSeenAt": { - "global": "2022-02-04T11:31:20Z", - "subscription": "2022-02-04T11:31:20Z" - }, - "lastSeenAt": { - "global": "2022-06-07T09:37:57.43Z", - "subscription": "2022-06-07T09:37:57.43Z" - } - }, - { - "requestId": "1654594677423.pCHmKJ", - "browserDetails": { - "browserName": "Chrome", - "browserMajorVersion": "102", - "browserFullVersion": "102.0.5005", - "os": "Mac OS X", - "osVersion": "10.15.7", - "device": "Other", - "userAgent": "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/102.0.5005.61 Safari/537.36", - "botProbability": 0 - }, - "incognito": false, - "ip": "188.242.36.107", - "ipLocation": { - "timezone": "Europe/Moscow" - }, - "timestamp": 1654594677430, - "time": "2022-06-07T09:37:57Z", - "url": "https://fingerprintjs.com/", - "tag": {}, - "confidence": { - "score": 0.99 - }, - "visitorFound": true, - "firstSeenAt": { - "global": "2022-02-04T11:31:20Z", - "subscription": "2022-02-04T11:31:20Z" - }, - "lastSeenAt": { - "global": "2022-06-07T09:37:50.109Z", - "subscription": "2022-06-07T09:37:50.109Z" - } - }, - { - "requestId": "1654594670097.Lmodmj", - "browserDetails": { - "browserName": "Chrome", - "browserMajorVersion": "102", - "browserFullVersion": "102.0.5005", - "os": "Mac OS X", - "osVersion": "10.15.7", - "device": "Other", - "userAgent": "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/102.0.5005.61 Safari/537.36", - "botProbability": 0 - }, - "incognito": false, - "ip": "188.242.36.107", - "ipLocation": { - "accuracyRadius": 5, - "latitude": 59.8983, - "longitude": 30.2618, - "postalCode": "190924", - "timezone": "Europe/Moscow", - "city": { - "name": "St Petersburg" - }, - "country": { - "code": "RU", - "name": "Russia" - }, - "continent": { - "code": "EU", - "name": "Europe" - }, - "subdivisions": [ - { - "isoCode": "SPE", - "name": "St.-Petersburg" - } - ] - }, - "timestamp": 1654594670109, - "time": "2022-06-07T09:37:50Z", - "url": "https://fingerprintjs.com/", - "tag": {}, - "confidence": { - "score": 0.99 - }, - "visitorFound": true, - "firstSeenAt": { - "global": "2022-02-04T11:31:20Z", - "subscription": "2022-02-04T11:31:20Z" - }, - "lastSeenAt": { - "global": "2022-06-07T08:31:31.9Z", - "subscription": "2022-06-07T08:31:31.9Z" - } - }, - { - "requestId": "1654590691894.aCYqYE", - "browserDetails": { - "browserName": "Chrome", - "browserMajorVersion": "102", - "browserFullVersion": "102.0.5005", - "os": "Mac OS X", - "osVersion": "10.15.7", - "device": "Other", - "userAgent": "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/102.0.5005.61 Safari/537.36", - "botProbability": 0 - }, - "incognito": false, - "ip": "188.242.36.107", - "ipLocation": { - "accuracyRadius": 5, - "latitude": 59.8983, - "longitude": 30.2618, - "postalCode": "190924", - "timezone": "Europe/Moscow", - "city": { - "name": "St Petersburg" - }, - "country": { - "code": "RU", - "name": "Russia" - }, - "continent": { - "code": "EU", - "name": "Europe" - }, - "subdivisions": [ - { - "isoCode": "SPE", - "name": "St.-Petersburg" - } - ] - }, - "timestamp": 1654590691900, - "time": "2022-06-07T08:31:31Z", - "url": "https://fingerprintjs.com/", - "tag": {}, - "confidence": { - "score": 0.99 - }, - "visitorFound": true, - "firstSeenAt": { - "global": "2022-02-04T11:31:20Z", - "subscription": "2022-02-04T11:31:20Z" - }, - "lastSeenAt": { - "global": "2022-06-06T09:05:25.954Z", - "subscription": "2022-06-06T09:05:25.954Z" - } - }, - { - "requestId": "1654506325946.ijIwzu", - "browserDetails": { - "browserName": "Chrome", - "browserMajorVersion": "102", - "browserFullVersion": "102.0.5005", - "os": "Mac OS X", - "osVersion": "10.15.7", - "device": "Other", - "userAgent": "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/102.0.5005.61 Safari/537.36", - "botProbability": 0 - }, - "incognito": false, - "ip": "89.38.224.165", - "ipLocation": { - "accuracyRadius": 20, - "latitude": 44.804, - "longitude": 20.4651, - "timezone": "Europe/Belgrade", - "city": { - "name": "Belgrade" - }, - "country": { - "code": "RS", - "name": "Serbia" - }, - "continent": { - "code": "EU", - "name": "Europe" - }, - "subdivisions": [ - { - "isoCode": "00", - "name": "Belgrade" - } - ] - }, - "timestamp": 1654506325954, - "time": "2022-06-06T09:05:25Z", - "url": "https://fingerprintcom.netlify.app/blog/name-change/", - "tag": {}, - "confidence": { - "score": 0.99 - }, - "visitorFound": true, - "firstSeenAt": { - "global": "2022-02-04T11:31:20Z", - "subscription": "2022-02-04T11:31:20Z" - }, - "lastSeenAt": { - "global": "2022-06-02T16:58:53.635Z", - "subscription": "2022-06-02T16:58:53.635Z" - } - }, - { - "requestId": "1654189133629.0V1gtF", - "browserDetails": { - "browserName": "Chrome", - "browserMajorVersion": "102", - "browserFullVersion": "102.0.5005", - "os": "Mac OS X", - "osVersion": "10.15.7", - "device": "Other", - "userAgent": "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/102.0.5005.61 Safari/537.36", - "botProbability": 0 - }, - "incognito": false, - "ip": "89.38.224.165", - "ipLocation": { - "accuracyRadius": 20, - "latitude": 44.804, - "longitude": 20.4651, - "timezone": "Europe/Belgrade", - "city": { - "name": "Belgrade" - }, - "country": { - "code": "RS", - "name": "Serbia" - }, - "continent": { - "code": "EU", - "name": "Europe" - }, - "subdivisions": [ - { - "isoCode": "00", - "name": "Belgrade" - } - ] - }, - "timestamp": 1654189133635, - "time": "2022-06-02T16:58:53Z", - "url": "https://fingerprintcom.netlify.app/blog/name-change/", - "tag": {}, - "confidence": { - "score": 1 - }, - "visitorFound": true, - "firstSeenAt": { - "global": "2022-02-04T11:31:20Z", - "subscription": "2022-02-04T11:31:20Z" - }, - "lastSeenAt": { - "global": "2022-06-02T16:58:51.483Z", - "subscription": "2022-06-02T16:58:51.483Z" - } - }, - { - "requestId": "1654189131472.r49Bbh", - "browserDetails": { - "browserName": "Chrome", - "browserMajorVersion": "102", - "browserFullVersion": "102.0.5005", - "os": "Mac OS X", - "osVersion": "10.15.7", - "device": "Other", - "userAgent": "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/102.0.5005.61 Safari/537.36", - "botProbability": 0 - }, - "incognito": false, - "ip": "89.38.224.165", - "ipLocation": { - "accuracyRadius": 20, - "latitude": 44.804, - "longitude": 20.4651, - "timezone": "Europe/Belgrade", - "city": { - "name": "Belgrade" - }, - "country": { - "code": "RS", - "name": "Serbia" - }, - "continent": { - "code": "EU", - "name": "Europe" - }, - "subdivisions": [ - { - "isoCode": "00", - "name": "Belgrade" - } - ] - }, - "timestamp": 1654189131483, - "time": "2022-06-02T16:58:51Z", - "url": "https://fingerprintcom.netlify.app/", - "tag": {}, - "confidence": { - "score": 0.95 - }, - "visitorFound": true, - "firstSeenAt": { - "global": "2022-02-04T11:31:20Z", - "subscription": "2022-02-04T11:31:20Z" - }, - "lastSeenAt": { - "global": "2022-05-27T14:52:26.624Z", - "subscription": "2022-05-27T14:52:26.624Z" - } - }, - { - "requestId": "1653663146617.o8KpJO", - "browserDetails": { - "browserName": "Chrome", - "browserMajorVersion": "101", - "browserFullVersion": "101.0.4951", - "os": "Mac OS X", - "osVersion": "10.15.7", - "device": "Other", - "userAgent": "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/101.0.4951.64 Safari/537.36", - "botProbability": 0 - }, - "incognito": false, - "ip": "89.38.224.165", - "ipLocation": { - "accuracyRadius": 20, - "latitude": 44.804, - "longitude": 20.4651, - "timezone": "Europe/Belgrade", - "city": { - "name": "Belgrade" - }, - "country": { - "code": "RS", - "name": "Serbia" - }, - "continent": { - "code": "EU", - "name": "Europe" - }, - "subdivisions": [ - { - "isoCode": "00", - "name": "Belgrade" - } - ] - }, - "timestamp": 1653663146624, - "time": "2022-05-27T14:52:26Z", - "url": "https://fingerprintjs.com/", - "tag": {}, - "confidence": { - "score": 1 - }, - "visitorFound": true, - "firstSeenAt": { - "global": "2022-02-04T11:31:20Z", - "subscription": "2022-02-04T11:31:20Z" - }, - "lastSeenAt": { - "global": "2022-05-20T09:50:06.7Z", - "subscription": "2022-05-20T09:50:06.7Z" - } - }, - { - "requestId": "1653040206694.Q5Csig", - "browserDetails": { - "browserName": "Chrome", - "browserMajorVersion": "101", - "browserFullVersion": "101.0.4951", - "os": "Mac OS X", - "osVersion": "10.15.7", - "device": "Other", - "userAgent": "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/101.0.4951.54 Safari/537.36", - "botProbability": 0 - }, - "incognito": false, - "ip": "89.38.224.165", - "ipLocation": { - "accuracyRadius": 20, - "latitude": 44.804, - "longitude": 20.4651, - "timezone": "Europe/Belgrade", - "city": { - "name": "Belgrade" - }, - "country": { - "code": "RS", - "name": "Serbia" - }, - "continent": { - "code": "EU", - "name": "Europe" - }, - "subdivisions": [ - { - "isoCode": "00", - "name": "Belgrade" - } - ] - }, - "timestamp": 1653040206700, - "time": "2022-05-20T09:50:06Z", - "url": "https://fingerprintjs.com/", - "tag": {}, - "confidence": { - "score": 1 - }, - "visitorFound": true, - "firstSeenAt": { - "global": "2022-02-04T11:31:20Z", - "subscription": "2022-02-04T11:31:20Z" - }, - "lastSeenAt": { - "global": "2022-05-19T16:27:38.029Z", - "subscription": "2022-05-19T16:27:38.029Z" - } - }, - { - "requestId": "1652977658020.xbfYhA", - "browserDetails": { - "browserName": "Chrome", - "browserMajorVersion": "101", - "browserFullVersion": "101.0.4951", - "os": "Mac OS X", - "osVersion": "10.15.7", - "device": "Other", - "userAgent": "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/101.0.4951.54 Safari/537.36", - "botProbability": 0 - }, - "incognito": false, - "ip": "89.38.224.165", - "ipLocation": { - "accuracyRadius": 20, - "latitude": 44.804, - "longitude": 20.4651, - "timezone": "Europe/Belgrade", - "city": { - "name": "Belgrade" - }, - "country": { - "code": "RS", - "name": "Serbia" - }, - "continent": { - "code": "EU", - "name": "Europe" - }, - "subdivisions": [ - { - "isoCode": "00", - "name": "Belgrade" - } - ] - }, - "timestamp": 1652977658029, - "time": "2022-05-19T16:27:38Z", - "url": "https://fingerprintjs.com/", - "tag": {}, - "confidence": { - "score": 1 - }, - "visitorFound": true, - "firstSeenAt": { - "global": "2022-02-04T11:31:20Z", - "subscription": "2022-02-04T11:31:20Z" - }, - "lastSeenAt": { - "global": "2022-05-17T15:09:32.666Z", - "subscription": "2022-05-17T15:09:32.666Z" - } - }, - { - "requestId": "1652800172657.xA22Pd", - "browserDetails": { - "browserName": "Chrome", - "browserMajorVersion": "101", - "browserFullVersion": "101.0.4951", - "os": "Mac OS X", - "osVersion": "10.15.7", - "device": "Other", - "userAgent": "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/101.0.4951.54 Safari/537.36", - "botProbability": 0 - }, - "incognito": false, - "ip": "89.38.224.165", - "ipLocation": { - "accuracyRadius": 20, - "latitude": 44.804, - "longitude": 20.4651, - "timezone": "Europe/Belgrade", - "city": { - "name": "Belgrade" - }, - "country": { - "code": "RS", - "name": "Serbia" - }, - "continent": { - "code": "EU", - "name": "Europe" - }, - "subdivisions": [ - { - "isoCode": "00", - "name": "Belgrade" - } - ] - }, - "timestamp": 1652800172666, - "time": "2022-05-17T15:09:32Z", - "url": "https://fingerprintjs.com/", - "tag": {}, - "confidence": { - "score": 1 - }, - "visitorFound": true, - "firstSeenAt": { - "global": "2022-02-04T11:31:20Z", - "subscription": "2022-02-04T11:31:20Z" - }, - "lastSeenAt": { - "global": "2022-05-17T14:18:17.631Z", - "subscription": "2022-05-17T14:18:17.631Z" - } - }, - { - "requestId": "1652797097626.faAMJO", - "browserDetails": { - "browserName": "Chrome", - "browserMajorVersion": "101", - "browserFullVersion": "101.0.4951", - "os": "Mac OS X", - "osVersion": "10.15.7", - "device": "Other", - "userAgent": "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/101.0.4951.54 Safari/537.36", - "botProbability": 0 - }, - "incognito": false, - "ip": "89.38.224.165", - "ipLocation": { - "accuracyRadius": 20, - "latitude": 44.804, - "longitude": 20.4651, - "timezone": "Europe/Belgrade", - "city": { - "name": "Belgrade" - }, - "country": { - "code": "RS", - "name": "Serbia" - }, - "continent": { - "code": "EU", - "name": "Europe" - }, - "subdivisions": [ - { - "isoCode": "00", - "name": "Belgrade" - } - ] - }, - "timestamp": 1652797097631, - "time": "2022-05-17T14:18:17Z", - "url": "https://fingerprintjs.com/careers/", - "tag": {}, - "confidence": { - "score": 1 - }, - "visitorFound": true, - "firstSeenAt": { - "global": "2022-02-04T11:31:20Z", - "subscription": "2022-02-04T11:31:20Z" - }, - "lastSeenAt": { - "global": "2022-05-17T10:16:04.809Z", - "subscription": "2022-05-17T10:16:04.809Z" - } - }, - { - "requestId": "1652782564800.MWH0GO", - "browserDetails": { - "browserName": "Chrome", - "browserMajorVersion": "101", - "browserFullVersion": "101.0.4951", - "os": "Mac OS X", - "osVersion": "10.15.7", - "device": "Other", - "userAgent": "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/101.0.4951.54 Safari/537.36", - "botProbability": 0 - }, - "incognito": false, - "ip": "89.38.224.165", - "ipLocation": { - "accuracyRadius": 20, - "latitude": 44.804, - "longitude": 20.4651, - "timezone": "Europe/Belgrade", - "city": { - "name": "Belgrade" - }, - "country": { - "code": "RS", - "name": "Serbia" - }, - "continent": { - "code": "EU", - "name": "Europe" - }, - "subdivisions": [ - { - "isoCode": "00", - "name": "Belgrade" - } - ] - }, - "timestamp": 1652782564809, - "time": "2022-05-17T10:16:04Z", - "url": "https://fingerprintjs.com/", - "tag": {}, - "confidence": { - "score": 1 - }, - "visitorFound": true, - "firstSeenAt": { - "global": "2022-02-04T11:31:20Z", - "subscription": "2022-02-04T11:31:20Z" - }, - "lastSeenAt": { - "global": "2022-05-16T06:47:01.511Z", - "subscription": "2022-05-16T06:47:01.511Z" - } - }, - { - "requestId": "1652683621505.1tOjuc", - "browserDetails": { - "browserName": "Chrome", - "browserMajorVersion": "101", - "browserFullVersion": "101.0.4951", - "os": "Mac OS X", - "osVersion": "10.15.7", - "device": "Other", - "userAgent": "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/101.0.4951.54 Safari/537.36", - "botProbability": 0 - }, - "incognito": false, - "ip": "217.150.54.233", - "ipLocation": { - "accuracyRadius": 1000, - "latitude": 59.8983, - "longitude": 30.2618, - "postalCode": "190924", - "timezone": "Europe/Moscow", - "city": { - "name": "St Petersburg" - }, - "country": { - "code": "RU", - "name": "Russia" - }, - "continent": { - "code": "EU", - "name": "Europe" - }, - "subdivisions": [ - { - "isoCode": "SPE", - "name": "St.-Petersburg" - } - ] - }, - "timestamp": 1652683621511, - "time": "2022-05-16T06:47:01Z", - "url": "https://fingerprintjs.com/products/bot-detection/", - "tag": {}, - "confidence": { - "score": 1 - }, - "visitorFound": true, - "firstSeenAt": { - "global": "2022-02-04T11:31:20Z", - "subscription": "2022-02-04T11:31:20Z" - }, - "lastSeenAt": { - "global": "2022-05-16T06:45:49.586Z", - "subscription": "2022-05-16T06:45:49.586Z" - } - }, - { - "requestId": "1652683586557.67Faeg", - "browserDetails": { - "browserName": "Chrome", - "browserMajorVersion": "101", - "browserFullVersion": "101.0.4951", - "os": "Mac OS X", - "osVersion": "10.15.7", - "device": "Other", - "userAgent": "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/101.0.4951.54 Safari/537.36", - "botProbability": 0 - }, - "incognito": true, - "ip": "217.150.54.233", - "ipLocation": { - "accuracyRadius": 1000, - "latitude": 59.8983, - "longitude": 30.2618, - "postalCode": "190924", - "timezone": "Europe/Moscow", - "city": { - "name": "St Petersburg" - }, - "country": { - "code": "RU", - "name": "Russia" - }, - "continent": { - "code": "EU", - "name": "Europe" - }, - "subdivisions": [ - { - "isoCode": "SPE", - "name": "St.-Petersburg" - } - ] - }, - "timestamp": 1652683586562, - "time": "2022-05-16T06:46:26Z", - "url": "https://fingerprintjs.com/", - "tag": {}, - "confidence": { - "score": 0.94 - }, - "visitorFound": true, - "firstSeenAt": { - "global": "2022-02-04T11:31:20Z", - "subscription": "2022-02-04T11:31:20Z" - }, - "lastSeenAt": { - "global": "2022-05-16T06:45:49.586Z", - "subscription": "2022-05-16T06:45:49.586Z" - } - }, - { - "requestId": "1652683549513.aVRqEP", - "browserDetails": { - "browserName": "Chrome", - "browserMajorVersion": "101", - "browserFullVersion": "101.0.4951", - "os": "Mac OS X", - "osVersion": "10.15.7", - "device": "Other", - "userAgent": "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/101.0.4951.54 Safari/537.36", - "botProbability": 0 - }, - "incognito": false, - "ip": "217.150.54.233", - "ipLocation": { - "accuracyRadius": 1000, - "latitude": 59.8983, - "longitude": 30.2618, - "postalCode": "190924", - "timezone": "Europe/Moscow", - "city": { - "name": "St Petersburg" - }, - "country": { - "code": "RU", - "name": "Russia" - }, - "continent": { - "code": "EU", - "name": "Europe" - }, - "subdivisions": [ - { - "isoCode": "SPE", - "name": "St.-Petersburg" - } - ] - }, - "timestamp": 1652683549586, - "time": "2022-05-16T06:45:49Z", - "url": "https://fingerprintjs.com/", - "tag": {}, - "confidence": { - "score": 1 - }, - "visitorFound": true, - "firstSeenAt": { - "global": "2022-02-04T11:31:20Z", - "subscription": "2022-02-04T11:31:20Z" - }, - "lastSeenAt": { - "global": "2022-05-05T10:11:25.96Z", - "subscription": "2022-05-05T10:11:25.96Z" - } - }, - { - "requestId": "1651745485951.Oj68me", - "browserDetails": { - "browserName": "Chrome", - "browserMajorVersion": "100", - "browserFullVersion": "100.0.4896", - "os": "Mac OS X", - "osVersion": "10.15.7", - "device": "Other", - "userAgent": "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/100.0.4896.127 Safari/537.36", - "botProbability": 0 - }, - "incognito": false, - "ip": "89.38.224.165", - "ipLocation": { - "accuracyRadius": 20, - "latitude": 44.804, - "longitude": 20.4651, - "timezone": "Europe/Belgrade", - "city": { - "name": "Belgrade" - }, - "country": { - "code": "RS", - "name": "Serbia" - }, - "continent": { - "code": "EU", - "name": "Europe" - }, - "subdivisions": [ - { - "isoCode": "00", - "name": "Belgrade" - } - ] - }, - "timestamp": 1651745485960, - "time": "2022-05-05T10:11:25Z", - "url": "https://fingerprintjs.com/", - "tag": {}, - "confidence": { - "score": 1 - }, - "visitorFound": true, - "firstSeenAt": { - "global": "2022-02-04T11:31:20Z", - "subscription": "2022-02-04T11:31:20Z" - }, - "lastSeenAt": { - "global": "2022-05-05T09:33:40.155Z", - "subscription": "2022-05-05T09:33:40.155Z" - } - }, - { - "requestId": "1651743220004.W02rhx", - "browserDetails": { - "browserName": "Chrome", - "browserMajorVersion": "100", - "browserFullVersion": "100.0.4896", - "os": "Mac OS X", - "osVersion": "10.15.7", - "device": "Other", - "userAgent": "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/100.0.4896.127 Safari/537.36", - "botProbability": 0 - }, - "incognito": false, - "ip": "89.38.224.165", - "ipLocation": { - "accuracyRadius": 20, - "latitude": 44.804, - "longitude": 20.4651, - "timezone": "Europe/Belgrade", - "city": { - "name": "Belgrade" - }, - "country": { - "code": "RS", - "name": "Serbia" - }, - "continent": { - "code": "EU", - "name": "Europe" - }, - "subdivisions": [ - { - "isoCode": "00", - "name": "Belgrade" - } - ] - }, - "timestamp": 1651743220155, - "time": "2022-05-05T09:33:40Z", - "url": "https://fingerprintjs.com/", - "tag": {}, - "confidence": { - "score": 1 - }, - "visitorFound": true, - "firstSeenAt": { - "global": "2022-02-04T11:31:20Z", - "subscription": "2022-02-04T11:31:20Z" - }, - "lastSeenAt": { - "global": "2022-05-03T15:26:32.826Z", - "subscription": "2022-05-03T15:26:32.826Z" - } - }, - { - "requestId": "1651591592822.Is9u93", - "browserDetails": { - "browserName": "Chrome", - "browserMajorVersion": "100", - "browserFullVersion": "100.0.4896", - "os": "Mac OS X", - "osVersion": "10.15.7", - "device": "Other", - "userAgent": "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/100.0.4896.127 Safari/537.36", - "botProbability": 0 - }, - "incognito": false, - "ip": "89.38.224.157", - "ipLocation": { - "accuracyRadius": 20, - "latitude": 44.804, - "longitude": 20.4651, - "timezone": "Europe/Belgrade", - "city": { - "name": "Belgrade" - }, - "country": { - "code": "RS", - "name": "Serbia" - }, - "continent": { - "code": "EU", - "name": "Europe" - }, - "subdivisions": [ - { - "isoCode": "00", - "name": "Belgrade" - } - ] - }, - "timestamp": 1651591592826, - "time": "2022-05-03T15:26:32Z", - "url": "https://fingerprintjs.com/", - "tag": {}, - "confidence": { - "score": 1 - }, - "visitorFound": true, - "firstSeenAt": { - "global": "2022-02-04T11:31:20Z", - "subscription": "2022-02-04T11:31:20Z" - }, - "lastSeenAt": { - "global": "2022-04-29T13:23:37.049Z", - "subscription": "2022-04-29T13:23:37.049Z" - } - }, - { - "requestId": "1651238617044.rMVPGS", - "browserDetails": { - "browserName": "Chrome", - "browserMajorVersion": "100", - "browserFullVersion": "100.0.4896", - "os": "Mac OS X", - "osVersion": "10.15.7", - "device": "Other", - "userAgent": "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/100.0.4896.127 Safari/537.36", - "botProbability": 0 - }, - "incognito": false, - "ip": "89.38.224.165", - "ipLocation": { - "accuracyRadius": 20, - "latitude": 44.804, - "longitude": 20.4651, - "timezone": "Europe/Belgrade", - "city": { - "name": "Belgrade" - }, - "country": { - "code": "RS", - "name": "Serbia" - }, - "continent": { - "code": "EU", - "name": "Europe" - }, - "subdivisions": [ - { - "isoCode": "00", - "name": "Belgrade" - } - ] - }, - "timestamp": 1651238617049, - "time": "2022-04-29T13:23:37Z", - "url": "https://fingerprintjs.com/", - "tag": {}, - "confidence": { - "score": 1 - }, - "visitorFound": true, - "firstSeenAt": { - "global": "2022-02-04T11:31:20Z", - "subscription": "2022-02-04T11:31:20Z" - }, - "lastSeenAt": { - "global": "2022-04-29T10:37:53.333Z", - "subscription": "2022-04-29T10:37:53.333Z" - } - }, - { - "requestId": "1651228673329.QZI2Cu", - "browserDetails": { - "browserName": "Chrome", - "browserMajorVersion": "100", - "browserFullVersion": "100.0.4896", - "os": "Mac OS X", - "osVersion": "10.15.7", - "device": "Other", - "userAgent": "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/100.0.4896.127 Safari/537.36", - "botProbability": 0 - }, - "incognito": false, - "ip": "188.242.36.107", - "ipLocation": { - "accuracyRadius": 5, - "latitude": 59.8983, - "longitude": 30.2618, - "postalCode": "190924", - "timezone": "Europe/Moscow", - "city": { - "name": "St Petersburg" - }, - "country": { - "code": "RU", - "name": "Russia" - }, - "continent": { - "code": "EU", - "name": "Europe" - }, - "subdivisions": [ - { - "isoCode": "SPE", - "name": "St.-Petersburg" - } - ] - }, - "timestamp": 1651228673333, - "time": "2022-04-29T10:37:53Z", - "url": "https://fingerprintjs.com/", - "tag": {}, - "confidence": { - "score": 1 - }, - "visitorFound": true, - "firstSeenAt": { - "global": "2022-02-04T11:31:20Z", - "subscription": "2022-02-04T11:31:20Z" - }, - "lastSeenAt": { - "global": "2022-04-28T13:58:06.323Z", - "subscription": "2022-04-28T13:58:06.323Z" - } - }, - { - "requestId": "1651154286221.YvuOCP", - "browserDetails": { - "browserName": "Chrome", - "browserMajorVersion": "100", - "browserFullVersion": "100.0.4896", - "os": "Mac OS X", - "osVersion": "10.15.7", - "device": "Other", - "userAgent": "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/100.0.4896.127 Safari/537.36", - "botProbability": 0 - }, - "incognito": false, - "ip": "84.247.59.113", - "ipLocation": { - "accuracyRadius": 20, - "latitude": 50.0971, - "longitude": 8.5952, - "postalCode": "65933", - "timezone": "Europe/Berlin", - "city": { - "name": "Frankfurt am Main" - }, - "country": { - "code": "DE", - "name": "Germany" - }, - "continent": { - "code": "EU", - "name": "Europe" - }, - "subdivisions": [ - { - "isoCode": "HE", - "name": "Hesse" - } - ] - }, - "timestamp": 1651154286323, - "time": "2022-04-28T13:58:06Z", - "url": "https://fingerprintjs.com/", - "tag": {}, - "confidence": { - "score": 1 - }, - "visitorFound": true, - "firstSeenAt": { - "global": "2022-02-04T11:31:20Z", - "subscription": "2022-02-04T11:31:20Z" - }, - "lastSeenAt": { - "global": "2022-04-28T12:16:02.564Z", - "subscription": "2022-04-28T12:16:02.564Z" - } - }, - { - "requestId": "1651148162556.dySgif", - "browserDetails": { - "browserName": "Chrome", - "browserMajorVersion": "100", - "browserFullVersion": "100.0.4896", - "os": "Mac OS X", - "osVersion": "10.15.7", - "device": "Other", - "userAgent": "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/100.0.4896.127 Safari/537.36", - "botProbability": 0 - }, - "incognito": false, - "ip": "84.247.59.113", - "ipLocation": { - "accuracyRadius": 20, - "latitude": 50.0971, - "longitude": 8.5952, - "postalCode": "65933", - "timezone": "Europe/Berlin", - "city": { - "name": "Frankfurt am Main" - }, - "country": { - "code": "DE", - "name": "Germany" - }, - "continent": { - "code": "EU", - "name": "Europe" - }, - "subdivisions": [ - { - "isoCode": "HE", - "name": "Hesse" - } - ] - }, - "timestamp": 1651148162564, - "time": "2022-04-28T12:16:02Z", - "url": "https://fingerprintjs.com/", - "tag": {}, - "confidence": { - "score": 1 - }, - "visitorFound": true, - "firstSeenAt": { - "global": "2022-02-04T11:31:20Z", - "subscription": "2022-02-04T11:31:20Z" - }, - "lastSeenAt": { - "global": "2022-04-28T11:57:13.267Z", - "subscription": "2022-04-28T11:57:13.267Z" - } - }, - { - "requestId": "1651147033260.SxmFvL", - "browserDetails": { - "browserName": "Chrome", - "browserMajorVersion": "100", - "browserFullVersion": "100.0.4896", - "os": "Mac OS X", - "osVersion": "10.15.7", - "device": "Other", - "userAgent": "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/100.0.4896.127 Safari/537.36", - "botProbability": 0 - }, - "incognito": false, - "ip": "84.247.59.146", - "ipLocation": { - "accuracyRadius": 20, - "latitude": 50.0971, - "longitude": 8.5952, - "postalCode": "65933", - "timezone": "Europe/Berlin", - "city": { - "name": "Frankfurt am Main" - }, - "country": { - "code": "DE", - "name": "Germany" - }, - "continent": { - "code": "EU", - "name": "Europe" - }, - "subdivisions": [ - { - "isoCode": "HE", - "name": "Hesse" - } - ] - }, - "timestamp": 1651147033267, - "time": "2022-04-28T11:57:13Z", - "url": "https://fingerprintjs.com/", - "tag": {}, - "confidence": { - "score": 1 - }, - "visitorFound": true, - "firstSeenAt": { - "global": "2022-02-04T11:31:20Z", - "subscription": "2022-02-04T11:31:20Z" - }, - "lastSeenAt": { - "global": "2022-04-28T11:57:06.24Z", - "subscription": "2022-04-28T11:57:06.24Z" - } - }, - { - "requestId": "1651147026139.aAZ8TO", - "browserDetails": { - "browserName": "Chrome", - "browserMajorVersion": "100", - "browserFullVersion": "100.0.4896", - "os": "Mac OS X", - "osVersion": "10.15.7", - "device": "Other", - "userAgent": "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/100.0.4896.127 Safari/537.36", - "botProbability": 0 - }, - "incognito": false, - "ip": "84.247.59.146", - "ipLocation": { - "accuracyRadius": 20, - "latitude": 50.0971, - "longitude": 8.5952, - "postalCode": "65933", - "timezone": "Europe/Berlin", - "city": { - "name": "Frankfurt am Main" - }, - "country": { - "code": "DE", - "name": "Germany" - }, - "continent": { - "code": "EU", - "name": "Europe" - }, - "subdivisions": [ - { - "isoCode": "HE", - "name": "Hesse" - } - ] - }, - "timestamp": 1651147026240, - "time": "2022-04-28T11:57:06Z", - "url": "https://fingerprintjs.com/", - "tag": {}, - "confidence": { - "score": 1 - }, - "visitorFound": true, - "firstSeenAt": { - "global": "2022-02-04T11:31:20Z", - "subscription": "2022-02-04T11:31:20Z" - }, - "lastSeenAt": { - "global": "2022-04-26T14:10:31.908Z", - "subscription": "2022-04-26T14:10:31.908Z" - } - }, - { - "requestId": "1650982231903.eG0b6v", - "browserDetails": { - "browserName": "Chrome", - "browserMajorVersion": "100", - "browserFullVersion": "100.0.4896", - "os": "Mac OS X", - "osVersion": "10.15.7", - "device": "Other", - "userAgent": "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/100.0.4896.127 Safari/537.36", - "botProbability": 0 - }, - "incognito": false, - "ip": "45.86.200.105", - "ipLocation": { - "accuracyRadius": 1000, - "latitude": 52.3824, - "longitude": 4.8995, - "timezone": "Europe/Amsterdam", - "country": { - "code": "NL", - "name": "Netherlands" - }, - "continent": { - "code": "EU", - "name": "Europe" - } - }, - "timestamp": 1650982231908, - "time": "2022-04-26T14:10:31Z", - "url": "https://fingerprintjs.com/", - "tag": {}, - "confidence": { - "score": 1 - }, - "visitorFound": true, - "firstSeenAt": { - "global": "2022-02-04T11:31:20Z", - "subscription": "2022-02-04T11:31:20Z" - }, - "lastSeenAt": { - "global": "2022-04-26T11:43:37.373Z", - "subscription": "2022-04-26T11:43:37.373Z" - } - }, - { - "requestId": "1650973417360.xupFFD", - "browserDetails": { - "browserName": "Chrome", - "browserMajorVersion": "100", - "browserFullVersion": "100.0.4896", - "os": "Mac OS X", - "osVersion": "10.15.7", - "device": "Other", - "userAgent": "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/100.0.4896.127 Safari/537.36", - "botProbability": 0 - }, - "incognito": false, - "ip": "45.86.200.99", - "ipLocation": { - "accuracyRadius": 1000, - "latitude": 52.3824, - "longitude": 4.8995, - "timezone": "Europe/Amsterdam", - "country": { - "code": "NL", - "name": "Netherlands" - }, - "continent": { - "code": "EU", - "name": "Europe" - } - }, - "timestamp": 1650973417373, - "time": "2022-04-26T11:43:37Z", - "url": "https://fingerprintjs.com/", - "tag": {}, - "confidence": { - "score": 1 - }, - "visitorFound": true, - "firstSeenAt": { - "global": "2022-02-04T11:31:20Z", - "subscription": "2022-02-04T11:31:20Z" - }, - "lastSeenAt": { - "global": "2022-04-26T11:43:30.111Z", - "subscription": "2022-04-26T11:43:30.111Z" - } - }, - { - "requestId": "1650973410104.AQD4qu", - "browserDetails": { - "browserName": "Chrome", - "browserMajorVersion": "100", - "browserFullVersion": "100.0.4896", - "os": "Mac OS X", - "osVersion": "10.15.7", - "device": "Other", - "userAgent": "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/100.0.4896.127 Safari/537.36", - "botProbability": 0 - }, - "incognito": false, - "ip": "45.86.200.99", - "ipLocation": { - "accuracyRadius": 1000, - "latitude": 52.3824, - "longitude": 4.8995, - "timezone": "Europe/Amsterdam", - "country": { - "code": "NL", - "name": "Netherlands" - }, - "continent": { - "code": "EU", - "name": "Europe" - } - }, - "timestamp": 1650973410111, - "time": "2022-04-26T11:43:30Z", - "url": "https://fingerprintjs.com/", - "tag": {}, - "confidence": { - "score": 1 - }, - "visitorFound": true, - "firstSeenAt": { - "global": "2022-02-04T11:31:20Z", - "subscription": "2022-02-04T11:31:20Z" - }, - "lastSeenAt": { - "global": "2022-04-26T11:22:34.148Z", - "subscription": "2022-04-26T11:22:34.148Z" - } - }, - { - "requestId": "1650972154133.lSWE8a", - "browserDetails": { - "browserName": "Chrome", - "browserMajorVersion": "100", - "browserFullVersion": "100.0.4896", - "os": "Mac OS X", - "osVersion": "10.15.7", - "device": "Other", - "userAgent": "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/100.0.4896.127 Safari/537.36", - "botProbability": 0 - }, - "incognito": false, - "ip": "45.86.200.96", - "ipLocation": { - "accuracyRadius": 1000, - "latitude": 52.3824, - "longitude": 4.8995, - "timezone": "Europe/Amsterdam", - "country": { - "code": "NL", - "name": "Netherlands" - }, - "continent": { - "code": "EU", - "name": "Europe" - } - }, - "timestamp": 1650972154148, - "time": "2022-04-26T11:22:34Z", - "url": "https://fingerprintjs.com/", - "tag": {}, - "confidence": { - "score": 1 - }, - "visitorFound": true, - "firstSeenAt": { - "global": "2022-02-04T11:31:20Z", - "subscription": "2022-02-04T11:31:20Z" - }, - "lastSeenAt": { - "global": "2022-04-26T11:22:03.83Z", - "subscription": "2022-04-26T11:22:03.83Z" - } - }, - { - "requestId": "1650972123824.xk8MUR", - "browserDetails": { - "browserName": "Chrome", - "browserMajorVersion": "100", - "browserFullVersion": "100.0.4896", - "os": "Mac OS X", - "osVersion": "10.15.7", - "device": "Other", - "userAgent": "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/100.0.4896.127 Safari/537.36", - "botProbability": 0 - }, - "incognito": false, - "ip": "45.86.200.96", - "ipLocation": { - "accuracyRadius": 1000, - "latitude": 52.3824, - "longitude": 4.8995, - "timezone": "Europe/Amsterdam", - "country": { - "code": "NL", - "name": "Netherlands" - }, - "continent": { - "code": "EU", - "name": "Europe" - } - }, - "timestamp": 1650972123830, - "time": "2022-04-26T11:22:03Z", - "url": "https://fingerprintjs.com/", - "tag": {}, - "confidence": { - "score": 1 - }, - "visitorFound": true, - "firstSeenAt": { - "global": "2022-02-04T11:31:20Z", - "subscription": "2022-02-04T11:31:20Z" - }, - "lastSeenAt": { - "global": "2022-04-25T09:46:15.458Z", - "subscription": "2022-04-25T09:46:15.458Z" - } - }, - { - "requestId": "1650879975452.kfuowM", - "browserDetails": { - "browserName": "Chrome", - "browserMajorVersion": "100", - "browserFullVersion": "100.0.4896", - "os": "Mac OS X", - "osVersion": "10.15.7", - "device": "Other", - "userAgent": "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/100.0.4896.127 Safari/537.36", - "botProbability": 0 - }, - "incognito": false, - "ip": "188.242.36.107", - "ipLocation": { - "accuracyRadius": 5, - "latitude": 59.8983, - "longitude": 30.2618, - "postalCode": "190924", - "timezone": "Europe/Moscow", - "city": { - "name": "St Petersburg" - }, - "country": { - "code": "RU", - "name": "Russia" - }, - "continent": { - "code": "EU", - "name": "Europe" - }, - "subdivisions": [ - { - "isoCode": "SPE", - "name": "St.-Petersburg" - } - ] - }, - "timestamp": 1650879975458, - "time": "2022-04-25T09:46:15Z", - "url": "https://fingerprintjs.com/", - "tag": {}, - "confidence": { - "score": 1 - }, - "visitorFound": true, - "firstSeenAt": { - "global": "2022-02-04T11:31:20Z", - "subscription": "2022-02-04T11:31:20Z" - }, - "lastSeenAt": { - "global": "2022-04-22T16:51:44.816Z", - "subscription": "2022-04-22T16:51:44.816Z" - } - }, - { - "requestId": "1650646304808.xQbAju", - "browserDetails": { - "browserName": "Chrome", - "browserMajorVersion": "100", - "browserFullVersion": "100.0.4896", - "os": "Mac OS X", - "osVersion": "10.15.7", - "device": "Other", - "userAgent": "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/100.0.4896.127 Safari/537.36", - "botProbability": 0 - }, - "incognito": false, - "ip": "45.86.200.227", - "ipLocation": { - "accuracyRadius": 1000, - "latitude": 52.3824, - "longitude": 4.8995, - "timezone": "Europe/Amsterdam", - "country": { - "code": "NL", - "name": "Netherlands" - }, - "continent": { - "code": "EU", - "name": "Europe" - } - }, - "timestamp": 1650646304816, - "time": "2022-04-22T16:51:44Z", - "url": "https://fingerprintjs.com/", - "tag": {}, - "confidence": { - "score": 1 - }, - "visitorFound": true, - "firstSeenAt": { - "global": "2022-02-04T11:31:20Z", - "subscription": "2022-02-04T11:31:20Z" - }, - "lastSeenAt": { - "global": "2022-04-21T11:43:33.116Z", - "subscription": "2022-04-21T11:43:33.116Z" - } - }, - { - "requestId": "1650541413105.leAPLz", - "browserDetails": { - "browserName": "Chrome", - "browserMajorVersion": "100", - "browserFullVersion": "100.0.4896", - "os": "Mac OS X", - "osVersion": "10.15.7", - "device": "Other", - "userAgent": "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/100.0.4896.127 Safari/537.36", - "botProbability": 0 - }, - "incognito": false, - "ip": "45.86.200.89", - "ipLocation": { - "accuracyRadius": 1000, - "latitude": 52.3824, - "longitude": 4.8995, - "timezone": "Europe/Amsterdam", - "country": { - "code": "NL", - "name": "Netherlands" - }, - "continent": { - "code": "EU", - "name": "Europe" - } - }, - "timestamp": 1650541413116, - "time": "2022-04-21T11:43:33Z", - "url": "https://fingerprintjs.com/", - "tag": {}, - "confidence": { - "score": 1 - }, - "visitorFound": true, - "firstSeenAt": { - "global": "2022-02-04T11:31:20Z", - "subscription": "2022-02-04T11:31:20Z" - }, - "lastSeenAt": { - "global": "2022-04-20T17:11:54.717Z", - "subscription": "2022-04-20T17:11:54.717Z" - } - }, - { - "requestId": "1650474714710.M1IGsl", - "browserDetails": { - "browserName": "Chrome", - "browserMajorVersion": "100", - "browserFullVersion": "100.0.4896", - "os": "Mac OS X", - "osVersion": "10.15.7", - "device": "Other", - "userAgent": "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/100.0.4896.127 Safari/537.36", - "botProbability": 0 - }, - "incognito": false, - "ip": "45.86.200.111", - "ipLocation": { - "accuracyRadius": 1000, - "latitude": 52.3824, - "longitude": 4.8995, - "timezone": "Europe/Amsterdam", - "country": { - "code": "NL", - "name": "Netherlands" - }, - "continent": { - "code": "EU", - "name": "Europe" - } - }, - "timestamp": 1650474714717, - "time": "2022-04-20T17:11:54Z", - "url": "https://fingerprintjs.com/", - "tag": {}, - "confidence": { - "score": 1 - }, - "visitorFound": true, - "firstSeenAt": { - "global": "2022-02-04T11:31:20Z", - "subscription": "2022-02-04T11:31:20Z" - }, - "lastSeenAt": { - "global": "2022-04-20T17:11:47.217Z", - "subscription": "2022-04-20T17:11:47.217Z" - } - }, - { - "requestId": "1650474707211.CEUuZk", - "browserDetails": { - "browserName": "Chrome", - "browserMajorVersion": "100", - "browserFullVersion": "100.0.4896", - "os": "Mac OS X", - "osVersion": "10.15.7", - "device": "Other", - "userAgent": "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/100.0.4896.127 Safari/537.36", - "botProbability": 0 - }, - "incognito": false, - "ip": "45.86.200.111", - "ipLocation": { - "accuracyRadius": 1000, - "latitude": 52.3824, - "longitude": 4.8995, - "timezone": "Europe/Amsterdam", - "country": { - "code": "NL", - "name": "Netherlands" - }, - "continent": { - "code": "EU", - "name": "Europe" - } - }, - "timestamp": 1650474707217, - "time": "2022-04-20T17:11:47Z", - "url": "https://fingerprintjs.com/", - "tag": {}, - "confidence": { - "score": 1 - }, - "visitorFound": true, - "firstSeenAt": { - "global": "2022-02-04T11:31:20Z", - "subscription": "2022-02-04T11:31:20Z" - }, - "lastSeenAt": { - "global": "2022-04-20T17:11:12.076Z", - "subscription": "2022-04-20T17:11:12.076Z" - } - }, - { - "requestId": "1650474672071.Pz4WsK", - "browserDetails": { - "browserName": "Chrome", - "browserMajorVersion": "100", - "browserFullVersion": "100.0.4896", - "os": "Mac OS X", - "osVersion": "10.15.7", - "device": "Other", - "userAgent": "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/100.0.4896.127 Safari/537.36", - "botProbability": 0 - }, - "incognito": false, - "ip": "45.86.200.111", - "ipLocation": { - "accuracyRadius": 1000, - "latitude": 52.3824, - "longitude": 4.8995, - "timezone": "Europe/Amsterdam", - "country": { - "code": "NL", - "name": "Netherlands" - }, - "continent": { - "code": "EU", - "name": "Europe" - } - }, - "timestamp": 1650474672076, - "time": "2022-04-20T17:11:12Z", - "url": "https://fingerprintjs.com/", - "tag": {}, - "confidence": { - "score": 1 - }, - "visitorFound": true, - "firstSeenAt": { - "global": "2022-02-04T11:31:20Z", - "subscription": "2022-02-04T11:31:20Z" - }, - "lastSeenAt": { - "global": "2022-04-19T12:29:06.692Z", - "subscription": "2022-04-19T12:29:06.692Z" - } - }, - { - "requestId": "1650371346684.1d7sgv", - "browserDetails": { - "browserName": "Chrome Mobile", - "browserMajorVersion": "100", - "browserFullVersion": "100.0.4896", - "os": "Android", - "osVersion": "6.0", - "device": "Nexus 5", - "userAgent": "Mozilla/5.0 (Linux; Android 6.0; Nexus 5 Build/MRA58N) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/100.0.4896.127 Mobile Safari/537.36", - "botProbability": 0 - }, - "incognito": false, - "ip": "45.86.200.198", - "ipLocation": { - "accuracyRadius": 1000, - "latitude": 52.3824, - "longitude": 4.8995, - "timezone": "Europe/Amsterdam", - "country": { - "code": "NL", - "name": "Netherlands" - }, - "continent": { - "code": "EU", - "name": "Europe" - } - }, - "timestamp": 1650371346692, - "time": "2022-04-19T12:29:06Z", - "url": "https://fingerprintjs.com/", - "tag": {}, - "confidence": { - "score": 1 - }, - "visitorFound": true, - "firstSeenAt": { - "global": "2022-02-04T11:31:20Z", - "subscription": "2022-02-04T11:31:20Z" - }, - "lastSeenAt": { - "global": "2022-04-19T12:29:02.15Z", - "subscription": "2022-04-19T12:29:02.15Z" - } - }, - { - "requestId": "1650371342145.oWyfRx", - "browserDetails": { - "browserName": "Chrome", - "browserMajorVersion": "100", - "browserFullVersion": "100.0.4896", - "os": "Mac OS X", - "osVersion": "10.15.7", - "device": "Other", - "userAgent": "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/100.0.4896.127 Safari/537.36", - "botProbability": 0 - }, - "incognito": false, - "ip": "45.86.200.198", - "ipLocation": { - "accuracyRadius": 1000, - "latitude": 52.3824, - "longitude": 4.8995, - "timezone": "Europe/Amsterdam", - "country": { - "code": "NL", - "name": "Netherlands" - }, - "continent": { - "code": "EU", - "name": "Europe" - } - }, - "timestamp": 1650371342150, - "time": "2022-04-19T12:29:02Z", - "url": "https://fingerprintjs.com/", - "tag": {}, - "confidence": { - "score": 1 - }, - "visitorFound": true, - "firstSeenAt": { - "global": "2022-02-04T11:31:20Z", - "subscription": "2022-02-04T11:31:20Z" - }, - "lastSeenAt": { - "global": "2022-04-19T11:35:14.729Z", - "subscription": "2022-04-19T11:35:14.729Z" - } - }, - { - "requestId": "1650368114723.YEXcHI", - "browserDetails": { - "browserName": "Chrome", - "browserMajorVersion": "100", - "browserFullVersion": "100.0.4896", - "os": "Mac OS X", - "osVersion": "10.15.7", - "device": "Other", - "userAgent": "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/100.0.4896.127 Safari/537.36", - "botProbability": 0 - }, - "incognito": false, - "ip": "45.86.200.206", - "ipLocation": { - "accuracyRadius": 1000, - "latitude": 52.3824, - "longitude": 4.8995, - "timezone": "Europe/Amsterdam", - "country": { - "code": "NL", - "name": "Netherlands" - }, - "continent": { - "code": "EU", - "name": "Europe" - } - }, - "timestamp": 1650368114729, - "time": "2022-04-19T11:35:14Z", - "url": "https://fingerprintjs.com/", - "tag": {}, - "confidence": { - "score": 1 - }, - "visitorFound": true, - "firstSeenAt": { - "global": "2022-02-04T11:31:20Z", - "subscription": "2022-02-04T11:31:20Z" - }, - "lastSeenAt": { - "global": "2022-04-19T11:13:33.107Z", - "subscription": "2022-04-19T11:13:33.107Z" - } - }, - { - "requestId": "1650366813101.SvUZC1", - "browserDetails": { - "browserName": "Chrome Mobile", - "browserMajorVersion": "100", - "browserFullVersion": "100.0.4896", - "os": "Android", - "osVersion": "6.0", - "device": "Nexus 5", - "userAgent": "Mozilla/5.0 (Linux; Android 6.0; Nexus 5 Build/MRA58N) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/100.0.4896.127 Mobile Safari/537.36", - "botProbability": 0 - }, - "incognito": false, - "ip": "45.86.200.204", - "ipLocation": { - "accuracyRadius": 1000, - "latitude": 52.3824, - "longitude": 4.8995, - "timezone": "Europe/Amsterdam", - "country": { - "code": "NL", - "name": "Netherlands" - }, - "continent": { - "code": "EU", - "name": "Europe" - } - }, - "timestamp": 1650366813107, - "time": "2022-04-19T11:13:33Z", - "url": "https://fingerprintjs.com/", - "tag": {}, - "confidence": { - "score": 1 - }, - "visitorFound": true, - "firstSeenAt": { - "global": "2022-02-04T11:31:20Z", - "subscription": "2022-02-04T11:31:20Z" - }, - "lastSeenAt": { - "global": "2022-04-19T11:13:28.453Z", - "subscription": "2022-04-19T11:13:28.453Z" - } - }, - { - "requestId": "1650366808426.Hy6j7v", - "browserDetails": { - "browserName": "Chrome", - "browserMajorVersion": "100", - "browserFullVersion": "100.0.4896", - "os": "Mac OS X", - "osVersion": "10.15.7", - "device": "Other", - "userAgent": "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/100.0.4896.127 Safari/537.36", - "botProbability": 0 - }, - "incognito": false, - "ip": "45.86.200.204", - "ipLocation": { - "accuracyRadius": 1000, - "latitude": 52.3824, - "longitude": 4.8995, - "timezone": "Europe/Amsterdam", - "country": { - "code": "NL", - "name": "Netherlands" - }, - "continent": { - "code": "EU", - "name": "Europe" - } - }, - "timestamp": 1650366808453, - "time": "2022-04-19T11:13:28Z", - "url": "https://fingerprintjs.com/", - "tag": {}, - "confidence": { - "score": 1 - }, - "visitorFound": true, - "firstSeenAt": { - "global": "2022-02-04T11:31:20Z", - "subscription": "2022-02-04T11:31:20Z" - }, - "lastSeenAt": { - "global": "2022-04-19T11:07:05.19Z", - "subscription": "2022-04-19T11:07:05.19Z" - } - }, - { - "requestId": "1650366425184.xvYkdr", - "browserDetails": { - "browserName": "Chrome", - "browserMajorVersion": "100", - "browserFullVersion": "100.0.4896", - "os": "Mac OS X", - "osVersion": "10.15.7", - "device": "Other", - "userAgent": "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/100.0.4896.127 Safari/537.36", - "botProbability": 0 - }, - "incognito": false, - "ip": "45.86.200.204", - "ipLocation": { - "accuracyRadius": 1000, - "latitude": 52.3824, - "longitude": 4.8995, - "timezone": "Europe/Amsterdam", - "country": { - "code": "NL", - "name": "Netherlands" - }, - "continent": { - "code": "EU", - "name": "Europe" - } - }, - "timestamp": 1650366425190, - "time": "2022-04-19T11:07:05Z", - "url": "https://fingerprintjs.com/", - "tag": {}, - "confidence": { - "score": 1 - }, - "visitorFound": true, - "firstSeenAt": { - "global": "2022-02-04T11:31:20Z", - "subscription": "2022-02-04T11:31:20Z" - }, - "lastSeenAt": { - "global": "2022-04-19T11:07:00.483Z", - "subscription": "2022-04-19T11:07:00.483Z" - } - }, - { - "requestId": "1650366420377.VR5pDX", - "browserDetails": { - "browserName": "Chrome", - "browserMajorVersion": "100", - "browserFullVersion": "100.0.4896", - "os": "Mac OS X", - "osVersion": "10.15.7", - "device": "Other", - "userAgent": "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/100.0.4896.127 Safari/537.36", - "botProbability": 0 - }, - "incognito": false, - "ip": "45.86.200.204", - "ipLocation": { - "accuracyRadius": 1000, - "latitude": 52.3824, - "longitude": 4.8995, - "timezone": "Europe/Amsterdam", - "country": { - "code": "NL", - "name": "Netherlands" - }, - "continent": { - "code": "EU", - "name": "Europe" - } - }, - "timestamp": 1650366420483, - "time": "2022-04-19T11:07:00Z", - "url": "https://fingerprintjs.com/", - "tag": {}, - "confidence": { - "score": 1 - }, - "visitorFound": true, - "firstSeenAt": { - "global": "2022-02-04T11:31:20Z", - "subscription": "2022-02-04T11:31:20Z" - }, - "lastSeenAt": { - "global": "2022-04-19T10:37:45.279Z", - "subscription": "2022-04-19T10:37:45.279Z" - } - }, - { - "requestId": "1650364665274.qq31O4", - "browserDetails": { - "browserName": "Chrome", - "browserMajorVersion": "100", - "browserFullVersion": "100.0.4896", - "os": "Mac OS X", - "osVersion": "10.15.7", - "device": "Other", - "userAgent": "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/100.0.4896.127 Safari/537.36", - "botProbability": 0 - }, - "incognito": false, - "ip": "45.86.200.172", - "ipLocation": { - "accuracyRadius": 1000, - "latitude": 52.3824, - "longitude": 4.8995, - "timezone": "Europe/Amsterdam", - "country": { - "code": "NL", - "name": "Netherlands" - }, - "continent": { - "code": "EU", - "name": "Europe" - } - }, - "timestamp": 1650364665279, - "time": "2022-04-19T10:37:45Z", - "url": "https://fingerprintjs.com/", - "tag": {}, - "confidence": { - "score": 1 - }, - "visitorFound": true, - "firstSeenAt": { - "global": "2022-02-04T11:31:20Z", - "subscription": "2022-02-04T11:31:20Z" - }, - "lastSeenAt": { - "global": "2022-04-19T10:22:58.87Z", - "subscription": "2022-04-19T10:22:58.87Z" - } - }, - { - "requestId": "1650363778864.tsVBjO", - "browserDetails": { - "browserName": "Chrome Mobile", - "browserMajorVersion": "100", - "browserFullVersion": "100.0.4896", - "os": "Android", - "osVersion": "6.0", - "device": "Nexus 5", - "userAgent": "Mozilla/5.0 (Linux; Android 6.0; Nexus 5 Build/MRA58N) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/100.0.4896.127 Mobile Safari/537.36", - "botProbability": 0 - }, - "incognito": false, - "ip": "45.86.200.210", - "ipLocation": { - "accuracyRadius": 1000, - "latitude": 52.3824, - "longitude": 4.8995, - "timezone": "Europe/Amsterdam", - "country": { - "code": "NL", - "name": "Netherlands" - }, - "continent": { - "code": "EU", - "name": "Europe" - } - }, - "timestamp": 1650363778870, - "time": "2022-04-19T10:22:58Z", - "url": "https://fingerprintjs.com/", - "tag": {}, - "confidence": { - "score": 1 - }, - "visitorFound": true, - "firstSeenAt": { - "global": "2022-02-04T11:31:20Z", - "subscription": "2022-02-04T11:31:20Z" - }, - "lastSeenAt": { - "global": "2022-04-19T10:22:46.894Z", - "subscription": "2022-04-19T10:22:46.894Z" - } - }, - { - "requestId": "1650363766889.KuVDpm", - "browserDetails": { - "browserName": "Chrome Mobile", - "browserMajorVersion": "100", - "browserFullVersion": "100.0.4896", - "os": "Android", - "osVersion": "6.0", - "device": "Nexus 5", - "userAgent": "Mozilla/5.0 (Linux; Android 6.0; Nexus 5 Build/MRA58N) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/100.0.4896.127 Mobile Safari/537.36", - "botProbability": 0 - }, - "incognito": false, - "ip": "45.86.200.210", - "ipLocation": { - "accuracyRadius": 1000, - "latitude": 52.3824, - "longitude": 4.8995, - "timezone": "Europe/Amsterdam", - "country": { - "code": "NL", - "name": "Netherlands" - }, - "continent": { - "code": "EU", - "name": "Europe" - } - }, - "timestamp": 1650363766894, - "time": "2022-04-19T10:22:46Z", - "url": "https://fingerprintjs.com/", - "tag": {}, - "confidence": { - "score": 1 - }, - "visitorFound": true, - "firstSeenAt": { - "global": "2022-02-04T11:31:20Z", - "subscription": "2022-02-04T11:31:20Z" - }, - "lastSeenAt": { - "global": "2022-04-19T10:07:01.528Z", - "subscription": "2022-04-19T10:07:01.528Z" - } - }, - { - "requestId": "1650362821521.dXH2Ce", - "browserDetails": { - "browserName": "Chrome", - "browserMajorVersion": "100", - "browserFullVersion": "100.0.4896", - "os": "Mac OS X", - "osVersion": "10.15.7", - "device": "Other", - "userAgent": "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/100.0.4896.127 Safari/537.36", - "botProbability": 0 - }, - "incognito": false, - "ip": "45.86.200.180", - "ipLocation": { - "accuracyRadius": 1000, - "latitude": 52.3824, - "longitude": 4.8995, - "timezone": "Europe/Amsterdam", - "country": { - "code": "NL", - "name": "Netherlands" - }, - "continent": { - "code": "EU", - "name": "Europe" - } - }, - "timestamp": 1650362821528, - "time": "2022-04-19T10:07:01Z", - "url": "https://fingerprintjs.com/", - "tag": {}, - "confidence": { - "score": 1 - }, - "visitorFound": true, - "firstSeenAt": { - "global": "2022-02-04T11:31:20Z", - "subscription": "2022-02-04T11:31:20Z" - }, - "lastSeenAt": { - "global": "2022-04-19T10:02:42.46Z", - "subscription": "2022-04-19T10:02:42.46Z" - } - }, - { - "requestId": "1650362562448.a5cPLU", - "browserDetails": { - "browserName": "Chrome", - "browserMajorVersion": "100", - "browserFullVersion": "100.0.4896", - "os": "Mac OS X", - "osVersion": "10.15.7", - "device": "Other", - "userAgent": "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/100.0.4896.127 Safari/537.36", - "botProbability": 0 - }, - "incognito": false, - "ip": "45.86.200.180", - "ipLocation": { - "accuracyRadius": 1000, - "latitude": 52.3824, - "longitude": 4.8995, - "timezone": "Europe/Amsterdam", - "country": { - "code": "NL", - "name": "Netherlands" - }, - "continent": { - "code": "EU", - "name": "Europe" - } - }, - "timestamp": 1650362562460, - "time": "2022-04-19T10:02:42Z", - "url": "https://fingerprintjs.com/", - "tag": {}, - "confidence": { - "score": 1 - }, - "visitorFound": true, - "firstSeenAt": { - "global": "2022-02-04T11:31:20Z", - "subscription": "2022-02-04T11:31:20Z" - }, - "lastSeenAt": { - "global": "2022-04-18T17:06:30.834Z", - "subscription": "2022-04-18T17:06:30.834Z" - } - }, - { - "requestId": "1650301590829.YXGX7h", - "browserDetails": { - "browserName": "Chrome", - "browserMajorVersion": "100", - "browserFullVersion": "100.0.4896", - "os": "Mac OS X", - "osVersion": "10.15.7", - "device": "Other", - "userAgent": "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/100.0.4896.75 Safari/537.36", - "botProbability": 0 - }, - "incognito": false, - "ip": "45.86.200.195", - "ipLocation": { - "accuracyRadius": 1000, - "latitude": 52.3824, - "longitude": 4.8995, - "timezone": "Europe/Amsterdam", - "country": { - "code": "NL", - "name": "Netherlands" - }, - "continent": { - "code": "EU", - "name": "Europe" - } - }, - "timestamp": 1650301590834, - "time": "2022-04-18T17:06:30Z", - "url": "https://fingerprintjs.com/", - "tag": {}, - "confidence": { - "score": 1 - }, - "visitorFound": true, - "firstSeenAt": { - "global": "2022-02-04T11:31:20Z", - "subscription": "2022-02-04T11:31:20Z" - }, - "lastSeenAt": { - "global": "2022-04-18T12:23:30.446Z", - "subscription": "2022-04-18T12:23:30.446Z" - } - }, - { - "requestId": "1650284610441.lJrX4M", - "browserDetails": { - "browserName": "Chrome", - "browserMajorVersion": "100", - "browserFullVersion": "100.0.4896", - "os": "Mac OS X", - "osVersion": "10.15.7", - "device": "Other", - "userAgent": "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/100.0.4896.75 Safari/537.36", - "botProbability": 0 - }, - "incognito": false, - "ip": "45.86.200.179", - "ipLocation": { - "accuracyRadius": 1000, - "latitude": 52.3824, - "longitude": 4.8995, - "timezone": "Europe/Amsterdam", - "country": { - "code": "NL", - "name": "Netherlands" - }, - "continent": { - "code": "EU", - "name": "Europe" - } - }, - "timestamp": 1650284610446, - "time": "2022-04-18T12:23:30Z", - "url": "https://fingerprintjs.com/blog/", - "tag": {}, - "confidence": { - "score": 1 - }, - "visitorFound": true, - "firstSeenAt": { - "global": "2022-02-04T11:31:20Z", - "subscription": "2022-02-04T11:31:20Z" - }, - "lastSeenAt": { - "global": "2022-04-06T14:53:00.526Z", - "subscription": "2022-04-06T14:53:00.526Z" - } - }, - { - "requestId": "1649256780522.WAXWf2", - "browserDetails": { - "browserName": "Chrome", - "browserMajorVersion": "100", - "browserFullVersion": "100.0.4896", - "os": "Mac OS X", - "osVersion": "10.15.7", - "device": "Other", - "userAgent": "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/100.0.4896.60 Safari/537.36", - "botProbability": 0 - }, - "incognito": false, - "ip": "109.245.35.200", - "ipLocation": { - "accuracyRadius": 50, - "latitude": 44.8166, - "longitude": 20.4721, - "timezone": "Europe/Belgrade", - "city": { - "name": "Belgrade" - }, - "country": { - "code": "RS", - "name": "Serbia" - }, - "continent": { - "code": "EU", - "name": "Europe" - }, - "subdivisions": [ - { - "isoCode": "00", - "name": "Belgrade" - } - ] - }, - "timestamp": 1649256780526, - "time": "2022-04-06T14:53:00Z", - "url": "https://fingerprintjs.com/", - "tag": {}, - "confidence": { - "score": 1 - }, - "visitorFound": true, - "firstSeenAt": { - "global": "2022-02-04T11:31:20Z", - "subscription": "2022-02-04T11:31:20Z" - }, - "lastSeenAt": { - "global": "2022-03-18T11:08:35.698Z", - "subscription": "2022-03-18T11:08:35.698Z" - } - }, - { - "requestId": "1649256780520.RRC4PR", - "browserDetails": { - "browserName": "Chrome", - "browserMajorVersion": "100", - "browserFullVersion": "100.0.4896", - "os": "Mac OS X", - "osVersion": "10.15.7", - "device": "Other", - "userAgent": "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/100.0.4896.60 Safari/537.36", - "botProbability": 0 - }, - "incognito": false, - "ip": "109.245.35.200", - "ipLocation": { - "accuracyRadius": 50, - "latitude": 44.8166, - "longitude": 20.4721, - "timezone": "Europe/Belgrade", - "city": { - "name": "Belgrade" - }, - "country": { - "code": "RS", - "name": "Serbia" - }, - "continent": { - "code": "EU", - "name": "Europe" - }, - "subdivisions": [ - { - "isoCode": "00", - "name": "Belgrade" - } - ] - }, - "timestamp": 1649256780525, - "time": "2022-04-06T14:53:00Z", - "url": "https://fingerprintjs.com/", - "tag": {}, - "confidence": { - "score": 1 - }, - "visitorFound": true, - "firstSeenAt": { - "global": "2022-02-04T11:31:20Z", - "subscription": "2022-02-04T11:31:20Z" - }, - "lastSeenAt": { - "global": "2022-03-18T11:08:35.698Z", - "subscription": "2022-03-18T11:08:35.698Z" - } - }, - { - "requestId": "1647601715689.iocXfW", - "browserDetails": { - "browserName": "Chrome", - "browserMajorVersion": "98", - "browserFullVersion": "98.0.4758", - "os": "Mac OS X", - "osVersion": "10.15.7", - "device": "Other", - "userAgent": "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/98.0.4758.109 Safari/537.36", - "botProbability": 0 - }, - "incognito": false, - "ip": "178.223.21.183", - "ipLocation": { - "accuracyRadius": 50, - "latitude": 44.8166, - "longitude": 20.4721, - "timezone": "Europe/Belgrade", - "city": { - "name": "Belgrade" - }, - "country": { - "code": "RS", - "name": "Serbia" - }, - "continent": { - "code": "EU", - "name": "Europe" - }, - "subdivisions": [ - { - "isoCode": "00", - "name": "Belgrade" - } - ] - }, - "timestamp": 1647601715698, - "time": "2022-03-18T11:08:35Z", - "url": "https://fingerprintjs.com/", - "tag": {}, - "confidence": { - "score": 1 - }, - "visitorFound": true, - "firstSeenAt": { - "global": "2022-02-04T11:31:20Z", - "subscription": "2022-02-04T11:31:20Z" - }, - "lastSeenAt": { - "global": "2022-03-16T08:21:23.62Z", - "subscription": "2022-03-16T08:21:23.62Z" - } - }, - { - "requestId": "1647418883615.Vck2NA", - "browserDetails": { - "browserName": "Chrome", - "browserMajorVersion": "98", - "browserFullVersion": "98.0.4758", - "os": "Mac OS X", - "osVersion": "10.15.7", - "device": "Other", - "userAgent": "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/98.0.4758.109 Safari/537.36", - "botProbability": 0 - }, - "incognito": false, - "ip": "87.116.165.97", - "ipLocation": { - "accuracyRadius": 50, - "latitude": 44.8166, - "longitude": 20.4721, - "timezone": "Europe/Belgrade", - "city": { - "name": "Belgrade" - }, - "country": { - "code": "RS", - "name": "Serbia" - }, - "continent": { - "code": "EU", - "name": "Europe" - }, - "subdivisions": [ - { - "isoCode": "00", - "name": "Belgrade" - } - ] - }, - "timestamp": 1647418883620, - "time": "2022-03-16T08:21:23Z", - "url": "https://fingerprintjs.com/", - "tag": {}, - "confidence": { - "score": 1 - }, - "visitorFound": true, - "firstSeenAt": { - "global": "2022-02-04T11:31:20Z", - "subscription": "2022-02-04T11:31:20Z" - }, - "lastSeenAt": { - "global": "2022-03-16T08:21:18.398Z", - "subscription": "2022-03-16T08:21:18.398Z" - } - }, - { - "requestId": "1647418878391.NZDmht", - "browserDetails": { - "browserName": "Chrome", - "browserMajorVersion": "98", - "browserFullVersion": "98.0.4758", - "os": "Mac OS X", - "osVersion": "10.15.7", - "device": "Other", - "userAgent": "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/98.0.4758.109 Safari/537.36", - "botProbability": 0 - }, - "incognito": false, - "ip": "87.116.165.97", - "ipLocation": { - "accuracyRadius": 50, - "latitude": 44.8166, - "longitude": 20.4721, - "timezone": "Europe/Belgrade", - "city": { - "name": "Belgrade" - }, - "country": { - "code": "RS", - "name": "Serbia" - }, - "continent": { - "code": "EU", - "name": "Europe" - }, - "subdivisions": [ - { - "isoCode": "00", - "name": "Belgrade" - } - ] - }, - "timestamp": 1647418878398, - "time": "2022-03-16T08:21:18Z", - "url": "https://fingerprintjs.com/", - "tag": {}, - "confidence": { - "score": 1 - }, - "visitorFound": true, - "firstSeenAt": { - "global": "2022-02-04T11:31:20Z", - "subscription": "2022-02-04T11:31:20Z" - }, - "lastSeenAt": { - "global": "2022-03-15T11:46:51.858Z", - "subscription": "2022-03-15T11:46:51.858Z" - } - }, - { - "requestId": "1647344811836.RvNkL5", - "browserDetails": { - "browserName": "Chrome", - "browserMajorVersion": "98", - "browserFullVersion": "98.0.4758", - "os": "Mac OS X", - "osVersion": "10.15.7", - "device": "Other", - "userAgent": "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/98.0.4758.109 Safari/537.36", - "botProbability": 0 - }, - "incognito": false, - "ip": "87.116.165.97", - "ipLocation": { - "accuracyRadius": 50, - "latitude": 44.8166, - "longitude": 20.4721, - "timezone": "Europe/Belgrade", - "city": { - "name": "Belgrade" - }, - "country": { - "code": "RS", - "name": "Serbia" - }, - "continent": { - "code": "EU", - "name": "Europe" - }, - "subdivisions": [ - { - "isoCode": "00", - "name": "Belgrade" - } - ] - }, - "timestamp": 1647344811858, - "time": "2022-03-15T11:46:51Z", - "url": "https://fingerprintjs.com/", - "tag": {}, - "confidence": { - "score": 1 - }, - "visitorFound": true, - "firstSeenAt": { - "global": "2022-02-04T11:31:20Z", - "subscription": "2022-02-04T11:31:20Z" - }, - "lastSeenAt": { - "global": "2022-03-08T12:33:05.677Z", - "subscription": "2022-03-08T12:33:05.677Z" - } - } - ] -} + + + + + + Page not found · GitHub Pages + + + + +
+ +

404

+

File not found

+ +

+ The site configured at this address does not + contain the requested file. +

+ +

+ If this is your site, make sure that the filename case matches the URL + as well as any file permissions.
+ For root URLs (like http://example.com/) you must provide an + index.html file. +

+ +

+ Read the full documentation + for more information about using GitHub Pages. +

+ +
+ GitHub Status — + @githubstatus +
+ + + + +
+ + diff --git a/src/test/resources/mocks/visits_too_many_requests_error.json b/src/test/resources/mocks/visits_too_many_requests_error.json index 00d00f2..5b10050 100644 --- a/src/test/resources/mocks/visits_too_many_requests_error.json +++ b/src/test/resources/mocks/visits_too_many_requests_error.json @@ -1,3 +1,89 @@ -{ - "error": "too many requests" -} + + + + + + Page not found · GitHub Pages + + + + +
+ +

404

+

File not found

+ +

+ The site configured at this address does not + contain the requested file. +

+ +

+ If this is your site, make sure that the filename case matches the URL + as well as any file permissions.
+ For root URLs (like http://example.com/) you must provide an + index.html file. +

+ +

+ Read the full documentation + for more information about using GitHub Pages. +

+ +
+ GitHub Status — + @githubstatus +
+ + + + +
+ +