Prerequisites
Before continuing, you should have already completed the following for this connector:Configure the Connector
Connector Profile
Connector Profile
Link an Account
Link Account
Link Account
Subscribe via the StackOne dashboard
This connector uses Programmatic Webhooks. Liferay delivers events through webhook-type Object Actions on its User, Account, and Organization system objects. When you enable webhook events for a connected Liferay account, StackOne automatically registers one object action per enabled event via Liferay’s Object Admin REST API, each pointing at your StackOne callback URL — only the events you enable are registered in Liferay.
Enable the Object Admin REST scope
In Liferay, open Control Panel > Security > OAuth2 Administration, edit the StackOne application, and on the Scopes tab enable Liferay.Object.Admin.REST.everything alongside the other connector scopes. Reconnect the account afterwards so the new scope is granted.
- The connected user must be allowed to manage Objects — object action registration is an administrative operation.
Select event subscriptions in the dashboard
In the StackOne dashboard, open the Liferay connector profile and enable the webhook events you want delivered downstream. See the Available Webhook Events section below for the full list.
Registration on subscribe
When webhook events are enabled (or the event selection changes), StackOne registers the object actions on your behalf using the connected account’s credentials. In Liferay they appear on each system object’s Actions tab (Control Panel > Objects) with names starting with stackone (for example stackoneUserCreated).
- Liferay requires action names to be unique per object — if a previous registration was not cleaned up, remove any stale
stackone*actions from the Actions tab before subscribing again.
Verify delivery
Trigger a matching change in Liferay (for example, create a test user) and confirm the event reaches your downstream consumer.
- Liferay posts each event as a JSON payload; StackOne responds with
200 OKautomatically. - Failed deliveries are not retried — Liferay marks the object action’s last execution as failed (visible on the Actions tab).
Available Webhook Events
The following Liferay events can be enabled. Each enabled event is registered as its own webhook object action in Liferay; disabled events are not registered at all.
User events
Events on the User system object.
- User Created (
L_USER:onAfterAdd) — Fired when a user account is added - User Updated (
L_USER:onAfterUpdate) — Fired when a user account is modified (including activity-driven changes such as lastLoginDate on sign-in) - User Deleted (
L_USER:onAfterDelete) — Fired when a user account is removed
Account events
Events on the Account (AccountEntry) system object.
- Account Created (
L_ACCOUNT:onAfterAdd) — Fired when an account is added - Account Updated (
L_ACCOUNT:onAfterUpdate) — Fired when an account is modified - Account Deleted (
L_ACCOUNT:onAfterDelete) — Fired when an account is removed
Organization events
Events on the Organization system object.
- Organization Created (
L_ORGANIZATION:onAfterAdd) — Fired when an organization is added - Organization Updated (
L_ORGANIZATION:onAfterUpdate) — Fired when an organization is modified - Organization Deleted (
L_ORGANIZATION:onAfterDelete) — Fired when an organization is removed
Delivery format
Details of how Liferay delivers events to StackOne.
JSON payloads
Liferay delivers each event as an HTTP POST with a JSON body containing the trigger in objectActionTriggerKey (onAfterAdd, onAfterUpdate, or onAfterDelete), the entity’s raw attributes under model<Entity> (for example modelUser), the headless REST representation under modelDTO<Type> (for example modelDTOAccount), the pre-change state under original<Entity>/originalDTO<Type> for updates and deletes, and the acting user in userId/userName.