Define Business Events > Defining business events > Defining publishing events
  

Defining publishing events

When you define a publishing event, you define the details of the event, the days in which the event must expire, and the version of the payload metadata to use.
Decide on the actions and assets for which you want to trigger event publishing to an external target.
For example, you might define a publishing event to publish events related to actions such as create, update and delete of the Person business entity records. When a Person business entity record is created, updated, or deleted, these actions trigger the publishing event. You can use the Business 360 Events Connector to access these events in the MDM SaaS data store.
For more information about Business 360 Events Connector, see Business 360 Events Connector.
You can publish events in real time or in batches. To publish events in batches, you can define a publish business events job. For more information about defining publish business events jobs, see Defining publish business events jobs.
For more information about publishing events in real time, see Publishing business events in real time.

Create a publishing event

Create a business event and define the details of the event to trigger event publishing. For example, you might want to trigger event publishing when business entity records are created and updated.
    1Click Business Events.
    2On the Business Events page, click Add Event > Publishing Event.
    3On the New Event page, specify the following event details:
    Event Detail
    Description
    Display Name
    Name of the publishing event.
    Internal ID
    Unique business event identifier, that's generated based on the display name that you enter. You can't change the internal ID after you create the business event.
    Expires In
    Duration for which the event is retained in the MDM SaaS data store.
    Version
    Version of the event payload metadata. To create a publishing event for the create, update, delete, merge, unmerge, purge, and restore actions, select v2. The v1 version is deprecated. Default is v2.
    4In the Event Scenarios section, click Add Event Scenario, and then configure an event scenario.
    1. aClick the asset picker icon, and then select the asset for which you want to trigger event publishing.
    2. The asset type is populated based on the asset you select.
    3. bFrom the Actions list, select the actions to trigger event publishing.
    4. The following table describes actions that trigger events publishing:
      Action
      Description
      Created
      Publishes events when records are created.
      Updated
      Publishes events when records are updated.
      Deleted
      Publishes events when records are soft-deleted.
      Merged
      Publishes events when records are merged.
      Unmerged
      Publishes events when records are unmerged.
      Purged
      Reserved for future use.
      Restored
      Publishes events when deleted records are restored to the active state.
    5Optionally, add additional event scenarios.
    6Click Next.
    7On the Payload page, select the parameters that you want to appear in the JSON payload.
    For more information about payload parameters, see Business event payloads.
    8Optionally, to review the structure of the event payload metadata, copy the JSON schema or download it.

Business event payloads

When business events are published from MDM SaaS applications to targets that Cloud Data Integration supports, event payloads are generated in the JSON format. The event payloads contain parameters that represent information related to the business events. You can use event payloads to audit, track changes, generate reports, or integrate with downstream systems.
For example, you can create records in a business application and propagate the records with all or some fields to a downstream billing system. Also, when you merge and unmerge records in a business application, you can capture these events for processing by downstream systems. The Publish Business Events jobs generate event payloads that contain information related to events, such as event type, asset details, contributing source records, and event metadata.
When you configure a publishing event, you can also configure the data that you want to appear in event payloads.
If record validation is configured for business applications, event payloads include an update event in addition to the event that's published. The update event indicates whether the record has passed or failed the validation, while the event that's intentionally published indicates that the record is pending validation.

Event payload parameters - version 2 (Recommended)

The payload metadata contains parameters that capture the publishing events for the create, update, delete, merge, unmerge, and restore actions.
The following table describes the v2 version of the payload parameters:
Parameter Name
JSON Property Name
Description
Active Business ID
activeBusinessId
Unique identifier of the master record.
When records are merged, the active business ID is the surviving business ID of one of the master records. For example, two master records with business IDs MDM1 and MDM 2 are merged. If the surviving business ID is MDM1, then the active business ID of both master records is MDM1. The business ID of the master record that's updated is the same as it's active business ID MDM1. The business ID of the master record that didn't survive during the merge has the business ID MDM2.
When a record is created, updated, deleted, unmerged, and restored, the active business ID is the same as the business ID.
Affected XREFs
affectedXrefs
Object that contains details about the source records that the event affects.
The object contains the following source record parameters:
  • - sourceSystemId. Internal ID of the source system that the source record belongs to.
  • - sourcePKey. Primary key of the source record that was used to load the record into the MDM SaaS data store, such as 6242171e87eb93605aeb80e3.
  • - businessId. Unique identifier of the source record, such as MDM00000016V7K.
  • - xrefType. Type of source record. The parameter can have one of the following values:
    • - DATA. Source record that's created when a record is created.
    • - PATCH. Source record that's created when a record is updated.
    • - DELETED. Source record that's created when a record is deleted.
    • - ANCHOR. For internal use only.
  • - xrefChange. The type of event that affected the source record such as create, update, delete, merge, or unmerge.
  • - membershipChange. Indicates whether the source record is added or removed as a contributor to the record. The parameter can have the following values: ADDED, REMOVED, or NONE.
