Skip to content

Feature: Introduce Organizer-Level Webhooks for Event Lifecycle Management ( #1047 )#1050

Merged
daveearley merged 12 commits intoHiEventsDev:developfrom
Sipioteo:feature/organization-level-webhook-#1047
Mar 2, 2026
Merged

Feature: Introduce Organizer-Level Webhooks for Event Lifecycle Management ( #1047 )#1050
daveearley merged 12 commits intoHiEventsDev:developfrom
Sipioteo:feature/organization-level-webhook-#1047

Conversation

@Sipioteo
Copy link
Contributor

@Sipioteo Sipioteo commented Feb 22, 2026

Summary

This PR introduces Organizer-level webhook support, allowing external systems to react to organizer-wide lifecycle events (such as event creation, updates, and archival).

Previously, webhooks were strictly per-event. While great for granular control, this made centralized integrations and multi-tenant scaling difficult for organizers managing numerous events. This update enhances flexibility by allowing webhooks to be associated with either specific events or at the top-level Organizer.

Problem / Motivation

In Hi.Events, an Organizer (Organization) is the top-level entity. When webhooks are only configured per-event, integrations become hard to scale and maintain. This PR allows defining webhooks at the Organizer level, enabling:

  1. Central Integrations: Org admins can listen to event.created to provision resources in external systems (CRM, ticketing, analytics) or start automations.
  2. Automatic Provisioning: External endpoints can receive organizer-level events and automatically call back Hi.Events to attach specific event-level hooks to newly created events.
  3. Governance & Safety: Independent webhook configurations, secrets, and permissions per organizer with strict boundaries and no cross-org leakage.

Technical Changes

  • Organizer Webhook Support: Added new actions (CreateOrganizerWebhookAction, EditOrganizerWebhookAction, DeleteOrganizerWebhookAction, etc.) and established proper relationships in the Organizer and Webhook models.
  • Webhook Handler Enhancements: Modified webhook handler DTOs and core logic to accept an optional organizerId. This securely separates event-level and organizer-level contexts.
  • Event Webhook Dispatching: Introduced DispatchEventWebhookJob to handle asynchronous webhook dispatching when events are created, updated, or archived (via CreateEventHandler, UpdateEventHandler, UpdateEventStatusHandler).

Checklist

  • I have read the contributing guidelines.
  • My code is of good quality and follows the coding standards of the project.
  • I have tested my changes, and they work as expected.

Resolutions

This PR resolves #1047

@Sipioteo Sipioteo marked this pull request as draft February 22, 2026 12:21
@Sipioteo Sipioteo marked this pull request as ready for review February 22, 2026 12:21
@Sipioteo Sipioteo changed the title Feature: Introduce Organizer-Level Webhooks for Event Lifecycle Management Feature: Introduce Organizer-Level Webhooks for Event Lifecycle Management ( #1047 ) Feb 22, 2026
@Sipioteo
Copy link
Contributor Author

Sipioteo commented Feb 22, 2026

Screenshot 2026-02-22 alle 13 23 34 Screenshot 2026-02-22 alle 13 34 55 Screenshot 2026-02-22 alle 13 33 34 Screenshot 2026-02-22 alle 13 34 12 Screenshot 2026-02-22 alle 13 57 40 Screenshot 2026-02-22 alle 13 58 12

@Sipioteo Sipioteo marked this pull request as draft February 22, 2026 12:36
Merge from a sub brench that i made by mistake
@Sipioteo Sipioteo force-pushed the feature/organization-level-webhook-#1047 branch from 5858b65 to 5d4489f Compare February 22, 2026 12:53
@Sipioteo Sipioteo closed this Feb 22, 2026
@Sipioteo Sipioteo reopened this Feb 22, 2026
@Sipioteo Sipioteo marked this pull request as ready for review February 22, 2026 12:58
@github-actions github-actions bot locked and limited conversation to collaborators Feb 22, 2026
@daveearley
Copy link
Contributor

Thanks for this! Awesome work. I'll test this shortly

@daveearley
Copy link
Contributor

Looks good! I pushed a few minor changes.

Thanks again.

@daveearley daveearley merged commit 2c1931d into HiEventsDev:develop Mar 2, 2026
4 checks passed
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants