Introduction to JS Tracking Library
Data can be sent to Sherlock via a JavaScript tracking library.
The library has no dependencies. To include it in your site, simply add the following snippet:
<script type="text/javascript">
(function() {
var sherlock = window.sherlock = window.sherlock || {q: []};
var calls = ['load', 'identify', 'group', 'track'];
for (var i = 0; i < calls.length; i++) (function(call) {
sherlock[call] = function() { sherlock.q.push([call, arguments]); };
})(calls[i]);
var s = document.createElement('script'); s.src = 'https://cdn.sherlockscore.com/tracker.js'; s.async = true;
var f = document.getElementsByTagName('script')[0]; f.parentNode.insertBefore(s, f);
})();
</script>
To use the library, you must first set your API key. For example, if your API key was f7d504aa5a384372ba30aa4e7db8d162
, you would use the following JavaScript call:
sherlock.load("f7d504aa5a384372ba30aa4e7db8d162");
You should set up this Sherlock library in your top-level template; the same place you add the snippet:
<script type="text/javascript">
(function() {
var sherlock = window.sherlock = window.sherlock || {q: []};
var calls = ['load', 'identify', 'group', 'track'];
for (var i = 0; i < calls.length; i++) (function(call) {
sherlock[call] = function() { sherlock.q.push([call, arguments]); };
})(calls[i]);
var s = document.createElement('script'); s.src = 'https://cdn.sherlockscore.com/tracker.js'; s.async = true;
var f = document.getElementsByTagName('script')[0]; f.parentNode.insertBefore(s, f);
})();
</script>
<script type="text/javascript">
sherlock.load(apiKey);
</script>
Updated about 4 years ago