Skip to content

Developer changelog

This page lists SDK releases, API updates, and platform changes that affect Pushwoosh integrations.

September 2026

Anchor link to
Date
Component
Change
Details
Sep 30iOS SDK v7.2.8FixedFixed a crash on launch in apps where another SDK wraps the app delegate (for example Firebase with FirebaseAppDelegateProxyEnabled). Learn more
Sep 29Web Push SDK v3.91.1BreakingInbox widget config texts (title, emptyInboxTitle, emptyInboxText) are now rendered as text instead of being injected as HTML. Pages using markup in them need to adjust. Learn more
Sep 29Web Push SDK v3.91.0ChangedsubscriptionWidget now replaces enable with prompt.enabled and launcher.enabled (each switched on independently), and launcher.size with launcher.width/launcher.height. The launcher bell no longer shows for panel-managed applications, and a snippet still passing enable falls back to the older subscribe widgets. Learn more
Sep 29Web Push SDK v3.89.1AddedAdded the Subscription widget (subscriptionWidget init parameter or Control Panel): a prompt plus a launcher bell, replacing the push subscription button, custom subscription popup, and Subscription Prompt in one component so visitors never see two competing asks. Learn more
Sep 25iOS SDK v7.2.7AddedAdded Pushwoosh.media.setRichMediaColorScheme(_:) and the Pushwoosh_RICH_MEDIA_COLOR_SCHEME Info.plist key, so Rich Media built with prefers-color-scheme follows the app or system theme. Native in-app messages now support a dark appearance. Learn more
Sep 25iOS SDK v7.2.7AddedAdded PWInbox.reportActionForMessageWithCode(_:) to report an inbox message as opened without running its action. Learn more
Sep 25iOS SDK v7.2.7ChangedThe SDK now fetches the APNs device token itself when the app doesn’t pass it to handlePushRegistration(_:), so devices register without that call. Turned off with Pushwoosh_AUTO_DEVICE_TOKEN_REGISTRATION = NO. Learn more
Sep 24Android SDK v6.15.0AddedAdded PushwooshInbox.markMessageOpened() to report an inbox message as opened without running its action. Learn more
Sep 22Web Push SDK v3.86.0ChangedOn a panel-managed application, a value saved in the Control Panel now overrides the same parameter in the site’s init snippet. Learn more
Sep 21Web Push SDK v3.85.0AddedAdded panel-managed mode: Web SDK settings (autoSubscribe, defaultNotificationTitle, defaultNotificationImage, safariWebsitePushID, subscribeWidget) can now be managed from the Control Panel instead of the init snippet. Learn more
Sep 21Web Push SDK v3.85.0FixedFixed an unnecessary /unregisterDevice request on the first visit of a visitor who has never subscribed. Learn more
Sep 17Android SDK v6.14.0AddedLive Update notifications now open the app and follow deep links on tap like regular pushes, with opens counted in statistics. Added PushwooshLiveUpdates.getLiveUpdateActivityId() to tell them apart from regular pushes. Learn more
Sep 16Web Push SDK v3.82.0AddedApp Inbox messages can now open a web popup instead of a link. The popup code arrives in action_params.wp and is exposed as IInboxMessagePublic.webPopupCode. Learn more
Sep 15Web Push SDK v3.81.0AddedA subscribe-action button inside a web popup now requests the push permission and reports the resulting granted/denied/default status back to the popup. Learn more
Sep 14Web Push SDK v3.78.0AddedWidget styling (--pw-inbox-* on the App Inbox widget, --pw-popup-* on web popups) now uses real CSS custom properties on the widget root, a supported public API that a page can override from its own CSS. Learn more
Sep 13Web Push SDK v3.76.0AddedThe App Inbox widget now renders the same four cell layouts as the Control Panel campaign preview (classic, banner, captioned, carousel), so web inbox messages look as designed. Learn more
Sep 13Web Push SDK v3.76.0BreakingsendDate on a public inbox message is now a UTC instant instead of local wall-clock time labeled Z. Inbox message content is now HTML-escaped, and IInboxMessagePublic gains required fields layout, iconUrl, heroUrl, carousel, and customData. Learn more
Sep 11Android SDK v6.13.0AddedAdded RichMediaManager.setRichMediaColorScheme() and the com.pushwoosh.rich_media_color_scheme manifest key, so Rich Media built with prefers-color-scheme follows the app or system theme. Native in-app messages now support a dark appearance. Learn more
Sep 11Android SDK v6.13.0FixedA deep link from an opened notification now reaches the activity that is already running instead of a new copy of it. Learn more
Sep 09iOS SDK v7.2.6ChangedpostEvent(_:withAttributes:completion:) now calls its completion once the server accepts the event, instead of waiting for the account’s in-app resources to finish downloading. Learn more
Sep 08Flutter SDK v2.3.24AddedThe push payload on iOS now carries the foreground and onStart keys, as it already did on Android. Learn more
Sep 08Flutter SDK v2.3.24FixedPushwoosh.initialize() now throws ArgumentError for a non-string app_id instead of crashing the app. Learn more
Sep 04Android SDK v6.12.0AddedAdded rich message cards to pushwoosh-inbox-ui (banner, captioned, classic, carousel, video), selected by the message’s displayType, plus PushwooshInboxUi.onButtonClickListener for inline button taps. Learn more
Sep 02Web Push SDK v3.73.0AddedAdded the pushNotifications init parameter (default true) and isPushAvailable(). Push notifications are no longer a precondition for initialize() to complete, so popups, inbox, events, and tags work even with push turned off. Learn more
Sep 02Web Push SDK v3.73.0BreakingTypeScript consumers of the npm package see Pushwoosh.driver typed as IPushService | undefined. Code with strictNullChecks reading pushwoosh.driver.* directly needs a guard, preferably isPushAvailable(). Runtime behavior is unchanged. Learn more

