Keen is a customer analytics platform that allows you to collect, analyze and get invaluable marketing insights from your customer event data.
RudderStack supports S2S (Server to Server) cloud mode and Web Native SDK for integration with Keen. You can thus send event data attached to Keen collections using RudderStack APIs.
Find the open source transformer code for this destination in the GitHub repository.
In the web device mode integration, that is, using JavaScript SDK as a source, RudderStack loads the Keen native SDK from thehttps://cdn.jsdelivr.net/ domain.
Based on your website’s content security policy, you might need to allowlist this domain to load the Keen SDK successfully.
Get started
Once you have confirmed that the platform supports sending events to Keen, perform the steps below:
From your RudderStack dashboard, add the source. From the list of destinations, select Keen.
Give a name to the destination and click Next. You should then see the following screen:
Connection Settings for Keen in RudderStack
Please enter the Project ID and Write Key.
You can enable the Use native SDK to send events setting to send events via device mode through Keen’s native JavaScript SDK.
Configuring Add-ons
If enabled, RudderStack attaches the following Keen add-ons to the events, which helps in their data enrichment before routing them to Keen:
Add-on
Description
Geo IP Add On
The enriched output will be available under the ip_geo_info key.
User Agent Add On
The enriched output will be available under the parsed_user_agent key.
URL Parsing Add On
The enriched output will be available under the parsed_page_url key.
Referrer Parsing Add On
The enriched output will be available under the referrer_info key.
Note: We only pass the IP, page and referrer add-ons to Keen if the event contains a valid ip, page, URL and referrer property.
Keen add-ons settings in RudderStack
Once you have finalized all settings, click Next to complete the configuration. Keen will now be added as a destination in RudderStack.
Identify
Calling rudderanalytics.identify() has no effect on Keen whatsoever, when called from the server-side SDKs. However, when called from client-side SDKs, RudderStack calls the Keen extendEventswith a user object userIdand traits passed in from the identify call.
Calling extendEvents adds the user object to all subsequentrecordEvent calls to Keen. Hence, to view the identify data , you will have to make a subsequent page and track call from RudderStack.
A sample identify call is as shown in the following code snippet:
Calling rudderanalytics.page() will pass the page properties to the Keen collection Viewed <category> <name> page. To learn more about the pagecall, please refer to our RudderStack Events Specification documentation.
A sample page call is as shown in the snippet below:
// "home" is the name of the page.
rudderanalytics.page("home",{path:"path",url:"url",title:"title",search:"search",referrer:"referrer"});
This will send the following properties to the Keen Viewed Home Page collection:
path
url
title
search
referrer
userId
user traits (If coming from the client SDKs)
Track
Calling rudderanalytics.track() will pass the event properties to Keen on the collection event-name. To learn more about the trackcall, please refer to our RudderStack Events Specification documentation.
The above call will send the following properties to Keen’s Track me collection:
category
label
value
userId
user traits (If coming from the client SDKs)
Screen
The screen call records the screen views of the user in your App. If you have turned on the screen views in your App implementation from the [iOS or Android SDK it will be registered in your dashboard. We’ll forward the properties you’ve passed along with the screen call as it is.
Here is a sample screen call in using RudderStack iOS SDK.
This site 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 as
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
Always Enabled
Necessary cookies are absolutely essential for the website to function properly. This
category only includes cookies that ensures basic functionalities and security
features of the website. These cookies do not store any personal information.
This site uses cookies to improve your experience. If you want to
learn more about cookies and why we use them, visit our cookie
policy. We'll assume you're ok with this, but you can opt-out if you wish Cookie Settings.