Skip to main content

Data events

Data event subscriptions​

For every data event you want Actito to notify your system for, you have to create a webhook subscription. Every subscription is managed independently of the data structure it listens events from (update/activation/deletion).

A webhook can be parameterized to specify with precision which events it is interested in. For example, you can tell Actito to push events to your endpoint each time a new profile is created in your Customers profile table, but it is possible too to specify that you only want those new profiles for which the emailAddress attribute has been filled out.

For more information on Actito Profile or Custom tables structures, see corresponding PROFILE TABLE STRUCTURE APIs and CUSTOM TABLE STRUCTURE APIs references.



Available events​

Profiles​

  • CREATE

Be notified as soon as a new profile is created.

  • UPDATE

Be notified as soon as an existing profile is updated.

  • UPDATED_SUBSCRIPTION

Be notified as soon as a profile subscribes or unsubscribes.

  • UPDATED_SEGMENT

Be notified as soon as a profile enters/exits an exclusive segments or has one of its simple segments set, updated or removed.



Custom table records​

  • CREATE

Be notified as soon as a new record is created in a custom table.

  • UPDATE

Be notified as soon as an existing record is updated in a custom table.

Pushed data

Be aware that not all profile or custom table row attributes will be pushed in the webhook payload.
You will only receive the attributes that have been provided in the operation that triggered the event, plus the unique identifiers of the row.
The fields attribute you can specify in your webhook will just filter events to keep only those for which these attributes are involved.
For instance, if you subscribe to an UPDATE webhook on a PROFILE_TABLE with fields passed with emailAddress, you will receive a push when a profile updates at least his e-mail address, and the payload will contain all updated attributes.

Wallet passes​

  • ADD

Be notified as soon as a profile adds one of your passes to their wallet.

  • REMOVE

Be notified as soon as a profile removes one of your passes from their wallet.

A wallet pass webhook listens to a single pass template, whose technical id you will find in the Actito portal. For more information on wallet passes, see the Apple Wallet and Google Wallet integration pages.

Pushed data

Unlike profile and custom table events, a wallet pass payload is a fixed set of five attributes: it never carries pass or profile attributes, and it will not grow if the wallet pass table gains fields.
Only ADD and REMOVE raise an event: redeeming or voiding a pass pushes nothing.



Payload samples​

Profile tables​

Trigger event : All profile creation in Subscribers profile table for which the emailAddress attribute is provided

ONE_BY_ONE​

{
"id": "123456789",
"tableType": "PROFILE_TABLE",
"tableId": "123",
"fields": [
"emailAddress"
],
"eventType": "DATA",
"triggerType": null,
"operation": "CREATE",
"data": {
"profileId": 123456,
"emailAddress": "john.smith@actito.com"
}
}

BULK​

{
"id": "123456789",
"tableType": "PROFILE_TABLE",
"tableId": "123",
"fields": [
"emailAddress"
],
"eventType": "DATA",
"triggerType": null,
"operation": "CREATE",
"data": [
{
"profileId": 123456,
"emailAddress": "john.smith@actito.com"
},
{
"profileId": 123457,
"emailAddress": "jane.smith@actito.com"
}
]
}

Custom tables​

Trigger event : All record update in Sales custom table for which the status attribute is modified

ONE_BY_ONE​

{
"id": "987654321",
"tableType": "CUSTOM_TABLE",
"tableId": "cfbc559e-37c2-439f-a038-03db5a8d2d62",
"fields": [
"status"
],
"eventType": "DATA",
"triggerType": null,
"operation": "UPDATE",
"data": {
"salesId": "98765412",
"status": "SHIPPED"
}
}

BULK​

{
"id": "987654321",
"tableType": "CUSTOM_TABLE",
"tableId": "cfbc559e-37c2-439f-a038-03db5a8d2d62",
"fields": [
"status"
],
"eventType": "DATA",
"triggerType": null,
"operation": "CREATE",
"data": [
{
"salesId": "123654987",
"status": "SHIPPED"
},
{
"salesId": "123654988",
"status": "CANCELED"
}
]
}
Good to know

For Custom tables, so as events are triggered, make sure that events definition have been specified in the corresponding custom table structure definition.

Wallet passes​

Trigger event : A profile adds a pass of the Loyalty card pass template to their wallet

ONE_BY_ONE​

{
"eventDate": "2026-09-11T16:27:55+02:00",
"passTemplateId": "4785213",
"profileId": 1234,
"serial": "f608a90c-6125-4261-8ef3-ff5829ad0221",
"eventType": "ADD"
}

BULK​

{
"data": [
{
"eventDate": "2026-09-11T16:27:55+02:00",
"passTemplateId": "4785213",
"profileId": 1234,
"serial": "f608a90c-6125-4261-8ef3-ff5829ad0221",
"eventType": "ADD"
},
{
"eventDate": "2026-09-11T16:28:21+02:00",
"passTemplateId": "4785213",
"profileId": 5678,
"serial": "7b1e4d52-90a1-4f3c-8c22-1de0f4a7b3e9",
"eventType": "REMOVE"
}
]
}
Good to know

A wallet pass payload carries no table identifiers: the passTemplateId tells you which of your pass templates the event is about, and the serial identifies the pass itself.