Example Bloomreach webhooks

The Bloomreach & TRIFFT integration relies on REST APIs and Webhooks. The document below lists selected examples of who Webhooks can be configured to pass data on from TRIFFT to Bloomreach

📘

Consult this page for the overall documentation of Bloomreach & TRIFFT integration

👍

Bloomreach allows for a fully flexible configuration for events. Depending on your needs and the way your Bloomreach project is set up, the specific list of relevant events, the payload structure, the primary ID mapping etc may differ from the examples below. Similarly, the naming of custom parameters in TRIFFT will be different for each project. When in doubt, please consult our Support.

❗️

Ensure Hard ID an/or Soft IDs in "customer_id" section match your BloomReach project setting, otherwise BloomReach will return 200, but the event will not be assigned to a customer in BloomReach.

To set up Webhooks, head to Settings > Webhooks in Content Cockpit and:

  1. Set up Authorisation for Bloomreach
  2. Set up individual Webhooks for TRIFFT events you want to push to Bloomreach

Library of most typical webhooks to create Bloomerach events

Shared event

TRIFFT event type

Type

JSON payload

Coupon redeemed

User - User Reemed Coupon

POST

{
"event_type":"trft_perk_redeemed",
"properties":{
"perk_id":"{{ coupon.id }}",
"perk_name":"{{ coupon.name }}",
"venue_id":"{{ venue.id }}",
"venue_name":"{{ venue.name }}",
"venue_aztec_id":"{{ venue.param.aztecVenueId }}",
"site_id":"{{ venue.param.siteId }}"
},
"customer_ids":{
"email_address":"{{ member.email }}",
"trfft_loyalty_id":"{{ member.id }}"
},
"timestamp":"{{ event.created_at | date('U') }}"
}

User was Verified

User - User Was Verified

POST

{
"event_type":"trft_registration",
"properties":{
"member_id":"{{ member.id }}",
"birth_date":"{{ member.param.birth_date | date('U') }}",
"first_name":"{{ member.param.first_name }}"
},
"customer_ids":{
"email_address":"{{ member.email }}",
"trfft_loyalty_id":"{{ member.id }}"
},
"timestamp":"{{ event.created_at | date('U') }}"
}

User - User Was Created

User - User Was Created

POST

{
"event_type":"trft_registration_started",
"properties":{
"member_id":"{{ member.id }}",
"birth_date":"{{ member.param.birth_date | date('U') }}",
"first_name":"{{ member.param.first_name }}"
},
"customer_ids":{
"email_address":"{{ member.email }}",
"trfft_loyalty_id":"{{ member.id }}"
},
"timestamp":"{{ event.created_at | date('U') }}"
}

Member Contest Drawn

User - Member Contest Drawn

POST

{
"event_type":"trft_contest_drawn",
"properties":{
"contest_id":"{{ contest.id }}",
"contest_name":"{{ contest.name }}",
"contest_token_id":"{{ contest_token.id }}",
"coupon_id":"{{ coupon.id }}",
"coupon_name":"{{ coupon.name }}",
"user_coupon_id":"{{ event.assignedUserCouponId }}"
},
"customer_ids":{
"email_address":"{{ member.email }}",
"trfft_loyalty_id":"{{ member.id }}"
},
"timestamp":"{{ event.created_at | date('U') }}"
}

Member Contest Token Assigned

User - Contest Token Was Assigned To User

POST

{
"event_type":"trft_contest_token_assigned",
"properties":{
"contest_id":"{{ contest.id }}",
"contest_name":"{{ contest.name }}",
"contest_token_id":"{{ contest_token.id }}"
},
"customer_ids":{
"email_address":"{{ member.email }}",
"trfft_loyalty_id":"{{ member.id }}"
},
"timestamp":"{{ event.created_at | date('U') }}"
}

User Signed Consent Text

User - User Signed Consent Text

POST

{
"event_type":"trft_marketing_consent",
"properties":{
"consent_id":"{{ event.consentId }}",
"consent_text_id":"{{ event.consentTextId }}"
},
"customer_ids":{
"email_address":"{{ member.email }}",
"trfft_loyalty_id":"{{ member.id }}"
},
"timestamp":"{{ event.created_at | date('U') }}"
}

User Activated Coupon

User - User Activated Coupon

POST

{
"event_type":"trft_perk_activated",
"properties":{
"perk_id":"{{ coupon.id }}",
"perk_name":"{{ coupon.name }}"
},
"customer_ids":{
"email_address":"{{ member.email }}",
"trfft_loyalty_id":"{{ member.id }}"
},
"timestamp":"{{ event.created_at | date('U') }}"
}

Card Was Added to an User

User Card - User Card Was Added

POST

{
"event_type":"trft_loyalty_number_added",
"properties":{
"user_card_id":"{{ metadata._aggregate_id }}",
"card_number":"{{ event.number }}",
"card_type":"{{ event.userCardType}}"
},
"customer_ids":{
"email_address":"{{ member.email }}",
"trfft_loyalty_id":"{{ member.id }}",
"trft_loyalty_number":"{{ event.number }}"
},
"timestamp":"{{ event.created_at | date('U') }}"
}

User Was Removed From Segment

User - User Was Removed From Segment

POST

{
"event_type":"trft_segment_unset",
"properties":{
"segment_id":"{{ segment.id }}",
"segment_name":"{{ segment.name }}",
"segment_type":"{{ segment.type }}",
"segment_slug":"{{ segment.slug }}"
},
"customer_ids":{
"email_address":"{{ member.email }}",
"trfft_loyalty_id":"{{ member.id }}"
},
"timestamp":"{{ event.created_at | date('U') }}"
}

App Opened

App Event - App Event Was Logged

POST

{
"event_type":"trft_app_opened",
"properties":{
"app_version":"{{ event.params.app_version }}",
"app_platform":"{{ event.params.app_platform }}"
},
"customer_ids":{
"email_address":"{{ member.email }}",
"trfft_loyalty_id":"{{ member.id }}"
},
"timestamp":"{{ event.created_at | date('U') }}"
}

User Changed Favorite Venue

User - User Changed Favorite Venue

POST

{
"event_type":"trft_favourite_venue_set",
"properties":{
"venue_id":"{{ venue.id }}",
"venue_name":"{{ venue.name }}",
"venue_aztec_id":"{{ venue.param.aztecVenueId }}",
"site_id":"{{ venue.param.siteId }}"
},
"customer_ids":{
"email_address":"{{ member.email }}",
"trfft_loyalty_id":"{{ member.id }}"
},
"timestamp":"{{ event.created_at | date('U') }}"
}

User - User Was Anonymized

User - User Was Anonymized

POST

{
"event_type": "trft_annonymization"
"customer_ids": {
"trfft_loyalty_id": "{{ member.id }}"
},

"properties": {
"member_id": "{{ member.id }}"
},

"timestamp": "{{ event.created_at | date('U') }}",
}

Transaction

Transaction - Transaction Was Created

POST

{
"event_type":"trft_transaction_challenge",
"properties":{
"amount":"{{ event.transactionAmount / 100 }}",
"location_name": "{{ venue.name }}"
},
"customer_ids":{
"email_address":"{{ member.email }}",
"trfft_loyalty_id":"{{ member.id }}"
},
"timestamp":"{{ event.created_at | date('U') }}"
}


What’s Next