Asset Internal ID
assetId
Unique identifier of an asset. For example, the ID of the predefined Organization business entity in Customer 360 SaaS is c360.organization. Custom assets can have default or custom IDs, such as customer.
Asset Type
assetType
Type of asset, such as a business entity or relationship. The parameter values are BUSINESS_ENTITY or RELATIONSHIP.
Business ID
businessId
Unique identifier of the record, such as MDM00000016V7K.
BVT Changed
bvtChanged
Indicates whether the best version of the truth for a master record has changed. The parameter values are true or false.
Change List ID
changeListId
Unique identifier to track a set of changes or changes that are part of an approval workflow, such as 87698623465834e32af8. If changes to a business entity record don't go through an approval workflow, the value is null.
Changed Fields
changedFields
List of business entity fields that are updated.
Correlation ID
correlationId
Unique identifier of the event, such as ffd74e22-2f9f-4184-b3d3-4792bfb08b5a.
Data Diff
dataDiff
Object that contains the business entity fields that are updated and the type of update that occurred as a result of the event along with the old and new value of the field.
The object contains the following parameters of the field:
  • - fieldPath. Path to the updated field.
  • - changeType. Type of update to the field. The parameter can have the following values: CREATED, DELETED, or UPDATED.
  • - oldValue. Value of the field before the update.
  • - newValue. Value of the field after the update.
Date of Change
dateOfChange
Date when the record was updated. The date is in epoch format, such as 1648498462137.
Event Type
eventType
Type of event, such as create, update, delete, and merge.
The parameter can have one of the following values:
  • - MASTER_CREATED. Indicates that a record was created.
  • - MASTER_UPDATED. Indicates that a record was updated.
  • - MASTER_DELETED. Indicates that a record was soft-deleted.
  • - MASTER_MERGED. Indicates that records were merged to form a master record.
  • - MASTER_UNMERGED. Indicates that records were unmerged from another record.
  • - MASTER_PURGED. Indicates that a record was deleted permanently.
  • - MASTER_RESTORED. Indicates that a previously deleted record was restored to the active state.
Implied Operation
impliedOperation
Original event that a user triggers. For example, if the user triggered a create event that's part of a workflow and the workflow contains several events, the implied operation is create.
Members
members
Object that contains contributing source records of the event. When multiple records merge, a new record is created. The event payload associated with the new record can have multiple contributing source records within the members object.
The object contains the following source record parameters:
  • - sourceSystemId. Internal ID of the source system that the source record belongs to.
  • - sourcePKey. Primary key of the source record that was used to load the record into the MDM SaaS data store, such as 6242171e87eb93605aeb80e3.
  • - businessId. Unique identifier of the source record, such as MDM00000016V7K.
Payload
payload
Object that contains the user-defined fields of the record.
Review
review
Indicates whether the event triggered an approval workflow. If the event triggered an approval workflow, the parameter can have one of the following values: APPROVED or REJECTED.
Source System Internal ID
sourceSystem
Internal ID of the source system where the event occurred. For example, if the event occurred in Customer 360 SaaS, the internal ID is c360.default.system.
Record States
states
Object that contains details about the state of the record after the event.
The object contains the following parameters:
  • - base. Indicates the state of the record. The parameter can have the following values:
    • - ACTIVE. The record is active after the event.
    • - DELETED. The record was deleted and inactive after the event.
  • - validation. Indicates the validation status of the record. The parameter can have the following values:
    • - PASSED. Record has passed validation.
    • - FAILED. Record has failed validation.
    • - PENDING. Validation of the record is pending.
    • - SKIPPED. Record was not validated and validation might occur again at a later time.
User Name
userName
User name of the user who triggered the event, such as john or john.smith@abc.com.

Event payload parameters - version 1 (Deprecated)

Version 1 of the payload metadata is deprecated. When you define a new publishing event, use version 2. The v1 version of the payload metadata contains parameters that capture the publishing events for the create, update, and delete actions.
The following table describes the v1 version of the payload parameters:
Parameter Name
JSON Parameter Name
Description
Change List ID
changeListId
Unique identifier to track a set of changes or changes that are part of an approval workflow, such as 87698623465834e32af8. If changes to a business entity record don't go through an approval workflow, the value is null.
Changed Data
changedData
List of business entity fields that are updated.
Asset Internal ID
entityGuid
Unique identifier of the asset. For example, the ID of the predefined Organization business entity in Customer 360 SaaS is c360.organization. Custom assets can have default or custom IDs, such as customer.
Asset Type
entityType
Type of asset, such as a business entity. The parameter value is BusinessEntity.
Event Type
eventType
Type of event, such as create, update, or delete.
The parameter can have one of the following values:
  • - RECORD_CREATED. Indicates that a record was created.
  • - RECORD_UPDATED. Indicates that a record was updated or deleted. See the softDeleteHint parameter to determine whether the record was deleted.
  • - RECORD_DELETED. Indicates that a source record was unmerged from a master record. The RECORD_CREATED and RECORD_UPDATED events occur along with the RECORD_DELETED events.
  • - RECORD_APPROVED_CREATED. Indicates that a created record went through an approval workflow and was approved.
  • - RECORD_APPROVED_UPDATED. Indicates that an updated or deleted record went through an approval workflow and was approved.
  • - RECORD_APPROVED_DELETED. Indicates that a record was unmerged to form new records. The original record that's unmerged is treated as deleted. These records went through an approval workflow and were approved.
