Send Events Using Webhooks

Events can be sent to Able CDP from custom apps using its inbound webhook. This is convenient to attribute purchases and other conversions that aren't necessarily reflected in the payment system. For example, when the service usage accumulates before being invoiced once a payment threshold is reached or next billing cycle occurs.

Custom events should be sent to Able as POST requests to in JSON format with Content-Type: application/json header.

Request body example for a purchase:

"funnel_mark": "%%FUNNEL_MARK%%",
"event_type": "Purchase",
"resource": {
    { name: "File download", price: 5, qty: 2, sku: "DL1", category: "High-speed" }
"keys": { "email": "", client_id: "12354" }

%%FUNNEL_MARK%% is the unique funnel identifier. deal_items sku and category in deal_items are optional, they’re used for various groupings and reporting in GA. keys must have at least one value.

Complete request format reference, fields marked with asterisk are mandatory:

  • * funnel_mark - unique funnel identifier
  • * event_type - PageView, CompleteRegistration, Purchase. Supported event types depend on the integration and generally follow Facebook standard events names.
  • * resource - detailed event and customer information

Resource object reference:

  • referrer_url
  • utm_source
  • utm_medium
  • utm_campaign
  • utm_term
  • utm_content
  • deal_value - full value of the purchase or conversion
  • deal_currency - purchase or conversion currency, mandatory when deal_value is set
  • deal_items - array of items included in the deal, optional. Each item may include name, price, qty, sku and category
  • event_source - URL for web events, name of the integration for server-to-server and offline events
  • lead - Lead object. May have arbitrary fields, which are automatically mapped by outbound CRM integrations. Suggested values are: firstName, lastName, company, country, industry
  • description - event description, used as the purchased item name when deal_items are missing.
  • message - lead form message text
  • order_id - internal unique order identifier
  • custom_data - optional extra fields passed to integrations without processing
  • * keys - Visitor Keys. Uniquely identify customer, linking front-end events and back-end events together. At least one supported Visitor Key must be present.

Supported Visitor Keys:

  • phone - phone number, automatically normalized and only ten last meaningful digits used to match
  • email
  • gclid - Google Ads Click Id
  • ga_cookie - Google Analytics Client Id / meaningful part of _ga cookie
  • apladid - Apple Advertising Identifier
  • andadid - Android Advertising ID
  • client_id - application specific client (visitor) id

What else you can do

Send Leads

Send Leads to Google Analytics

The easiest way to attribute leads to Google Analytics user ids is to use Able Customer Data Platform, which does it automatically.

Send Leads to Scoro

Extend form Leads with additional attribution details such as UTM parameters, referrer URL, landing page URL and Google Analytics Click Id and send them to Scoro as Companies and Contacts.

Send Attributed Leads to Salesforce

Being able to keep track of online marketing sources inside Salesforce CRM is a common need. This guide outlines the steps needed to configure Salesforce to store additional fields and instructions to set up visitor tracking necessary for gathering UTM, Landing Page and Referrer URLs along with leads.

Send Purchase Conversions

Send Purchases to Google Analytics

Send attributed Purchases to Google Analytics from any source, such as a sending a closed won CRM deal, a successful Stripe Invoice payment or an e-commerce purchase that has been successfully paid.

Send Purchases to Google Ads

Sending conversions to Google Ads is an extremely common integration scenario. Its used to add conversion value to Google Ads’ reports, allowing to report on ROI, as well as to use performance-based targeting and optimization capabilities.

Send Purchases to Facebook Conversions API

Attributing conversions to Facebook Ads is a common task, however doing it with sufficient precision is hard. Sales might happen in CRM, or, when they happen online, customer might not come back to the website, so tracking with Facebook Pixel JS produces substandard results. Able solves this problem with its Facebook Conversions API integration.