API Reference - Webhooks
Link: https://support.brilliantdirectories.com/support/solutions/articles/12000108132
← Back to API Reference | Getting Started
Webhooks
Webhooks allow your directory site to send automated HTTP notifications to external services (EG Zapier, Pabbly, or a custom endpoint) when specific events occur. Each webhook record defines a trigger type, the destination URL, and metadata about the event. Built-in webhooks handle standard events like new member signups, lead captures, and review submissions; custom webhooks can be tied to specific forms.
bd_webhooks — DB table: bd_webhooksThe Webhook Object
| Field | Type | Description |
|---|---|---|
webhook_id | integer | Unique webhook ID (primary key, read-only) |
webhook_type | string | System name identifying which event triggers this webhook (EG free_members, leads_actions, reviews); max 50 characters required on create |
webhook_status | integer | Whether this webhook is active; 1 = enabled, 0 = disabled required on create |
webhook_link | string | The destination URL that receives the webhook POST request (EG a Zapier or Pabbly hook URL); max 500 characters required on create |
is_custom | integer | Whether this is a custom webhook (1) or a built-in platform webhook (0) |
webhook_category | string | Category grouping for this webhook (EG members, leads); max 75 characters |
webhook_title | string | Human-readable display title for this webhook; max 255 characters |
webhook_description | text | Detailed description of what this webhook does and what data it sends |
webhook_form | string | System name of the form attached to this webhook (for form-triggered custom webhooks); max 75 characters |
updated_by | integer | Foreign key referencing the administrator who last created or updated this webhook required on create |
created_at | datetime | Datetime when this webhook record was created |
updated_at | datetime | Datetime when this webhook record was last updated |
List Webhooks
Example Request
curl -X GET "https://www.yourdomain.com/api/v2/bd_webhooks/get?limit=25" \ -H "X-Api-Key: your-api-key-here"
Example Response
{
"status": "success",
"message": [
{
"webhook_id": "1",
"webhook_type": "free_members",
"webhook_status": "1",
"webhook_link": "https://hooks.zapier.com/hooks/catch/12345/abcdef/",
"is_custom": "0",
"webhook_category": "members",
"webhook_title": "New Free Member",
"webhook_description": "Fires when a new free member registers",
"webhook_form": "",
"updated_by": "27",
"created_at": "2022-07-05 05:53:48",
"updated_at": "2025-08-24 17:05:53"
}
],
"total": "11",
"current_page": 1,
"total_pages": 1
}Retrieve a Webhook
Example Request
curl -X GET "https://www.yourdomain.com/api/v2/bd_webhooks/get/1" \ -H "X-Api-Key: your-api-key-here"
Example Response
{
"status": "success",
"message": [
{
"webhook_id": "1",
"webhook_type": "free_members",
"webhook_status": "1",
"webhook_link": "https://hooks.zapier.com/hooks/catch/12345/abcdef/",
"is_custom": "0",
"webhook_category": "members",
"webhook_title": "New Free Member",
"webhook_description": "Fires when a new free member registers",
"webhook_form": "",
"updated_by": "27",
"created_at": "2022-07-05 05:53:48",
"updated_at": "2025-08-24 17:05:53"
}
],
"total": "1",
"current_page": 1,
"total_pages": 1
}Create a Webhook
Example Request
curl -X POST "https://www.yourdomain.com/api/v2/bd_webhooks/create" \ -H "X-Api-Key: your-api-key-here" \ -d "webhook_type=new_review" \ -d "webhook_status=1" \ -d "webhook_link=https://hooks.zapier.com/hooks/catch/12345/abcdef/" \ -d "is_custom=1" \ -d "webhook_category=reviews" \ -d "webhook_title=New+Review+Notification" \ -d "webhook_description=Fires+when+a+member+receives+a+new+review" \ -d "updated_by=27"
Example Response
{
"status": "success",
"message": {
"webhook_id": "15",
"webhook_type": "new_review",
"webhook_status": "1",
"webhook_link": "https://hooks.zapier.com/hooks/catch/12345/abcdef/",
"is_custom": "1",
"webhook_category": "reviews",
"webhook_title": "New Review Notification",
"webhook_description": "Fires when a member receives a new review",
"webhook_form": null,
"updated_by": "27",
"created_at": null,
"updated_at": null
}
}Update a Webhook
Example Request
curl -X PUT "https://www.yourdomain.com/api/v2/bd_webhooks/update" \ -H "X-Api-Key: your-api-key-here" \ -d "webhook_id=15" \ -d "webhook_status=0" \ -d "webhook_link=https://hooks.zapier.com/hooks/catch/99999/xyz/"
Example Response
{
"status": "success",
"message": {
"webhook_id": "15",
"webhook_type": "new_review",
"webhook_status": "0",
"webhook_link": "https://hooks.zapier.com/hooks/catch/99999/xyz/",
"is_custom": "1",
"webhook_category": "reviews",
"webhook_title": "New Review Notification",
"webhook_description": "Fires when a member receives a new review",
"webhook_form": "",
"updated_by": "27",
"created_at": "0000-00-00 00:00:00",
"updated_at": "0000-00-00 00:00:00"
}
}Delete a Webhook
Example Request
curl -X DELETE "https://www.yourdomain.com/api/v2/bd_webhooks/delete" \ -H "X-Api-Key: your-api-key-here" \ -d "webhook_id=15"
Example Response
{
"status": "success",
"message": "bd_webhooks record was deleted"
}