---
schema_version: "1"
id: 417ac198641ba1fa7818b0316f6093146d90cb4782ba08131e15284469f2ad36
title: Register Dynamic Custom and Pubsub Events (Managed Package)
collection: admin
version: current
locale: en-us
portal_url: https://docs.salesforce.com/admin/current/en-us/xcloud/264-0-0/os_register_dynamic_custom_and_pubsub_events.md
canonical_url: https://help.salesforce.com/s/articleView?id=xcloud.os_register_dynamic_custom_and_pubsub_events.htm&release=264.0.0&type=5
source_site: help.salesforce.com
content_type: documentation
content_hash: 5b905bb985364072bf07064253d002f2e4cb640747651b1c844c4367e8bb0055
description: For the managed package runtime, register events based on dynamic event and channel names. Use a parent attribute, a recordId, or a session variable within the Channel Name and Event Name of a pubsub event, or the Event Name of a custom event.
products:
  - Omnistudio
release: "264"
---
# Register Dynamic Custom and Pubsub Events (Managed Package)

For the managed package runtime, register events based on dynamic event and channel names. Use a parent attribute, a recordId, or a session variable within the **Channel Name** and **Event Name** of a pubsub event, or the **Event Name** of a custom event.

![Managed Package app icon](https://sf-zdocs-cdn-prod.zoominsoftware.com/tdta-xcloud-omnistudio_for_managed_packages-264-0-0-production-enus/aa2554ec-624a-4ee6-8da4-6435670e6e62/resources-global/_corporate/images/managedpackageicon.png) This information is for Omnistudio for Managed Packages. For Omnistudio on standard runtime, see [Omnistudio Help](https://help.salesforce.com/s/articleView?id=xcloud.os_omnistudio_standard.htm&language=en_US).

Create the event with a merge field on a Flexcard. For example, channel\_{Session.name}, case{recordId}, or evnt\_{Parent.status}. Then register the specific event from another component. For example, register channel\_acme, case143437h8f9f00, or evnt\_New.

<table class="slds-table slds-table_bordered slds-max-medium-table_stacked slds-m-bottom_small ">
        <colgroup>
          <col>
          <col>
          <col>
        </colgroup>
        <thead class="slds-text-title_caps ">
          <tr class="">
            <th scope="col" class="slds-cell-wrap" style="vertical-align:top;" id="d249268e79">
              <p style="margin-bottom:0;">Supported Merge Fields</p>
            </th>
            <th scope="col" class="slds-cell-wrap" style="vertical-align:top;" id="d249268e85">
              <p style="margin-bottom:0;">Supported Versions and Properties</p>
            </th>
            <th scope="col" class="slds-cell-wrap" style="vertical-align:top;" id="d249268e91">
              <p style="margin-bottom:0;">Description</p>
            </th>
          </tr>
        </thead>
        <tbody>
          <tr class="">
            <td data-label="Supported Merge Fields" class="slds-cell-wrap" style="vertical-align:top;" headers="d249268e79 ">
              <p style="margin-bottom:0;">{Parent.attr}</p>
            </td>

            <td data-label="Supported Versions and Properties" class="slds-cell-wrap" style="vertical-align:top;" headers="d249268e85 ">
              <p style="margin-bottom:0;">
                Spring '22 for <strong class="uicontrol">Channel Name</strong> and <strong class="uicontrol">Event Name</strong> in both pubsub and custom events.</p>
            </td>

            <td data-label="Description" class="slds-cell-wrap" style="vertical-align:top;" headers="d249268e91 ">
              <p>Register a channel name or event name based on an attributed pass to a child from its parent Flexcard. See <a href="https://help.salesforce.com/s/articleView?id=xcloud.os_embed_flexcard_inside_another_flexcard.htm&amp;release=264.0.0&amp;type=5" title="For the managed package runtime, embed a reusable Flexcard as a child inside another Flexcard. The child Flexcard can have its own data source. Or, the parent can override the child's data source with its own data source. The parent can also pass specific data to the child, such as its recordId to use as the child's contextId.">Embed Flexcard Inside Another Flexcard (Managed Package)</a>.</p>
              <p style="margin-bottom:0;">Example: <kbd>event_{Parent.closed}</kbd>. </p>
            </td>

          </tr>
          <tr class="">
            <td data-label="Supported Merge Fields" class="slds-cell-wrap" style="vertical-align:top;" headers="d249268e79 ">
              <p style="margin-bottom:0;">{Session.var}</p>
            </td>

            <td data-label="Supported Versions and Properties" class="slds-cell-wrap" style="vertical-align:top;" headers="d249268e85 ">
              <p style="margin-bottom:0;">
                Spring '22 for <strong class="uicontrol">Channel Name</strong> and <strong class="uicontrol">Event Name</strong> in both pubsub and custom events.</p>
            </td>

            <td data-label="Description" class="slds-cell-wrap" style="vertical-align:top;" headers="d249268e91 ">
              <p>Register a channel name or an event name based on a stored value defined in <strong class="uicontrol">Session Variables</strong> in the Setup panel. See <a href="https://help.salesforce.com/s/articleView?id=xcloud.os_add_session_variables_to_a_flexcard.htm&amp;release=264.0.0&amp;type=5" title="For the managed package runtime, set attributes available from a component, or store values from data sources or external systems to access globally on a Flexcard. For example, set an API key or track pagination. Use the merge field {Session.var} to parse the value.">Add Session Variables to a Flexcard (Managed Package)</a>.</p>
              <p>Register a channel name or an event name based on a public property defined in <strong class="uicontrol">Exposed Attributes</strong> in the Setup panel. See <a href="https://help.salesforce.com/s/articleView?id=xcloud.os_create_a_public_property_for_a_flexcard_lwc_in_the_flexcard_designer.htm&amp;release=264.0.0&amp;type=5" title="For the managed package runtime, in the Flexcard Designer, define an attribute that creates a public property whose value is set in the Lighting App Builder and Experience Builder. Call the attribute within the Flexcard as a session variable ({Session.AttName}) where merge fields are supported, such as in a Text element and a data source parameter.">Create a Public Property for a Flexcard LWC in the Flexcard Designer (Managed Package)</a>.</p>
              <p style="margin-bottom:0;">Example: <kbd>chnnl_{Session.tab}</kbd>.</p>
            </td>

          </tr>
          <tr class="">
            <td data-label="Supported Merge Fields" class="slds-cell-wrap" style="vertical-align:top;" headers="d249268e79 ">
              <p style="margin-bottom:0;">{recordId}</p>
            </td>

            <td data-label="Supported Versions and Properties" class="slds-cell-wrap" style="vertical-align:top;" headers="d249268e85 ">
              <p style="margin-bottom:0;">Beginning Winter '22 for pubsub <strong class="uicontrol">Channel Name</strong>. Beginning Spring '22 for custom and pubsub <strong class="uicontrol">Event Name</strong>.</p>
            </td>

            <td data-label="Description" class="slds-cell-wrap" style="vertical-align:top;" headers="d249268e91 ">
              <p>Register a channel or event name based on the Id of the record page the Flexcard is on.</p>
              <p style="margin-bottom:0;">Example: <kbd>accountEvent_{recordId}</kbd>
              </p>
            </td>

          </tr>
        </tbody>
      </table>