--- title: "Mapp Engage" slug: "intelligence-smart-pixel-mapp-engage" updated: 2025-03-27T11:10:06Z published: 2025-03-27T11:10:06Z canonical: "docs.mapp.com/intelligence-smart-pixel-mapp-engage" --- > ## Documentation Index > Fetch the complete documentation index at: https://docs.mapp.com/llms.txt > Use this file to discover all available pages before exploring further. # Mapp Engage ## 1 Overview This page explains how to integrate Mapp Engage with tracking setups to send user-specific data to Engage for personalized marketing. You can transmit attributes and trigger events in real-time to enrich customer profiles and activate automation flows. Use cases include: - **Send dynamic user attributes** to Mapp Engage, such as preferences or behavior (e.g., "Size Finder used") for improved segmentation and targeting. - **Trigger a Custom Web Event** when a user interacts with a specific feature (e.g., virtual fitting room), which can initiate an automation workflow in Engage. For successful integration, **User Matching** with Mapp Engage must be enabled. --- ## 2 Configurable Properties | Property | Description | Data Type | Request Parameter | | --- | --- | --- | --- | | attributes | Sends user-specific data to Mapp Engage, which can be stored as Custom Profile Attributes. These attributes can be created and managed in Engage. | Object | `eaj` | | eventName | Defines the name of the Engage Custom Web Event (e.g. "Size Finder Used"). This can trigger automations in the Whiteboard. | String | `ecwen` | | eventId | Alternative to eventName. Refers to the Engage Custom Web Event ID as defined in Engage. Mostly used for advanced setups. | Number | `ecwei` | --- ## 3 Objects and Methods Mapp Intelligence provides one tracking object for Engage integration: - **data**: Use this object to configure and send Engage attributes and custom events. Each object supports four methods: | **Method** | **Description** | | --- | --- | | set() | Overwrites all existing values. | | add() | Adds or updates values. Existing values remain unchanged unless replaced. | | get() | Returns the current configuration. | | remove() | Deletes the entire configuration or selected values. | ### 3.1 data – Engage Attributes and Events SetAddGetRemove ```javascript /** * @param {{ *      [attributes]: {[string]: string}, *      [eventName]: string, *      [eventId]: number | string * }} data * * @returns {wtSmart.engage.data} */ wtSmart.engage.data.set(data); ``` ```javascript /** * @returns {{ *      [attributes]: {[string]: string}, *      [eventName]: string, *      [eventId]: number * }} */ wtSmart.engage.data.get(); ``` ```javascript /** * @param {{ *      [attributes]: {[string]: string}, *      [eventName]: string, *      [eventId]: number | string * }} data * * @returns {wtSmart.engage.data} */ wtSmart.engage.data.add(data); ``` ```javascript /** * @param {string[]} [removeList] * * @returns {wtSmart.engage.data} */ wtSmart.engage.data.remove(removeList); ``` **Example** ```javascript // set Engage data wtSmart.engage.data.set({    attributes: { 'engage.attribute.fittingToolUsed': 'true' },    eventName: 'Virtual Fitting Room Used',    eventId: 12345 }); // get Engage data var data = wtSmart.engage.data.get(); // remove all Engage data wtSmart.engage.data.remove(); ``` A **Request Parameter** displays the name of the parameter included in a tracking request. This information is crucial for debugging purposes (e.g., via **Mapp Cloud Debugger**), allowing you to verify the data transmitted to Mapp and understand how it is recorded.