The Event Action Manager lets you subscribe to events that happen within the Propeller platform and trigger actions with the event's payload. You configure event actions through the Propeller backoffice.
Action types
Each event action has a trigger (the event) and an action type (what happens when the event fires):
| Action type | Description |
|---|
SEND_EMAIL | Renders a template using the event data and sends it as an email |
POST_TO_WEBHOOK | Sends the event payload as a JSON POST request to a webhook endpoint |
You can create multiple actions for the same event trigger.
Event triggers
Company events
| Trigger | Description |
|---|
COMPANY_CREATED | A new company is created |
COMPANY_UPDATED | An existing company is modified |
COMPANY_DELETED | A company is removed |
COMPANY_BULK | Batch operation on companies |
| Trigger | Description |
|---|
CONTACT_CREATED | A new contact is created |
CONTACT_UPDATED | An existing contact is modified |
CONTACT_DELETED | A contact is removed |
CONTACT_BULK | Batch operation on contacts |
CONTACT_SEND_WELCOME_EMAIL | Welcome email triggered for a new contact |
Customer events
| Trigger | Description |
|---|
CUSTOMER_CREATED | A new customer is created |
CUSTOMER_UPDATED | An existing customer is modified |
CUSTOMER_DELETED | A customer is removed |
CUSTOMER_BULK | Batch operation on customers |
CUSTOMER_SEND_WELCOME_EMAIL | Welcome email triggered for a new customer |
Order events
| Trigger | Description |
|---|
ORDER_CREATED | A new order or quote is created |
ORDER_UPDATED | An existing order or quote is modified |
ORDER_DELETED | An order or quote is removed |
ORDER_BULK | Batch operation on orders |
ORDER_SEND_CONFIRMATION | Order confirmation triggered (checkout or Sales Portal) |
Quote events
| Trigger | Description |
|---|
QUOTE_SEND | A quote proposal is sent |
QUOTE_SEND_REQUEST | A quote request confirmation is sent |
QUOTE_SEND_VALIDATION | A quote is routed for validation |
Cart events
| Trigger | Description |
|---|
CART_SEND_REQUEST_PURCHASE_AUTHORIZATION | A purchase authorization request is dispatched |
Authentication events
| Trigger | Description |
|---|
SEND_INIT_PASSWORD | Initial password setup email triggered |
SEND_RESET_PASSWORD | Password recovery email triggered |
Other
| Trigger | Description |
|---|
CUSTOM_EVENT | User-defined event with a custom payload |
Payload types
Webhook endpoints receive a JSON POST request containing the event payload. The payload structure depends on the event domain:
| Domain | Events | Payload includes |
|---|
| Order | ORDER_*, QUOTE_* | Order metadata, status, financial data (payment, postage, totals), line items with pricing, shipping/billing addresses, user/account/channel IDs |
| Contact | CONTACT_* | Contact information, company associations, financial details (IBAN/BIC), communication preferences, channel assignment |
| Customer | CUSTOMER_* | Personal and contact data, authentication status, language preferences, lifecycle dates, organizational relationships |
| Company | COMPANY_* | Company data |
| Cart | CART_* | Cart data |
| Password | SEND_INIT_PASSWORD, SEND_RESET_PASSWORD | Email address, reset link URL, language preference |
| Custom | CUSTOM_EVENT | User-defined payload |
Webhook security
Two security methods are available for verifying webhook requests. Both are configured through the API.
HMAC signature verification
Propeller generates an HMAC-SHA256 signature using a secret salt that you configure. The signature is included in the X-Propeller-Signature header with the format:
X-Propeller-Signature: sha256=<signature>
Your endpoint should compute the HMAC-SHA256 of the raw request body using the same secret and compare it against the header value to verify the request is authentic.
Basic authentication
Propeller sends a username and password with each webhook request using the Authorization: Basic header:
Authorization: Basic <base64-encoded credentials>
The password is stored securely and is not displayed after saving.