When Customers initiate Chat on your website and are logged into their online account/portal/members page, Glad App can identify Customers’ email addresses without needing to go through the onboarding process again of asking for their email address to find their Customer Profile, providing personalized service and making Customers feel known.
With JWT authentication, chats begin by greeting Customers by their first name, skipping onboarding if they are authenticated and logged into their account.
There are two methods to onboard Customers in Gladly automatically:
Standard identification without Javascript Web Token (JWT) #
Utilizing setUser() , you can skip onboarding for your Customers when you know how to identify them because they are logged into their secure account/portal/members page where Glad App is also available.
To implement standard identification, make a single API call using setUser() after initializing Glad App and pass the Customer name and email address or phone number to Gladly. Note that if Glad App Onboarding setting is activated and a Customer is not authenticated in their account/portal/members page, Glad App will ask for their name and email address before a chat session can begin.
When a chat session ends, and you’d like to programmatically un-associate Customers from Glad App after they log out of your secure portal/member webpage, use the clearUser() API.
Tip – Documentation on configuring Glad App and using Glad Apps API is found in our developer guide.
Secure authentication with Javascript Web Token (JWT) #
An extension of using setUser() to authenticate Customers is possible by allowing the passing of a User Identity Javascript Web Token (JWT) that can be used to identify Customers in a trusted way using their email address. JWT provides secure communication between Gladly and your Customers.
Additional notes when implementing JWT for Chat authentication #
Level of effort
We recommend having developer resources implement and maintain this type of authentication, especially if you don’t develop and own account authentication on your website, meaning you may need third-party developer support.
Reporting
No reports indicate the number of authenticated Conversations. Authentication status only appears in the Conversation Timeline.
Authentication experience with Sidekick
Rules may be created within the Thread Builder to adjust behavior based on the Customer’s authentication status, allowing for a more personalized experience in Sidekick.
Customer and Agent experience if authenticated using JWT #
Tip – Train your Agents to understand the authentication UX
Train your Agents to understand the various UX they may encounter based on how Customers verify their identity during the Chat onboarding process.
The key difference between utilizing secure authentication with JWT and standard identification without JWT is the appearance of the Trusted Message icon in the Conversation Timeline, indicating that Glad App identified that the Customer is logged into their secure account/portal/members page.
The green trusted message icon shows that the Customer logged into the account they’re chatting from. An Agent can have a trusted Conversation with a Customer, eliminating the need to ask Customers to confirm their identity manually.
Trusted messages on closed Conversations display a gray trusted message icon, and non-trusted messages appear without the icon.
Note the subtle differences in how chat messages are presented to Customers and Agents based on authentication order, ranging from the most ideal to the least desired.
The most ideal scenario for secure authentication using JWT is a Customer is already logged into their secure account/portal/members page before starting a chat. This allows the Agent to have a trusted and personalized chat Conversation with a Customer without asking the Customer to authenticate their identity.
Customers can still have a trusted and personalized chat Conversation before being routed to an Agent by logging into their secure account/portal/members page before the chat begins. The First Message in Glad App must include a link to your secure login page.
Customers can start a chat by providing their email address without logging into their secure account/portal/members page. They will still be routed to an Agent with their existing (if there is one) Customer Profile (if there is one) with past Conversations. Agents can ask the Customer to log into their account anytime for a trusted Conversation.
Customers can start a chat by providing their email address without logging into their secure account/portal/members page. They will still be routed to an Agent with their existing (if there is one) Customer Profile (if there is one) with past Conversations. Agents can ask the Customer to log into their account anytime for a trusted Conversation. Still, the better process is if authentication can be accomplished before the chat is routed.
Customers can initiate a chat by providing their email address, even if they haven’t logged into their secure account/portal/members page. Gladly will still route them to an Agent with their existing Customer Profile (if they have one) and past Conversations. However, Agents may ask Customers to log in for a trusted conversation at any time. Suppose a Customer provides a different email address than the one they provided to start the chat. In that case, the system will consider them a different person and route them to a different Agent accordingly.
Glad App configuration tips when implementing JWT #
Your Customers must be logged into their secure account/portal/members page to authenticate using JWT. For Customers chatting in who are not already logged into their account/portal/members page, set up Glad App to include a link to your login page in the First Message, allowing the Customer to authenticate their identity before the chat is routed to an Agent.
Note –Onboarding does not need to be activated in Glad App for JWT.
It’s ideal to encourage Customers to authenticate before they’re routed to an Agent, hence the ask to log into their account in the First Message in Glad App.
You can encourage Customers who do not have an account to create one before starting a chat. Otherwise, they can provide their email address, which could create a new Customer Profile if it’s the first time they’re reaching out using the email address or find any past Conversations if they’ve reached out in the past.
Encourage Agents to have authenticated Conversations with Customers #
While Customers can start a Conversation using their email address and Agents can see past Conversations, encourage Agents to ask Customers to log into their account (if they have one) to have a secure Conversation, especially if questions are account-related or in situations where additional verifications should be required. Agents should do this as early in the Conversation as possible, but remember the UX nuances based on when a Customer authenticates in the chat process.
You must establish your own guides and protocols on how to best guide Agents in supporting authenticated (i.e., known accounts) and non-authenticated Customers.
This website uses cookies to improve your experience while you navigate through the website. Out of these cookies, the cookies that are categorized as necessary are stored on your browser as they are essential for the working of basic functionalities of the website. We also use third-party cookies that help us analyze and understand how you use this website. These cookies will be stored in your browser only with your consent. You also have the option to opt-out of these cookies. But opting out of some of these cookies may have an effect on your browsing experience.
Necessary cookies are absolutely essential for the website to function properly. These cookies ensure basic functionalities and security features of the website, anonymously.
Cookie
Duration
Description
__cf_bm
29 minutes
This cookie, set by Cloudflare, is used to support Cloudflare Bot Management.
_wpfuuid
1 year 1 month 4 days
This cookie is used by the WPForms WordPress plugin. The cookie is used to allows the paid version of the plugin to connect entries by the same user and is used for some additional features like the Form Abandonment addon.
BIGipServer*
session
Marketo sets this cookie to collect information about the user's online activity and build a profile about their interests to provide advertisements relevant to the user.
cookielawinfo-checkbox-advertisement
1 year
Set by the GDPR Cookie Consent plugin, this cookie records the user consent for the cookies in the "Advertisement" category.
cookielawinfo-checkbox-analytics
11 months
This cookie is set by GDPR Cookie Consent plugin. The cookie is used to store the user consent for the cookies in the category "Analytics".
cookielawinfo-checkbox-functional
11 months
The cookie is set by GDPR cookie consent to record the user consent for the cookies in the category "Functional".
cookielawinfo-checkbox-necessary
11 months
This cookie is set by GDPR Cookie Consent plugin. The cookies is used to store the user consent for the cookies in the category "Necessary".
cookielawinfo-checkbox-others
11 months
This cookie is set by GDPR Cookie Consent plugin. The cookie is used to store the user consent for the cookies in the category "Other.
cookielawinfo-checkbox-performance
11 months
This cookie is set by GDPR Cookie Consent plugin. The cookie is used to store the user consent for the cookies in the category "Performance".
CookieLawInfoConsent
1 year
CookieYes sets this cookie to record the default button state of the corresponding category and the status of CCPA. It works only in coordination with the primary cookie.
PHPSESSID
session
This cookie is native to PHP applications. The cookie stores and identifies a user's unique session ID to manage user sessions on the website. The cookie is a session cookie and will be deleted when all the browser windows are closed.
viewed_cookie_policy
11 months
The cookie is set by the GDPR Cookie Consent plugin and is used to store whether or not user has consented to the use of cookies. It does not store any personal data.
Functional cookies help to perform certain functionalities like sharing the content of the website on social media platforms, collect feedbacks, and other third-party features.
Cookie
Duration
Description
li_gc
5 months 27 days
Linkedin set this cookie for storing visitor's consent regarding using cookies for non-essential purposes.
lidc
1 day
LinkedIn sets the lidc cookie to facilitate data center selection.
UserMatchHistory
1 month
LinkedIn sets this cookie for LinkedIn Ads ID syncing.
Performance cookies are used to understand and analyze the key performance indexes of the website which helps in delivering a better user experience for the visitors.
Analytical cookies are used to understand how visitors interact with the website. These cookies help provide information on metrics the number of visitors, bounce rate, traffic source, etc.
Cookie
Duration
Description
_ga
1 year 1 month 4 days
Google Analytics sets this cookie to calculate visitor, session and campaign data and track site usage for the site's analytics report. The cookie stores information anonymously and assigns a randomly generated number to recognise unique visitors.
_ga_*
1 year 1 month 4 days
Google Analytics sets this cookie to store and count page views.
_gd_session
4 hours
This cookie is used for collecting information on users visit to the website. It collects data such as total number of visits, average time spent on the website and the pages loaded.
_gd_visitor
1 year 1 month 4 days
This cookie is used for collecting information on the users visit such as number of visits, average time spent on the website and the pages loaded for displaying targeted ads.
_sp_id.*
1 year 1 month 4 days
Snowplow sets this cookie to store user information that is created when a user first visits a site and is updated on subsequent visits.
_sp_ses.*
30 minutes
Snowplow sets this cookie to store user information that is created when a user first visits a site and is updated on subsequent visits.
AnalyticsSyncHistory
1 month
Linkedin set this cookie to store information about the time a sync took place with the lms_analytics cookie.
mf_user
3 months
Mouseflow sets this cookie to identify whether a visitor is new or returning.
vuid
1 year 1 month 4 days
Vimeo installs this cookie to collect tracking information by setting a unique ID to embed videos on the website.
Advertisement cookies are used to provide visitors with relevant ads and marketing campaigns. These cookies track visitors across websites and collect information to provide customized ads.
Cookie
Duration
Description
_mkto_trk
1 year 1 month 4 days
This cookie, provided by Marketo, has information (such as a unique user ID) that is used to track the user's site usage. The cookies set by Marketo are readable only by Marketo.
bcookie
1 year
LinkedIn sets this cookie from LinkedIn share buttons and ad tags to recognize browser IDs.
bscookie
1 year
LinkedIn sets this cookie to store performed actions on the website.
li_sugr
3 months
LinkedIn sets this cookie to collect user behaviour data to optimise the website and make advertisements on the website more relevant.