Audience & Connect

Connect your marketing systems to TwentyThree using Webhooks

TwentyThree lets you connect to all the major marketing services, including Hubspot, Marketo, Eloqua, Pardot, MailChimp. Google Analytics and Adobe Analytics. If you favourite marketing tool isn't supported yet, it's possible to feed data through with Segment or using webhooks.

Webhooks are simply web request carrying data between services, and using this feature you can:

Setting up a webhook

Webhooks are configured under Connect:

Connect webhooks

TwentyThree video players are hosted on HTTPS whenever possible, so make sure this URL is available on HTTPS -- or even better that you are using protocol-less URLs.

Getting collector information with a push webhook

With a push webhook, all data submitted in a collector will be forwarded to that webhook using a GET request.

For example:

https://www.mydomain.com/webhooks/receive
    ?email=steffen@twentythree.net
    &firstname=Steffen
    &lastname=Christensen
    &title=CTO
    &phone=+45123456789
    &source=corepeople
    &id=4701926
    &domain=rangu.23demo.com
    &object=4701926
    &viewer_uuid=0677864c-5397-0573-8b9f-0fa1f8fb3f5d
    &videoType=ondemand
    &videoTitle=Patagonia Women's Nano Puff® Jacket
    &videoDuration=82
    &videoStreamType=ondemand
    &videoLink=http://rangu.23demo.com/patagonia-womens-nano-puff-jacket
    &videoCategory=Imported from 23

Sending information to TwentyThree through a pull webhook

With a pull webhook, TwentyThree will request visitor data from any URL. You can forward any information you need, but we suggest to at least include email and name whenever possible.

Since data is exchange across domains, requests can be run using the JSON-P pattern.

callback({
  "email":"steffen@tchr.dk",
  "name":"Steffen Christensen",
  "company":"TwentyThree",
  "companySite":"https://www.twentythree.net",
  "title":"CTO & Co-founder",
  "avatar":"https://gravatar.com/avatar/8a6fa806b14f2a28b4241b7c6803e97c?s=200",
  "employeesRange":"30-50"
});

Alternatively, the connect can use raw JSON provided that the appropriate CORS headers are returns from your servers:

{
  "email":"steffen@tchr.dk",
  "name":"Steffen Christensen",
  "company":"TwentyThree",
  "companySite":"https://www.twentythree.net",
  "title":"CTO & Co-founder",
  "avatar":"https://gravatar.com/avatar/8a6fa806b14f2a28b4241b7c6803e97c?s=200",
  "employeesRange":"30-50"
};

For performance reason, data will be pulled a maximum of once per hour for every user, but this behaviour can be controlled when configuring the connection.

My data isn't coming through?

The most common cause of data syncing problems with webhooks is SSL/HTTPS. Most TwentyThree players are hosted on HTTPS, which means that webhooks starting with http://... simply won't work.

Also, browsers won't allow cookie transfer to HTTPS address from within a HTTP page. For that reason using protocol-less URLs (i.e. //my.domain.com/webhook) whenever possible is recommended.

Can't find what your are looking for?