Profile notifications¶
Overview¶
The Profile Notifications Service enables partners to receive real-time notifications about changes to user-related objects within the discover.swiss ecosystem. These notifications can be used to synchronize external systems—such as CRMs or data warehouses—with the latest profile data.
The notifications are delivered via Azure Service Bus, ensuring reliable, scalable, and asynchronous message delivery.
Supported Object Types¶
Notifications are currently sent for changes to the following object types:
Message Processing¶
- Message lock duration: 60 seconds
- Max delivery count: 10
- Message TTL: 14 days
Message Metadata¶
Each notification includes metadata properties to help you identify and handle the event:
Property | Type | Description |
---|---|---|
identifier |
string | Unique object identifier with a profile |
profileId |
string | ID of the profile to which the object is associated |
sourceProfileId |
string | ID of the original profile that was merged into the current profile |
entityName |
string | Type of the entity (e.g., Person , Ticket ) |
eventTrigger |
string | One of Create , Update , Merge , or Delete . For orders, this reflects the order status (see Order item statuses) |
partner |
string | Affected partner |
datasource |
string | Originating system or context |
lastModifiedBy |
string | Partner acronym that triggered the event |
salesChannel |
string | Available for orders only: b2b or b2c |
Message Payload¶
The body of the message contains the full object representation, using the same model and structure as delivered by the public API. For instance:
- An Order notification includes the full Order object.
- A Person update includes the complete Person profile.
Example: Guest Profile Creation¶
When a guest profile is created, the service emits the following message:
Metadata¶
Property | Value |
---|---|
Identifier | 6f526204-ea10-4a2e-abbb-5e93b3278804 |
ProfileId | 28b0bbe4-c9f0-49e4-bc4f-004667401c21 |
EntityName | Person |
EventTrigger | Create |
Partner | demo |
Datasource | demo-portal-test |
LastModifiedBy | demo |
Payload¶
{
"Address": {},
"IdentificationLevel": "Guest",
"LastSignInDate": "2025-05-14T14:31:09.3805489+00:00",
"ProfileId": "28b0bbe4-c9f0-49e4-bc4f-004667401c21",
"CreatedDateTime": "2025-05-14T14:31:09.3805992+00:00",
"LastModified": "2025-05-14T14:31:09.3805993+00:00",
"CreatedBySubscription": "demo-portal-test",
"LastModifiedBySubscription": "demo-portal-test"
}
Profile Merge Notifications¶
When a guest profile (A) is merged into an existing profile (B), the system emits three distinct messages:
- Person Merge
Identifier
: ID of target profile (B)ProfileId
: Profile ID of target profile (B)SourceProfileId
: Profile ID of guest profile (B)EntityName
:Person
-
EventTrigger
:Merge
-
Person Delete
Identifier
: ID of guest profile (A)ProfileId
: Profile ID of guest profile (A)EntityName
:Person
-
EventTrigger
:Delete
-
Person Update
Identifier
: ID of profile (B)ProfileId
: Profile ID of profile (B)EntityName
:Person
EventTrigger
:Update
Integration Guide¶
To integrate with this service, please contact us to provision a Queue and Topic Subscription. We will provide access via a connection string containing a SharedAccessKey. If required, an AMQP-compatible connection string can also be generated.
- Sample receive and process implementation: profile-notification-csharp-example
- Microsoft Service Bus SDK samples: Azure documentation
Data Deletion Compliance¶
Partners are required to actively listen for Person Delete events and must delete the associated data from their own systems if it has been stored. This is necessary to comply with data privacy and protection regulations.
The deletion event provides the necessary identifiers to locate and remove the corresponding data. Failing to act on these events may lead to non-compliance with legal and contractual data retention policies.
Please ensure your integration properly handles these messages and removes personal data in a timely and secure manner.
Summary¶
The Profile Notifications Service enables real-time synchronization of user-related data between discover.swiss and external partner systems. By subscribing to the Azure Service Bus, partners can receive and act upon important events like profile creation, updates, deletions, and merges, ensuring their systems stay up-to-date with minimal effort.