For Cheetah Loyalty (LOY) and Engagement Data Platform (EDP), you have the ability to delete members from your system. There are three options to remove all member data and furthermore delete all other related data referencing the member’s data (associated content responses, activities, events, etc).
This article covers the options to delete member data from LOY or EDP to satisfy California Consumer Privacy Act (CCPA) and the General Data Protection Regulation (GDPR) requirements.
Note: It is possible to preserve some data when a member record is deleted using Program Settings. Please refer here for more details on how to preserve certain data when a member is deleted.
Table of Contents
Manual Member Deletion
API Member Deletion
Import Member Deletion
Troubleshooting Import Member Deletion
Manual Member Deletion
To delete a member manually:
- Click Members in your top dashboard.
- Click CSR on the left side menu.
- Click People from the drop down menu.
- Select a member.
- In the More settings button in the member profile editor.
- Click Delete Member.
- Click Confirm.
API Member Deletion
To delete member accounts from your Website or Mobile App, API member deletion may be used.
By default, you must first validate the member’s password and access token to delete the account. You can also configure your settings to instead require a one-time-password (OTP) or a valid access token by itself. All three methods are discussed below.
- Current password (current_password): This is the default setting. To delete the member profile using the current password and a valid access token (access_token), use the following cURL command:
curl -X DELETE
-H 'Accept: application/vnd.stellar-v1+json'
-H 'Authorization: Bearer <access_token>'
-F "current_password=<current_password>"
<base_url>/api/profile
- OTP code (otp_code): The most secure option is to send the member a one-time-password (OTP) via their email on record which, by default, expires in 5 minutes. Note that you can change this timing expiration by going to Program > Program Settings > Direct MFA Code Validity in Minutes in the marketing console:
Note:Using the OTP code option requires email service, a valid access token, and to request that an extra environment variable be set:--MFA_SECRET_ENCRYPTION_KEY.
- To first request a new OTP code to be sent to the member’s email on record, use the following cURL command:
curl -X POST
-H 'Accept: application/vnd.stellar-v1+json'
-H 'Authorization: Bearer <access_token>'
<base_url>/api/profile/otp
- To finally delete the member profile using the OTP code and a valid access token, use the following cURL command:
curl -X DELETE
-H 'Accept: application/vnd.stellar-v1+json'
-H 'Authorization: Bearer <access_token>'
-F "code=<code>"
<base_url>/api/profile
- Access token (access_token): This allows deletion with just a valid access token (less secure). To delete a member profile with just the valid access token, use the following cURL command:
curl -X DELETE
-H 'Accept: application/vnd.stellar-v1+json'
-H 'Authorization: Bearer <access_token>'
<base_url>/api/profile
Import Member Deletion
To delete a member through Import:
Note: Self-service clients can perform this task. Full service clients can request deletions from their Services team.For more details on Import Definitions, please check here for Online Help.
- From the EDP or Loyalty home screen, click Admin.
- Click Integrations side menu.
- Click Imports from the drop down.
- Select a member.
- In the Origin Settings tab, click Choose a file. Use Column Headers to help with finding any possible errors afterwards for a CSV member to delete.
- Click on the Action Settings tab.
- Click the Action drop down menu.
- Select Delete Records.
- Click Map & Settings. You can select one of the key member identifiers such as Integration Id, Member ID or email address (even if using an email address is not recommended). Click Next.
- Click the Schedule tab to schedule deletion.
- Click on the Job History tab.
- In the upper right corner, click Run.
Troubleshooting Import Member Deletion
- The Import shows Status Failed
By clicking on the red circle with the “i”, a pop-up will show up with a message explaining the error. The most typical error is “Missing headers in file”
- Not all the records are successfully deleted
By clicking on the “arrow down”-icon (Download Files) you will be able to export a file with the import result. In most cases, the deletion process skips some members because they don’t exist on the platform.
- Deletion is processing extremely slowly or it is taking a long time to be completed.
Depending on the size of the imported file, it could take a few minutes (approx 15 minutes) to process it. If the import is still processing after refreshing the job history (upper right corner of the screenshot), please contact Global Support.
Note: Many components are shared across different databases and this is a complex process. For example, synchronization of MySQL child tables (around 50 tables), HBase tables (members, activity, events, etc), and also Hive tables.