Event List #
The supported webhook events are defined as the EVENTS class constant inside DMSI_AAPI_Webhook_Manager. There are 11 supported events:
| Event Name | Triggered By |
|---|---|
customer.created | dmsi_aapi_customer_created action |
customer.updated | dmsi_aapi_customer_updated action |
license.created | dmsi_aapi_license_created action |
license.expired | dmsi_aapi_license_expired action |
license.activated | dmsi_aapi_activation_created action |
license.deactivated | dmsi_aapi_activation_deactivated action |
subscription.created | dmsi_aapi_subscription_created action |
subscription.renewed | dmsi_aapi_subscription_renewed action |
subscription.canceled | dmsi_aapi_subscription_canceled action |
subscription.expired | dmsi_aapi_subscription_expired action |
download.completed | dmsi_aapi_download_served action |
Adding Custom Events #
There is no dmsi_aapi_supported_webhook_events WordPress filter. The events list is a PHP class constant — it cannot be modified via WordPress hooks at runtime.
To support custom events in a fork of the plugin:
- Add the event name string to the
EVENTSconstant inDMSI_AAPI_Webhook_Manager. - Fire the corresponding WordPress action hook in your business logic code.
- Add a listener for that action in the Webhook Dispatcher class that calls
dispatch()with the event name and payload.
This is an intentional design choice: the constant-based list ensures that webhook endpoint subscription forms always show the complete and accurate event list without requiring a filter to be applied.
How Webhook Dispatch Works #
The Dispatcher class listens to each dmsi_aapi_* action hook. When an action fires, the Dispatcher maps it to the corresponding event name, serializes the payload, and enqueues a delivery job for each active endpoint subscribed to that event.
