- Add
simulatorsignal for iOS platform (bf4dd89) - Add
virtual_machine_ml_scorefield forvirtual_machinesignal (bf4dd89) - Add
high_recall_idandsimulatorfilters for thesearchEventsmethod (bf4dd89) - Add
tampering_confidenceandtampering_ml_scorefields fortamperingsmart signal (bf4dd89)
- Remove
request_not_foundvalue from theErrorCodeenum (bf4dd89)
-
Server API v3 -> Server API v4 migration
- All endpoints switched to
/v4/*. authenticationModeoption removed fromFingerprintServerApiClient.request_idrenamed toevent_id.- Event updates switched to snake_case fields and
PATCHmethod. - Response models switched to snake_case fields.
- Removed APIs:
getVisits(),getRelatedVisitors(), and related types (VisitorHistoryFilter,ErrorPlainResponse,VisitorsResponse,RelatedVisitorsResponse,RelatedVisitorsFilter,Webhook,EventsUpdateRequest). updateEventsignature changed:(eventId, body)instead of(body, eventId).
Migration Notes:
Use new client when initializing:
FingerprintServerApiClient:- const client = new FingerprintJsServerApiClient(config) + const client = new FingerprintServerApiClient(config)
authenticationModeoption removed from constructor:const client = new FingerprintServerApiClient({ - authenticationMode: AuthenticationMode.AuthHeader // ... })Use
searchEventsfunction instead ofgetVisits():- client.getVisits('VISITOR_ID', { limit: 1 }) + client.searchEvents({ visitor_id: 'VISITOR_ID', limit: 1 })
Related visitors API (
getRelatedVisitors()) is removed:- client.getRelatedVisitors({ visitor_id: 'VISITOR_ID' })Use
tagsinstead oftagfor updating an event:- const body: EventsUpdateRequest = { + const body: EventUpdate = { - tag: { + tags: { key: 'value', } }
updateEventparameter order changed to(eventId, body):- client.updateEvent(body, 'EVENT_ID') + client.updateEvent('EVENT_ID', body)
Use simplified and snake_case fields for the response:
const event = await client.getEvent(eventId) - console.log(event.products.identification.data.visitorId) + console.log(event.identification.visitor_id)
Remove any usage of the removed types (
VisitorHistoryFilter,ErrorPlainResponse,VisitorsResponse,RelatedVisitorsResponse,RelatedVisitorsFilter,Webhook,EventsUpdateRequest). (ce2854d) - All endpoints switched to
-
Package renamed from
@fingerprintjs/fingerprintjs-pro-server-apito@fingerprint/node-sdk. (385b01b)
- Added
optionsparameter to thegetEventoperation. (3ebae43)
- Performance: Avoid the overhead of cloning and double-buffering large payloads in the success case. (bc3fd33)
- BREAKING:
updateEventnow takeseventIdas the first parameter andbodyas the second. (4ba89f6)
- perf: Avoid the overhead of cloning and double-buffering large payloads on success case. (bc3fd33)
-
Server APIv3 -> Server APIv4 migration
- Switch all endpoints to
/v4/*. - Remove
authenticationModeoption when initializingFingerprintServerApiClient. - Rename
request_idtoevent_id. - Use snake_case fields when updating an event.
- Use
PATCHmethod when updating an event. - Examples, tests, and docs updated.
BREAKING CHANGES
- Use new client when initializing:
FingerprintServerApiClient. authenticationModeoption removed.- Removed
getVisits()function. - Removed
getRelatedVisitors()function. - Removed
VisitorHistoryFilter,ErrorPlainResponse,VisitorsResponse,RelatedVisitorsResponse,RelatedVisitorsFilter,Webhook,EventsUpdateRequesttypes. - Use
tagsinstead oftagfor updating an event. - Response models changed. (ce2854d)
- Switch all endpoints to
-
change package name to
@fingerprint/fingerprint-server-sdk(385b01b)
- add
optionsparameter to thegetEventoperation (3ebae43)
- events-search: Event search now supports a new set of filter parameters:
developer_tools,location_spoofing,mitm_attack,proxy,sdk_version,sdk_platform,environment(38690a8) - webhook: Add
supplementaryIdsproperty to the Webhooks schema. (38690a8) - Add
proximitysignal that represents a fixed geographical zone in a discrete global grid within which the device is observed. (8e3b09b) - Add
environmentIdproperty toidentification(38690a8)
- Add
proximitysignal that represents a fixed geographical zone in a discrete global grid within which the device is observed. (8e3b09b)
- events-search: Event search now supports a new set of filter parameters:
developer_tools,location_spoofing,mitm_attack,proxy,sdk_version,sdk_platform,environment(38690a8) - webhook: Add
supplementaryIdsproperty to the Webhooks schema. (38690a8) - Add
environmentIdproperty toidentification(38690a8)
- Add
detailsobject to theproxysignal. This field includes thetypeof the detected proxy (residentialordata_center) and thelastSeenAttimestamp of when an IP was last observed to show proxy-like behavior. (5988f03)
- Mark
replayedfield required in theidentificationproduct schema. This field will always be present. (a30d9c8) - Add
sdkfield with platform metadata toidentification(a30d9c8)
- Deprecate the Remote Control Detection Smart Signal. This signal is no longer available. (a30d9c8)
- Mark
replayedfield required in theidentificationproduct schema. This field will always be present. (a30d9c8) - Add
sdkfield with platform metadata toidentification(a30d9c8)
- Deprecate the Remote Control Detection Smart Signal. This signal is no longer available. (a30d9c8)
- add
replayedfield toidentificationin Events and Webhooks (0874aec) - allow enum parameters to be specified as their string literal equivalents (c4ff3c9)
- Add
confidenceproperty to the Proxy detection Smart Signal, which now supports both residential and public web proxies. (af62b15)
- events-search: Event search now supports a new set of filter parameters:
vpn,virtual_machine,tampering,anti_detect_browser,incognito,privacy_settings,jailbroken,frida,factory_reset,cloned_app,emulator,root_apps,vpn_confidence,min_suspect_score. (50be5ca) - events-search: Event search now supports two new filter parameters:
ip_blocklist,datacenter(96911d9)
- events: Update Tampering descriptions to reflect Android support. (50be5ca)
- webhook: Add
environmentIdproperty (50be5ca)
- events-search: Event search now supports two new filter parameters:
ip_blocklist,datacenter(96911d9)
- events-search: Event search now supports a new set of filter parameters:
vpn,virtual_machine,tampering,anti_detect_browser,incognito,privacy_settings,jailbroken,frida,factory_reset,cloned_app,emulator,root_apps,vpn_confidence,min_suspect_score. (50be5ca)
- events: Update Tampering descriptions to reflect Android support. (50be5ca)
- webhook: Add
environmentIdproperty (50be5ca)
- Add
mitmAttack(man-in-the-middle attack) Smart Signal. (8dd004d)
- events-search: Add
pagination_keyparameter (97270e0)
- events-search: Add
pagination_keyparameter (97270e0)
- events-search: Add a new
events/searchAPI endpoint. Allow users to search for identification events matching one or more search criteria, for example, visitor ID, IP address, bot detection result, etc. (48918eb)
- events-search: Improve parameter descriptions for
bot,suspect(ce812de) - Filter out
undefinedornullquery parameters before sending request (62a0279)
- Filter out
undefinedornullquery parameters before sending request (62a0279)
- events-search: Add a new
events/searchAPI endpoint. Allow users to search for identification events matching one or more search criteria, for example, visitor ID, IP address, bot detection result, etc. (48918eb)
- Add
relaydetection method to the VPN Detection Smart Signal (05a9257) - events: Add a
suspectfield to theidentificationproduct schema (05a9257)
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
- Rename
EventUpdateRequesttype toEventsUpdateRequest(54b92b2) -
- 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. (68b89bf)
- 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. (68b89bf)
- Introduce new inner types:
- Rename
- Remove utility functions for checking error type, such as
isEventError,isUpdateEventError, etc. (a17b73f) - Reduce thrown errors to
TooManyRequestsErrorandRequestError(6f4076e) - Rename
VisitWebhooktype toWebhook(980bab0)
- Added new
ipEvents,distinctIpByLinkedId, anddistinctVisitorIdByLinkedIdfields to thevelocitySmart Signal. (68b89bf) -
- 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. (68b89bf)
- Make the
- Remove
ipv4format fromipfield inBotd,Identification,VisitandWebhookmodels. (b707bfa)
- related-visitors: Add mention that the API is billable (68b89bf)
- Rename
EventUpdateRequesttype toEventsUpdateRequest(54b92b2) -
- 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. (68b89bf)
- 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. (68b89bf)
- Introduce new inner types:
- Rename
- Remove utility functions for checking error type, such as
isEventError,isUpdateEventError, etc. (a17b73f) - Reduce thrown errors to
TooManyRequestsErrorandRequestError(6f4076e) - Rename
VisitWebhooktype toWebhook(980bab0)
- Added new
ipEvents,distinctIpByLinkedId, anddistinctVisitorIdByLinkedIdfields to thevelocitySmart Signal. (68b89bf) -
- 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. (68b89bf)
- Make the
- Remove
ipv4format fromipfield inBotd,Identification,VisitandWebhookmodels. (b707bfa)
- related-visitors: Add mention that the API is billable (68b89bf)
- related-visitors: Add GET
/related-visitorsendpoint (4a28c16) - visitors: Add the confidence field to the VPN Detection Smart Signal (4a28c16)
- Deprecate
getVisitorHistorymethod. UsegetVisitsinstead. (f28ba9d) - events: Add
antiDetectBrowserdetection method to thetamperingSmart Signal. (4a28c16)
- related-visitors: Add GET
/related-visitorsendpoint (4a28c16) - visitors: Add the confidence field to the VPN Detection Smart Signal (4a28c16)
- Deprecate
getVisitorHistorymethod. UsegetVisitsinstead. (f28ba9d) - events: Add
antiDetectBrowserdetection method to thetamperingSmart Signal. (4a28c16)
- events: Introduce
PUTendpoint for/eventsAPI (009c8f4)
- events: Introduce
PUTendpoint for/eventsAPI (009c8f4)
5.0.0 (2024-08-12)
- rename
ErrorVisitsDelete400ResponsetoErrorVisitor400Response - rename
ErrorVisitsDelete404ResponseErrortoErrorVisitor404ResponseError - rename
ErrorVisitsDelete404Responseto `ErrorVisitor404Respons - renamed
statusin error object tostatusCode - to access response body in error use
responseBodyproperty, e.g:error.responseBody
- add remoteControl, velocity and developerTools signals (45564cd)
- improve thrown errors, introduce classes per specific error (3a4975d)
- make tag field optional for Webhook (cff6198)
4.1.2 (2024-07-02)
- use correct error type for
incognito,rawDeviceAttributesandtamperingin theGetEventmethod (ad66ae3)
4.1.1 (2024-06-24)
- add 400 and 429 status mappings for DELETE API (8574924)
- provide raw HTTP response in errors that supports body related methods, such as
response.json()(6689b87)
4.1.0 (2024-06-17)
- add
isValidWebhookSignaturefunction for validating webhook signature [INTER-731] (885b693) - add delete API (9f581ab)
- add os Mismatch (c3ca8d7)
- add revision string field to confidence object (a664c2d)
- expose raw response in errors (fd8e352)
- make
Options.regionoptional (48c8024) - provide error as-is without serialization in
getEventmethod (c21a7b6)
- README: remove ipLocation field (acb7c38)
4.0.1 (2024-03-26)
- deps: remove redundant packages (da386da)
4.0.0 (2024-03-26)
- change models for the most smart signals
- make identification field
confidenceoptional - deprecated
ipLocationfield usesDeprecatedIpLocationmodel
- add
linkedIdfield to theBotdResulttype (52e0887) - add
SuspectScoresmart signal support (d2917f3) - add missed errors structures (fa5121d)
- fix
ipLocationdeprecation (e620f75) - make identification field
tagrequired (a919198) - update
originCountryfield to thevpnsignal (fad2222) - use shared structures for webhooks and event (c5380be)
- make fields required according to real API response (999debf)
3.1.0 (2024-01-31)
- add method for decoding sealed results (4220fcd)
3.0.0 (2024-01-12)
IpInfofielddataCenterrenamed todatacenter
2.4.0 (2023-11-27)
- add
highActivityandlocationSpoofingsignals, supportoriginTimezoneforvpnsignal (ce69197)
2.3.3 (2023-10-17)
- deps: bump @babel/traverse from 7.17.3 to 7.23.2 (1617f26)
- deps: bump undici from 5.21.0 to 5.26.3 (9f58385)
2.3.2 (2023-09-21)
2.3.1 (2023-09-19)
- update OpenAPI Schema with
asnanddataCentersignals (e10f677) - update OpenAPI Schema with
auxiliaryMobilemethod for VPN signal (72f5ada)
- deps: bump semver from 5.7.1 to 5.7.2 (10427f0)
- deps: bump tough-cookie from 4.0.0 to 4.1.3 (5c7d259)
- deps: bump word-wrap from 1.2.3 to 1.2.5 (f3a576d)
2.3.0 (2023-07-31)
- README: add
Region.APto example values (061242f)
2.2.0 (2023-06-12)
- update schema with correct
IpLocationformat and doc updates (21e943a)
2.1.0 (2023-05-16)
- introduce more signals (a981440)
2.0.1 (2023-04-14)
- refactor bundle names and add
exportssection for better compatibility with nextjs (d4a0da0)
- deps: bump ArtiomTr/jest-coverage-report-action (bd2a316)
- deps: bump http-cache-semantics from 4.1.0 to 4.1.1 (afce4df)
- deps: bump undici from 5.9.1 to 5.21.0 (9cb735f)
2.0.0 (2023-01-30)
- Change error reporting.
getVisitorHistoryandgetEventmethods throw an exception in case of errors.
- update schema, rework error reporting (baea2f7)
- eslint error (387fd4a)
- improve error reporting for
getEvents, add more tests (ffb00a3) - remove unnecessary checks from the example (e6dd2fd)
- remove unreachable code (3fa05d6)
- retry-after with empty header (e1bfba5)
- review fix for error serialisation (d6e0a74)
- use generic typeguards for errors (c415874)
- deps: bump json5 from 2.2.1 to 2.2.3 (dd19516)
1.4.0 (2022-10-25)
- update schema to support url field for botd result (b293c09)
1.3.0 (2022-09-14)
1.2.1 (2022-08-19)
- deps: bump undici from 5.8.0 to 5.9.1 (33496f2)
1.2.0 (2022-08-18)
1.1.4 (2022-07-22)
- deps: bump undici from 5.5.1 to 5.8.0 (2302572)
1.1.3 (2022-07-13)
- use Webhook type from OpenApi (4bf7ebf)
1.1.2 (2022-07-13)
- ignore engines when installing packages (46ff4b63)
- use packages cache for build command, use yarn to install modules (60612ff4)
- use default node version when publish package (1ec30082)
- return ts target to es2015 (4b496215)
- change build command (b642cdf8)
- use rollup to build project (90baa5d4)
- add production environment for publish task (1f3dc518)
- update logo (6ab38802)
- use absolute url to logo (22232f36)
- update domain from fingerprintjs.com to fingerprint.com (d32ffb16)
- update logo (4ec03490)
- generate types using OpenAPI (3136d5ac)
- add missed fields to the VisitWebhook type (1422eb02)
- remove beta tag (b5a091c5)
- ap region URL (aba47938)
- another attempt to fix git issue with safe.directory (675e1749)
- another work around to make publish work (ef40e525)
- update checkout action version (b6446386)
- try a new git version workaround to publish the new version to npm (99e1f05d)
- add "--no-git-tag-version" flag to release commands (b8f2bc77)
- use generate-changelog for releases (a9d2b336)
- move "generate-changelog" to dev dependencies (f57c5ae3)
- remove changelog (4a32ec30)
- format existing mocked response data (b000f361)
- use npm-publish action by SHA for security reasons (4ff1b409)
- don't use npx to run jest (d0426e3c)
- add lint job to github actions, fix command to run test job (e7044f16)
- add deps to repair eslint and prettier, fix eslint and prettier rules (de0f7e53)
- migrate from npm to yarn (1c112ae5)
- ignore .idea folder (6bb5fe90)
- add missing node setup action (c3371b8d)
- better formatting, add links, extend example (93147b85)
- update readme (a68dddad)
- add CODEOWNERS and contributing guide (a30fc0d3)
- update readme.md (12685b7d)
- update src/types.ts (e5cdd25d)
- update readme.md (adee5c70)
- add ci badge, fix markup formatting (ea517213)
- add installing using yarn instruction (f02626e7)
- support passing custom fetch implementation in options (80bf983c)
- replace "querystring" with "URLSearchParams" (6a34d0bb)
- add confidence score, visitor found, and timestamps to data types (97d8c39a)
- rename token to api key (6d08efe0)
- add Asia region (ap) (539f071d)
- fix typo (d6a9396b)
- change subdivisons type from tuple to array (a9947493)
- removed unnecessary commented code from test (cbcf87e7)
- simplify Promise chain and add negative test (adc94d83)
- lint fixes (ff526eee)