Handling deleted Salesforce data
PremiumThis feature is available on our Premium and Enterprise plans. UpdatedWhen you delete data in Salesforce, we send events to notify your destinations. You can use these events to determine how you handle deleted data in each of your destinations.
Customer.io Journeys automatically handles deleted Salesforce data
The information below is important if you want to handle deletions in other destinations. But, if you’re using Customer.io Journeys, you don’t need to do anything to handle deleted data; we handle it for you.
How it works
You can delete data in Salesforce, but the Data Pipelines API doesn’t have Delete
operations. So how do your destinations know when to delete data from Salesforce?
We use Semantic Events: events that have special meaning in Data Pipelines (and Customer.io in general).
Imagine you delete a contact in Salesforce, and you’ve mapped contacts to people in Data Pipelines. When you create and update people in Salesforce, we’ll send identify
calls to create/update people in your destinations.
But when you delete a person, we’ll send a track
call with the event name Delete Person
. And you’ll use this event to handle the deletion in your destination.
Salesforce Data) a-->b{What kind of data is it?} b-->|person|c(Identify) b-->|object|d(Group) b-->|event|e(Track) b-->|relationship|g(Group
with
userID
)
b-.->|deleteHere's where we use semantic events|f("Track event where the event
name is
Person/Object Deleted
")Semantic events for delete operations
The data-deleting operations you can perform from Salesforce correspond to simple event names. You’ll use these event names when you set up destination actionsThe source event and data that triggers an API call to your destination. For example, an incoming identify
event from your sources adds or updates a person in our Customer.io Journeys destination. to delete Salesforce data.
Delete Person
: Removes a person from your destinationDelete Object
: Removes an object from your destinationDelete Relationship
: Removes a relationship between a person and an object, like when a contact leaves a company, or an account transfers to a new account manager.
You’ll notice that there’s no Delete Event
operation. You can’t delete an event. An event is something that happened at a point in time. You can’t go back in time and stop that thing from happening!
Customer.io Journeys automatically handles deleted data
When you connect Salesforce to Customer.io Journeys, you’re already set to handle deleted data. We handle the semantic events coming out of Salesforce by default.
Handling semantic events in other destinations
In non-Customer.io destinations, you’ll need to set up actionsA block in a campaign workflow—like a message, delay, or attribute change. to handle delete operations.
When you set up an action, you only need to pay attention to the Action and Trigger fields. You likely don’t care about the data Structure, because you’re deleting data!
- In your destination, go to Actions and click Add Action.
- Set the action to the appropriate operation—like Delete Person or Delete Object.
- In your Trigger, set a condition based on the semantic event name in the format:
Track Event Name is <Name of semantic event>
. This means that when an event with the correct name comes in, you’ll perform the appropriate delete operation. - Click Save Action.