From fe1ae74e0de24e0cb56c827939c2956c637662c6 Mon Sep 17 00:00:00 2001 From: Doc Bot Date: Mon, 6 Apr 2026 16:06:10 +0000 Subject: [PATCH 1/3] feat(ios): update for 4.14.2 --- content/docs/ios/changelog.mdx | 6 ++++++ content/docs/ios/index.mdx | 2 +- content/docs/ios/sdk-reference/index.mdx | 2 +- 3 files changed, 8 insertions(+), 2 deletions(-) diff --git a/content/docs/ios/changelog.mdx b/content/docs/ios/changelog.mdx index 9a40a84..bc6596e 100644 --- a/content/docs/ios/changelog.mdx +++ b/content/docs/ios/changelog.mdx @@ -5,6 +5,12 @@ description: "Release notes for the Superwall iOS SDK" # CHANGELOG +## 4.14.2 + +### Enhancements + +- Adds multipage paywall navigation tracking by tracking a `paywall_page_view` event, which contains information about the page view. + ## 4.14.1 ### Enhancements diff --git a/content/docs/ios/index.mdx b/content/docs/ios/index.mdx index 99e0e5a..81b152c 100644 --- a/content/docs/ios/index.mdx +++ b/content/docs/ios/index.mdx @@ -50,6 +50,6 @@ If you have feedback on any of our docs, please leave a rating and message at th If you have any issues with the SDK, please [open an issue on GitHub](https://github.com/superwall/superwall-ios/issues). diff --git a/content/docs/ios/sdk-reference/index.mdx b/content/docs/ios/sdk-reference/index.mdx index 586cebb..0233cc1 100644 --- a/content/docs/ios/sdk-reference/index.mdx +++ b/content/docs/ios/sdk-reference/index.mdx @@ -16,6 +16,6 @@ If you have feedback on any of our docs, please leave a rating and message at th If you have any issues with the SDK, please [open an issue on GitHub](https://github.com/superwall/superwall-ios/issues). From 59254c34692cc0cfbaa0ff9973b4eb30b20b628e Mon Sep 17 00:00:00 2001 From: Duncan Crawbuck Date: Mon, 6 Apr 2026 11:01:30 -0700 Subject: [PATCH 2/3] docs(ios): document 4.14.2 paywall page view event --- .../docs/ios/sdk-reference/SuperwallEvent.mdx | 75 ++++++++++++++++++- 1 file changed, 74 insertions(+), 1 deletion(-) diff --git a/content/docs/ios/sdk-reference/SuperwallEvent.mdx b/content/docs/ios/sdk-reference/SuperwallEvent.mdx index 1ffff96..14ae078 100644 --- a/content/docs/ios/sdk-reference/SuperwallEvent.mdx +++ b/content/docs/ios/sdk-reference/SuperwallEvent.mdx @@ -34,6 +34,7 @@ public enum SuperwallEvent { case paywallOpen(paywallInfo: PaywallInfo) case paywallClose(paywallInfo: PaywallInfo) case paywallDecline(paywallInfo: PaywallInfo) + case paywallPageView(paywallInfo: PaywallInfo, data: PageViewData) case paywallWebviewProcessTerminated(paywallInfo: PaywallInfo) case paywallPreloadStart(paywallCount: Int) case paywallPreloadComplete(paywallCount: Int) @@ -67,12 +68,14 @@ public enum SuperwallEvent { ## Parameters Each event case contains associated values with relevant information for that event type. Common parameters include: - `paywallInfo: PaywallInfo` - Information about the paywall +- `data: PageViewData` - Page-level details for `paywallPageView`, including navigation direction and the previous page when available. New in 4.14.2. - `product: StoreProduct` - The product involved in transactions - `url: URL` - Deep link URLs - `attributes: [String: Any]` - Device or user attributes - `count: Int` - For `reviewRequested`, the number of times a review has been requested (available in version 4.8.1+) - `permissionName: String` / `paywallIdentifier: String` - The permission requested from the paywall and the identifier of the paywall that triggered it (new in 4.12.0). - `paywallCount: Int` - Total number of paywalls being preloaded when `paywallPreloadStart`/`paywallPreloadComplete` fire (new in 4.12.0). +- `paywallInfo.presentationId` - A unique identifier shared across events from the same paywall presentation. Available in 4.14.2+ and included in `eventInfo.params` as `presentation_id`. ## Returns / State This is an enum that represents different event types. Events are received via [`SuperwallDelegate.handleSuperwallEvent(withInfo:)`](/ios/sdk-reference/SuperwallDelegate). @@ -118,4 +121,74 @@ default: } ``` -Pair these events with the [`shouldPreload`](/ios/sdk-reference/PaywallOptions#properties) option if you want to compare “on-demand” versus background caching strategies. \ No newline at end of file +Pair these events with the [`shouldPreload`](/ios/sdk-reference/PaywallOptions#properties) option if you want to compare “on-demand” versus background caching strategies. + +## Paywall page view event (4.14.2+) +`paywall_page_view` fires when a user navigates between pages in a multi-page paywall. The enum exposes this as `.paywallPageView(paywallInfo:data:)`. + +Use this event when you want to understand where users drop off inside a multi-step paywall, how they move between pages, or how long they spend on each step. + +```swift +func handleSuperwallEvent(withInfo eventInfo: SuperwallEventInfo) { + switch eventInfo.event { + case .paywallPageView(let paywallInfo, let data): + Analytics.track("paywall_page_view", properties: [ + "presentation_id": paywallInfo.presentationId as Any, + "page_node_id": data.pageNodeId, + "flow_position": data.flowPosition, + "page_name": data.pageName, + "navigation_type": data.navigationType, + "previous_page_node_id": data.previousPageNodeId as Any, + "time_on_previous_page_ms": data.timeOnPreviousPageMs as Any, + ]) + default: + break + } +} +``` + +`eventInfo.params` includes the normal paywall metadata plus the page-specific fields below. + + + +For correlating all events within a single paywall presentation, read `presentation_id` from `eventInfo.params` or `paywallInfo.presentationId`. From 90623af6d8b8b04f9f349ca49617432f8f39b79b Mon Sep 17 00:00:00 2001 From: Duncan Crawbuck Date: Mon, 6 Apr 2026 13:31:55 -0700 Subject: [PATCH 3/3] docs(ios): update changelog and sdk reference --- content/docs/ios/changelog.mdx | 2 - .../docs/ios/sdk-reference/SuperwallEvent.mdx | 72 +------------------ 2 files changed, 1 insertion(+), 73 deletions(-) diff --git a/content/docs/ios/changelog.mdx b/content/docs/ios/changelog.mdx index bc6596e..340dd14 100644 --- a/content/docs/ios/changelog.mdx +++ b/content/docs/ios/changelog.mdx @@ -3,8 +3,6 @@ title: "Changelog" description: "Release notes for the Superwall iOS SDK" --- -# CHANGELOG - ## 4.14.2 ### Enhancements diff --git a/content/docs/ios/sdk-reference/SuperwallEvent.mdx b/content/docs/ios/sdk-reference/SuperwallEvent.mdx index 14ae078..372371e 100644 --- a/content/docs/ios/sdk-reference/SuperwallEvent.mdx +++ b/content/docs/ios/sdk-reference/SuperwallEvent.mdx @@ -121,74 +121,4 @@ default: } ``` -Pair these events with the [`shouldPreload`](/ios/sdk-reference/PaywallOptions#properties) option if you want to compare “on-demand” versus background caching strategies. - -## Paywall page view event (4.14.2+) -`paywall_page_view` fires when a user navigates between pages in a multi-page paywall. The enum exposes this as `.paywallPageView(paywallInfo:data:)`. - -Use this event when you want to understand where users drop off inside a multi-step paywall, how they move between pages, or how long they spend on each step. - -```swift -func handleSuperwallEvent(withInfo eventInfo: SuperwallEventInfo) { - switch eventInfo.event { - case .paywallPageView(let paywallInfo, let data): - Analytics.track("paywall_page_view", properties: [ - "presentation_id": paywallInfo.presentationId as Any, - "page_node_id": data.pageNodeId, - "flow_position": data.flowPosition, - "page_name": data.pageName, - "navigation_type": data.navigationType, - "previous_page_node_id": data.previousPageNodeId as Any, - "time_on_previous_page_ms": data.timeOnPreviousPageMs as Any, - ]) - default: - break - } -} -``` - -`eventInfo.params` includes the normal paywall metadata plus the page-specific fields below. - - - -For correlating all events within a single paywall presentation, read `presentation_id` from `eventInfo.params` or `paywallInfo.presentationId`. +Pair these events with the [`shouldPreload`](/ios/sdk-reference/PaywallOptions#properties) option if you want to compare “on-demand” versus background caching strategies. \ No newline at end of file