Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
31 commits
Select commit Hold shift + click to select a range
66c3018
Update unreal plugin version
jaydeep-helpshift Mar 17, 2026
242ac64
Add unreal proactive engagement doc
jaydeep-helpshift Mar 18, 2026
4447c64
Deprecate unreal outbound support page
jaydeep-helpshift Mar 18, 2026
580b9e8
Update unreal iOS notifications page
jaydeep-helpshift Mar 18, 2026
2878e0e
Add unreal 10.5.0 migration guide
jaydeep-helpshift Mar 19, 2026
4966aec
Update iOS version in Unreal getting started
jaydeep-helpshift Mar 20, 2026
d37cde0
Add release notes for unreal 10.5.0
jaydeep-helpshift Mar 20, 2026
3d77c0f
Add unreal iOS 10.5.0 impact analysis
jaydeep-helpshift Mar 20, 2026
fb6d6bd
Add download button for unreal plugin in release notes
jaydeep-helpshift Mar 20, 2026
0005ce3
Update to latest logo and icon (#198)
sumeet-helpshift Mar 23, 2026
ee795d1
Reduce height of logo so that it doesnt cross over the nav bar
sumeet-helpshift Mar 26, 2026
9abacc5
Add documentation for Java based push notification registration and h…
sumeet-helpshift Apr 18, 2026
1070e33
Add proguard rules for android classes
sumeet-helpshift Apr 18, 2026
91c1929
Add note for main thread delivery of events in all plugins
sumeet-helpshift Apr 18, 2026
cb538fd
Move outbound page to last and add deprecation side note on title
sumeet-helpshift Apr 18, 2026
ff17da0
Fix event documentation links for User hub session expiry event
sumeet-helpshift Apr 18, 2026
2186aef
Add recommended tag for User Hub page for all sdk plugins
sumeet-helpshift Apr 18, 2026
3b1247a
Add recommended, new and deprecated tags for features in Unity
sumeet-helpshift Apr 18, 2026
a1ef3fb
Add key behaviour expectations in various scenarios in proactive enga…
sumeet-helpshift Apr 18, 2026
88db243
Add impact analysis for Unreal android
sumeet-helpshift Apr 18, 2026
531dcc2
Move legacy user page down and tag it as LEGACY
sumeet-helpshift Apr 20, 2026
5526a80
Add user hub impl flow diagram to all sdk plugins
sumeet-helpshift Apr 20, 2026
342f52c
Add user hub to getting started page for all plugins
sumeet-helpshift Apr 20, 2026
d19f2b0
Add docs for InitWithCredentials unreal API
jaydeep-helpshift Apr 20, 2026
48dcf04
Remove Set Initial User Message from hs-widget section. (#199)
dv-Gogna Mar 31, 2026
9f5d439
Fix docs for CUFs and other attributes fields (#201)
sumeet-helpshift Apr 14, 2026
226b56c
Add user hub impl flow diagram to all sdk plugins
sumeet-helpshift Apr 20, 2026
8ea569d
Remove extra userhubflow import
jaydeep-helpshift Apr 20, 2026
b6c58be
Merge branch 'main' into sdkx-unreal-10.5.0
jaydeep-helpshift Apr 20, 2026
7b7e493
Update docs/sdkx-unreal/migration-guide-ios-1050.mdx
jaydeep-helpshift Apr 20, 2026
b7a95fc
Update docs/sdkx-unreal/migration-guide-ios-1050.mdx
jaydeep-helpshift Apr 20, 2026
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
11 changes: 11 additions & 0 deletions docs/_partials/_androidAndiOSProactiveNotifBehaviourTable.mdx
Original file line number Diff line number Diff line change
@@ -0,0 +1,11 @@

<div className="compact ">

| Configuration | Android | iOS |
| ------------- | -------------------------------------- | --------------- |
| App not registered for Push Notifications | No Proactive Push or In-App notifications will be received. | No proactive Push or In-App notifications received. |
| Registered for push but Notification Permissions not granted | No Push notifications. In-App notifications will show when the app is next opened. | No Push notifications. In-App notifications show only if the user is actively on the app screen when triggered. |
| Registered and Notification Permissions Granted | Push will be displayed in device notification tray and In-App notifications will be seen the next time the user opens the app. | Notification appears in the device tray. In-App shows after tapping the tray notification or upon opening the app directly. |
| In-App Expiry Time | 2 days from time of delivery. | 2 days from time of delivery. |

</div>
11 changes: 11 additions & 0 deletions docs/_partials/_androidProactiveNotifBehaviourTable.mdx
Original file line number Diff line number Diff line change
@@ -0,0 +1,11 @@

<div className="compact ">

| Configuration | Behaviour |
| ------------- | -------------------------------------- |
| App not registered for Push Notifications | No Proactive Push or In-App notifications will be received. |
| Registered for push but Notification Permissions not granted | No Push notifications. In-App notifications will show when the app is next opened. |
| Registered and Notification Permissions Granted | Push will be displayed in device notification tray and In-App notifications will be seen the next time the user opens the app. |
| In-App Expiry Time | 2 days from time of delivery. |

</div>
11 changes: 11 additions & 0 deletions docs/_partials/_iOSProactiveNotifBehaviourTable.mdx
Original file line number Diff line number Diff line change
@@ -0,0 +1,11 @@

<div className="compact ">

| Configuration | Behaviour |
| ------------- | --------------- |
| App not registered for Push Notifications. | No proactive Push or In-App notifications received. |
| Registered for push but Notification Permissions not granted | No Push notifications. In-App notifications show only if the user is actively on the app screen when triggered. |
| Registered and Notification Permissions Granted | Notification appears in the device tray. In-App shows after tapping the tray notification or upon opening the app directly. |
| In-App Expiry Time | 2 days from time of delivery. |

</div>
9 changes: 9 additions & 0 deletions docs/_partials/_userhubFlowDiagram.mdx
Original file line number Diff line number Diff line change
@@ -0,0 +1,9 @@
import { Image } from "@site/src/components/forDocs";

### User Hub implementation flow diagram

<Image
src="/static/books/common/userhub_flow_diagram.png"
width="full"
alt="User Hub implementation flow diagram"
/>
11 changes: 11 additions & 0 deletions docs/_partials/_userhubGettingstartedContent.mdx
Original file line number Diff line number Diff line change
@@ -0,0 +1,11 @@
User Hub is a cutting-edge User Identity and Profile system. It brings a unified view of every user directly into the Agent Dashboard in a single, real-time view.
By securely integrating verified identities and capturing both standard and custom user attributes, User Hub enables teams to deliver more personalized, accurate and contextual support at every touchpoint.

With a centralized user profile that includes IDs, custom fields, notes, tags and user panels, teams can recognize users across platforms, maintain continuity and deliver truly contextual support.
As AI becomes central to customer service, User Hub acts as the system of record that AI and automation depend on, providing clean, connected and secure data.

It fuels proactive engagement through complex, real-time segmentation to reach the right audience at the right moment, and serves as a foundation for workflows, predictive analytics, reporting, and many future AI-powered features.

Key change: More IDs, dedicated profile data space, real time, reach any user beyond just the ticket creators.

For more details, visit [help article](https://support.helpshift.com/hc/en/13-helpshift-technical-support/section/125-user-hub/).
2 changes: 1 addition & 1 deletion docs/sdkx-cocos2dx/delegates.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -17,8 +17,8 @@ The Helpshift SDK provides delegate callbacks to help app developers track a use
<Admonition type="info" title="Note">

- All the public APIs in the SDK should be called after initializing the SDK via [install API](/sdkx-cocos2dx/getting-started#initializing)

- Events invoked before setting `HelpshiftCocos2dx::setHelpshiftEventsListener()` cannot be received again
- All events are invoked on the Application's main thread.

</Admonition>

Expand Down
8 changes: 8 additions & 0 deletions docs/sdkx-cocos2dx/getting-started.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -13,6 +13,8 @@ import {
DownloadButton,
} from "@site/src/components/forDocs";

import UserHubGettingStarted from "@site/docs/_partials/_userhubGettingstartedContent.mdx";

# Getting Started {#getting-started}

<Intro>
Expand Down Expand Up @@ -345,3 +347,9 @@ Helpshift install call will throw `InstallException` in case the validation of t
</Admonition>
</TabItem>
</Tabs>

## User Identity and Profile Management

<UserHubGettingStarted />

Refer [User Hub documentation](/sdkx-cocos2dx/identity-user-hub/#user-hub-implementation-flow-diagram) for SDK integration details.
4 changes: 4 additions & 0 deletions docs/sdkx-cocos2dx/identity-user-hub.mdx
Original file line number Diff line number Diff line change
@@ -1,5 +1,6 @@
---
sidebar_position: 45
sidebar_class_name: feature-recommended
title: User Hub
description: Learn more about identifying and managing users.
---
Expand All @@ -13,6 +14,7 @@ import {
} from "@site/src/components/forDocs";

import CUFDateTypeNotice from "@site/docs/_partials/_cuf_date_valuetype.mdx";
import UserHubFlowDiagram from "@site/docs/_partials/_userhubFlowDiagram.mdx";

<Admonition type="info" title="Note">

Expand Down Expand Up @@ -43,6 +45,8 @@ Setting up the new Identity System ("User Hub") requires some development effort

</Admonition>

<UserHubFlowDiagram />

### Logging in your end-users

In order to use the new Identity System, you need to implement the following steps:
Expand Down
7 changes: 7 additions & 0 deletions docs/sdkx-cocos2dx/proactive-engagement.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -14,6 +14,8 @@ import {
Centered
} from "@site/src/components/forDocs";

import AndroidiOSProactiveNotifBehaviourTable from "@site/docs/_partials/_androidAndiOSProactiveNotifBehaviourTable.mdx";

<Intro>

Proactive Engagement lets you reach out to your players by sending Push/In app Notifications on their mobile devices and engage in various ways including starting conversations.
Expand Down Expand Up @@ -159,6 +161,11 @@ Otherwise, follow the setup instructions on the
</TabItem>
</Tabs>

## Behaviour in different configurations

<AndroidiOSProactiveNotifBehaviourTable />


## Pausing In-App Notifications {#pausing-in-app-notifications}

- This API will pause/unpause the showing of in-app notifications to the end user when the application is in the foreground.
Expand Down
3 changes: 2 additions & 1 deletion docs/sdkx-cocos2dx/users.mdx
Original file line number Diff line number Diff line change
@@ -1,5 +1,6 @@
---
sidebar_position: 40
sidebar_position: 850
sidebar_class_name: feature-legacy
title: User Identification & Management
description: Learn more about identifying and managing users.
---
Expand Down
7 changes: 7 additions & 0 deletions docs/sdkx-react-native/delegates.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -27,6 +27,13 @@ The Helpshift SDK provides delegate callbacks to help app developers track a use

</Intro>

<Admonition type="info" title="Note">

- All the public APIs in the SDK should be called after initializing the SDK via [install API](/sdkx-react-native/getting-started/#initializing)
- Events invoked before setting `helpshiftEmitter.addListener()` cannot be received again
- All events are invoked on the Application's main thread.

</Admonition>

<Admonition type="warning" title="Architecture Update SDKX 10.4.0">
1. With SDK X 10.4.0 and above, Helpshift has introduced a new implementation approach for delegate events in React Native's new architecture. Please refer to the respective sections below to implement according to your app's architecture (Old or New).<br />
Expand Down
8 changes: 8 additions & 0 deletions docs/sdkx-react-native/getting-started.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -19,6 +19,8 @@ import {
Step,
} from "@site/src/components/forDocs";

import UserHubGettingStarted from "@site/docs/_partials/_userhubGettingstartedContent.mdx";

# Getting Started {#getting-started}

<Intro>
Expand Down Expand Up @@ -193,3 +195,9 @@ Helpshift is now integrated with your app. You should now use the support APIs f
Since the Helpshift plugin is meant for mobile devices only, you should put all Helpshift calls inside conditional checks to make sure they are only called when running on a device.

</Admonition>

### User Identity and Profile Management

<UserHubGettingStarted />

Refer [User Hub documentation](/sdkx-react-native/identity-user-hub/#user-hub-implementation-flow-diagram) for SDK integration details.
4 changes: 4 additions & 0 deletions docs/sdkx-react-native/identity-user-hub.mdx
Original file line number Diff line number Diff line change
@@ -1,5 +1,6 @@
---
sidebar_position: 45
sidebar_class_name: feature-recommended
title: User Hub
description: Learn more about identifying and managing users.
---
Expand All @@ -13,6 +14,7 @@ import {
} from "@site/src/components/forDocs";

import CUFDateTypeNotice from "@site/docs/_partials/_cuf_date_valuetype.mdx";
import UserHubFlowDiagram from "@site/docs/_partials/_userhubFlowDiagram.mdx";

<Admonition type="info" title="Note">

Expand All @@ -36,6 +38,8 @@ Setting up the new Identity System ( "User Hub" ) requires some development effo

- Ensure that you have an endpoint set up for obtaining user JWTs on-demand. This endpoint should use the secret key generated above to sign the JWT.

<UserHubFlowDiagram />

### Logging in your end-users

In order to use the new Identity System, you need to implement the following steps:
Expand Down
3 changes: 2 additions & 1 deletion docs/sdkx-react-native/outbound-support.mdx
Original file line number Diff line number Diff line change
@@ -1,5 +1,6 @@
---
sidebar_position: 95
sidebar_position: 900
sidebar_class_name: feature-deprecated
title: Outbound Support
description: "With outbound support, you can proactively engage with consumers to solve problems within the app. Read more about the feature **[here](https://support.helpshift.com/hc/faq/1163-outbound-support-create-outbound-support-link)**."
---
Expand Down
6 changes: 6 additions & 0 deletions docs/sdkx-react-native/proactive-engagement.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -14,6 +14,8 @@ import {
Centered
} from "@site/src/components/forDocs";

import AndroidiOSProactiveNotifBehaviourTable from "@site/docs/_partials/_androidAndiOSProactiveNotifBehaviourTable.mdx";

<Intro>

Proactive Engagement lets you reach out to your players by sending Push/In app Notifications on their mobile devices and engage in various ways including starting conversations.
Expand Down Expand Up @@ -160,6 +162,10 @@ Otherwise, follow the setup instructions on the
</TabItem>
</Tabs>

## Behaviour in different configurations

<AndroidiOSProactiveNotifBehaviourTable />

## Pausing In-App Notifications {#pausing-in-app-notifications}

- This API will pause/unpause the showing of in-app notifications to the end user when the application is in the foreground.
Expand Down
3 changes: 2 additions & 1 deletion docs/sdkx-react-native/users.mdx
Original file line number Diff line number Diff line change
@@ -1,5 +1,6 @@
---
sidebar_position: 40
sidebar_position: 850
sidebar_class_name: feature-legacy
title: User Identification & Management
description: Learn more about Users
---
Expand Down
2 changes: 1 addition & 1 deletion docs/sdkx-unity/delegates-android.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -30,8 +30,8 @@ The Helpshift SDK provides delegate callbacks to help app developers track a use
<Admonition type="info" title="Note">

* All the public APIs in the SDK should be called after initializing the SDK via [HelpshiftSdk.Install() API](/sdkx-unity/getting-started-android#initializing)

* Events invoked before setting `Helpshift.SetHelpshiftEventsListener` cannot be received agian.
* All events are invoked on the Application's main thread.

</Admonition>

Expand Down
1 change: 1 addition & 0 deletions docs/sdkx-unity/delegates-ios.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -31,6 +31,7 @@ The Helpshift SDK provides delegate callbacks to help app developers track a use

- All the public APIs in the SDK should be called after initializing the SDK via [HelpshiftSdk.install() API](/sdkx-unity/getting-started-ios#initializing)
- Events invoked before setting `Helpshift.SetHelpshiftEventsListener` cannot be received again
- All events are invoked on the Application's main thread.

</Admonition>

Expand Down
8 changes: 8 additions & 0 deletions docs/sdkx-unity/getting-started-android.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -19,6 +19,8 @@ import {
Step,
} from "@site/src/components/forDocs";

import UserHubGettingStarted from "@site/docs/_partials/_userhubGettingstartedContent.mdx";

# Getting Started <small>Android</small> {#getting-started}

<Intro>
Expand Down Expand Up @@ -271,3 +273,9 @@ public class MyGameControl : MonoBehaviour
all Helpshift calls inside checks to make sure they are only called when
running on a device.
</Admonition>

### User Identity and Profile Management

<UserHubGettingStarted />

Refer [User Hub documentation](/sdkx-unity/identity-user-hub-android/#user-hub-implementation-flow-diagram) for SDK integration details.
8 changes: 8 additions & 0 deletions docs/sdkx-unity/getting-started-ios.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -19,6 +19,8 @@ import {
Step,
} from "@site/src/components/forDocs";

import UserHubGettingStarted from "@site/docs/_partials/_userhubGettingstartedContent.mdx";

# Getting Started <small>iOS</small> {#getting-started}

<Intro>
Expand Down Expand Up @@ -212,3 +214,9 @@ public class MyGameControl : MonoBehaviour
## Start using Helpshift {#start-using}

Helpshift is now integrated in your app. You should now use the [support APIs](/sdkx-unity/support-tools-ios/) inside your app to experience the functionality provided by the Helpshift SDK.

### User Identity and Profile Management

<UserHubGettingStarted />

Refer [User Hub documentation](/sdkx-unity/identity-user-hub-ios/#user-hub-implementation-flow-diagram) for SDK integration details.
8 changes: 6 additions & 2 deletions docs/sdkx-unity/identity-user-hub-android.mdx
Original file line number Diff line number Diff line change
@@ -1,5 +1,6 @@
---
sidebar_position: 185
sidebar_class_name: feature-recommended
title: User Hub
description: Learn more about identifying and managing users.
---
Expand All @@ -13,6 +14,7 @@ import {
} from "@site/src/components/forDocs";

import CUFDateTypeNotice from "@site/docs/_partials/_cuf_date_valuetype.mdx";
import UserHubFlowDiagram from "@site/docs/_partials/_userhubFlowDiagram.mdx";

<Admonition type="info" title="Note">

Expand All @@ -36,6 +38,8 @@ Setting up the new Identity System ( "User Hub" ) requires some development effo

- Ensure that you have an endpoint set up for obtaining user JWTs on-demand. This endpoint should use the secret key generated above to sign the JWT.

<UserHubFlowDiagram />

### Logging in your end-users

In order to use the new Identity System, you need to implement the following steps:
Expand Down Expand Up @@ -169,9 +173,9 @@ public class MyGameControl : MonoBehaviour

### Logout due to session expiry

User logout can also be triggered by the SDK itself when the current user’s login session expires. This login session is independent from your app’s login session. When this happens, SDK will send the `userSessionExpired` event to your app immediately as well on each app foreground. In response to this event, you should obtain a fresh JWT for the app’s current user from your backend and call the login API with the new JWT and login config to start a fresh SDK login session. SDK will stop sending this event after a successful login.
User logout can also be triggered by the SDK itself when the current user’s login session expires. This login session is independent from your app’s login session. When this happens, SDK will send the [userSessionExpired](/sdkx-unity/delegates-android/#user_session_expired) event to your app immediately as well on each app foreground. In response to this event, you should obtain a fresh JWT for the app’s current user from your backend and call the login API with the new JWT and login config to start a fresh SDK login session. SDK will stop sending this event after a successful login.

If you wish to proactively refresh your logged in user’s credentials with Helpshift so that the session never expires, you can additionally listen to `refreshUserCredentials` event. This event is sent by the SDK some time before the session actually expires. This gives your app a chance to re-login the current user and maintain their session.
If you wish to proactively refresh your logged in user’s credentials with Helpshift so that the session never expires, you can additionally listen to [refreshUserCredentials](/sdkx-unity/delegates-android/#refresh_user_credentials) event. This event is sent by the SDK some time before the session actually expires. This gives your app a chance to re-login the current user and maintain their session.

For more details on these events, please check the [Delegates](/sdkx-unity/delegates-android/#user_session_expired) page.

Expand Down
8 changes: 6 additions & 2 deletions docs/sdkx-unity/identity-user-hub-ios.mdx
Original file line number Diff line number Diff line change
@@ -1,5 +1,6 @@
---
sidebar_position: 45
sidebar_class_name: feature-recommended_nested
title: User Hub
description: Learn more about identifying and managing users.
---
Expand All @@ -13,6 +14,7 @@ import {
} from "@site/src/components/forDocs";

import CUFDateTypeNotice from "@site/docs/_partials/_cuf_date_valuetype.mdx";
import UserHubFlowDiagram from "@site/docs/_partials/_userhubFlowDiagram.mdx";

<Admonition type="info" title="Note">

Expand All @@ -36,6 +38,8 @@ Setting up the new Identity System ( "User Hub" ) requires some development effo

- Ensure that you have an endpoint set up for obtaining user JWTs on-demand. This endpoint should use the secret key generated above to sign the JWT.

<UserHubFlowDiagram />

### Logging in your end-users

In order to use the new Identity System, you need to implement the following steps:
Expand Down Expand Up @@ -169,9 +173,9 @@ public class MyGameControl : MonoBehaviour

### Logout due to session expiry

User logout can also be triggered by the SDK itself when the current user’s login session expires. This login session is independent from your app’s login session. When this happens, SDK will send the `userSessionExpired` event to your app immediately as well on each app foreground. In response to this event, you should obtain a fresh JWT for the app’s current user from your backend and call the login API with the new JWT and login config to start a fresh SDK login session. SDK will stop sending this event after a successful login.
User logout can also be triggered by the SDK itself when the current user’s login session expires. This login session is independent from your app’s login session. When this happens, SDK will send the [userSessionExpired](/sdkx-unity/delegates-ios/#user_session_expired) event to your app immediately as well on each app foreground. In response to this event, you should obtain a fresh JWT for the app’s current user from your backend and call the login API with the new JWT and login config to start a fresh SDK login session. SDK will stop sending this event after a successful login.

If you wish to proactively refresh your logged in user’s credentials with Helpshift so that the session never expires, you can additionally listen to `refreshUserCredentials` event. This event is sent by the SDK some time before the session actually expires. This gives your app a chance to re-login the current user and maintain their session.
If you wish to proactively refresh your logged in user’s credentials with Helpshift so that the session never expires, you can additionally listen to [refreshUserCredentials](/sdkx-unity/delegates-ios/#refresh_user_credentials) event. This event is sent by the SDK some time before the session actually expires. This gives your app a chance to re-login the current user and maintain their session.

For more details on these events, please check the [Delegates](/sdkx-unity/delegates-ios/#user_session_expired) page.

Expand Down
3 changes: 2 additions & 1 deletion docs/sdkx-unity/outbound-support-android.mdx
Original file line number Diff line number Diff line change
@@ -1,5 +1,6 @@
---
sidebar_position: 225
sidebar_position: 900
sidebar_class_name: feature-deprecated
title: Outbound Support
description: "With outbound support, you can proactively engage with consumers to solve problems within the app. Read more about the feature **[here](https://support.helpshift.com/hc/faq/1163-outbound-support-create-outbound-support-link)**."
---
Expand Down
3 changes: 2 additions & 1 deletion docs/sdkx-unity/outbound-support-ios.mdx
Original file line number Diff line number Diff line change
@@ -1,5 +1,6 @@
---
sidebar_position: 85
sidebar_position: 920
sidebar_class_name: feature-deprecated
title: Outbound Support
description: "With outbound support, you can proactively engage with consumers to solve problems within the app. Read more about the feature **[here](https://support.helpshift.com/hc/faq/1163-outbound-support-create-outbound-support-link)**."
---
Expand Down
Loading
Loading