Creates a new AppWebhook instance
Initializes a webhook configuration that enables external systems to receive notifications about application events. The webhook manages URL, event types, and security configuration.
Configuration data including: - app: Parent application ID - url: Webhook endpoint URL where notifications will be sent - events: Array of event types to subscribe to - secret: Optional secret key for webhook authentication - active: Whether the webhook is currently active - external_id: Optional external system identifier - extensors: Optional custom metadata object
Optionaluri: stringOptional custom URI path for the webhook endpoint
Basic webhook:
const webhook = new AppWebhook({
app: 'app-123',
url: 'https://api.example.com/webhook',
events: ['REQUEST']
});
Advanced configuration:
const webhook = new AppWebhook({
app: 'app-123',
url: 'https://api.example.com/webhooks',
events: ['REQUEST', 'RESPONSE'],
secret: 'webhook-secret',
active: true,
external_id: 'ext-123',
extensors: {
platform: 'slack',
channel: 'notifications'
}
}, '/integrations/webhook');
Check if the entity is active
This method checks the active status of the entity. Most entities in the system can be active or inactive, which affects their availability and usability in the platform.
True if the entity is active, false otherwise
Convert model instance to interface data
This method serializes the model instance to a plain object that matches the interface type. This is useful for:
The model data as a plain object matching the interface type
Convert model instance to API payload
This method creates a payload suitable for API requests by:
A clean object suitable for API requests
Update model data with new values
This method updates the model's data and instance properties with new values. It performs a shallow merge of the updates with existing data, allowing for partial updates of the model's properties.
Object containing properties to update
const user = new User({
email: 'old@example.com',
firstName: 'John'
});
// Update multiple properties
user.update({
email: 'new@example.com',
lastName: 'Doe'
});
// Save changes to API
await user.save();
This method only updates the local model instance. To persist changes to the API, call save after updating.
Save the model instance to the API
This method persists the current state of the model to the API using a PUT request. It requires the model to have an ID (existing instance). For new instances, use the collection's create method instead.
The method:
Promise resolving to the updated model data
Delete the model instance from the API
This method permanently deletes the model instance from the API and clears the local data. This operation cannot be undone.
The method:
Promise that resolves when deletion is successful
AppWebhook class for managing application webhook configurations
This class represents a webhook configuration that enables external systems to receive notifications about application events. AppWebhooks handle webhook URLs, event types, and integration configuration for receiving notifications from the Mosaia platform.
Features:
Remarks
AppWebhooks are particularly useful for:
Example
Basic webhook setup:
Example
Advanced webhook configuration: