---
schema_version: "1"
id: e24876525e261a009f8e75a20d4cd82c8e850c9914b986c3791a83f471498bfa
title: Considerations for Building 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/creating-events.md
canonical_url: https://developer.salesforce.com/docs/marketing/marketing-cloud/guide/creating-events.html
source_site: developer.salesforce.com
content_type: documentation
content_hash: fbec701bae3338e5a9367bbd63027a8262e0fe6dc55628ed44c995c8ab8abb3b
products:
  - Marketing Cloud Engagement APIs and Programmatic Languages
  - Marketing Cloud
---
# Considerations for Building Custom Events

Custom events in Journey Builder use the same framework as activities, so they follow the same structure. See Build Custom Activities for detailed steps. Events have a few key differences:

- A `schema` or `dataExtensionId` must be passed on the top level of the request body passed to Journey Builder via `updateEvent`. You may also set these defaults in the event's config.json.
- No height or width can be defined under `userInterfaces.configModal`, as the custom event does not appear in its own modal, but rather as part of a larger workflow that already has a defined size.
- Define a `summary` array under `userInterfaces`. This 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. These key-value pairs can be used for internationalization.
- If using a transaction key to create a unique identifier in a journey, add the transaction key to the custom event’s config.json under metaData.

## Related Items

- [Build Custom Activities and Events](https://developer.salesforce.com/docs/marketing/marketing-cloud/guide/creating-activities.md)
