Gainsight
Step-by-step guide to send your event data from RudderStack to Gainsight CS.
Last updated
Was this helpful?
Step-by-step guide to send your event data from RudderStack to Gainsight CS.
Last updated
Was this helpful?
Gainsight CS is Gainsight's customer success product. It gives you a complete, 360-degree view of your customers and helps you understand their product behavior based on the data around their interactions and usage trends. With Gainsight CS, you can also analyze your company's activity with every customer and leverage the insights to improve interaction with them.
RudderStack lets you send your event data from a variety of sources to Gainsight CS.
This integration is developed for the Gainsight CS NXT Edition.
Find the open-source transformer code for this destination in our GitHub repo.
To send your events to Gainsight CS via RudderStack, you will first need to add it as a destination in the RudderStack dashboard.
First, check if the source platform is supported by Gainsight CS by referring to the table below:
Connection Mode
Web
Mobile
Server
Device mode
-
-
-
Cloud mode
Supported
Supported
Supported
To know more about the difference between Cloud mode and Device mode in RudderStack, read the RudderStack connection modes guide.
Once you've confirmed that the source platform supports sending events to RudderStack, follow these steps:
From your RudderStack dashboard, add the source and select Gainsight from the list of supported destinations.
Assign a name to this destination, and click on Next. You should then see the following screen:
Connection screen for Gainsight
You will need to enter the following settings under Connection Settings:
Access Key: This key is required for the identify
and group
calls. To generate the access key in Gainsight, go to Administration - Connectors 2.0 - Connectors tab and click on Gainsight API.
For more information on generating the Gainsight Access Key, refer to their support page.
Domain or Subdomain Name: Subdomain or custom domain is a required field to work with the Gainsight API. required to work with the Gainsight API.
More information on setting up a Gainsight custom domain can be found in their support page.
Gainsight Event Settings: This setting is related to the Gainsight Events Framework.
Refer to the Track section of this documentation for more details.
RudderStack creates a Person
object in Gainsight for the identify
call. Gainsight uses the Email
field as an identifier and it is mandatory to merge the object. Hence, for an identify
call, the email
field is mandatory.
For the default fields in Gainsight Person
object, the camelCase notation is used in the RudderStack payload traits.
The mapping of the RudderStack traits to the Gainsight Person
object fields is as shown:
Gainsight Person Field
RudderStack Trait Name
Email
email
Name
name
FirstName
firstName
MiddleName
middleName
LastName
lastName
LinkedinUrl
linkedinUrl
Location
location
ExternalRecordID__gc
externalRecordId
EmailOptOut
emailOptOut
DynamicResolutionKey
dynamicResolutionKey
Comments
comments
Timezone
timezone
MasterRecordID
masterRecordId
MasterAvatarTypeCode
masterAvatarTypeCode
An example of the identify
call in RudderStack is as shown:
Custom fields are supported for identify
. Refer to the section below for details.
You can create custom fields in the Gainsight schema for a Person
object as shown in the image below:
Then, you can add the RudderStack trait name for the Gainsight custom field mapping in the RudderStack dashboard as shown:
When you add custom fields in the Gainsight schema, __gc
is automatically suffixed at the end. Therefore, you need to provide the field name including the __gc
suffix in the RudderStack dashboard as shown above.
The group
call associates a person with a group. RudderStack's group
call creates a Company
object if it is not present or updated with the provided traits. The Name
field in is used as the unique identifier.
For making a group
call, email
is a mandatory field in context.traits
of the RudderStack event payload.
The mapping of the RudderStack traits to the Gainsight Company
object fields is as shown:
Gainsight Company Field
RudderStack Trait Name
Name
name
Employees
employees
Arr
arr
BillingAddress
billingAddress
Summary
summary
Csm
csm
CustomerlifetimeInMonths
customerLifetimeInMonths
Industry
industry
LifecycleInWeeks
lifecycleInWeeks
ManagedAs
managedAs
Mrr
mrr
OriginalContractDate
originalContractDate
ParentCompany
parentCompany
RenewalDate
renewalDate
Stage
stage
Status
status
Tags
tags
TickerSymbol
tickerSymbol
Users
users
SfdcAccountId
sfdcAccountId
IndustryNew
industryNew
An example group
call is as shown below:
Custom Fields are supported for the group
call. For details, refer to the section below.
To send custom properties to Gainsight CS via RudderStack, you first need to create custom fields in the Gainsight schema for the Company
object, as shown in the following image:
Then, you can add the RudderStack trait name for the Gainsight custom field mapping in the RudderStack dashboard:
When you add custom fields in the Gainsight schema, __gc
is automatically suffixed at the end. Therefore, you need to provide the field name including the __gc
suffix in the RudderStack dashboard as shown above.
The track
call is used to work with the Gainsight Events Framework. The Gainsight Events Framework lets you create events which can then be used in the Programs and Rules Engine.
Gainsight events are identified with Event Name
and Event Version
. The events are grouped under Topics
. Note that there can be multiple events under a topic.
To start sending events, you will first need to register as a Publisher in Gainsight by going to Administration - Events and clicking on Register as Publisher. This generates a unique shared secret required for working with Gainsight Events Framework.
More information on the Gainsight Events Framework can be found in their support page.
Provide the required event settings in the RudderStack dashboard as shown:
The required settings are:
Shared Secret: This is a required field. Go to Administration - Events and click on Register as Publisher to get this key.
TenantId: The Tenant ID of the Publisher is a required field. You can copy this ID by going to Administration - Application Settings.
Contract ID: This field is optional. If a user subscribes to a contract, only those subscribers associated with this contract will get the event.
Topic Name: This is a required field. The events are grouped under topic.
The Contract ID an be provided in the RudderStack dashboard or in the track
payload as externalId
. If both are present, RudderStack gives higher precedence to the externalId
.
The following is an example of sending contractId
via a track
call:
track
call with Gainsight EventsBoth the event name
and version
are needed to use track
with Gainsight Events.
First, create a new event under a particular topic in Gainsight, as shown:
Then, provide this event name and the version mapping in the RudderStack dashboard as shown:
You are now ready to send events to Gainsight using the track
method.
An example of a track
call is as shown:
To send Gainsight Events to more than one topic, we recommend creating new Gainsight destinations in the RudderStack dashboard for each topic.
If you come across any issues while configuring Gainsight with RudderStack, please feel free to contact us. You can also start a conversation in our Slack community; we will be happy to talk to you!
gainsightcs-custom-field-person
gainsightcs-field-map-person
gainsightcs-custom-field-company
gainsightcs-field-map-company
gainsight-event-main-settings
gainsightcs-event-map-sample
gainsightcs-event-map-sample