Notifications in Workflows
Notifications are the messages that are sent to targets. The content of the notifications may include PII depending on the event type and action. For certain event types, notifications can be configured to include a verification URL (sometimes called a magic link) along with metadata, allowing the target to hook onto the event and send custom emails to end users.
Notification Payload Samples
Here are some examples of notification payloads for various events, including User Creation/Updates, Access Revocation, Login, Password Updates, and Registration.
Notification Samples for changes to the user record
User Created/Updated
{
"iss": "https://idp.example.com", // service provider publishing the SET
"iat": 1458496025, // issued at dateTime
"jti": "someuniqueeventidfb4e75b5411e4e19b6c0f", // unique id of this event
"aud": [
"https://receivingurl.example.com" // one or more audience identifiers
],
"events": {
"account/v1/userCreated": {
"sub": "f3b24e35-5f34-4fef-aa6b-5e1f5067e5d8", // the subject of the SET (user UUID)
"propertyId": "34345y3457y34", // property id
"clientId": "2345j346h5h6456", // our client id
"dataSourceInfo": {
"attributes": [
"familyName"
],
"captureApplicationId": "aaabbbccc111222333",
"captureClientId": "abcd12345",
"entityType": "user",
"globalSub": "{{URL}}",
"sub": "00000000-46bd-4d85-91ee-bdeadd446c1e"
}
}
}
}
Revoke Access
{
"iss": "https://idp.example.com", // service provider publishing the SET
"iat": 1458496025, // issued at dateTime
"jti": "someuniqueeventidfb4e75b5411e4e19b6c0f", // unique id of this event
"aud": [
"https://receivingurl.example.com" // one or more audience identifiers
],
"events": { // statements that describe a single logical event that has occurred
"account/v1/userRevokedPropertyAccess": {
"sub": "f3b24e35-5f34-4fef-aa6b-5e1f5067e5d8", // the subject of the SET (user UUID)
"dataSourceInfo": {
"captureApplicationId": "3vadba3vhqpkdgtsrqd4st76m3",
"captureClientId": "3fp4zt9t256jqk4tx35wuj4ap2e53hq9",
"entityType": "user",
"globalSub": "{{URL}}",
"sub": "00000000-46bd-4d85-91ee-bdeadd446c1e"
}
}
}
}
Update password
{
"iss": "https://idp.example.com", // service provider publishing the SET
"iat": 1458496025, // issued at dateTime
"jti": "someuniqueeventidfb4e75b5411e4e19b6c0f", // unique id of this event
"aud": [
"https://receivingurl.example.com" // one or more audience identifiers
],
"events": { // statements that describe a single logical event that has occurred
"account/v1/passwordUpdated": {
"sub": "initialUserUuid",
"email": "email",
"firstName": "firstName",
"propertyId": "propId",
"clientId": "eventServiceClientId",
"locale": "locale",
"dataSourceInfo": {
"sub": "e499ac24-46bd-4d85-91ee-bdeadd446c1e",
"entityType": "akamai_entity"
}
}
}
}
Notification Samples for transactional email events
Registration, Forgot Password, Resend Verification and Pre-registration
{
"iss": "https://idp.example.com", // service provider publishing the SET
"iat": 1458496025, // issued at dateTime
"jti": "someuniqueeventidfb4e75b5411e4e19b6c0f", // unique id of this event
"aud": [
"https://receivingurl.example.com" // one or more audience identifiers
],
"events": { // statements that describe a single logical event that has occurred
"account/v1/register": { // Also preregister, forgotPassword, resendVerification
"sub": "f3b24e35-5f34-4fef-aa6b-5e1f5067e5d8", // the subject of the SET (user UUID)
"propertyId": "34345y3457y34",
"clientId": "2345j346h5h6456",
"link": "<BASE URL>?a=CODE&client_id=CLIENTID&ui_locales=LOCALE",
"email": "email",
"firstName": "firstName",
"locale": "locale",
"dataSourceInfo": {
"sub": "e499ac24-46bd-4d85-91ee-bdeadd446c1e"
}
}
}
}
Notification Samples for transactional user events that support enrich actions
Login
{
"iss": "https://idp.example.com", // service provider publishing the SET
"iat": 1458496025, // issued at dateTime
"jti": "someuniqueeventidfb4e75b5411e4e19b6c0f", // unique id of this event
"aud": [
"https://receivingurl.example.com" // one or more audience identifiers
],
"events": { // statements that describe a single logical event that has occurred
"account/v1/userAuthenticationAction": {
"sub": "f3b24e35-5f34-4fef-aa6b-5e1f5067e5d8", // the subject of the SET (user UUID)
"propertyId": "34345y3457y34",
"clientId": "2345j346h5h6456",
"dataSourceInfo": {
"sub": "e499ac24-46bd-4d85-91ee-bdeadd446c1e"
}
}
}
}
Notifications have queueing, retrying, and performance considerations:
Queueing
Notifications are handled in a first-in, first-out manner.
Requests will be aborted after 5 seconds and retried based on the retry configuration.
Retrying
Failed notifications (after retries) are saved in a dead letter queue and can be retrieved.
The number of retries and the time period between them are configurable at any level (organization, environment, property, client).
Number of retries (default is
5
) - so the total number of sends is 1 (original) + 5 (retries)Frequency of retries (default is
[30, 60, 120, 300, 900]
in seconds).
All notifications are auditable.
Performance Considerations
Property subscription traffic can affect another subscription inside the same environment but will not affect subscriptions in different environments.