A webhook makes Brella send a request to a URL you choose each time a registrant or a sponsor in your event is created, updated or deleted. Use it to pass changes to Zapier, a CRM or your own system as they happen.
Before you start
You need to be an organization admin of the organization that owns the event.
Brella turns on webhooks for each event. If Webhooks is missing under Integrations in the event sidebar, ask your Brella contact to turn it on.
You need a URL that starts with
https://and is reachable from the internet, for example a URL from Webhooks by Zapier.
Where to find it
Integrations > Webhooks in the admin panel: create and manage webhooks.
Integrations > Webhooks logs: see each request Brella sent.
How webhooks work
Each webhook watches one resource and one action in one event. To watch several combinations, create one webhook for each.
After the change is saved, Brella sends a POST request with a JSON body to the Webhook URL.
Updated is sent only when a value in the record changed.
A request succeeds when your URL answers with a 2xx status code. Otherwise Brella retries.
Resources and actions
Registrants: Created when a registrant is added: an invite you add or import, or someone who joins with the event join code or a registration link. Updated when a registrant's details change, including when an invited person joins. Deleted when a registrant is removed.
Sponsor: Created, Updated or Deleted when a sponsor is added, changed or removed.
For invites and attendees, choose Registrants. The status field in the data tells them apart: invited or joined.
Create a webhook
Open Integrations > Webhooks.
Select Create new. If the event has no webhooks yet, you can also select Create new webhook.
Enter a Name of up to 50 characters.
Enter the Webhook URL.
Optional: turn on Expand response data to add related records to each request. See "What Brella sends".
Under Triggers, choose a resource in Select resource and an action in Select action.
Leave Activate webhook on.
Select Create webhook.
Brella checks the URL when you save. It refuses a URL that doesn't start with https://, isn't a valid web address, or doesn't lead to a public internet address.
Change, pause or delete a webhook
To change a webhook, select it in the list, edit the fields and select Save changes.
To pause or resume a webhook, use the switch next to its name.
To delete a webhook, select it, select Delete, then Delete again to confirm. Its log entries are deleted with it.
What Brella sends
Brella sends JSON in JSON:API format. Field names use dashes, for example external-email. Each request has a meta block that describes the webhook under data.attributes, including its name, trigger-item, trigger-action and request-url.
For Created and Updated, data holds the record:
Registrants: type
invite, the registrant ID,external-first-name,external-last-name,external-email,external-company,external-title,external-id,fill-token(the personal join code),emails-reminders-countandstatus. Relationships include the IDs of the ticket type list and the seats.Sponsor:
name,subtitle,content,industry,website,twitter,linkedin,facebook,instagram,logo-url,cover-image-url,order,positionandactive. A relationship gives the ID of the sponsor's category.
For Deleted, data holds only the record type and ID, for example type event-registrant or sponsors-sponsor.
With Expand response data, Brella adds the related records under included:
Registrants: the ticket type list and seats. Brella does not add them for registrants who have joined.
Sponsor: the sponsor category.
Check deliveries in Webhooks logs
Open Integrations > Webhooks logs, or select View logs on a webhook.
Choose the webhook in the menu at the top of the page.
Under All instances, select a request. The newest is first.
Read the JSON under Payload preview. Select the copy button to copy it.
Each request shows one of these statuses:
Success: your URL answered with a 2xx status code.
Errored: your URL answered with another status code. If a later attempt succeeds, the status changes to Success.
Pending: Brella hasn't received an answer from your URL.
The log shows what Brella sent, not what your URL answered. Times are in the event's time zone.
Test a webhook
The admin panel has no test button. Make a real change instead.
Create the webhook with a URL you can watch, for example a Webhooks by Zapier URL.
Make a change that matches the resource and action. For Registrants and Updated, open a test registrant in People > Registrants, change the Title on Registration details and select Save Changes.
Open Integrations > Webhooks logs and check the status and the payload.
Give your developer a receiving-system brief
Tell your developer the event, resource and action to watch. For example: “When a registrant joins, update their record in our CRM.”
Use Registrants > Updated for that example and have the developer check for status: joined. Share a redacted sample from Webhooks logs so they can map the fields.
The receiving system should handle repeated deliveries without adding duplicate CRM records. Use the Brella record ID to identify the same record.
Security
Anyone who knows the webhook URL can send requests to it. Use a long URL that is hard to guess, and share it like a password.
Requests carry the user agent
Mozilla/5.0 (compatible; BrellaWebhooks; +https://brella.io).Brella sends requests only to public
https://addresses. If the URL's address points to a private or internal network when Brella sends, Brella turns the webhook off and sends nothing.Registrant data contains names, email addresses and personal join codes. Send it only to systems you trust.
What attendees see
Nothing. Webhooks run in the background and don't change the app.
Limits
Webhooks belong to one event. Other events in the organization need their own.
Webhooks created in the admin panel use POST.
The admin panel can't create webhooks for speakers. Developers can create speaker webhooks, and webhooks that use GET, through the Integration API. A GET request carries no data.
After retries are exhausted, Brella does not resend the failed request.
When you duplicate an event with Webhooks selected, the copies are turned off. Check their URLs and turn them on in the new event.
Troubleshooting
Nothing arrives
The webhook is paused, or the change doesn't match its resource and action. Check the switch next to its name and the request list in Webhooks logs. For invites and attendees, use Registrants.
The webhook turned itself off
Its URL pointed to a private network address when Brella tried to send. Fix the URL and turn the webhook on.
Requests show Errored
Your URL didn't answer with a 2xx status code. Fix the receiving system. Brella doesn't resend the failed requests.
The webhook can't be saved
The URL doesn't start with https://, isn't a valid web address, or doesn't lead to a public internet address. Copy the URL again from the receiving system.
Webhooks is missing from the event sidebar
Webhooks are off for the event. Ask your Brella contact to turn them on.
