Switch profile unique identifier

Unique identifiers

Unique identifier consists of a keyspace and a profile key within that keyspace. The identifier is used to locate the profile and consists of a keyspace discriminator and a profile key. Any given profile can have multiple unique identifiers (profile keys) however each of them must belong to a different keyspace.

Switch profile unique identifier

This feature removes one of the current profile keys from an existing profile and replaces it with another, new profile key within a different keyspace.

If you only need to change a profile key value within the same keyspace, Set attributes on a profile (version 2) feature is recommended over this one.

How it works

The request path parameters, keyspace, profile key and section, are used to locate the profile that will be changed.

Once the profile is located, the request body specifies two unique identifiers:

  • from - This unique identifier will be removed from the profile, unless a mapped attribute value exists in another section on that profile (more on that below). This profile key must exist on the profile located via the request path parameters. The unique identifier used to locate the profile can also be targeted with the from request body property.

  • to - This new unique identifier will be created on the profile. Such profile key must not yet exist on the selected profile or any other profile in the account. Also any existing mapped attribute value must correspond to the new profile key value.

After calling this endpoint you are able to locate the profile using the new unique identifier.

Unique identifier removal warning

In most scenarios, this feature removes the the profile key specified in the from request body property from the profile. You will no longer be able to locate the profile using that profile key.

Mapped attribute values

Each keyspace in the account has a mapped attribute in all sections. For example, the email keyspace, com.apsis1.keyspaces.email, has the Email attribute, com.apsis1.attributes.email, mapped to it in each section.

Let's say you're switching to a unique identifier in com.apsis1.keyspaces.email keyspace. This works only if you provide a profile_key value that is the same as the email attribute value for the selected profile.

Now, imagine you're switching from a unique identifier in com.apsis1.keyspaces.crm-id keyspace in the context of a specific section. On top of that, in another section that same profile has a value set on an attribute that is mapped to com.apsis1.keyspaces.crm-id keyspace, the CRM-ID attribute. If that's the case, the original, from profile key is not removed from the profile. The new, to profile key is still created.