Newer Version Available

This content describes an older version of this product. View Latest

Portability

The Portability API compiles customer information across objects and fields that you identified when creating a portability policy in Salesforce Customer 360 Privacy Center. You can locate your customers’ personally identifiable information (PII) across multiple records when using API version 50.0 and later. Data portability satisfies your customers’ right to obtain a copy of their PII that is kept in your organization’s platform. To meet privacy regulations, such as the General Data Protection Regulation (GDPR), data portability requests must be fulfilled within one month of when the request is made.

Execute the Portability API with the POST method to aggregate your data subject’s PII found in the Account, Contact, Individual, Lead, Person, and User objects into one file. You receive a response with a URL to download the file, a policy file ID, and information on the objects and fields you selected when creating the policy. Use the policy file ID to execute the Portability API with the GET method.

Execute the Portability API with the GET method to see the status of your POST method execution request. Use the policy file ID from the POST method response to execute the GET method. The GET method response contains this information:

Value Description
policyFileStatus The status of the file being compiled. Values are: In Progress, Complete, or Failed.
policyFileURL The URL to a servlet, where you download the file after it's compiled.
policyFileID The ID of the file being compiled, which is returned in the POST method response. The ID is 15 characters.

Starting with the Spring ‘21 release, Customer 360 Privacy Center automatically deletes files generated by Portability API after 60 days. You receive a reminder seven days before a file is deleted.

Note

Required Permissions

To use the Portability API, you must have the ModifyAllData or PrivacyDataAccess user permission. Ensure that your Salesforce admin has granted you these permissions.

Syntax

URI
/services/data/vXX.X/consent/dsr/rtp/execute
Available since release
50.0
Formats
JSON
HTTP methods
POST, GET
POST Request parameters
Parameter Description
dataSubjectId The ID of the customer making the request. The ID is 15 or 18 characters long, and found in the Account, Contact, Individual, Lead, Person, and User objects.
policyName The name of an active policy. This contains the object in the dataSubjectId parameter.
GET Request parameters
Parameter Description
policyFileId The ID of the file being compiled, which is returned in the POST method response. The ID is 15 characters.

POST Example

URI
/services/data/v50.0/consent/dsr/rtp/execute
Request Body
1{
2   “dataSubjectID”:”<root ID>”,
3   “policyName”:”<policyName>”
4}
Response
1{ 
2   “status" : "SUCCESS",
3   "warnings" : [ ], 
4   "result" : { 
5       "policyFileStatus" : "In Progress", 
6       "policyFileUrl" : "https://na45.stmfb.stm.salesforce.com/servlet/policyFileDownload?file=0jeS70000004CBO", 
7       "policyFileId" : "0jeS70000004CBO" 
8   } 
9}

GET Example

URI
/services/data/v50.0/consent/dsr/rtp/execute?policyFileId=0jeS70000004CBO
Response
1{ 
2   “status" : "SUCCESS",
3   "warnings" : [ ], 
4   "result" : { 
5       "policyFileStatus" : "Failed", 
6       "policyFileUrl" : "https://na45.stmfb.stm.salesforce.com/servlet/policyFileDownload?file=0jeS70000004CBO", 
7       "policyFileId" : "0jeS70000004CBO" 
8   } 
9}