New definition

Creating a new definition within the CXP is a fundamental step in tailoring the system to capture and analyze the specific data that matters most to your business. This process involves defining the structure and properties of the data you wish to track, ensuring that it aligns with your marketing and customer engagement strategies.

Select the right type of definition

Before you start, think about what you need and what you are building. For more details, go to Definition types.

image-20241118-111440.png

Definition settings

Name

Give your definition a logical name so you can easily find it back. Use a common name, so there is no need to create different definitions that in essence do the same (avoid Person update, Person import, Person import 2 etc. as in essence they are the same; updating a person object)

Type

What kind of definition are you creating, is the definition of type event, object or relation. You cannot update/adjust this later as based on the type there are dependencies in the creation of the definition.


Display name

On each definition you can select one or more of it’s properties to form the display name, so the name that appears on your event or object details page and in it’s activities.

For example for definition ‘Person' you can select first name and last name as the display properties and then the object will show 'Person: Jon Doe’.

We advise to do this for type object and not type event, as in the event you do not always have all the info you want to display.

image-20251105-145939.png


Transformations


Transformations convert incoming event data (definitions of type event) into structured objects (definitions of type object) that are easier to use and understand. During this process, raw data is reshaped and organized to create clear, meaningful representations. These transformed objects help you see the bigger picture of customer interactions, enabling more informed decisions and effective engagement strategies.

We use Typescript in our transformations, supported by IntelliSense.

IntelliSense makes programming in TypeScript more efficient and intuitive through smart tools and instant feedback.

  • Code Completion: Offers suggestions for variables, functions, methods, and modules as you type.

  • Inline Documentation: Displays information about functions, like arguments and return values, directly in the editor.

  • Error Detection: Highlights syntax and type errors in real time, allowing for quick problem resolution.

  • Navigation: Enables easy navigation to definitions and implementations within the codebase.

Definition properties


Based on the selected type, the properties of the definition may require more or less details. Hence you cannot change the type once selected.

Create the definition based on your payload, we support the setup of objects and arrays, so your custom setup can be created. Make sure your properties have the right data types and match your payload structure.

In order to add properties, click on the +Add property button, on the right hand a drawer will appear where you can enter your property details, it automatically adds it to the definition setup on the left so you can see what you’re adding.

When all properties are added, click Create definition and you can start sending events to this definition (with your API credentials)


When creating an object, it is mandatory to have at least 1 property set as unique identifier. If not, an object cannot be created.


image-20241118-145331.png


Keep in mind that event definitions:

  • Do not have a unique identifier

  • Does not have an external key

  • Can hold PII data

  • Can hold sensitive data

Event definitions (raw incoming data) are mapped and transformed into Objects . These objects are crucial for 'summarizing' data, enabling efficient queries, and initiating workflows. By aggregating data, users can derive meaningful insights, streamline processes, and trigger automated actions based on defined criteria.


  • Definition: Objects of interest in the CXP that contain data.

  • Examples:

    • Person Object: Information about specific persons, such as name, email, and purchase history.

    • Company object: Information about specific companies, such as company name, email, KVK number.

    • Email Object: Includes details about an email, like sent date, subject etc.

  • Characteristics:

    • Properties: Contain details and characteristics about the object itself.

    • Relations: Objects can relate to each other, such as a person object linked to multiple order objects or a person who works at a company.

  • Usage: Help in structuring and managing both static and dynamic data to build a complete view of the object (mostly a person or a company)

Keep in mind that relation definitions:

  • Do not have a unique identifier

  • Does not have an external key

  • Can hold PII data

  • Can hold sensitive data