August 2026

Anchor link to
Date
Component
Change
Details
Aug 31Web Push SDK v3.70.0AddedAdded webPopups.colorScheme ('auto', 'light', or 'dark') to pick the palette a popup with dark mode configured renders in. Learn more
Aug 31Web Push SDK v3.70.0AddedWeb popup Topic picker and Rating blocks now write through the SDK: picks append to the bound device tag, and ratings post as a custom event. Learn more
Aug 31Web Push SDK v3.70.0ChangedA web popup with an expired Countdown block is no longer shown, even when triggered manually via show(). Learn more
Aug 27iOS SDK v7.2.5ChangedPush links now open in-app only for domains listed in the app’s Associated Domains. All other links open in the browser. Learn more
Aug 27iOS SDK v7.2.5AddedPushwooshInboxKit cards now show the push attachment as the card image. Learn more
Aug 27iOS SDK v7.2.5FixedFixed push links, external links, and in-app buttons that opened the wrong destination or nothing at all. Learn more
Aug 24Customer Journey APIChangedThe send_email point’s email_type field now accepts only an empty string, marketing, or transactional (lowercase), validated when the journey is validated or started. Learn more
Aug 21Android SDK v6.11.0AddedAdded a video in-app template to pushwoosh-inapp-ui. It shows a full-screen autoplay video with an overlaid title, message, and action button, plus mute and close controls. Learn more
Aug 21Android SDK v6.11.0AddedAdded Pushwoosh.getBaseUrl() to return the Pushwoosh API endpoint the SDK currently sends requests to. Learn more
Aug 21Android SDK v6.11.0ChangedPush transport on Huawei/Honor HMS-only devices is now auto-detected in Cordova and React Native, matching native apps. With the full HMS setup in place, HMS Push Kit is used out of the box. Learn more
Aug 21Android SDK v6.11.0DeprecatedPushwoosh.enableHuaweiPushNotifications() is deprecated and has no effect. Push transport is now auto-detected. Learn more
Aug 19Messaging API v2AddedAdded use_latest_user_device to NotifySegment. When set, delivery goes only to each matched user’s most recently active device, not every device tied to that user ID. Learn more
Aug 14iOS SDK v7.2.4FixedFixed native in-app messages flickering, disappearing, or getting stuck on screen when the app called the SDK from an in-app delegate callback. Learn more
Aug 14iOS SDK v7.2.4FixedFixed a native in-app message not showing when its button link contained a space or non-Latin characters. Learn more
Aug 14iOS SDK v7.2.4FixedFixed personalization placeholders in native in-app messages falling back to default text instead of the device’s tag values. Learn more
Aug 13Messaging API v2AddedAdded mode and timezone to FrequencyCapping. The new calendar-day mode anchors the count-and-days window to local midnight in the given IANA timezone, instead of a rolling window from send time. Learn more
Aug 12React Native SDK v6.1.59AddedAdded setEmails() and setUserEmails() to register a user’s email address(es) for the email channel, matching push and email deliveries to the same user. Learn more
Aug 11Flutter SDK v2.3.23AddedAdded setAppCode()/getAppCode() for switching the Pushwoosh application, and optionally its API endpoint, at runtime; an optional base_url parameter in initialize(); and presentInApp() to render a native in-app message from a config object. Learn more
Aug 10iOS SDK v7.2.3FixedFixed an issue that could prevent Rich Media from being displayed. Learn more
Aug 10iOS SDK v7.2.3ChangedImproved the accuracy of the startup integration check for apps that configure the SDK at runtime. Learn more
Aug 07iOS SDK v7.2.2AddedNative in-app messages now support dynamic content: personalization placeholders in campaign text are filled with the device’s tag values, the same as Rich Media. Learn more
Aug 07iOS SDK v7.2.2FixedFixed a crash that could occur when the foreground push delegate was read, and a Rich Media rendering issue when campaign context or custom push data carried values that aren’t valid JSON. Learn more
Aug 07iOS SDK v7.2.2ChangedHardened the SDK against malformed server and push payloads, improving the stability of Inbox actions, push handling, and registration. Learn more
Aug 07Android SDK v6.10.2AddedNative in-app messages now support dynamic content: personalization placeholders in campaign text are filled with the device’s tag values, the same as Rich Media. Learn more
Aug 06Messaging API v2AddedAdded subject, file_urls, and message_at to the SMS payload block. subject and file_urls turn the message into an MMS on providers with an MMS endpoint; other providers ignore both and deliver the plain-text body. Learn more
Aug 03Android SDK v6.10.1AddedAdded banner (compact bar with optional auto-dismiss), carousel (swipeable card deck), and sheet (bottom-pinned card with swipe-down dismissal) in-app templates to pushwoosh-inapp-ui. Learn more
Date
Component
Change
Details
Jul 31iOS SDK v7.2.1AddedPushwooshInApp supports sheet (bottom card), carousel (swipeable slides), and banner (compact toast) in-app templates, in addition to modal, fullscreen, and stories. Learn more
Jul 31Statistics APIChangedmessages:list now errors when page × per_page exceeds 100,000. Narrow the date range or use smaller pages. Learn more
Jul 29Messaging API v2FixedNotify no longer drops deeplink URLs that contain Liquid personalization ({{ }} / {% %}). Learn more
Jul 28Messaging API v2ChangedSetting days: 0 and count: 0 together now disables frequency capping entirely, instead of returning an error. This makes it easier to turn off capping without extra logic on your end. Sending only one of days or count is still rejected. Learn more
Jul 27Web Push SDK v3.63.0AddedWeb popups can now be controlled entirely from your own code, with a new API to show, hide, and check popup state, plus events to react to visibility changes in real time. Learn more
Jul 24iOS SDK v7.2.0AddedIn-app messages can now render natively on device. Added PushwooshInApp, supporting modal, fullscreen, and stories templates via the Pushwoosh.inApp API. Learn more
Jul 24Android SDK v6.10.0AddedIn-app messages can now render natively on device. Added pushwoosh-inapp-ui, supporting modal, fullscreen, and stories templates via the PushwooshInAppUi API. Learn more
Jul 24Android SDK v6.10.0FixedFixed an issue that could prevent some in-app messages from being displayed. Learn more
Jul 21User-centric APIAddedpostEvent now supports PW_Conversion for revenue tracking. Learn more
Jul 15iOS SDK v7.1.5FixedFixed an issue with custom VoIP ringtone configuration, and made the SDK more resilient to malformed push payloads, tags, inbox data, and rich media content. Learn more
Jul 15iOS SDK v7.1.5ChangedLive Activity push tokens are now re-registered after an app relaunch, and duplicate token updates are skipped, for more reliable remote updates. Learn more
Jul 14Liquid TemplatesAddedThe connected_content tag can now send request headers, so you can pass an authorization token when pulling dynamic content from a URL. Learn more
Jul 09Android SDK v6.9.6ChangedMade the SDK more resilient to rare issues in in-app messages, Rich Media, and notification handling. Geolocation, geofencing, and Firebase push registration are also more reliable now on devices with an outdated or missing Google Play services library, along with tag updates and local notification storage handling. Learn more
Jul 03Android SDK v6.9.5ChangedModal Rich Media animation duration can now be configured remotely via the in-app’s style settings, no app update required. Notifications, in-app messages, and Rich Media also got a stability pass this release. Learn more
Jul 03iOS SDK v7.1.4AddedLive Activities can now be scheduled to start at a future date and cancelled by activityId. Modal Rich Media now supports fade and no-animation transitions, with a configurable animation duration. Learn more
Jul 03iOS SDK v7.1.4FixedFixed the modal Rich Media auto-close timer, which previously only worked on the first presentation, along with a resource cleanup issue after a modal Rich Media was dismissed. Learn more
Jul 01Messaging API v2AddedNotify now supports Viber as a channel via the viber payload block. Learn more
Date
Component
Change
Details
Jun 26Messaging API v2AddedSend Android Live Updates by adding a live_update object (OPERATION_START/OPERATION_UPDATE/OPERATION_END, shared live_update.id) to the android block of a transactional Notify. Learn more
Jun 25iOS SDK v7.1.3AddedAdded handleWillPresentNotification() and handleNotificationResponse() for apps that own the UNUserNotificationCenter delegate, plus a startup integration checker that prints config diagnostics. Learn more
Jun 25Android SDK v6.9.4ChangedModal in-app messages can now be presented without a transition animation. Learn more
Jun 24Messaging API v2AddedNotify can now build SMS from a saved preset: set payload-level sms_preset instead of inlining sms.body per locale (an inline sms.body still overrides the preset for that locale). Learn more
Jun 24Android SDK v6.9.3FixedFixed modal Rich Media crashes on background transitions and when opening external links. Core and WebKit now ship as transitive dependencies. Supersedes the withdrawn 6.9.2. Learn more
Jun 19Google Wallet APIAddedIssue and update Google Wallet passes from your backend. Changes sync to every device that saved the pass. Learn more
Jun 18iOS SDK v7.1.2AddedPushwooshInboxKit now supports rich card types (carousel, video, and Apple Wallet) selected per message via displayType, with delegate callbacks for wallet-pass actions. Learn more
Jun 18Customer Journey APIAddedNew REST/JSON Customer Journey API to create, update, and manage journeys, trigger API entries, and read journey statistics (base https://journey.pushwoosh.com). Learn more
Jun 16Android SDK v6.9.1AddedAdded getSubscriptionAccountId() for Google Play Billing subscription attribution. Firebase Messaging now ships as a transitive dependency. Live Updates progress bar can be hidden for status-only updates. Learn more
Jun 16Web Push SDK v3.59.0AddedEmbed web popups from code: export WebPopupsWidget from the SDK package. Learn more
Jun 15Messaging API v2AddedAdded the Cancel method (POST /messaging/v2/cancel) to cancel a pending, waiting, or processing message by message_code. Learn more
Jun 15iOS SDK v7.1.1AddedAdded Pushwoosh.configure.pushPrimer, a customizable soft opt-in dialog shown before the iOS system permission prompt. Learn more
Jun 15iOS SDK v7.1.0AddedAdded PushwooshNotificationServiceExtension, a drop-in base class for Notification Service Extensions. Learn more
Jun 15iOS SDK v7.1.0DeprecatedPWNotificationExtensionManager is deprecated in favor of subclassing PushwooshNotificationServiceExtension. Learn more
Jun 11Messaging API v2AddedAdded use_latest_user_device to NotifyTransactional: when targeting users, deliver only to each user’s most recently active device. Learn more
Jun 11Customer Journey Statistics APIChangedIn-app journey elements now return pointStat metrics shows, interactions, and skipped instead of sent/opened/conversion. Learn more
Jun 08iOS SDK v7.0.46AddedAdded the PushwooshNotificationUI module: a drop-in full-screen “stories” experience for expanded push notifications, rendered by subclassing PushwooshStoriesViewController in a Notification Content Extension. Learn more
Jun 08iOS SDK v7.0.46FixedFixed App Store upload rejections (error 409), a notification service extension hang with App Groups, and a crash on malformed badge values. Learn more
Jun 02Android SDK v6.9.0AddedAdded the pushwoosh-liveupdates module for ongoing, progress-style notifications on Android 16 (API 36+), for use cases like orders, rides, and deliveries. Learn more
Jun 02Apple Wallet PassKit APIAddedAdded Apple Wallet passes as a channel, with a PassKit API to issue and update passes. Updates sync to every device that added the pass. Learn more
Jun 01Tags APIAddedAdded email system tags for email segmentation: Last Email Open Message Code, Last Email Click Message Code, Last Email Confirm, Bounced Email, and Unsubscribed Emails. Learn more
Date
Component
Change
Details
May 26Messaging API v2AddedNotify now supports SMS as a first-class channel. Learn more
May 22Web Push SDK v3.57.0AddedAdded api.setLanguage(...) to override device locale. It takes priority over initParams and navigator.language. Learn more
May 22Web Push SDK v3.57.0AddedAdded support for the webPopups widget option in the SDK init params. Learn more
May 22SMTP gatewayAddedAdded SMTP submission endpoint smtp.pushwoosh.com:587 (STARTTLS + AUTH PLAIN). Messages are forwarded to Messaging API v2 as transactional email. Learn more
May 21Android SDK v6.8.1ChangedImproved session, idle, and exit-intent tracking accuracy. setLogLevel() now keeps the previous level and logs an error instead of throwing on an unrecognized value. Learn more
May 18iOS SDK v7.0.43RemovedLegacy PushwooshInboxUI was removed from build and release pipelines. Migrate to PushwooshInboxKit. Learn more
May 18iOS SDK v7.0.43ChangedApplication codes containing . are now explicitly rejected. This format has long been deprecated. Contact Pushwoosh Support if you still use one. Learn more
May 18iOS SDK v7.0.43FixedInboxKit refresh now runs only on real background transitions to prevent extra POST requests
May 14Android SDK v6.8.0AddedAdded setAdvertisingId() for passing GAID to Pushwoosh for Meta Ads MADID matching. Requires user consent and manual integration in your app. Learn more
May 13iOS SDK v7.0.41AddedAdded setAdvertisingId() for passing IDFA to Pushwoosh for Meta Ads MADID matching. Requires ATT consent and manual integration in your app. Learn more
May 07iOS SDK v7.0.40AddedAdded PushwooshInboxKit with banner, captioned, and classic card layouts, inline CTA buttons, and swipe-to-delete. Learn more
May 04Tags APIRemovedRemoved application_specific field from Tags API responses. Learn more