Map event variables
If your webhook passes variables with custom names or nested structures, you can insert a JSON sample and manually map webhook fields to your event variables. For example, to send an email, the system must know which field includes the email address, even if it’s named differently or nested inside an object.
In this article, we will talk about how to map variables in a custom event.
Create an event and select a data structure
Go to Automation > Event manager and click Add new event. Select an event type.
Read also: Create events.
In Data structure, select Custom as the structure type.

Add an incoming data structure
To map variables, start by adding a sample of the data your webhook will send. This allows the system to read available variables and suggest them for mapping.
Click Upload data and decide how to insert data:
| Insert code | Manually enter or paste JSON into the input field. Click Upload. |
| Import from a URL | Enter a link to a file or request so that the system can automatically retrieve the JSON data. Click Get and preview the structure in the field below. |
Once you’ve added the data, you’ll see the Data received label next to the Upload button.

Map variables
Map webhook fields to Automation variables in the following columns:
| Webhook field | Select a field from the uploaded event structure. If the field is part of a nested object, you can expand the data structure to find it. Click the arrow and select a value. |
| Event variable | Enter the name of an Automation variable. The list of available variables will vary based on the event type. |
| Data type |
|
To identify contacts going through your flow, map the email or phone variables. Make sure to also map any other relevant flow variables, such as Filter conditions.

Use unmapped variables
Even if you don’t map certain variables, they’ll still be available in Automation. These unmapped variables:
- Are available in elements with content fields (messages, titles, and names).
- Are automatically added from the data structure.
- Are passed as JSONPath references.
- Are recognized as
Stringby default.
To use JSONPath variables in your flow, select the Transfer additional data to the flow checkbox in the event settings.

You can add variables to flows triggered by the created event.
You can insert JSONPath variables in the following elements:
| Element* | Variable placement |
| Subject, preheader, and email body. | |
| SMS, Messaging app, WhatsApp, Viber | Message text. |
| Action | Any field that supports variable insertion, including deal names, contact names, task names, and more. |
*Variables mapped in the event structure are supported across all elements of your automated flow.
Use the {{$[path]}} syntax, where the [path] is your variable’s JSONPath. For example, if your array looks like this:
{
"data": {
"user": {
"name": "Alex",
"contact_info": {
"email": "alex@example.com",
"phone": "(601) 484-5378"
}
},
"order": {
"number": "WORD-20250730",
"items_count": 2,
"total_price": 1899
}
}
}
Your message can look like this:
Hello, {{$['data']['user']['name']}}!
Your order #{{$['data']['order']['number']}} is being processed.
We'll give you a call if anything needs your attention. Thank you for choosing us!
In this case, the 'name' and 'number' variables may not be mapped in your event structure.

To view data from every executed event, go to Event manager > Log.
Last Updated: 06.08.2025
or