PaywallInfo contains comprehensive information about a paywall, including its configuration, associated experiment, products, loading times, and other metadata. This object is central to understanding paywall behavior and is provided in many SDK callbacks and events.
Definition
Properties
The unique identifier of the paywall, as configured in the Superwall dashboard.
The name of the paywall, as configured in the Superwall dashboard.
The URL where the paywall’s web content is hosted.
The experiment associated with this paywall presentation, if applicable. Contains information about A/B tests and variants.
A list of products available for purchase on this paywall.
A list of product identifiers (SKUs) available on this paywall.
The name of the event or placement that triggered the presentation of this paywall.Corresponds to
presentedByPlacementWithName in the native Swift SDK.The identifier of the event or placement that triggered the presentation of this paywall.Corresponds to
presentedByPlacementWithId in the native Swift SDK.The Unix timestamp (in seconds or milliseconds) of when the event triggering this paywall occurred.Corresponds to
presentedByPlacementAt in the native Swift SDK.The source that initiated the paywall presentation.Possible values:
"implicit", "explicit", "getPaywall"The type of the source that led to the paywall presentation.Examples:
"Register" for Superwall.shared.register(event:), "Track" for Superwall.shared.track(event:)The Unix timestamp when the request to load the paywall configuration and rules (response) started.
The Unix timestamp when the paywall response successfully loaded.
The Unix timestamp if the paywall response failed to load.
The duration (typically in milliseconds) it took to load the paywall response.
Indicates whether a free trial is available for any of the products on this paywall.
The feature gating behavior for this paywall.
"gated"- The feature or content is gated and requires a specific condition to be met for access"nonGated"- The feature or content is available to all users
The reason why the paywall was closed.
"systemLogic"- Closed automatically by the SDK due to internal logic"forNextPaywall"- Closed because another paywall is scheduled to be presented"webViewFailedToLoad"- Closed because the web view failed to load"manualClose"- Closed due to direct user action"none"- No specific reason or unknown
The Unix timestamp when the web view started loading the paywall’s HTML content.
The Unix timestamp when the web view successfully loaded the paywall’s HTML content.
The Unix timestamp if the web view failed to load the paywall’s HTML content.
The duration (typically in milliseconds) it took for the web view to load the paywall’s content.
The Unix timestamp when the loading of product information (from App Store/Google Play) started.
The Unix timestamp when the product information successfully loaded.
The Unix timestamp if loading product information failed.
The duration (typically in milliseconds) it took to load the product information.
The version of the
paywall.js script used in the paywall, if available.A list of computed property requests associated with this paywall presentation.Computed properties are dynamic values based on user attributes or other data.
A list of surveys associated with this paywall that may be presented.
A list of local notifications that may be scheduled as a result of this paywall presentation.
The state of the paywall, updated on paywall dismiss.Contains key-value pairs representing the paywall’s current state.
Usage
PaywallInfo is provided in many SDK callbacks and events:
With usePlacement Hook
With Event Listeners
Analyzing Performance
Related Types
- SubscriptionStatus - User’s subscription state
- PaywallResult - Outcome of paywall interaction
- SuperwallOptions - SDK configuration options
Related Hooks
- usePlacement - Register and present paywalls
- useSuperwallEvents - Listen to SDK events