CallRail Webhook

Hi! Trying to implement the callrail webhook with the javascript tracker. I was wondering if this was possible. I seem to be getting an access denied error from amazon when structuring the post request show in the setup guide here . Thanks for your time!

Hi @robertminer1 - can you clarify what you mean by implementing the CallRail webhook with the JavaScript Tracker?

Snowplow webhooks are supported independently of any single tracking SDK. Can you let us know what you’re trying to implement?

Hey @alex. Sorry, I setup the CloudFront collector, so my collector URL looks something like the standard cloudfront collector url:

d32gflnp20oa6t.cloudfront.net

I setup the webhook as described in the instructions:

http://d32gflnp20oa6t.cloudfront.net/i/com.callrail/v1?aid=2

I think I am missing the mark completely on how to set this up. Sorry, I don’t have a ton of experience using snowplow, just trying to figure this out. Thank you!

Hi @robertminer. That looks pretty close but I believe you need to remove the /i so you’re calling the endpoint directly so http://d32gflnp20oa6t.cloudfront.net/i/com.callrail/v1?aid=2 becomes http://d32gflnp20oa6t.cloudfront.net/com.callrail/v1?aid=2.

The first URL should return a status code of 404 whilst the second should return a 200.

Hi @robertminer1 - to use the Webhook you’ll need to setup either the Clojure or Scala RT collectors. That’s because the webhook sends data using POST requests, and these are not supported by the Cloudfront collector.

Ahhh @yali makes sense now. Can I use both collectors and the events will process the same when running EMR ETL?

Sadly not - you have to specify in your EmrEtlRunner config what type of log file you’ll be processing (e.g. cloudfront vs clj-tomcat, so if you use two collectors (which is possible) you’d run two separate EmrEtlRunner processes feeding the same Redshift.