> ## Documentation Index
> Fetch the complete documentation index at: https://docs.fingerprint.com/llms.txt
> Use this file to discover all available pages before exploring further.

# iOS SDK

> This changelog lists all additions and updates to the Fingerprint iOS SDK, in chronological order.

<Update label="July 2026">
  ## v2.17.0

  ### What's new

  * Added internal improvements to enhance fraud detection capabilities. These updates lay the groundwork for upcoming backend enhancements.
  * Internal bug fixes.

  iOS SDK v2.17.0 size info: 3.1MB

  ### Requirements

  #### IDE

  * [Xcode 15.0+](https://developer.apple.com/documentation/xcode-release-notes/xcode-15-release-notes), Swift 5.9. See [App Store submission requirements](https://developer.apple.com/news/?id=fxu2qp7b) for more information.

  #### Minimum supported versions

  * [**iOS 13**](https://developer.apple.com/documentation/ios-ipados-release-notes/ios-13-release-notes)
  * [**tvOS 15**](https://developer.apple.com/documentation/tvos-release-notes/tvos-15-release-notes)
</Update>

<Update label="June 2026">
  ## v2.16.0

  ### What's new

  * Added internal improvements to support enhanced detection logic and upcoming backend updates.

  iOS SDK v2.16.0 size info: 3.0MB

  ### Requirements

  #### IDE

  * [Xcode 15.0+](https://developer.apple.com/documentation/xcode-release-notes/xcode-15-release-notes), Swift 5.9. See [App Store submission requirements](https://developer.apple.com/news/?id=fxu2qp7b) for more information.

  #### Minimum supported versions

  * [**iOS 13**](https://developer.apple.com/documentation/ios-ipados-release-notes/ios-13-release-notes)
  * [**tvOS 15**](https://developer.apple.com/documentation/tvos-release-notes/tvos-15-release-notes)
</Update>

<Update label="May 2026">
  ## v2.15.1

  ### What's new

  * Fixed a crash occurring when the SDK was initialized with a proxy configuration on devices with an A18 Pro chip or newer.
  * Introduced performance optimizations which resulted in reducing the iOS SDK binary size from 4 MB to 2.9 MB - a 27.5% decrease. This reduces the overall size impact on host apps when building for device.
  * Reduced latency.

  iOS SDK v2.15.1 size info: 2.9MB

  ### Requirements

  #### IDE

  * [Xcode 15.0+](https://developer.apple.com/documentation/xcode-release-notes/xcode-15-release-notes), Swift 5.9. See [App Store submission requirements](https://developer.apple.com/news/?id=fxu2qp7b) for more information.

  #### Minimum supported versions

  * [**iOS 13**](https://developer.apple.com/documentation/ios-ipados-release-notes/ios-13-release-notes)
  * [**tvOS 15**](https://developer.apple.com/documentation/tvos-release-notes/tvos-15-release-notes)
</Update>

<Update label="May 2026" tags={["Smart Signals"]}>
  ## v2.15.0

  ### What's new

  * Improved [MitM detection](https://docs.fingerprint.com/docs/smart-signals-reference#mitm-attack-detection) reliability on iOS. Certificate chain collection now happens directly from the visitor identification request, eliminating a separate preliminary network request. This resolves false positive MitM detections for users whose network environment (VPNs, corporate proxies) blocked or intercepted the previous preliminary request.
  * Expanded the range of device-level signals collected for deeper device integrity insights.
  * Performance improvements.

  ### Requirements

  #### IDE

  * [Xcode 15.0+](https://developer.apple.com/documentation/xcode-release-notes/xcode-15-release-notes), Swift 5.9. See [App Store submission requirements](https://developer.apple.com/news/?id=fxu2qp7b) for more information.

  #### Minimum supported versions

  * [**iOS 13**](https://developer.apple.com/documentation/ios-ipados-release-notes/ios-13-release-notes)
  * [**tvOS 15**](https://developer.apple.com/documentation/tvos-release-notes/tvos-15-release-notes)
</Update>

<Update label="March 2026" tags={["Smart Signals"]}>
  ## v2.14.0

  ### What's new

  * Expanded signal collection to support upcoming factory reset detection.
  * Improved [jailbroken device detection](https://docs.fingerprint.com/docs/smart-signals-reference#jailbroken-device-detection) and [Frida detection](https://docs.fingerprint.com/docs/smart-signals-reference#frida-detection) logic.
  * Performance improvements and minor bug fixes.

  ### Requirements

  #### IDE

  * [Xcode 15.0+](https://developer.apple.com/documentation/xcode-release-notes/xcode-15-release-notes), Swift 5.9. See [App Store submission requirements](https://developer.apple.com/news/?id=fxu2qp7b) for more information.

  #### Minimum supported versions

  * [**iOS 13**](https://developer.apple.com/documentation/ios-ipados-release-notes/ios-13-release-notes)
  * [**tvOS 15**](https://developer.apple.com/documentation/tvos-release-notes/tvos-15-release-notes)
</Update>

<Update label="February 2026" tags={["Smart Signals"]}>
  ## v2.13.0

  ### What's new

  * Added internal improvements to support enhanced detection logic and upcoming backend updates.
  * Improved data handling logic in virtualized and simulator environments to strengthen privacy and security protections.
  * Improved the underlying logic for [Geolocation spoofing Smart Signal](https://docs.fingerprint.com/docs/smart-signals-reference#geolocation-spoofing-detection)
  * Minor bug fixes.

  ### Requirements

  #### IDE

  * [Xcode 15.0+](https://developer.apple.com/documentation/xcode-release-notes/xcode-15-release-notes), Swift 5.9. See [App Store submission requirements](https://developer.apple.com/news/?id=fxu2qp7b) for more information.

  #### Minimum supported versions

  * [**iOS 13**](https://developer.apple.com/documentation/ios-ipados-release-notes/ios-13-release-notes)
  * [**tvOS 15**](https://developer.apple.com/documentation/tvos-release-notes/tvos-15-release-notes)
</Update>

<Update label="December 2025" tags={["Smart Signals"]}>
  ## v2.12.0

  ### What's new

  * Added internal improvements to enhance fraud detection capabilities.
  * Introduced a new [iOS simulator detection](/docs/smart-signals-reference#ios-simulator-detection) Smart Signal.

  ### Requirements

  #### IDE

  * [Xcode 15.0+](https://developer.apple.com/documentation/xcode-release-notes/xcode-15-release-notes), Swift 5.9. See [App Store submission requirements](https://developer.apple.com/news/?id=fxu2qp7b) for more information.

  #### Minimum supported versions

  * [**iOS 13**](https://developer.apple.com/documentation/ios-ipados-release-notes/ios-13-release-notes)
  * [**tvOS 15**](https://developer.apple.com/documentation/tvos-release-notes/tvos-15-release-notes)
</Update>

<Update label="October 2025">
  ## v2.11.0

  ### What's new

  **Recommendation**: We strongly encourage upgrading to the version **2.11.0** to benefit from improved security and stronger protection against tampering and reverse-engineering attempts.

  * Implemented additional security measures to protect iOS SDK requests from manipulation, tampering, and reverse-engineering attempts.
  * Fixed two bugs related to `LocationPermissionHelper`:
    * Resolved an issue with the `locationPermissionHelper(_:shouldShowLocationRationale:)` delegate method being triggered more than once for the same authorization status change, which previously led to duplicate permission dialogs for clients who use `LocationPermissionHelper`.
    * Fixed an issue where calling `LocationPermissionHelper.requestTemporaryPrecisePermission` could cause an infinite loop if an error occurred, such as when the required purpose string for temporary precise location permission was missing from the Info.plist.
  * The total SDK size increased from 1MB to 3.6MB

  Note: Simulators running iOS 15 or lower are no longer supported for testing Fingerprint integrations. If you use simulators to test your Fingerprint integration, please update to iOS 16 or higher.

  ### Requirements

  #### IDE

  * [Xcode 15.0+](https://developer.apple.com/documentation/xcode-release-notes/xcode-15-release-notes), Swift 5.9. See [App Store submission requirements](https://developer.apple.com/news/?id=fxu2qp7b) for more information.

  #### Minimum supported versions

  * [**iOS 13**](https://developer.apple.com/documentation/ios-ipados-release-notes/ios-13-release-notes)
  * [**tvOS 15**](https://developer.apple.com/documentation/tvos-release-notes/tvos-15-release-notes)
</Update>

<Update label="September 2025" tags={["Smart Signals"]}>
  ## v2.10.0

  ### What's new

  * Introduced a new proximity detection location-based signal for mobile devices. Instead of representing a unique device, the new proximity ID corresponds to a fixed geographical zone within which the device is observed. This additional layer of context makes it possible to identify groups of devices in the same physical area or a single device that may have changed its identity but remained in the same location. See [Proximity detection for iOS devices](/docs/smart-signals-reference#proximity-detection) reference for more info.
    * Added `allowUseOfLocationData` property to the `Configuration` structure in order to start receiving proximity detection signal. This flag allows the Fingerprint client to access device location data when enabled and the necessary permissions are granted. Default value is `false`. See [using location data for proximity detection](/docs/ios-sdk#using-location-data-for-proximity-detection) for integration details.
    * Added `NSPrivacyCollectedDataTypePreciseLocation` and `NSPrivacyCollectedDataTypeCoarseLocation` to `NSPrivacyCollectedDataTypes` in the iOS SDK’s [Privacy Manifest](/docs/mobile-devices-understanding-privacy-manifest-files#nsprivacycollecteddatatypes), indicating that the SDK may collect both precise and coarse user location data from host apps.
    * Added an optional `LocationPermissionHelper` utility to simplify integration of location permission handling for host apps that do not implement their own flow. This utility provides an easy way to request, observe, and respond to location permission changes using a `LocationPermissionDelegate` callback. See a detailed integration example in the [Handling Location Permissions](/docs/ios-sdk#handling-location-permissions) section.

  ### Requirements

  #### IDE

  * [Xcode 15.0+](https://developer.apple.com/documentation/xcode-release-notes/xcode-15-release-notes), Swift 5.9. See [App Store submission requirements](https://developer.apple.com/news/?id=fxu2qp7b) for more information.

  #### Minimum supported versions

  * [**iOS 13**](https://developer.apple.com/documentation/ios-ipados-release-notes/ios-13-release-notes)
  * [**tvOS 15**](https://developer.apple.com/documentation/tvos-release-notes/tvos-15-release-notes)
</Update>

<Update label="August 2025">
  ## v2.9.0

  ### What's new

  * Introduced internal architecture updates and performance improvements to support upcoming capabilities.
  * Added new error code:
    * `ProxyIntegrationSecretEnvironmentMismatch`
  * Addressed minor issues to improve SDK reliability.

  ### Requirements

  #### IDE

  * [Xcode 15.0+](https://developer.apple.com/documentation/xcode-release-notes/xcode-15-release-notes), Swift 5.9. See [App Store submission requirements](https://developer.apple.com/news/?id=fxu2qp7b) for more information.

  #### Minimum supported versions

  * [**iOS 13**](https://developer.apple.com/documentation/ios-ipados-release-notes/ios-13-release-notes)
  * [**tvOS 15**](https://developer.apple.com/documentation/tvos-release-notes/tvos-15-release-notes)
</Update>

<Update label="April 2025" tags={["Smart Signals"]}>
  ## v2.8.2

  ### What's new

  * Introduced the ability to detect if requests from the app were subject to MitM attacks. See [MitM Attack Detection](/docs/smart-signals-reference#mitm-attack-detection) to learn more.
  * Added support for [Open Client Response](/docs/v3/open-client-response).

  ### What's changed

  * The following changes were made to the error handling API. To ensure backward compatibility, the old symbols have been preserved and annotated with the `@available(*, deprecated, renamed: "<new-name>")` attribute.
    * Enum `APIErrorType` has been renamed to `APIError.Code`.
    * Property `APIError.error` has been renamed to `APIError.errorDetails`.

  ### Requirements

  #### IDE

  * [Xcode 15.0+](https://developer.apple.com/documentation/xcode-release-notes/xcode-15-release-notes), Swift 5.9. See [App Store submission requirements](https://developer.apple.com/news/?id=fxu2qp7b) for more information.

  #### Minimum supported versions

  * [**iOS 13**](https://developer.apple.com/documentation/ios-ipados-release-notes/ios-13-release-notes)
  * [**tvOS 15**](https://developer.apple.com/documentation/tvos-release-notes/tvos-15-release-notes)
</Update>

<Update label="October 2024">
  ## v2.7.0

  ### What's new

  * Introduced the ability to configure the timeout interval for the client session. To learn more, see [Specifying a custom timeout](/docs/ios-sdk#specifying-a-custom-timeout).
  * Added support for [Sealed Client Results](/docs/ios-sdk#reading-the-response).
  * Extended compatibility for use with projects that have [enabled Swift 6 language mode](https://www.swift.org/migration/documentation/swift-6-concurrency-migration-guide/swift6mode/).

  ### Bug fixes

  * Fixed a regression introduced in v2.5.0 in which the API errors were incorrectly parsed as `FPJSError.invalidResponseType`. The API errors are now correctly parsed and returned as `FPJSError.apiError`.

  ### Requirements

  #### IDE

  * [Xcode 15.0+](https://developer.apple.com/documentation/xcode-release-notes/xcode-15-release-notes), Swift 5.9. See [App Store submission requirements](https://developer.apple.com/news/?id=fxu2qp7b) for more information.

  #### Minimum supported versions

  * [iOS 13](https://developer.apple.com/documentation/ios-ipados-release-notes/ios-13-release-notes)
  * [tvOS 15](https://developer.apple.com/documentation/tvos-release-notes/tvos-15-release-notes)
</Update>

<Update label="August 2024">
  ## v2.6.0

  ### What’s new

  * Introduced the ability to redirect failed requests to alternate endpoints. The `Region.custom(domain:fallback:)` can be used to specify the `fallback` array of one or more alternate endpoints. For a complete example, see [Getting a visitorId](/docs/ios-sdk#getting-a-visitorid).

  ### Requirements

  #### IDE

  * [Xcode 15.0+](https://developer.apple.com/documentation/xcode-release-notes/xcode-15-release-notes), Swift 5.9. See [App Store submission requirements](https://developer.apple.com/news/?id=fxu2qp7b) for more information.

  #### Minimum supported versions

  * [iOS 13](https://developer.apple.com/documentation/ios-ipados-release-notes/ios-13-release-notes)
  * [tvOS 15](https://developer.apple.com/documentation/tvos-release-notes/tvos-15-release-notes)
</Update>

<Update label="July 2024" tags={["Smart Signals"]}>
  ## v2.5.0

  ### What’s new

  * Enhanced our [Jailbroken Device Detection Smart Signal](/docs/smart-signals-reference#jailbroken-device-detection) with the ability to detect rootless jailbreaks.
  * [Factory Reset Smart Signal](/docs/smart-signals-reference#factory-reset-detection) is no longer reported as true for brand-new iOS devices.
  * In accordance with [Apple's third-party SDK requirements](https://developer.apple.com/support/third-party-SDK-requirements/), the XCFramework bundle is now code signed with an Apple Distribution certificate. The dependency signature verification feature, introduced in Xcode 15, allows the XCFramework's code signing identity to be verified, thus enabling SDK consumers to protect their software supply chain integrity.

  ### What's changed

  * Dropped support for Swift 5.7 and 5.8.

  ### Requirements

  #### IDE

  * [Xcode 15.0+](https://developer.apple.com/documentation/xcode-release-notes/xcode-15-release-notes), Swift 5.9. See [App Store submission requirements](https://developer.apple.com/news/?id=fxu2qp7b) for more information.

  #### Minimum supported versions

  * [iOS 13](https://developer.apple.com/documentation/ios-ipados-release-notes/ios-13-release-notes)
  * [tvOS 15](https://developer.apple.com/documentation/tvos-release-notes/tvos-15-release-notes)
</Update>

<Update label="January 2024">
  ## v2.4.0

  ### What's new

  * Introduced a new `packageNotAuthorized` value to the `APIErrorType` enum. This error is thrown when an unauthorized app makes identification requests using a stolen API key. See [Request filtering for mobile apps](/docs/mobile-app-filtering) for more information.
  * Extended several public APIs (e.g. `FingerprintResponse`, `IPLocation`, etc) with memberwise initializers so that they can be easily stubbed for unit tests.

  ### Requirements

  #### IDE

  * [Xcode 14.1+](https://developer.apple.com/documentation/xcode-release-notes/xcode-14_1-release-notes), Swift 5.7. See [App Store submission requirements](https://developer.apple.com/news/?id=jd9wcyov#) for more information.

  #### Minimum supported versions

  * [iOS 13](https://developer.apple.com/documentation/ios-ipados-release-notes/ios-13-release-notes)
  * [tvOS 15](https://developer.apple.com/documentation/tvos-release-notes/tvos-15-release-notes)
</Update>

<Update label="December 2023">
  ## v2.3.2

  ### What's new

  * Added `PrivacyInfo.xcprivacy`, the privacy manifest file. See [Understanding privacy manifest files](/docs/mobile-devices-understanding-privacy-manifest-files) for more information.

  ### Requirements

  #### IDE

  * [Xcode 14.1+](https://developer.apple.com/documentation/xcode-release-notes/xcode-14_1-release-notes), Swift 5.7. See [App Store submission requirements](https://developer.apple.com/news/?id=jd9wcyov#) for more information.

  #### Minimum supported versions

  * [iOS 13](https://developer.apple.com/documentation/ios-ipados-release-notes/ios-13-release-notes)
  * [tvOS 15](https://developer.apple.com/documentation/tvos-release-notes/tvos-15-release-notes)
</Update>

<Update label="October 2023" tags={["Smart Signals"]}>
  ## v2.3.1

  ### What's new

  * Introduced the ability to detect [Geolocation Spoofing](/docs/smart-signals-reference#geolocation-spoofing-detection).

  ### What's changed

  * Removed the limitation in which the Smart Signals could not be made available in the response of the very first [`/events API`](/reference/server-api-get-event) request.

  ### Requirements

  #### IDE

  * [Xcode 14.1+](https://developer.apple.com/documentation/xcode-release-notes/xcode-14_1-release-notes), Swift 5.7. See [App Store submission requirements](https://developer.apple.com/news/?id=jd9wcyov#) for more information.

  #### Minimum supported versions

  * [iOS 13](https://developer.apple.com/documentation/ios-ipados-release-notes/ios-13-release-notes)
  * [tvOS 15](https://developer.apple.com/documentation/tvos-release-notes/tvos-15-release-notes)

  ## v2.3.0

  ### What's new

  * Introduced the ability to detect if a device is using a VPN. See [VPN Detection](/docs/smart-signals-reference#vpn-detection-for-mobile-devices) for more information.
  * Introduced a new Smart Signal, [Factory Reset Detection](/docs/smart-signals-reference#factory-reset-detection) that provides the timestamp of the most recent factory reset of the device.
  * Added support for Swift 5.9 and Xcode 15.

  ### What's changed

  * Dropped support for iOS 12, tvOS 12, tvOS 13, and tvOS 14.

  ### Requirements

  #### IDE

  * [Xcode 14.1+](https://developer.apple.com/documentation/xcode-release-notes/xcode-14_1-release-notes), Swift 5.7. See [App Store submission requirements](https://developer.apple.com/news/?id=jd9wcyov#) for more information.

  #### Minimum supported versions

  * [iOS 13](https://developer.apple.com/documentation/ios-ipados-release-notes/ios-13-release-notes)
  * [tvOS 15](https://developer.apple.com/documentation/tvos-release-notes/tvos-15-release-notes)
</Update>

<Update label="June 2023" tags={["Smart Signals"]}>
  ## v2.2.0

  ### What's new

  * Introduced the ability to detect
    * If Frida is being used to instrument your app. See [Frida Detection](/docs/smart-signals-reference#frida-detection) for more information.
    * If your app is running on a jailbroken device. See [Jailbroken Device Detection](/docs/smart-signals-reference#jailbroken-device-detection) for more information.
  * Introduced a new field, `visitorFound` in `FingerprintResponse`. This field indicates if a device was already seen by your mobile app.

  ### What's changed

  * Dropped support for Swift 5.5 and Swift 5.6.

  ### Requirements

  #### IDE

  * [Xcode 14.1+](https://developer.apple.com/documentation/xcode-release-notes/xcode-14_1-release-notes), Swift 5.7. See [App Store submission requirements](https://developer.apple.com/news/?id=jd9wcyov#) for more information.

  #### Minimum supported versions

  * [iOS 12](https://developer.apple.com/documentation/ios-ipados-release-notes/ios-12-release-notes)
  * [tvOS 12](https://developer.apple.com/documentation/tvos-release-notes/tvos-12-release-notes)
</Update>
