Skip to content

Overview

This tutorial requires Fides Cloud or Fides Enterprise. For more information, talk to our solutions team. (opens in a new tab)

This document explains how to configure configure custom identities that will be collected for privacy requests.

Configure custom identities via the Privacy Center

To add custom identities that will be collected for privacy requests, please add them to the Privacy Center's config.json file.

"identity_inputs": {
    "email": "required",
    "phone_number": "optional",
    "loyalty_id": {"label": "Loyalty ID"}
}

If included, custom identities will be required for every privacy request. The label will be used when the custom identity is displayed in the UI, either the Privacy Center or Admin UI.

Privacy Center

Privacy Center Custom Identity

Admin UI

Admin UI Custom Identity

Including custom identities via API

If you are not using the Privacy Center or would like to include custom identities directly in privacy requests submitted via the API, you can include them like this:

POST /api/v1/privacy-request
[
  {
    "policy_key": "default_access_policy",
    "identity": {
      "email": "user@example.com",
      "loyalty_id": {
        "label": "Loyalty ID",
        "value": "CH-1"
      }
    }
  }
]

Each custom identity must include the label for display purposes, and the value for the custom identity.

Using custom identities

⚠️
Custom identities are managed by you, the user. In order to comply with the intended use of identities within Fides, make sure the values you use for identities are truly unique within the collection they are being used in. Otherwise, you might access or erasure more data than intended.

All you need to do to start using custom identities is to include them in your datasets. Custom identities are included in a field's metadata in the same way as the default identities. The value will correspond to the key for the custom identity, in the example we've been using, the value would be loyalty_id.

collections:
  - name: loyalty
    fields:
      - name: id
        data_categories: [user.unique_id]
        fides_meta:
          identity: loyalty_id

Assuming this dataset is associated with a Postgres integration, the resulting select query would be:

SELECT * FROM loyalty WHERE id = {{loyalty_id}}