How to setup Driftrock Webhook captures

Send lead or conversion events from any source using the Driftrock Webhook Capture

You can setup one or more Webhook Captures to send leads (or conversion events) to Driftrock.

For example, you might create a Webhook Capture for each source or application you want to connect to Driftrock.

Creating a Webhook Capture

You'll first need a Capture to begin sending API calls to Driftrock.

If you are a 3rd party vendor, you might have already been provided one or more Driftrock Capture IDs so you can skip this step.

1. Create or login to your Driftrock account.

2. Browse the Lead Capture Library and choose Driftrock Webhook Capture.

3. Give your Capture a name - remember, you can create as many Webhook Captures as you like (perhaps for each source or app you connect to).

4. It's time to make your first call to our API and send a test lead to our testing endpoint.

Sending events to the Driftrock Events API

You can make POST requests to this url:


Content-Type: application/json
Accept: application/json
Authorization: Bearer xxxx-xxxx-xxxx-xxxx

where xxxx-xxxx-xxxx-xxxx is an api key that you can obtain by going to Settings -> Security. You can use a previously created key or create a new one.

The body must be JSON formatted and containing the required or recommended fields:

  • event_type [string]  (required) : this should be set to lead, conversion or action.
  • event_name [string]  (required) : tell us what label you would like to assign to this event (eg: User signed up, Page view, Purchase )
  • source_id [string] (required) : this is needed to link the event to the Capture that you created. You can find this on the 'Connect' step (step 2) of your capture
  • fields [json]  (required) : this is a json field, where you send us the attributes of this event (eg: "fields": {"email": "", "question_1": "test answer"} )
  • event_id [string] (optional) : this can be any ID that is used in your system to uniquely identify this event. Note that if you send two events with the same event_id, they will be linked to the same person in our system.
  • person_id [string] (optional) : this can be any ID that is used in your system to uniquely identify a person. Note that if you send two events with the same person_id, they will be linked to the same person in our system.
  • ga_client_id [string] (optional) : this is the Google Analytics ID that you can provide to allow us to extract marketing info.
  • created_at [string] (optional) : if you would like to provide a more precise timestamp for when the event occurred.  If not provided it will be set to the moment Driftrock receives the event, this is a subtle distinction but may be important to your business case.  This should be passed in ISO8601 format, (eg: 2019-12-02T10:00:00.000Z)

Here's an example of what a simple body would look like

 "event_type": "lead",
 "event_name": "User signed up",
 "source_id": "034feb07-0cd7-4d44-bbdb-ae18a8a4132f",
 "fields": {
   "email": "",
   "first_name": "First name",
   "last_name": "Last name",

Send your first test lead. If you've been successful, the loading symbol on the Connect step of your webhook capture will be replaced by a success message and you'll be able to proceed to the next step.

If your test has been successful, you should see the following response:

  • status: 200
  • payload: {"data": "ok"}

If your test failed, you will see the following response:

  • status: 400
  • payload: {"error": "..."}

5. Once you've sent your test lead, proceed to the Mapping step and map your incoming fields to your Driftrock standard or custom fields (if you need to create a new one).

Note: If you've opted to use Driftrock's Google Analytics Website Tracking Script, your Marketing Tracking fields should be auto-filled with GA parameters.


6. Proceed to the Destinations step to map your data to any other systems, or simply complete your capture setup if you're happy with the leads residing in Driftrock only.

7. You're all set!