Loading…

Handling deleted Salesforce data

PremiumThis feature is available on our Premium and Enterprise plans. Updated

We represent data you delete in Salesforce with events. You can use these events to determine how you handle deleted data in each of your downstream integrations.

 Customer.io Journeys automatically handles deleted Salesforce data

The information below is important if you want to handle deletions in services outside of Customer.io. But, if you don’t send your Salesforce data to anywhere other than Customer.io, then 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 other services 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 Customer.io. When you create and update people in Salesforce, we’ll send identify calls to create/update people.

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.

flowchart LR a(Incoming
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-.->|delete
Here'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 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
  • Delete Object: Removes an object, like an account or opportunity
  • Delete 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 places outside of Customer.io

If you send your Salesforce data to places outside of Customer.io, you may need 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!

  1. In outbound integration, go to Actions and click Add Action.
  2. Set the action to the appropriate operation—like Delete Person or Delete Object.
  3. 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.
    the delete person action has a trigger set to event name is delete person
    the delete person action has a trigger set to event name is delete person
  4. Click Save Action.
Copied to clipboard!
  Contents
Is this page helpful?