Lineage Hint
lineageHint
Indicates whether lineage exists when merge or unmerge operations result in create, update, or delete events.The parameter can have the following values:
  • - MERGED. Indicates that an update event merged a record with other records. The record is part of the lineage of another record it merged into.
  • - ACTIVATED. Indicates that an update event unmerged a record from another record and activated the record as a separate record.
Members
members
Object that contains the list of contributing source records of the event. When multiple records merge, a new record is created. The event payload associated with the new record can have multiple contributing source records within the members object.
The object contains the following source record parameters:
  • - sourceSystemId. Internal ID of the source system that the source record belongs to.
  • - sourcePKey. Primary key of the source record that was used to load the record into the MDM SaaS data store, such as 6242171e87eb93605aeb80e3.
  • - businessId. Unique identifier of the source record, such as MDM00000016V7K.
Meta
meta
Additional metadata about the event. The metadata contains information such as the internal ID of the business entity that the event was triggered for, internal identifier of the business entity record, and the user name of the user who created the asset.
Parent
parent
Object with two record identifier parameters. When records merge, the new master record that's created becomes the parent of the contributing records. Records for which a create event is published don't have a parent and the parameter value is null.
The object contains the following parameters of the parent record:
  • - internalId. Internal identifier of the new master record that records merge into, such as 6242171e87eb93605aeb80e2.
  • - businessId. Unique identifier of the new master record that records merge into, such as MDM00000016V7K.
Payload
payload
Object that contains the user-defined fields of the record.
Soft Delete Hint
softDeleteHint
Indicates whether a record is active or soft-deleted. You can restore soft-deleted records. The parameter can have one of the following values: DELETED or RESTORED.
For example, when you delete a record from an MDM SaaS business application, the record is soft-deleted and exists in the system. In this case, the value of the eventType parameter is RECORD_UPDATED and the value of the softDeleteHint parameter is DELETED.
Source System Internal ID
sourceSystem
Internal ID of the source system where the event occurred. For example, if the event occurred in Customer 360 SaaS, the internal ID is c360.default.system.
User Name
userName
User name of the user who triggered the event, such as john or john.smith@abc.com.

Publishing business events in real time

You can publish events from MDM SaaS to streaming targets that Cloud Data Integration supports in real time. For example, after a user creates a record in MDM SaaS, you can publish the details to a Kafka topic.
To publish business events in real time, perform the following tasks:

Step 1. Configure a Secure Agent as a runtime environment

In Administrator, configure a Secure Agent that is up and running as a runtime environment to run a streaming ingestion and replication task.
Ensure that you enable the following Informatica Intelligent Cloud Services and connectors for the Secure Agent group:
For more information about Secure Agent, see Runtime environments in the Administrator help.
For more information about enabling or disabling services and connectors for a Secure Agent group, see Enabling or disabling services and connectors for a Secure Agent group in the Administrator help.

Step 2. Create the source and target connections

In Administrator, create the source and target connections.
When you create the source connection, select Business 360 events as the connection type, and select the runtime environment. When you create the target connection, select a streaming connector as the connection type, and select the runtime environment.
For more information about creating connections, see Configuring a connection in the Administrator help.

Step 3. Create a publishing event

In Business 360 Console, create a publishing event.
For more information about creating publishing events, see Create a publishing event.

Step 4. Create a streaming ingestion and replication task

In Data Integration, create a streaming ingestion and replication task to publish business events in real time.
    1In Data Integration, click New.
    The New Asset dialog box appears.
    2Select Data Ingestion and Replication > Streaming Ingestion and Replication Task, and click Create.
    3On the Definition page, select the Secure Agent that you configured as a runtime environment. For more information about configuring a Secure Agent as a runtime environment, see Step 1. Configure a Secure Agent as a runtime environment.
    4On the Source page, select the source connection that you created and the publishing event as the business object. For more information about creating the source and target connections and creating a publishing event, seeStep 2. Create the source and target connections and Step 3. Create a publishing event.
    5On the Target page, select the target connection that you created. For more information about creating the source and target connections, see Step 2. Create the source and target connections.
    6Optionally, add transformations and set the runtime options.
    7Save the task, and then click Deploy.
After you deploy the streaming ingestion and replication task, a job runs on the Secure Agent. You can monitor the progress, performance, and status of the streaming ingestion and replication job from Monitor and Operational Insights.
For more information about configuring a streaming ingestion and replication task, see Configuring a streaming ingestion and replication task in the Data Integration help.