When you add a custom form to your setup, you can choose to have the results simply emailed to an address of your choosing, or you can have the results forwarded to a webhook.

To do this, when managing your custom form select "Webhook" from the "Deliver to" dropdown, and enter the URL you would like the results posted to in the "Webhook URL" field.

We recommend first testing the webhook using something like https://requestb.in/

The output

The fields from your form will be sent in two objects in the result, the first is a data object which will contain the field id as the key and the input as the value.
The second is a raw object, this will use the field name as the ID, and the input as the value.

If the user is logged in, there will be a user object in the post.

And finally, if you have enabled the debug info option, you'll also be sent information on the users machine to help in debugging and diagnosing issues as your users submit them.

An example of the data that will be sent can be seen below:

{
  "raw": {
    "field_2": "johndoe",
    "field_6": "Sydney (AEDT UTC+11)",
    "field_4": "Hi, I need some help with this thing"
  },
  "data": {
    "Skype address": "johndoe",
    "Your timezone": "Sydney (AEDT UTC+11)",
    "Any extra information?": "Hi, I need some help with this thing"  
  },
  "user":{  
    "firstname":"John",
    "lastname":"Doe",
    "email":"john@example.com",
    "traits":{  
       "Plan":"pro",
       "articles":42
    },
    "groups":[  
       "power-user"
    ],
    "authenticated":true
  },
  "traits":{  
    "Plan":"pro",
    "articles":42
  },
  "debug":{  
    "url":"https:\/\/app.elev.io\/dashboard",
    "os":"Mac OS 10.13.4",
    "browser":"Chrome 67.0.3396.99",
    "mobile":"false",
    "cookies":"true",
    "screenSize":"2560 x 1440"
  }
}

It's intentional that the traits are doubled up, this is for backwards compatibility for older users of the webhook.