---
schema_version: "1"
id: d10964d436aeca121a51ab4418c12d410750b3c45c15193aa88af6c68e671499
title: Internationalize Custom Events
collection: developer
version: current
locale: en-us
portal_url: https://docs.salesforce.com/developer/current/en-us/marketing-cloud/guides/mc-app-development/internationalize-events.md
canonical_url: https://developer.salesforce.com/docs/marketing/marketing-cloud/guide/internationalize-events.html
source_site: developer.salesforce.com
content_type: documentation
content_hash: 364e992efea78cddb48882042a5a30b67ca02689ab68710d72fd133fadd1aafb
products:
  - Marketing Cloud Engagement APIs and Programmatic Languages
  - Marketing Cloud
---
# Internationalize Custom Events

Custom events should have a `summary` array defined in their config.json under `userInterfaces`. The summary array is a collection of key-value pairs that maps to labels and values on the summary step of the event configuration modal and the event summary on the canvas.

```json
"summary": [
    {
        "valuePath": "arguments.countryCode",
        "label": "countryCodeLabel"
    },
    {
        "valuePath": "arguments.firstName",
        "label": "firstNameLabel"
    },
    {
        "valuePath": "arguments.lastName",
        "label": "lastNameLabel"
    },
    {
        "valuePath": "arguments.favoriteFood",
        "label": "favoriteFoodLabel"
    }
]
```

Each `valuePath` maps to a value in the activity's JSON.

Each `label` corresponds to an i18n key in the config's `lang` object:

```json
"lang":{
    "en-US": {
        "name": " Contact Event (Workflow API v1.1)",
        "description": "An example Contact event using workflow API v1.1 format.",
        ...
        "countryCodeLabel": "Country Code",
        "firstNameLabel": "First Name",
        "lastNameLabel": "Last Name",
        "favoriteFoodLabel": "Favorite Food"
    }
}
```

These key-value pairs are displayed on the summary on the canvas, as well as the final step of the event selection wizard.

## Example config.json Schema

```json
{
  "fields": [
    {
      "name": "countryCode",
      "dataType": "text",
      "maxLength": "50",
      "isNullable": false,
      "defaultValue": ""
    },
    {
      "name": "firstName",
      "dataType": "text",
      "maxLength": "100",
      "isNullable": false,
      "defaultValue": ""
    },
    {
      "name": "lastName",
      "dataType": "text",
      "maxLength": "100",
      "isNullable": false,
      "defaultValue": ""
    },
    {
      "name": "My Integer",
      "dataType": "number",
      "maxLength": "",
      "isNullable": false,
      "defaultValue": ""
    },
    {
      "name": "My Date",
      "dataType": "date",
      "maxLength": "",
      "isNullable": false,
      "defaultValue": ""
    },
    {
      "name": "My Bool",
      "dataType": "boolean",
      "maxLength": "",
      "isNullable": false,
      "defaultValue": "true"
    },
    {
      "name": "My Email",
      "dataType": "email",
      "maxLength": "",
      "isNullable": false,
      "defaultValue": ""
    },
    {
      "name": "My Phone",
      "dataType": "phone",
      "maxLength": "",
      "isNullable": false,
      "defaultValue": ""
    },
    {
      "name": "My Decimal",
      "dataType": "decimal",
      "maxLength": "18,0",
      "isNullable": false,
      "defaultValue": ""
    },
    {
      "name": "My Locale",
      "dataType": "locale",
      "maxLength": "",
      "isNullable": false,
      "defaultValue": ""
    }
  ],
  "sendableCustomObjectField": "My Email",
  "sendableSubscriberField": "_SubscriberKey"
}
```
