Skip to content

Latest commit

 

History

History
902 lines (626 loc) · 60.8 KB

File metadata and controls

902 lines (626 loc) · 60.8 KB

Fingerprint Server API Node.js SDK

7.1.0

Minor Changes

  • Add simulator signal for iOS platform (bf4dd89)
  • Add virtual_machine_ml_score field for virtual_machine signal (bf4dd89)
  • Add high_recall_id and simulator filters for the searchEvents method (bf4dd89)
  • Add tampering_confidence and tampering_ml_score fields for tampering smart signal (bf4dd89)

Patch Changes

  • Remove request_not_found value from the ErrorCode enum (bf4dd89)

7.0.0

Major Changes

  • Server API v3 -> Server API v4 migration

    • All endpoints switched to /v4/*.
    • authenticationMode option removed from FingerprintServerApiClient.
    • request_id renamed to event_id.
    • Event updates switched to snake_case fields and PATCH method.
    • Response models switched to snake_case fields.
    • Removed APIs: getVisits(), getRelatedVisitors(), and related types (VisitorHistoryFilter, ErrorPlainResponse, VisitorsResponse, RelatedVisitorsResponse, RelatedVisitorsFilter, Webhook, EventsUpdateRequest).
    • updateEvent signature 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)

    authenticationMode option removed from constructor:

    const client = new FingerprintServerApiClient({
    - authenticationMode: AuthenticationMode.AuthHeader
      // ...
    })

    Use searchEvents function instead of getVisits():

    - 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 tags instead of tag for updating an event:

    - const body: EventsUpdateRequest = {
    + const body: EventUpdate = {
    -   tag: {
    +   tags: {
          key: 'value',
        }
      }

    updateEvent parameter 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)

  • Package renamed from @fingerprintjs/fingerprintjs-pro-server-api to @fingerprint/node-sdk. (385b01b)

Minor Changes

  • Added options parameter to the getEvent operation. (3ebae43)

Patch Changes

  • Performance: Avoid the overhead of cloning and double-buffering large payloads in the success case. (bc3fd33)

7.0.0-test.1

Major Changes

  • BREAKING: updateEvent now takes eventId as the first parameter and body as the second. (4ba89f6)

Patch Changes

  • perf: Avoid the overhead of cloning and double-buffering large payloads on success case. (bc3fd33)

7.0.0-test.0

Major Changes

  • Server APIv3 -> Server APIv4 migration

    • Switch all endpoints to /v4/*.
    • Remove authenticationMode option when initializing FingerprintServerApiClient.
    • Rename request_id to event_id.
    • Use snake_case fields when updating an event.
    • Use PATCH method when updating an event.
    • Examples, tests, and docs updated.

    BREAKING CHANGES

    • Use new client when initializing: FingerprintServerApiClient.
    • authenticationMode option removed.
    • Removed getVisits() function.
    • Removed getRelatedVisitors() function.
    • Removed VisitorHistoryFilter, ErrorPlainResponse, VisitorsResponse, RelatedVisitorsResponse, RelatedVisitorsFilter, Webhook, EventsUpdateRequest types.
    • Use tags instead of tag for updating an event.
    • Response models changed. (ce2854d)
  • change package name to @fingerprint/fingerprint-server-sdk (385b01b)

Minor Changes

  • add options parameter to the getEvent operation (3ebae43)

6.10.0

Minor Changes

  • 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 supplementaryIds property to the Webhooks schema. (38690a8)
  • Add proximity signal that represents a fixed geographical zone in a discrete global grid within which the device is observed. (8e3b09b)
  • Add environmentId property to identification (38690a8)

6.10.0-test.1

Minor Changes

  • Add proximity signal that represents a fixed geographical zone in a discrete global grid within which the device is observed. (8e3b09b)

6.10.0-test.0

Minor Changes

  • 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 supplementaryIds property to the Webhooks schema. (38690a8)
  • Add environmentId property to identification (38690a8)

6.9.0

Minor Changes

  • Add details object to the proxy signal. This field includes the type of the detected proxy (residential or data_center) and the lastSeenAt timestamp of when an IP was last observed to show proxy-like behavior. (5988f03)

6.8.0

Minor Changes

  • Mark replayed field required in the identification product schema. This field will always be present. (a30d9c8)
  • Add sdk field with platform metadata to identification (a30d9c8)

Patch Changes

  • Deprecate the Remote Control Detection Smart Signal. This signal is no longer available. (a30d9c8)

6.8.0-test.0

Minor Changes

  • Mark replayed field required in the identification product schema. This field will always be present. (a30d9c8)
  • Add sdk field with platform metadata to identification (a30d9c8)

Patch Changes

  • Deprecate the Remote Control Detection Smart Signal. This signal is no longer available. (a30d9c8)

6.7.0

Minor Changes

  • add replayed field to identification in Events and Webhooks (0874aec)
  • allow enum parameters to be specified as their string literal equivalents (c4ff3c9)

6.6.0

Minor Changes

  • Add confidence property to the Proxy detection Smart Signal, which now supports both residential and public web proxies. (af62b15)

6.5.0

Minor Changes

  • 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)

Patch Changes

  • events: Update Tampering descriptions to reflect Android support. (50be5ca)
  • webhook: Add environmentId property (50be5ca)

6.5.0-test.1

Minor Changes

  • events-search: Event search now supports two new filter parameters: ip_blocklist, datacenter (96911d9)

6.5.0-test.0

Minor Changes

  • 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)

Patch Changes

  • events: Update Tampering descriptions to reflect Android support. (50be5ca)
  • webhook: Add environmentId property (50be5ca)

6.4.0

Minor Changes

  • Add mitmAttack (man-in-the-middle attack) Smart Signal. (8dd004d)

6.3.0

Minor Changes

  • events-search: Add pagination_key parameter (97270e0)

6.3.0-test.0

Minor Changes

  • events-search: Add pagination_key parameter (97270e0)

6.2.0

Minor Changes

  • events-search: Add a new events/search API 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)

Patch Changes

  • events-search: Improve parameter descriptions for bot, suspect (ce812de)
  • Filter out undefined or null query parameters before sending request (62a0279)

6.2.0-test.1

Patch Changes

  • Filter out undefined or null query parameters before sending request (62a0279)

6.2.0-test.0

Minor Changes

  • events-search: Add a new events/search API 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)

6.1.0

Minor Changes

  • Add relay detection method to the VPN Detection Smart Signal (05a9257)
  • events: Add a suspect field to the identification product schema (05a9257)

6.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

  • Rename EventUpdateRequest type to EventsUpdateRequest (54b92b2)
    • Remove the BrowserDetails field botProbability.
    • Update the IdentificationConfidence field score type format: float -> double.
    • Make the RawDeviceAttributeError field name optional .
    • Make the RawDeviceAttributeError field message optional .
    • events: Remove the EventsResponse field error.
      • [note]: The errors are represented by ErrorResponse model.
    • events: Update the HighActivity field dailyRequests type format: number -> int64.
    • events: Specify the Tampering field anomalyScore type format: double.
    • webhook: Make the Webhook fields optional: visitorId, visitorFound, firstSeenAt, lastSeenAt, browserDetails, incognito.
    • webhook: Make the WebhookClonedApp field result optional.
    • webhook: Make the WebhookDeveloperTools field result optional.
    • webhook: Make the WebhookEmulator field result optional.
    • webhook: Make the WebhookFactoryReset fields time and timestamp optional.
    • webhook: Make the WebhookFrida field result optional.
    • webhook: Update the WebhookHighActivity field dailyRequests type format: number -> int64.
    • webhook: Make the WebhookIPBlocklist fields result and details optional.
    • webhook: Make the WebhookJailbroken field result optional.
    • webhook: Make the WebhookLocationSpoofing field result optional.
    • webhook: Make the WebhookPrivacySettings field result optional.
    • webhook: Make the WebhookProxy field result optional.
    • webhook: Make the WebhookRemoteControl field result optional.
    • webhook: Make the WebhookRootApps field result optional.
    • webhook: Make the WebhookSuspectScore field result optional.
    • webhook: Make the WebhookTampering fields result, anomalyScore and antiDetectBrowser optional.
    • webhook: Specify the WebhookTampering field anomalyScore type format: double.
    • webhook: Make the WebhookTor field result optional.
    • webhook: Make the WebhookVelocity fields optional: distinctIp, distinctLinkedId, distinctCountry, events, ipEvents, distinctIpByLinkedId, distinctVisitorIdByLinkedId.
    • webhook: Make the WebhookVirtualMachine field result optional.
    • webhook: Make the WebhookVPN fields optional: result, confidence, originTimezone, methods. (68b89bf)
    • Rename BotdResult -> Botd.
    • Rename BotdDetectionResult -> BotdBot:
      • Extract result type as BotdBotResult.
    • 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 ErrorResponse and ErrorPlainResponse.
        • [note]: ErrorPlainResponse has a different format { "error": string } and it is used only in GET /visitors.
      • Extract error type as Error.
      • Extract error.code type as ErrorCode.
    • Rename EventResponse -> EventsGetResponse.
    • Rename EventUpdateRequest -> EventsUpdateRequest.
    • Rename FactoryResetResult -> FactoryReset.
    • Rename FridaResult -> Frida.
    • Rename IPLocation -> Geolocation:
      • Rename IPLocationCity -> GeolocationCity.
      • Extract subdivisions type as GeolocationSubdivisions.
      • Rename Location -> GeolocationContinent:
      • Introduce a dedicated type GeolocationCountry.
      • Rename Subdivision -> GeolocationSubdivision.
    • Rename HighActivityResult -> HighActivity.
    • Rename Confidence -> IdentificationConfidence.
    • Rename SeenAt -> IdentificationSeenAt.
    • Rename IncognitoResult -> Incognito.
    • Rename IpBlockListResult -> IPBlocklist:
      • Extract details type as IPBlocklistDetails.
    • Rename IpInfoResult -> IPInfo:
      • Rename IpInfoResultV4 -> IPInfoV4.
      • Rename IpInfoResultV6 -> IPInfoV6.
      • Rename ASN -> IPInfoASN.
      • Rename DataCenter -> IPInfoDataCenter.
    • 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.data type as Identification.
    • Rename RawDeviceAttributesResult -> RawDeviceAttributes:
      • Extract item type as RawDeviceAttribute.
      • Extract error type as RawDeviceAttributeError.
    • 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 VirtualMachineResult -> VirtualMachine.
    • Rename the Visit field ipLocation type DeprecatedIPLocation -> DeprecatedGeolocation.
      • Instead of DeprecatedIPLocationCity use common GeolocationCity
    • Rename Response -> VisitorsGetResponse.
      • Omit extra inner type ResponseVisits
    • Rename VpnResult -> VPN.
      • Extract confidence type as VPNConfidence.
      • Extract methods type as VPNMethods.
    • 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)
  • Remove utility functions for checking error type, such as isEventError, isUpdateEventError, etc. (a17b73f)
  • Reduce thrown errors to TooManyRequestsError and RequestError (6f4076e)
  • Rename VisitWebhook type to Webhook (980bab0)

Minor Changes

  • Added new ipEvents, distinctIpByLinkedId, and distinctVisitorIdByLinkedId fields to the velocity Smart Signal. (68b89bf)
    • Make the GeolocationCity field name required.
    • Make the GeolocationSubdivision field isoCode required.
    • Make the GeolocationSubdivision field name required.
    • Make the IPInfoASN field name required .
    • Make the IPInfoDataCenter field name required.
    • Add optional IdentificationConfidence field comment.
    • events: Add optional Botd field meta.
    • events: Add optional Identification field components.
    • events: Make the VPN field originCountry required.
    • visitors: Add optional Visit field components.
    • webhook: Add optional Webhook field components. (68b89bf)
  • Remove ipv4 format from ip field in Botd, Identification, Visit and Webhook models. (b707bfa)

Patch Changes

  • related-visitors: Add mention that the API is billable (68b89bf)

6.0.0-test.0

Major Changes

  • Rename EventUpdateRequest type to EventsUpdateRequest (54b92b2)
    • Remove the BrowserDetails field botProbability.
    • Update the IdentificationConfidence field score type format: float -> double.
    • Make the RawDeviceAttributeError field name optional .
    • Make the RawDeviceAttributeError field message optional .
    • events: Remove the EventsResponse field error.
      • [note]: The errors are represented by ErrorResponse model.
    • events: Update the HighActivity field dailyRequests type format: number -> int64.
    • events: Specify the Tampering field anomalyScore type format: double.
    • webhook: Make the Webhook fields optional: visitorId, visitorFound, firstSeenAt, lastSeenAt, browserDetails, incognito.
    • webhook: Make the WebhookClonedApp field result optional.
    • webhook: Make the WebhookDeveloperTools field result optional.
    • webhook: Make the WebhookEmulator field result optional.
    • webhook: Make the WebhookFactoryReset fields time and timestamp optional.
    • webhook: Make the WebhookFrida field result optional.
    • webhook: Update the WebhookHighActivity field dailyRequests type format: number -> int64.
    • webhook: Make the WebhookIPBlocklist fields result and details optional.
    • webhook: Make the WebhookJailbroken field result optional.
    • webhook: Make the WebhookLocationSpoofing field result optional.
    • webhook: Make the WebhookPrivacySettings field result optional.
    • webhook: Make the WebhookProxy field result optional.
    • webhook: Make the WebhookRemoteControl field result optional.
    • webhook: Make the WebhookRootApps field result optional.
    • webhook: Make the WebhookSuspectScore field result optional.
    • webhook: Make the WebhookTampering fields result, anomalyScore and antiDetectBrowser optional.
    • webhook: Specify the WebhookTampering field anomalyScore type format: double.
    • webhook: Make the WebhookTor field result optional.
    • webhook: Make the WebhookVelocity fields optional: distinctIp, distinctLinkedId, distinctCountry, events, ipEvents, distinctIpByLinkedId, distinctVisitorIdByLinkedId.
    • webhook: Make the WebhookVirtualMachine field result optional.
    • webhook: Make the WebhookVPN fields optional: result, confidence, originTimezone, methods. (68b89bf)
    • Rename BotdResult -> Botd.
    • Rename BotdDetectionResult -> BotdBot:
      • Extract result type as BotdBotResult.
    • 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 ErrorResponse and ErrorPlainResponse.
        • [note]: ErrorPlainResponse has a different format { "error": string } and it is used only in GET /visitors.
      • Extract error type as Error.
      • Extract error.code type as ErrorCode.
    • Rename EventResponse -> EventsGetResponse.
    • Rename EventUpdateRequest -> EventsUpdateRequest.
    • Rename FactoryResetResult -> FactoryReset.
    • Rename FridaResult -> Frida.
    • Rename IPLocation -> Geolocation:
      • Rename IPLocationCity -> GeolocationCity.
      • Extract subdivisions type as GeolocationSubdivisions.
      • Rename Location -> GeolocationContinent:
      • Introduce a dedicated type GeolocationCountry.
      • Rename Subdivision -> GeolocationSubdivision.
    • Rename HighActivityResult -> HighActivity.
    • Rename Confidence -> IdentificationConfidence.
    • Rename SeenAt -> IdentificationSeenAt.
    • Rename IncognitoResult -> Incognito.
    • Rename IpBlockListResult -> IPBlocklist:
      • Extract details type as IPBlocklistDetails.
    • Rename IpInfoResult -> IPInfo:
      • Rename IpInfoResultV4 -> IPInfoV4.
      • Rename IpInfoResultV6 -> IPInfoV6.
      • Rename ASN -> IPInfoASN.
      • Rename DataCenter -> IPInfoDataCenter.
    • 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.data type as Identification.
    • Rename RawDeviceAttributesResult -> RawDeviceAttributes:
      • Extract item type as RawDeviceAttribute.
      • Extract error type as RawDeviceAttributeError.
    • 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 VirtualMachineResult -> VirtualMachine.
    • Rename the Visit field ipLocation type DeprecatedIPLocation -> DeprecatedGeolocation.
      • Instead of DeprecatedIPLocationCity use common GeolocationCity
    • Rename Response -> VisitorsGetResponse.
      • Omit extra inner type ResponseVisits
    • Rename VpnResult -> VPN.
      • Extract confidence type as VPNConfidence.
      • Extract methods type as VPNMethods.
    • 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)
  • Remove utility functions for checking error type, such as isEventError, isUpdateEventError, etc. (a17b73f)
  • Reduce thrown errors to TooManyRequestsError and RequestError (6f4076e)
  • Rename VisitWebhook type to Webhook (980bab0)

Minor Changes

  • Added new ipEvents, distinctIpByLinkedId, and distinctVisitorIdByLinkedId fields to the velocity Smart Signal. (68b89bf)
    • Make the GeolocationCity field name required.
    • Make the GeolocationSubdivision field isoCode required.
    • Make the GeolocationSubdivision field name required.
    • Make the IPInfoASN field name required .
    • Make the IPInfoDataCenter field name required.
    • Add optional IdentificationConfidence field comment.
    • events: Add optional Botd field meta.
    • events: Add optional Identification field components.
    • events: Make the VPN field originCountry required.
    • visitors: Add optional Visit field components.
    • webhook: Add optional Webhook field components. (68b89bf)
  • Remove ipv4 format from ip field in Botd, Identification, Visit and Webhook models. (b707bfa)

Patch Changes

  • related-visitors: Add mention that the API is billable (68b89bf)

5.2.0

Minor Changes

  • related-visitors: Add GET /related-visitors endpoint (4a28c16)
  • visitors: Add the confidence field to the VPN Detection Smart Signal (4a28c16)
  • Deprecate getVisitorHistory method. Use getVisits instead. (f28ba9d)
  • events: Add antiDetectBrowser detection method to the tampering Smart Signal. (4a28c16)

5.2.0-test.0

Minor Changes

  • related-visitors: Add GET /related-visitors endpoint (4a28c16)
  • visitors: Add the confidence field to the VPN Detection Smart Signal (4a28c16)
  • Deprecate getVisitorHistory method. Use getVisits instead. (f28ba9d)
  • events: Add antiDetectBrowser detection method to the tampering Smart Signal. (4a28c16)

5.1.0

Minor Changes

  • events: Introduce PUT endpoint for /events API (009c8f4)

5.1.0-test.0

Minor Changes

  • events: Introduce PUT endpoint for /events API (009c8f4)

5.0.0 (2024-08-12)

⚠ BREAKING CHANGES

  • rename ErrorVisitsDelete400Response to ErrorVisitor400Response
  • rename ErrorVisitsDelete404ResponseError to ErrorVisitor404ResponseError
  • rename ErrorVisitsDelete404Response to `ErrorVisitor404Respons
  • renamed status in error object to statusCode
  • to access response body in error use responseBody property, e.g: error.responseBody

Features

  • add remoteControl, velocity and developerTools signals (45564cd)
  • improve thrown errors, introduce classes per specific error (3a4975d)

Bug Fixes

  • make tag field optional for Webhook (cff6198)

4.1.2 (2024-07-02)

Bug Fixes

  • use correct error type for incognito, rawDeviceAttributes and tampering in the GetEvent method (ad66ae3)

4.1.1 (2024-06-24)

Bug Fixes

  • 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)

Features

  • add isValidWebhookSignature function 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.region optional (48c8024)
  • provide error as-is without serialization in getEvent method (c21a7b6)

Documentation

  • README: remove ipLocation field (acb7c38)

4.0.1 (2024-03-26)

Build System

  • deps: remove redundant packages (da386da)

4.0.0 (2024-03-26)

⚠ BREAKING CHANGES

  • change models for the most smart signals
  • make identification field confidence optional
  • deprecated ipLocation field uses DeprecatedIpLocation model

Features

  • add linkedId field to the BotdResult type (52e0887)
  • add SuspectScore smart signal support (d2917f3)
  • add missed errors structures (fa5121d)
  • fix ipLocation deprecation (e620f75)
  • make identification field tag required (a919198)
  • update originCountry field to the vpn signal (fad2222)
  • use shared structures for webhooks and event (c5380be)

Bug Fixes

  • make fields required according to real API response (999debf)

3.1.0 (2024-01-31)

Features

  • add method for decoding sealed results (4220fcd)

3.0.0 (2024-01-12)

⚠ BREAKING CHANGES

  • IpInfo field dataCenter renamed to datacenter

Features

  • deprecate IPLocation (035024d)
  • use datacenter instead of the wrong dataCenter (4d294cb)

2.4.0 (2023-11-27)

Features

  • add highActivity and locationSpoofing signals, support originTimezone for vpn signal (ce69197)

Documentation

  • README: use common logos in readme (#87) (8c6e3cd)

2.3.3 (2023-10-17)

Build System

  • 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)

Documentation

  • README: add requirements section, polish readme INTER-257 (#84) (633b12b)

2.3.1 (2023-09-19)

Bug Fixes

  • update OpenAPI Schema with asn and dataCenter signals (e10f677)
  • update OpenAPI Schema with auxiliaryMobile method for VPN signal (72f5ada)

Build System

  • 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)

Features

  • add raw device attributes support (9f7adba)
  • add smart signals support (d847128)

Documentation

  • README: add Region.AP to example values (061242f)

2.2.0 (2023-06-12)

Features

  • update schema with correct IpLocation format and doc updates (21e943a)

2.1.0 (2023-05-16)

Features

2.0.1 (2023-04-14)

Bug Fixes

  • refactor bundle names and add exports section for better compatibility with nextjs (d4a0da0)

Build System

  • 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)

⚠ BREAKING CHANGES

  • Change error reporting. getVisitorHistory and getEvent methods throw an exception in case of errors.

Features

  • update schema, rework error reporting (baea2f7)

Bug Fixes

  • 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)

Build System

  • deps: bump json5 from 2.2.1 to 2.2.3 (dd19516)

1.4.0 (2022-10-25)

Features

  • update schema to support url field for botd result (b293c09)

1.3.0 (2022-09-14)

Features

  • improve type names (66e1515)
  • introduce /event/{request_id} endpoint (f06456f)

1.2.1 (2022-08-19)

Build System

  • deps: bump undici from 5.8.0 to 5.9.1 (33496f2)

1.2.0 (2022-08-18)

Features

1.1.4 (2022-07-22)

Build System

  • deps: bump undici from 5.5.1 to 5.8.0 (2302572)

1.1.3 (2022-07-13)

Bug Fixes

  • use Webhook type from OpenApi (4bf7ebf)

1.1.2 (2022-07-13)

1.1.1 (2022-07-08)

Chores
  • 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)

1.1.0 (2022-07-08)

Chores
  • return ts target to es2015 (4b496215)
  • change build command (b642cdf8)
  • use rollup to build project (90baa5d4)
  • add production environment for publish task (1f3dc518)
Documentation Changes
New Features
  • generate types using OpenAPI (3136d5ac)
Bug Fixes
  • add missed fields to the VisitWebhook type (1422eb02)

1.0.6 (2022-05-13)

Documentation Changes

1.0.5 (2022-04-21)

Bug Fixes

1.0.4 (2022-04-21)

Chores
  • another attempt to fix git issue with safe.directory (675e1749)

1.0.3 (2022-04-21)

Chores
  • another work around to make publish work (ef40e525)

1.0.2 (2022-04-21)

Chores
  • update checkout action version (b6446386)

1.0.1 (2022-04-21)

Chores
  • try a new git version workaround to publish the new version to npm (99e1f05d)

1.0.0 (2022-04-20)

Build System / Dependencies
  • add "--no-git-tag-version" flag to release commands (b8f2bc77)
  • use generate-changelog for releases (a9d2b336)
Chores
  • 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)
Continuous Integration
  • add missing node setup action (c3371b8d)
Documentation Changes
New Features
  • 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)
Bug Fixes
  • 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)
Other Changes