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

String — text values, up to 255 characters.

Number — numeric values.

Date — dates formatted as YYYY-MM-DD.

Structure — arrays of data, such as a product with multiple parameters.

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 String by 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
Email 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.

Rate this article about "Map event variables"

User Rating: 5 / 5 (6)

Previous

Create events

Next

Manage events

Popular in Our Blog

Try SendPulse email service for free