Integrating with Other Tools

How to integrate Smartlook with other analytical tools.

It is a typical use-case that an application uses several specialized third-party libraries to cover various aspects of the analytics, and it is a great advantage when it is possible to integrate these tools together.

In order to integrate Smartlook recordings with other tools, Smartlook publishes two URLs that point to the currently recorded session, and the current user in the Smartlook dashboard.

📘

The integration URLs are accessible only to the authorized Smartlook users.

The integration is then made by sending these URLs to the other tools, e.g., as custom parameters of their own objects.

📘

Smartlook also notifies the hosting application whenever one of the integration URLs changes. The notification mechanism depends heavily on the platform. Technical details are provided in the API Reference.

👍

Some practical examples of integrating Smartlook into some popular third-party tools are provided in the Integrations section of the API Reference.

Current Session URL

The Smartlook method that publishes dashboard session URL takes a boolean flag if the current timestamp should be included in the URL. With this parameter, Smartlook begins playback of the session at the indicated moment. This comes in handy when the URL is attached to a particular event.

val dashboardSessionURL = Smartlook.getDashboardSessionUrl()
AnotherTool.setParamater("SmartlookURL", dashboardSessionURL)
String dashboardSessionURL = Smartlook.getDashboardSessionUrl();
AnotherTool.setParameter("SmartlookURL", dashboardSessionURL);
let currentSmartlookSessionURL = Smartlook.getDashboardSessionURL(withCurrentTimestamp: true)
anotherToolEvent.setParameter("SmartlookURL", currentSmartlookSessionURL)
NSURL *currentSmartlookSessionURL = [Smartlook getDashboardSessionURLWithCurrentTimestamp:YES];
[anotherToolEvent setParamValue:currentSmartlookSessionURL forKey:@"SmartlookURL"];
String dashboardSessionURL = Smartlook.getDashboardSessionUrl(true);
AnotherTool.setProperty("SmartlookURL", dashboardSessionUrl)
var dashboardSessionURL =  await Smartlook.getDashboardSessionUrl(true);
AnotherTool.setProperty("SmartlookURL", dashboardSessionUrl);
smartlook.getDashboardSessionUrl().then((dashboardSessionUrl) => {
  AnotherTool.setProperty("SmartlookURL", dashboardSessionUrl)
});
Smartlook.getDashboardSessionUrl(
  function(dashboardSessionUrl) {
    AnotherTool.setProperty("SmartlookURL", dashboardSessionUrl);
  }
)
string dashboardSessionURL = SmartlookUnity.Smartlook.GetDashboardSessionUrl(true);
AnotherTool.setUserProperty("SmartlookURL", dashboardSessionURL);
Uri sessionUri = Smartlook.Analytics.DashboardSessionUri();
AnotherTool.setProperty("SmartlookURL", sessionUri);

Technical details are provided in the Utility methods section of the API Reference.

Current Visitor URL

Visitor URL points to a Dashboard page that wraps the visitor info (their sessions). This URL may change during the application run as a result of user identification via Smartlook SDK.

val dashboardVisitorURL = Smartlook.getDashboardVisitorUrl()
AnotherTool.setUserProperty("SmartlookURL", dashboardVisitorUrl)
String dashboardVisitorURL = Smartlook.getDashboardVisitorUrl();
AnotherTool.setUserProperty("SmartlookURL", dashboardVisitorUrl);
let currentSmartlookVisitorURL = Smartlook.getDashboardVisitorURL()
AnotherTool.setUserProperty("SmartlookURL", currentSmartlookVisitorURL)
NSURL *currentSmartlookVisitorURL = [Smartlook getDashboardVisitorURL];
[AnotherTool setUserParamValue:currentSmartlookVisitorURL forKey:@"SmartlookURL"];
String dashboardVisitorURL = Smartlook.getDashboardVisitorUrl();
AnotherTool.setProperty("SmartlookURL", dashboardVisitorURL)
var dashboardVisitorURL =  await Smartlook.getDashboardVisitorUrl();
AnotherTool.setProperty("SmartlookURL", dashboardVisitorURL);
smartlook.getDashboardVisitorUrl().then((dashboardVisitorUrl) => {
  AnotherTool.setUserProperty("SmartlookURL", dashboardVisitorUrl)
});
Smartlook.getDashboardVisitorUrl(
  function(dashboardVisitorUrl) {
    AnotherTool.setUserProperty("SmartlookURL", dashboardVisitorUrl);
  }
)
string dashboardVisitorURL = SmartlookUnity.Smartlook.GetDashboardVisitorUrl();
AnotherTool.setUserProperty("SmartlookURL", dashboardVisitorUrl);
Uri visitorUri = Smartlook.Analytics.DashboardVisitorUri;
AnotherTool.setProperty("SmartlookURL", visitorUri);

Technical details are provided in the Utility methods section of the API Reference.