0

I'm in the process of setting up our Marketing Cloud service and I've ended up with a number of users in All Contacts without the correct subscriber key (email as subscriber key instead of a user_id we use in the rest of our systems). Is there a way I can selectively delete them? If not is there a way I can clear my All Contacts list (as long as the rest of my DE's remain intact it's fine as all the user data is there).

Thanks

0

Unfortunately you cannot delete a Contact through the user interface or the Fuel REST API at this time.

You will need to create a support case to request Contacts to be deleted.

Deleting Contacts will not impact existing data in your Data Extensions.

  • You can now use the REST API to delete Contacts. Refer to my new answer below. – Eliot Harper Jul 11 '17 at 3:30
4

Further to my previous answer, you can now delete Contacts using the REST API. I've just tested this and this works.

Deleting Contacts is a two step process. There is documentation on this page and this one, but the documentation is incorrect (the JSON payload isn't even valid) and there's no reference to these pages in the site index for some reason.

Step 1. Retrieve Adapters

Host: https://www.exacttargetapis.com
POST /contacts/v1/contacts/actions/delete/options
Authorization: Bearer {{accessToken}}
Content-Type: application/json
{  
   "context":{  
      "listType":"audience",
      "deleteOperationType":"ContactAndAttributes"
   }
}

This request will return this response. You can then delete Contacts (refer to the first values array) from All Contacts, MobileConnect Addresses and MobileConnect Subscriptions Contact/list models. Use the adapterID and iD values retrieved from the previous request in this request:

Step 2. Delete Contacts

Host: https://www.exacttargetapis.com
POST /contacts/v1/contacts/actions/delete?type=keys
Authorization: Bearer {{accessToken}}
Content-Type: application/json

{  
   "ContactTypeId":0,
   "values":[  
      "00Q6F000014XAA7UAO",
      "00Q6F000014XAAvUAO"
   ],
   "DeleteOperationType":"ContactAndAttributes",
   "optionValues":[  
      {  
         "adapterID":6011,
         "adapterKey":"ContactDeleteProcessor.ContactBuilder.Roots",
         "values":[  
            {  
               "iD":"5523009a-4174-4dd8-8ba6-c6df7c28a39b",
               "value":"True"
            }
         ]
      },
      {  
         "adapterID":6014,
         "adapterKey":"ContactDeleteProcessor.MobileConnect",
         "values":[  
            {  
               "iD":"2f2e5b49-b2d3-4dad-8781-876bc9cd1525",
               "value":"True"
            },
            {  
               "iD":"b0580712-a1fe-4bc0-9857-6dcfcd110439",
               "value":"True"
            }
         ]
      }
   ]
}
  • Where does the "ApplicationID" in the Get Delete Options call come from, Eliot? – Macca Jul 21 '17 at 8:43
  • 1
    Great question. The documentation is completely incorrect. I have updated my answer with code examples. – Eliot Harper Jul 21 '17 at 21:36
1

in the release of January 2018 Salesforce released a new feature: Link to the release note. But you have to contact your AE to enable it.

If not is there a way I can clear my All Contacts list (as long as the rest of my DE's remain intact it's fine as all the user data is there).

Be aware that this will delete the following[therefore maybe not a solution for you]:

This feature deletes contacts from sendable data extensions, MobileConnect lists, and Email Studio lists by identifying the ContactKey, the primary means of identifying a contact, and removing the contact from the enterprise level of the account.

If you enabled this feature you can go this way: Link to deletion process

Not the answer you're looking for? Browse other questions tagged or ask your own question.