ePrivacy and GPDR Cookie Consent by Cookie Consent Skip to main content

Events setup

Entities setup is usually done by the CDP technical consultant.

In the Administration/Entities/Events tab, it is possible to create, edit, show/ hide events that will be used through Meiro Business Explorer (the basis for identity stitching and attribute calculation, displayed for each customer in the Customer Profile Detail tab/ Timeline).

A full list of events will be visible to users in the Data library/ Events tab.

Learn from this article:

Create event

Edit/ show-hide event

See an event example


1. Create event

To create an event, please click on the Create Event button and fill out the form that will be displayed.

Знімок екрана 2023-03-13 о 12.39.48.png

General

Event Name

Name your event that will be displayed across Meiro Business Explorer. It is possible to edit the name later on. 

Source (not editable later)

Pick the data source from which this event comes from.

Event Type (not editable later)

Insert an event type (for example, web_pageview, web_transactions, etc.).

Event Version (not editable later)

Assign the version of this event that you can refer to later. 

Event Retention (optional) 

Select after how many days events will be deleted (max 5000). It is recommended to avoid storing events for too long as it may influence the costs of data storage. There is no general recommendation about how long events should be stored, it depends on the nature of the event. Usually, more information is collected, and it is advised to store it for a longer time.  By default, Event Retention is 0 (infinite). To learn more, contact the Meiro team. 

Schema

The schema describes the way how event payload should be displayed in the user interface. It is possible to set multiple items that will be displayed.

Title

Set the title of the payload. The event title is the further specification of the event. For example, event type "Order Status Updated" may have the title "The customer's order changed the status to Awaiting bank payment" to specify the event further. The title will be visible under this name across Meiro Business Explorer. It is possible to edit it later on. 


Add items to display in the payload

Name: Name your schema item. It will be visible under this name across Meiro Business Explorer. It is possible to edit it later on. 

Type: Set the item type (string, datetime, number). It is possible to edit it later on. 

Format: Pick one of the available formats (text, link, list). It is possible to edit it later on. 

Path: JSON path that points to value in payload corresponding to this payload item. It is possible to edit it later on. 

Warning: It will not be possible to edit Source, Event Type and Event Version later. In this case, hiding the event and creating a new one is recommended.

Remember: Newly created events will appear with the New badge that will stay for the next 7 days.

Autoload

In this section, you can set the extraction of customer events from the ME database to MBE. This will eliminate the need to use MI for integrating data from ME to CDP, resulting in simplified deployment. Additionally, this approach reduces the probability of errors during configuration and speeds up the process.

Remember: One event type can have only one integration.



Autoload configuration

Click the ‘configure’ button to enable configurations of the CDP to the ME database.

Endpoint

(required)

Select the endpoint from ME using the dropdown.

Event time extraction

(required)

The reception time in UTC can be used as the event timestamp to receive an event in near real-time. For example: 

"reception_time".


However, when receiving data from third-party endpoints, there may be a delay between the actual event occurrence. Therefore, it is necessary to utilize SQL expressions or transformations to handle such cases appropriately. For example:

"payload ->> 'timestamp'".


Remember: you need to be ensured that the event_time is always in UTC.

User identifier extraction

(required)

SQL definition that can work on the payload. For example:

"payload ->> 'user_id'"

Event filter

(required)

SQL expression that can work on the payload. For example:

"payload ->> 'type' = 'page_view'"

Remember: You may disable these configurations with enable/disable toggle. In case you need to delete configurations of this integration, use the ‘remove’ button.


Transformations

Знімок екрана 2023-06-08 о 13.40.58.png

In this section, you can specify the transformations the raw customer profile events might undergo to get the real payload. It is important to consider the following key features of the transformations:

  • The order of transformations is important, as each transformation is applied one by one to the payload in the respective order.
  • The component supports data transformation only in key: value object. It does not support analyzing and iterating throw array objects.

It is possible to use multiple transformations to achieve the desired result of the payload, and each transformation can be enabled or disabled individually using a toggle located next to each transformation.


Below, you can find available transformations for definition.

Move

Allows to extract a value from a specified old path, create a new path, place the extracted value in the new path, and delete the old path. This helps organize and restructure the data within the payload, improving data quality and consistency.


Example of 'move' transformation

Знімок екрана 2023-06-08 о 13.26.44.png

Before:


{
  "payload": {
    "url": "https://www.meiro.store/blog/",
    "referrer": "https://www.meiro.store/",
    "page_title": "Blog – Meiro.store"
  }
}

Result:

{
  "payload": {
    "url": "https://www.meiro.store/blog/",
    "referrer": "https://www.meiro.store/",
    "page": "Blog – Meiro.store"
  }

Map value

Allows extracting the value from the target_old_value path. It then searches for a matching value in the value_maps array, comparing the extracted value with the old value from each value_map. If a match is found, the component takes the corresponding new value from the value_map, creates a new path named target_new_value, and places the new value from the value_map there. This process is similar to a join operation in a database.


Example of 'map value' transformation

Знімок екрана 2023-06-08 о 13.40.58.png

Before:


{
  "referer_parts": {
    "known": true,
    "medium": "unknown",
    "referer": null,
    "search_term": null,
    "search_parameter": null
  }
}

Result:

{
  "referer_parts": {
    "known": true,
    "medium": "medium",
    "referer": null,
    "search_term": null,
    "search_parameter": null
  }
}

Name pop-up banner

Allows extracting the banner_id value from  id_path. It then searches for a matching banner_name from the refreshed web banner data downloaded from the CDP instance. If a match is found, the component creates a new path called name_path in the payload and places the banner_name value there.

Example of 'name pop-up banner' transformation

Знімок екрана 2023-06-08 о 14.08.53.png

Name native banner

The same logic as in the Name pop-up banner is applied to payloads where native web banners data must be enriched.

Example of 'name native banner' transformation

Знімок екрана 2023-06-08 о 14.09.31.png

Czech vocative

This transformation is designed for projects in the Czech Republic, where vocative forms of names are commonly used. It extracts the first name from the specified path using the first_name_path. Then tries to use a vocative library to transform first_name. The transformed name is then placed in a new path specified by result_path.

Знімок екрана 2023-06-08 о 14.03.21.png

Example of 'Czech vocative' transformation

Знімок екрана 2023-06-08 о 14.03.21.png

Before:


{
"name": "Marianna"
}

Result:

{
"name": "Marianna",
"name_vocative": "Marianno"
}

Czech gender

This transformation is mainly for projects in the Czech Republic because it uses a vocative library that works mostly with first names in the Czech calendar. Transformation extracts first_name from first_name_path path. Then try to use a vocative library to estimate gender from first_name. It creates a new path in result_path and places the estimated gender there.

Знімок екрана 2023-06-08 о 14.00.56.png

Example of 'Czech gender' transformation

Знімок екрана 2023-06-08 о 14.00.56.png

Before:


{
"name": "Marianna"
}

Result:

{
"name": "Marianna",
"gender_estimate": "female"
}

Replace in string

Transformation extracts string object from the string_path path. Then apply Python replace method on an extracted object with old and new as an argument. It creates a new path  result_path and places the transformed string there.

Знімок екрана 2023-06-08 о 13.48.43.png

Example of 'replace in string' transformation

Знімок екрана 2023-06-08 о 13.48.43.png

Before:


{
"geo_ip_data": {
    "latitude": 50.1188,
    "city_name": "Frankfurt am Main",
    "longitude": 8.6843,
    "country_iso": "DE",
    "postal_code": "60313",
    "country_name": "Germany"
}
}

Result:

{
"geo_ip_data": {
    "latitude": 50.1188,
    "city_name": "Frankfurt am Main",
    "longitude": 8.6843,
    "country_iso": "DE",
    "postal_code": "60313",
    "country_name": "Deutschland"
}
}

Strip string

Allows extracting string object from string_path path. Then apply the Python replace method on an extracted object with old and new as an argument. It creates a new path  result_path and places the transformed string there.

If the strip_characters is left empty, then the leading and lagging spaces in the payload will be stripped.

Знімок екрана 2023-06-08 о 13.44.26.png

Example of 'strip string' transformation

Знімок екрана 2023-06-08 о 13.44.26.png

Before:


{
 "cookies": {
    "_ga": "GA1.1.500734751.1682429081"
}

Result:

{
 "cookies": {
    "_ga": "1.1.500734751.1682429081"
}

Lowercase string

Transformation allows to extract string object from the string_path path. Then applies the Python lower method on an extracted object without any arguments. It creates a new path in result_path and places the transformed string there.

Знімок екрана 2023-06-08 о 13.50.12.png

Example of 'lowercase string' transformation

Знімок екрана 2023-06-08 о 13.50.12.png

Before:


{
"session_id": "MTY4MjQyOTA4MDk0MCZiYWM3NDVhYS03NTUwLTQ3NmUtYmE1NS0wNjg0NDQ0N2EzMDc="
}

Result:

{
"session_id": "mty4mjqyota4mdk0mcziywm3ndvhys03ntuwltq3nmutyme1ns0wnjg0ndq0n2ezmdc="
}

Validate email

With the transformation, the string object from the string_path path is extracted. Then applies the Python lower method on an extracted object without any arguments. It creates a new path in result_path and places the transformed string there.

Знімок екрана 2023-06-08 о 13.56.40.png

Example of 'validate email' transformation

Знімок екрана 2023-06-08 о 13.56.40.png

Before:


{
	"email": "admin@gmail.com"
}

Result:

{
	"email": "admin@gmail.com",
	"validated_email": "admin@gmail.com"
}

Delete

Checks if delete_path exists and removes it.

 

Example of 'delete' transformation

Знімок екрана 2023-06-08 о 13.52.36.png

Test run

Знімок екрана 2023-06-08 о 13.54.09.png

In the "test run" section, you have the option to click on the "fetch" button to experiment with the event using the specified settings. You can specify the desired number of events to fetch, with a maximum limit of 1000 events. As a result, you will receive an array containing the most recent values for the event time, user identifier, and payload.

2. Edit/ show-hide events

You can edit events at any time, and if necessary, you can hide them from the Meiro interface. When hidden, events will not be displayed in the Meiro Business Explorer interface.

Warning: Fields that are not editable are: Source, Event Type, and Event Version. If filled wrong, it is recommended to hide the incorrect event and create a new one.

3. Event example

An example of an event listed in the Data library/ Events tab:

image-1605031010967.png

For this event:

  • Event Name: Account created on web
  • Event Source: Bank website
  • Event Type: picked from the drop-down list (in this case "account-created")
  • Event Version: the version of this event (for example 1-0-0)
  • Schema Title: Bank web account created
  • Schema Name: Device family
  • Schema Type: string
  • Schema Format: text
  • Schema Path: JSON path to this event