Releases: fingerprintjs/fingerprint-pro-server-api-python-sdk
Releases · fingerprintjs/fingerprint-pro-server-api-python-sdk
v8.0.0
Major Changes
The underlying Server API hasn’t changed, but we made SDK type and class generation more precise, resulting in small breaking changes for the SDK itself. This change should make the SDK API a lot more stable going forward
-
- Remove the
BrowserDetailsfieldbotProbability. - Update the
IdentificationConfidencefieldscoretype format:float->double. - Make the
RawDeviceAttributeErrorfieldnameoptional . - Make the
RawDeviceAttributeErrorfieldmessageoptional . - events: Remove the
EventsResponsefielderror.- [note]: The errors are represented by
ErrorResponsemodel.
- [note]: The errors are represented by
- events: Update the
HighActivityfielddailyRequeststype format:number->int64. - events: Specify the
TamperingfieldanomalyScoretype format:double. - webhook: Make the
Webhookfields optional:visitorId,visitorFound,firstSeenAt,lastSeenAt,browserDetails,incognito. - webhook: Make the
WebhookClonedAppfieldresultoptional. - webhook: Make the
WebhookDeveloperToolsfieldresultoptional. - webhook: Make the
WebhookEmulatorfieldresultoptional. - webhook: Make the
WebhookFactoryResetfieldstimeandtimestampoptional. - webhook: Make the
WebhookFridafieldresultoptional. - webhook: Update the
WebhookHighActivityfielddailyRequeststype format:number->int64. - webhook: Make the
WebhookIPBlocklistfieldsresultanddetailsoptional. - webhook: Make the
WebhookJailbrokenfieldresultoptional. - webhook: Make the
WebhookLocationSpoofingfieldresultoptional. - webhook: Make the
WebhookPrivacySettingsfieldresultoptional. - webhook: Make the
WebhookProxyfieldresultoptional. - webhook: Make the
WebhookRemoteControlfieldresultoptional. - webhook: Make the
WebhookRootAppsfieldresultoptional. - webhook: Make the
WebhookSuspectScorefieldresultoptional. - webhook: Make the
WebhookTamperingfieldsresult,anomalyScoreandantiDetectBrowseroptional. - webhook: Specify the
WebhookTamperingfieldanomalyScoretype format:double. - webhook: Make the
WebhookTorfieldresultoptional. - webhook: Make the
WebhookVelocityfields optional:distinctIp,distinctLinkedId,distinctCountry,events,ipEvents,distinctIpByLinkedId,distinctVisitorIdByLinkedId. - webhook: Make the
WebhookVirtualMachinefieldresultoptional. - webhook: Make the
WebhookVPNfields optional:result,confidence,originTimezone,methods. (8df1d4a)
- Remove the
-
- Rename
BotdResult->Botd. - Rename
BotdDetectionResult->BotdBot:- Extract
resulttype asBotdBotResult.
- Extract
- Rename
ClonedAppResult->ClonedApp. - Rename
DeveloperToolsResult->DeveloperTools. - Rename
EmulatorResult->Emulator. - Refactor error models:
- Remove
ErrorCommon403Response,ErrorCommon429Response,ErrorEvent404Response,TooManyRequestsResponse,ErrorVisits403,ErrorUpdateEvent400Response,ErrorUpdateEvent409Response,ErrorVisitor400Response,ErrorVisitor404Response,IdentificationError,ProductError. - Introduce
ErrorResponseandErrorPlainResponse.- [note]:
ErrorPlainResponsehas a different format{ "error": string }and it is used only inGET /visitors.
- [note]:
- Extract
errortype asError. - Extract
error.codetype asErrorCode.
- Remove
- Rename
EventResponse->EventsGetResponse. - Rename
EventUpdateRequest->EventsUpdateRequest. - Rename
FactoryResetResult->FactoryReset. - Rename
FridaResult->Frida. - Rename
IPLocation->Geolocation:- Rename
IPLocationCity->GeolocationCity. - Extract
subdivisionstype asGeolocationSubdivisions. - Rename
Location->GeolocationContinent: - Introduce a dedicated type
GeolocationCountry. - Rename
Subdivision->GeolocationSubdivision.
- Rename
- Rename
HighActivityResult->HighActivity. - Rename
Confidence->IdentificationConfidence. - Rename
SeenAt->IdentificationSeenAt. - Rename
IncognitoResult->Incognito. - Rename
IpBlockListResult->IPBlocklist:- Extract
detailstype asIPBlocklistDetails.
- Extract
- Rename
IpInfoResult->IPInfo:- Rename
IpInfoResultV4->IPInfoV4. - Rename
IpInfoResultV6->IPInfoV6. - Rename
ASN->IPInfoASN. - Rename
DataCenter->IPInfoDataCenter.
- Rename
- Rename
JailbrokenResult->Jailbroken. - Rename
LocationSpoofingResult->LocationSpoofing. - Rename
PrivacySettingsResult->PrivacySettings. - Rename
ProductsResponse->Products:- Rename inner types:
ProductsResponseIdentification->ProductIdentification,ProductsResponseIdentificationData->Identification,ProductsResponseBotd->ProductBotd,SignalResponseRootApps->ProductRootApps,SignalResponseEmulator->ProductEmulator,SignalResponseIpInfo->ProductIPInfo,SignalResponseIpBlocklist->ProductIPBlocklist,SignalResponseTor->ProductTor,SignalResponseVpn->ProductVPN,SignalResponseProxy->ProductProxy,ProxyResult->Proxy,SignalResponseIncognito->ProductIncognito,SignalResponseTampering->ProductTampering,SignalResponseClonedApp->ProductClonedApp,SignalResponseFactoryReset->ProductFactoryReset,SignalResponseJailbroken->ProductJailbroken,SignalResponseFrida->ProductFrida,SignalResponsePrivacySettings->ProductPrivacySettings,SignalResponseVirtualMachine->ProductVirtualMachine,SignalResponseRawDeviceAttributes->ProductRawDeviceAttributes,RawDeviceAttributesResultValue->RawDeviceAttributes,SignalResponseHighActivity->ProductHighActivity,SignalResponseLocationSpoofing->ProductLocationSpoofing,SignalResponseSuspectScore->ProductSuspectScore,SignalResponseRemoteControl->ProductRemoteControl,SignalResponseVelocity->ProductVelocity,SignalResponseDeveloperTools->ProductDeveloperTools. - Extract
identification.datatype asIdentification.
- Rename inner types:
- Rename
RawDeviceAttributesResult->RawDeviceAttributes:- Extract item type as
RawDeviceAttribute. - Extract
errortype asRawDeviceAttributeError.
- Extract item type as
- Rename
RemoteControlResult->RemoteControl. - Rename
RootAppsResult->RootApps. - Rename
SuspectScoreResult->SuspectScore. - Extract new model
Tag. - Rename
TamperingResult->Tampering. - Rename
TorResult->Tor. - Rename
VelocityResult->Velocity:- Rename
VelocityIntervals->VelocityData. - Rename
VelocityIntervalResult->VelocityIntervals.
- Rename
- Rename
VirtualMachineResult->VirtualMachine. - Rename the
VisitfieldipLocationtypeDeprecatedIPLocation->DeprecatedGeolocation.- Instead of
DeprecatedIPLocationCityuse commonGeolocationCity
- Instead of
- Rename
Response->VisitorsGetResponse.- Omit extra inner type
ResponseVisits
- Omit extra inner type
- Rename
VpnResult->VPN.- Extract
confidencetype asVPNConfidence. - Extract
methodstype asVPNMethods.
- Extract
- Rename
WebhookVisit->Webhook.- Introduce new inner types:
WebhookRootApps,WebhookEmulator,WebhookIPInfo,WebhookIPBlocklist,WebhookTor,WebhookVPN,WebhookProxy,WebhookTampering,WebhookClonedApp,WebhookFactoryReset,WebhookJailbroken,WebhookFrida,WebhookPrivacySettings,WebhookVirtualMachine,WebhookRawDeviceAttributes,WebhookHighActivity,WebhookLocationSpoofing,WebhookSuspectScore,WebhookRemoteControl,WebhookVelocity,WebhookDeveloperTools. (8df1d4a)
- Introduce new inner types:
- Rename
- Rename
Webhookclass toWebhookValidation.
Right now,Webhookclass points to the actual data model. (8710516)
Minor Changes
- Added new
ipEvents,distinctIpByLinkedId, anddistinctVisitorIdByLinkedIdfields to thevelocitySmart Signal. (8df1d4a) -
- Make the
GeolocationCityfieldnamerequired. - Make the
GeolocationSubdivisionfieldisoCoderequired. - Make the
GeolocationSubdivisionfieldnamerequired. - Make the
IPInfoASNfieldnamerequired . - Make the
IPInfoDataCenterfieldnamerequired. - Add optional
IdentificationConfidencefieldcomment. - events: Add optional
Botdfieldmeta. - events: Add optional
Identificationfieldcomponents. - events: Make the
VPNfieldoriginCountryrequired. - visitors: Add optional
Visitfieldcomponents. - webhook: Add optional
Webhookfieldcomponents. (8df1d4a)
- Make the
- events: Add
antiDetectBrowserdetection method to ...
v8.0.0-dev.0
Major Changes
-
- Remove the
BrowserDetailsfieldbotProbability. - Update the
IdentificationConfidencefieldscoretype format:float->double. - Make the
RawDeviceAttributeErrorfieldnameoptional . - Make the
RawDeviceAttributeErrorfieldmessageoptional . - events: Remove the
EventsResponsefielderror.- [note]: The errors are represented by
ErrorResponsemodel.
- [note]: The errors are represented by
- events: Update the
HighActivityfielddailyRequeststype format:number->int64. - events: Specify the
TamperingfieldanomalyScoretype format:double. - webhook: Make the
Webhookfields optional:visitorId,visitorFound,firstSeenAt,lastSeenAt,browserDetails,incognito. - webhook: Make the
WebhookClonedAppfieldresultoptional. - webhook: Make the
WebhookDeveloperToolsfieldresultoptional. - webhook: Make the
WebhookEmulatorfieldresultoptional. - webhook: Make the
WebhookFactoryResetfieldstimeandtimestampoptional. - webhook: Make the
WebhookFridafieldresultoptional. - webhook: Update the
WebhookHighActivityfielddailyRequeststype format:number->int64. - webhook: Make the
WebhookIPBlocklistfieldsresultanddetailsoptional. - webhook: Make the
WebhookJailbrokenfieldresultoptional. - webhook: Make the
WebhookLocationSpoofingfieldresultoptional. - webhook: Make the
WebhookPrivacySettingsfieldresultoptional. - webhook: Make the
WebhookProxyfieldresultoptional. - webhook: Make the
WebhookRemoteControlfieldresultoptional. - webhook: Make the
WebhookRootAppsfieldresultoptional. - webhook: Make the
WebhookSuspectScorefieldresultoptional. - webhook: Make the
WebhookTamperingfieldsresult,anomalyScoreandantiDetectBrowseroptional. - webhook: Specify the
WebhookTamperingfieldanomalyScoretype format:double. - webhook: Make the
WebhookTorfieldresultoptional. - webhook: Make the
WebhookVelocityfields optional:distinctIp,distinctLinkedId,distinctCountry,events,ipEvents,distinctIpByLinkedId,distinctVisitorIdByLinkedId. - webhook: Make the
WebhookVirtualMachinefieldresultoptional. - webhook: Make the
WebhookVPNfields optional:result,confidence,originTimezone,methods. (8df1d4a)
- Remove the
-
- Rename
BotdResult->Botd. - Rename
BotdDetectionResult->BotdBot:- Extract
resulttype asBotdBotResult.
- Extract
- Rename
ClonedAppResult->ClonedApp. - Rename
DeveloperToolsResult->DeveloperTools. - Rename
EmulatorResult->Emulator. - Refactor error models:
- Remove
ErrorCommon403Response,ErrorCommon429Response,ErrorEvent404Response,TooManyRequestsResponse,ErrorVisits403,ErrorUpdateEvent400Response,ErrorUpdateEvent409Response,ErrorVisitor400Response,ErrorVisitor404Response,IdentificationError,ProductError. - Introduce
ErrorResponseandErrorPlainResponse.- [note]:
ErrorPlainResponsehas a different format{ "error": string }and it is used only inGET /visitors.
- [note]:
- Extract
errortype asError. - Extract
error.codetype asErrorCode.
- Remove
- Rename
EventResponse->EventsGetResponse. - Rename
EventUpdateRequest->EventsUpdateRequest. - Rename
FactoryResetResult->FactoryReset. - Rename
FridaResult->Frida. - Rename
IPLocation->Geolocation:- Rename
IPLocationCity->GeolocationCity. - Extract
subdivisionstype asGeolocationSubdivisions. - Rename
Location->GeolocationContinent: - Introduce a dedicated type
GeolocationCountry. - Rename
Subdivision->GeolocationSubdivision.
- Rename
- Rename
HighActivityResult->HighActivity. - Rename
Confidence->IdentificationConfidence. - Rename
SeenAt->IdentificationSeenAt. - Rename
IncognitoResult->Incognito. - Rename
IpBlockListResult->IPBlocklist:- Extract
detailstype asIPBlocklistDetails.
- Extract
- Rename
IpInfoResult->IPInfo:- Rename
IpInfoResultV4->IPInfoV4. - Rename
IpInfoResultV6->IPInfoV6. - Rename
ASN->IPInfoASN. - Rename
DataCenter->IPInfoDataCenter.
- Rename
- Rename
JailbrokenResult->Jailbroken. - Rename
LocationSpoofingResult->LocationSpoofing. - Rename
PrivacySettingsResult->PrivacySettings. - Rename
ProductsResponse->Products:- Rename inner types:
ProductsResponseIdentification->ProductIdentification,ProductsResponseIdentificationData->Identification,ProductsResponseBotd->ProductBotd,SignalResponseRootApps->ProductRootApps,SignalResponseEmulator->ProductEmulator,SignalResponseIpInfo->ProductIPInfo,SignalResponseIpBlocklist->ProductIPBlocklist,SignalResponseTor->ProductTor,SignalResponseVpn->ProductVPN,SignalResponseProxy->ProductProxy,ProxyResult->Proxy,SignalResponseIncognito->ProductIncognito,SignalResponseTampering->ProductTampering,SignalResponseClonedApp->ProductClonedApp,SignalResponseFactoryReset->ProductFactoryReset,SignalResponseJailbroken->ProductJailbroken,SignalResponseFrida->ProductFrida,SignalResponsePrivacySettings->ProductPrivacySettings,SignalResponseVirtualMachine->ProductVirtualMachine,SignalResponseRawDeviceAttributes->ProductRawDeviceAttributes,RawDeviceAttributesResultValue->RawDeviceAttributes,SignalResponseHighActivity->ProductHighActivity,SignalResponseLocationSpoofing->ProductLocationSpoofing,SignalResponseSuspectScore->ProductSuspectScore,SignalResponseRemoteControl->ProductRemoteControl,SignalResponseVelocity->ProductVelocity,SignalResponseDeveloperTools->ProductDeveloperTools. - Extract
identification.datatype asIdentification.
- Rename inner types:
- Rename
RawDeviceAttributesResult->RawDeviceAttributes:- Extract item type as
RawDeviceAttribute. - Extract
errortype asRawDeviceAttributeError.
- Extract item type as
- Rename
RemoteControlResult->RemoteControl. - Rename
RootAppsResult->RootApps. - Rename
SuspectScoreResult->SuspectScore. - Extract new model
Tag. - Rename
TamperingResult->Tampering. - Rename
TorResult->Tor. - Rename
VelocityResult->Velocity:- Rename
VelocityIntervals->VelocityData. - Rename
VelocityIntervalResult->VelocityIntervals.
- Rename
- Rename
VirtualMachineResult->VirtualMachine. - Rename the
VisitfieldipLocationtypeDeprecatedIPLocation->DeprecatedGeolocation.- Instead of
DeprecatedIPLocationCityuse commonGeolocationCity
- Instead of
- Rename
Response->VisitorsGetResponse.- Omit extra inner type
ResponseVisits
- Omit extra inner type
- Rename
VpnResult->VPN.- Extract
confidencetype asVPNConfidence. - Extract
methodstype asVPNMethods.
- Extract
- Rename
WebhookVisit->Webhook.- Introduce new inner types:
WebhookRootApps,WebhookEmulator,WebhookIPInfo,WebhookIPBlocklist,WebhookTor,WebhookVPN,WebhookProxy,WebhookTampering,WebhookClonedApp,WebhookFactoryReset,WebhookJailbroken,WebhookFrida,WebhookPrivacySettings,WebhookVirtualMachine,WebhookRawDeviceAttributes,WebhookHighActivity,WebhookLocationSpoofing,WebhookSuspectScore,WebhookRemoteControl,WebhookVelocity,WebhookDeveloperTools. (8df1d4a)
- Introduce new inner types:
- Rename
Minor Changes
- Added new
ipEvents,distinctIpByLinkedId, anddistinctVisitorIdByLinkedIdfields to thevelocitySmart Signal. (8df1d4a) -
- Make the
GeolocationCityfieldnamerequired. - Make the
GeolocationSubdivisionfieldisoCoderequired. - Make the
GeolocationSubdivisionfieldnamerequired. - Make the
IPInfoASNfieldnamerequired . - Make the
IPInfoDataCenterfieldnamerequired. - Add optional
IdentificationConfidencefieldcomment. - events: Add optional
Botdfieldmeta. - events: Add optional
Identificationfieldcomponents. - events: Make the
VPNfieldoriginCountryrequired. - visitors: Add optional
Visitfieldcomponents. - webhook: Add optional
Webhookfieldcomponents. (8df1d4a)
- Make the
- events: Add
antiDetectBrowserdetection method to thetamperingSmart Signal. (8df1d4a)
v7.1.0
v7.1.0-rc.0
Minor Changes
- visitors: Add the confidence field to the VPN Detection Smart Signal (e98dbd4)
v7.0.1
v7.0.1-dev.1
7.0.1-dev.1 (2024-08-21)
Bug Fixes
- deserialize
raw_device_attributes.datato correct typeRawDeviceAttributesResult(743db13)
v7.0.0
7.0.0 (2024-08-14)
⚠ BREAKING CHANGES
- rename
unseal_events_responsetounseal_event_responseto keep proper naming - minimum supported Python version is 3.9 now
- rename
error_event403_response,error_event403_response_error,many_requests_responsetocommon403_error_response,error_common403_responsetoo_many_requests_response
Features
- add
delete_visitor_datamethod (961a165) - add
developer_toolssignal (ca25ef7) - add
osMismatchfield to thevpnsignal (0b95bda) - add
remoteControlsignal (5c7b149) - add
revisionfield to theconfidencesignal (9b42d6b) - add
update_eventmethod (752b1c9) - add
velocitysignal (9b31367) - add better error reporting in case of wrong data shape (40e9e6a)
- add webhook validation method (d92b1fe)
- create base class for models and move here utility functions (bfa2285)
- drop Python 3.8 support (d857954)
- simplify
Configurationclass, use inline types (8cad048) - simplify
rest.pyandapi_client.pyand add inline types (a8b1ae6) - update schema (c2e99cd)
- use inline types for
fingerprint_api.py(c466bd5) - use inline types instead of annotations for models (1121a5c)
Bug Fixes
unseal_event_responsereturns correctEventResponsestructure (a7a0e2d)- don't serialise empty fields in models (9643e1d)
- make
tagfield optional for webhook (e8a28f6) - mark optional fields in models (2c62e20)
- remove Python2 compatibility code (2621ccd)
- update schema with required
bodyfield for theupdateEventmethod (c6eaf5e)
v7.0.0-dev.3
v7.0.0-dev.2
7.0.0-dev.2 (2024-08-09)
⚠ BREAKING CHANGES
- rename
unseal_events_responsetounseal_event_responseto keep proper naming
Bug Fixes
unseal_event_responsereturns correctEventResponsestructure (a7a0e2d)
v7.0.0-dev.1
7.0.0-dev.1 (2024-08-08)
⚠ BREAKING CHANGES
- minimum supported Python version is 3.9 now
- rename
error_event403_response,error_event403_response_error,many_requests_responsetocommon403_error_response,error_common403_responsetoo_many_requests_response
Features
- add
delete_visitor_datamethod (961a165) - add
developer_toolssignal (ca25ef7) - add
osMismatchfield to thevpnsignal (0b95bda) - add
remoteControlsignal (5c7b149) - add
revisionfield to theconfidencesignal (9b42d6b) - add
update_eventmethod (752b1c9) - add
velocitysignal (9b31367) - add better error reporting in case of wrong data shape (40e9e6a)
- add webhook validation method (d92b1fe)
- create base class for models and move here utility functions (bfa2285)
- drop Python 3.8 support (d857954)
- simplify
Configurationclass, use inline types (8cad048) - simplify
rest.pyandapi_client.pyand add inline types (a8b1ae6) - update schema (c2e99cd)
- use inline types for
fingerprint_api.py(c466bd5) - use inline types instead of annotations for models (1121a5c)