How Brazen outgoing webhooks work?

When a webhook event occurs in your Brazen account, Brazen will make an HTTP POST request to the webhook URL you set on your account. Brazen calls your webhook when any of the following webhook events occur:

  • registration.submitted
  • registration.updated

The body of the request is a JSON object that contains the following properties:

secretThe webhook secret value you entered on the account that is used to prove the request came from Brazen. While this is an optional account setting, it is highly recommended that you provide a secret to secure your webhook.
eventThe name of the event that occurred. See above for a complete list of events that are communicated by Brazen to your webhook.
timestampThe time at which the event occurred specified in a format consistent with RFC-3339.
payloadA JSON object that contains information about the specific event. The structure of this object is different for each event.

Here's what this looks like as an HTTP POST request:

POST /path/to/your/hook HTTP/1.1
Content-Type: application/json
Content-Length: ...

  "secret" : "v2q910nklaldr73w2",
  "event" : "registration.submitted",
  "timestamp" : "2015-02-02T18:02:33Z",
  "payload" : { ... }

Your webhook must respond with a HTTP success status code (2xx) such as 200 OK or 202 Accepted to signal that the call was successful. When Brazen receives a redirection (3xx), client error (4xx), or server error (5xx) status code, Brazen will record the call did not succeed, but will not retry the call.

HTTP/1.1 202 Accepted
Date: 29 Mar 2016 04:36:25 GMT
Content-Type: text/plain; charset=UTF-8
Cache-Control: no-cache
Pragma: no-cache
Content-Length: 0

NOTE: In addition to HTTP POST, your endpoint must also support HTTP HEAD requests, which are used to validate your endpoint when it's saved or updated in Control Center.